Программирование
Платформа Technic предоставляет возможность использовать OrangePi 5 Pro для написания и выполнения программ, управляющих дроном в автономном режиме.
Technic работает поверх ROS — фреймворка, обеспечивающего взаимодействие пользовательских программ с системными сервисами, запущенными в фоновом режиме как демон technic.
Связь с полетным контроллером осуществляется через пакет MAVROS.
В полетном контроллере PX4 автономное управление выполняется в режиме OFFBOARD. API Technic автоматически переводит дрон в этот режим при запуске автономной программы. Чтобы прервать полет и вернуть ручное управление, достаточно переключить режим на пульте управления.
Система позиционирования
Чтобы дрон мог стабильно удерживать позицию или перемещаться между заданными точками, ему требуется система позиционирования — механизм, который вычисляет текущее местоположение.
В Technic поддерживается несколько способов определения позиции:
Optical Flow — Метод основан на сравнении последовательных кадров с камеры и определении смещения между ними. Полученные данные позволяют контроллеру оценить движение дрона относительно стартовой точки;
ArUco-маркеры — дрон определяет свое положение, распознавая изображения специальных меток в поле зрения камеры;
GPS — при полетах на открытом воздухе можно использовать GPS для работы с глобальными координатами — широтой и долготой. Для этого применяется функция
navigate_global.