It was necessary to link the library during run time.
echo 'export LD_LIBRARY_PATH=/opt/mujoco/mujoco-3.2.6/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
every message length is taken from _model->nu rather than nq, coz number of joints are alot more if soft body is added!
mujoco_hw_interface_node
renamed to iiwa in CmakeLists.txt, and
the controller is also spawned with ns=/"iiwa". Controller yaml ns is also iiwa.
Now controller manager services are loaded based on the node handle. If the node handle is ros::Nodehandle nh("~")
, the rosservice will be /node_name/controller_manager/...
, if the
ros::Nodehandle nh()
, the rosservice will be /controller_manager/...
hardware interfaces are registered in the mujoco_hw_interface_test
. When the controller is loaded, the commands are populated automatically through the interface!!
i.e. there is no need to subscribe from the controller topic !!