[Jde-dev] Probando la interfaz JointsArray

Juan Gonzalez juan en iearobotics.com
Jue Mar 18 08:07:46 CET 2010


Hola!

Me gusta ese interfaz. Voy a empezar a implementarlo. Yo también creo
que setJointPos/getJointPos son redundantes, así que si os parece de
momento las quitamos.

El "nucleo" de la interfaz quedaría por tanto:

interface Joint{
   void setPos(short pos);
   short getPos();
}

sequence<Joint*> JointSeq;
dictionary<short,short> JointPosMap;

interface JointArray{
   JointSeq getJoints();
   Joint* getJoint(short id);

   void setJointsPos(JointPosMap values);
   JointPosMap getJointsPos();
}

Luego tenemos que extenderla con la fijación de los límites, obtención
del rango, incluir excepciones para gestionar los errores etc.

Os seguiré informando

Saludos, Juan


El mié, 17-03-2010 a las 10:17 -0400, David Lobato escribió:
> Genial la demo!
> 
> 
> Yo empezaría por definir la interfaz de un servo y luego pasaría al
> array.
> Pondría los siguientes métodos (los nombres son tentativos):
> 
> 
> interface Joint{
>    void setPos(short pos);
>    short getPos();
> }
> 
> 
> sequence<Joint*> JointSeq;
> dictionary<short,short> JointPosMap;
> 
> 
> interface JointArray{
>    JointSeq getJoints();
>    Joint* getJoint(short id);
> 
> 
>    void setJointsPos(JointPosMap values);
>    JointPosMap getJointsPos();
> 
> 
>    void setJointPos(short id, short pos);
>    short getJointPos(short id);
> }
> 
> 
> No estoy seguro de si merece la pena las operaciones
> setJointPos/getJointPos en el interfaz JointArray, ya que podemos
> operar directamente sobre el Joint devuelto con getJoint().
> 
> 
> También puede ser interesante añadir una operación en Joint para
> obtener el rango de movimiento y otra para fijar límites.
>  
> 
> 
> Otras ideas??
> 
> 
> Un saludete,
> David.
> 
> 
> 
> 2010/3/17 Juan Gonzalez <juan en iearobotics.com>
>         Hola,
>         
>          Tengo una primera versión de la interfaz JointsArray para
>         posicionar
>         un array de articulaciones.
>         
>          He hecho un ejemplo con 4 servos. Aquí podéis ver el vídeo:
>         
>         http://www.youtube.com/watch?v=6T3V69dWtP0
>         
>         El código está disponible en aquí[1]. El cliente posiciona los
>         servos
>         usando el método SetPos():
>         
>         JointsArray.SetPos(joint, angle)
>         
>         donde joint es el número de la articulación y angle el ángulo
>         a donde
>         llevarla (en los servos que uso el rango es -90,90)
>         
>         El fichero con la interfaz en ICE está aquí[2]
>         
>         Y aquí comienza el debate hacia la maduración de la interfaz.
>         ¿Qué
>         nombre le ponemos? ¿Qué más métodos añadimos en la interfaz?
>         ¿Cómo lo
>         generalizamos?
>         
>         
>         Saludos, Juan
>         
>         PD.- Todos los videos que saco, además de subirlos a youtube,
>         los estoy
>         subiendo al servidor:
>         
>         http://jderobot.org/users/obijuan/videos/
>         
>         
>         
>         [1]https://svn.jderobot.org/users/obijuan/postdoc/trunk/jderobot5-components/Joints/
>         [2]https://svn.jderobot.org/users/obijuan/postdoc/trunk/jderobot5-components/Joints/Joints.ice
>         
>         
>         
>         
>         --
>         Blog: www.iearobotics.com/blog
>         Web: www.iearobotics.com/juan
>         
>         _______________________________________________
>         Jde-developers mailing list
>         Jde-developers en gsyc.es
>         http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
> 
> 
-- 
Blog: www.iearobotics.com/blog
Web: www.iearobotics.com/juan



More information about the Jde-developers mailing list