[Jde-dev] Duda con interfaz motor
JoseMaria
jmplaza en gsyc.es
Jue Nov 25 20:33:27 CET 2010
Hola,
sip, opino lo mismo. Aunque el mecanismo de locomoción no tiene nada que
ver en un humanoide y en un robot con ruedas su movimiento sí se puede
encapsular en un par (o tres) velocidades: v (=velocidad de avance), w
(=velocidad de giro, respecto eje vertical). Para el humanoide metería
otra más l (=velocidad lateral) que cuadra bien con los movimientos
hacia la derecha o hacia la izquierda, manteniendo el frente en la misma
direccion. Este grado de libertad extra también tenía sentido en los
robots perrito de Sony. Asi que el interfaz genérico de velocidades
sería el trio v-w-l, aunque para el Pioneer no tenga sentido el último
campo.
Este interfaz "de velocidades" es de ALTO NIVEL que luego se materializa
en el sistema de locomoción concreto que tengamos en cada plataforma,
pero desde luego permite ordenarle movimientos al robot ya sea este un
humanoide, con ruedas, cuadrúpedo, etc.
Además de este interfaz, lo habitual es que cada robot tenga otros
interfaces de BAJO NIVEL para su movimiento. Por ejemplo, en el caso del
Pioneer podría ser el que ordena velocidad a una rueda concreta, la
izquierda o la derecha (en la práctica nos ha bastado siempre con el de
alto nivel, y la traducción a velociades de cada rueda ya la hace el
microcontrolador a bordo del pioneer). Para el caso del Humanoide el
interfaz de bajo nivel puede ser el que permite poner cada una de sus
articulaciones en una posición concreta. Los interfaces de movimiento de
alto y bajo nivel pueden coexistir sin problemas, las aplicaciones
usarán el que más convenga en cada caso.
El argumento de compatibilidad es brillante. Al usar el mismo interfaz
de alto nivel para ordenar movimiento, el teleoperador de Julio o el que
ha hecho Edu en el teléfono móvil con android es capaz de teleoperar el
Pioneer y, sin esfuerzo adicional, el Nao. Sólo es necesario que el
driver del Nao realmente soporte el interfaz de alto nivel, es decir,
sepa cómo materializarlo en sus motores y articulaciones.
Mis dos centavos,
JoseMaria
On Tue, 2010-11-23 at 15:21 +0100, franciscomiguel.rivas en urjc.es wrote:
> Buenas David,
> si si no tienen nada que ver.. lo que pasa es que la locomoción del
> humanoide también lo podemos reducir en v y w (aunque no corresponden
> exactamente con velocidad lineal y velocidad angular, en el humanoide
> es frecuencia de paso para la v y ángulo de giro para la w) El caso es
> que el robot se comporta de manera similar que si fuera un robot con
> ruedas.
>
> Si dejamos la compatibilidad de utilizar la locomoción del robot
> humanoide con Motors podemos utilizar todas las aplicaciones que
> utilicen este interfaz para controlar el Humanoide (por ejemplo el
> teleoperator de julio, el introrob...).
> Todos estos componentes eran compatibles eran compatibles en la 4.3
> porque utilizaba el mismo interfaz (pero ahora el problema está al
> añadir el desplazamiento lateral).
>
> Por eso preguntaba lo de añadirlo a este mismo API para mantener las
> compatibilidades con otros componentes...
>
> Saludos,
> Fran.
>
> "David Lobato" <dav.lobato en gmail.com> escribió:
>
> > Yo veo que los API para mover un humanoide y un robot con ruedas no tienen
> > mucho que ver.
> >
> >
> >
> > 2010/11/22 <franciscomiguel.rivas en urjc.es>
> >
> >> Buenas,
> >> tengo una dudilla con el interfaz motors. Lo estoy usando para
> >> encapsular la lococión del robot Nao intentando reducir todo el
> >> movimiento del robot a dos variables v y w que es justo lo que nos da
> >> el interfaz motors.
> >>
> >> El problema es que el Nao tiene otra forma de locomoción adicional que
> >> es andar de lado (sidewalk) que no se corresponde ni con v ni con w.
> >>
> >> Mi duda es qué hacer para incorporar esta nueva variable de control si
> >> modificar el motors añadiendo getSide() y setSide() o crearme un
> >> interfaz nuevo con las 3 variables tipo MotorsHumanoid o algo así pero
> >> de esta forma perdemos la compatibilidad con Motors..
> >>
> >> ¿que os parece?
> >>
> >> saludos,
> >> Fran.
> >> _______________________________________________
> >> Jde-developers mailing list
> >> Jde-developers en gsyc.es
> >> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
> >>
> >
> >
> >
> > --
> > David Lobato Bravo
> >
> > Universidad Rey Juan Carlos
> > c/Tulipan s/n
> > 28933 Móstoles
> > Madrid, Spain
> > http://jderobot.org
> > http://es.linkedin.com/in/davidlobato
> >
>
>
> _______________________________________________
> 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