"comprehendere scire est"

Divisor

Consejo Nacional para el Entendimiento Público de la Ciencia.

De Frontera: hacia un laboratorio virtual de robótica


Juan Manuel Ibarra Zannatha + ; Luis Manuel Sastré Leyva +

1. Introducción

El desarrollo tecnológico de los sistemas de comunicación entre computadoras ha avanzado a ritmos vertiginosos. Es así que contamos con sistemas como Internet, el cual soporta innumerables aplicaciones que hacen simple y eficiente el intercambio de una amplia gama de archivos, tales como documentos multimedia, hipertextos, aplicaciones, etc. Estas poderosas herramientas de comunicación permiten no sólo simples intercambios de archivos sino el acceso a complejos sistemas de información, a menudo de manera interactiva. Los costos tanto del equipo y software necesarios para utilizar estos variados servicios está al alcance de una gran cantidad de usuarios institucionales y aun personales ; se prevé que antes de la finalización del presente siglo una gran mayoría de los hogares cuente con servicios de comunicación entre computadoras tipo Internet.

Por otro lado, no todas las instituciones de Educación Superior cuentan con recursos humanos ni materiales suficientes para soportar de manera eficiente la formación de nuevos ingenieros e investigadores. En efecto, tanto el equipamiento experimental en laboratorios didácticos o de investigación, así como los profesionales expertos en su utilización en proceso de enseñanza aprendizaje o en proyectos de investigación es privilegio de pocas instituciones educativas en nuestro país, situación que compartimos con muchos otros países de la región.

Una manera de aprovechar de modo más eficiente el equipamiento disponible en los pocos laboratorios que cuentan con la infraestructura adecuada, es haciéndolos accesibles mediante una herramienta de comunicación entre computadoras tan poderosa como Internet, aprovechando que ésta última está disponible en la gran mayoría de instituciones de educación superior y aún por muchos particulares. Es en este contexto que se propone el Proyecto ROVIR, consistente en el desarrollo de un Laboratorio Virtual de Robótica accesible por Internet.

Actualmente existen varias iniciativas en diversas instituciones de investigación y de educación superior del país tendientes a desarrollar laboratorios de este tipo [1], destacando la que lleva a cabo el ITESM campus Monterrey, pues es el único, a nuestro conocimiento, que se encuentra en estado operativo. Este último permite la realización remota de tareas de manipulación y ensamble robotizado asistido por visión [2].

Muchas de estas iniciativas se enmarcan en proyectos de mayor alcance dentro de un contexto educativo que se ha dado en llamar Universidad Virtual [3], [4]. En estos proyectos esencialmente se consideran tres clases de problemas :

  • educativos : estudio de nuevas filosofías del proceso enseñanza aprendizaje, modificación de las metodologías de enseñanza, optimización del uso de tecnologías educativas audiovisuales avanzadas ;
  • burocráticos : educación presencial vs. educación a distancia, certificación y acreditación de los estudios, control escolar ; y
  • tecnológicos : uso de modernos y sofisticados sistemas de comunicación y de computación, acceso a distancia de prototipos electrónicos, mecánicos, etc.

Descripción del artículo: Después de esta primera sección, en donde se hace una breve exposición de motivos, en la segunda sección de este artículo se presenta someramente el Proyecto ROVIR y, en particular, el alcance de su primera etapa, objeto del presente trabajo. La tercera sección se dedica a la presentación del Laboratorio de Robótica que será puesto dentro de Internet, haciendo énfasis en su manejo original. Finalmente, la cuarta sección sirve para presentar la primera etapa del Proyecto ROVIR, cuyos resultados se comentan en la quinta sección.

2. Proyecto ROVIR
El objetivo del Proyecto ROVIR es el desarrollo de todo un sistema interactivo de educación a distancia vía Internet en el área de Robótica de carácter teórico-práctico, incluyendo, entre otras cosas, textos, videos, audio, presentaciones en Power Point y, sobretodo, el acceso a diversos laboratorios. La primera etapa de este proyecto pretende tan sólo la puesta en servicio, dentro de Internet, de un sistema de programación y simulación de tareas de ensamble robotizado asistido por visión artificial, el cual ya era operacional.

El prototipo correspondiente a la primera etapa del Proyecto ROVIR permite tan sólo desarrollar una aplicación de manipulación robotizada asistida por visión, simularla localmente en una terminal remota y, una vez depurado el programa correspondiente, enviarlo al servidor (host) del laboratorio de Robótica, para ejecutarlo, monitoreando su comportamiento real visualmente desde la terminal remota.

En esta etapa, el proyecto se desarrolla con el concurso de dos estudiantes de pregrado que realizan una estancia de investigación en el Laboratorio de Automatización del CIC-IPN. Estos estudiantes, uno de la U. Autónoma de Sinaloa y el otro de la U. Juárez Autónoma de Tabasco, fueron seleccionados entre los mejores del país y becados por el CONACyT (Consejo Nacional de Ciencia y Tecnología) dentro del VII Verano de la Investigación Científica, programa que mantiene con la Academia Mexicana de Ciencias, A.C.

3. Laboratorio de Robótica
En el Laboratorio de Robótica del CINVESTAV-IPN se dispone de un sistema de manipulación robotizada asistido por visión, representado por el diagrama de la figura No. 1, compuesto de las siguientes partes :

  • Robot UNIMATE S-103 con controlador, teach pendant, basado en el sistema de programación propietario C/ROS.
  • Sistema de adquisición de imágenes digitales OCULUS 200. Genera 30 imágenes por segundo de 256x256 pixeles en 128 niveles de gris.
  • Computadora personal pentium con varios sistemas desarrollados en el laboratorio para la programación y control del robot (ROBOCOP), diversas aplicaciones de control inteligente basadas en Redes Neuronales y Lógica Borrosa, así como sistemas de visión artificial para el robot (AVICON).
  • Sistema de comunicación vía ethernet con redes de computadoras (Internet).


[Esquema del Lab. de Robótica]

Fig 1. Laboratorio de Robótica


Este sistema se usa actualmente para hacer ensambles robotizados asistidos por visión, para lo cual es necesario hacer programas de aplicación en el sistema C/ROS del fabricante del robot [5], [6]. Esto último resulta bastante complicado pues el sistema no está preparado para utilizar información sensorial externa como visión. Para solventar este problema se desarrolló un par de sistemas alternos : AVICON [7] y ROBOCOP [8]. Cabe destacar que estos sistemas se han desarrollado teniendo en cuenta su utilización en procesos de formación de recursos humanos [8]. La descripción detallada de los sistemas utilizados para programar este tipo de tareas se puede encontrar en las referencias mencionadas.

4. Estructura del Sistema
En esta primera etapa del proyecto nuestro laboratorio virtual permite tan sólo desarrollar una aplicación de manipulación robotizada asistida por visión, simularla localmente en una terminal remota y, una vez depurado el programa correspondiente, telecargarlo en el servidor (host) del laboratorio de Robótica, ejecutarlo y monitorear visualmente su comportamiento real.

Los operadores remotos del sistema ROVIR tendrán acceso al Laboratorio Virtual mediante una terminal remota formada por cinco sistemas : un sistema de interfaces, un espacio virtual, un módulo de datos, un espacio de comunicaciones y un sistema operativo. A continuación se describe cada uno de estos sistemas.

  • Sistema de Interfaces. Asegura la comunicación vía Internet. Cuenta con tres módulos : i) Módulo de comunicación de textos de dialogo y de imágenes de televisión para el monitoreo de las tareas. ii) Percepción Visual, módulo encargado de desplegar, en el espacio virtual de ROVIR, la imagen de los objetos presentes en el área de trabajo del robot, a partir de información visual provista por el sistema de visión del robot. iii) Módulo de comunicación de archivos de datos (programas y puntos en formato C/ROS).
  • Espacio virtual. Aquí se tienen los modelos gráficos 3D del puesto de trabajo (robot mas accesorios), así como los objetos a manipular. Este espacio posee una animación manual usada para programar la tarea y una automática usada para la simulación de estos programas.
  • Módulo de datos. Aquí se guardan los programas (tareas) y las posiciones (puntos) en formato C/ROS, ya sea para su posterior simulación o para ser ejecutadas en tiempo real.
  • Espacio de comunicaciones. Gestión de imágenes para el monitoreo visual de la ejecución de tareas mediante un canal de televisión transmitido por Internet y desplegado en una ventana en este espacio. Incluye, además, una ventana de diálogo con el operador local.
  • Sistema Operativo. Modo ejecutivo, permite el acceso a los modos actualización del estado, programación, simulación y ejecución tiempo real, los cuales se describen a continuación : 
     
    • Actualización del espacio virtual. Renovación del estado del puesto de trabajo en el espacio virtual a partir de la información visual recibida del laboratorio.
    • Programación. Este sistema permite describir, dentro del espacio virtual, la tarea de ensamble deseada a partir de una información visual. La programación se hace de manera gestual con el mouse de la computadora.
    • Simulación : Dada una tarea, este modo permite compilar, depurar y simular gráficamente en el espacio virtual remoto.
    • Ejecución tiempo real. Una vez depurada localmente mediante simulación, la tarea descrita por el usuario y los puntos correspondientes, son enviados al Laboratorio de Robótica para su ejecución en tiempo real o bien simulado en el espacio virtual local para su depuración u optimización.

A continuación se presentan someramente las principales componentes del sistema descrito.

4.1 Sistema de Interfaces
A continuación se presentan los tres módulos que constituyen este sistema, cuya misión es básicamente de comunicación entre los usuarios remotos y el Laboratorio de Robótica.

Módulo de Comunicación de Imágenes. Su función es el manejo de las comunicaciones vía Internet relativas a los textos intercambiados (dialogo entre operadores remoto y local) así como de las imágenes de monitoreo visual de la ejecución de la tarea. Este módulo del Sistema de Interfaces se encarga, entonces, de recibir y transmitir estas informaciones así como de actualizar el Espacio de Comunicaciones de ROVIR.

Módulo de Percepción Visual. Módulo encargado de desplegar la imagen de los objetos presentes en el área de trabajo del robot. Para ello utiliza una base de datos, generada por el sistema de visión del robot, en donde se tiene la identidad y la ubicación de todos los objetos presentes en el área de trabajo del robot. Cada objeto ha sido identificado y localizado a partir de los modelos extraídos de una imagen previamente filtrada y segmentada, todo esto se hace en la computadora del laboratorio. La inicialización, calibración del sistema de visión artificial y el aprendizaje (entrenamiento) del sistema de reconocimiento por el momento también se hacen en el laboratorio mismo. En una fase posterior estas funciones deben estar accesibles desde la terminal remota, así como las funciones de procesamiento de la imagen.

El despliegue de la información visual en la terminal remota es interactiva, en el sentido de que es posible que el operador mueva los objetos presentes en el espacio de trabajo del robot para generar el programa de manipulación para el robot. Esta función forma parte del sistema operativo que será descrito más adelante.

Módulo de Comunicación de Archivos. La función del tercer módulo del Sistema de Interfaces es asegurar la transmisión, hacia el Laboratorio de Robótica, de los archivos de programa y de puntos de las tareas generadas en el sistema ROVIR. Otra función de este módulo es la de recibir una tarea generada ya sea directamente en el Laboratorio de Robótica o virtualmente en otra terminal remota para su simulación.

4.2 Espacio Virtual

El espacio virtual, EV, está formado por modelos gráficos 3D articulados que representan al robot y a su espacio de trabajo, incluyendo accesorios y objetos por manipular. El EV se programa en VRML (Virtual Reality Modeling Language) [10], lenguaje con el cual es posible definir objetos 3D (cuerpos geométricos regulares, combinaciones de ellos, objetos arbitrarios, etc.), moverlos individualmente o en conjunto y hacer animaciones entre otras cosas.

[Esquema del Proyecto ROVIR]

Fig 2. Proyecto ROVIR: Laboratorio virtual de Robótica (primera etapa).


En el EV se encuentra el robot, objeto formado por eslabones articulados cuyo movimiento puede ser controlado manualmente mediante el mouse (programación gráfica 3D), o bien a partir de uno de los archivos de programa de las tareas almacenadas en el módulo de datos (simulación gráfica 3D). En el EV se encuentran también todos los accesorios del puesto de trabajo de ensamble y los objetos por manipular.

Por el momento todos los accesorios son estáticos y sólo los objetos por manipular tienen posibilidades de movimiento, pero no autónomo sino asociados a la pinza del robot. Para conseguir que el EV se pueda usar para la programación y la simulación gráficas, los bloques de programa VRML que definen los diferentes cuerpos en el EV y su movimiento relativo han sido parametrizados, mientras que se hicieron bloques de programa que realizan todos los cálculos cinemáticos (directos e inversos) necesarios [7], [8], [9].

4.3 Espacio de Comunicaciones
Su función es el monitoreo visual de la ejecución de la tarea. Una segunda cámara de video transmite una imagen del laboratorio en panorámica, con objeto de poder visualizar desde el puesto de trabajo remoto la ejecución de la tarea. Esta información visual directa complementa la información (textos) intercambiada con el operador del laboratorio mediante la ventana de diálogo de la pantalla del sistema ROVIR.

4.4 Módulo de Datos
La programación del robot se hace mediante un lenguaje, contenido en su sistema operativo C/ROS, compuesto de instrucciones sencillas para mover las articulaciones del robot, su pinza, etc. Éste permite crear un programa con un número limitado (500) de líneas de comandos para lograr el movimiento del robot a través de un máximo de 94 diferentes posiciones. Estos datos están organizados en 2 bytes por cada comando con su argumento, mientras que las coordenadas resolver del robot se almacenan en 8 bytes por posición (2 bytes por cada articulación) [5], [6], [8]. Para que el robot pueda ejecutar el programa, éste debe estar cargado en la memoria de su tarjeta controladora lo mismo que un archivo con los datos. De este modo, el módulo de datos guarda, para cada tarea dos archivos : uno de programa (500 líneas de comandos de 2 bytes cada uno) y otro de puntos (94 posiciones de 8 bytes cada una).

4.5 Sistema Operativo
El Sistema Operativo es la parte central del sistema ROVIR, pues es el encargado de la gestión y coordinación de todos los sistemas y componentes que lo forman, así como de atender al operador de la terminal remota, haciendo un uso aparente (¡virtual!) de las facilidades del Laboratorio de Robótica. En este apartado se hace una descripción somera de los diferentes modos de operación del sistema.

Actualización del Espacio Virtual. Como se mencionó anteriormente, en el EV se tienen bloques VRML parametrizados para representar a los diferentes objetos que pueden estar presentes en el espacio de trabajo del robot y, por tanto ser vistos por su sistema de visión. Cada vez que así lo requiera el operador, se puede hacer la actualización del EV con la información visual enviada por el Laboratorio de Robótica. Esta información no es una imagen, sino que es un modelo formado por un vector en donde aparece el nombre del objeto reconocido (forma y dimensiones), su ubicación (coordenadas de su baricentro) y su orientación (momento de primer orden). Con estos datos se hace uso de los bloques VRML parametrizados para desplegar los objetos correspondientes. La actualización se hace, generalmente, al inicio de la tarea de programación, pero también puede hacerse al final de la ejecución en tiempo real de alguna tarea, o en el momento que lo desee el operador.

Programación. En el proyecto ROVIR el usuario programará al robot en una terminal remota de manera gráfica, utilizando el mouse para mover los objetos a su destino, desde su posición original, en el orden deseado. Esto significa que el archivo de comandos del programa se debe generar automáticamente, así como el de datos (posiciones del robot), almacenándose en el Módulo de Datos de la computadora remota.

Se puede mover el robot cogiéndolo con el mouse en cualquiera de sus eslabones, en particular de la pinza, o bien seleccionar un punto del espacio con el mouse y, al hacer click, hacer que la pinza se desplace a dicho punto. Otra opción consiste en teclear las coordenadas de la posición a la cual se desea enviar la pinza, ya sea del tipo resolver, articulares (Denavit-Hartenberg) o cartesianas [8]. La opción más interesante consiste en pedir que la pinza se ubique no en punto sino en un objeto, es decir haciendo referencia a uno de los objetos vistos por el sistema de visión del Laboratorio. La tarea así programada se almacena en el Módulo de Datos en forma de dos archivos : uno con el programa (comandos de movimiento) y otro con los puntos (posiciones), de acuerdo con el sistema C/ROS del fabricante del robot utilizado [4].

Simulación. Terminada la fase de programación gráfica 3D, el operador remoto procede a su simulación igualmente gráfica 3D en el Espacio Virtual, con objeto de depurar y optimizar la tarea de manera iterativa. En este modo de operación, el sistema toma la tarea, almacenada en el Módulo de Datos y ejecuta el programa usando los puntos correspondientes.

Ejecución en Tiempo Real. En esta fase, todo el trabajo de programación de una cierta tarea de manipulación robotizada realizado en el espacio virtual se ejecutará en el Laboratorio de Robótica (¡real!). Aquí se tiene, en un primer tiempo, una fase de comunicación entre la terminal remota y el Laboratorio de Robótica y luego la ejecución en tiempo real de la tarea, la cual será monitoreada visualmente en el Espacio de Comunicaciones.

5. Comentarios Finales
En este trabajo se hizo la descripción del Laboratorio Virtual de Robótica, sistema RoVir, desarrollado conjuntamente por el CINVESTAV-IPN y el CIC-IPN, en su primera fase. Su objetivo era hacer operacionales las ideas fundamentales del proyecto, a saber : la comunicación de un operador remoto con el Laboratorio de Robótica vía Internet ; la transmisión de imágenes de monitoreo y de textos de diálogo por la misma vía ; la generación de programas de manipulación usando técnicas gráficas de realidad virtual, así como su simulación. El sistema desarrollado funciona únicamente en plataformas PC, aunque algunas de sus componentes principales (EV) también funcionan en plataformas Unix (workstation).

Todo esto se logró, pero consideramos que puede realizarse de manera más eficiente, tal vez con el uso de herramientas computacionales más apropiadas. Además, falta la incorporación de otras facilidades como la calibración del sistema de visión entre otras por lo que continuamos trabajando este proyecto para tener una versión que se acerque más a los objetivos del proyecto ROVIR trabajando en cualquier tipo de plataforma.

Fuentes.
Cómo citar este artículo ISO690.
Portada Aleph-Zero

Aleph-Zero 11


Revista de Educación y Divulgación de la Ciencia, Tecnología y la Innovación

Espinelas de aluminato de magnesio (mgal2o4): síntesis y caracterizacion de la estructura .

Científicos. Omar Valencia M. + Instituto Politécnico Nacional - E.s.i.q.i.e., Zacatenco; José Salmones B. + Instituto Mexicano Del Petróleo, S.t. I; Gabriel Aguilar R + Instituto Politécnico Nacional ; Alberto Galicia A. + Instituto Mexicano Del Petróleo, S.t. I.

Los hongos y el hombre. biodiversidad e impacto ecológicos, social y económico. .

Divulgadores. Dr. Gastón Guzmán + Instituto de Ecología de Xalapa. México.

La selectividad de anticuerpos monoclonales anti-DNApor secuencias de DNA .

Divulgadores. Irene Tiemann Boege +; Javier Garcés Eisele + Universidad de las Américas-Puebla ; Alejandro Ruiz Argüelles + Laboratorios Clínicos de Puebla..

Usted está aquí .

Divulgadores. Orlando Guzman + UAM.

Qué es una Teoría de líquidos .

Divulgadores. Orlando Guzmán López + Laboratorio de Termodinámica, UAM-Iztapalapa .

11 - septiembre - octubre 1997 - editorial .

Editorial. Miguel Ángel Méndez Rojas.

De Frontera: in situ generation of supporting electrolyte for direct electrosynthesis. .

Investigación. Mendez-Rojas M.A. + Department of Chemistry, Texas Christian University, Fort Worth 76120, TX, USA; Gojon-Zorrilla G. + ; Quiroz M.A. + Electrochemistry Laboratory-9209, Department of Chemistry and Biology, Universidad de las Américas-Puebla + ; González-Vergara E. + Chemistry Center, Science Institute-Benemerita Universidad Autónoma de Puebla, Puebla.

Ciencia ficcion: La otra orilla .

Qwerty. Orlando Guzmán + (para L.);.

Ciencia ficción: cardiograma .

Qwerty. Orlando Guzmán + UAM;.

De Frontera: hacia un laboratorio virtual de robótica .

Tecnólogos. Juan Manuel Ibarra Zannatha + ; Luis Manuel Sastré Leyva + .