You are on page 1of 5

CONTROL MOTOR PASO A PASO CON PIC

UN POCO DE TEORIA Los motores paso a paso son ideales para la construccin de mecanismos en donde se requieren movimientos muy precisos. En este captulo trataremos solamente los motores P-P del tipo de imn permanente, ya que estos son los mas usados en robtica. Principio de funcionamiento Bsicamente estos motores estn constituidos normalmente por un rotor sobre el que van aplicados distintos imanes permanentes y por un cierto nmero de bobinas excitadoras bobinadas en su estator. Las bobinas son parte del estator y el rotor es un imn permanente. Toda la conmutacin (o excitacin de las bobinas) deber ser externamente manejada por un controlador. Existen dos tipos de motores paso a paso de imn permanente: Motor bipolar. tiene generalmente cuatro cables de salida (ver figura 1). Necesitan ciertos trucos para ser controlados, debido a que requieren del cambio de direccin del flujo de corriente a travs de las bobinas en la secuencia apropiada para realizar un movimiento. En figura 3 podemos apreciar un ejemplo de control de estos motores mediante el uso de un puente en H (H-Bridge). Como se aprecia, ser necesario un H-Bridge por cada bobina del motor, es decir que para controlar un motor Paso a Paso de 4 cables (dos bobinas), necesitaremos usar dos HBridges iguales al de la figura 3 . El circuito de la figura 3 es a modo ilustrativo y no corresponde con exactitud a un H-Bridge. En general es recomendable el uso de H-Bridge integrados como son los casos del L293 .

Motor unipolar.- Estos motores suelen tener 6 o 5 cables de salida, dependiendo de su conexionado interno (ver figura 2). Este tipo se caracteriza por ser ms simple de controlar.

figura2

Identificacion de bobinas en motores unipolares Seleccionar un cable y conectarlo a masa. Ese ser llamado cable A. Manteniendo el cable A conectado a masa, probar cul de los tres cables restantes provoca un paso en sentido antihorario al ser conectado tambin a masa. Ese ser el cable B. Manteniendo el cable A conectado a masa, probar cul de los dos cables restantes provoca un paso en sentido horario al ser conectado a masa. Ese ser el cable D. El ltimo cable debera ser el cable C. Para comprobarlo, basta con conectarlo a masa, lo que no debera generar movimiento alguno debido a que es la bobina opuesta a la A. Secuencias para manejar motores paso a paso unipolares A continuacin se puede ver la tabla con la secuencia necesaria para controlar motores paso a paso del tipo unipolares Primera secuencia de pasos para motores PAP

Segunda secuencia de pasos para motores PAP

CONTROL DE UN MOTOR UNIPOLAR (en un solo sentido) En la figura podemos apreciar un ejemplo de conexionado para controlar un motor paso a paso unipolar mediante el uso de un ULN2803 el cual es una array de 8 tansistores tipo Darlington capaces de manejar cargas de hasta 500mA. Las entradas de activacin (Activa A, B , C y D) se conectan al puerto B del pic16f84A , pin6=A, pin7=B, pin8=C y pin9=D respectivamente

LIST P=16F84A ;DECLARACION REGISTROS A USAR status equ 0x03 portb equ 0x06 trisb equ 0x86 reg1 equ 0x0c ;registro usado para el retardo reg2 equ 0x0d ;registro usado para el retardo ;CONFIGURACION PUERTO B COMO SALIDA org 0x00 ;origen del programa bsf status,5 ;vamos al banco1 de la memoria RAM clrf trisb ;puerto queda configurado como salida bcf status,5 ;regresamos al banco0 de la memoria RAM ;PROGRAMA PRINCIPAL inicio movlw b'00001000' ;cargamos W con b'00001000' movwf portb ;mandamos lo que hay en W al puerto B call retardo ;hacemos una pausa movlw b'00000100' movwf portb call retardo movlw b'000000010' movwf portb call retardo movlw b'00000001' movwf portb call retardo goto inicio retardo MOVLW 0x90 ;cargamos (w) con el hexadecimal 90 MOVWF reg1 ;mover lo que hay en W al registro1 MOVLW 0x90 ;cargamos (w) con hexadecimal 90 MOVWF reg2 ;mover que hay en W al registro2 uno DECFSZ reg1,1 ;Decrementa registro1 y el resultado guardalo en el mismo GOTO uno dos DECFSZ reg2,1 ;decrementa registro2 y el resultado guardalo en el mismo GOTO dos RETURN ;retorna de donde lo llamaron end ;Fin del programita Aqui tienen el archivo HEX. probado: http://www.4shared.com/file/41AN3W3e/motorunipolar.html

EXPLICACION DEL PROGRAMA Vamos hacer uso de la primera secuencia de pasos para controlar el motor PAP en un solo sentido,

fijese que son 4 pasos para que complete una secuencia, por lo que podemos repetir estos 4 pasos con una etiqueta inicio e indicar que todo se repite con GOTO inicio. con MOVLW b'00001000' guardamos la primera secuencia de paso en el registro auxiliar W y luego con MOVWF portb enviamos al puerto B la secuencia guardada en W anteriormente, en este momento se encendera solo el pin9 del puerto B y los restantes pines estaran apagados y finalmente con CALL retardo hacemos una pausa para poder visualizar el encendido

Las tres instruccciones siguientes hacen lo mismo ejecuntando el paso 2 para motores PAP (ver tabla de pasos) y solo encendera el pin8 del pic, y asi las 3 instrucciones siguientes ejecutan el paso3 y encendera el pin7 del pic, ylas 3 ultimas instrucciones ejecutan el paso4 y encendera el pin6 del pic. Para que todo este proceso se repita solo colocamos una etiqueta inicio y hacemos bucle con GOTO inicio.

You might also like