Un motor paso a paso, por al contrario que un motor comun DC, necesita una secuencia en sus bobinas para poder girar, esto tiene varias formas de controlarse, siendo la mas simple la Wave Step, pero genera poco torque, asi que implemente la Full Step
El programa es bastante simple, solo cambia el valor de 4 salidas en forma secuencial e indefinida, ademas para hacer la demostracion, va aumentando su velocidad paulatinamente
' {$STAMP BS2}
HIGH 0
HIGH 1
HIGH 2
HIGH 3
INPUT 4
x VAR Byte
x = 1000
girar:
OUT0 = 0
OUT1 = 0
OUT2 = 1
OUT3 = 1
PAUSE x
OUT0 = 1
OUT1 = 0
OUT2 = 0
OUT3 = 1
PAUSE x
OUT0 = 1
OUT1 = 1
OUT2 = 0
OUT3 = 0
PAUSE x
OUT0 = 0
OUT1 = 1
OUT2 = 1
OUT3 = 0
PAUSE x
IF x < 5 THEN girar
x = x - 5
GOTO girar
HIGH 0
HIGH 1
HIGH 2
HIGH 3
INPUT 4
x VAR Byte
x = 1000
girar:
OUT0 = 0
OUT1 = 0
OUT2 = 1
OUT3 = 1
PAUSE x
OUT0 = 1
OUT1 = 0
OUT2 = 0
OUT3 = 1
PAUSE x
OUT0 = 1
OUT1 = 1
OUT2 = 0
OUT3 = 0
PAUSE x
OUT0 = 0
OUT1 = 1
OUT2 = 1
OUT3 = 0
PAUSE x
IF x < 5 THEN girar
x = x - 5
GOTO girar
La salida del microcontrolador ilumina unos leds para visualizar la secuencia, y luego se conecta a un driver ULN2803
Resultado:
Saludos

No hay comentarios:
Publicar un comentario