Paso 4: Controlador de Sabertooth Motor explicó
La Sabertooth 2X25amp es un controlador de motor dual versátil, eficiente y fácil de usar. Es adecuado para robots de potencia alta - hasta 100 lbs en combate o 300 libras para la robótica de propósito general.
La Sabertooth recibe energía por medio de terminales de tornillo By puede alimentar otros componentes mediante el borne de tornillo de 5V. Experimentar con alimentar el Arduino desde este terminal, pero algo sobre el poder no estaba "bastante limpio"... cada vez martilló el acelerador a la velocidad máxima, el 1Sheeld caería la conexión. En lugar de poner mucho tiempo en este tema, solo usé una fuente de alimentación separada para el Arduino.
Aways asegurar el 0V tornillo terminal está conectado a su tierra de Arduino, de lo contrario la Sabertooth no recibirá señales de control desde tu Arduino.
Puede controlar la Sabertooth mediante diversos modos. Este proyecto utiliza 3 simplificado Serial modo... básicamente, envían un único byte de datos que representan un número de un pin digital en su Arduino al canal de S1 en su Sabertooth. En ese byte solo, tiene un rango de números entre 0 (mínima) y 255 (más alto)... cada número que representa un único motor, la dirección y el ajuste de velocidad todo en uno. La Sabertooth interpreta ese número y ajusta la potencia de la velocidad/dirección de cualquiera de los dos motores (juego de) conectado a la M1 y M2 terminales de tornillo.
Aquí está un fragmento de código pequeño que conduce un motor 50% adelante y uno hacia atrás motor 75%... medios 2 x 4 2/4, 1/2, 50% y los medios de 3 x 4 3/4, 75%...
Valores de 1 a 127 controles izquierda motor, 128 a 255 motor adecuado de controles
#define FORWARD_4x4_R_MOTOR 255
#define FORWARD_3x4_R_MOTOR 240
#define FORWARD_2x4_R_MOTOR 224
#define FORWARD_1x4_R_MOTOR 208
#define STOPNOW_0x4_R_MOTOR 192
#define REVERSE_1x4_R_MOTOR 176
#define REVERSE_2x4_R_MOTOR 160
#define REVERSE_3x4_R_MOTOR 144
#define REVERSE_4x4_R_MOTOR 128
#define FORWARD_4x4_L_MOTOR 127
#define FORWARD_3x4_L_MOTOR 112
#define FORWARD_2x4_L_MOTOR 96
#define FORWARD_1x4_L_MOTOR 80
#define STOPNOW_0x4_L_MOTOR 64
#define REVERSE_3x4_L_MOTOR 48
#define REVERSE_2x4_L_MOTOR 32
#define REVERSE_1x4_L_MOTOR 16
#define REVERSE_4x4_L_MOTOR 1
...
SaberSerial.write (FORWARD_2x4_R_MOTOR); 2/4 es 50%
SaberSerial.write (REVERSE_3x4_L_MOTOR); 3/4 es de 75%
Para más detalles, lea la documentación suministrada de PDF y vea el código proporcionado más adelante.