Tutoriales
 

Creando nuestro robot móvil

7.- Especificaciones técnicas

 

7.1.- Comunicación serie

Comentaremos la comunicación SCI (Serial Comunication Interface), poniendo un sencillo ejemplo del funcionamiento y utilidades con el puerto RS-232.

Después haremos hincapié en nuestro dispositivo SCI por USB con el integrado de la empresa FTDI, FT232BM, el cual es un transciver capaz de emular un VCP en nuestro ordenador actuando como hardware el puerto USB.

 

7.1.1 RS-232

SCI es un enlace serie asíncrono que data de 1962. También es conocido como UART (Universal Asynchronous receiver transmitter). Es full-duplex y sólo admite la transmisión-recepción entre dos elementos (punto a punto). La velocidad máxima de transmisión suele ser 256kbps con cables de 15m (50 pies). El protocolo es el de la norma RS-232 pero los niveles eléctricos difieren, por lo que es necesario un integrado adaptador de niveles tipo MAX232 para poder utilizar el SCI como puerto RS-232. Dicho puerto es también conocido como puerto COM o puerto serie.

 

7.1.1.1 Conectores y cables

El conector más usual es el DB9, mostrado en la siguiente figura.


Conector DB9 y función de cada línea

 

El conector macho (plug) y el hembra (socket) son algo diferentes. En el primero, la patilla 2 corresponde a la línea de recepción, y la 3 a la línea de transmisión. En el segundo ocurre al revés. De este modo, al interconectar dos dispositivos, si uno tiene conector macho y otro hembra, el cable a utilizar será un cable no cruzado. Si los dos dispositivos tienen el mismo tipo de conector entonces será necesario un cable cruzado, en el que el pin 3 de un extremo está conectado al 2 del otro y viceversa.

El conector RS-232 de nuestro PC es macho. Dado que los cables más comunes y fáciles de encontrar son los macho-hembra, lo más cómodo es que en nuestra tarjeta utilicemos al menos un conector hembra. A la hora de diseñar la placa tendremos que tener presente:

- La patilla 2 y la 3 tienen distintas funciones dependiendo de si el conector es macho o hembra.

- Los footprints de los conectores macho y hembra parecen iguales, pero el orden de sus patillas difiere.

 

7.1.1.2 El integrado MAX232

El integrado MAX232 está basado en dos bombas de carga, una dobladora y otra inversora. Gracias ellas las salidas del integrado pueden tomar valores de +-10V a partir de una tensión de alimentación de 5V. De ahí la necesidad de los condensadores externos, cuyo valor será 1uF para el MAX232 y 100nF para el MAX232A y el ST232.


Diagrama de conexiones del ST232/MAX232

 


Cable adaptador TTL-RS232 basado en MAX232

 

7.1.1.3 Protocolo

El estado dominante de la línea es ‘1’, por lo que se dice que es un protocolo NRZ (No Return to Zero). Eléctricamente un ‘1’ se corresponde con un valor entre -3 y -15V, y un ‘0’ con un valor entre +3 y +15V.

En primer lugar se manda un bit de start (0) que sirve al receptor para la sincronización. Posteriormente se envía el mensaje (1 byte) y un bit de stop (1). Para enviar el siguiente byte se repetiría el proceso. A este tipo de transmisión se le denomina 8N1.

A veces se añade un bit de paridad para comprobar si el dato se ha recibido correctamente. Su valor depende del byte enviado y del tipo de paridad.

- Paridad par: Su valor es 0 si el número de ceros enviados es par

- Paridad impar: Su valor es 0 si el número de ceros enviados es impar

Existen otras variaciones en el protocolo tales como la utilización de dos bits de stop, transmisión de datos de siete bits, etc. por lo que tendremos que verificar que las dos unidades utilizan el mismo protocolo. Nosotros usaremos siempre el 8N1, que es con mucho el más utilizado.

 


Transmisión vía RS232 en modo 7 bits

 

A la hora de visualizar la transmisión con el osciloscopio hay que tener en cuenta dos cosas:

- Dado que primero se envía el bit de menos peso, el byte debe ser leído de derecha a izquierda.

- Como hemos visto los valores negativos de tensión corresponden a un ‘1’, y los positivos a un ‘0’. Para no liarnos lo mejor es invertir el canal para ver los unos como tensiones positivas y los ceros como tensiones negativas.

 

7.1.2 USB

7.1.2.1 Introducción al USB

El Bus de Serie Universal (USB, de sus siglas en inglés Universal Serial Bus) es una interfaz que provee un estándar de bus serie para conectar dispositivos a un ordenador personal (generalmente a un PC). Un sistema USB tiene un diseño asimétrico, que consiste en un solo servidor y múltiples dispositivos conectados en serie para ampliar la gama de conexión, en una estructura de árbol utilizando concentradores especiales.

El estándar incluye la transmisión de energía eléctrica al dispositivo conectado. Algunos dispositivos requieren una potencia mínima, así que se pueden conectar varios sin necesitar fuentes de alimentación extra. La mayoría de los concentradores incluyen fuentes de alimentación que brindan energía a los dispositivos conectados a ellos, pero algunos dispositivos consumen tanta energía que necesitan su propia fuente de alimentación. Los concentradores con fuente de alimentación pueden proporcionarle corriente eléctrica a otros dispositivos sin quitarle corriente al resto de la conexión (dentro de ciertos límites).

El diseño del USB tenía en mente eliminar la necesidad de adquirir tarjetas separadas para poner en los puertos bus ISA o PCI, y mejorar las capacidades plug-and-play permitiendo a esos dispositivos ser conectados o desconectados al sistema sin necesidad de reiniciar. Cuando se conecta un nuevo dispositivo, el servidor lo enumera y agrega el software necesario para que pueda funcionar.

El USB puede conectar periféricos como ratones, teclados, escáneres, cámaras digitales, impresoras, discos duros, tarjetas de sonido y componentes de red. Para dispositivos multimedia como escáneres y cámaras digitales, el USB se ha convertido en el método estándar de conexión. Para impresoras, el USB ha crecido tanto en popularidad que ha empezado a desplazar a los puertos paralelos porque el USB hace sencillo el poder agregar más de una impresora a un ordenador personal.

En el caso de los discos duros, el USB es poco probable que reemplace completamente a los buses como el ATA (IDE) y el SCSI porque el USB tiene un rendimiento un poco más lento que esos otros estándares. El nuevo estándar Serial ATA permite tasas de transferencia de hasta aproximadamente 150 MB por segundo. Sin embargo, el USB tiene una importante ventaja en su habilidad de poder instalar y desinstalar dispositivos sin tener que abrir el sistema, lo cual es útil para dispositivos de almacenamiento desinstalables. Hoy en día, una gran parte de los fabricantes ofrece dispositivos USB portátiles que ofrecen un rendimiento casi indistinguible en comparación con los ATA (IDE).

El estándar USB 1.1 tenía dos velocidades de transferencia: 1.5 Mbits/s para teclados, ratón, joysticks, etc., y velocidad completa a 12 Mbit/s. La mayor ventaja del estándar USB 2.0 es añadir un modo de alta velocidad de 480 Mbit/s. En su velocidad más alta, el USB compite directamente con FireWare.

Las especificaciones USB 1.0, 1.1 y 2.0 definen dos tipos de conectores para conectar dispositivos al servidor: A y B. Sin embargo, la capa mecánica ha cambiado en algunos conectores. Por ejemplo, el IBM UltraPort es un conector USB privado localizado en la parte superior del LCD de los ordenadores portátiles de IBM. Utiliza un conector mecánico diferente mientras mantiene las señales y protocolos característicos del USB. Otros fabricantes de artículos pequeños han desarrollado también sus medios de conexión pequeños, y una gran variedad de ellos han aparecido. Algunos de baja calidad.

Una extensión del USB llamada "USB-On-The-Go" permite a un puerto actuar como servidor o como dispositivo - esto se determina por qué lado del cable está conectado al aparato. Incluso después de que el cable está conectado y las unidades se están comunicando, las 2 unidades pueden "cambiar de papel" bajo el control de un programa. Esta facilidad está específicamente diseñada para dispositivos como PDA, donde el enlace USB podría conectarse a un PC como un dispositivo, y conectarse como servidor a un teclado o ratón. El "USB-On-The-Go" también ha diseñado 2 conectores pequeños, el mini-A y el mini-B, así que esto debería detener la proliferación de conectores miniaturizados de entrada.


7.1.2.2 Conectores y cables

El USB dispone en su diversidad diferentes tipos de conectores o clavijas dependiendo del uso que le vayamos a dar.

Para ello se dispone en el mercado diferentes tipos de conectores USB, de los cuales sólo indicaremos a continuación aquellos que son los más usados comúnmente.


Conector usb Tipo A

 


Conector usb Tipo B

 


Comparativa mini usb macho tipo B y usb macho tipo A

 

Dependiendo del conector, el número de pines difiere entre ellos y también la disposición de las señales, podemos observarlo en la siguiente tabla:

 


Disposición de señales de los distintos conectores usb


7.1.2.3 El integrado FT232BM

Dicho integrado realiza las funciones de interface USB <-> Serial mediante hardware, con los mínimos componentes externos.

Las principales características del integrado son:

El integrado se realiza en smd y tiene 32 patillas, es capaz de soportar Full Handshaking. La UART interna del integrado soporta las siguientes características:

- 7 / 8 bits de datos.
- 1 / 2 bits de parada.
- Y diferentes tipos de fin de datos (paridad, espacio…).

La velocidad de la comunicación al ser por hardware es bastante rápida, ésta depende del la señal.

- 3M Baudio (TTL).
- 1M Baudio (RS232).
- 3M Baudios (RS442/RS485).

Tiene un buffer de transmisión de 384 bytes y un buffer de transmisión de 128 bytes.

 


Diagrama de pines

 

A continuación pondremos el esquemático realizado en nuestra interface para la comunicación entre el PC y nuestro PIC.


Esquemático básico de conexiones usb.

 

Como podemos observar el número de componentes en mínimo, sólo hace falta 4 resistencias y 5 condensadores, de los cuales 4 de ellos son condensadores de desacoplo, usados para limpiar la señal de alimentación que le llega integrado.

En esta configuración el integrado se alimenta directamente de la alimentación del USB dado por el PC, con lo que no necesita alimentación externa.

También podemos insertar fácilmente una EEPROM externa para poder configurar nuestro dispositivo, de modo que podemos darle un VID y un nombre en concreto a nuestro dispositivo, el cual para nosotros no es muy importante pero si da un gran juego al integrado.

Para ello se optó por una EEPROM de la casa Microchip 93C46, sus principales características son:

- Memoria EEPROM.
- 1K de capacidad de memoria.
- 128 x 8 bits de tabla de organización.
- Bajo consumo gracias a la tecnología CMOS.

 


Esquemático conexión FT232BM y EEPROM 93C46

 

El FT232BM tiene dos salidas para mostrar mediante LEDs si éste está recibiendo o enviando información, lo cual nos es tremendamente útil a la hora de hacer pruebas de comunicación y poder ver lo que ocurre a nuestro integrado.

 


Conexión de led para la visualización de transmisión de datos

 

 
 



Inicio | Foro | FAQ | MapaWeb | BuscadorWeb