Autor Tema: Motor PAP 28BYJ-48 5V desfase…  (Leído 2956 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Enner

  • PIC10
  • *
  • Mensajes: 47
Motor PAP 28BYJ-48 5V desfase…
« en: 20 de Mayo de 2012, 11:09:23 »
Estoy haciendo pruebas con un motor P.A.P.( 28BYJ-48 5V) de 5.625/64
calcule las posiciones que puede dar y son unas 4.091, con un driver ULN2003A.
Todo funciona bién y se para en la última posición que es la 4.091 que es igual a una vuelta entera de 360grados del motor, pero a medida que va dando vueltas enteras de 360grados, no se va parando en la misma posición, se va desfasando y no sé que puede ser.

Aunque he leido por la web que al tener reductorá (engranajes) tienen este tipo de problemas y no son muy fiables ya que hay que calcular velocidades etc...
ya que no son como los Motores paso a paso sin reductoras. Leer caso: http://arduino.cc/forum/index.php/topic,71964.0.html

Os pido vuestra ayuda.
Gracias.


Información Motor:  DataSheet Motor 28BYJ-48


Código:
---------------------------------------------------------
Device =  18F2550     'SELECCIONO PIC
Declare Xtal 20         'Fijo el Cristal

Dim I As Byte              ' Variable Indice I
Dim NP As Word          ' Numero de Pulsos
PORTA=%00000000    ' Asigna los Puerto A como I/O
I=0                            ' Establece 0 la Posicion Indice
NP=0                         ' Contador Numero de Pasos
DelayMS 1000            ' Para Estabilizar -Pic

Ini:

GoSub Incrementar

GoTo Ini

Incrementar:         
 Inc I                                  ‘Incremento I           
 Inc NP                                ‘Incremento NP           
 P= LookUp I,[15,27,51,39]  'Paso Entero (Full Step)
 PORTA = P                        ‘Salida a la puerta A
 DelayMS 10                       ‘Retardo 10 ms
 If I>3 Then I=0                 ‘Si la I es Mayor que 3(Indice) pasa a 0 
  If NP>4091 Then               ‘4091 = Vuelta entera motor 360Grados
    NP=0                             ‘Reseteo la Varible NP   
    DelayMS 3500                ‘Retardo 3,5 seg.   
  End If
Return
END
« Última modificación: 20 de Mayo de 2012, 11:26:49 por Enner »