Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Глоссарий терминов ROS2

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

И

Издатель (Publisher) — программа (нода) в ROS, которая отправляет сообщения в топик. Издатель публикует данные, не зная, кто их получает.

К

Кватернион (Quaternion) — математический способ описания ориентации объекта в трехмерном пространстве с помощью четырех чисел (x, y, z, w). Используется в ROS для представления углов поворота робота.

Клиент сервиса (Service Client) — программа, которая создает запрос к серверу сервиса и отправляет его. Клиент ожидает ответ от сервера.

Л

Launch-файл — файл конфигурации в ROS, который позволяет запускать несколько нод одновременно, настраивать их параметры и управлять зависимостями между ними. Может быть написан в форматах XML, YAML или Python.

Н

Нода (Node) — отдельная программа в ROS2, которая выполняет конкретную задачу. Например, нода может читать данные датчика, управлять мотором или обрабатывать изображения. Ноды общаются друг с другом через топики и сервисы.

О

Одометрия (Odometry) — процесс оценки изменения положения робота во времени относительно начальной точки. Основан на интегрировании данных о движении (обороты колес, данные IMU). Подвержена накоплению ошибок.

П

Пакет (Package) — основная единица организации кода в ROS2. Пакет содержит все необходимое для определенного функционального модуля: узлы (ноды), библиотеки, данные конфигурации, файлы запуска, зависимости.

Параметр (Parameter) — глобальная переменная в ROS, которая хранит конфигурационные данные. Параметры можно изменять без перекомпиляции кода, через консоль или launch-файлы.

Подписчик (Subscriber) — программа (нода) в ROS, которая получает сообщения из топика. Подписчик автоматически получает все новые сообщения, публикуемые в топик.

Р

Рабочее пространство (Workspace) — директория в ROS2, где создаются, модифицируются и собираются собственные пакеты. Содержит директории src (исходный код), build (временные файлы сборки), install (установленные файлы) и log (логи сборки).

С

Сервер сервиса (Service Server) — программа, которая ожидает запросы от клиентов, выполняет необходимые вычисления и возвращает ответ.

Сервис (Service) — модель коммуникации в ROS, использующая паттерн Request-Response (запрос-ответ). Клиент отправляет запрос, сервер обрабатывает его и возвращает ответ. В отличие от топиков, сервис работает по принципу "один запрос — один ответ".

Сообщение (Message) — структурированный набор данных определенного типа, используемый для обмена информацией между нодами в ROS. Каждое сообщение имеет строго определенную структуру и тип.

Т

Топик (Topic) — канал связи между нодами в ROS, через который передаются сообщения. Топик имеет уникальное имя и определенный тип сообщений. Издатели публикуют сообщения в топик, подписчики получают их из топика.

У

Углы Эйлера (Euler Angles) — способ описания ориентации объекта с помощью трех углов поворота вокруг осей координат (крен, тангаж, рыскание). Более понятны для работы в 2D-пространстве, чем кватернионы.

Дополнительные термины

colcon — система сборки пакетов в ROS2. Используется для компиляции и установки пакетов в рабочем пространстве.

rclpy — клиентская библиотека ROS2 для языка Python. Предоставляет API для создания нод, работы с топиками, сервисами и параметрами.

Twist — тип сообщения в ROS (geometry_msgs/msg/Twist), используемый для управления движением робота. Содержит векторы линейной и угловой скорости.

Odometry — тип сообщения в ROS (nav_msgs/msg/Odometry), содержащий данные о текущем положении, ориентации и скорости робота.

IMU (Inertial Measurement Unit) — инерциальный измерительный модуль, датчик, содержащий гироскоп, акселерометр и иногда магнитометр. Используется для определения ориентации и ускорения робота.

LIDAR (Light Detection and Ranging) — лазерный дальномер, датчик, который измеряет расстояния до объектов с помощью лазерных лучей. Создает облако точек (point cloud) для построения карты окружения.

microROS — версия ROS2, адаптированная для работы на микроконтроллерах с ограниченными ресурсами (например, Arduino).

Callback-функция — функция, которая автоматически вызывается при наступлении определенного события (например, при получении нового сообщения в топик).

QoS (Quality of Service) — параметры качества обслуживания в ROS2, определяющие надежность доставки сообщений, глубину очереди и другие характеристики коммуникации.