Основні поняття
Цей розділ надає базовий вступ до безпілотників та використання PX4 (призначений в основному для користувачів початківців, але також є хорошим введенням для досвідчених користувачів).
Якщо ви вже знайомі з основними поняттями, ви можете перейти до Базової Збірки щоби вивчити як збирати певне обладнання для автопілота. Для завантаження прошивки й налаштування рухомого засобу за допомогою QGroundControl, див. Основні налаштування.
Що таке безпілотник?
Безпілотник - це безпілотний "роботизований" рухомий засіб, яким можна дистанційно або автономно керувати.
Дрони використовуються для багатьох споживчих, промислових, урядових та військових цілей, включаючи аерофотозйомку/відеозйомку, перевезення вантажів, перегони, пошук та обстеження тощо.
Різні типи безпілотників використовуються в повітрі, на землі, в морі та під водою. Їх (більш формально) називають Безпілотними Повітряними Літальними Апаратами (БПЛА або UAV), Безпілотними Повітряними Системами (UAS), Безпілотними Наземними Транспортними Засобами (UGV), Безпілотними Надводними Транспортними Засобами (USV), Безпілотними Підводними Транспортними Засобами (UUV).
"Мізками" дрону є автопілот. Він складається з програмного забезпечення політного стека яке виконується на контролері апарата ("політному контролері"). Політний стек забезпечує основну стабілізацію та функції безпеки, а зазвичай також певний рівень допомоги пілоту для ручного польоту та автоматизації загальних завдань, таких як зліт, посадка та виконання попередньо визначених місій.
Деякі автопілоти також включають універсальну обчислювальну систему, яка може забезпечувати "вищий рівень" управління та контролю, а також підтримувати більш просунуті мережеві технології, машинний зір та інші можливості. Це може бути реалізовано у вигляді окремого супутнього комп'ютера, але в майбутньому все більш імовірно, що це буде повністю інтегрований компонент.
Політний стек PX4
PX4 - це потужний політний стек автопілота з відкритим кодом.
Деякі ключові можливості PX4:
- Дозволяє керувати багатьма типами/шасі рухомих засобів, включаючи: повітряні (мультикоптери, літальні апарати літакового типу, літальні апарати вертикального злету та приземлення або VTOL), наземні та підводні.
- Чудовий вибір апаратного забезпечення для політного контролера, сенсорів та інших периферійних пристроїв.
- Гнучкі та потужні режими польоту та функції безпеки.
- Надійна та глибока інтеграція з companion комп'ютерами та robotics API (ROS 2, MAVSDK).
PX4 є основною частиною ширшої платформи для безпілотників що включає програмне забезпечення для наземної станції керування QGroundControl, апаратне забезпечення Pixhawk та MAVSDK для інтеграції з companion комп'ютерами, камерами та іншим обладнанням за допомогою протоколу MAVLink. PX4 підтримується Dronecode Project.
QGroundControl
Наземна станція управління (GCS) Dronecode називається QGroundControl. Можна використовувати QGroundControl для завантаження (прошивки) PX4 в контролер рухомого засобу, його налаштування, зміни різних параметрів, отримувати інформацію про польоти в реальному часі та створювати й виконувати повністю автономні місії.
QGroundControl працює на Windows, Android, MacOS або Linux. Завантажити та встановити його можна звідси.
Плата політного контролера
На початку PX4 був створений для роботи на контролерах Pixhawk Series, але зараз його можна запустити на Linux комп'ютерах та іншому апаратному забезпеченні. Вам слід обирати плату, яка відповідає фізичним обмеженням вашого апарату, видам діяльності, які ви хочете виконувати та, звичайно, за вартістю.
Більше інформації можна знайти тут: Вибір політного контролера.
Датчики
PX4 використовує датчики для визначення стану рухомого засобу (це необхідно для стабілізації або увімкнення автономного керування). Така система мінімально потребує гіроскоп, акселерометр, магнетометр (компас) та барометр. Для можливості використання всіх автоматичних політних режимів, а також деяких ручних режимів, необхідний GPS або інша система позиціювання. Дрони літакового типу, а також апарати VTOL повинні додатково включати датчик швидкості польоту (дуже рекомендується).
Для отримання додаткової інформації:
Виводи: Двигуни, Сервоприводи, Актуатори, або приводи
PX4 використовує виводи для керування: швидкістю двигуна (наприклад через ESC), аеродинамічними поверхнями, наприклад елеронами та закрилками, тригерами камер, парашутів, захватів, а також багатьма іншими типами корисного навантаження.
Такі виводи можуть бути PWM портами або вузлами DroneCAN (наприклад контролери двигунів DroneCAN). Зображення нижче показують порти виводу PWM для Pixhawk 4 і Pixhawk 4 mini.
Виводи розділені на MAIN
і AUX
та індивідуально пронумеровані (тобто MAINn
та AUXn
, де n
змінюється від 1 до зазвичай 6 або 8). Також вони можуть бути позначені як IO PWM Out
та FMU PWM OUT
(або подібним чином).
WARNING
Політний контролер може мати тільки MAIN
PWM виводи (як Pixhawk 4 Mini), або мати тільки 6 виводів MAIN
чи AUX
. Переконайтеся, що ви обрали контролер який має достатньо портів/виводів для вашого планера.
Ви можете під'єднати майже будь-який вивід до будь-якого мотора чи іншого привода, призначивши пов'язану функцію ("Motor 1") на бажаний вивід ("AUX1") в QGroundControl: Налаштування і перевірка актуатора. Зверніть увагу, що функції (позиції моторів та приводів) для кожного шасі наведено в Довіднику планерів.
Примітки:
- Контролери Pixhawk мають плату FMU та можуть мати окрему плату IO. Якщо плата IO наявна,
AUX
порти під'єднані напряму до FMU, аMAIN
порти під'єднані до плати IO. В іншому випадкуMAIN
порти під'єднані до FMU, а портиAUX
відсутні. - Порти виводу FMU можуть використовувати протоколи D-shot або One-shot (так само як PWM), які забезпечують набагато меншу затримку. Це може бути корисним для тих хто займається перегонами та інших планерів які потребують кращої ефективності.
- Існує лише 6-8 виводів в
MAIN
таAUX
порти оскільки більшість політних контролерів має саме стільки PWM/D-shot/One-shot виводів. В теорії може бути більше виводів, якщо шина підтримує це (наприклад UAVCAN не обмежена такою малою кількістю вузлів).
ESC & Мотори
Багато безпілотників на базі P4X використовують безколекторні електродвигуни, які керуються польотним контролером через електронний регулятор швидкості (ECS) (ECS перетворює сигнал з політного контролера у відповідний рівень потужності, що передається на мотор).
Для отримання інформації про те, які ESC/мотори підтримуються PX4 дивіться:
- ESC & Мотори
- Калібрування ESC
- Прошивки ESC та огляд протоколів (oscarliang.com)
Батарея/Живлення
Безпілотники на базі PX4 найчастіше працюють від літій-полімерних акумуляторів (LiPo). Зазвичай батарея під'єднана до системи за допомогою Модуля живлення або Плати керування живленням, які забезпечують окреме живлення для політного контролера та ESC (для моторів).
Інформацію про батареї та їх налаштування можна знайти у Налаштування батарей та в інструкції Базова збірка (наприклад у параграфі Швидкий початок з підключення Pixhawk 4 > Живлення).
Ручне керування
Пілоти можуть керувати рухомим засобом вручну використовуючи або пульт Системи радіокерування (RC) або Джойстик/Геймпад які підключені через QGroundControl.
Системи радіокерування використовують спеціалізований наземний радіопередавач та приймач на апараті для передачі сигналів керування. Вони завжди повинні використовуватися, коли ви вперше налаштовуєте/тестуєте нову конструкцію рами або під час польотів на перегонах / акробатичних польотах (та інших випадках коли важлива мала затримка).
Системи з джойстиком використовують QGroundControl для кодування інформації керування з "стандартного" ігрового джойстика комп'ютера у повідомлення MAVLink та надсилають її до апарату за допомогою (спільного) радіоканалу телеметрії. Вони можуть використовуватися для більшості випадків ручного польоту, таких як зліт, обстеження тощо, за умови, що ваш канал телеметрії має достатньо високу пропускну спроможність / низьку затримку.
Джойстики часто використовуються в інтегрованих GCS / системах ручного керування, тому що інтеграція джойстика дешевша та простіша, ніж окремої системи радіокерування, і для більшості випадків використання нижча затримка не має значення. Вони також ідеально підходять для польотів у симуляторі PX4, оскільки їх можна безпосередньо під'єднати до вашого комп'ютера наземної станції керування.
:::note PX4 не потребує системи ручного керування для автономних режимів польоту. :::
Запобіжний перемикач
Деякі рухомі засоби мають запобіжний перемикач який потрібно увімкнути перед приведенням засобу у стан готовності (у такому стані, на мотори подається живлення та пропелери готові обертатись).
Зазвичай запобіжний перемикач інтегрується в пристрій GPS, але також може бути окремим фізичним компонентом.
Радіопередавачі даних/телеметрії
Радіопередавачі даних/телеметрії можуть забезпечувати безпровідне з'єднання за протоколом MAVLink між наземною станцією керування такою як QGroundControl та рухомим засобом на базі PX4. Це дозволяє налаштовувати параметри, коли транспортний засіб в польоті, перевіряти телеметрію в режимі реального часу, змінювати політне завдання на льоту тощо.
Бортовий/Супутній (companion) комп'ютер
Супутній (companion) комп'ютер (також відомий як "комп'ютер місії" або "бортовий комп'ютер"), окремий комп'ютер на рухомому засобі який комунікує з PX4 для забезпечення вищого рівня керування так контролю.
Супутній комп'ютер зазвичай працює на Linux, оскільки це краща платформа для розробки програмного забезпечення та дозволяє безпілотникам отримувати перевагу від наявності передвстановленого ПЗ для машинного зору, мережевої взаємодії і т.д.
Політний контролер та супутній комп'ютер можуть бути інтегровані на одній платі, полегшуючи розробку апаратного забезпечення (hardware), чи бути окремими пристроями, під'єднаними через serial кабель, Ethernet кабель чи WiFi. Найчастіше супутній комп'ютер спілкується з PX4 використовуючи високорівневе Robotics API, таке як MAVSDK або ROS 2.
Відповідні теми:
- Супутні комп'ютери
- Режим зовнішнього керування - режим польоту для зовнішнього управління PX4 з наземної станції керування або супутнього комп'ютера.
- Robotics APIs
SD-карти (знімна пам'ять)
PX4 використовує SD карти пам'яті для зберігання журналів польоту, а також вони необхідні для використання периферії UAVCAN та для польоту за місіями.
За замовчуванням, якщо SD карта не присутня, PX4 подає два рази звуковий сигнал форматування не вдалося (подвійний писк) протягом запуску (й жодна зі згаданих вище функцій не буде доступна).
TIP
Максимальний розмір SD-карти що підтримується на платах Pixhawk - 32GB. Карти SanDisk Extreme U3 32GB та Samsung EVO Plus 32 дуже рекомендується.
SD карти, однак, не обов'язкові. Політні контролери, які не містять слот для SD карти, можуть:
- Відключати сигнал сповіщення використовуючи параметр CBRK_BUZZER.
- Передавати журнали до іншого компонента (супутнього пристрою).
- Зберігати місії в оперативній пам'яті (RAM) / флеш пам'яті (FLASH).
Payloads
Payloads are equipment carried by the vehicle to meet user or mission objectives, such as cameras in surveying missions, instruments used in for inspections such as radiation detectors, and cargo that needs to be delivered. PX4 supports many cameras and a wide range of payloads.
Payloads are connected to Fight Controller outputs, and can be triggered automatically in missions, or manually from an RC Controller or Joystick, or from a Ground Station (via MAVLink/MAVSDK commands).
For more information see:
Зміна стану готовності (Arming та Disarming)
Рухомий засіб у стані armed коли на всі мотори та приводи подається живлення, та disarmed коли нічого не заживлено. Також є стан prearmed коли живлення подається тільки на приводи.
WARNING
Рухомі засоби в стані armed можуть бути небезпечними оскільки пропелери вже обертаються.
Переведення в стан готовності (arming) за замочуванням виконується (на передавачах Mode 2) утримуючи throttle/yaw RC стік в нижньому правому положенні одну секунду (для зворотної дії (disarming) - утримувати стік у нижньому лівому положенні). Також альтернативно є можливість налаштувати PX4 переходити в стан armed за допомогою RC перемикача або кнопки (й можна відправляти MAVLink команди переходу в стан armed з наземної станції).
Для зменшення нещасних випадків, коли рухомі засоби на землі, вони повинні бути в стані готовності якомога менше часу. За замовчуванням рухомі засоби:
- Disarmed або Prearmed (мотори не заживлені) коли не використовуються, і повинні бути явно переведені у стан armed перед злетом.
- Автоматично перемикаються у стан disarmed/prearmed якщо засіб не злетів достатньо швидко після переведення у стан armed (час перемикання налаштовується).
- Автоматично перемикаються у стан disarmed/prearmed незабаром після посадки (час налаштовується).
- Перемикання в стан armed запобігається, якщо засіб не в "нормальному" стані.
- Перемикання в стан armed запобігається, якщо засіб має запобіжний перемикач який не увімкнений.
- Перемикання в стан armed запобігається, якщо VTOL знаходиться в режимі літака (за замовчуванням).
В стані prearmed можна користуватись приводами, тоді як disarmed вимикає усе живлення. Prearmed та disarmed стани є безпечними, а конкретний рухомий засіб може підтримувати один зі станів або обидва.
TIP
Іноді рухомий засіб не перемикається в стан armed з неочевидних причин. QGC v4.2.0 (денна збірка на час написання) та пізніших версій надає звіт про перевірку стану готовності у Fly View > Arming and Preflight Checks. Починаючи з PX4 v1.14 це забезпечує комплексну інформацію про проблеми переведення в стан armed разом з можливими рішеннями.
Огляд з подробицями налаштування перемикання стану готовності (arming/disarming) може бути знайдений тут Налаштування Prearm, Arm, Disarm.
Режими польоту
Режими польоту забезпечують різні типи/рівні автоматизації рухомого засобу та підтримки користувача (пілота) з боку ПЗ автопілоту. Автономні режими повністю керуються автопілотом та не потребують залучення пілота або віддаленого керування. Ці режими використовуються, наприклад, для автоматизації загальних задач на кшталт зльоту, повернення до початкової позиції, приземлення тощо. Інші автономні режими виконують запрограмовані місії, слідують за GPS маяком або приймають команди з бортового комп'ютера або наземної станції.
Ручні режими керуються користувачем (через RC стіки/джойстики) та з підтримкою автопілота. Різні ручні режими надають різні характеристики польоту, наприклад, в деяких режимах доступні акробатичні трюки, тоді як інші не можливо зрушити й вони будуть утримувати позицію/курс проти вітру.
TIP
Не всі режими польоту доступні на всіх типах рухомих засобів, а деякі режими можуть використовуватись тільки при виконанні певних умов (наприклад багато режимів потребують оцінки глобальної позиції).
Огляд доступних режимів польоту для кожного засобу можна знайти тут:
- Режими польоту (Мультикоптер)
- Режими польоту (Фіксоване крило)
- Режими польоту (VTOL)
- Режими польоту (Ровер)
Інструкції як налаштувати перемикачі вашого засобу віддаленого керування для того, щоби включити різні режими польоту надано в Налаштування режиму польоту.
Налаштування безпеки (Відмовостійкість)
PX4 має системи відмовостійкості, які можна налаштувати для захисту та повернення вашого засобу якщо щось піде не так! Вони дозволяють вам вказати території й умови, за яких можна безпечно літати, а також дію, що буде виконуватися, якщо відбудеться умова запобігання відмові (наприклад, посадка, утримання позиції або повернення до зазначеної точки).
:::note Ви можете вказати дію тільки для першої запобіжної події. Як тільки запобіжна подія станеться, система перейде в режим спеціального виконання таким чином, що наступні тригери запобігання відмові будуть управлятися окремим рівнем системи та кодом притаманним конкретному рухомому засобу. :::
Основні запобіжні випадки перераховані нижче:
- Низький заряд батареї
- Втрата дистанційного керування (RC)
- Втрата позиції (якість глобальної оцінки позиції занадто низька).
- Втрата бортового комп'ютера (наприклад втрата зв'язку із супутнім комп'ютером)
- Втрата каналу даних (наприклад втрата з'єднання телеметрії з GCS).
- Порушення геозони (обмеження польоту транспортного засобу у віртуальному циліндрі).
- Запобігання відмові місії (запобігає запуску попередньої місії під час зльоту з нової локації).
- Уникнення трафіку (викликається даними з, наприклад ADSB транспондера).
Для додаткової інформації дивіться: Безпека (Базове налаштування).
Курс та напрямок руху
Усі транспортні засоби, човни та літаки мають напрям курсу або орієнтацію, що базується на їхньому русі вперед.
:::note Для VTOL Tailsitter напрямок є відносним до налаштування мультиротору (тобто позиція засобу під час злету, зависання, посадки). :::
Важливо знати напрямок курсу рухомого засобу з метою приведення автопілота у відповідність з вектором руху. Мультикоптери мають напрямок руху навіть якщо вони симетричні з усіх боків! Зазвичай виробники використовують кольорові позначки або кольорові руки для того, щоб вказати напрямок руху.
В наших ілюстраціях ми будемо використовувати червоне забарвлення для передніх пропелерів мультикоптера для того, щоб вказати напрямок руху.
Більш поглиблено про напрямок руху можна прочитати в Орієнтація політного контролера.