Anda di halaman 1dari 33

Comunicacin serial Profibus

PROTOCOLOS Y ESTANDARES DE COMUNICACIN

Conexin fsica Modbus Protocolo de comunicacin USB Ethernet

06/09/2012

Sistemas electrnicos Dr. L. Salazar

06/09/2012

Sistemas electrnicos Dr. L. Salazar

COMUNICACIN SERIE

COMUNICACIN SERIE
La comunicacin serie se utiliza para enviar datos entre SE a travs de cables de largas distancias, ya que la comunicacion en paralelo, a parte de resultar demasiado costosa, exige demasiado cableado para ser operativa. Los datos serie recibidos desde un modem u otros dispositivos son convertidos a paralelo gracias a lo cual pueden ser manejados por el bus del PC. Segn la direccin de informacion la CS puede ser: simplex, half-duplex y full-duplex. CS simplex: enva informacin en una sola direccin (p.e. una emisora de radio comercial). CS Half-duplex: los datos pueden ser enviados en ambas direcciones entre dos sistemas, pero en una sola direccin al mismo tiempo. CS full-duplex: cada sistema puede enviar y recibir datos al mismo tiempo.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

06/09/2012

Sistemas electrnicos Dr. L. Salazar

COMUNICACIN SERIE
Segn el modo de transmisin existen dos tipos de comunicaci comunicacin serie: sncronas y as asncronas.

Modo s sncrono
Frecuencia receptor es 16 o 64 mayor que la el emisor. Sincronizacin mediante circuitos UART.

En modo transmisin sncrona los datos son enviados en bloques, el transmisor y el receptor son sincronizados por uno o ms caracteres especiales llamados caracteres sync. En modo transmisin asncrona, un bit identifica su bit de comienzo y 1 o 2 bits identifican su final, no es necesario ningn carcter de sincronismo.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

06/09/2012

Sistemas electrnicos Dr. L. Salazar

Modo asincrono
Los bits de datos son enviados al receptor despus del bit de start. El bit de menos peso es transmitido primero. Un carcter de datos suele consistir en 7 o 8 bits. Dependiendo de la configuracin de la transmisin un bit de paridad es enviado despus de cada bit de datos. Se utiliza para corregir errores en los caracteres de datos. Finalmente, se envan 1 o 2 bits de stop.

ESTANDAR RS-232
El RS-232C es un estndar que constituye la tercera revisin de la antigua norma RS-232, propuesta por la EIA (Asociacin de Industrias Electrnicas), realizndose posteriormente un versin internacional por el CCITT, conocida como V.24.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

06/09/2012

Sistemas electrnicos Dr. L. Salazar

ESTNDAR RS-232C
Este estndar fue diseado en los 60s para comunicar un equipo terminal de datos o DTE (Data Terminal Equipment, el PC en este caso) y un equipo de comunicacin de datos o DCE (Data Communication Equipment, habitualmente un mdem). El puerto serie RS-232C, presente aun en algunos PC actuales, es la forma simple y muy comn para realizar transmisiones de datos en serie entre PC o perifricos. El RS-232C es un estndar que constituye la tercera revisin de la antigua norma RS232, propuesta por la EIA (Asociacin de Industrias Electrnicas), realizndose posteriormente un versin internacional por el CCITT, conocida como V.24. Las diferencias entre ambas son mnimas, por lo que a veces se habla indistintamente de V.24 y de RS-232C (incluso sin el sufijo "C"), refirindose siempre al mismo estndar. El RS-232C utiliza un conector tipo DB-25 de 25 pines, o DB-9 de 9 pines, mas barato e incluso mas extendido para cierto tipo de perifricos (como el ratn serie del PC). En cualquier caso, en los PCs no se emplean mas de 9 pines en el conector DB-25. Las seales con las que trabaja este puerto serie son digitales, de +12V (0 lgico) y -12V (1 lgico), para la entrada y salida de datos, y a la inversa en las seales de control. El estado de reposo en la entrada y salida de datos es -12V. Dependiendo de la velocidad de transmisin empleada, es posible tener cables de hasta 15 metros.

CCITT: son las siglas de Comit Consultivo Internacional Telegrfico y Telefnico (Consultative Committee for International Telegraphy and Telephony - Comit Consultatif International Tlgraphique et Tlphonique), antiguo nombre del comit de normalizacin de las telecomunicaciones dentro de la UIT (Unin Internacional de Telecomunicaciones) ahora conocido como UIT-T. La organizacin ha definido importantes estndares de comunicacin como los siguientes: Group 3, Group 4, V.21, V.22, V.22bis, V.29, V.32, V.32bis, V.34, V.42, V.42bis, V.90, X.25, X.400, X.500, entre otros.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

06/09/2012

Sistemas electrnicos Dr. L. Salazar

10

RESUMEN CARACTERSTICAS

DETALLE DB-9

25/9 pines de seal. Conector de DTE debe ser macho y el conector de DCE hembra. Los voltajes para un nivel lgico alto estn entre -3V y 15V, y un nivel bajo +3V y +15V. Los voltajes ms usados son +12V/-12V, +9V/9V Dependiendo de la velocidad de transmisin empleada, es posible tener cables de hasta 15 metros. Velocidad: 300, 600, 1200, 2400, 4800 y 9600 bps

06/09/2012

Sistemas electrnicos Dr. L. Salazar

11

06/09/2012

Sistemas electrnicos Dr. L. Salazar

12

Una vez que ha comenzado la transmisin de un dato, los bits tienen que llegar uno detrs de otro a una velocidad constante y en determinados instantes de tiempo. Por eso se dice que el RS-232 es asncrono por carcter y sincrono por bit. Los pines que portan los datos son RXD y TXD. Los dems se encargan de otros trabajos: DTR indica que el ordenador esta encendido, DSR que el aparato conectado a dicho puerto esta encendido, RTS que el ordenador puede recibir datos (porque no esta ocupado), CTS que el aparato conectado puede recibir datos, y DCD detecta que existe una comunicacin, presencia de datos. Tanto el aparato a conectar como el ordenador (o el programa terminal) tienen que usar el mismo protocolo serie para comunicarse entre si. Puesto que el estndar RS-232 no permite indicar en que modo se esta trabajando, es el usuario quien tiene que decidirlo y configurar ambas partes. Los parmetros que hay que configurar son: protocolo serie (8N1), velocidad del puerto serie, y protocolo de control de flujo. Este ultimo puede ser por hardware (el handshaking RTS/CTS) o bien por software (XON/XOFF, el cual no es muy recomendable ya que no se pueden realizar transferencias binarias). La velocidad del puerto serie no tiene por que ser la misma que la de transmisin de los datos, de hecho debe ser superior. Por ejemplo, para transmisiones de 1200 baudios es recomendable usar 9600, y para 9600 baudios se pueden usar 38400 (o 19200).
Sistemas electrnicos Dr. L. Salazar 13

FORMAS DE CONEXIN CONECTOR DB9


Figura : Cable DTE-DCE

Conector 1 Conector 2 2 3 5 3 2 5

Funcin Rx Tx Tx Rx GND

06/09/2012

06/09/2012

Sistemas electrnicos Dr. L. Salazar

14

Figura: Conector de test (loopback) Figura: Cable DTE-DTE null modem

Conector 1 2 3 5 1+4+6 7+8 -

Conector 2 3 2 5 1+4+6 7+8

Funci Funcin Rx Tx Tx Rx GND DTR CD + DSR DTR CD + DSR RTS CTS RTS CTS
Conector 1 1 2 3 4 5 6 7+8 Conector 2 7+8 3 2 6 5 4 1 Funci Funcin RTS2 CTS2 + CD1 Rx Tx Tx Rx DTR DSR GND DSR DTR RTS1 CTS1 + CD2

06/09/2012

Sistemas electrnicos Dr. L. Salazar

15

06/09/2012

Sistemas electrnicos Dr. L. Salazar

16

DB-25 y DB-9

GND: Es la masa. Como toda seal, tiene que estar referida a una masa. RX: Seal de recepcin. Son los datos que se reciben. (entrada) TX: Seal de transmisin. Por aqu salen los datos. (salida) DTR: Data Terminal Ready. Indica que el terminal est encendido. (salida) DSR: Data Set Ready. Se ha establecido conexin. (entrada) CTS: Clear To Send. El terminal est aceptando datos. (salida) RTS: Request to Send. Aqu se introduce una seal cuando se pide un dato. (entrada)

Las seales TXD, DTR y RTS son de salida, mientras que RXD, DSR, CTS y DCD son de entrada. La masa de referencia para todas las seales es SG (Tierra de Seal). Finalmente, existen otras seales como RI (Indicador de Llamada).

06/09/2012

Sistemas electrnicos Dr. L. Salazar

17

06/09/2012

Sistemas electrnicos Dr. L. Salazar

18

DB25 RS232-C Pin 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

DB9 IBM PC Pin 3 2 7 8 6 5 1 4 9 -

EIA Circuit Symbol AA BA BB CA CB CC AV CF CI SCB SBA DB SBB DD SCA CD CE CH DA -

CCITT Circuit Symbol 101 103 104 105 106 107 102 109 122 121 118 114 119 115 141 120 108.2 125 111 113 142

Common Name PG/FG TD RD RTS CTS DSR SG/GND DCD/CD SRLSD SCTS STD TSET SRD RSET LOOP SRS DTR RDL RI DSRS TSET -

Signal Source DTE DCE DTE DCE DCE DCE DCE DCE DTE DCE DCE DCE DTE DTE DTE DTE DCE DTE DTE DCE

Description Frame/Protective Ground Transmit Data Receive Data Request to Send Clear to Send Data Set Ready Signal Ground Data Carrier Detect Reserved for Test Reserved for Test Reserved for Test Sec. Recv. Line Signal Detector Secondary Clear to Send Secondary Transmit Data Trans. Sig. Element Timing Secondary Received Data Receiver Signal Element Timing Local Loopback Secondary Request to Send Data Terminal Ready Remote Digital Loopback Ring Indicator Data Signal Rate Selector Trans. Sig. Element Timing Test Mode

UART
El PC controla el puerto serie mediante un circuito integrado especifico, llamado UART (Transmisor-Receptor-Asncrono Universal). Normalmente se utilizan los siguientes modelos de este chip: 8250 (bastante antiguo, con fallos, solo llega a 9600 baudios), 16450 (versin corregida del 8250, llega hasta 115.200 baudios) y 16550A (con buffers de E/S). A partir de la serie PC Pentium, las UARTs de la placa base son todas de alta velocidad, es decir UART 16550A. La mayora de los mdems conectables a puerto serie necesitan dicho tipo de UART, incluso algunos juegos para jugar en red a travs del puerto serie lo necesitan. Los PC porttiles suelen llevar otros chips: 82510 (con buffer especial, emula al 16450) o el 8251 (no es compatible).
06/09/2012 Sistemas electrnicos Dr. L. Salazar 20

06/09/2012

Sistemas electrnicos Dr. L. Salazar

19

10

Para controlar al puerto serie, la CPU emplea direcciones de puertos de E/S y lneas de interrupcin (IRQ). En un PC se eligieron las direcciones 3F8h (o 0x3f8) e IRQ 4 para el COM1, y 2F8h e IRQ 3 para el COM2. El estndar del PC llega hasta aqu. Al aadir posteriormente otros puertos serie, se eligieron las direcciones 3E8 y 2E8 para COM3-COM4, pero las IRQ no estn especificadas. Cada usuario debe elegirlas de acuerdo a las que tenga libres o el uso que vaya a hacer de los puertos serie (por ejemplo, no importa compartir una misma IRQ en dos puertos siempre que no se usen conjuntamente, ya que en caso contrario puede haber problemas).

Mediante los puertos de E/S se pueden intercambiar datos, mientras que las IRQ producen una interrupcin para indicar a la CPU que ha ocurrido un evento (por ejemplo, que ha llegado un dato, o que ha cambiado el estado de algunas seales de entrada). La CPU debe responder a estas interrupciones lo mas rpido posible, para que de tiempo a recoger el dato antes de que el siguiente lo sobrescriba. Sin embargo, las UART 16550A incluyen unos buffers de tipo FIFO, dos de 16 bytes (para recepcin y transmisin), donde se pueden guardar varios datos antes de que la CPU los recoja. Esto tambin disminuye el numero de interrupciones por segundo generadas por el puerto serie. El RS-232 puede transmitir los datos en grupos de 5, 6, 7 u 8 bits, a unas velocidades determinadas (normalmente, 9600 bits por segundo o mas). Despus de la transmisin de los datos, le sigue un bit opcional de paridad (indica si el numero de bits transmitidos es par o impar, para detectar fallos), y despus 1 o 2 bits de Stop. Un protocolo utilizado normalmente es 8N1 que significa, 8 bits de datos, sin paridad y con 1 bit de Stop.
Sistemas electrnicos Dr. L. Salazar 22

Con el auge de las comunicaciones, los fabricantes de PCs incluyen un puerto especial PS/2 para el ratn, dejando as libre un puerto serie. 06/09/2012 Sistemas electrnicos 21
Dr. L. Salazar

06/09/2012

11

Ejemplo de proyecto: Sensor de temperatura


Caractersticas: Microcontrolador PIC10F202 Visualizar la temperatura de hasta 8 sensores puestos en el mismo termmetro. Consultar la temperatura desde otros ordenadores que estn en la misma red TCP/IP. Programar un lmite mximo y otro mnimo de temperatura para cada sensor, si se exceden se activar una alarma. Rango de temperaturas: -55 a 125 grados con una precisin de +/- medio grado. Los datos de cada medida se deben grabar en un archivo de texto. El tiempo entre cada medida y cada grabacin en el archivo pueden ser diferentes y van desde 5 segundos hasta 6 horas. Salida para conectar un rel que active una alarma externa. Al usar el bus "1 wire" todos lo sensores pueden ir en paralelo en el mismo cable usando solo dos hilos.
Sistemas electrnicos Dr. L. Salazar 23

Esquema:

El microcontrolador PIC10F202 es el componente principal del circuito, interpreta los comandos que recibe del PC y los comunica a los sensores de temperatura. El circuito se alimenta del puerto serie a travs de los diodos D1 y D2, estos llevan una tensin de unos 12 voltios al circuito estabilizador IC2 78L05 que alimenta al microcontrolador. La resistencia R4 y el diodo zener DZ1 protegen al PIC de posibles picos de tensin en el bus 1-wire. La salida de la alarma va vonectada al transistor T1 que tiene la salida en colector abierto y puede activar un pequeo rel o zumbador con una alimentacin externa. La velocidad de comunicacin con el PC es de 1200bps, una velocidad baja pero suficiente para este proyecto ya que el nmero de bytes a enviar es bajo. El termmetro va conectado directamente a un puerto serie del PC que disponga de un conector DB9 macho, pero si se necesita mayor distancia se puede poner un cable prolongador. Todo el circuito del termmetro va montado en una placa de circuito impreso con componentes SMD dentro del conector DB9, de este conector sale un cable con un conector de 3 pines, el del medio es la masa, el de un lado es el bus 1-wire al que se conectan los sensores y el del otro lado es la salida del rel de activacin de la alarma externa; este rel necesita una alimentacin externa y se activa durante un instante si se alcanzan los lmites programados. 06/09/2012 Sistemas electrnicos Dr. L. Salazar 24

06/09/2012

12

Sensores
Los sensores usados son del tipo DS18B20, este es el sucesor del DS1820, tiene un margen de temperaturas de -55 a 125 grados con una resolucin y una precisin de medio grado y funciona con el protocolo de comunicacin 1wire de Dallas(Maxim). El microcontrolador PIC10F202 hace de adaptador entre este protocolo y los comandos RS232 con los que se comunica con el PC. Este sensor se usa en el modo "parasite power" que nos permite usar solo dos hilos en el bus, de este modo el pin de alimentacin del sensor se une a masa y el pin central sirve tanto para alimentar el sensor como para leer los datos.

DS18B20
Descripcin: Este es el sensor de temperatura ms reciente de Maxim. Reporta cambios de temperatura con una precisin de 9 a 12 bits, desde -55C hasta 125C (+/-0.5C). Cada sensor tiene un nmero serial nico de 64-Bit grabado. Caractersticas: Interfaz de 1-Wire para comunicacin. Cada dispositivo tiene un cdigo serial nico de 64-bit guardado en una memoria ROM interna. No requiere componentes externos. Puede ser alimentado a travs de la lnea de datos. El rango de voltajes de alimentacin es de 3V a 5.5V Realiza mediciones desde 55 C hasta +125 C (67 F hasta +257 F) 0.5 C de exactitud desde10 C hasta +85 C Resolucin seleccionable de 9 a 12 bits. Convierte la temperatura a una palabra digital de 12 bits en 750ms (max.) Alarmas configurables por el usuario en memoria no volatil Aplicaciones de control trmico, sistemas industirales, productos finales, termmetros y cualquier otro sistema que sea sensible trmicamente.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 26

06/09/2012

Sistemas electrnicos Dr. L. Salazar

25

13

Alarma

Conexin de sensores
La imagen son ejemplos de como pueden ir conectados los sensores al bus 1-wire, ser suficiente con usar cable de tipo telefnico de dos hilos, la longitud del bus puede sobrepasar ampliamente los 100 metros sin que haya problemas de comunicacin. Podemos usar usar el nmero de sensores desde uno hasta ocho El orden en el que aparecern los sensores en el programa de visualizacin no depende de la posicin en el bus sino del nmero interno que lleva cada uno grabado en la ROM por tanto se debe comprobar cual corresponde al primero, al segundo, etc.

El termmetro tiene la posibilidad de conectar una alarma externa que activar el programa del PC durante un segundo si al leer las temperaturas estas an alcanzado los lmites prefijados. En este esquema vemos como conectar un rel que puede activar el dispositivo que queramos, este rel es activado por el transistor T1. El circuito se debe alimentar de una tensin externa que debe ser igual a la de funcionamiento del rel. El diodo D1 es necesario para proteger al transistor de las descargas que se producen al conmutar la bobina.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

27

06/09/2012

Sistemas electrnicos Dr. L. Salazar

28

14

Programa de lectura de las temperaturas: Interfase grafica


Programa hecho para el PC que se comunica con el termmetro y visualiza los datos leidos, los compara con unos valores prefijados y si las temperaturas llegan a estos valores activa las alarmas sonora, externa o visual. adems va registrando las temperaturas en un grfico y opcionalmente en un archivo. Con conocimientos de programacin, se puede hacer un programa para ver las temperaturas, solo necesitamos usar un lenguaje que pueda enviar y recibir datos por el puerto serie usando el protocolo de comunicacin

OPCIONES GRAFICAS
El programa tiene las siguientes opciones graficas: Grfico: Permite ver el estado de las temperaturas. Aparecern tantas columnas como sensores conectados, en la base de cada columna el valor de la temperatura y un cuadrado verde o rojo que indica si se ha superado el lmite superior o inferior definido en "Mrgenes". Logs: Registra las ltimas temperaturas leidas y tambin quedan los errores que pudiesen haberse producido. Mrgenes: selecciona los lmites superior e inferior para cada sensor, si estos se alcanzan se activar la alarma externa, la sonora del PC y la visual en las columnas de temperatura. Mximas: Indica las temperaturas mximas y mnimas alcanzadas por cada sensor. ROM: El nmero de sensor(1 a 8), el tipo de familia(28h para estos), la direccin ROM que le corresponde, el CRC y la temperatura actual. Config.: Selecciona varias opciones como por ejemplo el tiempo entre lecturas(5 a 3000 segundos), el tiempo entre cada grabacin en el archivo, validar o invalidar las alarmas, seleccionar los colores del grfico, seleccionar el puerto serie, etc. Salidas: Se dispone de 8 botones que sirven para activar o desactivar cada salida, tambin hay 8 luces que indican el estado de estas. Cada salida se puede activar o desactivar desde su botn pero tambin se puede asignar a su sensor (marcando la casilla correspondiente)

06/09/2012

Sistemas electrnicos Dr. L. Salazar

29

06/09/2012

Sistemas electrnicos Dr. L. Salazar

30

15

Listado:
"Salvar temperaturas" :graba la fecha, hora y temperaturas leidas en un archivo llamado "datos.txt" como en el ejemplo siguiente:

Grfico de registro de temperaturas: Con el botn central se ve un grfico con las temperaturas registradas las ltimas 24 horas si el tiempo entre medidas es de 5 segundos, Si se selecciona cada 10 segundos el tiempo registrado ser de 48 horas, Si se selecciona un minuto, el tiempo registrado ser de ms de 12 das y as sucesivamente .

06/09/2012

Sistemas electrnicos Dr. L. Salazar

31

06/09/2012

Sistemas electrnicos Dr. L. Salazar

32

16

COMANDOS DE COMUNICACIN

Configuracin
En casilla de configuracin adems del tiempo entre cada lectura y cada grabacin en el archivo, tenemos 3 opciones de funcionamiento del programa segn la funcin que vaya a hacer en el PC:

Un programa que lea la temperatura, se puede elaborar en cualquier lenguaje de programacin que sea capaz de enviar y recibir datos por el puerto serie del PC, por ejemplo Visual Basic, Delphi, C, etc. El programa puede configurar el puerto serie seleccionado a 1200 b.p.s., despus debe enviar comandos que consisten en un carcter ASCII y el termmetro contestar con los datos solicitados. Los comandos pueden ser los siguientes:
Comando "O": prueba de comunicacin, el termmetro contesta con "K". Comando "I": Inicia conversin en todos los sensores, espera 750 mS. y contesta al PC con "S" si encontr sensores conectados al bus y con "N" si no los encontr. Despus de este comando, cada sensor tiene en su memoria RAM el valor de la temperatura listo para ser ledo por el PC. Comando "T": Lee la temperatura de los sensores y la enva al PC en 12 bytes: los 8 primeros contienen la temperatura de cada sensor y un bit indicador de si este respondi o no, el 9 byte contiene 8 bits indicadores de si la temperatura es negativa, el 10 byte contiene 8 bits indicadores de si hay que sumar medio grado, el 11 byte contiene el n de sensores detectados y flags indicadores de error y el 12 byte contiene el checksum. Comando "R": Cada sensor tiene un n de serie nico de 8 bytes grabado en ROM, este comando sirve para leer ese cdigo ROM de los sensores, pero en la prctica no es necesario usarlo. Al recibir este comando, el termmetro contesta con 65 bytes: 8 por cada sensor ms uno de checksum. Comando "A": Este comando activa la alarma externa durante un segundo. El programa del PC debe comparar las temperaturas ledas con los lmites seleccionados y si se han superado estos, el mismo programa se encargar de activar la alarma. El termmetro contesta con "A" al PC cuando recibe este comando. El dilogo habitual es enviar "I" y esperar la respuesta del termmetro, despus de esto ya tiene cada sensor su temperatura en la RAM interna preparada para ser leda con el comando "T". 06/09/2012 Sistemas electrnicos Dr. L. Salazar 34

La 1 opcin "Solo PuertoSerie", si el termmetro va a estar conectado al PC en el cual vamos a tener el programa de lectura y no vamos a hacer ninguna consulta desde otro ordenador. La 2 opcin "PuertoSerie y servidor TCP/IP", si el termmetro va a estar conectado al PC en el cual tenemos el programa y adems vamos a consultar los datos desde otro PC conectado a la red. La 3 opcin "Cliente TCP/IP", se marca cuando se lee la temperatura del termmetro conectado a otro PC de la red. Al marcar esta opcin se valida el campo en el que tenemos que poner la direccin IP del PC al cual est conectado el termmetro.
Sistemas electrnicos Dr. L. Salazar 33

06/09/2012

17

Descripcin de cada byte:


Bytes 1 a 8: contienen la temperatura de cada sensor en grados enteros, el bit msb(el de la izda.) indica si el sensor respondi correctamente y debemos ponerle a cero para que nos queden los grados. Byte 9: los 8 bits indican si la temperatura es negativa, el bit msb corresponde al sensor 1 y el lsb al sensor 8. Byte 10: los 8 bits indican si hay que sumar medio grado a la temperatura leda, el bit msb corresponde al sensor 1 y el lsb al sensor 8. Byte 11: el bit 7 indica si hubo error en el bus 1-wire, el bit 6 indica error de CRC(cyclic redundancy check) y los 4 bits lsb contienen el n de sensores detectados en el bus. Byte 12: en este byte est el checksum de los 11 bytes anteriores, o sea el ltimo byte de la suma de estos, en este caso 99+9C+99+99+9C+94+99+9C+00+D3+08=5A7, el checksum es A7. Con esta comprobacin el programa del PC sabe si los datos recibidos son correctos o ha habido algn error de comunicacin.
Sistemas electrnicos Dr. L. Salazar 35

Ejemplo de los 12 bytes que se reciben cuando se enva el comando "T", corresponden a las siguientes temperaturas: 25,5 / 28,5 / 25,0 / 25,5 / 28,0 / 20,0 / 25,5 /28,5

En este ejemplo vemos en la primera lnea el valor en hexadecimal de los bytes recibidos y en la segunda ese mismo valor en binario. Los 8 primeros bytes corresponden a la temperatura de los 8 sensores, excepto el bit msb(el de la izda.) de cada uno que siempre est a 1 indicando que el sensor ha respondido. Este bit hay que ponerle a cero y nos queda el valor de la temperatura en grados enteros, en el primer byte nos quedarn 25 grados, luego debemos comprobar el bit msb del byte 9 para ver si la temperatura es negativa, en este caso est a 0 por tanto es positiva, despus comprobamos el byte 10 que corresponde al primer sensor y vemos que est a 1 lo cual indica que hay que sumar 0,5 grados, as que la temperatura del primer sensor es de 25,5 grados. Tambin debemos comprobar que los bits indicadores de error en el byte 11 estn a cero y que el checksum es correcto.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 36

06/09/2012

18

ESTANDAR RS 485
EIA-485, also known as TIA/EIA-485 or RS-485, is a standard defining the electrical characteristics of drivers and receivers for use in balanced digital multipoint systems. The standard is published by the ANSI Telecommunications Industry Association/Electronic Industries Alliance (TIA/EIA). Digital communications networks implementing the EIA485 standard can be used effectively over long distances and in electrically noisy environments. Multiple receivers may be connected to such a network in a linear, multi-drop configuration. These characteristics make such networks useful in industrial environments and similar applications.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 37

ESTANDAR RS-485

EIA RS-485 Twisted pairNetwork Topology Point-to-point, Multi-dropped, Multi-point Maximum Devices: 32 drivers or receivers Maximum Distance: 1200 metres (4000 feet) Mode of Operation: Differential signaling Maximum Baud Rate: 100 kbit/s - 10 Mbit/s Voltage Levels: -7 V to +12 V Mark(1): Positive Voltages (B-A > +200 mV) Space(0): negative voltages (B-A < -200 mV) Available Signals: Tx+/Rx+, Tx-/Rx- (Half Duplex) Tx+, Tx-, Rx+, Rx- (Full Duplex) Connector types: Not specified. Physical Media:

Standard:

06/09/2012

Sistemas electrnicos Dr. L. Salazar

38

19

Seal en modo diferencial

RS232- RS485

Se utiliza una conexi conexin balanceada. Se consigue mejorar la velocidad y mayor distancia.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 39

EIA-485 cable usually made with twisted pair (like EIA-422) and may span up to 1200 metres. The recommended arrangement of the wires is as a connected series of point-to-point nodes, a line or bus. Ideally, the two ends of the cable will have a termination resistor connected across the two wires and two powered resistors to bias the lines apart when the lines are not being driven. The value of each termination resistor should be equal to the cable impedance (typically, 120 ohms for twisted pairs). 06/09/2012 Sistemas electrnicos 40 Dr. L. Salazar

20

CARACTERISTICAS RELEVANTES Velocidad mxima de 100Kbps hasta 1200m y de 10Mbps hasta 12m. Rango de seales: mximo 6V,mnimo 200mV. Amplificadores de triple estado, permiten interconectar hasta 64 dispositivos.

COMPARACIN
El uso de tensiones elevados de hasta 15V en RS232 y de circuitos no balanceados hace que sea ms susceptible al ruido. En cambio en RS-485 se utilizan voltajes mximo de 6V y circuitos balanceados por lo que se reduce el factor de ruido. Con RS-485 se permiten conectar hasta 64 dispositivos y se puede llegar a distancias mas largas.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

41

06/09/2012

Sistemas electrnicos Dr. L. Salazar

42

21

Ejemplo: monitoreo de medidores elctricos

Conversores RS232 / RS485


Permite pasar de una comunicacin RS-232 a una RS-485 y viceversa El dispositivo al que se conecta el conversor debe realizar el control del RTS Los puertos RS-232 y RS-485 pueden estr optoacoplados Es un dispositivo transparente al sistema

06/09/2012

Sistemas electrnicos Dr. L. Salazar

43

06/09/2012

Sistemas electrnicos Dr. L. Salazar

44

22

PROTOCOLO MODBUS
APLICACIONES DE CONTROL Y DE INSTRUMENTACION INDUSTRIAL

PROTOCOLO MODBUS
El protocolo de comunicaciones industriales MODBUS fue desarrollado en 1979 por la empresa norteamericana MODICON Debido a que es pblico, relativamente sencillo de implementar y flexible se ha convertido en uno de los protocolos de comunicaciones ms populares en sistemas de automatizacin y control. Existen tambin versiones con pequeas modificaciones o adaptadas para otros entornos (como p.ej JBUS o MODBUS II)

06/09/2012

Sistemas electrnicos Dr. L. Salazar

45

06/09/2012

Sistemas electrnicos Dr. L. Salazar

46

23

PROTOCOLO MODBUS
MODBUS especifica el procedimiento que el controlador y el esclavo utilizan para intercambiar datos, el formato de estos datos, y como se tratan los errores. No especifica estrictamente el tipo de red de comunicaciones a utilizar, por lo que se puede implementar sobre redes basadas en Ethernet , RS-485, RS-232 etc.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 47

DESCRIPCION GENERAL
MODBUS funciona siempre en modo maestro-esclavo (cliente - servidor), siendo el maestro (cliente) quien controla en todo momento las comunicaciones con los esclavos que pueden ser hasta 247 (@1d a @247d). Los esclavos (servidores) se limitan a retornar los datos solicitados o a ejecutar la accin indicada por el maestro. La comunicacin del maestro hacia los esclavos puede ser de dos tipos: peer to peer: en que se establece comunicacin maestro - esclavo, el maestro solicita informacin y el esclavo responde (se enva el comando a un dispositivo comprendido entre las direcciones 1d y 247d). broadcast: en que se establece comunicacin maestro - todos los esclavos, el maestro enva un comando a todos los esclavos de la red sin esperar respuesta (se enva a la direccin @0d).
06/09/2012 Sistemas electrnicos Dr. L. Salazar 48

24

DESCRIPCION GENERAL
La secuencia bsica en las comunicaciones MODBUS consiste siempre en una trama de pregunta, seguida de su correspondiente trama de respuesta Pregunta: con el cdigo de funcin que indica al esclavo que operacin ha de realizar, y los bytes necesarios (datos, comprobacin) para su ejecucin. Respuesta: con la confirmacin o datos resultantes de la ejecucin de la funcin.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 49

DESCRIPCION GENERAL
Existe algn caso concreto, en que hay ms de una trama de respuesta para una trama de pregunta, como p.ej. cuando el maestro enva una operacin cuya respuesta puede llevar al esclavo un tiempo elaborar. En estas situaciones el esclavo enva una primera respuesta indicando que an no tiene los datos y tardar un tiempo en disponer de ellos, y otra segunda respuesta con los datos o confirmacin de la operacin.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 50

25

MODOS DE COMUNICACIN EN MODBUS Las comunicaciones MODBUS se pueden realizar en modo ASCII o en modo RTU. En modo ASCII los bytes se envan codificados en ASCII, es decir, que por cada byte a transmitir se envan dos caracteres ASCII (2 bytes) con su representacin hexadecimal (esto permite leer las tramas con un simple editor de texto). En modo RTU se envan en binario, tal cual. En el modo ASCII las tramas comienzan por 3AH (carcter ':'), y terminan en 0DH-0AH (CR LF Carrier Return Line Feed) y cada byte se enva como dos caracteres ASCII. En modo RTU no se utiliza indicador de inicio y final de trama. 06/09/2012 Sistemas electrnicos
Dr. L. Salazar

MODOS DE COMUNICACIN MODBUS


Carcteres Comprob. Error Inicio de trama Final de trama Distancia max. entre caracteres Bit de inicio Bits de datos Paridad Bits de parada Modo ASCII ASCII 09,A.F LRC Longitudinal Redundancy check Carater : Character CR/CL 1 seg 1 7 Par / Impar / Ninguna 1 si hay paridad 2 si ninguna Modo RTU Binario 0255 CRC Cyclic Redundancy Check 3.5 veces t de carcter 3.5 veces t de carcter 1.5 veces t de carcter 1 8 Par / Impar / Ninguna 1 si hay paridad 2 si ninguna

51

06/09/2012

Sistemas electrnicos Dr. L. Salazar

52

26

PROTOCOLO USB

JUSTIFICACION
Problemas que tienen los PCs (problemas debido a un diseo deficiente en algunos aspectos) es fundamentalmente escasez de determinados recursos: Lneas de interrupcin IRQs Canales de acceso directo a memoria DMAs. En ambos casos las capacidades del diseo inicial tuvieron que ser dobladas en 1984, tres aos despus de su lanzamiento, aprovechando la aparicin de la gama AT.

06/09/2012

Sistemas electrnicos Dr. L. Salazar

53

06/09/2012

Sistemas electrnicos Dr. L. Salazar

54

27

JUSTIFICACION
La instalacin de perifricos ha sido un constante quebradero de cabeza para los ensambladores: asignar los escasos recursos disponibles entre los dispositivos del sistema. El estndar PnP ("Plug and Play") vino a aliviar en parte las dificultades mecnicas de cambiar "jumpers" en las placas, El problema persista, ya que desde la aparicin del PC el diseo de bus para comunicacin externa no haba sufrido cambios sustanciales.
06/09/2012 Sistemas electrnicos Dr. L. Salazar 55

JUSTIFICACION
Los puertos serie y paralelo presentaban claras limitaciones en cuanto a capacidad de expansin y rendimiento, a pesar de que haban persistido desde los inicios del PC, y de su conveniencia para multitud de aplicaciones. Por las razones expuestas y como una necesidad de dotar al PC de un bus de alta velocidad que ofreciera las caractersticas ideales (PnP, universalidad, facilidad de conexin y desconexin incluso en caliente (Hot Swappable)), un consorcio formado por multitud de empresas desarroll una nueva interfaz estndar para la conexin de dispositivos externos del PC, el denominado puerto USB (Universal Serial Bus).
06/09/2012 Sistemas electrnicos Dr. L. Salazar 56

28

CONSORCIO
Las empresas que formaron el grupo inicial fueron siete: Compaq, Intel, IBM, Microsoft, Nec, Northern Telecom y Digital Equipment

USB
Como su nombre indica, es un bus serie bidireccional y de bajo coste, diseado como una extensin en la arquitectura estndar del PC y orientado principalmente a la integracin de perifricos y en sus orgenes dirigidos a la integracin de dispositivos telefnicos CTI en los ordenadores (Computer Telephony Integrations).
06/09/2012 Sistemas electrnicos Dr. L. Salazar 58

06/09/2012

Sistemas electrnicos Dr. L. Salazar

57

29

Ao 1994 1994 1995 1996 1996 1996 1998 1998 1998 1998 1999 1999 1999 1999 2000 2000 2000 2001 2002 06/09/2012

Suceso Compaq, Intel y el resto de empresas iniciaron las especificaciones del Universial Serial Bus 30 Diciembre USB 0.8 (Borrador) 13 Abril USB 0.9 (Borrador) 15 Enero USB 1.0- Velocidad Oficial 12 Mbps Febrero Intel anuncia sus primeros chips controladores de USB Microsoft saca la versin de Windows 95 OSR 2.1 que introduce Agosto los controladores correspondientes para elanejo m de los dispositivos USB Sale a la venta el iMac de Apple que utilizaba el USB 1.0 para la Marzo conexin de teclado y ratn Sale al mercado el Windows 98, el primer Sistema Operativo con 24 Junio soporte completo para USB Noviembre USB 1.1- Revisin completada USB-IF ( ->Compaq, Intel, 23 Septie mbre Microsoft, NEC) USB-IF supera el record mundial de perifricos conectados a un Noviembre simple PC mediante USB (111 perifricos) Se forma el grupo promotor del USB 2.0 Febrero Se propone 240 Mbps como velocidad 12 Octubre Versin 0.79 del USB 2.0. Se aumenta la velocidad a 480 Mbps 21 diciembre Versin 0.9 del USB 2.0 In-Systems muestra la primera unidad de almacenamiento USB 29 febrero 2.0, una unidad zip modificada Microtech y Netchip muestran su scanner USB 2.0 en el foro de 17 Marzo desarrollo de Tokio 27 Abril USB 2.0- Velocidad Oficial 480 MbpsUSB-IF ( ->Compaq, Hewlett-Packard, Intel, Lucent, Microsoft, NEC, Philips)

Mes

CARACTERISTICA S La especificacin del USB proporciona una serie de caractersticas


que pueden ser distribuidas en categoras. Estas caractersticas son comunes para todas las versiones (desde la 1.0 hasta la 2.0) Fcil uso para los usuarios Modelo simple para el cableado y los conectores Detalles elctricos aislados del usuario (terminaciones del bus) Perifricos auto-identificativos Perifricos acoplados y reconfigurados dinmicamente (Hot Swappable) Flexibilidad Amplio rango de tamaos de paquetes, permitiendo variedad de opciones de buffering de dispositivos Gran variedad de tasas de datos de dispositivos acomodando el tamao de buffer para los paquetes y las latencias Control de flujo para el manejo del buffer construido en el protocolo
59 06/09/2012 Sistemas electrnicos Dr. L. Salazar 60

EVOLUCION HISTORICA

18 Diciembre USB 2.0 OTG - (On-The-Go) Ampliacin del USB 2.0. Intel saca a la venta los primeros chipsets que integran-speed Hi Mayo USB 2.0 en el Controlador de Hubelectrnicos de I/O (ICH4). Estos ipsets ch Sistemas fueron el Intel 845E, 845GDr. y el L. 845GL. Salazar

30

CARACTERISTICAS
Ancho de banda iscrono Se garantiza un ancho de banda y bajas latencias apropiadas para telefona, audio, Cantidad de trabajo iscrono que puede usar el ancho de banda completo del bus. Control de flujo para el manejo del buffer construido en el protocolo Amplia gama de aplicaciones y cargas de trabajo adecuando el ancho de banda desde unos pocos kbs hasta varios Mbs Soporta tanto el tipo de transferencia iscrono como el asncrono sobre el mismo conjunto de cables. Conexiones mltiples, soportando operaciones concurrentes de varios dispositivos. Soporta hasta 127 dispositivos fsicos. Soporta la transferencia de mltiples datos y flujos de mensajes entre el host y los dispositivos
06/09/2012 Sistemas electrnicos Dr. L. Salazar 61

CARACTERISTICA S
Robustez Manejo de errores y mecanismos de recuperacin ante fallos implementados en el protocolo. Insercin dinmica de dispositivos Soporte para la identificacin de dispositivos defectuosos. Implementacin de bajo coste Sub canal de bajo coste a 1.5 Mbs Conectores y cables de bajo coste Adecuado para el desarrollo de perifricos de bajo coste
06/09/2012 Sistemas electrnicos Dr. L. Salazar 62

31

CABLE DE CONEXIN EXTERNO


Cable de velocidad alta y media, con un conector macho de Serie A en un extremo y un conector macho de Serie B en el otro extremo

06/09/2012

Sistemas electrnicos Dr. L. Salazar

63

06/09/2012

Sistemas electrnicos Dr. L. Salazar

64

32

06/09/2012

Sistemas electrnicos Dr. L. Salazar

65

33

Anda mungkin juga menyukai