Tamaño: 5180
Comentario:
|
Tamaño: 6982
Comentario:
|
Los textos eliminados se marcan así. | Los textos añadidos se marcan así. |
Línea 39: | Línea 39: |
Como resultado de la primer versión del robot móvil RoMAA se obtivo un prototipo completamente funcional que permitió evaluar tanto la parte mecánica, eléctrica y de tracción, como la electrónica de a bordo del controlador embebido y electrónica de potencia. En cuanto a la '''parte mecánica''' se pudo evaluar los motoreductores empleados y la mecánica de acoplamiento entre motor, caja reductora, encoder y rueda; a partir de la cual surgieron modificaciones para la versión II. Algunos de los puntos claves fueron * Debido a que el eje del motor no soportara el peso del robot, era necesario utilizar una pieza con bolilleros que hiciera de apoyo al eje de la rueda, lo que resultaba mas costoso en materiales y mecanizado. * El acoplamiento entre el motorreductor y el encoder óptico era demasiado complejo y requería un mecanizado especial. * Debido al tipo de sujeción entre el motor y la base del robot resultaba difícil alinear las ruedas. En cuanto a la '''parte electrónica''' se hizo evidente la necesidad de fuentes de alimentación conmutadas para el sistema de embebido, debido a la distintas tensiones necesarias y la tensión de batería de 24V. Respecto al '''firmware''', esta versión era bastante limitada, debido a que las operaciones del microcontroladore eran realizadas solamente con tipo de datos enteros, y el control de tracción se basaba únicamente en un controlador proporcional. El controlador embebido mantenía un registro de los pulsos de encoders pero no realizaba el cálculo de la odometría, que se hacía en la PC de a bordo. El '''software''' de la PC de a bordo se desarrollo en base a una clase de comunicación escrita en lenguaje C++, y se escribió un driver para el entorno de desarrollo de robótica Player (v2.0). |
Robot Móvil de Arquitectura Abierta - RoMAA
Descripción general
La construcción del robot RoMAA surge como respuesta a la necesidad de disponer de una plataforma sobre la cual ensayar y validar las investigaciones llevadas a cabo en el Centro de Investigación en Informática para la Ingeniería, las cuales se enmarcan en las áreas de visión por computadora, control automático y robótica.
La estructura elegida es de tracción diferencial de tres ruedas, dos de las cuales son de tracción controladas individualmente y una rueda giratoria atrás; esta configuración es una de las más apropiadas y utilizadas en ambientes interiores.
La zona de carga útil, al frente del vehículo, permite la colocación de sensores como cámaras, scanners laser, sensores ultrasónicos; así como actuadores: unidad pan and tilt y brazos robóticos.
Versiones
El desarrollo del robot móvil RoMAA, se llevo a cabo en diferentes etapas obteniendo como resultado dos versiones diferentes del proyecto.
La primer versión del desarrollo surge como proyecto interno dentro del área de robótica del Centro, de la cual se obtuvo un prototipo bautizado en ese momento como RoMAA (Robot Móvil de Arquitectura Abierta), el cual se presentó en las "V Jornadas Argentinas de Robótica" (JAR'08) [1].
La segunda versión o RoMAA-II, se desarrollo bajo el proyecto U.T.N. PID "Robot Móvil de Arquitectura Abierta RoMAA-II", de la Universidad Tecnológica Nacional, Regional Córdoba.
Componentes utilizados
componentes |
RoMMA |
RoMAA-II |
Motores |
||
|
|
reductores NMRV 025 1:7.5 |
Encoders Autonics |
||
Baterías Probattery |
Desarrollo del robot RoMAA
Incialmente se comieza el desarrollo del robot móvil partiendo de la estructura mecánica, la cual incluye el sistema energético compuesto por 2 baterías de 12V (teniendo un bus de alimentación de 24V), dos motores de CC con caja reductora asociados a cada rueda, y los encoders ópticos incrementales para cerrar el lazo de control de tracción.
La electrónica de abordo para el control del robot incluye 2 drivers de potencia en configuración llave H para la excitación de cada motor, y un controlador para realizar el cálculo del cierre de lazo a partir de lectura de los encoders ópticos basado en un microcontrolador ARM7TDMI (de 32bits y 60MHz de frecuencia de clock), y generar las señanes de modulación de ancho de pulso (PWM) para comandar las llaves H.
El objetivo inicial del desarrollo era poder controlar tanto la velocidad lineal y angular (v,w) del robot, de manera que el controlador embebido tiene que generar las referencias de velocidad para cada motor (izq,der) para tal objetivo. Además, el controlador debe recibir los comandos de control a partir de una conexión serie (RS232) de la PC de abordo, y llevar un registro de los pulsos de encoders para el cálculo de la odometría del robot.
Las primeras versiones de prueba del controlador embebido se utilizan números enteros para representar todas las mediciones y comandos, y la trama de comunicación con la PC de abordo estaba basada en caracters ASCII, esto último permite poder hacer debbug del firmware mediante una terminal desde la PC abordo. Para enviar ordenes desde la PC de abordo se utilizaba un joystick para generar las referencias enviadas al controlador por el puerto serie. Una descripción mas detallada de su desarrollo y evolución puede verse en
Las diferentes versiones del hardware utilizado, tanto la llave H de potencia como la placa de control, puede verse en
Resultado
Como resultado de la primer versión del robot móvil RoMAA se obtivo un prototipo completamente funcional que permitió evaluar tanto la parte mecánica, eléctrica y de tracción, como la electrónica de a bordo del controlador embebido y electrónica de potencia.
En cuanto a la parte mecánica se pudo evaluar los motoreductores empleados y la mecánica de acoplamiento entre motor, caja reductora, encoder y rueda; a partir de la cual surgieron modificaciones para la versión II. Algunos de los puntos claves fueron
- Debido a que el eje del motor no soportara el peso del robot, era necesario utilizar una pieza con bolilleros que hiciera de apoyo al eje de la rueda, lo que resultaba mas costoso en materiales y mecanizado.
- El acoplamiento entre el motorreductor y el encoder óptico era demasiado complejo y requería un mecanizado especial.
- Debido al tipo de sujeción entre el motor y la base del robot resultaba difícil alinear las ruedas.
En cuanto a la parte electrónica se hizo evidente la necesidad de fuentes de alimentación conmutadas para el sistema de embebido, debido a la distintas tensiones necesarias y la tensión de batería de 24V.
Respecto al firmware, esta versión era bastante limitada, debido a que las operaciones del microcontroladore eran realizadas solamente con tipo de datos enteros, y el control de tracción se basaba únicamente en un controlador proporcional. El controlador embebido mantenía un registro de los pulsos de encoders pero no realizaba el cálculo de la odometría, que se hacía en la PC de a bordo.
El software de la PC de a bordo se desarrollo en base a una clase de comunicación escrita en lenguaje C++, y se escribió un driver para el entorno de desarrollo de robótica Player (v2.0).
Desarrollo del robot RoMAA-II
Resultado
Referencias
[1].- "Plataforma móvil de arquitectura abierta", David Gaydou, Gonzalo Perez Paina, Javier Salomone, Guillermo Steiner. V Jornadas Argentinas de Robótica (JAR'08), Bahía Blanca, 12-14 de Noviembre, 2008. (Descargar).