Paso 7: programación con el sensor de distancia
tiene un sensor de distancia, y pueden reaccionar a la
i wil Siembre te cómo eres capaz de programar que por poseer.
está escrito en c ++
lo primero que ves es esto
#define trigPin 7 //toevoegen aan código
#define echoPin 6
#define led 13
#include < Servo.h >
Ahora estamos incluyendo el servo, led y el sensor de distancia con el código. no tienes que cambiar nada aquí.
después de usted vea esto;
Servo myservo1; geven Naam
Servo myservo2;
Servo myservo3;
Servo myservo4;
Servo myservo5;
Ahora tenemos dar a los 5 señales (6 servo) un nombre (puede ser cualquier cosa que te gusta)
siguiente;
void setup() {}
Serial.Begin (9600);
pinMode (trigPin, salida); aanstluiting op arduino
pinMode (echoPin, entrada);
pinMode (led, salida);
myservo1.Attach(3);
myservo2.Attach(5);
myservo3.Attach(9);
myservo4.Attach(10);
myservo5.Attach(11);
}
ahora le estamos diciendo el arduino para que pin que están conectados el servo y el sensor de distancia, otra vez no tienes que tocar esto
siguiente;
void position1() {/ / positie 1
digitalWrite (led, alto); LED va en
myservo2.writeMicroseconds(1300);
myservo3.writeMicroseconds(1300);
myservo4.writeMicroseconds(800);
myservo5.writeMicroseconds(1000);
}
Esto es algo que puede cambiar, hice una posición y esta position1. Ahora puedo usar esta posición más adelante en mi código.
Si quieres un otro movimiento, cambiar los números entre el (a) a algo entre el 0 y 3000.
después;
void position2() {//positie 2
digitalWrite(led,LOW); LED se apaga
myservo2.writeMicroseconds(1200);
myservo3.writeMicroseconds(1300);
myservo4.writeMicroseconds(1400);
myservo5.writeMicroseconds(2200);
}
Esto es lo mismo como antes este es mi position2, ahora usted puede modificar la posición y agregar más si quieres.
luego ves esto;
void loop() {}
larga duración, distancia;
digitalWrite (trigPin, LOW);
delayMicroseconds(2);
digitalWrite (trigPin, HIGH);
delayMicroseconds(10);
digitalWrite (trigPin, LOW);
duración = pulseIn (echoPin, HIGH);
distancia = (duración/2) / 29,1;
ahora el inicio de código real de trabajo, no tocar esta parte es sólo algo para configurar el sensor de distancia.
y entonces;
Si (distancia < = 30) {positie //do 1
POSITION1();
}
Else {}
POSITION2(); hacer positie 2
}
Si (distancia < 10) {}
myservo5.writeMicroseconds(2200); abrir klauw
}
Else {}
myservo5.writeMicroseconds(1000); sluit klauw
}
-------------------------------------------------------------------------------------
Ahora puede Agregar un movimiento a una distancia. hacerlo de esta manera.
Si (distancia < = 30) {//you ahora dicen, si la distancia es menor o es 30 cm. se dirige a position1
POSITION1(); el cansancio del brazo hace todo lo que pones entre los brakeds {} {}
}
Else {/ / si la distancia es mayor que 30 cm hace position2
posición (2) / / todo lo que pones entre el tose brakeds} hace ahora
}
Ahora usted puede ad este ápice cada distancia que te gusta y que hacer cualquier cosa que te gusta.
el que parte del código.
Si (distancia > 30 || distancia < = 0) {}
Serial.println ("fuera de rango"); Buiten berijk, als het groter dan 30 de kleiner dan 0 es
}
Else {}
Serial.Print(Distance);
Serial.println ("cm"); distancia en cm
}
Delay(500); seconde Wacht 0,5
}
no tienes que cambiar nada aquí, lo único que podría ser que usted cambie "cm" en "pulgadas" pero no he probado todavía. así que no ahora o que va a funcionar muy bien.
Espero que ahora al entender como se puede hacer uno su movimiento a distancia.
Diviértete con le brazo robótico