Paso 3: Control de 2 servos
No hay nada especial sobre control de servos con el GOduino III. Simplemente siga las instrucciones en la Página Web de Arduino y usted se spinning servos en ningún momento.
http://Arduino.CC/it/Reference/servo
Después de conectar tus servos, para hacer un test rápido carga el bosquejo Sweep.ino que convierte los servos hacia adelante y hacia atrás. Desde el IDE de Arduino abierto:
Archivos/ejemplos/Servo/barrido
Asegúrese de que cambiar el número en el myservo.attach(SERVO_PIN_NUMBER) a o pin 9 o 10 dependiendo si usted conecte el servo en la cabecera 1 Servo o Servo 2 en la GOduino III.
Luego subo el bosquejo a la GOduino III y ver que girar los servos.
Puede conectar servos adicionales (limitadas a la corriente suministrada por la efectividad del regulador y el disipador de calor) mediante el uso de la biblioteca de Servo del Software
http://www.Arduino.CC/Playground/ComponentLib/servo
Esta entrada del blog tiene información útil sobre el uso de la biblioteca de Servo de Software
http://rcarduino.blogspot.com/2012/01/Can-i-control-more-than-x-servos-with.html
Por favor tenga en cuenta la alimentación y el regulador cuestiones de calor al utilizar servos. Considere colocar un disipador de calor al regulador para ayudar con la disipación de calor y evitar el apagado térmico y circuito aleatorio se restablece.
Si los servos pequeños no son suficientes, puede que necesite un regulador más robusto como el LM1084-5V que puede fuente de 5A con una tensión de salida máxima de 1, 5V. Revise la hoja de datos del servo para asegurarse de que puede funcionar a 5V.
Este es el código de prueba utilizado en este video:
Barrido de
por BARRAGAN < http://barraganstudio.com>
Remezclada por Hazim Bitar para prueba de servo de controlador de robot de GOduino III
Este ejemplo de código es de dominio público.
#include < Servo.h >
Servo myservo1; crear objeto servo para controlar un servo
Servo myservo2; crear objeto servo para controlar un servo
int pos = 0; variable para almacenar la posición del servo
void setup()
{
myservo1.Attach(9); se fija el servo en el pin 9 al objeto servo
myservo2.Attach(10); se fija el servo en el pin 9 al objeto servo
}
void loop()
{
para (pos = 0; pos < 180; pos += 1) / / va desde 0 grados a 180 grados
{/ / en pasos de 1 grado
myservo1.Write(POS); Dile el servo a la posición en la variable 'pos'
myservo2.Write(POS); Dile el servo a la posición en la variable 'pos'
Delay(15); espera 15ms para el servo a la posición
}
para (pos = 180; pos > = 1; pos-= 1) / / va de 180 grados a 0 grados
{
myservo1.Write(POS); Dile el servo a la posición en la variable 'pos'
myservo2.Write(POS); Dile el servo a la posición en la variable 'pos'
Delay(15); espera 15ms para el servo a la posición
}
}