Paso 5: El código
Este paso es sobre cómo hacer el trabajo de piernaMateriales:
Pierna y electrónica
Herramientas:
Cable USB para conectar el arduino y la computadora
Computadora
Entorno de Arduino
Copie y pegue el código en el entorno de procesamiento de arduino. Luego cargar en tu ordenador y verlo trabajar.
Presione el botón izquierdo para mover la pierna hacia abajo y pulse el botón derecho para mover la pierna hacia arriba.
Si abre el puerto serial en su computadora con el arduino conectado, puede enviar "u" para mover la pierna hacia arriba o "d" para mover hacia abajo.
Además, el estado de la pierna se imprimirán en el monitor serial una vez que se hace móvil
que tenga que modificar algunos de los ángulos que el servo se mueve para conseguirlo para ir donde quieras, pero debe estar buena.
Aquí está el código:
#include < Servo.h > //include la librería servo
Servo myservo;
int pos = 0;
int entrada = 0;
int switchState2 = 0; Ajuste los interruptores de apagado inicialmente
int switchState3 = 0;
void setup()
{
myservo.Attach(8); Conecte el servo al pin 8
pinMode (2, entrada); Ajuste los interruptores como entradas
pinMode (3, entrada);
Serial.Begin(9600); iniciar serie de comunicaciones
}
void loop() {}
entrada = Serial.read();
switchState2 = digitalRead(2); leer los interruptores para las entradas
switchState3 = digitalRead(3); el siguiente dice el arduino
Qué hacer si se da una entrada
Si (entrada == 'u') {//if la entrada es "u"
para (pos = 30; pos < 145; pos += 1) {//prep de pasar de 30 degreed a 145 grados
myservo.Write(POS); actuall mover el servo
Delay(25);} hacerlo en 1 grado cada 25 milisegundos
Serial.println ("pierna está para arriba");} la impresión que la pierna nos para arriba
Si (entrada == había ') {}
para (pos = 145; pos > = 30; pos-= 1) {}
myservo.Write(POS);
Delay(25);}
Serial.println ("pierna está abajo");}
Si (switchState3 == LOW) {} //if un interruptor es baja, no
else {para (pos = 30; pos < 145; pos += 1) {/ / si se pulsa, la preparación para pasar de 30 a 145
myservo.Write(POS); realmente mover el servo
Delay(25); } / / hacer 1 grado cada 25 milisegundos
Serial.println ("pierna está para arriba");} la impresión que la pierna esté hacia arriba
Si (switchState2 == LOW) {}
else {para (pos = 145; pos > = 30; pos-= 1) {}
myservo.Write(POS);
Delay(25);}
Serial.println ("pierna está abajo");}
}