Paso 1: Código de Servo para Arduino
Partes:
2 servomotores
Placa Arduino (tengo un escudo de tornillo en él, pero que no es crítico)
Potenciómetro (es 0 a 100Kohm)
Cables de puente
Limpiadores de pipa (para ver).
1 - cable de los servos. Estos son motores especiales, puede introducir un ángulo y el motor lo hará. Los servos tienen tres cables: alimentación (rojo, 5V) - tierra (negro) - amarillo (comunicación - información de ángulo va aquí).
En esta configuración: rojo va a los 5V de Arduino, negro va a tierra del Arduino, amarillo irá a los pines de entrada/salida específicas sobre Arduino.
Servo 1: Amarillo---Pin 9
Servo 2: Amarillo---pin 10
2 - el potenciómetro de alambre
Este tiene tres cables.
Plomo 1---5V
Ejecución 2---Pin 0
Ejecución 3---tierra
3 - código-
El código siguiente es el ejemplo de Arduino para el control de motor servo. Incluye la biblioteca de servo, que hace que sea fácil comunicarse al servo.
Esto también los mapas (escalas) la entrada de la olla en un ángulo (en radianes) para el motor cinemático. Queremos que los dos motores para ir en direcciones opuestas. Para ello he traducido la los valores de olla baja a los valores de ángulo alto.
Lo lnotice hay algunas referencias a 'serie' - este material le permite enviar datos desde Arduino sobre el USB a la computadora. Continuación, puede ver los valores, esto es útil.
Nota: El editor de instructables cae la línea para incluir el motor servo.
Debe ser como esta:
#include < Servo.h >; uso de la librería servo
Controles de boca de marioneta
-dos servos
-enfrente de ángulos
-Entrada pot
Código de Arduino / / /
Se trata de un ejemplo incluido con la descarga del IDE de Arduino.
Control de una posición de servo con un potenciometro (resistencia variable)
por Michal Rinott
MPC - añadido salida serial ' n stuff
/*
Aquí está el cableado:
Cableado-
|---Arduino Gnd
Codificador |---analógico 0
|---5V de Arduino
| Amarillo---Digi 9 (PWM)
Servo superior | Rojo---5V
| Marrón---Gnd
| Amarillo---Digi 10 (PWM)
Servo de fondo | Rojo---5V
| Brown---
*/
#include < Servo.h >; uso de la librería servo
Servo myservo; crear objeto servo para controlar un servo
Servo otherServo;
int potpin = 0; pin analógico utilizado para conectar el potenciómetro
int val; variable para leer el valor del pin analógico
int valComp;
void setup()
{
myservo.Attach(9); se fija el servo en el pin 9 al objeto servo
otherServo.attach(10);
Serial.Begin(9600);
}
void loop()
{
Val = analogRead(potpin); Lee el valor del potenciómetro (valor entre 0 y 1023)
valComp = analogRead(potpin);
Serial.println(Val);
Val = mapa (val, 0, 1023, 90, 179); la escala a utilizar con el servo (valor entre 0 y 180)
valComp = mapa (valComp, 1023, 0, 0, 90);
myservo.Write(Val); ajusta la posición del servo según el valor de escala
Delay(15);
otherServo.write(valComp);
Delay(25); espera a que el servo llegar
}