Настройка launch-файлов
Настройка расположения камеры
Для работы с основной камерой необходимо убедиться что она включена в файле ~/catkin_ws/src/clover/clover/launch/clover.launch:
<arg name="main_camera" default="true"/>Расположение и ориентация камеры задается в файле ~/catkin_ws/src/clover/clover/launch/main_camera.launch:
<arg name="direction_z" default="down"/> <!-- direction the camera points: down, up -->
<arg name="direction_y" default="backward"/> <!-- direction the camera cable points: backward, forward -->Для того, чтобы задать ориентацию, необходимо установить:
направление обзора камеры
direction_z: вниз (down) или вверх (up);направление, в которое указывает шлейф камеры
direction_y: назад (backward) или вперед (forward).
Настройка Aruco и Optical Flow
Аргумент aruco в файле ~/catkin_ws/src/clover/clover/launch/clover.launch должен быть в значении true:
<arg name="aruco" default="true"/>Для включения распознавания отдельных маркеров и карт маркеров аргументы aruco_detect и aruco_map в файле ~/catkin_ws/src/clover/clover/launch/aruco.launch должны быть в значении true:
<arg name="aruco_detect" default="true"/>
<arg name="aruco_map" default="true"/>Для включения передачи координат в полётный контроллер по механизму VPE, аргумента aruco_vpe должен быть в значении true:
<arg name="aruco_vpe" default="true"/>Для правильной работы в этом же файле также должны быть выставлены аргументы:
<arg name="placement" default="floor"/> <!-- расположение маркеров, см. далее -->
<arg name="length" default="0.33"/> <!-- размер маркеров в метрах (не включая белую рамку) -->Значение аргумента placement следует выставлять следующим образом:
если все маркеры наклеены на полу (земле), выставить значение
floor;если все маркеры наклеены на потолке, выставить значение
ceiling;в противном случае удалить строку с параметром.
Если некоторые маркеры имеют размер, отличный значения length, их размер может быть переопределен с помощью параметра length_override ноды aruco_detect:
<param name="length_override/3" value="0.1"/> <!-- маркер c id 3 имеет размер 10 см -->
<param name="length_override/17" value="0.25"/> <!-- маркер c id 17 имеет размер 25 см -->Включите Optical Flow в файле ~/catkin_ws/src/clover/clover/launch/clover.launch:
<arg name="optical_flow" default="true"/>Отредактируйте файл ~/catkin_ws/src/clover/clover/launch/clover.launch так, чтобы драйвер VL53L1X был включен:
<arg name="rangefinder_vl53l1x" default="true"/>Настройка карты маркеров
Карта загружается из текстового файла, каждая строка которого имеет следующий формат:
id_маркера размер_маркера x y z угол_z угол_y угол_xГде угол_N – это угол поворота маркера вокруг оси N в радианах.
Файлы карт располагаются в каталоге ~/catkin_ws/src/clover/aruco_pose/map. Название файла с картой задается в аргументе map:
<arg name="map" default="map.txt"/>Смотрите примеры карт маркеров в вышеуказанном каталоге.
Файл карты может быть сгенерирован с помощью инструмента genmap.py:
rosrun aruco_pose genmap.py length x y dist_x dist_y first -o test_map.txtГде length – размер маркера, x – количество маркеров по оси x, y - количество маркеров по оси y, dist_x – расстояние между центрами маркеров по оси x, y – расстояние между центрами маркеров по оси y, first – ID первого (левого нижнего) маркера, test_map.txt – название файла с картой. Дополнительный ключ --bottom-left позволяет нумеровать маркеры с левого нижнего угла.
Пример:
rosrun aruco_pose genmap.py 0.33 2 4 1 1 0 -o test_map.txtДополнительную информацию по утилите можно получить по ключу -h: rosrun aruco_pose genmap.py -h.
Настройка led-ленты
Для работы с лентой подключите ее к питанию +5v – 5v, земле GND – GND и сигнальному порту DIN – GPIO21. Обратитесь к инструкции по сборке для подробностей.
Включите поддержку LED-ленты в файле
~/catkin_ws/src/clover/clover/launch/clover.launch:
<arg name="led" default="true"/>Настройте параметры подключения ленты ws281x в файле
~/catkin_ws/src/clover/clover/launch/led.launch. Необходимо ввести верное количество светодиодов в ленте и GPIO-пин, использованный для подключения (если он отличается от GPIO21):
<arg name="led_count" default="58"/> <!-- количество светодиодов в ленте -->
<arg name="gpio_pin" default="21"/> <!-- GPIO-пин для подключения -->Last updated