[Jderobot-dev] dudas con introrb y control de pioneer

JoseMaria josemaria.plaza en gmail.com
Jue Mayo 9 14:24:49 CEST 2013


Hola Julio,

para la práctica del Master de Visión (la de reconstrucción 3D) no es
necesario saber dónde estan los cuellos mecánicos. Los ficheros de
calibración que se dan ya tienen la posición de la cámara respecto del
sistema de referencia solidario con el robot. Con ese ya puedes
reconstruir en relativas respecto del robot. Existen también las
funciones relativas2absolutas y absolutas2relativas para convertir eso a
coordenadas absolutas.

Pose3Dencoders da la posición del robot en el mundo, pero hasta ahora
sólo la daba para robots en el suelo: su X, su Y y theta reflejaba su
orientación (angulo 'yaw'). OJO que este interfaz lo estamos cambiando
por un interfaz Pose3D, genérico, que ya es 3D completamente con su
posición y la orientación como cuaternión.

Pose3Dencoders también servía para expresar la orientación actual (en
ángulos pan y tilt), de un cuello mecánico, típicamente medida con los
encoders en sus motores. Pose3Dmotors, que recuerde, es casi homóloga,
pero en este caso los ángulos son los deseados, los que se quieren
ordenar a los motores del cuello mecánico. 

Ánimo,

JoseMaria

On Sun, 2013-04-28 at 23:54 +0200, Julio Guillén wrote:
> Hola amigos. Estoy tratando de obtener el pan y el tilt de un robot y
> al revisar la documentación en la web, donde hablan de Pose3Dencoders
> [1] y Pose3Dmotors [2] básicamente describen lo mismo.
> 
> 
> ¿Pose3Denconders me ofrece la posición de una cámara respecto al
> centro del robot y Pose3Dmotors me ofrece la posición del robot
> respecto al origen de coordenadas? ¿Es al revés? No queda nada claro
> en la web y ciertamente recomiendo aclararlo en la misma.
> 
> 
> De hecho, en Pose3Dmotors te ponen la imagen de la cámara pero el
> SLICE sin maxtilt maxpan etc etc, y viceversa.
> 
> 
> 
> Lo que busco es confirmar cómo obtener el pan y el tilt de un robot
> pioneer.
> 
> 
> Revisando el propio introrob, en la descripción en [3] comenta lo
> siguiente:
> this->getEncodersData: Este método devuelve una estructura con tres campos: robotx, roboty y robottheta, siendo la posición "x", "y" y su orientación "theta" respectivamente. 
> EJEMPLO: jderobot::EncodersDataPtr myPosition getEncodersData(); || 
> USO: printf("myPosition = [%f, %f]\n", myPosition->robotx, myPosition->roboty);
> robotx es la coordenada x, roboty la coordenada y y robottheta ¿es
> para coordenadas cilíndricas?
> 
> 
> La verdad llevo toda la tarde leyendo código y me he liado muchísimo.
> 
> 
> Ojalá me podais ayudar. 
> 
> 
> 
> [1] http://www.jderobot.org/index.php/Interfaces#Pose3DEncoders
> [2] http://www.jderobot.org/index.php/Interfaces#Pose3DMotors
> [3] http://jderobot.org/index.php/Tools#Introrob
> 
> _______________________________________________
> Jde-developers mailing list
> Jde-developers en gsyc.es
> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers

-- 
http://gsyc.es/jmplaza 
Universidad Rey Juan Carlos




More information about the Jde-developers mailing list