Proyectos Con Arduino
Proyectos Con Arduino
// C++ code
//
int dist = 0;
void setup()
{
pinMode(7, OUTPUT);
pinMode(6, OUTPUT);
pinMode(5, OUTPUT);
pinMode(4, OUTPUT);
pinMode(3, OUTPUT);
pinMode(2, OUTPUT);
pinMode(10, OUTPUT);
}
void loop()
{
dist = 0.01723 * readUltrasonicDistance(8, 9);
if (dist > 40) {
digitalWrite(7, HIGH);
digitalWrite(6, HIGH);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
digitalWrite(10, LOW);
} else {
if (dist < 40 && dist >= 20) {
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, HIGH);
digitalWrite(4, HIGH);
digitalWrite(3, LOW);
digitalWrite(2, LOW);
digitalWrite(10, LOW);
} else {
if (dist < 20) {
digitalWrite(7, LOW);
digitalWrite(6, LOW);
digitalWrite(5, LOW);
digitalWrite(4, LOW);
digitalWrite(3, HIGH);
digitalWrite(2, HIGH);
digitalWrite(10, HIGH);
}
}
}
delay(10); // Delay a little bit to improve simulation performance
}
2. SEMAFORO INTELIGENTE. EL
PASO PEATONAL SOLO SE
ACTIVA CUANDO HAY
PEATONES
// C++ code
//
int dist = 0;
void setup()
{
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
}
void loop()
{
dist = 0.01723 * readUltrasonicDistance(8, 9);
if (dist < 20) {
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
delay(5000); // Wait for 5000 millisecond(s)
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, HIGH);
delay(2000); // Wait for 2000 millisecond(s)
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
delay(7000); // Wait for 7000 millisecond(s)
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
delay(2000); // Wait for 2000 millisecond(s)
} else {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
}
delay(7000); // Wait for 7000 millisecond(s)
}
int DIS = 0;
Servo servo_3;
void setup()
{
servo_3.attach(3, 500, 2500);
pinMode(0, OUTPUT);
}
void loop()
{
DIS = 0.01723 * readUltrasonicDistance(4, 5);
if (DIS < 40) {
servo_3.write(150);
digitalWrite(0, HIGH);
} else {
servo_3.write(0);
digitalWrite(0, LOW);
}
delay(10); // Delay a little bit to improve simulation performance
}
void setup()
{
pinMode(2, OUTPUT);
}
void loop()
{
Dist = 0.01723 * readUltrasonicDistance(6, 7);
if (Dist <= 40) {
digitalWrite(2, HIGH);
} else {
digitalWrite(2, LOW);
}
delay(10); // Delay a little bit to improve simulation performance
}
5. DISPENSADOR DE AGUA
SENSOR ULTRASONICO+MOTOR
CENTRIFUGA
double fnc_ultrasonic_distance(int _t, int _e){
unsigned long dur=0;
digitalWrite(_t, LOW);
delayMicroseconds(5);
digitalWrite(_t, HIGH);
delayMicroseconds(10);
digitalWrite(_t, LOW);
dur = pulseIn(_e, HIGH, 18000);
if(dur==0)return 999.0;
return (dur/57);
}
void setup()
{
pinMode(8, OUTPUT);
pinMode(9, INPUT);
pinMode(10, OUTPUT);
pinMode(11, INPUT);
digitalWrite(8, LOW);
delay(500);
}
void loop()
{
if ((digitalRead(9) == true)) {
if ((fnc_ultrasonic_distance(10,11) <= 10)) {
digitalWrite(8, LOW);
delay(100);
}
else {
digitalWrite(8, HIGH);
}
else {
digitalWrite(8, HIGH);
// Objetos Servo
Servo servo1;
Servo servo2;
// Constantes de distancia en cm
const int distance1 = 30;
const int distance2 = 20;
const int distance3 = 10;
void setup() {
// Inicializamos el monitor serial
Serial.begin(9600);
void loop() {
// Medir distancia
long duration, distance;
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
void setup()
{
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
}
void loop()
{
DIST = 0.01723 * readUltrasonicDistance(8, 9);
if (DIST < 20) {
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
} else {
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
}
delay(10); // Delay a little bit to improve simulation performance
}