Skip to content

Latest commit

 

History

History
 
 

README.md

MEPhI_ROS2_drone_base

Описание

Взаимодействие аппаратного обеспечения, программного обеспечения и ROS в проекте MEPhI_ROS2_drone разработано с использованием ROS 2 Control.

Этот пакет:

  • Реализует hardware interface для MEPhI_ROS2_drone
  • Обеспечивает связь с микроконтроллером:
    • Класс andino_base::MotorDriver отвечает за последовательную связь для управления моторами
      • Предоставляется приложение для оценки связи: ознакомьтесь с applications/motor_driver_demo.cpp. Чтобы использовать это приложение, просто выполните motor_driver_demo --help для просмотра опций
    • Этот модуль связи используется в реализации аппаратного интерфейса

Hardware Interface

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

Для получения дополнительной информации о компонентах оборудования см. Hardware Components.

Аппаратный интерфейс принимает некоторые параметры, которые передаются через описание urdf в теге ros2_control (см. andino_description).

Параметры Описание
left_wheel_name Название соединения левого колеса
right_wheel_name Название соединения правого колеса
serial_device Путь к последовательному устройству
baud_rate Скорость передачи данных в бодах
timeout Тайм-аут для связи
enc_ticks_per_rev Количество тиков энкодера за один оборот колеса

State interfaces

Этот аппаратный интерфейс реализует следующие интерфейсы состояния для каждого соединения (для левого и правого соединения):

  • Position: позиция определяется на основе информации от энкодера, полученной от микроконтроллера
  • Velocity: скорость рассчитывается на основе информации от энкодера, полученной от микроконтроллера

Command interfaces

Этот аппаратный интерфейс использует следующие командные интерфейсы для каждого соединения (для левого и правого соединения):

  • Velocity: полученная скорость (рад/с) преобразуется в номенклатуру скорости микроконтроллера для моторов

Приложение Motor Driver

Для тестирования соединения с микроконтроллером предоставляется приложение. После установки этого пакета можно использовать приложение под названием motor_driver_demo:

motor_driver_demo --help

Это приложение позволяет проверить связь с микроконтроллером для управления моторами. Команды для чтения энкодеров или индивидуальной установки скорости для моторов — это некоторые из возможностей.

Примечания

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

sudo usermod -a -G dialout $USER
sudo usermod -a -G plugdev $USER