UPS, Calva, Ortiz, Pazmiño, Romero, Sistemas Microprocesados II
ROBOT SEGUIDOR DE LINEAS
Jorge Calva e-mail:
[email protected] Byron Ortiz e-mail:
[email protected] Oscar Pazmiño e-mail:
[email protected] Heinerth Romero e-mail:
[email protected] 1.2
DI SEÑO DEL CIRCUITO
RESUMEN: Diseño y construcción de un robot seguidor de línea, usando un micro controlador.
Micro PALABRAS CLAVE: controlador, Sensor Infrarrojo, Driver L293d, Bascom AVR. 1
DESARROLLO DEL INFORME FIGURA 1. Diseño usando ISIS de Proteus.
1.1
OBJETIVOS Diseñar e implementar un circuito para el robot seguidor de líneas.
Usando la herramienta de programación, Bascom AVR, diseñar un algoritmo lógico para el funcionamiento del robot.
Familiarizarse con el uso de sensores infrarrojos, y el driver L293D.
Diseñar una estructura para colocar los motores y todas las partes del robot.
Nuestra placa de control estará conformada por un micro controlador Atmega8, una compuerta negadora, dos driver L293D, Cuatro resistencias y dos diodos led bicolores. Usaremos CNY70:
1
4
sensores
infrarrojos
UPS, Calva, Ortiz, Pazmiño, Romero, Sistemas Microprocesados II
FIGURA 4. Compuerta Logica 74ls04.
FIGURA 2. Sensor CNY70.
El CNY70 es un sensor óptico reflexivo que tiene una construcción compacta dónde el emisor de luz y el receptor se colocan en la misma dirección para detectar la presencia de un objeto utilizando la reflexión del infrarrojo sobre el objeto. La longitud de onda de trabajo es 950nm. El detector consiste en un fototransistor.
También usaremos una negadora 74LS04, para voltaje que nos dan los estabilizar la señal en 1 y decir 0v o 5v.
compuerta regular el sensores y 0 lógico es
También usaremos 2 Driver L293D para el manejo de los cuatro motores que vamos a usar.
FIGURA 5. Microcontrolador Atmega8.
FIGURA 3. Driver L293D.
El cerebro de nuestro robot será un Atmega8, en el cual programaremos todas las condiciones, según el reto a pasar, es decir de acuerdo a la pista propuesta, las condiciones solo constara de sentencias IF – THEN.
El integrado L293D incluye cuatro circuitos para manejar cargas de potencia media, en especial pequeños motores y cargas inductivas, con la capacidad de controlar corriente hasta 600 mA en cada circuito y una tensión entre 4,5 V a 36 V.
2
UPS, Calva, Ortiz, Pazmiño, Romero, Sistemas Microprocesados II
Config Portd.6 = Output Config Portd.7 = Output Config Portc.0 = Output Config Portc.1 = Output Config Portc.2 = Output Config Portc.3 = Output Config Portc.4 = Output Config Portc.5 = Output FIGURA 6. Diseño de la placa hecho en ARES de Proteus.
M1a Alias Portd.0 M1b Alias Portd.1 M2a Alias Portd.2 M2b Alias Portd.3
Una vez realizado el diseño en ISIS y haber simulado que todo funcione, pasamos a diseñar la placa que vamos a quemar en la baquelita en ARES del mismo Proteus. 1.3
M3a Alias Portd.4 M3b Alias Portd.5 M4a Alias Portd.6 M4b Alias Portd.7
PROGRAMACION
S1 Alias Pinb.0 S2 Alias Pinb.2 S3 Alias Pinb.3 S4 Alias Pinb.4 Led1 Alias Portc.0 Led2 Alias Portc.1 Led3 Alias Portc.2 Led4 Alias Portc.3 Led5 Alias Portc.4 Led6 Alias Portc.5 Declare Sub Adelante Declare Sub Curvaderecha Declare Sub Curvaizquierda Declare Sub Giroderecha Declare Sub Giroizquierda
La programación fue realizada en Basic, con la herramienta de programación Bascom AVR, a continuación se adjunta el código del programa: $regfile = "M8def.dat" $crystal = 8000000 Config Portb.0 = Input Config Portb.2 = Input Config Portb.3 = Input Config Portb.4 = Input Config Portd.0 = Output Config Portd.1 = Output Config Portd.2 = Output Config Portd.3 = Output Config Portd.4 = Output Config Portd.5 = Output
Inicio: If S1 = 1 And S2 = 0 And S3 = 0 And S4 = 1 Then
3
UPS, Calva, Ortiz, Pazmiño, Romero, Sistemas Microprocesados II
Adelante End If
Reset M4a Set M4b Set Led5 Reset Led6
If S1 = 1 And S2 = 1 And S3 = 1 And S4 = 1 Then Adelante End If
End Sub Sub Curvaderecha
If S2 = 1 And S3 = 0 Then Curvaizquierda
Reset M1a Reset M1b Reset M2a Reset M2b Reset Led1 Reset Led2
End If If S2 = 0 And S3 = 1 Then Curvaderecha End If
Reset M3a Set M3b Reset M4a Set M4b Set Led5 Reset Led6
If S1 = 0 And S2 = 1 And S3 = 1 And S4 = 1 Then Giroderecha End If If S1 = 1 And S2 = 1 And S3 = 1 And S4 = 0 Then Giroizquierda End If
End Sub Sub Curvaizquierda
Goto Inicio
Set M1a Reset M1b Set M2a Reset M2b Set Led1 Reset Led2
Sub Adelante Set M1a Reset M1b Set M2a Reset M2b Reset Led1 Set Led2
Reset M3a Reset M3b Reset M4a Reset M4b Reset Led5 Reset Led6
Reset M3a Set M3b
4
UPS, Calva, Ortiz, Pazmiño, Romero, Sistemas Microprocesados II
End Sub 1.4. Construcción de la placa de control.
Sub Giroderecha Reset M1a Set M1b Reset M2a Set M2b Reset Led1 Set Led2 Reset M3a Set M3b Reset M4a Set M4b Set Led5 Reset Led6
FIGURA 7. Mesa de trabajo.
End Sub Sub Giroizquierda Set M1a Reset M1b Set M2a Reset M2b Reset Led1 Set Led2
FIGURA 8. Perforando la Baquelita.
Set M3a Reset M3b Set M4a Reset M4b Set Led5 Reset Led6 End Sub
5
UPS, Calva, Ortiz, Pazmiño, Romero, Sistemas Microprocesados II
Universidad Ecuador 2011
Politécnica
27/07/2011
FIGURA 9. Seguidor ya armado. 2
CONCLUSIONES
3
Se logró visualizar el funcionamiento de los sensores infrarrojos. Se usó servomotores truncados, para que funcionen como motores DC. Para pistas con mayor dificultad es necesario cambiar el algoritmo de programación, la lógica dependerá del reto al cual será sometido nuestro seguidor de línea.
REFERENCIAS
[1]Foro microcontroladores AVR´s: http://todopic.mforos.com/551641/413 9779-manual-en-espanol-para-bascomavr/ [2]Datasheets: http://www.alldatasheet.com/
Adaptado por: Jorge Calva, Byron Ortiz, Oscar Pazmiño, y Heinerth Romero, para la clase de Sistemas Microprocesados II.
Escuela de Ingeniería Electrónica
6
Salesiana