Paso 3: código
Código cambie este código de control de motores o hacen que los servos son más precisos en donde se mueven, pero esto es solo por un ejemplo para que los chicos puedes empezar, si usted cambia o utiliza este código por favor mencionar en que escribí más del código excepto que Nick Poole escribió el pulso en la parte.
RC serie PulseIn leída por: Nick Poole
extendido por Jason Mclaughlin
2015
#include < Servo.h > / / para servo en ejemplo
Servo myservo; entidad de servo
int pos = 0; posición de servo
int ch1; Aquí es donde guardamos nuestros valores de canal
int ch2;
int ch3;
void setup() {myservo.attach(9);
pinMode (5, entrada); Configurar los pines de entrada como tal
pinMode (6, entrada); pinMode (7, entrada);
Serial.Begin(9600); Vierta una taza de la serie
}
void loop() {}
CH1 = pulseIn (5, alto, 25000); Leer la anchura del pulso de
CH2 = pulseIn (6, alto, 25000); cada canal
CH3 = pulseIn (7, alta, 25000);
Serial.Print ("canal 1:"); Imprimir el valor de
Serial.println(CH1); cada canal
Serial.Print ("canal 2:");
Serial.println(CH2);
Serial.Print ("canal 3:");
Serial.println(CH3);
Si ((ch3 > = 1500) & & (ch3 < = 1600)) {/ / la posición del centro de control
Serial.println("between");
pos = 90; //set servo al centro
myservo.Write(POS); ajustar a la posición que es 90
}
Else {}
Serial.println ("no entre");
para (pos = 0; pos < 180; pos += 1) / / va desde 0 grados a 180 grados
{/ / en pasos de 1 grado
myservo.Write(POS); Dile el servo a la posición en la variable 'pos'
Delay(1); espera 1 ms para el servo a la posición
}
para (pos = 180; pos > = 1; pos-= 1) / / va de 180 grados a 0 grados
{
myservo.Write(POS); Dile el servo a la posición en la variable 'pos'
Delay(1); espera 1 ms para el servo a la posición
}
}
Delay(100); Pongo esto aquí para hacer el terminal
ventana más feliz
}