Sistemas Embebidos en robotica movil utilizandocontrolador ARM7
Simposio Argentino de Sistemas Embebidos Buenos Aires 2010
Guillermo Steiner
Centro de Investigacion en Informatica para la IngenierıaUniversidad Tecnologica Nacional, F.R.C.
http://ciii.frc.utn.edu.ar
Cordoba, Argentina
SASE 2010
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 1 / 32
Institucional Integrantes
Integrantes
Director: Dr. Ing. Luis Canali
Responsables de Areas
◮ Robotica
Dr. Luis Canali◮ Vision
Dr. Eduardo Destefanis◮ Mecanica Computacional
Dra. Patricia Dardatti◮ Sensores
Dr. Mario Modesti
En total9 Doctores7 Ingenieros doctorandos20 Becarios estudiantes
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 2 / 32
Institucional Areas del Centro
Areas del Centro
Robotica
Programacion de micros (ARM), Sistemas embebidos, Simulacion, Sistemas detiempo real, Navegacion, Odometrıa, Tecnicas de SLAM.
VisionNavegacion, Reconocimiento de patrones, Odometrıa visual, Detectores ydescriptores invariantes, Espacios de escalas (Scale-space).
SensoristicaControl y modelado, Sensoristica inercial, Simulacion en tiempo real, Redes desensores (inalambricas).
Mecanica Computacional
Simulacion de procesos de colada y moldeo, Cambios de fase (Fundicion nodular),Transferencia de calor, Comportamiento estructural de piezas y conjuntos.
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 3 / 32
Institucional Areas del Centro
Areas del Centro
Robotica
Programacion de micros (ARM), Sistemas embebidos, Simulacion, Sistemas detiempo real, Navegacion, Odometrıa, Tecnicas de SLAM.
VisionNavegacion, Reconocimiento de patrones, Odometrıa visual, Detectores ydescriptores invariantes, Espacios de escalas (Scale-space).
SensoristicaControl y modelado, Sensoristica inercial, Simulacion en tiempo real, Redes desensores (inalambricas).
Mecanica Computacional
Simulacion de procesos de colada y moldeo, Cambios de fase (Fundicion nodular),Transferencia de calor, Comportamiento estructural de piezas y conjuntos.
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 3 / 32
Institucional Areas del Centro
Areas del Centro
Robotica
Programacion de micros (ARM), Sistemas embebidos, Simulacion, Sistemas detiempo real, Navegacion, Odometrıa, Tecnicas de SLAM.
VisionNavegacion, Reconocimiento de patrones, Odometrıa visual, Detectores ydescriptores invariantes, Espacios de escalas (Scale-space).
SensoristicaControl y modelado, Sensoristica inercial, Simulacion en tiempo real, Redes desensores (inalambricas).
Mecanica Computacional
Simulacion de procesos de colada y moldeo, Cambios de fase (Fundicion nodular),Transferencia de calor, Comportamiento estructural de piezas y conjuntos.
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 3 / 32
Institucional Areas del Centro
Areas del Centro
Robotica
Programacion de micros (ARM), Sistemas embebidos, Simulacion, Sistemas detiempo real, Navegacion, Odometrıa, Tecnicas de SLAM.
VisionNavegacion, Reconocimiento de patrones, Odometrıa visual, Detectores ydescriptores invariantes, Espacios de escalas (Scale-space).
SensoristicaControl y modelado, Sensoristica inercial, Simulacion en tiempo real, Redes desensores (inalambricas).
Mecanica Computacional
Simulacion de procesos de colada y moldeo, Cambios de fase (Fundicion nodular),Transferencia de calor, Comportamiento estructural de piezas y conjuntos.
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 3 / 32
Area Vision
Area Vision
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 4 / 32
Area Vision Machine Vision
Vision Industrial
Segmentacion
Transformada de Hough
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 5 / 32
Area Vision Navegacion
Navegacion
Odometrıa Visual◮ Registro de imagenes (Phase
correlation)◮ Marcas Artificiales (Artificial
landmarks, fiducial markers)
Asistencia a la conduccion◮ Compensacion de ego-movimiento◮ Vision estereo◮ Flujo optico
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 6 / 32
Area Vision Object Recongition
Reconocimiento de objetos
Reconocimento de transeuntes
Deteccion de marcas artificiales
Descriptores (SIFT), Espacios deescalas
Gestalt computacional
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 7 / 32
Area Vision Localizacion
Localizacion y Seguimiento
Calibracion ojo-brazo
Localizacion 3D
Seguimiento afın-invariante
Filtro de Kalman
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 8 / 32
Area Robotica
Area Robotica
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 9 / 32
Area Robotica AGV
AGV
Primer Robot movil desarrolladocompletamente en el Centro
◮ Modelo biciclo◮ Motores de CC para traccion y
direccion◮ Llaves H de tecnologıa MOSFET◮ Microcontrolador de 8 bit (PIC
16F877)◮ Brazo de 5 grados de libertad
(Rhino XR4, 5 ejes mas garra,2Kg de carga)
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 10 / 32
Area Robotica AGV
Teleoperacion y Control
Teleoperacion◮ Conexion wireless◮ Comunicacion cliente-servidor por
socket◮ Programacion multi-thread◮ Envıo de imagenes comprimidas
Control◮ Identificacion del modelo
cinematico◮ Posicionamiento y seguimiento de
trayectoria (Lyapunov)◮ Posicionamiento mediante
controlador conmutado(Lyapunov)
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 11 / 32
Area Robotica RoMAA
RoMAA
NecesidadA partir de la necesidad de disponerde una plataforma movil paraensayar y validar algoritmos deprocesamiento de imagenes ynavegacion
No muy pequenoSuficientemente grande paraflexibilidad en montaje de sensores yactuadores
No muy grandeSuficientemente pequeno paradesplazarse con facilidad enambientes interiores
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 12 / 32
Area Robotica RoMAA
Estructura
EstructuraPlataforma para experimentacion enambientes interiores de laboratorio
ComponentesComponentes de facil acceso en elmercado o mınimos costos demaquinado
Traccion diferencial◮ Facilita el control◮ Mınimo mantenimiento◮ Gran maniobrabilidad
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 13 / 32
Area Robotica RoMAA
Caracterısticas
Autonomıa energetica suficientepara una jornada completa deoperacion sin interrupcion pararecarga o cambio de las baterıas
Alta capacidad de procesamientoon-board
◮ Pensado fundamentalmente paranotebook → compacta
◮ Autonomıa◮ Potencia◮ Conectividad◮ Flexibilidad
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 14 / 32
Area Robotica RoMAA
Arquitectura abierta
Desde dos perspectivas
Utilizacion de recursos de licenciapublica (no reinventar)
Obtener maximo grado demodularidad que permita el facilacceso a cualquier nivel de laestructura jerarquica del sistema
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 15 / 32
Area Robotica RoMAA
Arquitectura abierta
Desde dos perspectivas
Utilizacion de recursos de licenciapublica (no reinventar)
Obtener maximo grado demodularidad que permita el facilacceso a cualquier nivel de laestructura jerarquica del sistema
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 15 / 32
Area Robotica RoMAA
Componentes
Placas aluminio 2024
Motorreductores IGNIS MR103-400
Encoders AutonicsE40H-8-100-2-1-24
Baterıas ProbatteryBSLA-12260-CPB
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 16 / 32
Area Robotica RoMAA
Dimensiones
Peso: 35Kg
Carga util: 48Kg
Diametro de ruedas: 147mm
Trocha: 503mm
Radio de giro: 0mm
Radio area de giro: 407mm
Ancho: 520mm
Largo: 570mm
Alto: 200mm
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 17 / 32
Area Robotica RoMAA
Traccion
tension nominal: 24V olts
potencia nominal: 288W
velocidad lineal max.: 2, 405m/s
velocidad lineal mınima medible:7, 22× 10
−6m/s
velocidad angular mınima medible:1, 82× 10
−3◦/s
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 18 / 32
Area Robotica RoMAA
Odometrıa
Res. desplaz. lineal 72, 2× 10−3 mm
Res. desplaz. angular 0,018 ◦
Res. velocidad angular a vel. max. 85, 8× 10−3 ◦/s
Res. velocidad lineal a vel. max. 340× 10−6 m/s
Res. velocidad angular a vel. mın. 3, 09× 10−12 ◦/s
Res. velocidad lineal vel. mın. 12, 3× 10−15 m/s
Cuadro: Odometrıa
Calculo velocidad angular motores (medicion por perıodo)
Res. angular a velocidad max. 31, 9× 10−6 ◦/s
Res. lineal a velocidad max. 681, 3× 10−6 m/s
Vel. angular mınima medible 11, 3× 10−3 ◦/s
Vel. lineal mınima medible 14, 4× 10−6 m/s
Cuadro: Medicion de velocidad por perıodo
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 19 / 32
Area Robotica RoMAA
Diagrama en bloques
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 20 / 32
Area Robotica RoMAA
Sistema energetico
Tension nominal: 24V
Capacidad nominal: Icte = 3A,26Ah
Peso: 18Kg
Vida util◮ 100 sesiones anuales◮ 72W promedio◮ Profundidad de descarga 50%◮ Carga durante la noche◮ 4 anos de duracion
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 21 / 32
Area Robotica RoMAA
Control de traccion
Lazo de control cross-coupling
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 22 / 32
Area Robotica RoMAA
Modulo de control y Drivers de potencia
Controlador ARM◮ LPC2114 NXP (Philips) - RISC
µC, nucleo ARM 32bits 60MHz◮ Programacion modular C-ANSI◮ Entorno de desarrollo GNUARM◮ freeRTOS
⋆ Lectura datos encoders por
interrupcion de baja latencia⋆ Perıodo de lazo de control
ajustable desde 5ms
⋆ Calculos en punto flotante
Drivers de potencia◮ Puente H con MOSFETs◮ Control de sobrecorriente
(chopper)◮ Hardware Watch Dog◮ Modulacion de ancho de pulso
(frec = 20KHz)
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 23 / 32
Area Robotica RoMAA
Modulo de control y Drivers de potencia
Controlador ARM◮ LPC2114 NXP (Philips) - RISC
µC, nucleo ARM 32bits 60MHz◮ Programacion modular C-ANSI◮ Entorno de desarrollo GNUARM◮ freeRTOS
⋆ Lectura datos encoders por
interrupcion de baja latencia⋆ Perıodo de lazo de control
ajustable desde 5ms
⋆ Calculos en punto flotante
Drivers de potencia◮ Puente H con MOSFETs◮ Control de sobrecorriente
(chopper)◮ Hardware Watch Dog◮ Modulacion de ancho de pulso
(frec = 20KHz)
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 23 / 32
Player/Stage/Gazebo
RDE Player/Stage/Gazebo
Player◮ Servidor de dispositivos◮ Basado en sockets TCP/IP◮ Estructura multi-hilos◮ Clientes proxy (cualquier
lenguaje)⋆ Leen de sensores⋆ Escriben a actuadores⋆ Librerias oficiales en C, C++,
Python⋆ de terceros en Java, Octave,
Matlab, etc
◮ Incluye drivers de sensores,actuadores y robots comerciales
⋆ Robots Pioneer, iRobot
Roomba, Segway RMP, etc⋆ Sensores Laser SICK LMS200,
Hokuyo URG, CMUcam,
Firewire, USB, etc⋆ Actuadores Pant&Tilt
PTU-D46, etc
De la pagina web: The Player ProjectFree Software tools for robot and sensor
applications
http://playerstage.sourceforge.net/
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 24 / 32
Player/Stage/Gazebo
RDE Player/Stage/Gazebo cont.
Stage◮ Simulador de multiples robots◮ Player los maneja como robots
reales◮ Dispone de muchos modelos de
sensores y actuadores comerciales⋆ Laser rangefinder⋆ Camaras pan-tilt-zoom⋆ Sonares
◮ Modelos simples de bajo costocomputacional
◮ Entorno bitmap 2,5D
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 25 / 32
Player/Stage/Gazebo
RDE Player/Stage/Gazebo cont.
Interface transparente para la aplicacion
Driver real
Ambiente simulado
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 26 / 32
Player/Stage/Gazebo
RDE Player/Stage/Gazebo cont.
Gazebo◮ Simulador 3D de multiples robots◮ Motor de renderizado OGRE
(http://www.ogre3d.org/)◮ Incorpora motor de simulacion
dinamica ODE(http://www.ode.org/)
◮ Genera interaccion fısica entre lasentidades
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 27 / 32
Player/Stage/Gazebo
Player/Stage en RoMAA
Driver plugin para Player◮ Interface position2d (control de
velocidad y lectura de odometrıa)
Modelo para Stage
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 28 / 32
Trabajos Futuros
Trabajos futuros
Tecnicas para minimizar imperfecciones mecanicas (ej. alineacion de ruedas)
Experimento de calibracion de parametros de cinematica (ej. UMBmark 1)
Modelo dinamico◮ Integracion del modelo dinamico al simulador
1“UMBmark, A Method for Measuring, Comparing, and Correcting Dead-reckoning Errors in
Mobile Robots”, J. Borenstein and L. Feng, University of Michigan, 1994Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 29 / 32
Trabajos Futuros
Integracion de sensores
Sensores de ultrasonidoSensComp/Polaroid6500 Range Module, 600
Serie Transducer
Sensor lA¡ser HokuyoUHG-08LX Scanning range
finder sensor
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 30 / 32
Herramientas libres utilizadas
S.O. PC GNU/Linux Debian, www.debian.org
S.O. Embebido freeRTOS, www.freertos.org
Calculo numerico GNU Octave, http://www.gnu.org/software/octave/
Programacion PC - gcc, http://gcc.gnu.org
Programacion sist. embebidos GNUARM, www.gnuarm.com
Documentacion, coordinacion y trabajo cooperativo twiki, http://twiki.org
Repositorio de software SVN, http://subversion.tigris.org
Creacion de documentos y presentacion LATEX, www.latex-project.org
Librerıas para vision - VXL, http://vxl.sourceforge.net
Soft para robots y sensores - Player, http://playerstage.sourceforge.net
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 31 / 32
Videos
Guillermo Steiner (CIII, UTN-FRC) Sistemas Embebidos en Robotica SASE 2010 32 / 32