TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: quodigital en 03 de Marzo de 2007, 04:43:29
-
Hola soy mas o menos nuevo en el tema y tenia una impresora epson, quemada, le saque el motor y lo puse en un PIC con un driver L293B - hice el programa para que funcionara de derecha a izquierda, pero el asunto es que anda muy lento y vibra mucho.. es como que no andara parejito.. se entiende?...
La pagina del integrado es:
http://www.ortodoxism.ro/datasheets/SGSThomsonMicroelectronics/mXurruu.pdf
device 16f84A
Config pwrte_on, wdt_off, cp_off, xt_osc
xtal 4
portb = %11111111
porta = %00000000
Symbol a = PORTB
Symbol b = PORTB
Symbol C = PORTB
Symbol d = PORTB
inicio:
'portb = %00000000
if porta.0 = 0 then derecha
if porta.1 = 0 then izquierda
goto inicio
derecha:
a = %00001010
delayms 5
b = %00001001
delayms 5
C = %00000101
delayms 5
d = %00000110
goto inicio
izquierda:
d = %00000110
delayms 5
C = %00000101
delayms 5
b = %00001001
delayms 5
a = %00001010
goto inicio
en delayms le pongo 3 y empieza a zumbar pero no gira...
si alguien me puede dar una mano se lo agradecería..
Bueno chicos los saludos a todos
Suerte Para todos
-
Que tal quodigital, mira revise el codigo de tu programa y esta bien de acuerdo a informacion que tengo, solo veo que el delay_ms es muy pequeño y esto provoca que el motor por la rapidez de la secuencia no alcance a moverse (me ha pasado con motores unipolares), prueva con otros valores de tiempo o en su defecto si no tienes resultados satisfactorios aumenta el voltaje de drive, ta lvez sea mayor el voltaje del motor y el que estas aplicando no proporciona la suficiente corriente y eso te provoca un motor sin fuerza. Te anexo un programa en MKB de un motor unipolar y el circuito:
program STEEPER
main:
trisa = %11111111 'Entradas PortA RA0=Enable Motor RA1=Direccion Giro
trisb = %00000000 'Salidas en PortB RB0=D RB1=C RB2=B RB3=A
porta = 0
portb = 0
Checar:
if Porta.0=1 Then
goto giro
else
goto Checar
end if
giro:
if Porta.1=1 Then
goto Der
else
goto Izq
end if
Der:
portb = $08
delay_ms(20)
portb = $0C
delay_ms(20)
portb = $04
delay_ms(20)
portb = $06
delay_ms(20)
portb = $02
delay_ms(20)
portb = $03
delay_ms(20)
portb = $01
delay_ms(20)
portb = $09
delay_ms(20)
goto Checar
Izq:
portb = $01
delay_ms(20)
portb = $03
delay_ms(20)
portb = $02
delay_ms(20)
portb = $06
delay_ms(20)
portb = $04
delay_ms(20)
portb = $0C
delay_ms(20)
portb = $08
delay_ms(20)
portb = $09
delay_ms(20)
goto Checar
end.
(http://img256.imageshack.us/img256/1250/steepjm5.jpg)
-
Muchas gracias por la informacion, voy a penerme manos a la orbra haber que pasa con el motorcito, muchas gracias.
Voy a estar posteando segun como me salga y si voy a poster el resultado final.
Saludos a todos
Suerte..!!!
:-/ :-/
-
Hola vos sabes que estuve probando el codigo que me diste, y es para motores PaP de 6 cables, el que yo tengo es de cuatro cable con un driver L293- y si lo pruebo con tu codigo gira unos 2 milimetros a la izquierda y a la derecha..
yo saque de una pagina web que la distribuicion de entradas para el motor de 4 cables es:
portb = %00001010
delayms 20
portb = %00001001
delayms 20
portb = %00000101
delayms 20
portb = %00000110
cualquier cosa que sepan me avisan, el problema es que tirita mucho y no anda lo rapido que tiene que andar, alomejor es el tena del voltaje...
GRacias y Suerte A todossss
:-/
-
Si mira se me paso señalar que el motor unipolar que te menciono en el codigo es de 6 o cinco cables, mira solo sustituye tu codigo en el programa y conecta como originalmente habias conectado tu, no tengo de momento el circuito para el l293 pero imagino que lo checaste bien, solo recuerda que no necesariamente los voltajes del drive tienen que ser 5 volts cada uno checa estos link sobre todo los dos ultimos, y mira que Vss = 5volts y Vs=hasta 30 volts creo?
http://www.doc.ic.ac.uk/~ih/doc/stepper/flpystpr/flpystpr.txt
http://msgroups.tech.northwestern.edu/dc/dc99/docs/l293eapp1.pdf
http://www.todorobot.com.ar/informacion/tutorial%20stepper/stepper-tutorial.htm
http://www.terra.es/personal/fremiro/Archivos/L293b.pdf
http://perso.wanadoo.es/luis_ju/ebasica2/mpp_01.html
-
Hola, gracias por los link y sobretodo el LM293B en castellano... :mrgreen:
Ya hice tu programa y puse los valores correspondiente para el motor de 4 cables, solo me falta saber bien el voltaje de alimentacion para el motor, cosa que ahora empieso a probar con 5volt, hasta llegar al limite o ver que el motor gire bien. cuando tenga todo listo lo posteeo de una.
muchas gracias
Suerte a todos
:-/ :-/ :-/