Прості камери MAVLink (Протокол камери v1)
Ця тема пояснює, як використовувати PX4 з MAVLink камерою, що реалізує Протокол Камери v1 (Простий Протокол Тригера) з PX4 та Наземною Станцією.
WARNING
Камери MAVLink, що використовують Протокол Камери MAVLink v2 слід використовувати замість цього, коли це можливо! Цей підхід зберігається для використання зі старими камерами MAVLink.
Загальний огляд
Протокол камери v1 визначає невеликий набір команд, які дозволяють викликати камеру для:
- знімок неперервне зйомка з частотою, залежно від часу або відстані
- захоплення відео
- обмежені налаштування камери
PX4 підтримує цей набір команд для спрацьовування камер з вбудованою підтримкою протоколу (як описано в цій темі), а також для камер, підключених до виходів контролера польоту.
Наземні станції та SDK MAVLink, як правило, надсилають команди камери автопілоту, який потім передає їх на підключений канал MAVLink типу onboard
. PX4 також повторно відправляє будь-які елементи місії камери, з якими він зустрічається у місії як команди камери: команди, які не приймаються, реєструються. У всіх випадках команди надсилаються з системним ідентифікатором автопілота та ідентифікатором компоненту 0 (тобто адресовані всім компонентам, включаючи камери).
PX4 також буде випускати CAMERA_TRIGGER кожного разу, коли спрацьовує захоплення зображення (сама камера також може випускати це повідомлення при спрацьовуванні).
Керування камерою
Команди та повідомлення MAVLink
Протокол камери v1 (простий тригер протокол) визначає наступні команди:
- MAV_CMD_DO_TRIGGER_CONTROL
- MAV_CMD_NAV_CMD_DO_DIGICAM_CONTROL
- MAV_CMD_DO_SET_CAM_TRIGG_DIST
- MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL
- MAV_CMD_OBLIQUE_SURVEY
- MAV_CMD_DO_CONTROL_VIDEO
Камера MAVLink буде підтримувати певний піднабір цих команд. Оскільки протокол не має процесу виявлення функцій, єдиний спосіб дізнатися - це оглянути COMMAND_ACK, що повернено у відповіді.
Камери також повинні видавати CAMERA_TRIGGER кожного разу, коли захоплюється зображення.
Протокол камери v1 детальніше описує протокол.
Радіостанції наземної станції
Наземні станції можуть використовувати будь-які команди у Протоколі Камери v1 (Простий Протокол Тригера) і повинні надсилати їх до ідентифікатора компонента автопілоту. Якщо команди не підтримуються камерою, вона поверне COMMAND_ACK з помилковим результатом.
Зазвичай команди адресовані автопілоту, оскільки це працює незалежно від того, чи підключено камеру через MAVLink, чи безпосередньо до керування польотом. Якщо звернення до автопілота PX4, він буде висилати CAMERA_TRIGGER кожного разу, коли захоплюється зображення, і може реєструвати подію захоплення камери.
У теорії ви також можете надсилати команди безпосередньо до камери.
Команди камери у місіях
Можна використовувати наступні команди Протокол камери v1 (простий тригер протокол) в місіях (це той самий список, що і вище).
- MAV_CMD_DO_TRIGGER_CONTROL
- MAV_CMD_NAV_CMD_DO_DIGICAM_CONTROL
- MAV_CMD_DO_SET_CAM_TRIGG_DIST
- MAV_CMD_DO_SET_CAM_TRIGG_INTERVAL
- MAV_CMD_OBLIQUE_SURVEY
- MAV_CMD_DO_CONTROL_VIDEO
PX4 переістовує їх з тим самим ідентифікатором системи, що й автопілот, та ідентифікатором компонента MAV_COMP_ID_ALL:
Ручне керування
Ручне спрацьовування за допомогою цих камер не підтримується (ні для джойстика, ні для дистанційного керування).
Конфігурація PX4
Налаштування порту та перенаправлення MAVLink
Підключіть PX4 до камери MAVLink, приєднавши її до не використаного послідовного порту на вашому авіаційному контролері, наприклад, TELEM2
. Потім ви можете налаштувати порт як MAVLink Peripheral. Документ пояснює, як, але в описі:
- Змініть невикористаний параметр
MAV_n_CONFIG
, такий як MAV_2_CONFIG, щоб він був присвоєний порту, до якого підключена ваша камера. - Встановіть відповідний MAV_2_MODE на
2
(На борту). Це забезпечує, що правильний набір повідомлень MAVLink випромінюється та пересилається. - Можливо, вам доведеться встановити деякі інші параметри, залежно від вашого з'єднання - наприклад, швидкість передачі даних.
Підключіться та налаштуйте камеру, як рекомендовано в її посібнику користувача.
Режим камери та режим запуску
Налаштуйте водій камери PX4 для включення фонового процесу камери MAVLink та встановіть режим спуску для захоплення по команді в місіях обстеження.
Використання Від QGroundControl:
Відкрийте Налаштування рухомого засобу > Камера.
Встановіть значення, як показано:
INFO
You can also set the parameters directly:
- TRIG_MODE —
4
: Основано на відстані, за командою (режим опитування) - TRIG_INTERFACE —
3
: MAVLink