Подключение и настройка сервоприводов
В этом разделе описаны схемы подключения, диапазоны движения и методы настройки сервоприводов Робоголовы Bbrain.
1. Схема подключения
Если вы разобрали устройство и требуется восстановить подключение сервоприводов, ориентируйтесь на следующую таблицу:
| Пин | Компонент | Параметр конфигурации | Описание |
|---|---|---|---|
| 7 | Левое ухо | servo_L_channel | EMax ES08MDII — управляет поворотом левого уха |
| 6 | Правое ухо | servo_R_channel | EMax ES08MDII — управляет поворотом правого уха |
| 5 | Правый шейный сервопривод | servo_1_channel | Dsservo DS3218 PRO 20 — двигает правую тягу (провод слева) |
| 4 | Левый шейный сервопривод | servo_2_channel | Dsservo DS3218 PRO 20 — двигает левую тягу (провод справа) |
Перед подключением убедитесь, что Робоголова отключена от питания, а также убедитесь в целостность проводов и разъёмов.
2. Система координат
Шейные сервоприводы (Dsservo DS3218 PRO 20):
- Yaw (горизонтальный поворот): от -30° (влево) до +30° (вправо)
- Pitch (вертикальный наклон): от -30° (вниз) до +30° (вверх)

Ушные сервоприводы (EMax ES08MDII):
- Угол поворота: от -90° (полностью вниз) до +90° (полностью вверх)
Важно! Перед редактированием файлов остановите Linux-сервис:
sudo systemctl stop robohead.service
3. Методы настройки
3.1 Инициализационное положение
Задаётся в конфигурационных-файлах:
-
Ушные сервоприводы:
~/robohead_ws/src/robohead/robohead_controller/config/ears_driver.yaml:std_L_angle: 0
std_R_angle: 0 -
Шейные сервоприводы:
~/robohead_ws/src/robohead/robohead_controller/config/neck_driver.yaml:std_vertical_angle: 0
std_horizontal_angle: 0
После правки конфигов перезапустите сервис:
sudo systemctl restart robohead.service
3.2 Управление в текущей сессии
Используйте ROS-сервисы для динамической установки положений:
-
Установка углов шеи:
rosservice call /robohead_controller/neck_driver/NeckSetAngle "vertical_angle: 15
horizontal_angle: 0
duration: 1.5
is_blocking: 1"Параметры:
vertical_angle– угол поворота по вертикали (тангаж), в градусахhorizontal_angle– угол поворота по горизонтали (рысканье), в градусахduration– время, за которое голова достигает позиции, в секундахis_blocking– блокирующий вызов:1— ждать завершения,0— не ждать
-
Установка углов ушей:
rosservice call /robohead_controller/ears_driver/EarsSetAngle "left_ear_angle: 45
right_ear_angle: -30"Параметры:
left_ear_angle– угол поворота левого уха, в градусахright_ear_angle– угол поворота правого уха, в градусах
4. Важные ограничения
-
Шейные сервоприводы:
- Не выходите за диапазон -30° … +30° по каждой оси
- Избегайте длительной работы в крайних положениях
-
Ушные сервоприводы:
- Не выходите за диапазон -90° … +90°
- Не допускайте механических перегрузок (принудительное удержание вручную)
5. Рекомендации
-
Остановите основной сервис перед изменениями:
sudo systemctl stop robohead.service -
После настройки перезапустите сервис:
sudo systemctl restart robohead.service