[ros-users] kinematics stack status ?

Sachin Chitta sachinc at willowgarage.com
Tue Jan 18 18:18:26 UTC 2011


Hi Konrad,

The GetKinematicSolverInfo was intended as a read-only information service
that would provide information about the joint limits used in the solver.
The service itself is a convenience service and not really essential since
most of the information comes from the robot description. Note that none of
the services impose any conditions on where the limits are sourced from.
Currently, they are sourced from the robot description internally in the
node but I could add an api where you can override those limits using ROS
parameters.

RobotState is intended for complete representation of a generic robot state
and not just an arm. I am not sure what you mean by "contains alot of
unnecessary data". Could you please clarify which fields are unnecessary.

I expect the core kinematics services (GetPositionIK, GetPositionFK)
themselves to be stable. The only possible change is to add a "group name"
so you would not have to specify every joint to be used by the solver. The
other possible change would be to add a new service that lets you call IK on
a vector of poses to save the trouble of calling a service multiple times. I
would prefer not to do a wholesale change of API but would like to get some
of the convenience elements (like group names) in.

I do have an "plugin" implementation of the kinematics in place right now
but I have not pushed it out. It lets you configure and  call solvers using
the plugin architecture used by other components in ROS (like the navigation
stack). I will push it out for review in a few days after putting up more
documentation.

You are welcome to send more such feedback. In fact, if anyone would like to
step up and volunteer to help maintain the kinematics stacks and do some of
these API changes (like Jack O'Quinn is maintaining camera drivers), that
would be more than welcome.

Sachin

On Sun, Jan 16, 2011 at 11:09 AM, Konrad Banachowicz <konradb3 at gmail.com>wrote:

> 2011/1/16 Herman Bruyninckx <Herman.Bruyninckx at mech.kuleuven.be>
>
>> On Sun, 16 Jan 2011, Konrad Banachowicz wrote:
>>
>>  I started to move our code for our robot kinematics to ROS.
>>> I would like to know what is the stabilization status of kinematics
>>> stack,
>>> because latst review happend nearly year ago.
>>> I have some remarks and suggestions about kinematics stack :
>>> - kinematics serwices use motion_planning_msgs/RobotState which contains
>>> alot of
>>> unnecessary data.
>>> - SolverInfo contains limits field which duplicate data avalible through
>>> robot_description.
>>>
>>
>> You might want to configure a solver with tighter limits than what the
>> robot's mechanics impose...
>
> ok but those data are read-only by getSolverInfo service.
> Currently every implementation simply send data readed from
> robot_description.
>
>>
>>
>>  - pr2_kinematics contains many useful functions in
>>> pr2_arm_kinematics_utils.cpp
>>> this could be moved to common package, maybe kinematics_utils.
>>>
>>> - common node for ik and ik_with_constraints should exist, using
>>> kinematics
>>> plugins.
>>> This would simplify implementation of kinematics for new robot.
>>>
>>
>> Herman
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>>
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>
>


-- 
Sachin Chitta
Research Scientist
Willow Garage
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20110118/70aaa273/attachment-0003.html>


More information about the ros-users mailing list