Está en la página 1de 47

I.E.S. Joan Miró (S.S.

De los Reyes)

Proyecto
Rastreador

Danlex
Departamento de Tecnología.
Informática 4º E.S.O

Profesor: Pedro Alonso Sanz


Alumnos: Alejandro Martín y Daniel
Rodrigo
Instituto: I.E.S Joan Miró
Localidad: San Sebastián De los Reyes
Curso: 2008/2009

Rastreador Danlex Borde izquierdo sin memoria con LCD.

1
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

Índice de contenido
1.- Explicación breve del Proyecto.......................................................................................................4
2.- Esquema eléctrico de simulación del Rastreador............................................................................5
3.- Programas Robot Rastreador y Coche Teledirigido. ......................................................................6
3.1.- Programas de test de las diferentes partes del robot................................................................6
3.1.1.- Pruebas del LCD..............................................................................................................6
3.1.1.1.- Diagrama de Flujo LCD...........................................................................................6
3.1.1.2.- Programa LCD.........................................................................................................6
3.1.2.- Pruebas del Motor Derecho.............................................................................................7
3.1.2.1.- Diagrama de Flujo Motor Derecho..........................................................................7
3.1.2.2.- Programa Motor Derecho.........................................................................................8
3.1.3.- Pruebas del Motor Izquierdo...........................................................................................9
3.1.3.1.- Diagrama de Flujo Motor Izquierdo........................................................................9
3.1.3.2.- Programa Motor Izquierdo.......................................................................................9
3.1.4.- Pruebas del Pulsador......................................................................................................10
3.1.4.1.- Diagrama de Flujo Pulsador...................................................................................10
3.1.4.2.- Programa Pulsador.................................................................................................11
3.1.5.- Pruebas de Sensores.......................................................................................................12
3.1.5.1.- Diagrama de Flujo Sensores..................................................................................12
3.1.5.2.- Programa de Sensores............................................................................................12
3.2.- Rastreador 1...........................................................................................................................14
3.2.1.- Diagrama de Flujo Rastreador 1....................................................................................14
3.2.2.- Programa Rastreador 1..................................................................................................15
3.3.- Coche Teledirigido................................................................................................................18
3.3.1.- Esquema Eléctrico de simulación del Coche Teledirigido............................................18
3.3.2.- Programa Coche Teledirigido........................................................................................18
3.3.2.1.- Transmisión_Serie_1.c...........................................................................................18
3.3.2.2.- Recepción_Serie_2.c..............................................................................................20
4.- Diagrama en Bloques....................................................................................................................27
4.1.- Esquema Eléctrico Robot Rastreador....................................................................................27
4.1.1.- Adaptador de señales PC-uC.........................................................................................28
4.1.2.- Regulador 9v/5v.............................................................................................................28
4.1.3.- Sistema de Control.........................................................................................................29
4.1.4.- Control de Potencia........................................................................................................30
4.1.5.- Sensores de Infrarrojos y acondicionador de señal........................................................32
4.2.- Mando....................................................................................................................................32
5.- Diseño de Placas de Circuitos Impresos. .....................................................................................33
5.1.1.- Cara de Componentes y de pistas Top Copper del Adaptador de señal PC-uC.............33
5.1.2.- Cara de pistas Bottom Copper del Adaptador de señal PC-uC......................................34
5.2.1.- Cara de Componentes y de pistas Top Copper del Regulador 9v/5v.............................34
5.2.2.- Cara de pistas Bottom Copper del Regulador 9v/5v......................................................34
5.3.1.- Cara de Componentes y de pistas Top Copper del Sistema de Control.........................35
5.3.2.- Cara de pistas Bottom Copper del Sistema de Control..................................................35
5.3.3.- Cara de pistas Top Copper del Sistema de Control........................................................36

2
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.4.1.- Cara de Componentes y de pistas Top Copper del Control de Potencia........................36


5.4.2.- Cara de pistas Bottom Copper del Control de Potencia................................................37
5.4.3.- Cara de pistas Top Copper del Control de Potencia......................................................37
5.5.1.- Cara de Componentes y de pistas Top Copper de los Sensores de Infrarrojos y
acondicionador de señal............................................................................................................38
5.5.2.- Cara de pistas Bottom Copper del Adaptador de los Sensores de Infrarrojos y
acondicionador de señal............................................................................................................38
5.5.3.- Cara de pistas Top Copper de los Sensores de Infrarrojos y acondicionador de señal.. 38
5.6.1.- Cara de Componentes y de pistas Top Copper del Mando............................................39
5.6.2.- Cara de pistas Bottom Copper del Adaptador del Mando.............................................39
5.6.3.- Cara de pistas Top Copper del Mando...........................................................................39
6.- Diseño mecánico, (Carrocería). ....................................................................................................40
7.- Lista de Componentes y coste económico. ..................................................................................41
8.- Coste Económico Total. ...............................................................................................................42
9.- Referencias....................................................................................................................................43
10.- Anexos. .......................................................................................................................................43
10.1.- Características Eléctricas del Motor de Corriente Continua COPAL HG16-030-AA-00. . 43
10.2.- Características Eléctricas de los Sensores de Infrarrojos. ..................................................43
10.3.- Características Eléctricas Tarjeta Emisora de Datos 433,92 Mhz. (CEBEK C-0503). ......43
10.4.- Características Eléctricas Tarjeta Receptora de Datos 433,92 MHz. ( CEBEK C-504 ).. . .43
10.5.- Características Eléctricas del Inversor de Giro L298N.......................................................43
10.6.- Características Eléctricas del microcontrolador PIC16F876A............................................43
10.7.- Características del LCD.......................................................................................................43

1.- Explicación breve del Proyecto.


El proyecto consiste en realizar un robot que sea capaz de seguir una linea negra sobre un fondo

3
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

blanco de forma autónoma.


El robot es tipo triciclo. Se controla el sentido de giro de cada una de las ruedas por separado, de
esta manera se pueden realizar giros a derecha y a izquierda ( Ver Figura 1)
El robot trabaja con técnicas digitales. El control está realizado con un microcontrolador de
Microchip el PIC 16F876a.
Se le ha dotado de un LCD para que indique lo que está ocurriendo en su entorno en todo momento.
Dispone de sensores de Infrarrojos CNY70 para localizar la línea negra.
Además se añade al robot que pueda ser teledirigido.
En todo momento el control del robot puede hacerse manualmente.
Existe una comunicación entre el robot y un mando en radio frecuencia con los módulos de
CEBECK C-0503 y C-0504. Que son un transmisor y receptor de datos en modulación AM que
trabajan a una frecuencia portadora 433,92 MHz y tienen un Ancho de Banda de 4 Khz.
Se diseña el proyecto con una herramienta llamada Proteus, que te permite simular el hardware y el
software a la vez, pudiendo ejecutarse paso a paso cada programa. Se puede trabajar
con ficheros .ASM y C. Además se ha desarrollado las placas del proyecto y la carrocería del
dispositivo.El software se puede grabar en el robot directamente sin necesidad de extraer el
microcontrolador, para ello se ha utilizado el grabador PICdownloader.exe. Los microcontroladores
tienen que tener cargado previamente un programa de comunicaciones para comunicarnos con un
Ordenador Personal.

4
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

2.- Esquema eléctrico de simulación del Rastreador.

6
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.- Programas Robot Rastreador y Coche Teledirigido.


3.1.- Programas de test de las diferentes partes del robot.
3.1.1.- Pruebas del LCD.
3.1.1.1.- Diagrama de Flujo LCD.

Prueba LCD
Inicializar el LCD

Escribir un mensaje

Posicionar el cursor en el 1º carácter de la línea 2

Escribir un mensaje

FIN

3.1.1.2.- Programa LCD.


// Prueba LCD.
// ******************************** Directivas de Preprocesado***************************************
// (Controlan la conversión del programa a código máquina por parte del compilador)

#include <16F876A.h> // Incluye el fichero 16F876A al programa tiene que estar en la misma carpeta del
// programa define funciones, patillas y registros.
#fuses XT,NOWDT // Define la palabra de configuración del microcontrolador PIC
// Trabaja con un reloj tipo XT y no utiliza perro guardián Wathdog
#use delay( clock = 4000000 ) // Define la frecuencia del reloj de 4 MHz
#include <LCD1.c> // Incluimos el driver LCD1.c que contiene las funciones de control del LCD.

7
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

// ***************************** Función principal ó programa principal ******************************


void main()
{
lcd_init(); // Inicializamos el LCD.
printf(lcd_putc,"IES Joan Miro"); // Escribimos en el LCD "IES Joan Miro".
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc,"Informatica 4ESO"); // Escribimos en el LCD "Informatica 4ESO".

while(1);
}

3.1.2.- Pruebas del Motor Derecho.


3.1.2.1.- Diagrama de Flujo Motor Derecho.

Pruebas Motor Derecho

Giro del Motor hacia la Izquierda

Temporizar 1 segundo

Giro del Motor hacia la Derecha

Temporizar 1 segundo

Parar el Motor

Temporizar 1 segundo

8
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.1.2.2.- Programa Motor Derecho.


// Pruebas del Motor Derecho.
// ********************************* Directivas de Preprocesado**************************************
// (Controlan la conversión del programa a código máquina por parte del compilador)
#include <16F876A.h> // Incluye el fichero 16F876A al programa tiene que estar en la misma carpeta del
// programa define funciones, patillas y registros.
#fuses XT,NOWDT // Define la palabra de configuración del microcontrolador PIC
// Trabaja con un reloj tipo XT y no utiliza perro guardián Wathdog
#use delay( clock = 4000000 ) // Define la frecuencia del reloj de 4 MHz

#BYTE TRISC = 0x87 // TRISC en 87h.


#BYTE portC = 0x07 // PORTC en 07h.

#BIT motor_derecho = 0x07.0 // RC0 en 0x07 patilla 0.


#BIT sensB = 0x07.2 // RC2 en 0x07 patilla 2.

// ****************************** Función principal o programa principal *****************************


// Se define con un void main,
void main()
{
TRISC = 0B00000000; // Defines Puerto C como entrada de datos.
portC = 0B00000000; // Poner a 0 el Puerto C.
while (1) // Ejecuta indefinidamente lo que está entre corchetes.
{
sensB = 1; // Ponemos SENSB a masa.
motor_derecho = 1; // Giro del motor hacia la Izquierda.
delay_ms(250); // Retardo de 1S.

SENSB = 1; // Ponemos SENSB a masa.


motor_derecho = 0; // Giro del motor hacia la Derecha.
delay_ms(250); // Retardo de 1S.

sensB = 0; // Motor parado.


delay_ms(250); // Retardo de 1S.
}
}

9
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.1.3.- Pruebas del Motor Izquierdo.


3.1.3.1.- Diagrama de Flujo Motor Izquierdo.

Pruebas Motor Izquierdo

Giro del Motor hacia la Izquierda

Temporizar 1 segundo

Giro del Motor hacia la Derecha

Temporizar 1 segundo

Parar el Motor

Temporizar 1 segundo

3.1.3.2.- Programa Motor Izquierdo.


// Pruebas del Motor Izquierdo.
// ******************************** Directivas de Preprocesado***************************************
// (Controlan la conversión del programa a código máquina por parte del compilador)
#include <16F876A.h> // Incluye el fichero 16F876A al programa tiene que estar en la misma carpeta del
// programa define funciones, patillas y registros.
#fuses XT,NOWDT // Define la palabra de configuración del microcontrolador PIC
// Trabaja con un reloj tipo XT y no utiliza perro guardián Wathdog
#use delay( clock = 4000000 ) // Define la frecuencia del reloj de 4 MHz
#BYTE TRISC = 0x87 // TRISC en 87h.
#BYTE portC = 0x07 // PORTC en 07h.
#BIT motor_izquierdo = 0x07.5 // RC5 en 0x07 patilla 5.
#BIT sensA = 0x07.1 // RC1 en 0x07 patilla 1.

10
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

// **************************** Función principal o programa principal *******************************


// Se define con un void main,
void main()
{
TRISC = 0B00000000; // Defines Puerto C como entrada de datos.
portC = 0B00000000; // Poner a 0 el Puerto C.
while (1) // Ejecuta indefinidamente lo que está entre corchetes.
{
sensA = 1; // Ponemos SENSA a masa.
motor_izquierdo = 1; // Giro del motor hacia la Izquierda.
delay_ms(250); // Retardo de 1S.

sensA = 1; // Ponemos SENSA a masa.


motor_izquierdo = 0; // Giro del motor hacia la Derecha.
delay_ms(250); // Retardo de 1S.

sensA = 0; // Motor Parado.


delay_ms(250); // Retardo de 1S.
}
}

3.1.4.- Pruebas del Pulsador.


3.1.4.1.- Diagrama de Flujo Pulsador.

Pruebas Pulsador

NO
¿Se ha pulsado INICIO? Escribimos en el LCD “OFF”
SI

Escribimos en el LCD “ON”

11
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.1.4.2.- Programa Pulsador.


// Pruebas del Pulsador.
// ************************************ Directivas de Preprocesado***********************************
// (Controlan la conversión del programa a código máquina por parte del compilador)
#include <16F876A.h> // Incluye el fichero 16F876A al programa tiene que estar en la misma carpeta del
// programa define funciones, patillas y registros.
#fuses XT,NOWDT // Define la palabra de configuración del microcontrolador PIC
// Trabaja con un reloj tipo XT y no utiliza perro guardián Wathdog
#use delay( clock = 4000000 ) // Define la frecuencia del reloj de 4 MHz
#include <LCD1.c> // Incluimos el driver LCD1.c que contiene las funciones de control del LCD.
#BIT TB3 = 0x86.3 // TB3 en 0x86 patilla 3.
#BIT pulsador = 0x06.3 // RB0 en 0x06 patilla 3.

// ***************************** Función principal o programa principal ******************************


// Se define con un void main,
void main()
{
lcd_init(); // Inicializamos el LCD.
TB3 = 1; // Ponemos RB3 como ENTRADA de datos.
while (1) // Ejecuta indefinidamente lo que está entre corchetes.
{
TB3 = 1; // Ponemos RB3 como ENTRADA de datos.
if (pulsador == 1) // Preguntamos si pulsador=1
{ // Si pulsador=1 ejecuta lo que viene a continuación.
lcd_gotoxy(1,1); // Posicionamos el Cursor del LCD en la posición 1 línea 1.
printf(lcd_putc,"OFF"); // Escribimos en el LCD "OFF".
}
else // Si RC0=0 ejecuta lo que viene a continuación.
{
lcd_gotoxy(1,1); // Posicionamos el Cursor del LCD en la posición 1 línea 1.
printf(lcd_putc,"ON "); // Escribimos en el LCD "ON ".
}
}
}

12
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.1.5.- Pruebas de Sensores.


3.1.5.1.- Diagrama de Flujo Sensores.

Pruebas Sensores

SI Escribimos en el LCD
¿Sensor Izquierdo = Negro?
¿Sensor Derecho = Negro? Negro Negro

NO

¿Sensor Izquierdo = Blanco? SI


Escribimos en el LCD
¿Sensor Derecho = Negro? Blanco Negro

NO

SI
¿Sensor Izquierdo = Negro? Escribimos en el LCD
¿Sensor Derecho = Blanco? Negro Blanco

NO

¿Sensor Izquierdo = Blanco? SI Escribimos en el LCD


¿Sensor Derecho = Blanco? Blanco Blanco

NO

3.1.5.2.- Programa de Sensores.


// Pruebas de Sensores.
// ********************************** Directivas de Preprocesado**************************************
// (Controlan la conversión del programa a código máquina por parte del compilador)
#include <16F876A.h> // Incluye el fichero 16F876A al programa tiene que estar en la misma
// carpeta del programa define funciones, patillas y registros.
#fuses XT,NOWDT // Define la palabra de configuración del microcontrolador PIC
// Trabaja con un reloj tipo XT y no utiliza perro guardián Wathdog
#use delay( clock = 4000000 ) // Define la frecuencia del reloj de 4 MHz
#include <LCD1.c> // Incluimos el driver LCD1.c que contiene las funciones de control del LCD.

13
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

#BYTE TRISA = 0x85 // TRISA en 85h.


#BYTE portA = 0x05 // PORTA en 05h.
// **************************** Función principal o programa principal **********************************
// Se define con un void main,
void main()
{
int8 sensores;
lcd_init(); // Inicializamos el LCD.
TRISA = 0B11111111; // Defines Puerto A como entrada de datos.
while (1) // Ejecuta indefinidamente lo que está entre corchetes.
{
sensores = portA;
sensores = sensores & 0B00100100;
switch (sensores) // Preguntamos por el Puerto C si es 0 ejecuta el case 0, si es 1 el case 1, si es 2
// ejecuta el case 2,si es 3 ejecuta el case 3 si es mayor que 3 ejecuta default.
{
case 0B00000000:
lcd_gotoxy(1,1); // Posicionamos el Cursor del LCD en la
// posición 1 línea 1.
printf(lcd_putc,"NEGRO NEGRO"); // Escribimos en el LCD "Negro Negro"
break;
case 0B00000100:
lcd_gotoxy(1,1); // Posicionamos el Cursor del LCD en la
// posición 1 línea 1.
printf(lcd_putc,"NEGRO BLANCO"); // Escribimos en el LCD "Negro Blanco"
break;
case 0B00100000:
lcd_gotoxy(1,1); // Posicionamos el Cursor del LCD en la
// posición 1 línea 1.
printf(lcd_putc,"BLANCO NEGRO"); // Escribimos en el LCD "Blanco Negro"
break;
case 0B00100100:
lcd_gotoxy(1,1); // Posicionamos el Cursor del LCD en la
// posición 1 línea 1.
printf(lcd_putc,"BLANC0 BLANCO"); // Escribimos en el LCD "Blanco Blanco".
}
}
¡}

14
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.2.- Rastreador 1.
3.2.1.- Diagrama de Flujo Rastreador Danlex.

Rastreador_Borde_Izquierdo sin memoria_ con LCD .c

// Directivas de Procesado
#BYTE TRISC= 0X87h #BIT sensor_izquierdo= 0x05.5
#BYTE TRISA= 0X85h #BIT sensor_derecho= 0x05.
#BIT TB3= 0X86 #define negro 0
#BIT motor_derecho= 0x07.0 #define blanco 1
#BIT sensB= 0x07.2 #BYTE portC= 0x07
#BIT sensA= 0x07.1 #BYTE portA=0x05
#BIT pulsador= 0x06.3

// Configurar los Puertos del microcontrolador


TRISC 0b00000000
TRISA 0b11111111

// Parar motores
portC 0B00000000

//Inicializar el LCD y escribir un mensaje


lcd_init()
printf(lcd_putc”rastreador”)

//Configurar RB3 como entrada de datos


TB3 1

// Posicionamos el Cursor del LCD en posicion 1 linea 2


lcd_gotoxi(1,2)

¿sensor_izquierdo=Blanco?
¿sensor_derecho=Negro?
//escribir en el lcd”no posicionado

15
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

//Escribir en el LCD “posicionado”


printf(lcd_put c”posicionado

¿pulsador = 1?

//Activador las masas del Inversor de Giro L298

//Posicionamos el Cursor del LCD en la posición 1 linea 2

//Giramos hacia la izquierda


si motor_derecho=0
¿sensor_izquierdo=Negro? motor_izquierdo=1
¿sensor_derecho=Negro?
//Escribir en el LCD “izquierda”
printf(lcd_putc, “izquierda “)
no
si // Ir hacia adelante
¿sensor izquierdo=Blanco? motor_derecho=0
¿sensor derecho = Negro? motor_izquierdo=0

//Escribir en el LCD “Adelante”.


no pirintf(lcd_putc, “Adelante “);

¿Sensor izquierdo= negro? si


//Giramos hacia la izquierda
¿sensor derecho=blanco? motor_derecho=0
motor_izquierdo=1

no //Escribir en el LCD “Izquierda”


printf(lcd_putc, “ Izquierda “);
¿sensor izquierdo=blanco?
¿sensor derecho=blanco?
//Giramos hacia la derecha
si motor_derecho=1
motor_izquierdo=0

//Escribir en el LCD “Derecha”.


printf(lcd_putc, “Derecha “);

16
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.2.2.- Programa DANLEX.

// Rastreador 1.

// Rastreador Borde Izquierdo sin memoria con LCD.

// ************************************ Directivas de
Preprocesado*************************************************

// (Controlan la conversión del programa a código máquina por parte del compilador)

#include <16F876A.h> // Incluye el fichero 16F876A al programa tiene que estar en la misma carpeta del
programa
// define funciones, patillas y registros.

#fuses XT,NOWDT // Define la palabra de configuración del microcontrolador PIC


// Trabaja con un reloj tipo XT y no utiliza perro guardián Wathdog
#use delay( clock = 4000000 ) // Define la frecuencia del reloj de 4 MHz

#include <LCD1.c> // Incluimos el driver LCD1.c que contiene las funciones de control del LCD.

#BYTE TRISC = 0x87 // TRISB en 87h.


#BYTE portC = 0x07 // PORTB en 07h.

#BIT TB3 = 0x86.3 // TRISB el BIT 3 0x86 patilla 3.

#BYTE TRISA = 0x85 // TRISA en 85h.


#BYTE portA = 0x05 // PORTA en 05h.

#BIT motor_derecho = 0x07.0 // RC0 en 0x07 patilla 0.


#BIT sensB = 0x07.2 // RC2 en 0x07 patilla 2.

#BIT motor_izquierdo = 0x07.5 // RC5 en 0x07 patilla 5.


#BIT sensA = 0x07.1 // RC1 en 0x07 patilla 1.

17
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

#BIT pulsador = 0x06.3 // RB3 en 0x06 patilla 3.

#BIT sensor_izquierdo = 0x05.5 // RA0 en 0x05 patilla 5.


#BIT sensor_derecho = 0x05.2 // RA1 en 0x05 patilla 2.

#define Negro 0
#define Blanco 1

// *********************************** Función principal o programa principal


*******************************

void main()
{

//*********************************** Configuración de los Puertos del PIC y reseteos del Rastreador


********

TRISC = 0B00000000; // Defines Puerto C como SALIDA de datos.

TRISA = 0B11111111; // Defines Puerto A como entrada de datos.

portC = 0B00000000; // Paramos motores.

lcd_init(); // Inicializamos el LCD.


printf(lcd_putc,"Danlex"); // Escribimos en el LCD "Danlex".

TB3 = 1; // Definimos la patilla 3 del Puerto B como entrada de datos.

//*********************************** Posicionamiento Inicial del Rastreador


*********************************

DO

{
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.

18
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

if (sensor_izquierdo == Blanco && sensor_derecho == Negro)


{
printf(lcd_putc,"Posicionado"); // Escribimos en el LCD "Posicionado "
}
else
{
printf(lcd_putc,"No posicionado"); // Escribimos en el LCD "No posicionado".
}

} WHILE (pulsador == 1 ); // Si no se ha pulsado INICIO seguimos ejecutando este bucle.

sensA = 1; // Activamos la masa en SENSA ;


sensB = 1; // Activamos la masa en SENSB ;

//*********************************** Rastreador en funcionamiento


*********************************************

while (1) // Ejecuta indefinidamente lo que está entre corchetes.

lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.

if (sensor_izquierdo == Negro && sensor_derecho == Negro) // Giramos hacia la Izquierda.

{
motor_derecho = 0; // Motor Derecho hacia adelante.

motor_izquierdo = 1; // Motor Izquierdo hacia atrás.

printf(lcd_putc,"Izquierda"); // Escribimos en el LCD "Izquierda".


}

19
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

if (sensor_izquierdo == Blanco && sensor_derecho == Negro) // Ir hacia Adelante.

{
motor_derecho = 0; // Motor Derecho hacia adelante.-

motor_izquierdo = 0; // Motor Izquierdo hacia adelante.

printf(lcd_putc,"Adelante "); // Escribimos en el LCD "Adelante ".

if (sensor_izquierdo == Negro && sensor_derecho == Blanco) // Giramos hacia la Izquierda.

{
motor_derecho = 0; // Motor Derecho hacia adelante.

motor_izquierdo = 1; // Motor Izquierdo hacia atrás.

printf(lcd_putc,"Izquierda "); // Escribimos en el LCD "Izquierda ".


}

if (sensor_izquierdo == Blanco && sensor_derecho == Blanco) // Giramos hacia la Derecha.

{
motor_derecho = 1; // Motor Derecho hacia atrás.

motor_izquierdo = 0; // Motor Izquierdo hacia adelante.

printf(lcd_putc,"Derecha "); // Escribimos en el LCD "Derecha ".


}
}

20
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.3.- Coche Teledirigido.


3.3.1.- Esquema Eléctrico de simulación del Coche Teledirigido.

Mando Simulación del Robot Laberinto + Coche Teledirigido


U1 C2
RB0E 21 9
VDD RB0/INT OSC1/CLKIN
RB1E 22 10
RB1 OSC2/CLKOUT
RB2E 23 1 15pF
RB2 MCLR/Vpp/THV
R11 R22 R19 R20 R21 RB3E 24
RB3/PGM X2
RB4E 25 2
220 220 220 220 220 4MHz
26
RB4 RA0/AN0
3 C6
RB5 RA1/AN1
27 4
RB6/PGC RA2/AN2/VREF-
28 5
RB7/PGD RA3/AN3/VREF+
6 R1 15pF R9
A

A
RA4/T0CKI
11 7
RC0/T1OSO/T1CKI RA5/AN4/SS VDD
D1 D2 D16 D17 D18 12
RC1/T1OSI/CCP2 100 10k
13
RC2/CCP1
14
RC3/SCK/SCL C1
K

K
15
16
RC4/SDI/SDA 100nF RESET1
RC5/SDO
17
RC6/TX/CK 1 2
RB1E RB0E RB4E RB3E RB2E 18
RC7/RX/DT
1

1
PIC16F876_JOAN PULSADOR_JOAN
SW4 SW5 SW6 SW7 SW8 2 3
RXD

IZQUIERDA ADELANTE DERECHA ATRAS PARADA U4:A Tx


TXD

74HC125
2

2
RTS

1
CTS
A
U2 C3
LCD1 RB0 21
RB0/INT OSC1/CLKIN
9
RB1 22 10
LCD-16 X 2_JOAN VDD B RB1 OSC2/CLKOUT
RB2 23 1 15pF
RB2 MCLR/Vpp/THV
RB3 24
RB3/PGM
RB4 25
RB4 RA0/AN0
2 X1
R13 RB3
RB5 26
RB5 RA1/AN1
3 1MHz
RB6 27 4 RA2
10k RB7 28
RB6/PGC RA2/AN2/VREF-
5 C4
RB7/PGD RA3/AN3/VREF+
R3
1

6
RA4/T0CKI
RC0 11 7 RA5
VDD
VSS

VEE

RC0/T1OSO/T1CKI RA5/AN4/SS 100 VDD


RW
RS

D0
D1
D2
D3
D4
D5
D6
D7

RC1 12 15pF VSS


E

INCIO RC2 13
RC1/T1OSI/CCP2
RC2/CCP1
14
R2
1
2
3

4
5
6

7
8
9
10
11
12
13
14

RC3/SCK/SCL
15
2

RC5 RC4/SDI/SDA 10k


16
RB1
RB2
RB0

RB4
RB5
RB6
RB7

RC5/SDO
VDD 17
RC6/TX/CK
RB[0..7] 18 RESET
RC7/RX/DT
2 1
Sistema de Control
PIC16F876_JOAN

Tx
RC0

RC5

C5
RC2

RC1

VDD
BAT1
V1
V1 2 1
V1 100nF
K

R16 D8 D9 K
1

12V
220 MOI
U6:A U6:B
A

RA5 RA2
U10 R14 74HC14 74HC14 VDD
VDD VDD

12
10k 1 2
K

K
2

1 6
9 4 U3 U4:C
D10 12V D11 U4:D
5 74HC14
5 74HC14
2 IN1 VCC VS
R10 R12
A

5
7 2
Q1

13
IN2 OUT1
10 10k 10k
4 IN3
12 3
IN4 OUT2
6
OPTOCOUPLER-NPN ENA
11 13
VDD ENB OUT3
1 14
SENSA OUT4
Q2 15
SENSB GND V1
VDD SENSOR SENSOR
K

+88.8 8 L298 IZQUIERDO DERECHO


V1 Volts
D12 MOD D14 NEGRO NEGRO
A

R17
220 SW1 SW2
R15 1 2
Control de Potencia 1 2 1 2
K

10K
U11 D13 12V D15
1 6 BLANCO BLANCO
Q3
A

5
2

4
Q4
+88.8 Coche-Rastreador
Volts

OPTOCOUPLER-NPN Sensores de Infrarrojos


y acondicionador de señal

3.3.2.- Programa Coche Teledirigido.


3.3.2.1.- Transmisión_Serie_1.c
//************************************** Mando**************************************************
// ****************************** Directivas de Preprocesado*****************************************
#include <16F876.h>
#FUSES XT,NOWDT
#use delay(clock=4000000)
#use rs232(baud=2400, xmit=pin_c6, rcv=pin_c7) // Definimos la velocidad de transmisión de
// 2400 baudios/segundo
// Elegimos RC6 como patilla transmisora de datos.
// Elegimos RC7 como patilla receptora de datos.
#BYTE TRISC = 0x87 // TRISC en 87h.

21
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

#BYTE portC = 0x07 // PORTC en 07h.


#BYTE TRISB = 0x86 // TRISB en 86h.
#BYTE portB = 0x06 // PORTB en 06h.
#BIT rc3 = 0x07.3 // RC3 en 0x07 patilla 3.
#define Clave_Pulsadores 235
#define Numero_Repeticiones 10
// ***************************** Función principal o programa principal ******************************
void main()
{
int8 dato = 0; // Definimos la variable "dato" como tipo bit.
int8 i = 0; // Definimos la variable "i" como tipo byte.
TRISB = 0B11111111; // Defines Puerto B como ENTRADA de datos.
TRISC = 0B00000000; // Defines Puerto C como SALIDA de datos.
rc3 = 1; // Deshabilitamos la tarjeta de Transmisión de Datos
while(1) // Bucle infinito.
{
dato = portB & 0B00011111; // Filtramos los 5 bit más significativos.
dato = dato | 0B11100000; // Añadimos tres unos a los tres bit más significativos.
dato = ~dato; // Invertimos la variable dato.

if (dato != 0B00000000) // Si un pulsador es igual a cero realiza lo que viene a continuación.


{
rc3 = 0; // Habilitamos la tarjeta de Transmisión
//de Datos.
for( i=0; i <= Numero_Repeticiones; i++ ) // Enviamos el dato vía serie, tantas veces como
// diga la variable Número_Repeticiones
{
putc(Clave_Pulsadores); // Enviamos la Clave_Pulsador vía serie.
putc(dato); // Enviamos la variable dato vía serie.
}

rc3 = 1; // Deshabilitamos la tarjeta de Transmisión de Datos


delay_ms(200);
}
}
}

22
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

3.3.2.2.- Recepción_Serie_2.c
//******************************** Recepción Serie de Datos ***************************************
// ****************************** Directivas de Preprocesado*****************************************
#include <16F876.h>
#FUSES XT,NOWDT
#use delay(clock=4000000) // La velocidad de reloj es de 1 MHz (Lo va a marcar el
// cristal de cuarzo)
#use rs232(baud=9600,xmit=pin_c6, rcv=pin_c7) // Definimos la velocidad de transmisión de 9600
// baudios/segundo
// Elegimos RC6 como patilla transmisora de datos.
// Elegimos RC7 como patilla receptora de datos.
#include <LCD1.c> // Incluimos el driver LCD1.c que contiene las funciones
// de control del LCD.
#BYTE TRISC = 0x87 // TRISB en 87h.
#BYTE portC = 0x07 // PORTB en 07h.
#BIT TB3 = 0x86.3 // TRISB el BIT 3 0x86 patilla 3.
#BYTE TRISA = 0x85 // TRISA en 85h.
#BYTE portA = 0x05 // PORTA en 05h.
#BIT motor_derecho = 0x07.0 // RC0 en 0x07 patilla 0.
#BIT motor_izquierdo = 0x07.5 // RC5 en 0x07 patilla 5.
#define Clave_1 235 // Clave_1 de acceso vía serie.

int16 vel_R_I_AD = 1000; // Definimos la variable "vel_R_I_AD" como entero de


// 16 bit. Velocidad de la Rueda Izquierda. Ir Adelante.
int16 vel_R_D_AD = 1000; // Definimos la variable "vel_R_I_AD" como entero de
// 16 bit. Velocidad de la Rueda Derecha. Ir Adelante.
int16 vel_R_I_AT = 600; // Definimos la variable "vel_R_I_AD" como entero de
// 16 bit. Velocidad de la Rueda Izquierda. Ir Atrás.
int16 vel_R_D_AT = 600; // Definimos la variable "vel_R_I_AD" como entero de
// 16 bit. Velocidad de la Rueda Izquierda. Ir Atrás.

int16 vel_R_I_GI = 300; // Definimos la variable "vel_R_I_AD" como entero de


// 16 bit. Velocidad de la Rueda Izquierda. Ir Izquierda.
int16 vel_R_D_GI = 800; // Definimos la variable "vel_R_I_AD" como entero de
// 16 bit. Velocidad de la Rueda Izquierda. Ir Izquierda.
int16 vel_R_I_GD = 800; // Definimos la variable "vel_R_I_AD" como entero de

23
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

// 16 bit. Velocidad de la Rueda Izquierda. Ir Derecha.


int16 vel_R_D_GD = 300; // Definimos la variable "vel_R_I_AD" como entero de
// 16 bit. Velocidad de la Rueda Izquierda. Ir Derecha.
int16 valor1=0; // Definimos la variable "valor1" como entero de 16 bit.

/* ******************************** Declaración de funciones ************************************** */


void leer_dato_serie (void); // Leer Dato.
void Izquierda (void); // Ir a Izquierdas.
void Adelante (void); // Ir a Adelante.
void Derecha (void); // Ir a Derechas.
void Atras (void); // Ir a Atrás.
void Parada (void); // Ir a Parada.

// ************************** Función principal o programa principal ************************************


void main()
{
lcd_init(); // Inicializamos el LCD.
printf(lcd_putc,"IES Joan Miro"); // Escribimos en el LCD "IES Joan Miro".
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc,"Coche Parado"); // Escribimos en el LCD "Coche Parado".
setup_timer_2(T2_DIV_BY_16,249,1); // setup_timer(Prescaler,PR2,Postscaler)
// Configuración timer2. Si el Periodo = 16mS ----> T = 16000uS
// T = [PR2+1] x Tcm x Postscaler x Prescaler
// PR2 puede valer de 0 a 255.
// Tcm es el tiempo de Ciclo Maquina.
// Tcm = 4/Fosc = 4/1.000.000 hz = 4uS.
// Prescaler puede valer 1,4,16
// Postscaler puede valer 1.
// 16000uS = [PR2+1] x 4 x 16 x 1
// PR2 =[T/(Tcm x Preescaler x Postscaler)]-1
// PR2 =[16000uS/(4uS x 16 x 1)]-1 = 249 (en C 249)
setup_ccp2(CCP_PWM); // CCP2 en modo PWM (Salida por RC1) Rueda Izquierda
setup_ccp1(CCP_PWM); // CCP1 en modo PWM (Salida por RC2) Rueda Derecha

set_pwm2_duty(0); // Señal de PWM. Salida por RC1.


set_pwm1_duty(0); // Señal de PWM. Salida por RC2.

24
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

TRISC = 0B10000000; // Defines Puerto C como SALIDA de datos a excepción de rc7.


portC = 0B00000000; // Reseteamos el Puerto C

enable_interrupts(INT_RDA); // Habilitamos la Interrupción serie de datos.


enable_interrupts(GLOBAL); // Habilitamos la Interrupcion General.

while(1) // Bucle sin fin.


{
if (valor1==0B00000010) // Se ha pulsado Izquierda en el Mando.
{
Izquierda(); // Ejecutamos la función Izquierda.
}
if (valor1==0B00000001) // Se ha pulsado Adelante en el Mando.
{
Adelante(); // Ejecutamos la función Adelante.
}
if (valor1==0B00010000) // Se ha pulsado Derecha en el Mando.
{
Derecha(); // Ejecutamos la función Derecha.
}
if (valor1==0B00001000) // Se ha pulsado Atras en el Mando.
{
Atras(); // Ejecutamos la función Atras.
}
if (valor1==0B00000100) // Se ha pulsado Parada en el Mando.
{
Parada(); // Ejecutamos la función Parada.
}
}
}
/* *********************************Función Izquierda ******************************************** */
void Izquierda (Void)
{
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc," Izquierda "); // Escribimos en el LCD " Izquierda ".

25
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

set_pwm2_duty(vel_R_I_GI); // Señal de PWM. Salida por RC1. Velocidad Rueda Izquierda.


// Ir Izquierda
set_pwm1_duty(vel_R_D_GI); // Señal de PWM. Salida por RC2. Velocidad Rueda Derecha.
// Ir Izquierda
motor_derecho = 0; // Motor Derecho hacia adelante.
motor_izquierdo = 1; // Motor Izquierdo hacia atrás.
delay_ms(5); // Respetar el Periodo de la señal de la PWM (20mS)
}
/**************************************Función Adelante ***************************************** */
void Adelante (void)
{
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc," Adelante "); // Escribimos en el LCD " Adelante ".

set_pwm2_duty(vel_R_I_AD); // Señal de PWM. Salida por RC1. Velocidad Rueda Izquierda.


// Ir Adelante
set_pwm1_duty(vel_R_D_AD); // Señal de PWM. Salida por RC2. Velocidad Rueda Derecha.
// Ir Adelante
motor_derecho = 0; // Motor Derecho hacia adelante.
motor_izquierdo = 0; // Motor Izquierdo hacia adelante.

delay_ms(5); // Respetar el Periodo de la señal de la PWM (20mS)


}
/*************************************Función Derecha ****************************************** */
void Derecha (void)
{
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc," Derecha "); // Escribimos en el LCD " Derecha ".

set_pwm2_duty(vel_R_I_GD); // Señal de PWM. Salida por RC1. Velocidad Rueda Izquierda.


// Ir Derecha
set_pwm1_duty(vel_R_D_GD); // Señal de PWM. Salida por RC2. Velocidad Rueda Derecha.
// Ir Derecha
motor_derecho = 1; // Motor Derecho hacia atrás.
motor_izquierdo = 0; // Motor Izquierdo hacia adelante.

26
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

delay_ms(5); // Respetar el Periodo de la señal de la PWM (20mS)


}
/* ************************************Función Atrás ******************************************** */
void Atras (void)
{
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc," Atras "); // Escribimos en el LCD " Atras ".

set_pwm2_duty(vel_R_I_AT); // Señal de PWM. Salida por RC1. Velocidad Rueda Izquierda.


// Ir Atras
set_pwm1_duty(vel_R_D_AT); // Señal de PWM. Salida por RC2. Velocidad Rueda Izquierda.
// Ir Atras
motor_derecho = 1; // Motor Derecho hacia atrás.
motor_izquierdo = 1; // Motor Izquierdo hacia atrás.

delay_ms(5); // Respetar el Periodo de la señal de la PWM (20mS)


}
/* *************************************Función Parada ****************************************** */
void Parada (void)
{
lcd_gotoxy(1,2); // Posicionamos el Cursor del LCD en la posición 1 línea 2.
printf(lcd_putc,"Coche Parado"); // Escribimos en el LCD "Coche Parado".

set_pwm2_duty(0); // Señal de PWM. Salida por RC1. Velocidad Rueda Izquierda.


// Parar
set_pwm1_duty(0); // Señal de PWM. Salida por RC2. Velocidad Rueda Derecha.
// Parar

delay_ms(5); // Respetar el Periodo de la señal de la PWM (20mS)


}
/* ************************* Atención a la Interrupción por Recepción Serie de datos ********************* */
#int_RDA
/* Validamos el dato serie si cumple las siguiente condiciones.
Si dos palabras consecutivas de 2 byte son iguales se valida el dato.
clave,dato,clave,dato,......,clave,dato

27
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

Se lee el 1º dato serie recibido con la función "getc()"


y se compara con la "clave" del transmisor que tiene que ser la misma que la del receptor,
si son iguales se lee el 2º dato serie recibido con la función "getc()" y se guarda.
Se lee el 3º dato serie recibido con la función "getc()"
y se compara con la "clave" del transmisor que tiene que ser la misma que la del receptor,
si son iguales se lee el 4º dato serie recibido con la función "getc()" y se compara con
el 2º dato leido, si son iguales se valida el dato con la variable global "Valor". */

void leer_dato_serie (void)


{
int8 dato_Recibido;
int8 numero_datos1;
int8 dato1;
dato_Recibido=getc(); // Recibimos el dato serie.

switch (numero_datos1)
{
case 0:
if(dato_Recibido==Clave_1)
{
numero_datos1=1;
}
break;

case 1:
dato1=dato_Recibido;
numero_datos1=2;
break;

case 2:
if(dato_Recibido==Clave_1)
{
numero_datos1=3;
}
else
{

28
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

numero_datos1=0;
}
break;

case 3:
if(dato_Recibido==dato1) valor1=dato_Recibido;
numero_datos1=0;
}
}
4.- Diagrama en Bloques.

MANDO
CCT006

RC61 RC6
VDD VDD2 SENSORES DE INFRARROJOS
RC71(BL) RC7(BL)
ADAPTADOR DE SEÑALES PC-UC GND GND2 y acondicionador de señal
VDD4 VDD
RA[0..1] RA[0..1]
GND4 GND
CCT004
CCT001
SISTEMA DE CONTROL

VDD VDD1
VDD3 VDD
V1 V11 CONTROL DE POTENCIA
REGULADOR 9V/5V V12 V1
GND GND1
GND3 GND
RC[0..5] RC[0..5]
CCT003
CCT002 CCT005

29
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

4.1- Esquema Eléctrico Robot Rastreador.

C6 U1
Adaptador de señales PC-uC ON-OFF D1 7805_JOAN
J6 1 2 1 3
5 3 1uF 1 U5 A
INTERRUPTOR_JOAN K
VI VO VDD3

1
GND4

GND
9 1N4007_JOAN
4
C1- C1+ BATERIA R1
8 9V C1 220
C2 C12 C11

2
3 TXPC 14 11
T1OUT T1IN RC61 220uF
7 13 12 2200uF 100nF 100nF
R1IN R1OUT RC71(BL)
2 RXPC 7 10 VDD3 V12 GND3

A
T2OUT T2IN
6 8 9
1 C9 R2IN R2OUT
D2
2 VDD4 GND3 LED-GREEN_JOAN
VDD4 VS+
CONN-D9M 6 V12 GND3 GND3 GND3 GND3 GND3

3
2
1
VS-

K
1uF
RC61
RC71(BL) C2- C2+
VCC
VDD4
GND4 C8 C10 J4A Regulador 9v/5v
5 4 MAX232 GND3
1uF C7 100nF
4
3
2
1

BORNIER 3_JOAN
GND=GND
VCC=VCC
GND
J1A 1uF
GND4 CEBEK-C-0504_JOAN
BORNIER 4_JOAN
GND4 J4
BORNIER 3_JOAN Receptor de Datos CEBEK C-0504 RF1
ANTENA
J1 J7 J8 J9 J10

Antena
VDD VDD BORNIER1_JOAN

GND1

GND2

GND3

TEST
Vcc1
BORNIER 4_JOAN

3
2
1
4 4 4 4

Vcc
Vs
VDD VDD VDD VDD

VDD

VDD
3 3 3 3
SCL SCL SCL
2 2 2 2 VDD GND

1
SDA SDA SDA

11

13

14

15
1 1 1 1
R13
4
3
2
1

CONN-SIL4 CONN-SIL4 CONN-SIL4 CONN-SIL4 10k


R5 R6 VDD V1 VCC

LCD1 4.7k 4.7k


RC7(RF)
LCD-16 X 2_JOAN
RB3
1
RC6 RC7(BL) VDD
SCL
SDA INCIO C3
Sistema de Control
15pF
2
RC1

RC2

RC0

RC5

U2
VDD
VSS

VEE

X1 VDD
RW
RS

D0
D1
D2
D3
D4
D5
D6
D7
E

RB0 21 9 CRYSTAL_JOAN
RB0/INT OSC1/CLKIN
RB1 22 10 4MHz
1

RB1 OSC2/CLKOUT C4
1
2
3

4
5
6

7
8
9
10
11
12
13
14

RB2 23 1
RB2 MCLR/Vpp/THV
U6:A U6:B RB3 24
RB3/PGM
RB4 25 2 VSS
RB1
RB2
RB0

RB4
RB5
RB6
RB7

74HC14 74HC14 VDD RB4 RA0/AN0 AN0


RB5 26
RB5 RA1/AN1
3
AN1
15pF R4
2

RB6 27 4 RA2
RB6/PGC RA2/AN2/VREF- 10k
RB7 28 5 VDD
RB7/PGD RA3/AN3/VREF+ AN3
6
RC0 11
RA4/T0CKI
7
RA4
RA5 J11
RC0/T1OSO/T1CKI RA5/AN4/SS
RC1 12 6
RC[0..5] RC1/T1OSI/CCP2 RA4
RC2 13 5
VDD V1 RC2/CCP1 AN3
SCL
14
RC3/SCK/SCL R2 AN1
4
GND 15 3
10k
1
2
3
4
5
6

1
2
3

SDA RC4/SDI/SDA AN0


RC5 16 2
RC5/SDO VDD
17 1
18
RC6/TX/CK RESET
RC6 RC7/RX/DT R3
J2 J3 2 1 CONN-SIL6
PIC16F876_JOAN 100 PULSADOR_JOAN
BORNIER 6_JOAN BORNIER 3_JOAN

JUMPER C5
VDD
1

RA5
RA2
RC7(RF)
V11 2
J2A J3A 3 100nF
BORNIER 6_JOAN BORNIER 3_JOAN RC7(BL)

1
2
3
4
CONN_SIL3_JOAN
K

K
1
2
3
4
5
6

1
2
3

MOTOR IZQUIERDO J5
D8 D9 BORNIER 4_JOAN
VDD1 V11 1N4007_JOAN 1N4007_JOAN
A

1 2
VSENSA1 VSENSB1
Sensores de Infrarrojos
K

VDD1 V11 GND1 J5A


V11 D10 +88.8 D11 BORNIER 4_JOAN
9 4 U3 1N4007_JOANMI
C13 1N4007_JOAN y acondicionador de señal
A

VDD1 5
IN1 VCC VS
1
2
3
4

7 2
IN2 OUT1
U10 R14 10
IN3
GND1 100nF GND1 VDD2 GND VDD2
R16 10k 12 3
IN4 OUT2
1 6 6 VCC
ENA
220 11 13
VDD1 ENB OUT3
5 S1 GND2
2 1 14 V11
SENSA OUT4
Q1 15
SENSB GND R9 R10 S2 VDD2 R11 R12
4 BD139_JOAN 220 10k 220 10k
VSENSA1
OPTOCOUPLER-NPN 8 L298 U4:C U4:D
Q2
K

GND1 BD139_JOAN 5 6 13 12
D12 MOTOR DERECHO
S1 S2
V11 D14
1N4007_JOAN 1N4007_JOAN 74HC14 74HC14
A

GND1 3 1 3 1
GND=GND
1 2
GND1 VCC=VCC
VDD1
A C A C
U11 R15 CNY70 SEI CNY70 SED
R17 10k +88.8
1 6 MD
Q3 C14
220
5 BD139_JOAN
Control de Potencia SEN-IZ SEN-DER
K

2
Q4 D13 100nF D15
4 BD139_JOAN 1N4007_JOAN 1N4007_JOAN K E K E
A

VSENSB1
OPTOCOUPLER-NPN
4 2 4 2
GND1 GND1 GND1
GND1 GND2 GND2

30
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

4.1.1.- Adaptador de señales PC-uC.

C6
Adaptador de señales PC-uC
J6
5 3 1uF 1 U5
GND4
9
4
C1- C1+
8
3 TXPC 14 11
T1OUT T1IN RC61
7 13 12
R1IN R1OUT RC71(BL)
2 RXPC 7 10
T2OUT T2IN
6 8 9
1 C9 R2IN R2OUT
2 VDD4
VDD4 VS+
CONN-D9M 6
VS-
1uF
RC61
RC71(BL) C2- C2+
VCC
VDD4
GND4 C8 C10
1uF 5 4 MAX232 100nF
C7
4
3
2
1

GND=GND
VCC=VCC
GND
J1A 1uF
GND4
BORNIER 4_JOAN
GND4

Es un Circuito que comunica el Ordenador Personal (PC) con el microcontrolador


PIC16F876A .
Consiste en un circuito que intercambia niveles TTL a RS 232 donde
un 0 en TTL equivale a 0V en RS232 equivale a una tensión comprendida entre 3 y 15V.
un 1 en TTL equivale a 5V en RS232 equivales a una tensión comprendida entre -3 y -15V.
El Circuito Integrado MAX 232 se encarga de convertir los niveles de TTL a RS232.

4.1.2.- Regulador 9v/5v.

U1
ON-OFF D1 7805_JOAN
1 2 1 3
VI VO VDD3
A
INTERRUPTOR_JOAN K
1

GND

1N4007_JOAN
BATERIA R1
9V C1 220
C2 C12 C11
2

220uF
2200uF 100nF 100nF
VDD3 V12 GND3
A

D2
GND3 LED-GREEN_JOAN
V12 GND3 GND3 GND3 GND3 GND3
3
2
1

J4A Regulador 9v/5v GND3


BORNIER 3_JOAN

La Fuente de Alimentación es un circuito que se encargar de obtener una tensión de 5V

31
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

continua a partir de una superior de 9V, para ello se ha utilizado el regulador 7805, que nos puede
dar una corriente de salida Imax de 1 A.
C1, C2,C11 y C12 son condensadores de filtro.
El diodo D1 tiene la misión de proteger el circuito en caso de poner la batería BAT1 al revés.
El diodo Led D2 nos indica que la fuente esta encendida, estando limitada su corriente a 20 mA por la resistencia R1.
También obtenemos una tensión de V12 = 8,4 V para alimentar los motores.

4.1.3.- Sistema de Control.

CEBEK-C-0504_JOAN VDD
J1 J4
BORNIER 4_JOAN BORNIER 3_JOAN ANTENA Receptor de Datos CEBEK C-0504 RF1
BORNIER1_JOAN
Antena

R4
GND1

GND2

GND3

TEST
Vcc1
4
3
2
1

3
2
1

Vcc
10k
1

Vs
VDD

VDD
VDD GND
J11
1

11

13

14

15
6
RA4
5
AN3
RC6 RC7(BL) VDD VDD V1 4
AN1
3
AN0
RC7(RF) 2
LCD1 VDD
1
LCD-16 X 2_JOAN
CONN-SIL6

R13
VDD
10k C3
RB3 Sistema de Control
VDD
VSS

VEE

RW
RS

D0
D1
D2
D3
D4
D5
D6
D7
E

15pF

INICIO U2 X1
1
2
3

4
5
6

7
8
9
10
11
12
13
14

CRYSTAL_JOAN
RB0 21 9 4MHz
RB1 22
RB0/INT OSC1/CLKIN
10 C4
VDD RB1 OSC2/CLKOUT
RB2 23 1
2

RB2 MCLR/Vpp/THV
RB3 24
RB1
RB2
RB0

RB4
RB5
RB6
RB7

RB3/PGM
RB4 25 2 15pF VSS
RB4 RA0/AN0 AN0
RB5 26 3
RB5 RA1/AN1 AN1
RB6 27 4 RA2
RB[0..7] RB6/PGC RA2/AN2/VREF-
RB7 28 5
RB7/PGD RA3/AN3/VREF+ AN3 R2
6
RA4/T0CKI RA4 VDD
RC0 11 7 RA5
RC0/T1OSO/T1CKI RA5/AN4/SS 10k
RC1 12
RC1/T1OSI/CCP2
RC2 13
RESET
RC0

RC5

RC2/CCP1
SCL
14
RC3/SCK/SCL R3
15 2 1
SDA RC4/SDI/SDA
RC5 16
RC1
RC2

RC5/SDO 100 PULSADOR_JOAN


17
RC6
18
RC6/TX/CK C5
1

RC7/RX/DT

U6:A U6:B PIC16F876_JOAN


74HC14 74HC14 100nF
JUMPER
2

1 VDD
RC7(RF)
2
3
RC7(BL)
CONN_SIL3_JOAN

VDD R5 R6
VDD V1 4.7k 4.7k
GND J7 J8 J9 J10 VDD
1 RA5
2 RA2

4 4 4 4
VDD VDD VDD
3 3 3 3
3
4

SCL SCL SCL SCL


2 2 2 2
1
2
3
4
5
6

1
2
3

SDA SDA SDA SDA


1 1 1 1

CONN-SIL4 CONN-SIL4 CONN-SIL4 CONN-SIL4 J5


J2 J3 BORNIER 4_JOAN
BORNIER 6_JOAN BORNIER 3_JOAN

Un microcontrolador PIC16F876a se encarga de realizar el control del robot (control de


velocidad (PWM) y sentido de giro de los motores, lectura de los sensores e indicación de su
posición en los Led) y recibir los datos procedentes del receptor de radiofrecuencia. El
microcontrolador PIC 16F876a trabaja a una frecuencia de 4 MHz y ejecuta una instrucción en 1uS.

Tiene un conector (JUMPER) que nos sirve para cargar el programa procedente del
Ordenador Personal en el microcontrolador o recibir los datos del receptor de RF.

32
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

Un pulsador de Inicio nos servirá para activar el robot en la modalidad de Rastreador.


Cuando el robot esté situado correctamente (Estamos situado en el borde derecho de la línea Negra
mostramos el mensaje de Posicionado en el LCD) pulsaremos INICIO y el Robot empieza a
funcionar.
Los condensadores C3 y C4 junto con el Cristal de Cuarzo X1 marcan la frecuencia de
trabajo al microcontrolador PIC16F876A.
Las resistencia R2, R3, el condensador C5 y el pulsador de RESET, sirven para resetear el
rastreador y se empieze el proceso de nuevo.
La Tarjeta Receptora de Datos CEBEK C-0504 es un circuito híbrido encargado de recibir
vía radiofrecuencia, los datos digitales procedentes del Mando. La señal digital tiene que tener una
frecuencia entre 20 Hz < fo < 4 KHz. y una portadora de 433,92 MHz. Este circuito demodula la
señal de AM obteniendo los datos transmitidos. Sirve para realizar un coche teledirigido.

4.1.4.- Control de Potencia.

V11
J2A J3A
BORNIER 6_JOAN BORNIER 3_JOAN

K
1
2
3
4
5
6

1
2
3

D8 MOTOR IZQUIERDO D9
VDD1 V11 1N4007_JOAN 1N4007_JOAN
A

A
1 2
VSENSA1 VSENSB1
K

K
VDD1 V11 GND1
V11
U3 D10 +88.8 D11
9 4 1N4007_JOANMI 1N4007_JOAN
C13
A

A
VDD1 5
IN1 VCC VS
7 2
IN2 OUT1
U10 R14 10
IN3
GND1 100nF GND1
R16 10k 12 3
IN4 OUT2
1 6 6
ENA
11 13
220 VDD1 ENB OUT3
5
2 1 14 V11
SENSA OUT4
Q1 15
SENSB GND
4 BD139_JOAN
VSENSA1
OPTOCOUPLER-NPN 8 L298
Q2
K

GND1 BD139_JOAN
V11 D12 MOTOR DERECHO D14
1N4007_JOAN 1N4007_JOAN
A

GND1
1 2
GND1
VDD1

U11 R15
R17 10k +88.8
1 6 MD
Q3 C14
220
5 BD139_JOAN
Control de Potencia
K

2
Q4 D13 100nF D15
4 BD139_JOAN 1N4007_JOAN 1N4007_JOAN
A

VSENSB1
OPTOCOUPLER-NPN

GND1 GND1 GND1


GND1

La misión de este circuito es la de alimentar los motores de forma controlada (velocidad y


sentido de giro)
A través de IN1 e IN2 del C.I. L298N (Inversor de giro) controlamos el sentido de giro del Motor
Izquierdo y con IN3 e IN4 controlamos el sentido de giro del Motor Derecho. (Ver Tabla 1)

33
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

El Circuito Integrado optoacoplador U10 y los transistores Q1 y Q2 hacen de interruptores


controlados a través de la patilla VSENSA1 (RC1) y dejan pasar o no la corriente por el Motor
Izquierdo.
El Circuito Integrado optoacoplador U11 y los transistores Q3 y Q4 hacen de interruptores
controlados a través de la patilla VSENSB1 (RC2) y dejan pasar o no la corriente por el Motor
Derecho.

Entradas al Inversor L298N Salidas del Inversor Efecto producido


L298N
VSENSB1 Motor Derecho
RC2 SENSB IN3 IN4 OUT3 OUT4
1 0V 0 0 11,5V 11,5V Parado
1 0V 0 1 1V 11,5V Adelante
1 0V 1 0 11,5V 1V Atrás
1 0V 1 1 1V 1V Parado
0 11,5V X X 11,5V 11,5V Parado

Tabla 1

El optoacoplador tiene la misión de aislar eléctricamente el circuito de Control con el de


Potencia. Se obtiene una tensión VCE proporcional a la luz que incide en la base del TRT (En caso
de rotura del motor, la barrera de luz protege el sistema de control ya que esta aguanta más de
2000V.
Introduciendo una señal PWM por RC1 podemos realizar un control de velocidad del Motor
Izquierdo.
Introduciendo una señal PWM por RC2 podemos realizar un control de velocidad del Motor
Derecho.

34
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

4.1.5.- Sensores de Infrarrojos y acondicionador de señal.


El Sensor de Infrarrojos CNY70 funciona de la siguiente manera:
El diodo emite una luz infrarroja sobre una superficie, si es blanca la luz rebota y si es negra la luz
se absorbe
Un Optotransistor recibe la luz infrarroja (Distancia del Sensor al papel < 1cm) este se satura y se
obtiene un 0 lógico.
Si el Optotransistor no recibe la luz infrarroja este se corta y se obtiene un 1 lógico.
El acondicionador de señal 74HC14 es una puerta inversora con histeresis ( schmith triger)
que tiene la función
de acondicionar la señal procedente del sensor de infrarrojos, es decir los grises no son ni unos ni
ceros y define los
grises claros como ceros y los grises oscuros como unos.
J5A Sensores de Infrarrojos
BORNIER 4_JOAN

y acondicionador de señal
1
2
3
4

VDD2 GND VDD2

VCC

S1 GND2

R9 R10 S2 VDD2 R11 R12


220 10k 220 10k

U4:C U4:D
5 6 13 12
S1 S2

74HC14 74HC14
3 1 3 1
GND=GND
VCC=VCC
A C A C
CNY70 SEI CNY70 SED

SEN-IZ SEN-DER

K E K E

4 2 4 2
GND2 GND2

4.2.- Mando.
El mando tiene la misión de transmitir un código asociado a cada pulsador, para poder
controlar el robot.
El microcontrolador PIC 16F876a lee los pulsadores y transmite los códigos vía serie a la tarjeta
transmisora de radiofrecuencia a una velocidad de 1562,5 baudios por segundo. Es una transmisión
asíncrona (1bit de comienzo, 8bit de Datos, 1 bit de parada sin bit de paridad ).
La Alimentación procede de un regulador 7805 que suministra 5V a todos los circuitos.
El TRT “Q1E” tiene la misión de deshabilitar la tarjeta de radiofrecuencia cuando esta no transmite
datos.
La Tarjeta Emisora SAW para Datos 433,92 MHz. CEBEK C-0503 es un circuito híbrido
encargado de transmitir vía radiofrecuencia, los datos digitales procedentes del microprocesador
(TX). La señal digital tiene que tener una 20 Hz < fo < 4 KHz. Se modula en AM cuya frecuencia
portadora es de 433,92 MHz.
El microcontrolador PIC 16F876a trabaja a una frecuencia de 4 MHz y ejecuta una instrucción en

35
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

1uS.
El Led D7E nos indica que el mando está encendido, está limitada su corriente en 20 mA.
El resto de los LED se iluminan cuando activamos el Pulsador correspondiente.
El diodo D7E tiene la misión de proteger el circuito en cado de invertir la Batería.
Los condensadores C1 y C2 son filtros.
E_RF1E
Mando CEBEK-C-0503_JOAN

Emisor de Datos CEBEK C-0503


U2E VDD
D6E SW6E Q1E

Antena
7805_JOAN

GND3

GND2

GND1
1 2 1 3 BD136_JOAN

Vcc

Ve
VI VO
A K

-
INTERRUPTOR_JOAN
GND

1N4007_JOAN
R6E

15

13

11

1
1

220
BAT1E C1E C2E
2

9V 220uF 220uF
CON?
2

R7E 1
VSS

2.2k
D7E BORNIER1_JOAN
LED-RED_JOAN
K

C3E

15pF

U1E
RB0E 21 9
RB0/INT OSC1/CLKIN
RB1E 22
RB1 OSC2/CLKOUT
10 X1E
R1E R2E R3E R4E R5E RB2E 23
RB2 MCLR/Vpp/THV
1 CRYSTAL_JOAN
RB3E 24
220 220 220 220 220 RB3/PGM 4MHz
RB4E 25 2
RB4 RA0/AN0
26 3
RB5 RA1/AN1
27 4
A

28
RB6/PGC RA2/AN2/VREF-
5 C4E
RB7/PGD RA3/AN3/VREF+
D1E D2E D3E D4E D5E RA4/T0CKI
6
LED-YELLOW_JOAN LED-GREEN_JOAN LED-RED_JOAN LED-RED_JOAN LED-RED_JOAN 11 7
RC0/T1OSO/T1CKI RA5/AN4/SS
12 15pF
RC1/T1OSI/CCP2
K

13
RC2/CCP1
14
RC3/SCK/SCL
15
RC4/SDI/SDA
16
RC5/SDO
RB1E RB3E RB0E RB2E RB4E 17
RC6/TX/CK VDD
18
RC7/RX/DT
1

PIC16F876_JOAN

SW1E SW2E SW3E SW4E SW5E


2

IZQUIERDA ATRAS ADELANTE PARAR DERECHA

5.- Diseño de Placas de Circuitos Impresos.


5.1.1.- Cara de Componentes y de pistas Top Copper del Adaptador de señal PC-uC.

36
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.1.2.- Cara de pistas Bottom Copper del Adaptador de señal PC-uC.

5.2.1.- Cara de Componentes y de pistas Top Copper del Regulador 9v/5v.

5.2.2.- Cara de pistas Bottom Copper del Regulador 9v/5v.

37
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.3.1.- Cara de Componentes y de pistas Top Copper del Sistema de Control.

5.3.2.- Cara de pistas Bottom Copper del Sistema de Control.

38
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.3.3.- Cara de pistas Top Copper del Sistema de Control.

5.4.1.- Cara de Componentes y de pistas Top Copper del Control de Potencia.

39
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.4.2.- Cara de pistas Bottom Copper del Control de Potencia.

5.4.3.- Cara de pistas Top Copper del Control de Potencia.

40
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.5.1.- Cara de Componentes y de pistas Top Copper de los Sensores de Infrarrojos y


acondicionador de señal.

5.5.2.- Cara de pistas Bottom Copper del Adaptador de los Sensores de Infrarrojos y
acondicionador de señal.

41
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

5.5.3.- Cara de pistas Top Copper de los Sensores de Infrarrojos y acondicionador de señal.

5.6.1.- Cara de Componentes y de pistas Top Copper del


Mando.
5.6.2.- Cara de pistas Bottom Copper del Adaptador del
Mando.
5.6.3.- Cara de pistas Top Copper del Mando.

42
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

6.- Diseño mecánico, (Carrocería).

43
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

7.- Lista de Componentes y coste económico.

44
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

Lista de materiales de el Robot Rastreador+ Coche Teledirigido.DSN

Título: Rastreador_4ºESO.DSN
Autor: Pedro Alonso Sanz
Creado: Miércoles, 24 de septiembre de 2008
Última modificación: Viernes, 2 de enero de 2009
Número de componentes: 169

22 Resistencias

Cantidad: Referencia: Valor: Precio Unitario (€) Precio Total (€)


11 R1,R9, R11, R16, R17, R1E-R6E 220 0,05 0,55
7 R2, R4, R12-R15,R10 10k 0,05 0,35
3 R7E , (R5, R6) 2.2K , (4,7K) 0,05 0,15
1 R3 100 0,05 0,05

18 Condensador

Cantidad: Referencia: Valor: Precio Unitario (€) Precio Total (€)


3 C1, C1E, C2E 220uF 0,2 0,6
1 C2 2200uF 0,5 0,5
4 C3, C4, C3E, C4E 15pF 0,05 0,2
6 C5, C10-C14 100nF 0,05 0,3
4 C6-C9 1uF 0,1 0,4

10 Circuitos Integrados

Cantidad: Referencia: Valor: Precio Unitario (€) Precio Total (€)


2 U1, U2E 7805 1 2
2 U2, U1E PIC16F876A 4,5 9
1 U3 L298 3,5 3,5
2 U4,U6 74HC14 0,5 1
1 U5 MAX232 1,5 1,5
2 U10, U11 OPT OCOUPLER-NPN 0,35 0,7

5 Transistores

Cantidad: Referencia: Valor: Precio Unitario (€) Precio Total (€)


1 Q1E BD136 0,35 0,35
4 Q1-Q4 BD139 0,35 1,4

17 Diodos

Cantidad: Referencia: Valor: Precio Unitario (€) Precio Total (€)


10 D1, D8-D15, D6E 1N4007 0,2 2
3 D2, D2E, D3E LED-GREEN 0,15 0,45
2 D1E, D5E LED-YELLOW 0,15 0,3
2 D4E, D7E LED-RED 0,15 0,3

45
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

97 C ompone nte s dive rsos

C antidad: Re fe re ncia: Valor: Pre cio Unitario (€) Pre cio Total (€)
1 ANT ENA BORNIER1 0,01 0,01
1 BAT ERIA BORNIER2 0,3 0,3
7 INCIO, RESET , SW1E-SW5E PULSADOR 0,4 2,8
4 J1, J1A, J5, J5A BORNIER 4 0,6 2,4
2 J2, J2A BORNIER 6 0,8 1,6
4 J3, J3A, J4, J4A BORNIER 3 0,45 1,8
1 J6 CONN-D9M 2,5 2,5
5 J7-J10, (J11), (Jumper) CONN-SIL4, (_SIL6), (_SIL3) 0,3 1,5
2 Conector MOT OR DER e IZQ BORNIER2 0,3 0,6
2 MOT ORES FUT ABA 3003 9 18
2 ON-OFF, SW6E INT ERRUPT OR 1 2
1 RF1 CEBEK-C-0504 7 7
2 SEN-DER y SEN-IZ CNY70 0,35 0,7
1 Pantalla de Cristal Líquido LCD 16x2 7 7
1 X1 CRYST AL 4MHz 0,45 0,45
2 RG Ruedas de goma espuma 2,5 5
1 RL Rueda Loca 1,6 1,6
24 SMH2 Separadores de 2 cm macho-hembra 0,3 7,2
22 T3 T uercas de métrica 3 0,02 0,44
1 S Soporte de plástico de 20cm X 15 cm 1,2 1,2
1 Bat Batería de 9v/2200 mA 12 12
1 Portapilas Portapilas 0,3 0,3
1 X1E CRYSTAL 1MHz 3 3
1 ERF1 CEBEK-C-0503 7 7
1 SE Soporte de plástico de 12cm X 6 cm 1 1
1 PL1 Placa de CI (2C) 20cm X 15 cm 10 10
1 PLE Placa de CI (2C) 12cm X 6 cm 6 6
4 Br Bridas de plástico 0,1 0,4

Precio total de todos los componentes (€) 129,4

viernes, 2 de enero de 2009  19:56:59

8.- Coste Económico Total.

Coste del Proyecto Rastreador


Tareas Horas Coste por hora (€) Total (€)

Desarrollo Hardware 10 20 200


Desarrollo Software 20 30 600
Búsqueda de materiales. 5 10 50
Montaje del prototipo 10 10 100
Pruebas del prototipo. 12 20 240
Coste de los Componentes 129,4
Documentación 10 15 150

Coste Total del Proyecto 1469,4

46
Departamento de Informática 4ºESO
I.E.S. Joan Miró (S.S. De los Reyes)

9.- Referencias.

[1] Libros: Título: Microcontroladores PIC16F84. Desarrollo de proyectos (2ª Edición)


Autores: Enrique Palacios, Fernando Remiro, Lucas J. López.
Editorial: Ra_Ma

Título: Compilador C CCS y simulador PORTEUS para Microcontroladores PIC.


Autor: Eduardo García Breijo.
Editorial: Marcombo.

Manual del Microcontrolador PIC16F876A.

[2] Empresa suministradora de materiales:

● Diotronic S.A. C/Juan Bravo 58. Pagina Web: www.ditronic.com


● Ingeniería de Sistemas Programados. Pagina Web: www.microcontroladores.com
● Motores COPAL Pagina: www.voti.nl/winkel/catalog.html
● www.electan.com

10.- Anexos.
10.1.- Características Eléctricas del Motor de Corriente Continua COPAL HG16-030-AA-00.
10.2.- Características Eléctricas de los Sensores de Infrarrojos.
10.3.- Características Eléctricas Tarjeta Emisora de Datos 433,92 Mhz. (CEBEK C-0503).
10.4.- Características Eléctricas Tarjeta Receptora de Datos 433,92 MHz. ( CEBEK C-504 ).
10.5.- Características Eléctricas del Inversor de Giro L298N.
10.6.- Características Eléctricas del microcontrolador PIC16F876A.
10.7.- Características del LCD.

47
Departamento de Informática 4ºESO