Подглава 12.10.1 Запуск контроллеров

Перед выполнением следующей команды, убедитесь в том, что завершили файл test_turtlebot_with_head.launch, который мы использовали в предыдущем разделе.

Затем запустите файл dynamixels.launch. Этот launch-файл также загружает модель URDF для TurtleBot с Kinect на панорамно-наклонных сервоприводах:

$ roslaunch rbx1_dynamixels dynamixels.launch

Вы должны увидеть несколько сообщений о запуске, которые выглядят примерно так:

process[robot_state_publisher-1]: started with pid [11415]
process[dynamixel_manager-2]: started with pid [11416]
process[dynamixel_controller_spawner_ax12-3]: started with pid [11417]
process[fake_pub-4]: started with pid [11418]
process[dynamixel_joint_states_publisher-5]: started with pid [11424]
process[relax_all_servos-6]: started with pid [11426]
process[world_base_broadcaster-7]: started with pid [11430]
[INFO] [WallTime: 1340671865.017257] Pinging motor IDs 1 through 2...
[INFO] [WallTime: 1340671865.021896] Found motors with IDs: [1, 2].
[INFO] [WallTime: 1340671865.054116] dynamixel_ax12 controller_spawner:
waiting for controller_manager turtlebot_dynamixel_manager to startup in
global namespace...
[INFO] [WallTime: 1340671865.095946] There are 2 AX-12+ servos connected
[INFO] [WallTime: 1340671865.096249] Dynamixel Manager on port
/dev/ttyUSB0 initialized
[INFO] [WallTime: 1340671865.169167] Starting Dynamixel Joint State
Publisher at 20Hz
[INFO] [WallTime: 1340671865.363797] dynamixel_ax12 controller_spawner:
All services are up, spawning controllers...
[INFO] [WallTime: 1340671865.468773] Controller head_pan_joint
successfully started.
[INFO] [WallTime: 1340671865.530030] Controller head_tilt_joint
successfully started.
[dynamixel_controller_spawner_ax12-3] process has finished cleanly. 

Примечание: если одно из сообщений запуска выдает ошибку, содержащую это сообщение:

serial.serialutil.SerialException: could not open port /dev/ttyUSB0:

тогда попробуйте сделать следующее. Сначала включите питание контроллера USB2Dynamixel (отсоедините блок питания и снова подключите его), затем отсоедините USB-кабель от компьютера и снова подключите его. Это исправит эту ошибку в 9 случаях из 10. Также дважды проверьте, что ваш USB2Dynamixel действительно подключен к /dev/ttyUSB0, а не к какому-то другому порту, например /dev/ttyUSB1.

Last updated