You are on page 1of 94

Instituto Universitario Aeronutico

Facultad de Ingeniera TRABAJO FINAL DE GRADO


- 1 -






















INSTITUTO UNIVERSITARIO AERONAUTICO




TRABAJO FINAL DE GRADO

SISTEMA DE TELECOMANDO PARA
AUTOMOTORES BASADO EN C.A.N. BUS




Fecha 22/05/2009

Autor Paulo Mauricio Snchez

Reviso Ingeniero Jorge Naguil
Tutor de Trabajo Final






Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 2 -



















Dedicado a mi padre, Rubn B. Snchez,
de quien durante su existencia
recib su apoyo y afecto incondicional y que no pudo
Compartir este momento tan especial de mi vida.



























Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 3 -
AGRADECIMIENTOS


Este trabajo final de grado fue posible gracias al apoyo constante e incondicional del
Ingeniero Jorge Naguil quien me proporcion una gua invaluable durante todo este
proceso.
Tambin debo agradecer a mi madre, Carlina, mi esposa, Nancy y mi hija Lara, por
proporcionarme todo lo que tuvieron a su alcance a lo largo de estos aos. Sin esa ayuda
hubiera sido imposible concretar esta carrera.

Deseo agradecer a mis hermanos quienes me han ayudado y apoyado en la concrecin
de esta carrera.

Un agradecimiento muy especial a mis compaeros y amigos de trabajo que
proporcionaron un apoyo constante tanto en lo profesional como en lo afectivo.



















Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 4 -

















SISTEMA DE TELECOMANDO PARA
AUTOMOTORES BASADO EN C.A.N. BUS





























Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 5 -
HOJA DE ACEPTACION DEL TRABAJO FINAL

















































Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 6 -
INDICE


Resumen.8


1. Introduccin9
1.1. Descripcin General10
1.2. Ubicacin fsica del sistema11


2. Estudio de tecnologa a implementar..12
2.1. Microcontrolador ........12
2.2. Los DSPIC...13
2.3. Eleccin de la tecnologa a utilizar..14


3. Los microcontroladores......14
3.1. Introduccin a los microcontroladores ......15
3.2. Los PICs..16
3.3. Estructura de un microcontrolador..17
3.4. El procesador o CPU.. 19
3.5. Memoria de programa R.O.M.19
3.6. Memoria de datos R.A.M21
3.7. Lneas de entradas/salidas, Puertos.22
3.8. Mdulos temporizadores internos (TMRs)..22
3.9. Lenguajes de programacin.24
3.10 Programador25
3.11 Teora de funcionamiento del mensaje CAN..28
3.12 Caractersticas del mdulo CAN.29
3.13 Formato del mensaje CAN..29
3.14 Trama estndar CAN...29


4. Diseo del Hardware.31
4.1 Nodo 1 CAN(Maestro).31
4.12. Asignacin funcional de cada pin del nodo 1 CAN...32
4.2. Nodo 2 CAN (Esclavo)35
4.21. Asignacin funcional de cada pin del nodo 2 CAN...35


5. Desarrollo del circuito...37
5.1. Circuito del nodo 1 CAN.37
5.12. Etapa de entrada..38
5.13. Etapa de salida39
5.14. Etapa microcontrolada40
5.2. Circuito del nodo 2 CAN.41
5.21. Indicador de nivel de combustible..43
5.22. Sensor de nivel de combustible..44
5.23. Sensor de estacionamiento.48
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 7 -
6. Diseo del Firmware.50
6.1. Diagrama de flujo del PIC 16F874 del nodo 1 CAN..50
6.2. Funcionamiento del Firmware del PIC 16F874 (nodo 1 CAN)......52
6.3. Diagrama de flujo del PIC 16F873A del nodo 1CAN.56
6.4. Funcionamiento del Firmware del PIC 16F873A (nodo 1 CAN)...58
6.5. Diagrama de flujo del nodo 2 CAN.58
6.6. Funcionamiento del Firmware del PIC 16F873A del nodo 2 CAN....60


7. Integracin Hardware Software..64
7.1. Prueba del sistema experimental ....70


8. Conclusiones..78


9. Referencias79


Anexos80
Anexos1: Diagramas de flujos de nodo1 CAN y nodo2 CAN...81
Anexo 2: Hojas de datos........93



























Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 8 -

GLOSARIO


ADC: Conversor Analgico a Digital, (Analog to Digital Converter).
C.A.N.: Controller Area Network.
CPU: Unidad Central de Proceso (Central Prossesing Unit).
CISC: Computadores de Conjunto de Instrucciones Complejo.
DSC: Controladores Digitales de Seal.
DSP: Procesadores Digital de Seal.
DAC: Conversor Digital a Analgico, (Digital to Analog Converter).
EEPROM: ROM Programable y Borrable Elctricamente (Electrically-Erasable
Programmable Read-Only Memory.
ICSP: Programacin serie incorporada (In Circuit Serial Programming).
LVP: Programacin a bajo voltaje, (Low Voltage Programming).
MCLR: Borrador Maestro (Master Clear).
MSJ: Mensaje
OTP: One Time Programmable.
PC: Computadora personal.
PIR1: Registro que contiene los bit de sealizacin de interrupcin de perifricos.
RCIF: Bit de sealizacin de interrupcin por recepcin del USART.
RISC: Computadores de Conjunto de Instrucciones Reducido.
ROM: Memoria de solo lectura (Read Only Memory).
RAM: Memoria de Acceso Aleatorio (Random Acces Memory).
SISC: Computadores de Conjunto de Instrucciones Especfico.
TMR: Temporizador / Contador de (8bits).
Tosc: Tiempo interno de trabajo del microcontrolador.
USART: (Universal Synchronous Asynchronous Receiver Transmitter).
UPP628: Programador de microcontroladores
ZIF: Insercin Fuerza cero







Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 9 -


RESUMEN


El objetivo de este trabajo final de grado es disear un sistema de telecomando, para la
actualizacin del sistema de iluminacin, confort y control de sistemas electrnicos
utilizado en los automviles, de bajo costo y que pueda ser instalado, controlado,
diagnosticado y reparado por pequeos talleres de electricidad del automotor. Este
proyecto se desarrollar utilizando el Protocolo Lgico del CAN BUS, en una
Mensajeria Reducida del mismo, esto significa que se utilizar la filosofa y el esquema
de trabajo del CAN BUS para el manejo de: luces interiores y exteriores, alarmas,
cierre central, asientos, accesorios, sensores de estacionamientos, levanta cristales, etc.
Esta implementacin se desarrollar con la utilizacin de los recursos que integran los
microcontroladores PIC, diseando un firmware en el que incluya la lgica de la trama
de datos del protocolo CAN.
El proyecto no ser un sistema cerrado ya que se podr actualizar tanto a nivel hardware
como software, logrando un mayor control de los sistemas electrnicos del vehculo.
El trabajo final de grado quedar concluido con la construccin de un prototipo
experimental de laboratorio.















Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 10 -

1- INTRODUCCION


En la actualidad existe un sistema de comunicacin llamado C.A.N. BUS (Controller
Area Network), que es un protocolo de comunicacin serie desarrollado por la firma
alemana BOSCH, para el intercambio de informacin entre unidades de control
electrnicas del automvil.
Soporta un control distribuido en tiempo real con un alto nivel de seguridad y
mltiplexacin.
Este sistema permite una reduccin importante tanto del nmero de sensores utilizados
como de la cantidad de cables que componen la instalacin elctrica.
De esta forma aumentan considerablemente las funciones presentes en los sistemas del
automvil donde se emplea el CAN BUS, sin aumentar los costos, adems estas
funciones pueden estar repartidas entre las distintas unidades de control que el sistema
posee.
Esta tecnologa CAN BUS, se est comenzando a utilizar en automviles de alta gama y
muy costosos, el cual solo las grandes empresas y concesionarias del pas disponen de
los servicios de diagnosis, control y reparacin de estos nuevos sistemas.
La implementacin est orientada hacia aquellos automviles con mas de 10 aos de
antigedad, vehculos en los cuales a esa edad comienzan a producirse fallas en el
sistema de distribucin elctrico, en componentes tales como contactos, llaves, cables,
relay, etc.; ya que su reemplazo por un nuevo cableado resultara muy costoso.
Segn notas publicadas en Internet, WWW.Autoxuga.com , WWW.Autocity.com,
http://es.wikipedia.org/wiki/CAN_bus, los automviles que tienen instalado el Sistema
CAN Bus, logran una reduccin del 20 % en la cantidad de cableado del sistema
elctrico, incrementando la fiabilidad, ofrecen nuevas funciones al usuario,
estableciendo un dilogo permanente entre las unidades de control multiplexados entre
s.
El tiempo, costo de diagnosis y reparacin de este sistema ser ms econmico, en
comparacin con los costos de un sistema CAN.




Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 11 -

En la siguiente Figura n 1.0, se muestra el diagrama en bloques del sistema que se
desea implementar:



NODO 1 ENLACE DE DATOS (BUS) NODO 2
Maestro Esclavo



Lneas de mando Sensores y actuadores

Figura n 1.0, diagrama en bloques.

1.1 Descripcin General:

Nodo 1 y Nodo 2
Estos nodos, constarn de un sistema de digitalizacin, de comandos y sensores,
codificador / decodificador y transmisor / receptor.

Enlace de Datos

Este enlace llevar los datos digitales en forma confiable y con redundancia.
Debe ser capaz de transportar informacin a alta velocidad, de acuerdo con las
limitaciones de la tecnologa a utilizar para el desarrollo del trabajo final de grado.

Lneas de mando

Por estas lneas circulan seales elctricas que comandan los actuadores y sensores.

Sensores y actuadores
Los sensores sern de salida digitalizada y los actuadores podrn ser llaves electrnicas,
electromecnicas, reles, solenoides, motores de CC, etc.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 12 -

1.2- UBICACIN FISICA DEL SISTEMA

En un automvil existen dos grandes zonas a controlar por los sistemas electrnicos: a)
la parte delantera y b) parte trasera o posterior; las cuales estarn controladas por los
Nodo 1 CAN y Nodo 2 CAN respectivamente, existiendo un enlace de datos digitales
(Bus de datos CAN) bidireccional entre ellos, en la siguiente Figura n 1.2 se muestran
las ubicaciones fisicas de los nodos:

Vista lateral:








NODO 1 CAN NODO 2 CAN
BUS CAN
Vista superior:










Lneas de mando Actuadores y Sensores

Figura n 1.2, Vistas lateral y superior de ubicacin de los nodos
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 13 -

2- ESTUDIO DE TECNOLOGIA A IMPLEMENTAR

El criterio a utilizar en la eleccin de la tecnologa, se basar en la confiabilidad,
eficiencia, implementacin, seguridad, costo, disponibilidad de componentes en el
mercado y herramientas de diseo.
A continuacin se dar una breve explicacin de cada uno de los sistemas elegidos para
el estudio de la tecnologa a utilizar en este trabajo final de grado.

2.1- MICROCONTROLADORES.

Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno
o varios procesos. Por ejemplo, el controlador que regula el funcionamiento de un horno
dispone de un sensor que mide constantemente su temperatura interna y cuando traspasa
los limites prefijados, genera las seales adecuadas que accionan los actuadotes que
intentan llevar a la temperatura dentro de los valores estipulados.


Un microcontrolador es un circuito integrado de alta escala de integracin que
incorpora la mayor parte de los elementos que configuran un controlador.


Un microcontrolador dispone normalmente de los siguientes componentes:

- Procesador o CPU (unidad central de proceso)
- Memoria RAM para contener los datos.
- Memoria ROM/PROM/EPROM/EEPROM, para el programa.
- Lneas de E/S para comunicarse con el exterior.
- Diversos mdulos para el control de perifricos (temporizadores, puertos
serie y paralelo, comunicacin USART, conversores CAD y CDA, etc ) .
- Generador de impulso de reloj que sincronizan el funcionamiento de todo el
sistema.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 14 -
Dependiendo del modelo de microcontrolador que se trate, el tamao y tipo de la
memoria pueden diferir, as como tambin el nmero de lneas de E/S, mdulos de
control de perifricos, etc.
El estudio se enfoc en los microcontroladores PIC, de la empresa Microchip
Technology Inc., mas precisamente en el modelo 16F8xx.
Con respecto al diseo del Firmware, se han desarrollado todo tipo de lenguajes para la
programacin, pero los ms usados son el ASEMBLER, el BASIC y el C.
Cuentan con un repertorio de 35 instrucciones mquina.
En lo referente a las aplicaciones de software, Microchip, proporciona gratuitamente un
completo entorno integrado de desarrollo, el MPLAB IDE, que incluye un gestor de
proyecto, un potente editor, un ensamblador y un simulador.
En cuanto al hardware, se requiere un programador grabador que puede ser el PIC
School, diseado por Ingeniera de Microsistemas programados S.L., o tambin se
encuentran publicados en Internet varios y censillos programadores, que solo requieren
pocos componentes electrnicos para su funcionamiento.



2.2- LOS DSPIC.

Con el objetivo de aprovechar la sinergia de los miles de profesionales que hay en el
mundo proyectando sistemas embebidos en microcontroladores de propsito general
PIC y ayudarles a realizar la transicin al procesamiento digital de seales, Microchip
ha creado los DSC (Controladores Digitales de Seal), que son una combinacin de los
microcontroladores de PIC de 16 bits y los recursos necesarios para dotarlos de las
prestaciones de los DSP (Procesador Digital de Seales).

DSC = MICROCONTROLADOR PIC DE 16 BITS + PRESTACIONES DSP

Existe una gran similitud en la arquitectura, la programacin, los perifricos y las
herramientas de desarrollo que se encuentran en el diseo de sistemas con
microcontroladores PIC de 16 bits y la utilizada con los DSC.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 15 -
Aunque los DSC se han construido tomando como base la arquitectura de los PIC
24xxx. Existen ciertas peculiaridades que distinguen estos dos tipos de procesadores,
segn se muestra en la Tabla n 2.2:


MICROCONTROLADOR
DSPIC
Instrucciones multiciclos Instrucciones de nico ciclo
Intrusiones de microcontrolador Instrucciones de microcontrolador +
Instrucciones DSP
Direccionamientos clsicos Direccionamientos especiales
Multiplicacin bsica Multiplicacin compleja en un solo ciclo
Rendimiento normal Rendimiento muy alto
Operaciones aritmticas generales Mdulos de redondeo y saturacin

Tabla n 2.2


Estos DSPIC cuentan con un repertorio de 84 instrucciones bsicas y con todas sus
combinaciones pasan las 200 instrucciones mquinas.
Estos DSPICs cuentan con mdulos de comunicacin CAN, en los cuales estn
incluidas las rutinas de programacin y el protocolo CAN propiamente dicho.
Actualmente esta tecnologa (componentes y hardware) son muy difcil de conseguir en
nuestro mercado, sin embargo existen libros que explican el uso, manejo y campo de
aplicacin de estos DSPIC.

2.3- ELECCION DE LA TECNOLOGIA A UTILIZAR.

Teniendo en cuenta los factores antes mencionado y su estudio correspondiente para la
eleccin del sistema a utilizar, se decidi por los Microcontroladores PIC, en especial
los de la gama media de los PIC 16F8xx, el cual es el que presenta las mayores
prestaciones tecnolgicas, implementacin, costo y sobre todo disponibilidad en el
mercado nacional, para el desarrollo de este trabajo final de grado.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 16 -
3 LOS MICROCONTROLADORES

En este capitulo, se realiza una introduccin a la descripcin de los conceptos
fundamentales y a las aplicaciones generales que rodean a los microcontroladores,
basado en el libro Microcontroladores PIC, la solucin en un chip de Eugenio
Cuenca, Jos Angulo Usategui e Ignacio Martnez. Luego se continu con el estudio de
la gama media cuya teora se basa en el libro Microcontroladores PIC, Diseo prctico
de aplicaciones 2da parte, PIC 16F87x y PIC 18Fxxx , de Jos Angulo Usategui,
Ignacio Angulo Martnez y Susana Romero Yesa, conjuntamente con las pginas Web
dedicadas a los microcontroladores como: www.microchip.com, pgina oficial del
fabricante de los PICs, www.microcontroladores.com, de Ingeniera de microsistemas
programados.


3.1 INTRODUCCIN A LOS MICROCONTROLADORES

Los microcontroladores hicieron su aparicin a principio de los 80 y se trata de un
circuito integrado programable que contiene toda la estructura (arquitectura) de una
microcomputadora, mostrado en la Figura n 3.1. Es decir que, dentro de un
microcontrolador se puede encontrar:

Una CPU (Unidad Central de Proceso)

Memoria RAM

Memoria ROM

Memoria EEPROM (Memoria de lectura y escritura no voltil, es decir, que no se
pierden los datos cuando el circuito es desconectado)

Puertos de Entrada/Salida (Pines de E/S) e incluso muchos modelos de
microcontroladores incorporan distintos mdulos perifricos, como pueden ser;
conversores analgico/digital (A/D), mdulos PWM (control por ancho de pulso),
mdulos de comunicaciones seriales o en paralelo, y ms.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 17 -








Figura n 3.1 PIC, Circuito integrado

Todo esto lo podemos encontrar dentro del mismo circuito integrado. Cada vez existen
ms productos que incorporan microcontroladores con el fin de aumentar
sustancialmente sus prestaciones, reducir su tamao y costo, mejorar su confiabilidad y
disminuir el consumo de energa.

3.2 LOS PIC

Los microcontroladores denominados PIC corresponden exclusivamente a la marca
Microchip. PIC significa "Peripheral Interface Controller" y fue desarrollado por
Microchip a principio de los 80.
Existe una gran cantidad de modelos de microcontroladores cuyas caractersticas y
prestaciones varan de un modelo a otro. De esta manera los desarrolladores pueden
seleccionar el modelo que mejor se ajuste a sus necesidades. Los distintos modelos de
microcontroladores se agrupan por familia. Una familia puede estar formada por un
conjunto de modelos cuyas caractersticas y prestaciones son bastante similares.
Cuando se compra un microcontrolador, la memoria del mismo se encuentra vaca y
para que funcione es necesario que sea programado, es decir que, el desarrollador
debe escribir un programa que contenga todos los procesos que el microcontrolador
debe ejecutar.
Este programa se escribe en un lenguaje llamado Assembler (ensamblador) cuya
principal caracterstica es su alta complejidad ya que se trata de un lenguaje de bajo
nivel, es decir, que se encuentra cercano al lenguaje de la mquina que del lenguaje
humano.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 18 -
3.3 ESTRUCTURA INTERNA DE UN MICROCONTROLADOR


Bsicamente, un microcontrolador est compuesto por los siguientes componentes:

Procesador o CPU (del ingls Central Prossesing Unit o Unidad Central de Proceso).

Memoria para el programa tipo ROM.

Memoria RAM para contener los datos.

Lneas de E/S para comunicarse con el exterior.

Mdulos temporizadores.

Puertas de E/S digitales.

Puertas serie y paralelo.

Mdulo de comunicacin USART

Mdulo de comparacin y captura.

Conversores CAD y CDA.

En la Figura n 3.2, se puede ver la estructura interna de un microcontrolador PIC, en
este caso de la familia 16F87X







Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 19 -






























Figura n 3.2, PIC, Estructura Interna




Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 20 -
3.4 EL PROCESADOR O CPU


Es el elemento ms importante del microcontrolador y determina sus principales
caractersticas, tanto a nivel hardware como software. La CPU se encarga de la
decodificacin y ejecucin del programa.
Actualmente, existen 3 tipos de arquitectura de procesadores:


CISC (Computadores de Conjunto de Instrucciones Complejo): Disponen de ms de
80 instrucciones en su repertorio, algunas de las cuales son muy sofisticadas y potentes,
requiriendo muchos ciclos para su ejecucin. Una ventaja de los procesadores CISC es
que ofrecen instrucciones complejas que actan como macros.



RISC (Computadores de Conjunto de Instrucciones Reducido): En estos procesadores
el repertorio de instrucciones es muy reducido y las instrucciones son simples y
generalmente se ejecutan en un ciclo. La ventaja de stos es que la sencillez y rapidez
de las instrucciones permiten optimizar el hardware y el software del procesador.



SISC (Computadores de Conjunto de Instrucciones Especfico): En los
microcontroladores destinados a aplicaciones muy concretas, el juego de instrucciones,
adems de ser reducido, es "especfico", o sea, las instrucciones se adaptan a las
necesidades de la aplicacin prevista.


3.5 MEMORIA DE PROGRAMA ROM

La memoria ROM es una memoria no voltil, es decir, que no se pierden los datos al
desconectar el equipo y se destina a contener el programa de instrucciones que gobierna
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 21 -
la aplicacin. Los microcontroladores disponen de capacidades de ROM comprendidas
entre 512 bytes y 8 k bytes.
Existen distintos tipos de memorias ROM, la cual determinar la aplicacin del
microcontrolador.


ROM con mscara: Es una memoria no voltil de slo lectura cuyo contenido se
graba durante la fabricacin del chip. El elevado costo del diseo de la mscara slo
hace aconsejable el empleo de los microcontroladores con este tipo de memoria cuando
se precisan cantidades superiores a varios miles de unidades.

OTP: El microcontrolador contiene una memoria no voltil de slo lectura
"programable una sola vez" por el usuario. OTP (One Time Programmable). Es el
usuario quien puede escribir el programa en el chip mediante un sencillo grabador
controlado por un programa desde una PC. La versin OTP es recomendable cuando es
muy corto el ciclo de diseo del producto, o bien, en la construccin de prototipos y
series muy pequeas. Tanto en este tipo de memoria como en la EPROM, se suele usar
la encriptacin mediante fusibles para proteger el cdigo contenido.

EPROM: Los microcontroladores que disponen de memoria EPROM (Erasable
Programmable Read OnIy Memory) pueden borrarse y grabarse muchas veces. La
grabacin se realiza, como en el caso de los OTP, con un grabador gobernado desde un
PC. Si, posteriormente, se desea borrar el contenido, disponen de una ventana de cristal
en su superficie por la que se somete a la EPROM a rayos ultravioleta durante varios
minutos. Las cpsulas son de material cermico y son ms caros que los
microcontroladores con memoria OTP que estn hechos con material plstico.

EEPROM: Se trata de memorias de slo lectura, las cuales se puede escribir y borrar
elctricamente. EEPROM (Electrical Erasable Programmable Read OnIy Memory).
Tanto la programacin como el borrado, se realizan elctricamente desde el propio
grabador y bajo el control programado de un PC. Es muy cmoda y rpida la operacin
de grabado y la de borrado. No disponen de ventana de cristal en la superficie. Los
microcontroladores dotados de memoria EEPROM una vez instalados en el circuito,
pueden grabarse y borrarse cuantas veces se quiera sin ser retirados de dicho circuito.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 22 -
Para ello se usan "grabadores en circuito" que confieren una gran flexibilidad y rapidez
a la hora de realizar modificaciones en el programa de trabajo. El nmero de veces que
puede grabarse y borrarse una memoria EEPROM es finito, por lo que no es
recomendable una reprogramacin contina. Son muy idneos para la enseanza y la
ingeniera de diseo. Se va extendiendo en los fabricantes la tendencia de incluir una
pequea zona de memoria EEPROM en los circuitos programables para guardar y
modificar cmodamente una serie de parmetros que adecuan el dispositivo a las
condiciones del entorno. Este tipo de memoria es relativamente lenta.

FLASH: Se trata de una memoria no voltil, de bajo consumo, que se puede escribir y
borrar. Funciona como una ROM y una RAM pero consume menos y es ms pequea.
A diferencia de la ROM, la memoria FLASH es programable en el circuito. Es ms
rpida y de mayor densidad que la EEPROM. La alternativa FLASH est recomendada
frente a la EEPROM cuando se precisa gran cantidad de memoria de programa no
voltil. Es ms veloz y tolera ms ciclos de escritura y borrado.


3.6 MEMORIA DE DATOS RAM


La memoria RAM es una memoria voltil, es decir, que se pierden los datos al
desconectar el equipo, y se destina a guardar las variables y los datos. Los
microcontroladores disponen de capacidades de RAM comprendidas entre 20 y 512
bytes.
Hay microcontroladores que tambin disponen como memoria de datos una de lectura y
escritura no voltil, del tipo EEPROM. De esta forma, un corte en el suministro de la
alimentacin no ocasiona la prdida de la informacin, que est disponible al reiniciarse
el programa.






Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 23 -
4
.
1
Oscilacion Frec
3.7 LNEAS DE ENTRADA/SALIDA (E/S), (PUERTOS)

Los microcontroladores cuentan con una serie de pines destinados a entrada y salida de
datos o seales digitales. A estos pines se les denomina Puerto.
Como se menciono anteriormente, todo el funcionamiento del microcontrolador est
controlado a travs de los registros. Los puertos no son la excepcin, tambin estn
controlados por los registros. Por esto, un puerto no puede estar formado por ms de 8
pines; 1 Pin por cada Bit de un registro. Un puerto si puede estar formado por menos de
8 pines.
Un microcontrolador puede contener varios puertos dependiendo del modelo. A cada
puerto se lo identifica con una letra. Por ejemplo; Puerto A, Puerto B, etc.
Para poder utilizar un puerto, primero el mismo debe ser configurado. Cada pin de un
puerto puede ser configurado como entrada o salida independientemente del resto de los
pines del mismo puerto.

3.8 MDULOS TEMPORIZADORES INTERNOS (TMRS)

Un temporizador interno (TMR) es un mdulo de hardware incluido en el mismo
microcontrolador el cual est especialmente diseado para incrementar automticamente
el valor de un registro asociado al TMR cada vez que el mdulo TMR recibe un pulso.
A este pulso se lo llama seal de reloj.
El mdulo TMR siempre incrementa el valor del registro asociado, nunca decrementa
dicho valor. Algunos microcontroladores pueden incluir ms de un mdulo TMR y la
seal de reloj de cada uno de stos puede ser de origen interno o externo. Si el origen de
la seal de reloj est configurado como externo, el mdulo temporizador puede ser
utilizado como un contador de eventos externos, incrementando el TMR con cada pulso
recibido mediante el pin correspondiente.
Si el origen de la seal de reloj es interno, el TMR incrementa con cada ciclo del
oscilador. Esto permite utilizar el temporizador como contador de ciclos de programa,
donde, un ciclo corresponde al tiempo de ejecucin de una instruccin, lo cual se puede
calcular con la siguiente frmula:



Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 24 -
4
000 . 000 . 4
1
ms 001 . 0
000 . 000 . 1
1
=
( ) do Microsegun s ms 1 001 . 0 =

Donde Frec. Osc. es la frecuencia del oscilador utilizado.
Dado que la velocidad de ejecucin del microcontrolador corresponde a de la
velocidad del cristal utilizado, cada ciclo de programa se ejecuta en un tiempo
determinado segn el cristal que estemos utilizando.
Por ejemplo; con un cristal de 4Mhz la velocidad real de procesamiento del
microcontrolador es de 1 Mhz.
Aplicando la siguiente frmula:










Esto significa que cada ciclo de programa se ejecuta en 1 s y dado que cada
incremento del TMR corresponde a un ciclo de programa, si se cuentan los incrementos
de un TMR, indirectamente se podr calcular el tiempo transcurrido.
El incremento del TMR se realiza de manera automtica y de forma paralela a la
ejecucin del resto del programa. Esto significa que el programa no debe controlar el
incremento del TMR, lo cual s debe realizarse en las temporizaciones por bucles, en las
cuales el microcontrolador se queda esperando a que transcurra un tiempo, y no
pueden ejecutarse otras tareas mientras no finalice la temporizacin. Entonces el TMR
puede ser utilizado como temporizador mientras el microcontrolador ejecuta otros
procesos.
En general los microcontroladores cuentan con una interrupcin por desbordamiento del
TRM, es decir que, el microcontrolador se interrumpe cuando el TMR0 pasa de 255
(B[11111111]) a 0 (B[00000000]) en los temporizadores de 8 bits y cuando pasa de
(B[11111111_11111111]) a 0 (B[00000000 _ 00000000]) en los temporizadores de 16
bits.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 25 -
Dado que 256 s es un tiempo relativamente corto (para un TMR de 8 bits a 4 Mhz.),
existe la posibilidad de preescalar el TMR0 para que el registro asociado al TMR se
incremente cada 2, 4, 8,o ms ciclos. De esta manera, se multiplica la cantidad de ciclos
que deben ejecutarse para realizar un incremento del TMR. Al prescaler tambin se lo
denomina predivisor. Por ejemplo, con un predivisor de 8, cada incremento del TMR se
realiz cada 8 ciclos de programa y el desbordamiento del TMR se realizara cada 2048
ciclos (255 incrementos * 8ciclos).
As podr realizar interrupciones con perodos de tiempo mayores.


3.9 LENGUAJES DE PROGRAMACION


Se han desarrollado todo tipo de lenguajes para los microcontroladores, pero los ms
usados son el Ensamblador, el BASIC y el C.
El Ensamblador, que es el utilizado para este proyecto, utiliza nemnicos inteligibles, es
una forma mas humana de escribir los programas.
La programacin en un lenguaje de alto nivel (como el C) permite disminuir el tiempo
de desarrollo de un producto. No obstante, si no se programa con cuidado, el cdigo
resultante puede ser mucho ms ineficiente que el programado en ensamblador.
Los programas escritos en Ensamblador son compactos y rpidos puesto que realizan un
completo control de la mquina.
El desarrollo del firmware se realiz con el MPLAB IDE, que es proporcionado en
forma gratuita por la empresa Microchip desde su Web, www.microcip.com.
El MPLAB IDE es un entorno de desarrollo integrado que le permite escribir y codificar
los programas para los microcontroladores PIC. El MPLAB IDE incluye un editor de
texto, funciones para el manejo de proyectos, un simulador interno y una variedad de
herramientas que lo ayudarn a mantener y ejecutar su aplicacin. Tambin provee una
interfase de usuario para todos los productos con lenguaje Microchip, programadores de
dispositivos, sistemas emuladores y herramientas de tercer orden.
En la Figura n 3.3 se muestra el entorno grfico de programacin del software
MPLAB IDE.


Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 26 -


















Figura n 3.3, entorno MPLAB IDE


3.10 PROGRAMADOR


Para transferir el cdigo de una PC al PIC normalmente se usa un dispositivo llamado
programador. La mayora de PICs que Microchip distribuye hoy en da incorporan ICSP
(In Circuit Serial Programming, programacin serie incorporada) o LVP (Low Voltage
Programming, programacin a bajo voltaje), lo que permite programar el PIC
directamente en el circuito destino. Para la ICSP se usan los pines RB6 y RB7 como
reloj y datos y el MCLR (Master Clear) para activar el modo programacin aplicando
un voltaje de 13 voltios.
Existen muchos programadores de PICs, desde los ms simples que dejan al software
los detalles de comunicaciones, a los ms complejos, que pueden verificar el dispositivo
a diversas tensiones de alimentacin e implementan en hardware casi todas las
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 27 -
funcionalidades. Muchos de estos programadores complejos incluyen ellos mismos
PICs preprogramados como interfaz para enviar las rdenes al PIC que se desea
programar.
El programador elegido para el desarrollo de este proyecto es el UPP 628, diseado y
fabricado conjuntamente por las empresas SILICONBYTE (Argentina) y SILANCODE
(Espaa), en la Figura 3.4 se muestra el programador utilizado.




















Figura 3.4 Programador UPP628.



Es un programador USB para microcontroladores, soporta la lnea 8/14/18/20/28/40,
DIP y va ICSP la posibilidad de programacin de micros de mayor tamao in circuit.
No necesita alimentacin externa, cuenta con un PIC 16F628, cuyo firmware es
actualizable.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 28 -
La insercin del chip, al programador se realiza mediante un zcalo ZIF (Insercin
fuerza cero) y la programacin se hace con su propio software, Figura 3.5.

























Figura 3.5 Software UPP628

En la Figura 3.5, se puede observar el cdigo fuente (.Hex), programar la palabra de
configuracin, que permite fijar valores para el oscilador, activacin/desactivacin del
Watchdog Timer, posicin del microcontrolador en el zcalo ZIF y comprobacin de la
grabacin.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 29 -
3.11 TEORIA DE FUNCIONAMIENTO DEL MENSAJE CAN

En el bus CAN los mensajes transmitidos por un nodo no contienen los tradicionales
campos de direccin origen y destino, sino que estn caracterizados con un
identificador. Los dems nodos que estn conectados a la red reciben el mensaje y
mediante el anlisis del identificador determinan si la trama es de inters o no; en caso
afirmativo, la trama es procesada, y en caso contrario se ignora.
En la Figura 3.6, se muestra un ejemplo de una red CAN bus.








Bus CAN











Figura 3.6, Ejemplo de red CAN


El mdulo CAN de los dsPIC satisface las especificaciones de las versiones 2.0, que
permite la transmisin de mensajes con identificadores de 11 y 29 bits.

dsPIC con
CAN
Transceiver
CAN
dsPIC con
CAN
Transceiver
CAN
dsPIC con
CAN
Transceiver
CAN
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 30 -
3.12 CARACTERISTICAS DEL MODULO CAN

El mdulo CAN es un controlador de comunicaciones y trabaja como Full CAN, es
decir, que puede tratar un nmero limitado de tramas y tiene las siguientes
caractersticas relevantes:


- Dos buffers de entrada con prioridad.
- Tres buffers de transmisin.
- Tramas de envos de datos estndar y extendidos.
- Longitud de datos 0-8 byte.
- Tasa de transferencia ajustable hasta 1 Mb/s.
- Varios filtros de aceptacin de identificador.


3.13 FORMATO DE MENSAJE CAN

El protocolo CAN soporta todas las funciones de transmisin de mensajes tanto de
entrada como de salida. Los registros deben ser cargados apropiadamente para una
correcta transmisin de los mensajes.
Los errores y estados son detectados mediante la lectura de sus correspondientes
registros. Todo mensaje detectado en el bus CAN es analizado en busca de errores y
despus filtrado para finalmente ser recibido y guardado en uno de los registros de
entrada.


3.14 TRAMA ESTNDAR CAN

Una trama estndar es generada por un nodo cuando quiere transmitir datos de una o
varias estaciones remotas. El productor introduce un objeto en la red que puede ser
consumido por cualquier nmero de estaciones remotas. La trama CAN esta formada
por los campos mostrados en la Figura 3.7.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 31 -







Figura 3.7, Trama estndar


Inicio de trama (1 bit): Un nico bit dominante de comienzo de comienzo de
trama (SOF), para la sincronizacin de todos los nodos.
Campo de arbitraje (12 bit): Esta formado por el identificador de 11 bits y el
bit de solicitud de transmisin de peticin (RTR) el cual distingue si la trama es
del tipo dato (0) o peticin (1).
Campo de control (6 bits): El primer bit (IDE) es un identificador que est a 0
para especificar que la trama es estndar. El segundo bit (RB0) es un bit
reservado con valor 0. Los cuatros bits restantes (DLC) indican la longitud de
campo de datos en bytes.
Campo de datos (0-8 bytes): Contiene los datos a enviar. La longitud vara
entre 0 y 8 bytes viniendo especificada en el DLC. Este campo de datos estara
vaco en el caso de una trama peticin.
Secuencia de deteccin de errores (16 bits): La deteccin de errores se realiza
mediante el mtodo CRC (cdigo de redundancia cclica).este campo contiene
15 bits para el CRC y un bit recesivo para el delimitador de CRC.
Campo ACK (2 bits): El primero de ellos indica si la estacin ha recibido
correctamente el mensaje y el segundo es el delimitador de ACK. Ambos
campos son transmitidos como recesivos pero el primero de ellos es modificado
a dominante cuando al menos un nodo recibe el mensaje correctamente.
Fin de trama (7 bits): Consta de siete bits recesivos consecutivos (EOF).




SOF ARBRITAGE RTR
CONTROL DATOS CAMPO CRC CRC ACK EOF
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 32 -
4.0 DISEO DEL HARDWARE

El diseo se realiz de acuerdo con las caractersticas de los microcontroladores (PIC
16F873A, PIC 16F874), esquema elctrico-electrnico de iluminacin y control,
funcionalidad, disponibilidad de recursos comunes a todos los automviles, incluyendo
mejoras y la posibilidad de actualizacin tanto de confort como a nivel Firmware CAN
del sistema electrnico instalado en cada vehculo. En la Figura 4.0 se muestra el
diagrama en bloques del sistema completo.


NODO 1 CAN (Maestro) NODO 2 CAN (Esclavo)


BUS de Datos







Figura 4.0 Diagrama de bloques

4.1 NODO 1 CAN (MAESTRO)


El nodo 1 CAN est formado por dos microcontroladores, PIC 16F874A y PIC
16F873A, encapsulados Dip de 40 y 28 pines respectivamente, Figura 4.1.
Llamo MC1 al Firmware CAN, del microcontrolador programado en el nodo 1 CAN.
El MC1 es el encargado de controlar, sensar, digitalizar, configurar y actualizar el
mensaje CAN, transmitir, recibir y controlar los errores de los mensajes codificados a
travs del Bus bidireccional de datos, por medio de su puerto serie de transmisin
USART (Universal Synchronous Asynchronous Receiver Transmitter ).


MC1

MC3
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 33 -























Figura 4.1 Diagrama de pines

4.12 ASIGNACION FUNCIONAL DE CADA PIN (NODO 1 CAN)

En esta seccin se indica la distribucin funcional elegida para cada pin de los
microcontroladores del nodo 1 CAN.
Est eleccin se realiz teniendo en cuenta todas las funciones, necesidades, privilegios,
comunes del sistema elctrico-electrnico que disponen los vehculos, de acuerdo a las
caractersticas y funciones de manejo de cada pin de los perifricos y puertas que
disponen los microcontroladores.
En la Tabla 4.2, se muestran las asignaciones a cada pin en nodo 1 CAN:
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 34 -
PIC 16F874

PIN DESCRIPCION
RA0/AN0 Input Modo encendido/Modo apagado
RA1/AN1 Input Luz de estacionamiento / tablero.
RA2/AN2/VREF- Input Luz de guio derecho
RA3/AN3/VREF+ Input Luz de guio izquierdo
RA4/T0CKI Input Luz de Stop (comando)
RA5/AN4/ SS
Input Desempaador de cristal trasero (comando)
RC0/T1OSO/T1CKI Input Cierre centralizado de puertas
RC1/T1OSI/CCP2 Input Luz de reversa / Sensores de Estacionamiento
(comando)
RC6/TX/CK Output Transmisin de mensaje CAN asa nodo 2 (USART)
RC7/RX/DT Input Recepcin de mensaje CAN desde nodo 2(USART)
RB0/INT Output Luz de estacionamiento / tablero
RB1 Output Luz de guio derecho
RB2 Output Luz de guio izquierdo
RB3/PGM Output Luz de Balizas
RB4 Output Cierre centralizado de puertas
RB5 Output Indicacin sonora de Sensores de estacionamientos
RB6/PGC Output Indicacin luminosa de Sensores de estacionamientos
RD0/PSP0 Output Bit 0 al DAC (LSB)
RD1/PSP1 Output Bit 1 al DAC
RD2/PSP2 Output Bit 2 al DAC
RD3/PSP3 Output Bit 3 al DAC
RD4/PSP4 Output Bit 4 al DAC
RD5/PSP5 Output Bit 5 al DAC
RD6/PSP6 Output Bit 6 al DAC
RD7/PSP7 Output Bit 7 al DAC (MSB)


Tabla 4.2, Descripcin de pines

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 35 -
PIC 16F873A


PIN DESCRIPCION
RA0/AN0 Input Luz de iluminacin baja
RA1/AN1 Input Luz iluminacin alta
RA2/AN2/VREF- Input Luz iluminacin interior
RA3/AN3/VREF+ Input Encendido de aire acondicionado
RA4/T0CKI Input encendido de ventilacin, en velocidad n 1(Ventilacin
1).
RA5/AN4/ SS
Input encendido de ventilacin, en velocidad n 1(Ventilacin
2).
RC0/T1OSO/T1CKI Imput Pulsadores de apertura de puertas
RC1/T1OSI/CCP2 Input limpia parabrisas, en velocidad n 1
RC2/CCP1 Input limpia parabrisas, en velocidad n 2
RC3/SCK/SCL Imptut bocina
RC4/SDI/SDA Output luz de iluminacin baja
RC5/SDO Output luz de iluminacin alta
RC6/TX/CK Output luz de iluminacin de interior
RC7/RX/DT Output encendido de aire acondicionado
RB0/INT Output Ventilacin 1
RB1 Output Ventilacin 2
RB2 Output pulsadores de apertura de puertas
RB3/PGM Output limpia parabrisas en velocidad n1
RB4 Output limpia parabrisas en velocidad n2.
RB5 Output bocina
RB6 Input Modo encendido / Modo apagado


Tabla 4.2, Descripcin de pines (continuacin)

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 36 -
4.2 NODO 2 CAN (ESCLAVO)

Se designa como MC2 al Firmware CAN del microcontrolador programado en el nodo
2 CAN.
El nodo 2 CAN est formado por un microcontrolador, PIC 16F873A, encapsulados Dip
de 28, Figura 4.2.
El MC2 es el encargado de recibir las rdenes, decodificarlas, ejecutarlas, codificar la
respuesta a las preguntas efectuadas por el MC1 y transmitirlas por el Bus USART, al
nodo 1 CAN. Este nodo maneja toda la iluminacin, medicin de nivel de combustible,
cierre centralizado, sensores de alarma, desempaador de cristal trasero, sensores de
estacionamiento, que dispone un vehculo en la parte trasera.













Figura 4.2, Diagrama de pines


4.21 ASIGNACION FUNCIONAL DE CADA PIN NODO 2 CAN

La distribucin funcional elegida para cada pin del microcontrolador del nodo 2 CAN,
fue elegida con el mismo criterio que para el nodo 1 CAN.
Este nodo al funcionar como esclavo, solo se limita a responder a las preguntas del
MC1.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 37 -
Dispone de una entrada analgica que corresponde al sensor de nivel de combustible,
que ser digitalizada y almacenada en la memoria de datos del PIC, para ser transmitida
cuando el MC1 haga la peticin requiera.
Una entrada digital que pertenece al sensor de estacionamiento, integrado por el sensor
medidor de distancia infrarrojo GP2D12, que se detalla en el capitulo 5.23.
Ocho salidas digitales para el accionamiento de los sensores y actuadores.

En la Tabla 4.21, se muestran las asignaciones a cada pin en el nodo 2 CAN:


PIN DESCRIPCION
RA0/AN0 Input (Analgica) Sensores de nivel de Combustible
RA1/AN1 Input Sensor de Estacionamiento
RC6/TX/CK Output Transmisin de mensaje CAN asa nodo 1 (USART).
RC7/RX/DT Input Recepcin de mensaje CAN desde nodo 1 (USART).
RB0/INT Output Luz de estacionamiento / tablero.
RB1 Output Luz de guio izquierdo.
RB2 Output Luz de guio derecho.
RB3/PGM Output Luz de Balizas.
RB4 Output Luz de stop.
RB5 Output Luz reversa/Sensores de estacionamientos.
RB6/PGC Output Cierre centralizado.
RB7/PGD Output Desempaador de cristal trasero.

Tabla 4.21 Descripcin de pines






Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 38 -
RA0/AN0 2
RA1/AN1 3
RA2/AN2/VREF- 4
RA4/T0CKI 6
RA5/AN4/SS 7
RE0/AN5/RD 8
RE1/AN6/WR 9
RE2/AN7/CS 10
OSC1/CLKIN 13
OSC2/CLKOUT 14
RC1/T1OSI/CCP2 16
RC2/CCP1 17
RC3/SCK/SCL 18
RD0/PSP0 19
RD1/PSP1 20
RB7/PGD 40 RB6/PGC 39 RB5 38 RB4 37 RB3/PGM 36 RB2 35 RB1 34 RB0/INT 33
RD7/PSP7 30 RD6/PSP6 29 RD5/PSP5 28 RD4/PSP4 27 RD3/PSP3 22 RD2/PSP2 21
RC7/RX/DT 26 RC6/TX/CK 25 RC5/SDO 24 RC4/SDI/SDA 23
RA3/AN3/VREF+ 5
RC0/T1OSO/T1CKI 15
MCLR/Vpp/THV 1
U20
PIC16F874
X1
CRYSTAL
C1 22pF
C2 22pF
V
D
D
R10210k
1
2
J1
TBLOCK-I2
1
2
J2
TBLOCK-I2
1
2
J3
TBLOCK-I2
1
2
J4
TBLOCK-I2
1
2
J5
TBLOCK-I2
1
2
J6
TBLOCK-I2
1
2
J7
TBLOCK-I2
1
2
J34
TBLOCK-I2
1
2
J33
TBLOCK-I2
1
2
J32
TBLOCK-I2
1
2
J31
TBLOCK-I2
1
2
J30
TBLOCK-I2
1
2
J29
TBLOCK-I2
1
2
J28
TBLOCK-I2
A 2
6
V
R
E F ( + )
1 4
V
E E
3
G
N
D
2
A 1
5
I O
U
T
4
A 3
7
A 4
8
A 5
9
A 6
1 0
A 7
1 1
A 8
1 2
V
C
C
1 3
V
R
E F ( - )
1 5
C
O
M
P
1 6
U2
DAC0808
6
5
4
1
2
U3
OPTOCOUPLER-NPN
6
5
4
1
2
U4
OPTOCOUPLER-NPN
6
5
4
1
2
U5
OPTOCOUPLER-NPN
6
5
4
1
2
U6
OPTOCOUPLER-NPN
6
5
4
1
2
U7
OPTOCOUPLER-NPN
6
5
4
1
2
U8
OPTOCOUPLER-NPN
6
5
4
1
2
U9
OPTOCOUPLER-NPN
R1 1k
R2 100k
R5 1k
R6 100k
R9 1k
R10 100k
R13 1k
R14 100k
R17 1k
R18 100k
R21 1k
R22 100k
R25 1k
R26 100k
VDD
R4 100k
R8 100k
R12100k
R16 100k
R20100k
R24100k
R28100k
RL17
G5CLE-1-DC12
D34 1N4007
Q17
2N2222A
3
2
1
4
1 1
U10A:A
LM324
R101
5.6k
R100
390
RL16
G5CLE-1-DC12
D33 1N4007
Q16
2N2222A
12
13
14
4
1 1
U10:D
LM324
R99
5.6k
R98
390
RL15
G5CLE-1-DC12
D32 1N4007
Q15
2N2222A
10
9
8
4
1 1
U10:C
LM324
R97
5.6k
R96
390
RL14
G5CLE-1-DC12
D31 1N4007
Q14
2N2222A
5
6
7
4
1 1
U10:B
LM324
R95
5.6k
R94
390
RL13
G5CLE-1-DC12
D30 1N4007
Q13
2N2222A
3
2
1
4
1 1
U10:A
LM324
R93
5.6k
R92
390
RL12
G5CLE-1-DC12
D29 1N4007
Q12
2N2222A
12
13
14
4
1 1
U11:D
LM324
R91
5.6k
R90
390
RL11
G5CLE-1-DC12
D28 1N4007
Q11
2N2222A
10
9
8
4
1 1
U11:C
LM324
R89
5.6k
R88
390
D1
DIODE-LED
VDD
R3 390
D2
DIODE-LED R7 390
D3
DIODE-LED R11 390
VDD
D4
DIODE-LED R15 390
VDD
VDD
VDD
VDD
D5
DIODE-LED R19 390
D6
DIODE-LED R23 390
D7
DIODE-LED R27 390
T1IN 11
R1OUT 12
T2IN 10
R2OUT 9
T1OUT 14
R1IN 13
T2OUT 7
R2IN 8
C2+
4
C2-
5
C1+
1
C1-
3
VS+ 2
VS- 6
U111
MAX232
C3 1F
C4
1F
VCC
1 2 3
J16
SIL-100-03
1
2
J8
TBLOCK-I2
1
2
J9
TBLOCK-I2
1
2
J10
TBLOCK-I2
1
2
J11
TBLOCK-I2
1
2
J12
TBLOCK-I2
1
2
J13
TBLOCK-I2
1
2
J14
TBLOCK-I2
6
5
4
1
2
U34
OPTOCOUPLER-NPN
6
5
4
1
2
U45
OPTOCOUPLER-NPN
6
5
4
1
2
U56
OPTOCOUPLER-NPN
6
5
4
1
2
U66
OPTOCOUPLER-NPN
6
5
4
1
2
U77
OPTOCOUPLER-NPN
6
5
4
1
2
U88
OPTOCOUPLER-NPN
6
5
4
1
2
U99
OPTOCOUPLER-NPN
R291k
R299100k
R32 1k
R33 100k
R36 1k
R37 100k
R40 1k
R41 100k
R44 1k
R45 100k
R48 1k
R49 100k
R52 1k
R53 100k
VDD
R31 100k
R35100k
R39100k
R43100k
R47100k
R5110k
R55100k
D8
DIODE-LED
VDD
R30 390
D9
DIODE-LED R34 390
D10
DIODE-LED R38 390
VDD
D11
DIODE-LED R42 390 VDD
VDD
VDD
VDD
D12
DIODE-LED R46 390
D13
DIODE-LED R50 390
D14
DIODE-LED R54 390
1
2
J15
TBLOCK-I2
1
2
J166
TBLOCK-I2
1
2
J17
TBLOCK-I2
6
5
4
1
2
U771
OPTOCOUPLER-NPN
6
5
4
1
2
U89
OPTOCOUPLER-NPN
6
5
4
1
2
U98
OPTOCOUPLER-NPN
R56 1k
R57 100k
R60 1k
R261100k
R64 1k
R65 100k
R59100k
R63100k
R67100k
VDD
VDD
VDD
D15
DIODE-LED R58 390
D16
DIODE-LED R62 390
D17
DIODE-LED R66 390
RA0/AN0 2
RA1/AN1 3
RA2/AN2/VREF-/CVREF 4
RA4/T0CKI/C1OUT 6
RA5/AN4/SS/C2OUT 7
OSC1/CLKIN 9
OSC2/CLKOUT 10
RC1/T1OSI/CCP2 12
RC2/CCP1 13
RC3/SCK/SCL 14
RB7/PGD 28 RB6/PGC 27 RB5 26 RB4 25 RB3/PGM 24 RB2 23 RB1 22 RB0/INT 21
RC7/RX/DT 18 RC6/TX/CK 17 RC5/SDO 16 RC4/SDI/SDA 15
RA3/AN3/VREF+ 5
RC0/T1OSO/T1CKI 11
MCLR/Vpp/THV 1
U12
PIC16F873A
X2
CRYSTAL
C11
1nF
C22
1nF
V
D
D
R103
10k
1
2
J27
TBLOCK-I2
1
2
J26
TBLOCK-I2
1
2
J25
TBLOCK-I2
1 2
J23
TBLOCK-I2
RL10
G5CLE-1-DC12
D27 1N4007
Q10
2N2222A
5
6
7
4
1 1
U11:B
LM324
R87
5.6k
R86
390
RL9
G5CLE-1-DC12
D26 1N4007
Q9
2N2222A
3
2
1
4
1 1
U11:A
LM324
R85
5.6k
R84
390
RL8
G5CLE-1-DC12
D25 1N4007
Q8
2N2222A
12
13
14
4
1 1
U13:D
LM324
R83
5.6k
R82
390
RL6
G5CLE-1-DC12
D23
1N4007
Q6
2N2222A
5 6
7
4 11
U13:B
LM324
R79
5.6k
R78
390
1 2
J22
TBLOCK-I2
RL5
G5CLE-1-DC12
D22
1N4007
Q5
2N2222A
3 2
1
4 11
U13:A
LM324
R77
5.6k
R76
390
1 2
J21
TBLOCK-I2
RL4
G5CLE-1-DC12
D21
1N4007
Q4
2N2222A
1 2 1 3
1 4
4 11
U1:D
LM324
R75
5.6k
R74
390
1 2
J20
TBLOCK-I2
RL3
G5CLE-1-DC12
D20
1N4007
Q3
2N2222A
1 0 9
8
4 11
U1:C
LM324
R73
5.6k
R72
390
1
2
J24
TBLOCK-I2
RL7
G5CLE-1-DC12
D24 1N4007
Q7
2N2222A
10
9
8
4
1 1
U13:C
LM324
R81
5.6k
R80
390
1 2
J19
TBLOCK-I2
RL2
G5CLE-1-DC12
D19
1N4007
Q2
2N2222A
5 6
7
4 11
U1:B
LM324
R71
5.6k
R70
390
1 2
J18
TBLOCK-I2
RL1
G5CLE-1-DC12
D18
1N4007
Q1
2N2222A
3 2
1
4 11
U1:A
LM324
R69
5.6k
R68
390
VI 1 VO 3
G
N
D
2
U133
7805
VI 1 VO 3
G
N
D
2
U14 7812
C5
0.22uF C6
0.1uF
C7
0.22uF
C8
0.1uF
VDD
VCC
1
2
J177
TBLOCK-I2
VDD
VCC
CAP+ 2
CAP- 4
GND 3
V+ 8
VOUT 5 LV 6
OSC 7
U16
ICL7660
CAP+ 2
CAP- 4
GND 3
V+ 8
VOUT 5 LV 6
OSC 7
U15
ICL7660
C9 10uF
V
I
1
V
O
3
GND 2
U166
7809
C10
1nF
R104
5k
3
2
6
7
4
1
5
U17
LF351
R105
2k
C111
0.1uF
VDD
1
2
J35
SIL-100-02
C12
10uF
1
2
J36
TBLOCK-I2
6
5
4
1
2
U23
OPTOCOUPLER-NPN
R106 1k
R107 100k
VDD
R109100k
D244
DIODE-LED R108390
Q18
BC548
R110
4.7k
R399
100k
D35
DIODE-LED
R390
10k
Q188
BC548
R111
4.7k
R112
100k
D255
DIODE-LED
R113
390
5.0 DESARROLLO DEL CIRCUITO

El diseo del circuito de este trabajo final de grado, se desarroll con el software de
simulacin de circuitos electrnicos, PROTEUS PROFECIONAL 7, en el cual se arm
el diseo y se lo simul.

5.1 CIRCUITO DEL NODO 1 CAN

El diseo realizado se implement fsicamente como se muestra en la Figura 5.1
Como se observa en el diseo, el sistema es compuesto bsicamente por una etapa de
entrada o ingresos de datos, una etapa de salida, que activa los actuadores o elementos
de potencia y una etapa microcontrolada, que lee todas las entradas, codifica los
mensajes CAN a enviar al nodo 2 CAN, activa las salidas, verifica que los datos
enviados sean los correctos y continuaron la lectura de las entradas en forma cclica.



















Figura 5.1, Diseo esquemtico del Nodo 1 CAN
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 39 -
1
2
J1
TBLOCK-I2
6
5
4
1
2
4N25
OPTOCOUPLER-4N25
R2 1k
R3 100k
VDD=5v
R23 100k
D2
DIODE-LED
R25 390
VCC=12v
Entada al micontrolador
A continuacin se describe la composicin de las distintas etapas del sistema.

5.12 ETAPA DE ENTRADA

Este circuito, Figura 5.2, consta principalmente por un optoacoplador 4N24, que est
diseado especialmente para el aislamiento de cualquier cortocircuito y sobretensin
que puedan presentarse en el ingreso de las borneras y daar una de las compuertas del
microcontrolador, de modo que solo trabajar con tensiones TTL al ingreso.
Para este caso todas las seales de entradas sern de 12 voltios, ya que es la
alimentacin principal de todo vehculo.
Los valores de resistencias se eligieron segn las especificaciones del fabricante del CI
4N25 en su hoja de datos.











Figura 5.2, Etapa de entrada del MC1


En la bornera J1, se conectarn los comandos de las luces de guios, balizas, luces de
estacionamientos, bocina, etc, segn sea la configuracin elctrica de cada vehculo en
particular.
El ingreso de la seal al microcontrolador se tomar sobre la patita n 4 del CI 4N25.
Tambin estar provista de un diodo led para una inspeccin visual del ingreso de seal.



Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 40 -
1
2
J13
TBLOCK-I2
RL1
G5CLE-1-DC12
D1 1N4007
Q1
2N2222A
3
2
1
4
1
1
U10:A
LM324
R10
5.6k
R24
10K
VCC= 12v
SALIDA DEL MICROCONTROLADOR
5.13 ETAPA DE SALIDA

Es la encargada de activar y desactivar los actuadores y sensores (bobinas de
contactores, motores pequeos, luces, relays, etc), Figura 5.3.
La informacin leda por las entradas del microcontrolador, son procesadas y enviadas
a la etapas de salidas para que estas sean activadas. Para este caso, las salidas del MC1
activaran una serie de relays de 12 voltios, que pueden manejar una corriente de 10
Amp en DC y 7 Amp en AC.











Figura 5.3, Etapa de salida del MC1

El accionamiento de los relays se realiza mediante un amplificador operacional LM 324,
el cual esta configurado como seguidor de tensin.
Las salidas de los amplificadores operacionales, generan la tensin y corriente
suficientes para el accionamiento de los transistores NPN 2N2222A, que excitan las
bobinas de los relays.
El diodo 1N4007, se coloca por la inversin de tensin que se genera en la bobina del
relay en el momento de su desactivacin, haciendo que descargue su energa por medio
del diodo.





Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 41 -
RA0/AN0
2
RA1/AN1
3
RA2/AN2/VREF-
4
RA4/T0CKI
6
RA5/AN4/SS
7
RE0/AN5/RD
8
RE1/AN6/WR
9
RE2/AN7/CS
10
OSC1/CLKIN
13
OSC2/CLKOUT
14
RC1/T1OSI/CCP2
16
RC2/CCP1
17
RC3/SCK/SCL
18
RD0/PSP0
19
RD1/PSP1
20
RB7/PGD
40
RB6/PGC
39
RB5
38
RB4
37
RB3/PGM
36
RB2
35
RB1
34
RB0/INT
33
RD7/PSP7
30
RD6/PSP6
29
RD5/PSP5
28
RD4/PSP4
27
RD3/PSP3
22
RD2/PSP2
21
RC7/RX/DT
26
RC6/TX/CK
25
RC5/SDO
24
RC4/SDI/SDA
23
RA3/AN3/VREF+
5
RC0/T1OSO/T1CKI
15
MCLR/Vpp/THV
1
U20
PIC16F874
X1
CRYSTAL
C1 22pF
C2 22pF
V
D
D
R10210k
A
2
6
V
R
E
F
(
+
)
1
4
V
E
E
3
G
N
D
2
A
1
5
I O
U
T
4
A
3
7
A
4
8
A
5
9
A
6
1
0
A
7
1
1
A
8
1
2
V
C
C
1
3
V
R
E
F
(
-
)
1
5
C
O
M
P
1
6
U2
DAC0808
T1IN
11
R1OUT
12
T2IN
10
R2OUT
9
T1OUT
14
R1IN
13
T2OUT
7
R2IN
8
C2+
4
C2-
5
C1+
1
C1-
3
VS+
2
VS-
6
U111
MAX232
C3 1F
C4
1F
VCC
1 2 3
J16
SIL-100-03
RA0/AN0
2
RA1/AN1
3
RA2/AN2/VREF-/CVREF
4
RA4/T0CKI/C1OUT
6
RA5/AN4/SS/C2OUT
7
OSC1/CLKIN
9
OSC2/CLKOUT
10
RC1/T1OSI/CCP2
12
RC2/CCP1
13
RC3/SCK/SCL
14
RB7/PGD
28
RB6/PGC
27
RB5
26
RB4
25
RB3/PGM
24
RB2
23
RB1
22
RB0/INT
21
RC7/RX/DT
18
RC6/TX/CK
17
RC5/SDO
16
RC4/SDI/SDA
15
RA3/AN3/VREF+
5
RC0/T1OSO/T1CKI
11
MCLR/Vpp/THV
1
U12
PIC16F873A
X2
CRYSTAL
C11
1nF
C22
1nF
V
D
D
R103
10k
VDD
CAP+
2
CAP-
4
GND
3
V+
8
VOUT
5
LV
6
OSC
7
U16
ICL7660
CAP+
2
CAP-
4
GND
3
V+
8
VOUT
5
LV
6
OSC
7
U15
ICL7660
C9 10uF
V
I
1
V
O
3
GND
2
U166
7809
C10
1nF
R104
5k
3
2
6
7
4
1
5
U17
LF351
R105
2k
C111
0.1uF
VDD
1
2
J35
SIL-100-02
C12
10uF
5.14 ETAPA MICROCONTROLADA

Como se observa en la Figura 5.4, la etapa esta compuesta por dos microcontroladores,
PIC 16F874 y PIC 16F873A, un mdulo de transmisin compuesto por un MAX 232 y
un conversor digital analgico DAC 0808 de 8 bits.






















Figura 5.4, Etapa Microcontrolada del MC1.


Los microcontroladores PIC 16F874 y 16F873A realizan las lecturas de las entradas de
cada pin, modificando cada salida correspondiente con su entrada, y actualizando el
registro del mensaje CAN en su memoria RAM de datos; dichas lecturas son enviadas
al MC2 por medio del puerto USART a travs del bus de datos.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 42 -
Una vez que el nodo 2 CAN recibe los datos, los reenva al nodo 1CAN para realizar un
control sobre los datos enviados, asegurando tambin que se hayan recibido en forma
correcta los mensajes.
En el caso de que los datos enviados no coincidan con los recibidos, el Firmware
detecta que ha ocurrido un error en la transmisin por lo que el MC1 retransmite el
mensaje hasta, que la comparacin de los datos sean los correctamente transmitidos, de
este modo se asegura una transmisin y recepcin sin errores. Esta operacin se ejecuta
3 veces.
Al continuar con la lectura de las entradas en un segundo paso, el MC1 le pregunta al
MC2 que le transmita la digitalizacin del nivel del combustible, una ves que el MC1
recibe la digitalizacin, es almacenada y enviada por los 8 bits de la puerta D en forma
paralela al conversor digital/analgico, DAC 0808, que realiza la conversin y
mediante un acondicionamiento de la seal de salida, produce la deflexin de la aguja
indicadora de nivel de combustible, ubicada en tablero de instrumentos del vehculo.
Para la transmisin de los mensajes CAN se utiliza un conversor MAX232, que es un
circuito integrado que convierte los niveles de las lneas de un puerto serie TTL a
niveles RS232 y viceversa. Lo interesante es que slo necesita una alimentacin de 5V,
ya que genera internamente algunas tensiones que son necesarias para el estndar
RS232. Otros integrados que manejan las lneas RS232 requieren dos voltajes, +12V y -
12V.


5.2 CIRCUITO DEL NODO 2 CAN

Como se puede observar en la Figura 5.5, las etapas de salidas son las mismas que las
utilizan para el nodo 1 CAN, y deber accionar los relays, actuadores y sensores que
disponga en la parte trasera del vehculo.
La etapa microcontrolada la conforma un PIC 16F873A, en el cual se program para
recibir las rdenes del nodo 1 CAN y ejecutarlas, activar y controlar los sensores de
estacionamientos y digitalizar la posicin del sensor de nivel de combustible. Los
sensores de estacionamiento estarn ubicados en el parachoques trasero del vehculo.
Cabe aclarar que como se realizar el armado de una placa experimental de laboratorio
solo se trabajara con un solo sensor medidor de distancia, debido a que es un
componente de importacin, y el pedido debi realizarse al exterior de la Argentina. El
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 43 -
1
2
J1
TBLOCK-I2
RL1
G5CLE-1-DC12
D8 1N4007
Q8
2N2222A
12
13
14
4
1
1
U11:D
LM324
R17
5.6k
R16
390
1
2
J2
TBLOCK-I2
RL2
G5CLE-1-DC12
D7 1N4007
Q7
2N2222A
10
9
8
4
1
1
U11:C
LM324
R15
5.6k
R14
390
1
2
J3
TBLOCK-I2
RL3
G5CLE-1-DC12
D6 1N4007
Q6
2N2222A
5
6
7
4
1
1
U11:B
LM324
R13
5.6k
R12
390
1
2
J4
TBLOCK-I2
RL4
G5CLE-1-DC12
D5 1N4007
Q5
2N2222A
3
2
1
4
1
1
U11:A
LM324
R11
5.6k
R10
390
1
2
J5
TBLOCK-I2
RL5
G5CLE-1-DC12
D4 1N4007
Q4
2N2222A
12
13
14
4
1
1
U10:D
LM324
R9
5.6k
R8
390
RA0/AN0
2
RA1/AN1
3
RA2/AN2/VREF-/CVREF
4
RA4/T0CKI/C1OUT
6
RA5/AN4/SS/C2OUT
7
OSC1/CLKIN
9
OSC2/CLKOUT
10
RC1/T1OSI/CCP2
12
RC2/CCP1
13
RC3/SCK/SCL
14
RB7/PGD
28
RB6/PGC
27
RB5
26
RB4
25
RB3/PGM
24
RB2
23
RB1
22
RB0/INT
21
RC7/RX/DT
18
RC6/TX/CK
17
RC5/SDO
16
RC4/SDI/SDA
15
RA3/AN3/VREF+
5
RC0/T1OSO/T1CKI
11
MCLR/Vpp/THV
1
U1
PIC16F873A
1 2
J6
TBLOCK-I2
RL6
G5CLE-1-DC12
D3
1N4007
Q3
2N2222A
1
0
9
8
4 11
U10:C
LM324
R7
5.6k
R6
390
1 2
J7
TBLOCK-I2
RL7
G5CLE-1-DC12
D2
1N4007
Q2
2N2222A
5 6
7
4 11
U10:B
LM324
R5
5.6k
R4
390
1 2
J8
TBLOCK-I2
RL8
G5CLE-1-DC12
D1
1N4007
Q1
2N2222A
3 2
1
4 11
U10:A
LM324
R3
5.6k
R2
390
VCC
X1
CRYSTAL
C1 22pF
C2 22pF
VDD
R1 10k
T
1
I N
1
1
R
1
O
U
T
1
2
T
2
I N
1
0
R
2
O
U
T
9
T
1
O
U
T
1
4
R
1
I N
1
3
T
2
O
U
T
7
R
2
I N
8
C
2
+ 4
C
2
- 5
C
1
+ 1
C
1
- 3
V
S
+
2
V
S
-
6
C3
1F
C4
1F
1
2
3
J16
SIL-100-03
1
2
J10
TBLOCK-I2
Sensor de combustible
C5
1uF
C6
1uF
3
2
1
4
1
1
U3:A
LM324
R18
10k
1
2
3
J9
TBLOCK-I3
Sensor medidor
de distancia
RL9
OJ-SH-105HM
Q9
2N2222A
R19
5.6k
D9 1N4007
VI
1
VO
3
G
N
D
2
U133
7805
VI
1
VO
3
G
N
D
2
U14 7812
C7
0.22uF C8
0.1uF
C9
0.22uF
C10
0.1uF
VDD
VCC
1
2
J177
TBLOCK-I2
Q18
BC548
R110
4.7k
R399
100k
D35
DIODE-LED
R390
10k
Q188
BC548
R111
4.7k
R112
100k
D255
DIODE-LED
R113
390
diseo de este sistema est pensado para la colocacin de tres de estos sensores,
dispuestos en forma lineal y equidistante uno de otro, para lograr cubrir todo el largo del
parachoques.
Al igual que en el nodo 1CAN, utiliza el puerto serie USART de comunicacin con el
conversor de normas TTL a RS232, en su encapsulado MAX 232.
Para la medicin del nivel de combustible se dar una breve explicacin del
funcionamiento del sistema de medicin de nivel de combustible que utilizan la gran
mayora de los automviles.






















Figura 5.5, Diseo esquemtico del MC 2



Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 44 -
5.21 INDICADOR DEL NIVEL DE COMBUSTIBLE

Para indicar en todo momento la cantidad de combustible disponible en el depsito, la
mayora de los automviles tienen en el tablero de instrumentos un indicador de aguja o
digital que indican la lectura; Figura 5.6.









Figura 5.6, Indicador de tablero

Aunque hay casos donde el indicador est directamente calibrado en unidades de
volumen, litros o galones, lo ms comn es que ste indicador muestre la cantidad
relativa de combustible que queda en el tanque, en relacin con el depsito lleno. Est
demostrado que es mas fcil hacerse una idea de las reservas actuales con solo dar un
vistazo a la aguja. La mayora de los sistemas indicadores de nivel de combustible en
los vehculos estn formados por los siguientes elementos:
1. Un sensor de nivel que da una salida proporcional al nivel del depsito.
2. Un elemento indicador en el tablero que muestra la magnitud de la salida del
sensor y tiene su escala calibrada en valores de nivel.
Todos los combustibles utilizados en los vehculos son lquidos, aunque existen equipos
de gas natural comprimido, los combustibles lquidos forman olas dentro del depsito
durante la circulacin del coche debido a las aceleraciones, as como al empuje lateral
en las curvas. Estas olas hacen que sea difcil determinar el nivel del combustible real en
un instante de tiempo cuando el coche circula, si no se dispone de un sistema adecuado,
la aguja del indicador estara constantemente movindose en la escala, y la
determinacin del nivel verdadero por el conductor sera muy imprecisa. Para minimizar
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 45 -
este efecto los sistemas de medicin de combustible usan ciertos artificios que casi
eliminan el problema del cambio de nivel debido a las olas. Entre ellos se pueden
mencionar:
1. Utilizacin de tabiques divisorios "rompe olas" dentro del depsito.
2. Colocacin del sensor en la zona central del depsito donde el efecto de
incremento del nivel por las olas es menor.
3. Utilizacin de sensores de nivel con movimiento amortiguado o demorado para
que no reaccionen con rapidez y no copien el perfil de las olas.
4. Utilizacin de indicadores en el tablero de lenta respuesta.
5.22 SENSOR DE NIVEL DE COMBUSTIBLE

En este trabajo final de grado se utiliz el sensor de un Fiat Regatta, el cual se desarm
y se realizaron las medidas de resistencia; Imagen 5.7.

















Imagen 5.7, Sensor de nivel de combustible
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 46 -
La Figura 5.8 muestra un esquema de como est construido el sensor de nivel que se
coloca en el tanque de los vehculos. El cuerpo metlico del sensor est montado en la
superficie del depsito y tiene un flotador en el extremo de una palanca giratoria cuya
posicin depender del nivel del lquido. El otro extremo de la palanca del flotador tiene
un contacto deslizante sobre una resistencia elctrica que se mueve en sincronizacin
con l, de manera que la posicin del contacto sobre la resistencia tambin depender
del nivel del lquido en el depsito.
Esta resistencia se conecta en serie con el indicador del tablero, de forma tal que el
circuito se cierra a tierra por la va resistencia => palanca de flotador => cuerpo del
sensor => cuerpo del depsito.
De todo esto se desprende que para cada valor del nivel en el depsito, corresponder un
valor de resistencia en serie con el indicador del tablero y por tanto una indicacin de la
aguja en la escala.













Figura 5.8, Sensor de nivel de combustible


En la Imagen 5.9, se pueden observar las caractersticas de este sensor de nivel de
combustible que est instalado en el Fiat Regatta, anteriormente mencionado, pero el fin
de esta imagen es para mostrar que dispone de un amortiguador mecnico, para evitar
que el indicador del tablero de instrumentos, copie las formas de las olas que se forman
en el interior del tanque de combustible, por los movimientos del vehculo.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 47 -
Este amortiguador est formado por un pequeo pistn, que va sujeto al brazo del
flotador, dentro de un cilindro, que al estar sumergido en el combustible el cilindro se
llena y el trabajo del pistn se ve frenado por el fluido evitando el copiado de las olas
dentro del tanque.
La resistencia elctrica mxima que se midi es de aproximadamente R = 390 .


Imagen 5.9, Sensor de nivel de Fiat Regatta












Amortiguador Mecnico

A continuacin se explicar el funcionamiento de este sistema integrado al nodo 2
CAN.

Cuando el nodo 1CAN le pregunta al nodo 2CAN por el estado del nivel de
combustible, en primer lugar realiza la comprobacin del mensaje CAN. Una vez que
reconoce el mismo, procede a realizar la digitalizacin de la lectura del sensor de nivel
de combustible a travs del conversor A/D de 10 bits integrado en microcontrolador,
que luego la almacena en la memoria de datos, actualiza el registro de mensaje CAN y
lo enva al nodo 1CAN, encargndose este de mostrarlo en el indicador del tablero de
instrumento del vehculo.
Debido al alto costo de este sensor, en el armado de circuito experimental de prueba se
realiza la simulacin del sensor con el circuito mostrado en la Figura 5.10.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 48 -
RV 500
PRESET
VDD= 5v
Asia el RA0 del PIC nodo 2CAN








Figura 5.10, Representacin de sensor de combustible

Por lo tanto la variacin de tensin ser de 0 a 5 voltios, que en la prctica esto se
calibrar para cada sensor de combustible usado en el vehculo.

5.23 SENSOR DE ESTACIONAMIENTO

Con respecto al ingreso de seal del sensor de estacionamiento, se utilizo el GP2D12,
de SHARP, Figura 5.11.
El Sharp GP2D12 es un sensor medidor de distancias por infrarrojos que indica
mediante una salida analgica la distancia medida. La tensin de salida vara de forma
no lineal cuando se detecta un objeto en una distancia entre 10 y 80 cm. La salida esta
disponible de forma contina y su valor es actualizado cada 32 mseg. El sensor utiliza
solo una lnea de salida para comunicarse con el microcontrolador. La tensin de
funcionamiento es de 5 voltios, Temperatura funcionamiento:-10 a 60C y consumo
medio de 35 mA.









Figura 5.11, Sensor medidor de distancia
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 49 -
Cuando el conductor coloca la reversa, el MC1 lee la entrada correspondiente, actualiza
el registro mensaje CAN lo enva al nodo 2CAN, para que encienda las luces de reversa
y active el sensor medidor de distancia.
El nodo 2CAN le responde al nodo 1CAN cuando ha encontrado algn obstculo
cercano, el cual es el encargado de activar una seal sonora y luminosa, indicando la
proximidad de una colisin. En el momento en que se retira la reversa, el MC1 le enva
un mensaje CAN ordenando que apague las luces de reversa y desactive el sensor
medidor de distancia.
Cabe aclarar que como es un sensor con salida de tensin analgica, se debi
acondicionarla y calibrarla para una distancia de aproximadamente 60 cm, segn la
curva del fabricante, Figura 5.12.












Figura 5.12, Curva de respuesta del sensor.


El circuito calibrador de la Figura 5.13 utilizado consta de un amplificador operacional
LM741, configurado como comparador de tensin, alimentado con 5 voltios.
El divisor resistivo se dise para una tensin comparacin de 1voltio, que representa
una distancia aproximada de 60 cm.




Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 50 -
2 1
2
R R
R
Vin Vout
+
=
2 1
2
5 1
R R
R
+
=

2 2 . 0 1 2 . 0 2 R R R + =
1 2 . 0 2 8 . 0 R R =

O = K R 5 . 2 2











Figura 5.13, Circuito calibrador de distancia.












Elijo R1 = 10K
Vin = 5 v
Vout = 1 v


Por lo tanto para su calibracin se utiliz un preset de 2.7K, que es lo normalizado.



3
2
1
4
1
1
U1:A
LM324
R2
10K
R1
22k
VCC=5v
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 51 -

6.0 DISEO DEL FIRMWARE
Como ya se mencion anteriormente, el desarrollo del Firmware CAN se realiz con el
software, MPLAB IDE en su versin 8.0.
Para este diseo se realizo el siguiente diseo de diagrama de flujo perteneciente al PIC
16F874 del nodo 1 CAN:

6.1 DIAGRAM DE FLUJO DEL PIC 16F874 DEL NODO 1 CAN
El siguiente diagrama de flujo, Figura 6.1, representa al Firmware programado en el
PIC 16F874:























Figura 6.1, Diagrama de flujo del firmware del PIC 16F874
Inicializacin
Inicio
Configuracin de
perifricos y registros
Configuracin del
registro de mensajes CAN
Lectura de comando de luces
de guios y balizas
Actualizacin del registro
mensaje CAN y
Activacin/desactivacin de
actuadores locales
Lectura de comandos de
cierre central y luces de
estacionamiento/Tablero
Lectura de
comando de
encendido del
vehculo

Actualizacin del registro
mensaje CAN y
Activacin/desactivacin de
actuadores locales
Envo del mensaje CAN al
nodo 2 CAN y control de
errores
1
2
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 52 -
































Figura 6.1, Diagrama de flujo del firmware del PIC 16F874 (Continuacin)

1
Lectura de comando de luces
de estacionamiento/Tablero,
luz de stop, desempaador de
cristal trasero y cierre
centralizado de puertas.
Actualizacin del registro
mensaje CAN y
Activacin/desactivacin de
actuadores locales
Envo del mensaje CAN al
nodo 2 CAN y control de
errores
Lectura de comandos de luz de
reversa y sensor de combustible
Actualizacin del registro
mensaje1 CAN y
Activacin/desactivacin
Envo del mensaje1 CAN
al nodo 2 CAN y control
de errores
Activacin de actuadores de
sensor medicin de distancia /
Muestra de digitalizacin del
sensor de combustible
Fin
2
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 53 -
6.2 FUNCIONAMIENTO DEL FIRMWARE DEL PIC 16F874 DEL NODDO 1
CAN
A continuacin se explicar el funcionamiento del Firmware que se program en el
microcontrolador PIC 16F874, del nodo 1 CAN.

El funcionamiento del Firmware, se basa en la lectura de cada una de los pines del
microcontrolador, programadas como entradas de seal digital. En cada lectura, muestra
la salida correspondiente en la parte delantera del vehculo, que es la activacin local de
los actuadores y sensores, si esta corresponde a una entrada cuya accin se ejecuta en el
nodo 1CAN, luego modifica cada bit de un registro que se encuentra almacenado en la
memoria de programa con un tamao de 1 byte y ocupa la posicin fsica 0x21hex.,
llamado MSJ CAN, el cual corresponde a una primera parte de las entradas ledas.
Cabe aclarar que todas las posiciones de la memoria de programa y memoria de datos
son de un tamao de 8 bits = 1 byte.
La programacin del puerto de comunicacin serie USART se ha configurado como
sistema asncrono (Full Duplex), esto significa que la transmisin de datos es
bidireccional. La velocidad de transmisin se la configur en 9600 Baudios.
En la Figura 6.2 se muestra la organizacin de cada bit del MSJ CAN:

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
0 -- X X X X X X

X: puede tomar valores de 0 o 1 lgicos

Figura 6.2, Organizacin del MSJ CAN

Bit 7: Corresponde al mensaje (MSJ CAN), de las siete primeras lecturas, siempre tiene
el valor lgico 0.

Bit 6: No se usa.

Bit 5: Corresponde al cierre centralizado. El ingreso de la seal se hace en bit 0 del
puerto C y su salida en la parte delantero por el bit 4 del puerto B y el bit 6 del puerto B
en el nodo 2.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 54 -

Bit 4: Corresponde al desempaador de cristal trasero (Luneta), en este caso la
ejecucin de la salida ser llevada a cabo por el nodo 2.

Bit 3: Corresponde a la luz de stop, al igual que en el caso anterior, la ejecucin de la
salida ser realizada por el nodo 2.

Bit 2: Corresponde a la luz de estacionamiento/tablero, El ingreso de la seal se hace en
el bit 1 del puerto A y su salida por el bit 0 del puerto B del nodo 1 y el bit 0 del puerto
B en el nodo 2.

Bit 1 y Bit 0: Corresponden a las luces de guio y balizas. El ingreso de la seal se hace
en bit 1 y 3 del puerto A y sus salidas en la parte delantera por el bit 1 del puerto B (luz
de guio derecho), bit 2 del puerto B (luz de guio izquierdo), bit 3 del puerto B(luz de
balizas) y el bit 1 (luz de guio izquierdo), bit 2 (luz de guio derecho), bit 3(luz de
balizas), del puerto B en el nodo 2.
La interpretacin del programa a estas dos entradas, bit 1y 3 del puerto A, se resuelve
con la siguiente Tabla 6.21:


Puerta A, bit 1 Puerta A, bit 2
Interpretacin
0 0 Apago luz de guios y balizas
0 1 Activo Luz de Guio Izquierdo
1 0 Activo Luz de Guio Derecho
1 1 Activo Luz de Balizas

Tabla 6.21, Interpretacin Bit 1 y 3 Puerta A

Cuando se completa todo el byte del MSJ CAN, se lo enva al nodo 2 CAN para su
ejecucin.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 55 -
Con respecto a la segunda parte de lectura de los pines y al igual que en el MSJ CAN,
aqu se modifica otro registro llamado MSJ1 CAN, que se encuentra en la memoria de
programa, cuya posicin fsica esta en la 0x21hex.
En la Figura 6.22 se muestra la organizacin de cada bit del MSJ1 CAN:

Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
1 -- -- -- -- -- X X

X: puede tomar valores de 0 o 1 lgicos

Figura 6.22, Organizacin del MSJ1 CAN


Bit 7: Corresponde al segundo mensaje (MSJ1 CAN), siempre tiene el valor lgico 1.

Bit 6, Bit 5, Bit 4, Bit 3, Bit 2: No se usan, se dejan libres para alguna otra aplicacin.

Bit 1: Corresponde a luz de reversa/sensores de estacionamiento, El ingreso de la seal
de luz de reversa se hace en bit 0 del puerto C y su salida por el bit 5 del puerto B en el
nodo 2 CAN, esta salida adems de encender la luz de reversa, activa los sensores de
estacionamiento cuya entrada de seal lo hace por el bit 1 del puerto A.

Bit 0: Corresponde al sensor de nivel de combustible, El ingreso de la seal se hace en
bit 0 del puerto A en el nodo 2 CAN que fue programado para que funcione como
entrada de seal analgica, y su salida por los 8 bits del puerto D en el nodo 1 CAN.


La Tabla 6.23 muestra los valores lgicos que pueden tomar los bits 1 y 0 de del
registro MSJ1 CAN y su interpretacin por parte del nodo 2 CAN:




Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 56 -


Tabla 6.23, Interpretacin de los bits 1 y 0 del MSJ1 CAN


En el segundo mensaje (MSJ1 CAN) la lectura del bit 0 del puerto C, que corresponde a
luz de reversa/sensores de estacionamiento, es la que decide sobre cual pregunta debe
hacer el nodo 1 y esperar la repuesta correspondiente por parte del nodo 2 CAN.
En funcionamiento normal el nodo 1CAN le pregunta por el estado del sensor de nivel
de combustible, en cada envo del mensaje MSJ1 CAN, devolviendo el nodo 2 la
digitalizacin del mismo y lo almacena en un registro llamado Sencom, que se
encuentra en la posicin fsica 0x24hex., para ser convertida en una seal analgica por
el DAC 0808, colocado en la puerta D.
En el caso que el vehculo est realizando maniobras de estacionamiento en reversa, el
nodo 1 deja de preguntar por el nivel de combustible, ya que la lectura del bit 0 del
puerto C se encuentra en nivel lgico 1 y comienza a preguntar por el estado de los
sensores de estacionamiento, el cual al detectar un obstculo cercano, se pone un nivel
lgico 1 en el bit 1 de la puerta A del nodo 2 CAN, enviando el mensaje de aviso al
nodo 1. Cuando este lo recibe es almacenado en un registro llamado Sensor que ocupa
la posicin fsica 0x23hex., de la memoria de programa, y luego lo muestra encendiendo
una seal luminosa y sonora por los bits 6 y 5 del puerto B respectivamente.
Al retirar la reversa del vehculo, el nodo 1 apaga las seales sonoras y luminosas, y
contina preguntando en el MSJ1 CAN, por el estado del nivel de combustible.
Cabe aclarar que mientras se realizan estas operaciones el nodo 1 sigue leyendo,
enviando y recibiendo el primer mensaje (MSJ CAN).



MSJ1, bit 1 MSJ1, bit 0
Interpretacin
0 0 No hace nada
0 1 Pregunta nivel de combustible
1 0 Pregunta si encontr obstculo cercano
1 1 No hace nada
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 57 -
6.3 DIAGRAM DE FLUJO DEL PIC 16F873A DEL NODDO 1 CAN

En la Figura 6.3 se muestra el diagrama de flujo representa al Firmware programado en
el PIC 16F873A:







Apagado


Encendido

















Figura 6.3, Diagrama de flujo del firmware del PIC 16F873A

INICIO
Inicializacion
Lectura de comando de
luz de interior,
pulsadores de puertas y
bocina
Lectura de comando de
luz baja.
Activacin/Desactivacin
de actuadores locales.
Lectura de
comando de
encendido del
vehculo

Activacin/Desactivacin
de actuadores locales.
Lectura de comando de
luz alta.
Activacin/Desactivacin
de actuadores locales.
Lectura de comando de
luz Interior.
Activacin/Desactivacin
de actuadores locales.
Lectura de comando de
Aire acondicionado.
Activacin/Desactivacin
de actuadores locales.
1
2
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 58 -






























Figura 6.3, Diagrama de flujo del Firmware del PIC16F873A (Continuacin)








FIN
Lectura de comando de
ventilacin 1.
Activacin/Desactivacin
de actuadores locales.
1
Lectura de comando de
ventilacin 2.
Activacin/Desactivacin
de actuadores locales.
Lectura de pulsador de
puertas.
Activacin/Desactivacin
de actuadores locales.
Lectura de comando de
limpia parabrisa 1.
Activacin/Desactivacin
de actuadores locales.
Lectura de comando de
limpia parabrisa 2.
Activacin/Desactivacin
de actuadores locales.
Lectura de comando de
Bocina..
Activacin/Desactivacin
de actuador local.
2
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 59 -
6.4 FUNCIONAMIENTO DEL FIRMWARE DEL PIC 16F873A DEL NODDO 1
CAN

Este Firmware realiza las operaciones de lectura y ejecucin de los pines del
microcontrolador PIC 16F873A, el cual ha sido programada como entradas/salidas
digitales, controlando los comandos que solo tienen accin en la parte delantera del
vehculo.
En primer lugar la lectura comienza por el bit 6 de la Puerta B, para comprobar si el
vehculo esta con llave en posicin de contacto o apagado. Cabe aclarar que si el motor
esta en marcha, la lectura del bit 6 de la Puerta B ser interpretada como si estuviera con
la llave en posicin de contacto, ya que cumple la misma funcin.
Si el vehculo esta apagado solo se limita a la inspeccin y activacin/desactivacin, de
los comandos de luces de interior, pulsadores de apertura de puertas y bocina.
Si esta encendido, el Firmware trabaja con todas las lecturas programadas para cada pin.
Estas lecturas se repiten de igual manera en forma cclica, tal como lo indica la cantidad
de entradas a manejar por este microcontrolador.
La organizacin de cada entrada y salida se la detall en el captulo 4.21, asignacin
funcional de cada pin del PIC 16F873A en el nodo 1CAN.

6.5 DIAGRAM DE FLUJO DEL FIRMWARE DEL NODDO 2CAN

El siguiente diagrama de flujo, Figura 6.5, representa al Firmware programado en el
PIC 16F873A:



NO SI


MSJ CAN MSJ 1 CAN



Figura 6.5, Diagrama de flujo del Firmware del nodo 2CAN
INICIO
Inicializacion
Almacena mensaje CAN
recibido.
Ingreso
mensaje
CAN?

3
Decodifica dato
y clasifica si es
MSj CAN o
MSJ 1CAN?

1
2
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 60 -

















Combustible Sensores de estacionamiento














Figura 6.5, Diagrama de flujo del Firmware del nodo 2CAN (continuacin)

1
Devolucin de mensaje
CAN, para comprobacin
de errores en nodo 1CAN
Decodificacin del MSJ
CAN y
Activacin/desactivacin
de sensores y actuadores
3
2
Decodificacin del MSJ 1
CAN
Peticin de
combustible o
peticin de
sensor de
estacionamiento?

Digitalizacin del sensor
de nivel de combustible y
almacenamiento.
Envi mensaje CAN con
digitalizacin del nivel de
combustible al nodo 1
CAN.
Activacin de actuador,
activacin del sensor
medidor de distancia.
Deteccin de obstculo
cercano, envi de mensaje
CAN con localizacin
encontrada.
3
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 61 -
6.6 FUNCIONAMIENTO DEL FIRMWARE DEL NODDO 2 CAN

El programa principal de este Firmware, consiste en la recepcin de los mensajes CAN
enviados por el nodo 1 CAN.
Una vez que se recibe el mensaje, se activa la seal de bandera de sealizacin del bit
RCIF, del registro PIR1, el dato se almacena en un registro llamado mensaje , que
ocupa la posicin fsica de la memoria de programa 0x20 hex., luego comienza con la
lectura del bit 7 del byte recibido para identificar cual de los mensajes, MSJ CAN o
MSJ1 CAN, deben ser ejecutados en este nodo.
Los dos posibles mensajes enviados por el nodo 1 CAN se especificaron en el captulo
6.2.
En el caso de que el byte recibido corresponda al MSJ CAN, esto significa que el bit 7
contiene un cero (0) lgico. La primera instruccin es la retransmisin del mensaje
CAN recibido, para que el nodo 1 CAN realice la comparacin y as asegurar que el
dato fue recibido y transmitido sin errores por el nodo 2 CAN.
En caso de que la comparacin de errnea, el nodo 1 CAN transmite nuevamente el
byte. Esta operacin llevada a cabo por el nodo 1 CAN lo puede repetir tres veces antes
de continuar con la lectura de las dems entradas.
Cabe aclarar que el sistema de muestreo del puerto de comunicacin USART de los
microcontroladores, realiza tres veces la captura de cada bit recibido por medio de un
circuito detector de mayora que determina el valor alto o bajo del dato recibido, antes
de ser almacenado.
Luego contina con la lectura de los bits 1 y 0, del registro mensaje, que en este caso
corresponden a la luz de guio y balizas y realiza las decisiones segn la siguiente Tabla
6.6:

Mensaje, bit 1 Mensaje, bit 0 Decisin
0 0 Apaga luz de guios y balizas
0 1 Enciende luz de guio Izquierdo
1 0 Enciende luz de guio derecho
1 1 Enciende luz de balizas

Tabla 6.6, respuesta a lectura de los bit 1 y 0 de mensaje
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 62 -
La salida se activa poniendo un 1 lgico en los bits de la puerta B, con la siguiente
posicin: bit 1 para la luz de guio derecho, luz de guio izquierdo bit 2 y las balizas
por el bit 3.
La lectura del bit 2 del registro mensaje le corresponde a la luz de estacionamiento, la
cual si se encuentra en 1 lgico, activa la salida por el bit 0 de la puerta B, en caso
contrario se desactiva el bit.
El bit 3, del mensaje, es de la luz de stop y su salida se activa en el bit 4 de la puerta B,
encendindolo en caso de un 1 lgico y apagndolo en caso de un 0.
Continuando con la decodificacin del registro mensaje, el bit 5 le corresponde al cierre
centralizado, activando el bit 6 del puerto B en caso de un 1 lgico y desactivando en
caso contrario, 0 lgico.
Por ltimo el bit 4 corresponde al desempaador de cristal trasero, cuya salida activa el
bit 7 del puerto B, con un 1 lgico y la desactiva con un 0 lgico.

Para el caso en que el byte recibido corresponda al MSJ1 CAN, el bit 7 del registro
mensaje debe ser igual a uno.
La primera lectura que efecta, es sobre los bits 1 y 0, del mensaje, decidiendo segn lo
muestra la Tabla 6.61



Mensaje1, bit 1 Mensaje1, bit 0 Respuesta
0 0 No responde nada(Mensaje CAN libre)
0 1 Digitalizacin de nivel de combustible
1 0 Estado de sensores de estacionamiento
1 1 No responde nada(Mensaje CAN libre)


Tabla 6.61, Respuesta del nodo 2 CAN.

Primero se considera el caso en el que el nodo 1 CAN le pregunte por el nivel de
combustible en el tanque.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 63 -
Seg
MHz F
T
OSC
OSC
25 . 0
4
1 1
= = =
La rutina comienza con el llamado a la subrutina de medicin de combustible, en la cual
se realiza la digitalizacin de la tensin sobre la resistencia del sensor medidor de
combustible, en el cual se utilizo el circuito mostrado en la Figura 5.91, del capitulo
5.22, que es la representacin del sensor instalado en el vehculo.
Luego se realiza la configuracin de los registros ADCON 1 y ADCON 0, que son los
registro de configuracin de las lneas de la puerta A y control de operacin del
conversor A/D, respectivamente.
Se designa como TAD el tiempo que dura la conversin de cada bit y en el caso de usar
los 10 bit, se requiere un tiempo mnimo de 12TAD. Para el caso de este trabajo final de
grado se van a utilizar 8 bits para lo cual se necesita un mnimo de 10TAD.
El valor de TAD se selecciona por software mediante los bits ADCS1 y ADCS0, del
registro ADCON0, que en el caso del PIC 16F873A nunca debe ser menor a 1,6 Seg.
Para este caso se realizan los siguientes clculos:


El TOSC utilizado es de












Tabla 6.62, Valores de TAD



Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 64 -
Seg x x xT T
OSC AD
2 10 25 . 0 8 8
6
= = =

Segn la configuracin de los bits ADCS1, ADCS0, Tabla 6.62, y el cristal de cuarzo
que se utiliza para este proyecto final de grado (FOSC = 4Mhz), se elige el siguiente
TAD:




Una vez terminada la conversin, el valor de la conversin se la almacena en un registro
llamado conbust, cuya posicin en la memoria de programa es la 0x21 hex.
Luego se enva el dato al nodo 1CAN para mostrarse en el tablero de instrumentos.

La segunda consideracin es cuando el usuario coloca la reversa y el nodo 1CAN le
ordena la activacin de las luces de reversa y activa los sensores de estacionamiento, al
nodo 2 CAN.
La rutina comienza con la activacin de las luces de reversa y los sensores de
estacionamiento, por el bit 5 del puerto B.
Contina preguntando, si se encontr algn obstculo cercano por medio del bit 1 de la
puerta A, programada como entrada digital.
En el caso de encontrar obstculo cercano se actualiza el registro sensor y se
configura el mensaje CAN para ser enviado al nodo 1 CAN, en caso contrario se coloca
se actualiza el registro sensor , seguido de la actualizacin del mensaje CAN y se
enva al nodo1 CAN, culminando con la decodificacin y ejecucin de las ordenes
recibidas del nodo1 CAN y volviendo al programa principal a la espera de una nueva
orden.










Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 65 -
7.0 INTEGRACION HARDWARE - SOFTWARE

En este captulo se explicar como se implementan los diseos de los nodos 1 CAN y
nodo 2 CAN, en un montaje experimental de prueba.
En la siguiente Figura 7.0 se muestra el montaje experimental del nodo 1 CAN.



1 10
2
3 11
4 5
6
12
9 7
13


8


Figura 7.0, Fotografa del Nodo 1 CAN


Donde:
1. Microcontrolador PIC 16F874
2. Microcontrolador PIC 16F873A
3. Max 232, Interfase TTL a RS232.
4. Dip Swich 8, simulacin de entradas locales.
5. Pulsadores de simulacin de entradas locales (delanteras) y traseras.
6. DAC 0808, conversor Analgico/Digital de 8 bits paralelo, para
descodificacin de nivel de combustible.
7. LF 351, Amplificador Operacional.
8. Vumetro para simulacin de indicador de combustible en tablero de
instrumentos.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 66 -
9. Simulacin de salidas locales.
10. Simulacin de salidas locales y del sensor de estacionamiento.
11. Bus de comunicacin de datos CAN (transmisin/recepcin), con nodo 2
CAN.
12. Alimentacin de tensin negativa para el DAC 0808.
13. Experimentor.


El circuito de la Figura 7.0, diseado en Proteus 7 Professional, fue armado y simulado
creando el PCB y la imagen en tres dimensiones (3D) del nodo 1 CAN.
A continuacin se muestra en la Figura 7.1 el circuito impreso ( PCB) del nodo 1 CAN:




















Figura 7.1, Circuito impreso del Nodo 1 CAN


Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 67 -
En las siguientes Figuras 7.2 y 7.3, se muestran las simulaciones en tres dimensiones
(3D) :













Figura 7.2, Placa final del nodo 1 CAN en 3D, vista superior.
















Figura 7.2, Placa final del nodo 1 CAN en 3D, vista inferior.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 68 -
En la siguiente Figura 7.3 se muestra el montaje experimental del nodo 2 CAN.




1 2



3 4
5


6


7

8




Figura 7.3, Fotografa nodo 2 CAN.


Donde:

1. Microcontrolador PIC 16F873A.
2. Simulacin de salidas traseras.
3. Max 232, Interfase TTL a RS232.
4. Bus de comunicacin de datos CAN (transmisin/recepcin), con nodo 1
CAN.
5. Preset mutivueltas, simulacin del sensor medidor de nivel de combustible.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 69 -
6. Amplificador Operacional LM 324.
7. Preset multivueltas para calibracin del sensor de estacionamiento.
8. Sensor medidor de distancias GP2D12.

Al igual que en el nodo 1 CAN, el nodo 2 CAN tambin se ha diseado en Proteus 7
Professional, fue armado y simulado creando el PCB y la imagen en tres dimensiones
(3D).
A continuacin se muestra en la Figura 7.4 el circuito impreso ( PCB) del nodo 2 CAN:





















Figura 7.4, Circuito impreso del nodo 2 CAN




Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 70 -
En las siguientes Figuras 7.5 y 7.6, se muestran las simulaciones en tres dimensiones
(3D) del nodo 2 CAN:













Figura 7.5, Placa del nodo 2 CAN en 3D, vista superior.
















Figura 7.6, Placa del nodo 2 CAN en 3D, vista inferior.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 71 -
7.1 PUREBA DEL SISTEMA EXPERIMENTAL

Cabe aclarar que para esta prueba no se incluyen los circuitos de las etapas de entradas y
salidas, debido a que es una prueba experimental del funcionamiento del hardware y el
firmware programados en los microcontroladores del nodo 1 CAN y nodo 2 CAN.
En la Figura 7.7 se muestra el sistema experimental completo.
















Figura 7.7, Fotografa del sistema experimental.


Despus de realizar la programacin y el depurado del Firmware, se grabaron los tres
microcontroladores PIC, con el programador UPP-628, anteriormente expuesto en el
captulo 3.10.
Se procede al armado y conexionado del los nodo 1CAN y nodo 2 CAN, se lo pone en
marcha y se comprueba el buen funcionamiento de las entradas / salidas locales y
traseras.
Luego se realiz el calibrado del sensor medidor de distancia para una distancia
aproximada de 50 cm, comprobando su buen funcionamiento.
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 72 -
En las Figuras 7.8 y 7.9 se muestran las imgenes del sensor de estacionamiento
detectando un obstculo y activando en el nodo 1CAN las salidas correspondientes.














Figura 7.8, Fotografa del sensor de estacionamiento en funcionamiento.















Figura 7.9, Fotografa del sensor de estacionamiento en funcionamiento.

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 73 -
Luego se realiz el calibrado del sensor de nivel de combustible mediante un preset
multivueltas de 5 K conectado en serie con el vumetro, que representara al indicador
de nivel de combustible en el tablero de instrumental del vehculo.
Cabe aclarar que este vumetro tiene una resistencia interna de 4.7 K.
Posteriormente se tomaron las siguientes lecturas de tensin a la salida del amplificador
operacional LF 351 conectado a la salida del conversor analgica / digital DAC 0808,
en el cual se realiz la configuracin propuesta por el fabricante en su hoja de datos.
Comenzando con la variacin del preset multivueltas que simula al sensor de
combustible en el nodo 2 CAN, se tomaron las siguientes lecturas mostradas en la
siguiente Tabla 7.9:




Lectura del nodo 2
CAN[V]
Salida del
Amplificador LF351
[V]
4.25 4.20
4.00 4.05
3.80 3.85
3.60 3.65
3.40 3.45
3.20 3.23
3.00 3.03
2.80 2.83
2.60 2.63
2.40 2.43
2.20 2.21
1.80 1.81
1.40 1.41
0.80 0.79
0.30 0.28
0.20 0.0

Tabla 7.9, Lectura tomadas de la digitalizacin del nivel del combustible

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 74 -
Con estas lecturas tomadas de la digitalizacin se procedi a la calibracin del
instrumento indicador de nivel de combustible en el cual para una tensin de 4.20
voltios, a la salida del LF351, el indicador debe marcar tanque lleno, y para 0 voltios
tanque vaco, esto se logr con el ajuste del preset conectado en serie con el vmetro,
marcando una resistencia de 4.22 .
En la siguiente Figura 7.91 se muestra la digitalizacin del sensor de nivel de
combustible en el indicador:
















Figura 7.91, Fotografa de la lectura del indicador de nivel de combustible.


A continuacin se mostraran las imgenes del funcionamiento del sistema experimental
de prueba en funcionamiento con las etapas de salidas y entradas, tal como se mostraron
en las figuras 5.2 (entrada) y figura 5.3 (salida), Figuras 7.92, 7.93 y 7.94.





Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 75 -









Figura 7.92, Etapa de entrada Figura 7.93, Etapa de salida















Figura 7.94, sistema con etapas de salida y entrada funcionando

Luego de comprobar el funcionamiento de todo el montaje experimental del sistema
completo se enviaron los PCBs, del nodo 1 CAN y el nodo 2 CAN a realizar la
construccin de los circuitos impresos para el montaje final y definitivo el cual se arm
con todos sus componentes y se comprobando su buen funcionamiento. Las placas
terminadas se muestran en las siguientes imgenes, Figuras 7.95, 7.96, 7.97 y 7.98.


Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 76 -
























Figura 7.95, Circuito Impreso del nodo 1 CAN
















Figura 7.96, Circuito Impreso del nodo 2 CAN


Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 77 -











Figura 7.97, Placa final del nodo 1 CAN

















Figura 7.98, Placa final del nodo 2 CAN




Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 78 -
8 CONCLUSIONES

En este trabajo final de grado se ha realizado el anlisis y la implementacin de un
sistema capaz de mejorar el antiguo sistema elctrico-electrnico de un automvil.

El sistema terminado ha cumplido con los objetivos propuestos en este proyecto
demostrando la gran capacidad de adaptacin, confiabilidad y eficiencia que los
microcontroladores PIC poseen para el desarrollo de estos sistemas.

En la actualidad existen microcontroladores PIC que traen integrado el protocolo CAN,
esto significa que se podra utilizar el firmware desarrollado en este proyecto y volcarlo
sobre estos nuevos microcontroladores.

El funcionamiento de este sistema no se ha podido instalar y probar en un automvil
real debido a los altos costos de compra de un vehculo.

Como futuro trabajo, se puede plantear la posibilidad de realizar una comunicacin
inalmbrica entre el nodo1 CAN y nodo2 CAN, eliminando as la conexin de
cableados y fallas en conectores de comunicacin que puedan ocurrir en los vehculos.
Este sistema no tan solo servir para la implementacin en el rea automotriz, si no que
tambin se podr adaptar para aplicaciones domiciliarias y en el rea de la industria en
la que se requiera un control de sistemas de estas caractersticas.












Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 79 -
9 REFERENCIAS

1- Microcontroladores PIC La solucin en un CHIP . Eugenio Martn
Cuenca, Jos M Angulo Usategui, Ignacio Angulo Martnez.
2- Microcontroladores PIC Diseo practico de aplicaciones 2 Parte PIC
16F87x y PIC 18Fxxx. Jos M Angulo Usategui, Ignacio Angulo
Martnez, Susana Romero Yesa.
3- Microcontroladores avanzados dsPIC Controladores digitales de seal.
Arquitectura, programacin y aplicaciones . Jos M Angulo Usategui,
Ignacio Angulo Martnez, Begoa Garca Zapirain, Javier Vicente Sez.
4- Sistemas Digitales Principios y aplicaciones . Ronald J. Tocci.
5- WWW.microchip.com.
6- WWW.Bosch.com.
7- WWW.Autocity.com
8- WWW.Autoxuga.com
9- www.siliconbyte.com.ar , Soluciones Microcontroladas .
10- www.msebilbao.com , Ingeniera de Microsistemas Controlados .
11- www.sabelotodo.org,
12- PIC 16F87x, Data Sheet.
13- DAC 0808, Data Sheet.
14- Max 232n, Data Sheet.
15- 4N25, Data Sheet.
16- LM324, Data Sheet.
17- ICL 7660, Data Sheet.
18- PROTEUS 7 PROFESSIONAL, TUTORIAL.









Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 80 -










ANEXOS




















Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 81 -
ANEXO 1: DIAGRAMAS DE FLUJOS DE NODO 1 CAN Y NODO 2 CAN.

El siguiente diagrama de flujo, Figura A6.1, representa al Firmware CAN programado
en el PIC 16F874:


























Figura A6.1, Diagrama de flujo del Firmware del PIC16F874, Nodo 1CAN



INICIO
Declaracin de
variables
Inicializacin
Apago guios y
balizas, puerta B,
bit1=0, bit2=0, bit3=0
Bit 2 de
Puerta A =1 ?
Bit 2 de
Puerta A =1 ?
Modifico registro
MSJ, bit0 = 0, bit0 =
0
Activo guio
Izquierdo delantero,
puerta B, bit2= 1
Apago guio derecho
y balizas, bit1= 0,
bit3= 0
Bit 3 de
Puerta A =
1?
Activo guio derecho,
puerta B, bit1= 1
Apago guios
Izquierdo y balizas,
puerta B, bit2= 0,
bit3= 0
Modifico registro
MSJ, bit0 = 0, bit0 =
1
Sigo
Activo balizas puerta
B, bit3= 1
Apago guios derecho
e izquierdo, puerta B,
bit1= 0, bit2= 0
Modifico registro
MSJ, bit0 =1, bit0 = 1
Principal
Prin
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 82 -
































Figura A6.1, Diagrama de flujo del Firmware del PIC16F874, Nodo 1CAN
(Continuacin)
Sigo
Bit 1de
puerta
A=1?
Apago luz
estacionamiento/Tabler
o, puerta B, bit0= 0
Modifico registro de
MSJ, bit2= 0
Activo luz
estacionamiento/Tabler
o, puerta B, bit0= 1
Modifico registro de
MSJ, bit2= 1
Bit 4 de
puerta
A=1?
Modifico registro de
MSJ, bit3= 0, Luz de
stop
Modifico registro de
MSJ, bit3= 1, Luz de
stop
Bit 5 de
puerta
A=1?
Modifico registro de
MSJ, bit4= 0,
Desempaador cristal
trasero
Bit 0 de
puerta
C=1?
Apago cierre
centralizado, puerta B,
bit4= 0
Modifico registro de
MSJ, bit5= 0
Activo cierre
centralizado, puerta B,
bit4= 1

Modifico registro de
MSJ, bit5= 1
Modifico registro de
MSJ, bit4= 0,
Desempaador cristal
trasero
1
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 83 -
































Figura A6.1, Diagrama de flujo del Firmware del PIC16F874, Nodo 1CAN
(Continuacin)
1
Modifico registro de
MSJ, bit0= 0
Envi a MC2 el registro
MSJ
Dato fue
enviado a
MC2?
Llego
repuesta del
MC2 ?
Dato recibido de
MC2 = MSJ ?
Bit 1 de
puerta C = 1?
Modifico registro de
MSJ 1, bit0= 1, bit1= 0
Modifico registro de
MSJ 1, bit0= 0, bit1= 1
Modifico registro de
MSJ 1, bit7= 1
Envi MSJ 1 a MC2
2
Modifico registro de
MSJ 1, bit7= 1
Envi MSJ 1 a MC2
3
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 84 -
































Figura A6.1, Diagrama de flujo del Firmware del PIC16F874, Nodo 1CAN (Fin)

Dato fue
enviado a
MC2?
Llego
repuesta del
MC2 ?
2
Guardo dato recibido de MC2
en el registro semcom (sensor
combustible)
Saco la digitalizacin del
combustible por la puerta D, al
DAC 0808
Borro registro RCREG
FIN
Prin
Dato fue
enviado a
MC2?
Llego
repuesta del
MC2 ?
3
Guardo dato recibido de MC2
en el registro sensor (sensor de
estacionamiento)
Bit 1 de
sensor = 1?
Apago indicacin sonora y
luminosa, bit5 = 0, bit6 = 0
Enciendo indicacin sonora y
luminosa, bit5 = 1, bit6 = 1
FIN
Prin
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 85 -
DIAGRAM DE FLUJO DEL PIC 16F873A DEL NODDO 1 CAN

En la siguiente Figura A6.2 se muestra el diagrama de flujo representa al Firmware
programado en el PIC 16F873A:




























Figura A6.2, Diagrama de flujo del Firmware del PIC16F873A, Nodo 1CAN
(Continuacin)
INICIO
Declaracin de
variables
Inicializacin
1
Principal
Bit 0 de
puerta
A=1?
Apago luz baja de
iluminacin, puerta C,
bit4 = 0
Enciendo luz baja de
iluminacin, puerta C,
bit4 = 1
1
Bit 1 de
puerta
A=1?
Apago luz alta de
iluminacin, puerta C,
bit5 = 0
Enciendo luz alta de
iluminacin, puerta C,
bit5 = 1
1
Bit 2 de
puerta
A=1?
Apago luz interior de
habitculo, puerta C,
bit6 = 0
Enciendo luz interior
de habitculo, puerta
C, bit6 = 1
1
Principal
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 86 -































Figura A6.2, Diagrama de flujo del Firmware del PIC16F873A, Nodo 1CAN
(Continuacin)

1
Bit 3 de
puerta A=1?
Apago Aire
Acondicionado, puerta C,
bit7 = 0
Enciendo Aire
Acondicionado, puerta C,
bit7 = 1
1
Bit 4 de
puerta A=1?
Apago Ventilacin de
Aire 1, puerta B,
bit0 = 0
Enciendo Ventilacin de
Aire 1, puerta B,
bit0 = 1
1
2
Bit 5 de
puerta A=1?
Apago Ventilacin de
Aire 2, puerta B,
bit1 = 0
Enciendo Ventilacin de
Aire 2, puerta B,
bit0 = 1
1
Bit 0 de
puerta C =1?
Apago Pulsadores de
apertura de puertas,
puerto B, bit 2 = 0
Enciendo Pulsadores de
apertura de puertas,
puerto B, bit 2 = 1

Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 87 -





























Figura A6.2, Diagrama de flujo del Firmware del PIC16F873A, Nodo 1CAN (Fin)




2
Bit 1 de
puerta C=1?
Apago Limpia
parabrisas 1, puerta B,
bit 3 = 0
Enciendo Limpia
parabrisas 1, puerta B,
bit 3 = 1
Bit 2 de
puerta C =1?
Apago Limpia
parabrisas 2, puerta B,
bit 4 = 0
Enciendo Limpia
parabrisas 2, puerta B,
bit 4 = 1

Bit 3 de
puerta C=1?
Apago Bocina, puerta B,
bit 5 = 0
Enciendo Bocina, puerta
B, bit 5 = 1
FIN
Principal
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 88 -
DIAGRAM DE FLUJO DEL NODDO 2 CAN
En la siguiente Figura A6.3 se muestra el diagrama de flujo representa al Firmware
programado en el PIC 16F873A del nodo 2 CAN:




























Figura A6.3, diagrama de flujo del Firmware del nodo 2 CAN


4
INICIO
Declaracin de
variables
Inicializacin
PIR1, bit
RCIF = 1?
Principal
Principa
l
1
Guardo el dato recibido
en mensaje
borro el registro
RCREG

mensaje
bit 7 = 1?
Envi dato recibido
al nodo 1

2
mensaje
bit 0 = 1?
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 89 -

































Figura A6.3, diagrama de flujo del Firmware del nodo 2 CAN (Continuacin)
1
Dato, fue
enviado?
Bit0 de
mensaje =1?
Bit1 de
mensaje =1?
Apago guios y
balizas

Bit1 de
mensaje =1?
Enciendo guio
derecho

Enciendo guio
Izquierdo

Enciendo guio
Balizas

Bit2 de
mensaje =1?
Apago luz de
estacionamiento /
tablero

Enciendo luz de
estacionamiento /
tablero

Bit3 de
mensaje =1?
Apago luz de Stop

Enciendo luz de
Stop

3
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 90 -

































Figura A6.3, diagrama de flujo del Firmware del nodo 2 CAN (Continuacin)
3
Bit5 de
mensaje =1?
Apago Cierre
centralizado

Apago Cierre
centralizado

Bit5 de
mensaje =1?
Apago
desempaador
trasero

Enciendo
desempaador
trasero

FIN
Principa
l
2
Bit1 de
mensaje =1?
Vuelvo al
programa principal

FIN
Enciendo luz de reversa y
activo sensor de
estacionamiento

Bit1 de
Puerto A=1?
5 6
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 91 -

































Figura A6.3, diagrama de flujo del Firmware del nodo 2 CAN (Continuacin)
5
Borro bit 1del
registro sensor

Envi estado del
sensor al nodo 1

Dato fue
envido?
Principal
6
Activo bit 1del
registro sensor

Envi estado del
sensor al nodo 1

Dato fue
envido?
Principal
4
Bit1 de
mensaje =1?
Apago luz de
reversa

Llamo a subrutina
de medicin de
combustible

Envi
digitalizacin del
combustible

Dato fue
envido?
Principal
Principal
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 92 -



























Figura A6.3, diagrama de flujo del Firmware del nodo 2 CAN






Medicin
Configuracin del ADCON1,
configura Puerto A

Configuracin del ADCON0,
configura operaciones del
A/D

Activo la
conversin A/D

Fin de
conversin?
Guardo digitalizacin en
registro combust

Retorno
Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 93 -
ANEXO 2: HOJAS DE DATOS

































Instituto Universitario Aeronutico
Facultad de Ingeniera TRABAJO FINAL DE GRADO
- 94 -












1

You might also like