clover2_bringup¶
Пакет содержит все launch-файлы, необходимые для запуска проекта, а также кастомные actions для автоматизации конфигурации.
Структура¶
launch/
├── klever5.launch.xml # главный launch-файл для полного запуска Клевер 5
├── description.launch.xml # публикация TF (URDF)
├── sensing/ # драйверы устройств
│ ├── camera.launch.xml
│ ├── 2d_lidar.launch.xml
│ └── thermal_camera.launch.xml
├── vision/ # обработка изображения
│ ├── camera_pipeline.launch.xml
│ ├── feature_detector.launch.xml
│ └── optical_flow.launch.xml
└── snippets/ # переиспользуемые фрагменты
├── component_container.launch.xml
├── fcu_bridge.launch.xml
├── localization.launch.xml
├── indication.launch.xml
└── display.launch.xml
Главный launch-файл klever5.launch.xml¶
Собирает всё вместе: описание (TF), камеры с пайплайном обработки, мост к полётному контроллеру, локализацию, индикацию и диагностику.
Основные конфигурационные аргументы:
Аргумент |
По умолчанию |
Описание |
|---|---|---|
|
|
Запуск основной камеры и её пайплайна |
|
|
Запуск детектора признаков |
|
|
Запуск фронтальной камеры |
|
|
Запуск оптического потока |
|
|
Тип соединения с FCU |
|
|
Запуск трекера ArUco-маркеров |
|
|
Запуск сервера карты |
|
|
Файл карты |
|
|
Запуск LED-ленты |
|
|
Запуск дисплея |
|
|
Запуск 2D-лидара |
|
|
Запуск тепловой камеры |
|
|
Пакет, из которого загружаются sensing launch-файлы |
|
— |
Корневой namespace (пустой или начинается с |
|
|
Файл дополнительных параметров |
Пример:
ros2 launch clover2_bringup klever5.launch.xml additional_sensors.2d_lidar:=true indication.display:=true
Группа запуска сенсоров (sensing)¶
Для стандартизации способа запуска драйверы устройств вынесены в отдельные файлы в папку launch/sensing. Launch-файлы имеют набор стандартных аргументов.
Шаблон аргументов запуска драйвера камеры¶
Аргумент |
Обязательный |
По умолчанию |
Описание |
|---|---|---|---|
|
Да |
Идентификатор камеры (числовой для libcamera или путь dts) |
|
|
Нет |
|
Имя ноды камеры. Также выбирает файл |
|
Нет |
|
Имя ROS 2 контейнера для загрузки драйвера камеры как компонента |
|
Нет |
|
Идентификатор TF2 vision frame |
|
Нет |
— |
ROS 2 namespace камеры |
|
Нет |
|
Путь к файлу дополнительных параметров |
|
Нет |
|
Если |
Шаблон аргументов запуска 2D-лидара¶
Аргумент |
Обязательный |
По умолчанию |
Описание |
|---|---|---|---|
|
Нет |
|
Путь к последовательному устройству лидара |
|
Нет |
|
Имя ноды лидара |
|
Нет |
— |
ROS 2 namespace лидара |
|
Нет |
|
Путь к файлу дополнительных параметров |
Шаблон аргументов запуска тепловой камеры¶
Аргумент |
Обязательный |
По умолчанию |
Описание |
|---|---|---|---|
|
Нет |
|
Путь к устройству тепловой камеры |
|
Нет |
|
Имя ноды тепловой камеры |
|
Нет |
— |
ROS 2 namespace тепловой камеры |
Подмена пакета сенсоров¶
Главный launch-файл klever5.launch.xml принимает аргумент sensing_pkg, который определяет пакет, из которого загружаются launch-файлы сенсоров. Это позволяет подменить стандартные драйверы камеры, 2D-лидара и тепловой камеры на пользовательские без изменения оригинального пакета.
Пример использования — запуск klever5 с пользовательским пакетом сенсоров:
ros2 launch clover2_bringup klever5.launch.xml sensing_pkg:=my_custom_sensing
Подставляемый пакет должен предоставлять те же пути к launch-файлам (например, launch/sensing/2d_lidar.launch.xml, launch/sensing/camera.launch.xml, launch/sensing/thermal_camera.launch.xml).