Программирование роботов: ROS, симуляторы и библиотеки

Получить ITGenio бесплатно

Table of contents


Введение: языки и инструменты

Для разработки роботов чаще всего используют Python и C++. Python удобен для быстрой прототипировки и работы с ML, C++ даёт производительность и используется в низкоуровневых контроллерах. Для интеграции сенсоров и модулей удобно применять ROS/ROS2.


ROS vs нативные SDK

ROS (Robot Operating System) — это экосистема пакетов и инструментов для интеграции сенсоров, управления и обмена сообщениями между компонентами. Преимущества:

Нативные SDK производителей полезны для доступа к специфичным функциям платформы (например, SDK дронов или Unitree для квадроподов).


Симуляторы


Toolboxes и библиотеки


Пример стека для мобильного робота

  1. База: робоплатформа с моторными драйверами.
  2. Низкоуровневое ПО: контроллер (STM, Arduino, Teensy).
  3. ROS node для управления скоростью и телеметрии.
  4. SLAM-пакет для картографирования (Gmapping, Cartographer).
  5. Навигационная стека для планирования пути (move_base).

Интеграция и тестирование


Ресурсы для изучения

Для практики рекомендуем начать с проекта из «Как сделать робота» и перенести часть логики на ROS.

Перейти к симуляторам и toolboxes

Получить ITGenio бесплатно