El motor paso a paso tiene dos tipos según el devanado interno y las construcciones.
1. Motor paso a paso de tipo unipolar y
2. Motor paso a paso de tipo bipolar
Fig. 1: Diagrama del motor paso a paso bipolar
En el motor paso a paso de tipo bipolar hay dos bobinas de estator y sus cuatro terminales se proporcionan como interfaz para hacer girar el motor. Por lo tanto, los motores paso a paso bipolares siempre tienen una interfaz de 4 cables como se muestra en la siguiente figura.
Fig. 2: Diagrama de interfaz del motor paso a paso bipolar de 8, 5 y 6 hilos
Mientras que en el motor paso a paso unipolar hay cuatro bobinas de estator. Por lo tanto, se proporcionan un total de 8 cables (dos para cada bobina) para la interfaz. Hay 3 interfaces diferentes para motores paso a paso unipolares. Vea la figura a continuación.
1. Interfaz de 8 cables: los 8 terminales de 4 bobinas se proporcionan para interconectar como se muestra primero en la figura anterior. A1-A2 para la bobina 1, B1-B2 para la bobina 2, C1-C2 para la bobina 3 y D1-D2 para la bobina 4.
2. Interfaz de 5 cables: como se muestra en la figura anterior, un terminal de cada bobina (1, 3, 5 y 7) se pone en cortocircuito y se retira como terminal común, proporcionando un terminal común y cuatro terminales de bobina (A, B, C y D) total de 5 terminales.
3. Interfaz de 6 cables: cuatro bobinas se dividen en grupos de dos bobinas. Se elimina un terminal común del grupo de dos bobinas, lo que da como resultado dos terminales comunes (CMN1 y CMN2) y cuatro terminales de bobina, con un total de 6 terminales.
Fig. 3: Prototipo de identificador de secuencia de terminales de motor paso a paso automático
Todos sabemos que para hacer girar el motor paso a paso, se deben aplicar pulsos a los terminales de la bobina en la secuencia correcta. Si los pulsos no se aplican en la secuencia correcta a los terminales de la bobina, el motor sólo vibrará, no girará. Al igual que hacer girar un motor paso a paso unipolar de 5 cables, se aplican pulsos a los cuatro terminales de la bobina A, B, C y D según la tabla proporcionada.
Figura 4: Tabla que enumera el estado del pulso para el identificador de secuencia del terminal del motor paso a paso automático
Nota: El terminal común está conectado al terminal de alimentación +Ve. En la tabla anterior, 0 significa lógica baja: el terminal recibe 0 V para que la corriente pueda pasar a través de la bobina.
Esto significa que primero se debe dar el impulso a la bobina 1 – terminal A, luego a la bobina 2 – terminal B y así sucesivamente. Si los pulsos no se dan en esta secuencia ABCD, ABCD, ABCD,… entonces el motor no girará.
En la mayoría de los motores paso a paso, los cables exteriores de los terminales de la bobina están codificados por colores y los proporcionan los fabricantes en forma de hojas de datos, manuales de funcionamiento o cualquier documento relacionado. También la marca del motor paso a paso y el modelo número uno, puede obtener esta información en recursos y materiales en línea.
Fig. 5: Imagen del identificador de secuencia de terminales del motor paso a paso automático
Pero, ¿qué pasa si se desconoce todo lo mencionado anteriormente? No hay marca ni número de modelo del motor paso a paso, ni documentos ni hojas de datos, ni codificación de colores de cables estándar, etc., nada. Significa que el motor paso a paso es completamente desconocido.
En este caso, es necesario averiguar la secuencia de terminales realizando experimentos manualmente. Existe un procedimiento manual para hacer esto. En este procedimiento es necesario aplicar pulsos a los diferentes terminales del motor manualmente usando la fuente de alimentación (o batería), conectando los cables de la bobina a los terminales de alimentación +Ve y –Ve y observando si su rotación avanza o solo vibra de un lado a otro. . atrás. Pero es un proceso muy largo, agotador y tedioso. Porque primero necesitas tomar papel y lápiz y enumerar diferentes secuencias. Luego, aplique pulsos según las secuencias enumeradas manualmente, conectando los cables a los terminales +Ve y –Ve de la fuente de alimentación. No sólo eso, sino que debe observar cuidadosamente la variación del motor paso a paso, ya sea que gire o no, porque si el motor paso a paso tiene un ángulo de paso pequeño como 0,90o, 0,18o, 0,75o, etc., es casi imposible el ojo humano decide si el motor está girando o vibrando.
Entonces, ¿hay alguna solución a este problema? Sí, la solución es automatizar este proceso. Y el proyecto presentado aquí se basa en el mismo concepto que identifica automáticamente la secuencia correcta de terminales de bobina y proporciona el resultado en cuestión de minutos. Utiliza un microcontrolador ATmega32 que genera diferentes secuencias de pulsos y lo aplica a los terminales del motor y cuando el motor gira dos vueltas completas le da secuencia a los terminales. Muestra en la pantalla LCD el resultado de que la secuencia correcta para los terminales del motor es esta. Entonces, veamos cómo construir este proyecto interesante, interesante y muy útil.
DESCRIPCIÓN DEL CIRCUITO
Como se muestra en la figura anterior, el circuito se construye utilizando el microcontrolador ATMega32, el chip controlador del motor ULN2003A, el sensor optointerruptor MOC7811 y la pantalla LCD alfanumérica de 16×4.
• Los pines de datos D0 – D7 de la pantalla LCD están conectados al puerto PORTA de ATMega32 y los pines de control Rs y En están conectados a los pines PORTD PD1 y PD0 respectivamente. El pin LCD RW está conectado a tierra para permitir la grabación de LCD
• Se conecta un potenciómetro de 1 KΩ al pin 3 del LCD para variar sus contrastes.
• Cuatro LED están conectados a los pines PB4 – PB7 de PORTB en una configuración de cátodo común con resistencias limitadoras de corriente de 1 KΩ como se muestra
• Los pines inferiores del PORTB, PB0 – PB3, accionan el motor paso a paso a través del chip controlador de corriente ULN2003A. Estos pines están conectados a las entradas del chip ULN y las salidas del chip ULN están conectadas a los cuatro terminales de bobina del motor paso a paso desconocido.
• El terminal común del motor paso a paso recibe un suministro +Ve de 5 V.
• El sensor de interrupción óptica MOC7811 está fijado de tal manera que la tira fijada al eje del motor pasa a través del espacio del sensor cuando el motor gira
• El LED IR interno del sensor tiene polarización directa a través de una resistencia limitadora de corriente de 330 Ω, por lo que siempre está encendido. El fototransistor interno está conectado al suministro de 5 V a través de la resistencia pull-up de 1 KΩ.
• La salida del sensor se invierte y amplifica mediante otro transistor NPN, tipo 2n2222A. La salida del colector de este transistor está conectada al pin de entrada de interrupción externa INTR (pin PORTD PD2) del ATmega32.
• Un cristal de 8 MHz está conectado a los pines de entrada del cristal (XTAL1 y XTAL2) para proporcionar un reloj interno al microcontrolador.
• El pin de entrada de reinicio se eleva usando una resistencia pull-up de 1 KΩ y se conecta un botón para proporcionar reinicio manual al microcontrolador.
Fig. 6: Imagen del identificador de secuencia de terminales del motor paso a paso automático
OPERACIÓN DEL CIRCUITO
El microcontrolador genera diferentes secuencias de impulsos. Prueba todas las combinaciones posibles para secuencias de pulsos. Dado que el motor tiene 4 terminales de bobina, puede haber un total de 24 (4!=4x3x2x1) combinaciones posibles para secuencias de pulsos. De estas 24 combinaciones, para 12 combinaciones el motor girará en el sentido de las agujas del reloj y para otras 12 combinaciones, girará en el sentido contrario a las agujas del reloj. Por lo tanto, el microcontrolador debe probar 12 combinaciones de secuencia de pulsos para los terminales A, B, C y D de la bobina del motor.
Primero, aplicará la primera secuencia de pulsos ABCD: significa 1er pulso para A, 2do pulso para B, 3er pulso para C y 4to pulso para D y nuevamente 5to pulso para A de la misma manera. Mostrará el mensaje en la pantalla LCD como "probando la secuencia 1 como ABCD 1 2 3 4".
Si el motor comienza a girar y al completar una revolución la tira pasa por la abertura del sensor lo que generará una interrupción y el microcontrolador cuenta esta interrupción como 1 revolución del motor. Si el motor completa 2 revoluciones, ¡ya está! ¡¡¡¡¡Bingo!!!!! La secuencia terminal de la bobina es A es la primera bobina, B es la segunda bobina, C es la tercera bobina y D es la cuarta bobina. La pantalla LCD muestra el mensaje "la secuencia correcta de terminales de bobina para el motor es 1-A 2-B 3-C 4-D".
Pero si el motor no gira y continúa vibrando, después de 5 segundos cuando suena el temporizador, el microcontrolador cambia a la siguiente secuencia ABDC significa 1er pulso para A, 2do para B, 3ro para D y 4to para C.
La pantalla LCD muestra el mensaje nuevamente.
De manera similar, cada 5 segundos, si el motor no gira y completa 2 rotaciones en 5 segundos, el microcontrolador aplica las siguientes secuencias. Por lo tanto, prueba las 12 secuencias siguientes.
1. | A | B | W. | D |
dos. | A | B | D | W. |
3. | A | D | B | W. |
4. | A | W. | B | D |
5. | A | W. | D | B |
6. | A | D | W. | B |
7. | B | A | W. | D |
8. | B | A | D | W. |
9. | W. | A | B | D |
10. | W. | A | D | B |
11. | B | W. | A | D |
12. | W. | B | A | D |
Entonces en 1 minuto (5 segundos x 12 secuencias = 60 segundos = 1 minuto) el microcontrolador aplica las 12 secuencias de las cuales en una secuencia el motor comenzará a girar y completará dos revoluciones y obtendremos la secuencia exacta de los terminales de la bobina. .
Después de aplicar toda la secuencia de 12 pulsos, si el motor aún no gira, significa que la bobina del motor está dañada internamente y por eso no gira. Entonces, el microcontrolador decide que el motor está defectuoso y muestra el mensaje en la pantalla LCD como "toda la secuencia posible del motor intentado está defectuosa".
Así, el proyecto en cuestión no sólo identifica la secuencia de terminales de la bobina sino que también descubre si el motor está en marcha o no.
Código fuente del proyecto
###
#incluirpar #incluir par #incluir par par unsigned int intr_counter=0,seq_counter=1,timer_int_count=0,new_seq_flag=0,stop_flag=0;par par void lcd_senddata(datos de caracteres sin firmar)par {par pestaña _delay_ms(2);par pestaña PORTD=(1< ###
Diagramas de circuito
Diagrama de circuito-Automático-Motor paso a paso-Terminales-Identificador de secuencia |
Vídeo del proyecto