Estructura Jerárquica de Buses para Control de un Vehículo

Anuncio
ESTRUCTURA JERARQUICA DE BUSES PARA CONTROL DE UN VEHICULO AUTONOMO
M.Modesti, L.Canali, E. Destefanis
Universidad Tecnológica Nacional FRC GIII
Grupo de investigaciones en informática para la Ingeniería
Universidad Tecnológica Nacional
Facultad Regional Córdoba
CC 36 Sucursal 16, 5016 Córdoba Argentina
Fax : 0054-351-4681823
email : [email protected]
Palabras clave : buses industriales, Vehículo autónomo (AGV ), Red Local (LAN),
Protocolo Control de Transmisión (TCP) / Protocolo de Internet (IP), Protocolo de
datagrama de usuario (UDP ), Controlador de acceso de bus (CAN ), Interconexión de
sistemas abiertos (OSI )
Resumen : Ante la necesidad de teleoperar procesos que requieren de movilidad,
fundamentalmente referida a vehículos de transporte, se propone una estructura capaz
de insertarse en una red existente como un usuario de la misma y controlado por medio
de los protocolos standard disponibles en la red existente
1
Introducción
Inscripto en el proyecto de desarrollo de un vehículo autoguiado, se propone una estructura
de mando aplicando el concepto moderno de internetworking, se plantea una estrategia de control
para la gestión autónoma y remota, considerando al vehículo como una celda de proceso no como
una máquina individual y que el estado del arte en telecontrol hace cada vez más necesario utilizar
medios telemáticos en particular internet y sus protocolos asociados [1], contribuyendo además de
esta manera a acceder de una forma ordenada a los recursos instalados en el vehículo desde
puestos de operación remota haciendo posible una construcción más simple y fácil de crecer
cuanto de mantener.
Las posibilidades de esta concepción hacen que el AGV se incorpore a un sistema
jerárquico de control capaz de comunicarse por medio de distintos protocolos con otros niveles de
gestión inscripto en una topología abierta OSI (Open System Interconnect). Se plantea la
estructura sobre un modelo comunicado por medio de buses y protocolos standard, la arquitectura
que vincula los medios disponibles puede apreciarse en la figura 1.
Figura 1
Estructura de mando para vehículo autónomo ( AGV )
En la figura 1 se muestran los recursos instalados y la topología de la red propuesta, la
misma se desarrolla en tres niveles jerárquicos a continuación detallados.
Nivel de campo : gestión de sensores y actuadores del sistema.
Nivel de control : Para la gestión de navegación por medio de telecámara y joystick
Nivel de supervisión : para el monitoreo del sistema desde estaciones remotas
Se considera una contribución importante al estado del arte en tecnología de guiado, el
hecho que todos los dispositivos del sistema se puedan acceder desde diferentes puntos de
acceso permitiendo la posibilidad de adoptar decisiones de mando en forma distribuida, La
incorporación de esta estructura en una red existente lo hace aún más importante visto que una
red de área local se dispone en cualquier medio fabril actual.
Desde el punto de vista de conexión física se proponen los siguientes standard de comunicaciones a continuación detallados.
2
Nivel de campo : Bus CAN ( Control Area Network )[2]
Este Nivel de Sensores / Actuadores es el más bajo y debe proveer las capacidades de
comunicación para todos los recursos, tanto en velocidad de transmisión cuanto en volumen de
datos a transferir. Este protocolo provee funcionalidad multimaster y capacidad de tiempo real.
El mecanismo de acceso de CAN esta implementado como un arbitro bidireccional no
destructivo, esto último significa que el vencedor del arbitraje ( mensaje de más alta prioridad ) no
debe restablecer el mensaje desde el principio.
El método de acceso es CSMA/CD+AMP (Carrier Sense Multiple Access with Collision
Detection and Arbitration on Message Priority. Acorde con este algoritmo, ambos nodos de red que
establecen una comunicación esperarán hasta que el bus este libre ( Carrier Sense ).
Cuando esto ocurra, ambos nodos transmitirán su bit de start ( Multiple Access ). En la
figura 2, a continuación se observa el esquema de hardware utilizado para el bus detallado.
Figura 2
Estructura de hardware de CAN
En las unidades del vehículo los nodos están controlados por una unidad gestionada por
PIC con interfase CAN MCP2510 y como tranceptores físicos MCP82C250 para obtener los
niveles eléctricos normalizados. del RS485 modificado
En el mando constituido por un PC Pentium standard la interfase CAN es una tarjeta
comercial Advantech PCL-841.
3
Nivel de Control : LAN wireless spread spectrum IEEE 802.11
Debido a las características móviles de la máquina obligan a un enlace radial de red. La
interface es capaz de proveer servicios a través de Ethernet por medio de un enlace wireless
spread spectrum, con diversos protocolos, en este caso particular será TCP/ IP.
Este nivel de control estará trazado sobre una plataforma Ethernet que responde a las
recomendaciones IEEE para redes locales y metropolitanas, 802.3 para CSMA/CD y 802.11 para
comunicación inalámbrica.
En este nivel se resuelven las estrategias de guiado por medio de la transmisión de
consignas de joystick así como las imágenes provenientes del vehículo permitirán la información
remota de realimentación de posicionamiento, se hace uso de un algoritmo de compresión de
imágenes capaz de reducir el volumen de datos hasta un 75% por medio de la transformada de
Haar, de manera de no congestionar la red con paquetes de datos voluminosos
4
Nivel de supervisión : Internet / Intranet ( Ethernet )
Las estaciones de supervisión remota a través de intranet / internet del sistema serán
comunicadas por medio de protocolo UDP para evitar todos los mecanismos de garantía de
comunicación que dispone TCP haciendo la comunicación del sistema más lenta.
Los protocolos a utilizar de acuerdo al standard de red de cada nivel serán
Nivel de campo
: CSMA / CA
Nivel de Control
: TCP / IP
Nivel de supervisión : UDP
Las experiencias demostraron que el empleo de protocolos seguros para el manejo de toda
la información hace el sistema lento ya que se deben esperar las confirmaciones de arribo y
secuencia, no obstante una comunicación ¨híbrida¨ del tipo TCP/UDP es una solución aceptable,
adjudicando la jerarquía correspondiente a los datos a transmitir. Las aplicaciones fueron
realizadas en Builder C++
5
Arquitectura del software de aplicación
La aplicación del nivel de control se encuentra en el mando del vehículo conformando un
nodo entre la red CAN del vehículo mismo y la red local por medio de una unidad Ethernet
inalámbrica.
La estructura predominante para este tipo de aplicación sea en CAN o TCP/IP es del tipo
mailbox [2] ( casilleros de correo ), lo que significa que los datos compartidos serán tomados de un
casillero de arribo de los diferentes niveles de red y depositados en casillas de correo pertinentes a
cada nivel de aplicación, este tipo de recurso permite desvincular los dos niveles de red diferentes
para que cada uno trabaje a la velocidad que requiera, independientemente de las solicitudes del
proceso en cada caso.
Es evidente por otra parte que no todos los datos de cada nivel deben ser transferidos al
otro nivel por lo que existirá una sub-aplicación capaz de discernir el reenvío de los datos a uno u
otro nivel cambiando los paquetes de casillero. El casillero oficiará de cola de espera donde los
datos luego de ser enmarcados con el header correspondiente al protocolo serán depositados en
el casillero destino para luego ser enviados al medio físico.
El enmarcado de los datagramas no es un problema a resolver debido que en el caso de
CAN se dispone de una interfase inteligente (MCP2510) que se ocupa de la incorporación de los
atributos correspondientes para la confección del datagrama a nivel de microcontrolador en las
unidades esclavas y por medio del driver de la tarjeta en el PC, en la fig. 3 puede apreciarse la
estructura interna de un nodo CAN, Para el enmarcado de los datagramas TCP, se utilizan
funciones de alto nivel de Builder.
Visto que el intercambio de datos se producirá a nivel de link de datos, ver fig 4, la
aplicación oficiará de puente entre ambos protocolos. Los puentes son el vínculo entre diferentes
buses con diferentes tipos de acceso, no es un dispositivo inteligente . Interpreta tanto nivel 1
como nivel 2 de la estructura OSI [3], y en este caso, esta aplicación está resuelta por medio de
software.
La aplicación tendrá injerencia solamente en los niveles 1, 2, y 7 de OSI, que puede
apreciarse en la Fig. 4 con los dispositivos de asistencia en la comunicación.
A nivel de controlador en las unidades del vehículo la aplicación estará conformada de
casilleros de correo entre la aplicación resuelta por el control del dispositivo y la red que conforma
el nodo mismo.
Figura 3
Estructura para comunicaciones CAN
Figura 4
Estructura OSI y dispositivos de asistencia
La aplicación en la estación remota de control y estaciones de supervisión están corriendo
sobre Windows NT y los programas utilizan los servicios TCP/IP del compilador Builder C++. La
comunicación será realizada por medio del acceso a través del socket API de windows NT [4]
haciendo uso de las librerías a tal efecto disponibles en Builder C++.
6
Trabajo a futuro
En la actualidad el standard CAN utilizado es el básico que permite un datagrama de 11 bits,
y a los efectos de incorporar un mayor performance de comunicaciones se implementará el CAN
extendido que dispone de un datagrama de 29 bits, con el objeto de poder explotar al máximo las
prestaciones de este bus.
Visto que el enlace de datos consiste en una plataforma de comunicaciones multiprotocolo,
sea en el lazo directo como de retroalimentación del sistema interactuado por la estación remota,
se procederá al modelado de la estructura de redes a los efectos de poder simular el control sea
en movimientos cuanto operación de los dispositivos a bordo del vehículo.
A los efectos de aumentar la seguridad en la comunicación, se prevé en el futuro incorporar
un reloj de secuencia que permita determinar si los enlaces CAN y TCP/IP se encuentran
operativos para tal efecto se puede enviar sistemáticamente una señal de sincronismo que
permita adoptar decisiones en caso de no existir, como por ejemplo inhibir los accionamientos
hasta disponer de un enlace confiable de comunicaciones, visto que se trata de un proceso de
características móviles.
7
Referencias
[1]
Performance evaluation of control networks: Ethernet, ControlNet and deviceNet
IEEE Control Systems Magazine Vol 21 N°1 pp 66-83 ( 2001 )
[2]
CAN Specification Ver 2.0, 1991, Robert Bosch GmbH, Postfach 50, D-7000 Stuttgart 1
CAN System Engineering, Wolfhard Lawrenz, ISBN 0-387-94939-9, 1997 Springer - Verlag
[3]
OSI / ISO Model
http://www.uleth.ca/~yo0unk/osirefm.htm
[4]
Internetworking with TCP/IP, Client server Programming and applications Vol III
Windows Socket version, Douglas Comer, David stevens
ISBN 0-13-848714-6
2997 Prentice Hall
Descargar