红联Linux门户
Linux帮助

解决Could not load controller ‘joint_state_controller’

发布时间:2017-03-03 10:41:06来源:linux网站作者:WangJiankun_ls
解决问题:Could not load controller 'joint_state_controller‘ 'arm_controller’ 'joint_positio_controller'
 
1.解决这个问题,需要根据ROS版本安装机器人各个位置的controller驱动,命令如下:
$ sudo apt-get install ros-$version$-joint-state-controller
$ sudo apt-get install ros-$version$-effort-controllers
$ sudo apt-get install ros-$version$-position-controllers 
用kinetic或者indigo等ROS版本号替代$version$即可。
 
2.假如依然有问题,提示找不到相应的controller,那么:
(1)先用roslaunch启动相应的gazebo程序,例如 roslaunch ur_gazebo ur3.launch
(2)使用rosservice call /controller_manager/list_controller_types 查看可用的controller类型
(3)由于版本问题,有时候一些配置文件里的名字可能不准确;找到相应的.yaml文件,去里面把不合适的controller类型
改成/controller_manager/list_controller_types里面提供的类型,看名字的意思就该知道如何改;
例如,把未提供的JointTrajectoryController改成JointGroupPositionController
 
3.假如还是有问题,欢迎大家留言。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/28854.html