Bienvenido: Ingresar
location: Robotica / PlayerStageRoMAA / RoMAAStage2

Modelo de simulación del robot RoMAA para Stage

Objetivos

Obtener los archivos necesarios para la simulación del robot RoMAA con Stage compatible con la versión 3.1 que agrega simulación 2.5D. Además, de diferentes versiones del robot con sensores como anillo de ultrasonido y escáner láser.

Stage v3.1

La versión 3.1 de Stage mejora el comportamiento 2.5D [1] permitiendo definir las alturas de los objetos, además agrega un modelo nuevo de gripper que permite moverse en z capaz de levantar objetos. La mejora en el entorno 2.5D permite por ejemplo que un robot pase por debajo de objetos que estan sobre el suelo como ser mesas, estantes, etc.

Modelo para el robot RoMAA

Se describe brevemente como generar el archivo romaa.inc que contiene el modelo del robot RoMAA con anillo de ultrasonido.

Para generar un nuevo modelo de dispositivo a simular por Stage se define partiendo de los modelos existentes en Stage. En modelo actual de simulación del robot RoMAA consta de la plataforma móvil el cual se genera a partir del modelo position, y de un anillo de sonares obtenido a partir del modelo ranger.

Se define el modelo de la plataforma móvil como romaa derivado de position fijando las dimensiones del robot, los puntos que describen su geometría, color, altura, tipo de tracción, localización, etc., como se muestra a continuación.

define romaa position
(
  # specify the size of the model
  size [0.570 0.520 0.200]
  # the romaa's center of rotation 
  #is offset from its center of area
  origin [-0.111 0 0 0]
  # main body
  block(
    points 10
    point[0] [ 0.174 0.142 ]
    ... 
    z [0.07 0.3]
    color "blue"
  )
  ... 
  # differential-steer model
  drive "diff"
  localization "odom"    
  # odom_error [ 0.05 0.05 0.1 ] 
)

Se define el anillo de sensores de ultrasonido romaa_sonar_ring derivado de ranger, indicando la cantidad de transductores y sus características.

define romaa_sonar_ring ranger
(
  # number of transducers
  scount 16    
  # pose of each transducer
  spose[0] [ 0.075 0.240 90 ]
  ... 
  spose[15] [ -0.324 -0.200 -90 ]
  # field of view 
  sview [0 5.0 15] 
  # size of each transducer
  ssize [0.01 0.05]
)

Y por último se genera el robot RoMAA con anillo de ultrasonidos romaa_sonar a partir de los dos modelos antes definidos

define romaa_sonar romaa
(
  # use the sonar array defined above 
  # with a small vertical offset to
  # drop the sensors into the robot body
  romaa_sonar_ring( pose [0 0 -0.1 0] )
)

Ejemplos

En el archivo romaasonar.tar.gz se encuentran diferentes ejemplos de la utilización del modelo de simulación del robot RoMAA, incluyendo archivos .world de Stage como archivos .cfg de Player.

stage322romaa.pn g
2019-09-02 12:13:10
stage322romaahok uyo.png
2019-09-02 12:13:10
stage322romaasic k.png
2019-09-02 12:13:10


Referencias

None: Robotica/PlayerStageRoMAA/RoMAAStage2 (última edición 2011-04-20 22:15:19 efectuada por GonzaloPerezPaina)