Este documento presenta dos informes sobre el control de un motor paso a paso unipolar con un microcontrolador ATmega8. Explica el funcionamiento de los motores paso a paso y describe dos programas para controlar la dirección y velocidad de un motor. El primer programa cambia la dirección cada vez que completa una vuelta, mientras que el segundo cambia la dirección cada 10 vueltas. Concluye que se logró controlar el motor exitosamente y que estos programas son útiles para proyectos más complejos.
1. INFORME N°1: CONTROL DE MOTOR PASO A PASO
UNIVERSIDAD NACIONAL DEL
CALLAO
FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
E. P. INGENIERÍA ELECTRÓNICA
ASIGNATURA: MICROCONTROLADORES
GRUPO/TURNO: 91G/ 08:00-14:00
PROFESOR: ASTOCONDOR VILLAR, JACOB
INTEGRANTES: DIBURGA VALDIVIA, LUZ CLAUDIA 1123220635
PEÑA LANDEO, VICTOR DANIEL 1113220333
RUIZ RODRIGUEZ, OMAR ARTEMIO 1113220574
YSLACHE GALVÁN, MIGUEL ANGEL 1113220101
2. LABORATORIO – 91G MICROCONTROLADORES
2
CONTROL DE MOTRO DE PASO A PASO UNIPOLAR CON
MICROCONTROLADOR ATMEGA 8
I. OBJETIVOS
Aprender a programar los puertos del atmega8.
Controlador el motor paso a paso en los sentidos horario y antihorario.
Controlar la velocidad de paso del motor unipolar ya sea por retardo de lazos
por la frecuencia del atmega8.
II. MARCO TEORICO
Un motor paso a paso, como todo motor, es en esencia un conversor
electromecánico, que transforma energía eléctrica en mecánica. Mientras que un
motor convencional gira libremente al aplicarle una tensión, el motor paso a paso
gira un determinado ángulo de forma incremental (transformaimpulsos eléctricos en
movimientos de giro controlados), lo que le permite realizar desplazamientos
angulares fijos muy precisos (pueden variar desde 1,80° hasta unos 90°). Los
motores, tanto de corriente continua como de corriente alterna, son muy efectivos
en muchas labores cotidianas desde la tracción de grandes trenes hasta el
funcionamiento de lavarropas. Pero debido a problemas tales como la, inercia
mecánica o su dificultad para controlar su velocidad, se desarrollaron otro tipo de
motores cuya característica principal es la precisión de giro. Este tipo de motores
son ideales cuando lo que queremos es posicionamiento con un elevado grado de
exactitud y/o una muy buena regulación de la velocidad. Sus principales
aplicaciones se pueden encontrar en robótica, tecnología aeroespacial, control de
discos duros, flexibles, unidades de CDROM o de DVD e impresoras, en sistemas
informáticos, manipulación y posicionamiento de herramientas y piezas en general.
Fig.1 Motor PAP bipolar (Figura1) y motor PAP unipolar (Figura2)
3. LABORATORIO – 91G MICROCONTROLADORES
3
Motores unipolares
Los motores paso a paso unipolares se componen de 4 bobinas. Se denominan así
debido a que la corriente que circula por sus bobinas lo hace en un mismo sentido,
a diferencia de los bipolares. Se componen de 6 cables externos, dos para cada
bobina, y otro para cada par de éstas, aunque también se pueden ver con 5 cables,
compartiendo el de alimentación para los 2 pares de bobinas. En la figura semuestra
un MPAP unipolar con 2 extractores de los cuales cada bobina se encuentra dividida
en dos mediante una derivación central conectada a un terminal de alimentación, y
del que va a depender el sentido de la corriente de cada bobina.
Existen tres métodos para el control de este tipo de motores, según las secuencias
de encendido de bobinas.
Paso simple:
Esta secuencia de pasos es la más simple de todas y consiste en activar
cada bobina una a una y por separado, con esta secuencia de encendido de
bobinas no se obtiene mucha fuerza ya que solo es una bobina cada vez la
que arrastra y sujeta el rotor del eje del motor.
Fig.2 Estructura del motor PAP unipolar
4. LABORATORIO – 91G MICROCONTROLADORES
4
Paso doble:
Con el paso doble activamos las bobinas de dos en dos con lo que hacemos
un campo magnético más potente que atraerá con más fuerza y retendrá el
rotor del motor en el sitio. Los pasos también serán algo más bruscos
debidos a que la acción del campo magnético es más poderosa que en la
secuencia anterior.
Medio Paso:
Combinando los dos tipos de secuencias anteriores podemos hacer moverse
al motor en pasos más pequeños y precisos y así pues tenemos el doble de
pasos de movimiento para el recorrido total de 360º del motor.
Fig.3 Motor PAP unipolar-Paso simple
Fig.4 Motor PAP unipolar-Paso doble
Fig.5 Motor PAP unipolar-Medio paso
5. LABORATORIO – 91G MICROCONTROLADORES
5
¿Cómo conectar un motor?
Estos motores exteriormente poseen 6 o 5 cables (cuatro corresponden a cada uno
de los extremos de las dos bobinas existentes, mientras que los otros dos
corresponden al punto medio de cada una. En el caso de que el cable restante sea
uno, entonces corresponde a estos dos últimos unidos internamente).Una vez
localizados dichos cables mediremos la resistencia con un óhmetro o un multímetro
en ellos. De esta forma localizamos las dos bobinas (los tres cables cuya resistencia
entre sí sea distinta de infinito corresponden a una bobina).
III. DISEÑO
IV. MATERIALES
Atmega8.
Switch.
Pulsador
Resistencia de 10K y220.
Led’s.
Driver ULN2803 de 6 15V .
Motor bipolar de 6 hilos con ángulo de paso de 1.875° y 192 pasos.
Protoboard.
Cable jumper.
Fuente de alimentación de 5V .
Fig.6 Circuito del laboratorio N°1
6. LABORATORIO – 91G MICROCONTROLADORES
6
V. PROCEDIMIENTO
Cambio de giro cada vez que complete una vuelta el eje del
motor y que el motor debe girar cuando se cierra el interruptor
ubicado en el pin PD0
Diagrama de flujo
Ejercicio_2.asm
CONFIGURACION DE PUERTOS
PUERTO D: PD0 -> IN
PUERTO B: PB0, PB3 -> OUT
LEER INTERRUPCIONES
PD0 = 0?
MOTOR PAP APAGADO
ABIERTO
MOTOR PAP ENCENDIDO
CERRADO
SENTIDO HORARIO
1 VUELTA (255 PASOS)
0x08
Delay (0.04 seg)
0x04
Delay
0x02
Delay
0x01
Delay
0x08
Delay
SENTIDO ANTIHORARIO
1 VUELTA (255 PASOS)
0x01
Delay (0.04 seg)
0x02
Delay
0x04
Delay
0x08
Delay
0x01
Delay
8. LABORATORIO – 91G MICROCONTROLADORES
8
Funcionamiento
Al momento de cerrar el switch que está colocado en la parte derecha
del protoboard empezara a moverse el motor PAP primero en el
sentido horario y después en el sentido antihorario en los estados
indicados en la parte de marco teórico y dichos estados se puede
comprobar con los led’s colocados en el puerto B del atmega 8 como
se puede mostrar en la imagen posterior.
Fig.7 Resultado de la primera programación
9. LABORATORIO – 91G MICROCONTROLADORES
9
Observaciones
No podemos tener demasiado tiempo el driver ULN2803 ya que
empieza a calentar por la razón que requiere más corriente provenida
de la fuente de alimentación.
Para determinar el ángulo de paso que hace el motor tenemos que
unir los hilos de los puntos medios de las bobinas y conectarlo a
positivo y luego de ello enviar “0” a cada hilo restante como se muestra
la secuencia en el marco teórico para así determinar cuantos pasos
hace en una vuelta y luego de ello dividimos entre 360° para
determinar el ángulo de paso (en nuestro caso da 192 pasos nuestro
motor para completar una vuelta).
Cambiar el sentido de giro cada vez que complete 10 vueltas el
eje del motor
10. LABORATORIO – 91G MICROCONTROLADORES
10
Diagrama de flujo
Ejercico 3.asm
CONFIGURACION DE PUERTOS
PUERTO D:PD0 -> IN
PUERTO B:PB0,PB3->OUT
PD0=0?
MOTOR PAP
APAGADO
ABIERTO
MOTOR PAP
ENCENDIDO
CERRADO
CONT=10
SENTIDO
HORARIO 1
VUELTA (255
PASOS)
0X08
Delay (0.04 seg)
0x04
Delay
0x02
Delay
0x01
Delay
0x08
Delay
R27=0
NO
CONT=10
SENTIDO
ANTIHORARIO 1
VUELTA (255
PASOS)
0X01
Delay (0.04 seg)
0x02
Delay
0x04
Delay
0x08
Delay
0x01
Delay
SI
R28=0
Dec r28
NO
Dec r27
SI
12. LABORATORIO – 91G MICROCONTROLADORES
12
Funcionamiento
Con la misma secuencia de estado y funcionamiento del circuito
anterior hacemos girar este segundo circuito con la diferencia de que
tenemos que agregar un contador de 10 vueltas para el sentido
horario y antihorario para que así al momento de terminar la décima
vuelta del eje del sentido horario cambia automática al otro sentido
(antihorario).
Fig.8 Resultado de la segunda programación
13. LABORATORIO – 91G MICROCONTROLADORES
13
Observaciones
Para la programación de este circuito se tuvo que modificar la cantidad
de secuencia de pasos de 51 a 50 ya que al momento de terminar
decima vuelta del sentido horario hubo un adelanto de pasos de mas
que se pasaba y lo mismo ocurría para el sentido antihorario, por esta
razón se tuvo que reducir.
VI. APLIACIONES DE LOS MOTORES PAP EN LA INDUSTRIA
Más de 500 millones de pasos motores se montan en todo el mundo cada año.
Aunque la mayoría de estos motores se utilizan en aplicaciones muy simples, la
tendencia es seguir creciendo en cuanto a las capacidades para llegar a
aplicaciones más complejas. Muchas aplicaciones que se resolvieron mediante
pequeños servo motores en el pasado, ahora pueden ser manejadas por un motor
paso a paso con la correspondiente electrónica.
Las aplicaciones son:
Plotters:
Es un periférico de computadora que permite dibujar o representar
diagramas y gráficos. Existen plotters monocromáticos y de cuatro, ocho o
doce colores.
El plotter funciona mediante el movimiento de plumas sobreel papel. Cuando
la máquina debe realizar un trazo complejo, hace el dibujo muy lentamente
debido al movimiento mecánico de las plumas.
Las plumas se encuentran dentro de un tambor. El plotter dispone de dos
motores paso a paso, que se mueven por el eje X (a lo ancho del papel) y
por el eje Y (con movimiento vertical de las plumas o generando el
movimiento del papel).
El tipo de papel, por otra parte, depende del modelo de plotter. Muchos
plotters funcionan con un rollo de papel que permite dibujar de manera
indefinida en longitud (sólo limitada por la duración del rollo). El grosor, la
flexibilidad, la suavidad y la aspereza del papel incidirán en la calidad del
trabajo.
Fig.9 Plotters
14. LABORATORIO – 91G MICROCONTROLADORES
14
Registradores XY
Estos registradores son una clasede registradores potenciométricos con una
pluma conducida por dos motores, uno controla el movimiento en dirección
X y el otro en dirección Y, eso significa que una variable puede amplificarse
a la entrada X y la otra a la entrada Y el registrador dibujara el grafico
mostrando como una de las variables cambia con respecto a la otra.
Brazo robot mecánico
Un modelo de brazo robot es muy complejo posee cuatro movimientos de
base, hombro, codo y muñeca. Como se ha comentado antes no es
necesario tener todos estos movimientos en un primer diseño. Por ejemplo
el movimiento de la muñeca suele complicar bastante el diseño y puede ser
obviado perfectamente sin que esto disminuya demasiado la capacidad del
trabajo del brazo. Los motores principalmente se ubican en la base para
evitar cargar con pesos adicionales a las extremidades, ya que esto
redundaría en tener motores más potentes para lograr mover las mismas.
Taxímetro
El taxímetro utiliza electricidad para determinar qué tan lejos has viajado.
Esto se hace con la ayuda del transductor del automóvil, un sensor
conectado con la transmisión,el mismoque envía información al velocímetro
y al medidor de kilometraje. Envía un pulso al taxímetro cuando cierta
distancia es recorrida, por ejemplo media milla. Cuando el taxímetro es
instalado, un ingeniero maneja el vehículo a lo largo de precisamente una
milla para "enseñarle" cómo registrar la distancia correctamente.
Fig.10 Registradores XY
Fig.11 Brazo de robot mecánico
15. LABORATORIO – 91G MICROCONTROLADORES
15
VII. CONCLUSIONES
En el presente laboratorio realizado hemos visto cómo funciona y controla el
atmega8 a un motor PAP (de 6 cables) mediante el uso de los programas Atmel
Studio (programación) y Khazama AVR (grabador), los programas hechos nos
sirven para observar cómo se debe hacer la correcta programación que nos
ayudaran en futuros proyectos de mayor complejidad así como también la
implementación en la que se debe tener cuidado principalmente en el voltaje de
funcionamiento del motor (muchas veces este necesita más de lo que el driver
puede soportar ).
Para nuestra programación el principal problema fue el tener que agregar el primer
estado al termino del cuarto para que pueda concluir así una vuelta completa , una
vez hecho esto y definiendo el delay el motor pudo girar correctamente.
Fig.12 Taxímetro