Sei sulla pagina 1di 20

ESCUELA TCNICA SUPERIOR DE INGENIEROS DE BILBAO BILBOKO INGENIARIEN GOI ESKOLA TEKNIKOA

PROYECTO
DE

DISEO E IMPLEMENTACIN DE NODOS DE COMUNICACIN BASADOS EN EL BUS CAN Y SU APLICACIN A UN MVIL AUTONOMO

Documento n 2 DISEO DE LOS NODOS DE COMUNICACIONES

Alumno Fecha Firma

Olarra Urberuaga, Aitor Noviembre de 2001

Profesor Ctedra

Profesor Ponente

Referencia

Curso Acadmico

Sr. Gorrio

Sr. Portillo Berasaluce

II.01.220.C.C

2000/01

ii

NDICE
Parte A: Diseo hardware de los nodos de comunicaciones
pg. 1. 2. 3. INTRODUCCIN....................................................................................2 ARQUITECTURA GENERAL ................................................................3 DISEO DEL HARDWARE ...................................................................6 3.1 3.2 3.3 3.4 3.5 3.6 4. EL RELOJ DEL SISTEMA ...........................................................6 INTERFAZ CONTROLADOR CAN - PIC16F87X ........................7 RESET DEL PIC16F87X .............................................................8 LOS PUERTOS DE ES DEL PIC16F87X ....................................9 CONEXIN A LA RED CAN ......................................................10 SWITCHES ................................................................................11

DISPOSICION DE LOS ELEMENTOS ................................................13

REFERENCIAS ............................................................................................14 ANEXO A: ESQUEMA ELECTRICO............................................................15 ANEXO B: SERIGRAFA DE LOS NODOS .................................................17

ii

Parte A: Diseo hardware de los nodos de comunicaciones

1. INTRODUCCIN
En el presente documento se describe el diseo del hardware de los nodos de comunicacin que se desarrollan durante el proyecto de Diseo e implementacin de nodos de comunicacin basados en el bus CAN y su aplicacin a un mvil autnomo. Dicho diseo se realizar de acuerdo con las especificaciones recogidas en el captulo quinto del documento nmero uno. Para favorecer la comprensin de los conceptos explicados se tratar de incluir figuras. La exposicin comenzar con una descripcin general del hardware del nodo. En los apartados siguientes se profundizar en mayor detalle en el diseo del nodo. Y para terminar se darn algunas indicaciones acerca de la disposicin de los elementos.

2. ARQUITECTURA GENERAL
Los nodos de comunicaciones estn diseados alrededor de un

microcontrolador de la familia PIC16F873/ PIC16F876 de Microchip. Como controlador CAN se utiliza un MCP2510 tambin de Microchip. La comunicacin entre estos dos dispositivos se realiza por medio de un interfaz serie denominado SPI, Serial Peripheral Interface. Este interfaz serie ofrece un ancho de banda suficiente para manejar el flujo de datos que puede generar la red CAN, adems requiere tan solo cuatro lneas de ES1 del microcontrolador. El ancho de banda mencionado se consigue gracias a un perifrico dedicado que incorpora el microcontrolador para el interfaz SPI. La conexin entre el controlador CAN y la red CAN se realiza por medio de un transceiver que convierte los niveles de las seales a uno y otro lado. El transceiver que se utilizar ser el 82C250 de Philips. Se trata de un transceiver de alta velocidad de uso muy extendido entre los productos orientados a la red CAN. En las especificaciones reunidas en el apartado 5.2.1 del documento 1 se indica que el nodo de comunicaciones debe disponer de switches de configuracin y de un LED que indique el estado del nodo. Reuniendo en una figura los detalles mencionados en los prrafos anteriores se obtiene la arquitectura general del hardware de los nodos, mostrada en la figura 2.1. El nmero de lneas de switches que se necesitan son: cuatro lneas para los 16 diferentes identificadores del nodo. Tres lneas para seleccionar una de las ocho posibles velocidades de la red CAN.

ES: Entradas y Salidas

RX Transceiver (82C251 TX Controlador CAN (MCP2510)

SPI Microcontrolador PIC16F873 PIC16F87 E/S

INT Reloj Can-H Can-L Registro paralelo =>serie

switches

Fig 2.1 Arquitectura general de los nodos Lo que hace un total de siete, pero no hay switches con siete lneas por lo que se utilizar uno que tenga ocho lneas, utilizando la ltima lnea para elegir una de dos posibles velocidades de funcionamiento del microcontrolador. De esta manera se obtiene un nodo CAN con las siguientes caractersticas: CAN Velocidad del bus programable, hasta 1000 Kb. Soporta mensajes con identificadores de 11 y de 29 bits.

MICROCONTROLADOR Hasta 8 Mhz 16 Mhz. Memoria de programa(FLASH): 4K palabras (PIC16F873) 8K palabras (PIC16F876). Memoria de datos: RAM 192 368 bytes EEPROM 128 256 bytes Perifricos integrados:

Contadores: uno de 16 bits y dos de 8 bits

Dos mdulos de captura/ comparacin / PWM Convertidor AD de 10 bits, 5 canales USART Examinando las caractersticas anteriores se comprueba que se satisfacen las especificaciones del apartado 5.2.1 del documento numero 1. Los microcontroladores que forman la familia 16F87X disponen de diferentes capacidades de memoria de programa y de datos. Adems de poder funcionar a una velocidad mxima de 10Mhz o de 20Mhz. La tabla 2.1resume las caractersticas de los microcontroladores que pueden utilizarse en los nodos. Tabla 2.1 Caractersticas de los microcontroladores que se pueden utilizar Microcontrolador 16F873-4 16F873-20 16F876-4 16F876-20 Memoria programa 4K palabras 4K palabras 8K palabras 8K palabras Memoria datos 192 bytes 192 bytes 368 bytes 368 bytes Velocidad Mxima 10Mhz 20Mhz 10Mhz 20Mhz

De esta manera, una vez codificado el software que va a funcionar en el nodo se podr elegir el modelo concreto de microcontrolador con la capacidad de memoria suficiente. Si los modelos que pueden funcionar hasta 10Mhz no son suficientemente rpidos para cumplir los requisitos temporales exigidos en el aprtado 5.2.1 del documento nmero 1 se debern utilizar los de velocidad mxima 20Mhz.

3. DISEO DEL HARDWARE


3.1 EL RELOJ DEL SISTEMA
El controlador CAN dispone de un generador de reloj basado en un cristal de cuarzo de 16 Mhz conectado entre los pines OSC1 y OSC2 del mismo. La seal de 16 MHz alimenta toda la circuitera de control de tiempos del dispositivo, para generar y recibir mensajes por el bus CAN. A su vez, sirve tambin para generar una seal de reloj til para otros dispositivos que pudiera haber en el sistema. En este caso el micro. La ventaja de utilizar esta seal como entrada de reloj al micro se debe a la posibilidad de configurar por software, a travs de la interfaz SPI, un divisor para disponer a su salida de una seal de 2, 4, 8 16 Mhz. Esta seal se saca al exterior a travs del pin CLKOUT tal como se muestra en la figura 3.1.

Fig 3.1 Reloj del sistema De esta manera se puede seleccionar por software la velocidad de funcionamiento del microcontrolador. Los microcontroladores PIC16F873-04 y PIC16F876-04 no pueden funcionar a ms de 10 MHz por lo que no se podrn utilizar a 16 Mhz. Para funcionar a la frecuencia ms alta habr que utilizar uno de los micros PIC16F873-20 PIC16F876-20 que soportan frecuencias de hasta 20 Mhz.

3.2 INTERFAZ CONTROLADOR CAN - PIC16F87X


Las comunicaciones entre microcontrolador y controlador CAN se realizan a travs de la interfaz SPI. Se trata de una interfaz serie que se compone de las siguientes seales: SCK, SDO, SDI y SS. SCK: seal de reloj que sincroniza los bits de datos de entrada y salida. SDO: datos de salida. SDI: datos de entrada. SS: seleccin de esclavo. quien inicia todas las

El microcontrolador es el maestro y es l

comunicaciones y quien genera la seal de reloj, SCK. Las conexiones se realizan de la siguiente manera indicada en la figura 3.2.

Fig 3.2 Interfaz SPI entre el controlador CAN y el microcontrolador Cada vez que el microcontrolador activa la lnea de seleccin de esclavo, genera una serie de 8 pulsos en la lnea de reloj que sirven para sincronizar la salida de datos por la lnea SDO de cada dispositivo y la recepcin de los mismos por la lnea SDI. Esto es, el micro y el controlador CAN intercambian un byte de datos simultneamente.

El microcontrolador dispone de un mdulo, Master

Synchronous

Serial Port (MSSP), que realiza por hardware todo el proceso. La frecuencia de la seal de reloj se puede configurar como , 1/16 1/64 de la frecuencia a la que funciona el microcontrolador. As con un microcontrolador a 8Mhz puede llegar a 2Mhz. El microcontrolador puede iniciar diferentes operaciones en el controlador en funcin de cul sea el primer byte que enve: leer un registro escribir un registro modificar algunos bits de un registro resetear el controlador CAN iniciar la transmisin de un mensaje por el bus CAN

En [MIC.99b] se puede encontrar ms informacin acerca de cmo realizar estas operaciones y de la estructura de registros de este dispositivo. Adems del interfaz SPI el controlador CAN dispone de un pin, INT, que puede interrumpir al microcontrolador cuando necesita de su atencin, por ejemplo ante la recepcin de un mensaje CAN. Esta lnea est directamente conectada al pin RB0 del microcontrolador que puede funcionar como entrada de interrupcin.

3.3 RESET DEL PIC16F87X


La entrada de RESET del microcontrolador est gobernada por el supervisor de tensin MCP100. Este se supervisor de tensin mantiene el

microcontrolador en estado de reset mientras la tensin de alimentacin no alcance un umbral determinado. En cuanto lo alcanza espera unos 350 ms antes de permitir que el microcontrolador salga del estado de RESET. De esta manera se evita cualquier problema que pudieran producir los transitorios durante el arranque del nodo.

3.4 LOS PUERTOS DE ES DEL PIC16F87X


Algunos de los pines de los puertos A, B y C se necesitan para el uso interno del nodo, el resto est disponible para el uso que se haga de ste. Los pines utilizados son: RC3,RC4 ,RC5,RB0,RB1 y RB2. El pin RB2 se utiliza para controlar el LED de estado del nodo, el resto de los pines se utilizan para comunicarse con el controlador CAN tal como se ha indicado en el apartado correspondiente. Los pines que quedan libres pueden utilizarse como entradas o salidas digitales pero algunos tienen unas caractersticas especiales que se destacan a continuacin: RA0, RA1, RA2, RA3 y RA4: adems de entradas y salidas digitales a estos pines estn conectados los 5 canales del convertidor AD. RB3: entradas y salidas digitales RB4, RB5, RB6, RB7: pueden generar una interrupcin cuando el

estado lgico a su entrada cambia. RC0: entrada de pulsos al contador de 16 bits. RC1 y RC2: entradas a los mdulos de captura o salidas de los mdulos PWM y de los modulos de comparacin.

10

RC6 y RC7: RX y TX de la USART

3.5 CONEXIN A LA RED CAN


La conexin con la red CAN se realiza a travs de un transceiver que convierte las seales TTL del controlador CAN a las de la red CAN y viceversa. El transceiver utilizado, un 82C251, dispone de los siguientes pines: alimentacin CANL y CANH TxD y RxD Rs

La alimentacin se realiza a 5V, al igual que el resto de integrados. Las lneas TxD y RxD se conectan directamente a los pines TXCAN y RXCAN del controlador CAN. La lnea RxD refleja el nivel lgico de la red, un nivel lgico bajo en esta lnea significa que en la red CAN hay un nivel recesivo, mientras que un nivel lgico alto refleja un nivel dominante de la red CAN. A su vez, la lnea TxD impone un estado dominante en la red CAN cuando se pone a un nivel lgico alto. Los pines CANL y CANH llegan al conector que permite enchufar la placa con la red CAN. Este conector proporciona la alimentacin a la placa. La asignacin de pines mostrada en la figura 3.3 es la recomendada por la CiA.

10

11

Fig 3.3 Conector CAN Por ltimo, la lnea Rs del transceiver sirve para limitar la velocidad de subida y bajada de las seales de la red CAN. Para funcionar a alta velocidad, hasta 1000KBs, la lnea se conecta directamente a masa. Se puede encontrar ms informacin acerca del transceiver en la referencia [PHI.97].

3.6 SWITCHES
El controlador CAN dispone de varias lneas que se pueden configurar para funcionar como ES digital de propsito general o bien, las de salida, como lneas de interrupcin para indicar la llegada de mensajes, o, las de entrada, como disparo para la transmisin de mensajes. Como estas funciones especficas se pueden realizar por medio de la interfaz SPI y la lnea de interrupcin general, podemos utilizar estos pines como entradas y salidas digitales de propsito general. Disponemos as de 3 lneas de entrada y dos de salida. Utilizamos estas lneas para acceder a los switches de la nodo CAN. Para ello necesitamos adems un registro de desplazamiento que serializa las 8 entradas de los switches. Las conexiones se muestran en la figura 3.4.

11

12

Fig 3.4 Circuito de lectura de los switches Para leer los switches primero se carga su valor en el registro de desplazamiento, poniendo a uno la lnea PSC y creando un flanco positivo en la entrada CK. As, en la salida Q8 tenemos el bit<8> de los switches, despus de leer ste, una vez puesto a cero la lnea PSC cada flanco positivo en CLK desplaza el siguiente bit a la salida Q8. Ms informacin acerca del registro de desplazamiento [SGS.96].

12

13

4. DISPOSICION DE LOS ELEMENTOS


La disposicin de los conectores para los dispositivos de control , el conector CAN, los switches y del LED indicador debe ser tal que todos los dispositivos relacionados con la red CAN estn reunidos en el mismo lateral. Los conectores para los dispositivos de control se colocarn en otro lateral. De este modo se distingirn los dispositivos relacionados entre s haciendo ms intuitivo el uso y la configuracin de los nodos de comunicaciones. La figura 4.1 muestra la distribucin que deben seguir los dispositivos sealados en los parrafos anteriores.

Fig 4.1 Distribucin de los elementos La distribucin del resto de dispositivos, microcontrolador y dems elementos, se realizar teniendo en cuenta las conexiones que existen entre los pines de los diferentes elementos.

13

14

REFERENCIAS
[MIC.99a] MICROCHIP DS30292B.PDF Microcontrollers 1999 PIC16F87X 28/40 pin 8-bitCMOS FLASH

[MIC.99b] MICROCHIP DS21291C "Stand-Alone CAN controller with SPI interface" 1999

[PHI.97]

PHILIPS SEMICONDUCTORS "CAN transceiver for 24 V systems, PCA82C251 " 1997

[SGS.96] SGS-THOMSON "HCC/HCF4014B HCC/HCF4021B 8-STAGE STATIC SHIFT REGISTERS" 1996

14

15

ANEXO A: ESQUEMA ELECTRICO


En este anexo se incluye el esquema elctrico de los nodos de comunicaciones que se han diseado y desarrollado a lo largo del proyecto "Diseo e implementacin de nodos de comunicaciones basados en el bus CAN y su aplicacin a un mvil autnomo".

15

16

ELIMINAR ESTA PAGINA E INTRODUCIR EL ESQUEMA IMPRESO DESDE EAGLE

ELIMINAR ESTA PAGINA E INTRODUCIR EL ESQUEMA IMPRESO DESDE EAGLE

ELIMINAR ESTA PAGINA E INTRODUCIR EL ESQUEMA IMPRESO DESDE EAGLE

ELIMINAR ESTA PAGINA E INTRODUCIR EL ESQUEMA IMPRESO DESDE EAGLE

16

17

ANEXO B: SERIGRAFA DE LOS NODOS


En este anexo se muestra la serigrafa de los circuitos impresos que se han construido durante el desarrollo de los nodos de comunicaciones.

17

18

ELIMINAR ESTA PAGINA E INTRODUCIR LA SERIGRAFIA IMPRESA DESDE EAGLE 1/1

ELIMINAR ESTA PAGINA E INTRODUCIR LA SERIGRAFIA IMPRESA DESDE EAGLE 1/1

ELIMINAR ESTA PAGINA E INTRODUCIR LA SERIGRAFIA IMPRESA DESDE EAGLE 1/1

ELIMINAR ESTA PAGINA E INTRODUCIR LA SERIGRAFIA IMPRESA DESDE EAGLE 1/1

18

Potrebbero piacerti anche