Paso 5: Sencillo programa de ejemplo de Arduino a mano Control Ultralight (motor servo)
Asume el conocimiento básico de Arduino. Copiar y pegar en el IDE de Arduino. Descargar para Arduino.
/*
Control de una posición de servo mediante un potenciómetro (resistor variable) este código original es una descarga de código de ejemplo con la descarga de la versión 7.14 de Arduino integrado desarrollo Environmeent IDE Arduino.org noviembre de 2015 controla hasta 5 servomotores de servo 2 entradas 1 responde a la información de entrada en servos AO 2-5 responde a la información de entrada A1
*/
#include;
Servo myservo1; crear object1 servo para controlar servo1
Servo myservo2; crear objeto servo para controlar un servo2
Servo myservo3; crear objeto servo para controlar un servo3
Servo myservo4; crear objeto servo para controlar un servo4
Servo myservo5; crear objeto servo para controlar un servo5
int potpin1 = 0; pin analógico utilizado en este ejemplo no
int potpin2 = 1; pin analógico utilizado para conectar el potenciómetro (joystick o incluso myoware)
int val1; variable para leer el valor del pin analógico
int val2; variable para leer el valor del pin analógico
void setup()
{Serial.begin(9600);
myservo1.Attach(8); se fija el servo en el pin 9 al objeto servo
myservo2.Attach(9); se fija el servo en el pin 9 al objeto servo
myservo3.Attach(10); se fija el servo en el pin 9 al objeto servo
myservo4.Attach(11); se fija el servo en el pin 9 al objeto servo
myservo5.Attach(12); se fija el servo en el pin 9 al objeto servo
}
void loop()
{val2 = analogRead(potpin2); / / lee el valor del potenciómetro (valor entre 0 y 1023)
val2 = mapa (val2, 0, 1023, 0, 180); la escala a utilizar con el myservo1.write(val2) servo (valor entre 0 y 180); ajusta la posición del servo según el valor de escala
Serial.println(val2); imprimir en serie para permitir la depuración si es necesario
myservo1.Write(val2);
myservo2.Write(val2); ajusta la posición del servo según el valor de escala
myservo3.Write(val2); ajusta la posición del servo según el valor de escala
myservo4.Write(val2); ajusta la posición del servo según el valor de escala
myservo5.Write(val2); ajusta la posición del servo según el valor de escala
Delay(15); espera 15 milisegundos para servo
}