## page was renamed from Robotica/StageRoMAA200Web #acl BecariosGrupo:read,write,revert All:read = 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 [[attachment:romaa.inc | 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 [[http://playerstage.sourceforge.net/doc/Stage-3.2.1/group__model.html|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 [[http://playerstage.sourceforge.net/doc/Stage-3.2.1/group__model__position.html|position]], y de un anillo de sonares obtenido a partir del modelo [[http://playerstage.sourceforge.net/doc/Stage-3.2.1/group__model__ranger.html|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 [[attachment:romaasonar.tar.gz | 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. {{{ #!arnica file_regex=stage322* }}} == Referencias == * [1].- "Improving the 2.5D Stage Robotic Simulator", Nick Wong and Jui-Chu Peng Hsu and Toby H.J. Collet and Bruce A. !McDonald. [[http://www.araa.asn.au/acra/acra2008/papers/pap137s1.pdf | Descargar]]