cd ~/joey_ws/srcgit clone https://github.com/arebgun/dynamixel_motor.git
cd ~/joey_wscatkin_make
vim ~/joey_ws/src/dynamixel_motor/dynamixel_tutorials/launch/controller_manager.launch
<!-- -*- mode: xml -*- --> <launch> <node name="dynamixel_manager" pkg="dynamixel_controllers" type="controller_manager.py" required="true" output="screen"> <rosparam> namespace: dxl_manager serial_ports: pan_tilt_port: port_name: "/dev/ttyUSB0" baud_rate: 1000000 min_motor_id: 1 max_motor_id: 25 update_rate: 20 </rosparam> </node> </launch>連接USB2Dynamixel 運行Dynamixel控制器
要運行下面的指令,否則報錯: could not open port /dev/ttyUSB0: [Errno 13] Permission denied: '/dev/ttyUSB0'
sudo chmod 666 /dev/ttyUSB0USB2Dynamixel連接USB接口,舵機連接USB2DYnamixel接口,舵機外部供電
roslaunch dynamixel_tutorials controller_manager.launch
ID 搜索默認從1~25 若查找不到,可以更改controller_manager.launch將ID搜索擴大
rostopic list
出現--> /motor_states/pan_tilt_port 則連接成功
vim ~/joey_ws/src/dynamixel_motor/dynamixel_tutorials/config/dynamixel_joint_controllers.yaml
id可根據舵機的實際情況修改,我的舵機id為1-5.
pan_controller: controller: package: dynamixel_controllers module: joint_position_controller type: JointPositionController joint_name: pan_joint joint_speed: 2.0 motor: id: 5 init: 512 min: 0 max: 1023 tilt_controller: controller: package: dynamixel_controllers module: joint_position_controller type: JointPositionController joint_name: tilt_joint joint_speed: 2.0 motor: id: 6 init: 512 min: 0 max: 1023vim ~/joey_ws/src/dynamixel_motor/dynamixel_tutorials/launch//controller_spawner.launch
<!-- -*- mode: XML -*- --> <launch> <!-- Load controller configuration to parameter server --> <rosparam file="$(find dynamixel_tutorials)/config/dynamixel_joint_controllers.yaml" command="load"/> <!-- start specified joint controllers --> <node name="dynamixel_controller_spawner" pkg="dynamixel_controllers" type="controller_spawner.py" args="--manager=dxl_manager --port=pan_tilt_port --type=simple pan_controller tilt_controller" output="screen"/> </launch>roslaunch dynamixel_tutorials controller_spawner.launchrostopic list
出現:/tilt_controller/command /pan_controller/command 則運行成功
rostopic pub /pan_controller/command std_msgs/Float64 -- 1.5rostopic pub /tilt_controller/command std_msgs/Float64 -- 1.5
/left_arm_shoulder_pan_joint/command是話題名稱,代表舵機關節std_msgs/Float64是話題類型
1.5 是舵機轉動的弧度新聞熱點
疑難解答