Робот-собака МОРС
  • Общая информация
  • Технические характеристики
  • Комплект поставки
  • Безопасность
  • Быстрый старт
  • Полезные ссылки
  • Обозначения
  • Настройка и обслуживание
    • Джойстик RadioLink T8S
    • Зарядка батареи
    • Выключение робота
    • Подключение к роботу по сети
      • Параметры точки доступа
      • Подключение через SSH
      • Подключение через Remote Desktop Protocol (RDP)
      • Подключение через SFTP
      • Настройка VSCode
    • Подключение робота к Интернету
    • Подключение к ROS на роботе
    • Установка ПО
    • Графический интерфейс
    • Ubuntu-сервис
    • Смена пароля пользователя
    • Обновление дампа памяти BLDC драйвера 10А
    • Замена приводного ремня
    • Переинициализация приводов
    • Подключение дополнительных устройств
      • Подключение головы VBRoboHead
      • Подключение видеокамеры Intel Realsense D435i
      • Подключение видеокамеры Luxonis OAK-D Lite
      • Подключение лидара RPLIDAR A1M8-R5
    • Обновление управляющего ПО
    • Возврат к заводским настройкам
    • Устранение неполадок
  • Симуляция
    • Описание имитационной модели
    • Параметры файла bringup_sim.launch
    • Подключение джойстиков к ПК
    • ROS-параметры
    • OpenAI Gymnasium
  • Устройство робота
    • Электроника
    • Программное обеспечение
    • Файлы и папки в системе
    • Советы по разработке собственного ПО
    • Примеры
    • ROS-пакеты
      • mors_hardware
        • bhi360_imu_node
        • ds4_teleop
        • power_bridge
        • radiolink_teleop
        • status_tracker
      • mors_base
        • champ_msgs
        • cmd_commutator
        • joy_converter
        • locomotion_controller
        • log_writer
        • mors
        • servo_state_lcm2ros
        • servo_cmd_ros2lcm
      • mors_pc
        • robogui
        • mors_sim
    • ROS-топики
    • ROS-сервисы
      • robot_mode
      • robot_action
      • stride_height
      • joints_kp
      • joints_kd
    • LCM-каналы
Powered by GitBook
On this page
  • Описание примеров
  • demo_actions
  • demo_body
  • demo_joints
  • demo_lcm
  • demo_leds
  • demo_legs
  • demo_sensors
  • demo_walk
  1. Устройство робота

Примеры

PreviousСоветы по разработке собственного ПОNextROS-пакеты

Last updated 7 months ago

Для простоты понимания, как взаимодействовать с роботом через ROS и LCM, мы сделали ряд примеров. Если вы хотите делать собственно ПО для робота, настоятельно рекомендуем сначала изучить эти примеры. В файлах примеров имеются комментарии. Зная общие принципы Python и ROS, вы без труда сможете в них разобраться. Запускать примеры можно как в , так и на реальном роботе.

Все примеры, касающиеся ROS, лучше всего запускать с вашего компьютера, который подключен к роботу по сети. Чтобы подключиться, следуйте инструкциям в разделах и .

Пример, касающийся LCM (demo_lcm.py), запускайте на бортовом компьютере робота.

Скачать примеры можно по .

Ниже приведен общий принцип работы с примерами:

  1. Включите робота и настройте подключение по и

  2. Скачайте пакет mors_demo в своё рабочее пространство ROS

cd <ROS-workspace>/src
git clone https://github.com/voltdog/mors_demo.git
  1. Произведите компиляцию

cd <ROS-workspace>
catkin_make
  1. Чтобы не уменьшить риск поломки робота, в первый раз запускайте каждый пример, установив робота на стойку.

  2. Запустите любой пример из папке scripts

rosrun mors_demo demo_body.py

Если во время выполнения примеров вы наблюдаете рывки, то обратитесь к разделу .

Описание примеров

demo_actions

Робот встает, и по очереди начинает исполнять заскриптованные команды: даёт одну лапу, даёт другую лапу, кувыркается, садится и машет лапой, садится на несколько секунд и затем встает. В конце робот ложится на землю и отключает питание с двигателей.

Перед запуском убедитесь, что слева от робота есть 1.5 м свободного пространства!

Запуск скрипта:

rosrun mors_demo demo_actions.py

demo_body

Робот встает и начинает перемещать корпус, меняя своё линейное положение и ориентацию. По завершении, робот ложится и снимает питание с двигателей.

Запуск скрипта:

rosrun mors_demo demo_body.py

demo_joints

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

Обязательно установите робота на стойку перед запуском этого примера! Будьте аккуратны: робот достаточно сильно размахивает ногами.

Запуск скрипта:

rosrun mors_demo demo_joints.py

demo_lcm

Этот пример делает то же самое, что и demo_joints.py, но только взаимедействие в приводами происходит напрямую через LCM. Во время работы скрипта производится вывод в консоль текущих показаний датчиков угла поворта сочленений.

Этот пример нужно запускать только на бортовом компьютере робота. Для запуска произведите следующие действия:

  1. Подключитесь к роботу через SSH или RDP.

  2. Перейдите в ros-воркспейс и скачайте пакет mors_demo:

cd mors_ws/src
git clone https://github.com/voltdog/mors_demo.git
  1. Произведите сборку пакета:

cd ~/mors_ws
catkin_make --only-pkg-with-deps mors_demo
sudo systemctl stop mors.service
  1. Запустите скрипт инициализации приводов

cd ~
./start_offsets.sh

Если вы видите постоянно бегущие данные и они не прекращаются, то не обращайте на это внимание.

  1. В новом терминале запустите roscore:

roscore
  1. Еще в одном терминале запустите пример:

rosrun mors_demo demo_lcm.py

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

  • перезагрузить робот

  • запустить launch-файл управляющего ПО:

roslaunch mors bringup.launch
  • запустить ubuntu-сервис

sudo systemctl start mors.service

demo_leds

Пример показывает, как взаимодействовать с пьезодинамиком и светодиодом на корпусе робота. При запуске скрипта, светодиод по очереди начинает переключать цвета и моргать, а динамик подавать сигналы с разными частотами.

Запуск скрипта:

rosrun mors_demo demo_leds.py

demo_legs

Файл содержит пример кода управления стопами шагающего робота МОРС. Во время демонстрационного примера робот двигает стопами по окружности. Каждая нога отрабатывает движение в своей плоскости.

Перед запуском примера, поставьте робота на стойку!

Запуск скрипта:

rosrun mors_demo demo_legs.py

demo_sensors

Файл содержит пример кода для получения данных с датчиков робота. Во время работы скрипта, данные выводятся в консоль. Во время работы файла, вы можете управлять роботом в любом режиме.

Список выводимых данных:

  • углы поворота сочленений

  • кватернион углового положения

  • линейные ускорения

  • температура

  • входное напряжение

  • потребляемый ток

  • состояние кнопки на корпусе

Запуск скрипта:

rosrun mors_demo demo_sensors.py

demo_walk

Файл содержит пример управления ходьбой робота (вдоль осей XY и вокруг оси Z).

Перед запуском примера, убедитесь, что сперереди у робота есть минимум 3 метра свободного пространства!

Запуск скрипта:

rosrun mors_demo demo_walk.py

Завершите работу mors.service

ubuntu-сервиса
симуляторе
Подключение к роботу по сети
Подключение к ROS на роботе
ссылке
сети
ROS
Устранение неполадок