Publishing iCub joints on ROS TF #545
-
Hello, The only thing I am now missing is the joints state. I found a repository containing some On the other hand I found this PR and this file which lead me to believe that the joints publication may already be available. Do you have any advice on how to proceed? Thank you for your help! |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 7 replies
-
Hi @cedricgoubard, However, notice that |
Beta Was this translation helpful? Give feedback.
-
Hi @traversaro, Thank you for answering so quickly! I'll start by using I tried using ➜ robotology-superbuild git:(master) cd build/install/share/ICUBcontrib/robots/iCubLondon01/wrappers/motorControl
➜ motorControl git:(master) ls
head_mc_wrapper.xml left_arm_mc_wrapper.xml right_arm_mc_wrapper.xml torso_mc_wrapper.xml
icub_ros_wrapper.xml left_leg_mc_wrapper.xml right_leg_mc_wrapper.xml
➜ motorControl git:(master) yarpdev --device controlboardwrapper2 --from icub_ros_wrapper.xml --subdevice icub_all_joints_mc_wrapper
[ERROR] |yarp.devices.ControlBoardWrapper| ************************************************************************************
* controlboardwrapper2 missing mandatory parameter 'name' for port name, usage is: *
* name: full port prefix name with leading '/', e.g. /robotName/part/ *
************************************************************************************
[ERROR] |yarp.devices.ControlBoardWrapper| 'portName' was not correctly set, check you r configuration file
[ERROR] |yarp.dev.PolyDriver| Driver <controlboardwrapper2> was found but could not open
[DEBUG] |yarp.dev.Drivers| ===============================================================
[DEBUG] |yarp.dev.Drivers| == Options checked by device:
[DEBUG] |yarp.dev.Drivers| ==
[DEBUG] |yarp.dev.Drivers| device=controlboardwrapper2
[DEBUG] |yarp.dev.Drivers| ==
[DEBUG] |yarp.dev.Drivers| ===============================================================
[ERROR] |yarp.dev.Drivers| yarpdev: ***ERROR*** device not available.
[INFO] |yarp.dev.Drivers| Suggestions:
[INFO] |yarp.dev.Drivers| + Do "yarpdev --list" to see list of supported devices. From what I understand, the Here is the output from ➜ motorControl git:(master) yarpdev --list | grep controlboardwrapper2
[WARNING] |yarp.dev.Drivers| Wrong library name for plugin readonlyremotecontrolboard
[INFO] |yarp.dev.Drivers| Device "controlboardremapper", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_controlboardremapper.so library), wrapped by "controlboardwrapper2".
[INFO] |yarp.dev.Drivers| Device "controlboardwrapper2", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_controlboardwrapper2.so library), is a network wrapper.
[INFO] |yarp.dev.Drivers| Device "fakeMotionControl", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_fakeMotionControl.so library), wrapped by "controlboardwrapper2".
[INFO] |yarp.dev.Drivers| Device "fakeMotor", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_fakeMotor.so library), wrapped by "controlboardwrapper2".
[INFO] |yarp.dev.Drivers| Device "remote_controlboard", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_remote_controlboard.so library), wrapped by "controlboardwrapper2".
[INFO] |yarp.dev.Drivers| Device "remotecontrolboardremapper", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_controlboardremapper.so library), wrapped by "controlboardwrapper2".
[INFO] |yarp.dev.Drivers| Device "test_motor", available on request (found in /home/cedric/icub/robotology-superbuild/build/install/lib/yarp/yarp_fakeMotor.so library), wrapped by "controlboardwrapper2". Do you have any suggestions? |
Beta Was this translation helpful? Give feedback.
Hi @cedricgoubard,
the piece of software that can be used to publish the joint position information exposed by a YARP device for YARP <= 3.4 (so for any robotology distro <= 2021.08) is the
controlboardwrapper2
(see http://www.yarp.it/v3.4/classControlBoardWrapper.html#details). This is exactly the same device used to publish joint information on YARP ports, but that can be configured also to publish on ROS topics via theROS
group. For an example of configuration file configured for this goal, see https://github.com/robotology/robots-configuration/blob/v1.21.0/iCubLondon01/wrappers/motorControl/icub_ros_wrapper.xml . See also robotology/robots-configuration#117 for a related issue.Howev…