Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En el presente trabajo se plantea la idea trabajar con un ambiente de simulacin sobre un motor
de juegos para creacin de mundos virtuales, Unity 3D, para un robot y su entorno; el cual
permite una comunicacin bidireccional con un software de procesamiento matemtico
(Matlab) con el objetivo de facilitar tareas de simulacin de herramientas matemticas aplicadas
a robtica. Se genera una independencia entre el procesamiento matemtico y el
procesamiento grfico. Esta comunicacin bidireccional ha sido generada a travs de Internet
en base a un protocolo Machine-to-Machine como es MQTT (Message Queuing Telemetry
Transport Protocol).
1. Introduccin
La Teleoperacin exige del canal de comunicacin una baja latencia y ms que una baja latencia:
una latencia constante y coherente con las necesidades de la accin que el robot va a realizar,
tratando de evitar en mayor grado posible la inestabilidad del sistema debida al canal de
comunicacin. [2][3][4].
Adems de la realimentacin, es necesario que el sistema sea capaz de generar una interfaz
dinmica y verstil para que el usuario pueda acoplar una variedad de dispositivos maestros
(joystick, mouse, teclado, etc.) con toda su carga de informacin al sistema de comunicacin.
La comunicacin entre el operador y el robot debe ser dinmica y transparente, desde el punto
de vista de manejar una cantidad variable de usuarios del sistema para efectuar tareas de
control individual y compartido sobre las tareas propias del robot, adems de la visualizacin y
monitoreo por terceros.
Los protocolos M2M (Machine To Machine) han tenido un difundido despliegue en la industria
con el objetivo de responder a las necesidades que plantea la generacin del Internet de las
Cosas (IoT), proveyendo un entorno de comunicacin bastante verstil a nivel de mquinas.
Varios desarrollos de protocolos M2M se encuentran disponibles abiertamente para su uso y
proyeccin a la generacin de aplicaciones enfocadas en el uso del Internet, con el objetivo me
mantener y proveer una comunicacin ubicua entre la diversidad de mquinas que constituyen
un entorno industrial, mdico, investigativo, empresarial, redes de comunicaciones, redes
inteligentes de energa, domtica, mensajera instantnea, entre otras.
Este protocolo provee comunicacin bidireccional, bajo retardo, tiempo real, mltiples usuarios,
seguridad, uso de Internet, entre otras caractersticas propias de cada protocolo; las cuales nos
permiten reconocer que estos protocolos seran adecuados para generar comunicacin en un
ambiente de Teleoperacin y generar Telepresencia mediante la realimentacin de diversas
seales. [4] [7]
El trabajo descrito en [6]: Bidirectional Transport Protocol for Teleoperated Robots hace un
anlisis de los protocolos tradicionales respecto a su aplicacin en la comunicacin en un
ambiente de Teleoperacin, encontrando que los protocolos tradicionales no ofrecen una
respuesta adecuada al intercambio de datos propios de la operacin de un robot, los datos que
el entorno posee y los datos de control que requiere enviar el usuario o los usuarios.
Mencionando como solucin la generacin de un nuevo protocolo de transporte BTP (Bilateral
Transport Protocol).
En [7] se analiza algunas de las aplicaciones de los protocolos Machine to Machine mencionando
las caractersticas y aplicaciones del protocolo: MQTT (Message Queuing Telemetry Transport
Protocol), para el sistema de comunicaciones de Teleoperacin; adems de su aplicacin en
sistemas de control y monitoreo. Por otra parte en [8] se compara la propuesta del uso de
protocolos Websockets para realizar esta comunicacin de Teleoperacin en contraste al uso de
protocolos tradicionales de Internet como son TCP (Transport Control Protocol) y HTTP
(Hypertext Transfer Protocol). Cabe mencionar que MQTT se implementa sobre protocolos
tradicionales (TCP, UDP) realizando mejoras para facilitar algunas caractersticas que se
requieren en el intercambio de informacin de monitoreo y control en tiempo real para los
robots teleoperados.
El presente sistema de simulacin 3D remota est desarrollado con el objetivo de generar una
experiencia a distancia adecuada al usuario para un sistema de teleoperacin de un manipulador
mvil.
Los clientes del sistema son: las aplicaciones de interfaz para el operador humano, el ambiente
de simulacin y el robot. Teniendo en mente la idea de una red Cloud Robotics [10], se plante
un sistema centralizado de enrutamiento de la informacin a travs de un servidor alojado en la
Nube, como se observa en la figura 1.
El protocolo que se plante como solucin para la comunicacin fue MQTT (Message Queuing
Telemetry Transport Protocol). Este protocolo adems de responder a las necesidades del
sistema posee atributos como: alta eficiencia (cabeceras de paquetes bastante reducidas),
calidad de servicio (diferenciacin de informacin), tiempo real, seguridad, comunicacin suave
(no rfagas de paquetes como TCP) [6], bajo consumo de ancho de banda, bajo procesamiento,
simplicidad de entendimiento e implementacin, mltiples clientes y usuarios, control
centralizado de la comunicacin a travs de un servidor (broker). Y como desventaja, este
protocolo no soporta video ni voz. El punto fuerte de este protocolo al momento de
implementarlo es su esquema comunicacin mediante mtodos de Publish y Subscribe;
adems que trabaja con un servidor gratuito ubicado en Internet: PubNub.
M2M:
Protocolo
MQTT
El servidor central o broker empleado para este protocolo fue Pubnub. Este broker provee
servicios de comunicacin M2M: gratuitos, servicio de mensajera gratuita (entre dispositivos
ampliamente compatible), baja latencia, datos en tiempo real (percepcin humana), seguridad,
publicacin, suscripcin, presencia, administracin de acceso, almacenamiento, no posee
calidad de servicio, ni tpicos como si sucede en el MQTT tradicional.
Para definir nuestro sistema se plantearon como clientes al simulador como sistema de
procesamiento grfico (Unity 3D) y al procesador matemtico (Matlab) el cul puede estar
ubicado en el robot o simplemente realizar el procesamiento de las tareas que el robot
proceder a ejecutar.
Un cliente MQTT para PubNub tiene asociada seguridad al momento de la creacin del objeto
de conexin en vista de que para la generacin de un objeto de canal se requiere de la
determinacin de una clave para publicacin y una clave para subscripcin. Adems de que
implementa cifrado opcionalmente para proteger la informacin a travs de la Web.
Las libreras diseadas para Matlab y Unity 3D estn orientadas a la creacin de los objetos de
conexin asociados a una clase que permite generar los mtodos: Conexin, Desconexin,
Publicacin, Subscripcin. Para el mtodo de Publicacin o Publish se requiere del canal al cual
se desea publicar (es posible que existan ms de un objeto de conexin a un diferente canal) y
del mensaje a enviar, el mtodo de Subscripcin o Subscribe requiere nicamente del canal
al cual se va a realizar la subscripcin y de un mtodo de interrupcin al cual se va a llamar cada
vez que llegue un mensaje. El mtodo de Conexin o Conect permite generar el objeto de
conexin y la seguridad para establecer el canal, este mtodo tendr como entrada el canal al
cual se desea conectar, las claves de autenticacin (publicacin, subscripcin, secreta) y si se va
a implementar o no cifrado.
Agradecimiento
Bibliografa
[4] R. Wirz. Efficient transport protocol for networked haptics applications. En Haptics:
Perception, Devices and Scenarios. Springer Berlin Heidelberg, 2008. p. 3-12.
[6] R. Wirz. Bidirectional transport protocol for teleoperated robots. Industrial Electronics,
IEEE Transactions on, 2009, vol. 56, no 9, p. 3772-3781.
[8] L. Srinivasa, J. Scharnagl, K. Schilling. Analysis of websockets as the new age protocol
for
remote robot tele-operation. En Telematic Applications. 2013. p. 83-88.