Справочник по pioneer_sdk2
Статический сайт с описанием методов библиотеки pioneer_sdk2 и pioneer_rknn. Каждый метод описан на отдельной странице, сгруппирован по категориям и сопровождается примерами из репозитория pioneer-sdk2-example.
Категории методов
Управление полётом
Запуск и остановка моторов, взлёт, посадка, возврат домой и контроль текущего состояния полёта.
Полёт по точкам
Автономное движение в локальные и глобальные точки, ожидание достижения цели и замедления перед ней.
Ручное управление скоростью
Полёт с заданной скоростью в глобальной и связанной с корпусом системах координат, установка курса.
Телеметрия
Чтение данных датчиков: аккумулятор, высота, ориентация, ускорение, гироскоп, магнитометр, дальномер, обороты моторов.
Навигация
Локальная и глобальная позиция, скорости, курс, статус и активная система навигации.
Камера и видео
Получение кадров с камеры в формате OpenCV и публикация обработанного изображения по RTSP.
Сервокамера
Управление углом наклона сервопривода камеры с учётом приоритета команды.
События
Подписка и отписка callback-функций на события автопилота (взлёт, посадка, достижение точки и другие).
Параметры и RC-каналы
Чтение и запись параметров автопилота, ручное управление через RC-каналы SDK2 и конвертация значений SDK1.
Система
Создание соединения, время работы, логирование, перезагрузка платы и управление светодиодами.
Полезная нагрузка
Управление механическим и магнитным захватом груза.
Нейросети (pioneer_rknn)
Инференс моделей компьютерного зрения на NPU: детекция позы человека и ключевых точек.
Перечисления
Enum-константы SDK: события, системы и статусы навигации, состояния полёта, типы камер, приоритеты сервопривода.
Быстрый старт
Все примеры рассчитаны на Python 3.12 и установленный пакет
pioneer_sdk2. Подключение к борту по SSH:
- Адрес:
pioneermini@10.42.0.1 - Примеры на борту:
/home/pioneermini/workspace/pioneer-sdk2-example - RTSP-потоки:
rtsp://10.42.0.1:8889/<имя_потока>/
Минимальный полётный скрипт:
from pioneer_sdk2 import Pioneer
import time
drone = Pioneer()
try:
drone.arm() # запуск моторов
drone.takeoff() # взлёт
time.sleep(3)
drone.land() # посадка
finally:
drone.close_connection()Требования
- Python 3.12 и установленный
pioneer_sdk2. opencv-pythonиnumpyдля примеров камеры и ArUco.pioneer_rknnдля примеровhuman_tracking.- Примеры с
ImageViewerтребуют конфигурации камеры с драйверомgstreamer.
finally, но физическая безопасность зависит от подготовки площадки.