Está en la página 1de 6

UNIVERSIDAD FRANCISCO DE PAULA SANTANDER

INGENIERÍA ELECTRÓNICA
MICROCONTROLADORES
MOVIL CONTROLADO POR 89C51
JESUS A. BEDOYA FERNANDO A. DUARTE RAUL QUINTERO JUAN GABRIEL PAZ
Jesus_Bedoya@latinmail.com Fernandoduarte75@hotmail.com Requintero79.@hotmail.com Peacetronixhotmail.com

RESUMEN

Utilizando un móvil con dos motores paso a


paso conectados en sus llantas traseras,
por medio de una rutina con tres sensores
de luz infrarroja se hizo un control de
movimiento del carro por una línea negra,
en un recorrido rectangular, utilizando
microcontroladores 8051, específicamente
el micro 89C51.

OBJETIVOS

• Construir un móvil, controlado con


motores paso a paso.
• Desarrollar la etapa de potencia de
estos motores.
• Desarrollar el programa para el
microcontrolador 89C51 e implementarlo en
Port 0. Es un puerto bidireccional con
el movil
salidas en colector abierto.
• Desarrollar el circuito electrónico para
Port 1. Es un puerto quasidireccional,
los sensores de luz infrarroja
cuando se escribe 1’s en el puerto, el
puerto puede ser utilizado como entrada.
PROCEDIMIENTO

Descripción de 89c51
Especificaciones de los motores paso a
paso
El CI 8051 está basado en los
microprocesadores de 8 bits, contiene
internamente un CPU de 8bits, 3 puertos
de entrada y salida paralelos, un puerto de
control, el cual a su vez contiene; un puerto
serie, dos entradas para Timer/Contador de
16 bits, dos entradas para interrupciones
externas, las señales de RD y WR para la
toma o almacenamiento de datos externos
en RAM, la señal de PSEN para la lectura
de instrucciones almacenadas en EPROM
externa. Gracias a estas tres señales el
8051 puede direccionar 64 K de programa
y 64K de datos separadamente, es decir un
total de 128Kb. Además cuenta con 128
bytes de memoria RAM interna. PM55L-048 UNI-CONST V(at 24[V],30[Ω])

Para este proyecto utilizamos el puerto 0


como puerto de salida para los pulsos de Este motor tiene 48 pasos, 7.5º de rotación
los motores paso a paso y puerto 1 de por pulso, y su voltaje de alimentación es
entrada para los sensores de luz infrarroja. de 24 v. La corriente máxima es de 600
mA.

Ing. Gabriel Sánchez Suárez


gsanchez@bari.ufps.edu.co
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
INGENIERÍA ELECTRÓNICA
MICROCONTROLADORES
MOVIL CONTROLADO POR 89C51
JESUS A. BEDOYA FERNANDO A. DUARTE RAUL QUINTERO JUAN GABRIEL PAZ
Jesus_Bedoya@latinmail.com Fernandoduarte75@hotmail.com Requintero79.@hotmail.com Peacetronixhotmail.com

El siguiente grafico, puede observar las


características del torque:

En la siguiente grafica se observa el


esquemático de la etapa de potencia de los
dos motores :
el siguiente es una foto de la ubicación de
los motores en el móvil:

el buffer 74LS245, sirve para proteger el


puerto de salida del microcontrolador en el
Etapa de potencia: puerto 0.

La etapa de potencia para un motor paso a Etapa de Sensores:


paso de cuatro bobinas y un común es muy
sencilla y consta de un Mosfet (por bobina), En esta etapa hay que tener en cuenta que
conectado en serie entre VCC-bobina- se utiliza un diodo de emisor de luz
drenaje. El sourse va a tierra. Se conecta infrarroja en polarización directa y un foto
un diodo de ”rueda libre” en el Mosfet para transistor con una resistencia de 33k en el
que la bobina se desenergize encuentre colector.
camino de retorno y no dañe el dispositivo
de potencia. El principio de detector de negro consiste
que estos dos elementos se colocan en
El siguiente es la conexión de un mosfet paralelo tal que cuando la luz se apunte a
con una bobina del motor: un lugar blanco (mesa), lo cual este color
tiene todas las longitudes de onda , refleje
la luz al foto transistor y este entre a
saturación (0v en la salida) y cuando se le
coloque un negro(puede ser cinta), como
este color absorbe la luz entonces el
fototransistor entre en corte(5v salida),
esto es muy importante porque con una

Ing. Gabriel Sánchez Suárez


gsanchez@bari.ufps.edu.co
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
INGENIERÍA ELECTRÓNICA
MICROCONTROLADORES
MOVIL CONTROLADO POR 89C51
JESUS A. BEDOYA FERNANDO A. DUARTE RAUL QUINTERO JUAN GABRIEL PAZ
Jesus_Bedoya@latinmail.com Fernandoduarte75@hotmail.com Requintero79.@hotmail.com Peacetronixhotmail.com

buena lógica de este tipo de sensores el


móvil difícilmente se perderá del camino.

El siguiente es el diagrama esquemático


del circuito del sensor:

$MOD51
$TITLE(MOVIL2)

ORG 0000H
LJMP 0100H
ORG 0100H
FINAL: MOV P0,#00H
La conexión de estos sensores pasa a ;INICIALIZANDO EL PUERTO
través de un buffer 4050, que es de INI: MOV A,P1
tecnología CMOS, y es para mantener los ;LEE PUERTO 1 (SENSORES)
datos lógicos a la entrada del puerto 1 del LISTO: CJNE A,#0FAH,INI
microcontrolador. ;COPARACION (SENSOR 1
ADELANTE)
SIGA: ACALL AVAN
;SUBRUTINA DE MOVIMIENTO
PROGRAMA DEL MOVIL DE FRENTE
MOV A,P1
CJNE A,#0FFH,ESP1
En el programa para el microcontrolador
;COMPARACION(SENSORES
AT89C51, se basa de cuatro etapas:
ENCENDIDO PARO)
SJMP FINAL
ESP1: CJNE A,#0F8H,SIGA
Una etapa de lógica de sensores que es un ;COMPARACION (SENSORES
programa como rutina principal y tres APAGADO (POSIBLE CRUCE))
etapas de control de pulsos de los motores ACALL AVAN
paso a paso, que son subrutinas llamadas MOV A,P1
desde la rutina principal: CJNE A,#0F9H,ESP
;COMPARACION (SENSOR
CRUCE A LA DERECHA)
DRE: ACALL GIRODE
;SUBRUTINA DE CRUCE A LA
DERECHA
MOV A,P1
CJNE A,#0FFH,VOY
;COMPARACION (PARO)
SJMP FINAL
VOY: CJNE A,#0FAH,DRE
;COMPARACION SENSOR
ADELANTE
SJMP LISTO

Ing. Gabriel Sánchez Suárez


gsanchez@bari.ufps.edu.co
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
INGENIERÍA ELECTRÓNICA
MICROCONTROLADORES
MOVIL CONTROLADO POR 89C51
JESUS A. BEDOYA FERNANDO A. DUARTE RAUL QUINTERO JUAN GABRIEL PAZ
Jesus_Bedoya@latinmail.com Fernandoduarte75@hotmail.com Requintero79.@hotmail.com Peacetronixhotmail.com

ESP: CJNE A,#0FCH,ESP1 ACALL RETAR


;COMPARACION CRUCE ALA ;SUBRUTINA DE RETARDO
IZQUIERDA (VELOCIDAD DE LOS PASOS)
DRE1: ACALL GIROIZ MOV P0,#088H ;R0
;SUBRUTINA DE CRUCE A LA Y R5 CARGA DATO EN HEXADECIMAL
IZQUIERDA PARA RETARDO POR DECREMENTO
MOV A,P1 MOV R5,#050H
CJNE A,#0FFH,VOY1 MOV R0,#0FFH
SJMP FINAL ACALL RETAR
VOY1: CJNE A,#0FAH,DRE1 MOV P0,#099H
SJMP LISTO MOV R5,#050H
MOV R0,#0FFH
NOP ACALL RETAR
MOV P0,#011H
Hasta aquí es el programa principal, como MOV R5,#050H
puede observar el código esta basado en MOV R0,#0FFH
una lógica simple de sensores, que ACALL RETAR
consiste “010” avance, “000”, avance y MOV P0,#033H
pregunte si hay cruce(derecha o izquierda), MOV R5,#050H
001, cruce a la derecha hasta encontrar MOV R0,#0FFH
“010”, y 100 cruce a la izquierda hasta ACALL RETAR
encontrar “010” ... viendo profundamente MOV P0,#022H
este código, su lógica esta también basada MOV R5,#050H
en la corrección de móvil cuando el sensor MOV R0,#0FFH
de adelante pierde la dirección por x o y ACALL RETAR
motivos(obstáculos, pierde un paso, etc.), MOV P0,#066H
garantizando asi el correcto movimiento de MOV R5,#050H
l movil por su recorrido; MOV R0,#0FFH
ACALL RETAR
Cuando los sensores sean en “111” fin del MOV P0,#044H
camino. MOV R5,#050H
MOV R0,#0FFH
Hay que tener en cuenta que el puerto 1 ACALL RETAR
tiene por defecto 1 lógico en los pines RET
luego los sensores deben tener lógica GIRODE: MOV P0,#0C4H
negada, (0 cuando no hay negro ). Luego ;SUBRUTINA CRUCE A LA
ahí se explica el valor en hexadecimal de la DERECHA
comparación ya que los sensores son los MOV R5,#070H
pines menos significativos del puerto 1; MOV R0,#0FFH
ACALL RETAR
El siguiente codigo son las subrutinas que MOV P0,#086H
llaman en el programa principal anterior: MOV R5,#070H
MOV R0,#0FFH
ACALL RETAR
AVAN: MOV P0,#0CCH MOV P0,#092H
;SUBRUTINA AVANCE AL MOV R5,#070H
FRENTE MOV R0,#0FFH
MOV R5,#050H ACALL RETAR
;SIMPLEMENTE MANDA POR MOV P0,#013H
PUERTO (P0) EL BINARIO DE LA MOV R5,#070H
SECUENCIA PASOS MOV R0,#0FFH
MOV R0,#0FFH ACALL RETAR
MOV P0,#031H

Ing. Gabriel Sánchez Suárez


gsanchez@bari.ufps.edu.co
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
INGENIERÍA ELECTRÓNICA
MICROCONTROLADORES
MOVIL CONTROLADO POR 89C51
JESUS A. BEDOYA FERNANDO A. DUARTE RAUL QUINTERO JUAN GABRIEL PAZ
Jesus_Bedoya@latinmail.com Fernandoduarte75@hotmail.com Requintero79.@hotmail.com Peacetronixhotmail.com

MOV R5,#070H Se puede observar que estas subrutinas


MOV R0,#0FFH simplemente manda por el puerto 0 un
ACALL RETAR valor binario equivalente a los pulsos de
MOV P0,#029H cada bobina de los motores paso a paso..
MOV R5,#070H cabe aclarar que las subrutina esta para
MOV R0,#0FFH pulsos en modo de medio paso.
ACALL RETAR
MOV P0,#068H La ultima subrutina es la del retardo que
MOV R5,#070H simplemente se escoge los registros
MOV R0,#0FFH temporales R0 y R, para hacer
ACALL RETAR decrementos y dure un tiempo aproximado
MOV P0,#04CH de 500us, medio segundo para que lso
MOV R5,#070H pasos de motor sean lentos y el movil se
MOV R0,#0FFH comporte mejr en su movimiento;
ACALL RETAR
RET Estos cálculos de los números en
GIROIZ: MOV P0,#04CH hexadecimal para el retardo se hicieron
;SUBRUTINA CRUCE ALA para un cristal de 4 MHz.
IZQUIERDA
MOV R5,#070H El siguiente es el fragmento de programa
MOV R0,#0FFH del retardo:
ACALL RETAR
MOV P0,#068H RETAR: DJNZ R0,RETAR
MOV R5,#070H ;SUBRUTINA RETARDO PARA LA
MOV R0,#0FFH VELOCIDA DE PASO.
ACALL RETAR MOV R0,#0FFH
MOV P0,#029H DJNZ R5,RETAR
MOV R5,#070H RET
MOV R0,#0FFH NOP
ACALL RETAR END
MOV P0,#031H
MOV R5,#070H Imagines del movil
MOV R0,#0FFH
ACALL RETAR
MOV P0,#013H Lo siguiente son la foto de movil :
MOV R5,#070H
MOV R0,#0FFH
ACALL RETAR
MOV P0,#092H
MOV R5,#070H
MOV R0,#0FFH
ACALL RETAR
MOV P0,#086H
MOV R5,#070H
MOV R0,#0FFH
ACALL RETAR
MOV P0,#0C4H
MOV R5,#070H
MOV R0,#0FFH
ACALL RETAR
RET

Ing. Gabriel Sánchez Suárez


gsanchez@bari.ufps.edu.co
UNIVERSIDAD FRANCISCO DE PAULA SANTANDER
INGENIERÍA ELECTRÓNICA
MICROCONTROLADORES
MOVIL CONTROLADO POR 89C51
JESUS A. BEDOYA FERNANDO A. DUARTE RAUL QUINTERO JUAN GABRIEL PAZ
Jesus_Bedoya@latinmail.com Fernandoduarte75@hotmail.com Requintero79.@hotmail.com Peacetronixhotmail.com

sensores, circuitos de control de estos


motores y su manejo por medio del micro,
además las discusiones y anécdotas por el
desarrollo de esto, provocan un crecimiento
personal para el futuro como Ingeniero.

Inconvenientes:

- Los motores paso a paso tiene la


dificulta que la etapa de potencia es muy
robusta, además (Mosfet IRF540), la
alimentación por pilas o baterías, se
terminarían rápidamente ya que estos
motores consume corriente considerables.
- El móvil debe ser liviano, ya que estos
motores son deficientes en el torque, y
puede reducir su vida útil, por calentarse.

CONCLUSIONES

- El microcontrolador 8051, tiene los


comandos limitados con respecto a otro
microcontroladores, pero ejercen una muy
buena aplicación si son programados
correctamente , con una lógica sencilla,
además, hay software muy completos con
simulaciones muy precisas, que facilitan en
cierta forma el desarrollo del programa.
- Los motores paso a paso, tiene la
limitante por ser muy robusto de
tamaño(torque), consumen mucha corriente
y sus etapa de potencia para la
alimentación de las bobinas, sin embargo
son sencillos de controlar, su rutina de
pulso es muy sencilla y son muy precisos.
- Los sensores de luz, tiene una ventaja
muy importante para el manejo de
simulación de caminos donde exista blanco
y negro, pero son muy limitados para otro
tipo de material, las recomendación seria
utilizar otro tipos de sensores para mejorar
la aplicación del móvil(desviar obstáculos
etc.) .
- Estos tipos de proyecto ayuda a abrir la
mente, mejora el ejercicio de trabajar en
grupo, ya que gana experiencia en

Ing. Gabriel Sánchez Suárez


gsanchez@bari.ufps.edu.co