Silvia Rivadeneira, Juan Fontana, Fabián Altamirano, Andrés Prato, Diana Cruz Grupo de Investigación “Sistemas autónomos integrados” Instituto de Tecnología Aplicada Departamento de Ciencias Exactas y Naturales Unidad Académica Río Turbio Universidad Nacional de la Patagonia Austral
CONTEXTO Palabras clave: sistemas embebidos, sistemas de
El desarrollo de sistemas embebidos de tiempo real tiempo real, VANT, sistemas autónomos integrados, es una de las líneas directamente relacionadas sistemas de control, sistemas de navegación. con el proyecto de investigación 29/C066-1 denominado “Diseño y desarrollo de sistema de control para un UAV” radicado en la 1. INTRODUCCION Unidad Académica Río Turbio (UART) de la Las computadoras se utilizan para controlar una Universidad Nacional de la Patagonia Austral infinidad de sistemas, en nuestro caso nos (UNPA). El proyecto propone el desarrollo de dedicaremos a un vehículo aéreo no tripulado o un sistema software para navegación, guiado y VANT. La computadora deberá interactuar control de un vehículo aéreo no tripulado de directamente con sensores. Su software deberá ala fija, adaptado a su utilización en el entorno reaccionar ante eventos generados por el hardware y climatológico – geográfico de la Patagonia emitir alguna señal en respuesta. Esas señales darán Austral, puntualmente el sector cordillerano, el por resultado alguna acción, tal como orientar el cual difiere enormemente de los entornos, para vehículo hacia otra dirección, estabilizar el vehículo, los cuales se desarrollan en forma comercial, calcular la trayectoria óptima, aumentar o disminuir hay que tener en cuenta que el perfil de vuelo la velocidad de los motores, entre otras. El software en montaña, en el mundo de la aviación en estos sistemas está embebido en el hardware, con conlleva la realización de cursos frecuencia en la memoria de sólo lectura, y, por lo especializados. En nuestro caso por ser un general, responde en tiempo real, a eventos del sistema automatizado, la robustez de los entorno del sistema [1]. sistemas, harán la diferencia llevando las El desarrollo de sistemas embebidos, y por capacidades de los autopilotos a sus extremos. consiguiente, de sistemas en tiempo real, necesita La exploración de los algoritmos necesarios, contar con una estructura de ingeniería de software autoaprendizaje, predicción, toma de capaz de cubrir todos los aspectos del proceso [4]. decisiones, navegación, y ejecución, soportan Cuando hablamos de estructura de ingeniería de un estudio profundo, con el fin de seleccionar y software nos referimos a la tecnología multicapa desarrollar los más indicados para el proyecto. constituida por métodos, herramientas y procesos, Por último, existen entornos de simulación aunque también podemos agregar los paradigmas robótica y marcos de trabajo para el desarrollo que involucra [2], [3]. los mencionados algoritmos de navegación y Un proceso de desarrollo de software se describe aterrizaje que nos permitirán realizar la como un enfoque para la construcción, desarrollo, y validación del funcionamiento del sistema que mantenimiento del software. La complejidad de se propone, sin necesidad de tener un vehículo estos procesos de desarrollo de software se físico. simplifica al utilizar modelos. De los modelos existentes, se aceptan como los más adecuados para los sistemas embebidos de tiempo real aquellos que RESUMEN son iterativos e incrementales. El desarrollo de sistemas embebidos de tiempo real, El desarrollo de estos sistemas embebidos que específicamente, del sistema de control para un resuelven problemas en tiempo real se encuentra en vehículo aéreo no tripulado de ala fija necesitará un un área neutral entre la electrónica, o el hardware, y marco adecuado de ingeniería de software, pero la programación, o el software [4]. también el aprendizaje y uso de recursos de software Reconocemos que el diseño de sistemas embebidos y hardware novedosos para un grupo de es un proceso de ingeniería de sistemas donde los investigación que se está iniciando en estos temas, y, diseñadores de software deben considerar a detalle el por supuesto, la asunción de todos los retos que esto diseño y rendimiento del hardware del sistema. implica. Sommerville sugiere un enfoque basado en un modelo estímulo-respuesta. Teniendo en cuenta que un estímulo es un evento que hace que se produzca En este punto, cabe aclarar, que los dos ejes de una reacción; y una respuesta una señal que envía el investigación se centran en dos sistemas código software a su entorno [1]. Los estímulos pueden ser abierto. periódicos o no periódicos. En [5] se implementa de a) Con el fin de poder realizar las los dos tipos ya que el sensor IMU como el GPS simulaciones correspondientes al proveen señales físicas de “dato disponible” funcionamiento del VANT, se está generadas periódicamente, las cuales generan una trabajando con el entorno RVIZ, el cual interrupción en el microcontrolador facilitando el brinda amplias posibilidades de simulación, envío de datos a los sensores; y en el caso de los consta de diferentes paquetes que sensores que no poseen la capacidad de generar incorporan las rutinas de control y interrupciones se lo hace mediante un reloj interno navegación. RVIZ (Ros Visualización), es que utiliza el NVIC. un visualizador de datos, integrado a ROS El entorno donde se desempeñará nuestro VANT (Sistema Operativo para Robots), que nos también debe ser tenido en cuenta a la hora de permite realizar un modelo y comprobar, su modelar las decisiones que tomará. En cualquier tipo reacción dentro de un entono simulado, a de entorno existen obstáculos físicos o lógicos. Los diferentes variables. Las cuales son físicos podrían ser montañas, edificios, o torres; y obtenidas por los sensores incorporados en los lógicos pueden ser zonas de vuelo prohibido. Los los paquetes de RVIZ. entornos hostiles se caracterizan por la presencia de Las imágenes 1 y 2 muestran la evolución amenazas. La diferencia entre obstáculos y del desarrollo del modelo dentro del amenazas es que los primeros son locaciones inaccesibles y los segundos son zonas de riesgo. Los entornos pueden ser estáticos o dinámicos. Los estáticos se caracterizan porque los elementos que intervienen son conocidos en el momento de generar la trayectoria no habiendo modificaciones durante el vuelo. Los dinámicos son elementos nuevos que aparecen una vez ejecutado el plan de vuelo y no han sido contemplados con antelación [6]. Los retos que se enfrentan en este proyecto, son varios. Entre ellos consideremos la aplicación de diferentes ciencias como por ejemplo: Matemática y física Simulación digital Heurística - Inteligencia artificial Imagen 1. Primer modelo Control automático geométrico en RVIZ. Robótica y mecatrónica Telemática y comunicaciones La combinación de los diferentes saberes se logra entorno RVIZ. En este caso sin utilizar utilizando un equipo integrado y calificado en las Software CAD/CAM, creando directamente diferentes áreas. Los cuales a su vez, deben poder los archivos .URDF. subdividirse los retos a enfrentar con el fin obtener De esta manera, una vez que tenemos el los mejores resultados de todos los integrantes. modelo del vehículo, en nuestro caso un vehículo aéreo. El cual por las 2. LINEAS DE INVESTIGACION y características climatológicas y geográficas DESARROLLO de la zona es de ala fija, con el requisito, Los ejes principales en los que estamos básico de poseer amplias capacidades encaminando nuestra investigación se relacionan STOL (Short Take-Off and Landing), lo con: que significa una alta relación a) Análisis de herramientas de visualización y sustentación/resistencia y una baja relación simulación 3D, en particular RVIZ y peso/empuje. Podemos realizar la GAZEBO, la simulación y análisis, como validación del mismo y de los algoritmos método de verificación y validación. de control y navegación en un ambiente b) Utilización de marcos de desarrollo de controlado, pudiendo hacer las correcciones software para sistemas autónomos, en necesarias, sin sacrificar un modelo real. particular ROS. Dentro del objetivo de explorar diferentes herramientas de diseño, se utilizó el software CAD/CAM 3D y de diseño mecánico Inventor® de Autodesk, generando el tercer modelo, en la imagen 3, se presenta la evolución del modelo en formato COLLADA. b) En cuanto ROS, en este aspecto se procedió a utilizar dos versiones del mismo, en diferentes plataformas, una montada sobre LUBUNTU 15.10 de 32 bits, la versión KINETIC KAME, la otra montada sobre UBUNTU 14.04 de 64 bits, la versión JADE TURTLE. En ambos casos se procedió a la configuración de los mismos. La familiarización del uso de las librerías. Se realizaron pruebas utilizando diferentes paquetes y mensajes. ROS brinda recursos para asistir a los desarrolladores en la construcción de aplicaciones para robots Imagen 2. Segundo modelo pero que podrán ser útiles para nuestro realizado en RVIZ. VANT. Se eligió ROS por las áreas que se pueden trabajar en él, tales como: Otro punto, es la posibilidad de utilizar en percepción, identificación de objetos, el proceso de refinamiento del modelo, un segmentación y reconocimiento, software CAD/CAM, con el fin de obtener seguimiento de objetos, egomoción, en forma rápida el modelo visual y sus comprensión de movimiento, visión características físicas, y ensamblarlo a estéreo, control, y otros. ROS. En este aspecto ya se iniciaron las primeras averiguaciones las cuales hasta el momento han presentado a Solid Edge, como el más sencillo de integrar. Sin embargo se siguen analizando sobre un software de diseño de similares características pero de código libre, pero también comercial, tales como Rhinoceros 3D. Rhinoceros 3D es una herramienta software para modelado 3D que permite crear, editar, analizar, documentar, Imagen 3. Modelo inventor vista lateral renderizar, animar y traducir curvas NURBS1. Estos modelos se pueden utilizar en cualquier proceso, desde la ilustración y animación hasta la fabricación de 3. RESULTADOS OBTENIDOS/ ESPERADOS superficies y sólidos, nubes de puntos y Dentro del eje RVIZ se cuenta con una mallas poligonales. Puede destacarse del aproximación al modelo final, el cual está en la fase uso de esta herramienta de modelado, su de refinamiento. También se ha logrado realizar la versatilidad, su rápida curva de primera toma de datos a través de los paquetes de aprendizaje, su soporte para otros tipos de sensores, en este caso acelerómetro. El objetivo que archivos y herramientas CAD o de diseño se persigue es concluir la etapa de refinamiento del 3D. Como desventajas, su elevado precio modelo, y proceder a la aplicación de todos los para licencias comerciales, no tan así para sensores necesarios. Generación de un mapeo del las licencias educativas. Se necesita de la entorno, intentando que sea lo más exacto posible, compra de otras herramientas para de las condiciones geográficas de la zona, con el fin renderizado, aunque ésta tarea puede de integrarlo al entorno simulado. La incorporación hacerse con BLENDER.- del modelo dentro del entorno GAZEBO, el cual a pesar de no estar integrado dentro de ROS, brinda cualidades de simulación muy valiosas las cuales 1 NURBS es un acrónimo de non-uniform rational nos permiten validar el modelo. B-spline, básicamente es un modelo matemático Dentro del eje ROS, como resultado de las pruebas utilizado en computación gráfica para generar y realizadas el grupo acordó que el lenguaje de representar curvas. programación a utilizar sea PYTHON. Como “Sistemas de navegación integrada” que se objetivo siguiente es producir todo el código encuentra en proceso de formalización. necesario para la utilización del VANT, no hay que olvidarse que el andamiaje del software va montado sobre ROS. Esto último quiere decir, que tanto la 5. BIBLIOGRAFIA codificación del modelo (el cual hasta el momento lo [1] Sommerville, I.: Ingeniería de Software. hemos realizado en XML), como los diferentes Editorial Pearson Educación. México (2011) software necesarios para la interacción del modelo 537-564 con su entorno debe realizarse dentro de ROS. [2] Pflegger, S.: Ingeniería de software: teoría y En reuniones de trabajo, quienes hacen uso de las práctica. Editorial Pearson Educación. Buenos aplicaciones capacitan al resto del grupo en el uso y Aires (2002) 1-50 detalles de las mismas. [3] Pressman, R.: Ingeniería del software: un enfoque práctico. Editorial McGraw-Hill 4. FORMACION DE RECURSOS HUMANOS Interamericana de España (2002) 13-33 Nuestro grupo de investigación está iniciando y, este año, se vinculó al Grupo de Procesamiento de [4] Sánchez, R.: Estado del arte del desarrollo de Señales, Identificación y Control de la Facultad de sistemas embebidos desde una perspectiva Ingeniería de la Universidad de Buenos Aires, integrada entre el hardware y el software. Revista Colombiana de Tecnologías de logrando que uno de sus investigadores principales y Avanzada. Vol. 2. Nro. 22 (2013) 98-105. miembro del CONICET, el Dr. Juan Giribet dirija nuestro primer proyecto, y el plan de trabajo de la [5] Pose, C., Giribet, J., Choclin, J., Ghersin, A.: becaria de posgrado con la que contamos, la Lic. Sistema de navegación, guiado y control para Diana Cruz. un VANT multirotor. El resto de los miembros también se encuentran en [6] Pajares, G., Ruz, J., Lanillos, P., Guijarro, M., formación ya que existen investigadores con De la Cruz, J., Santos, M.: Generación de categoría de incentivos IV y V, y en algunos sin trayectorias y toma de decisiones para UAVs. categoría de investigación quienes están haciendo Revista Iberoamericana de Automática en sus primeros pasos en estas actividades. Informática Industrial. Vol.5. Nro 1. (2008) 83-92 Durante el mes de agosto del corriente año la Lic. Cruz viajó a la ciudad de Buenos Aires para cumplir [7] Erkkinen, T. y Langenwalter, J. Desarrollo de actividades en el marco de su beca. Durante el mes sistemas embebidos steer-by-wire. REE. de septiembre el Dr. Giribet se trasladará hacia (2009) 56-90. nuestra localidad para dictar el Curso de Posgrado