Illustration

Програмування БПЛА

Бортове ПЗ для БПЛА: Python, MAVLink, Companion Computer

Старт: листопад

Формат: online

За 8 тижнів ти навчишся з'єднувати власний код із автопілотом дрона, запускати його на бортовому комп'ютері й знаходити причину, коли система не працює.

Illustration
Illustration
Illustration

Ціль програми

Це практична інженерна програма для тих, хто хоче писати програмне забезпечення для дронів, а не просто керувати ними.
На який рівень виходиш: ти проєктуєш систему бортового ПЗ, пишеш власну програму, що спілкується з дроном через MAVLink, і запускаєш її на бортовому комп'ютері як службу, що працює сама. Ти збираєш надійну програму, яка переживає обрив зв'язку й збої, і знаходиш причину, коли з'єднання чи команда не працюють.

Програма підійде:

(01)

Програміст (Python / бекенд / робототехніка)

Ти пишеш код, але не знаєш специфіки дронів — як з'єднати свою програму з автопілотом, бортовим комп'ютером і залізом.

(02)

Інженер або технік з дронів

Ти налаштовуєш дрони й працюєш із залізом, але будь-яку задачу з кодом віддаєш програмісту й залежиш від нього.

(03)

Суміжний технічний спеціаліст

Ти маєш технічний досвід і базове програмування в іншій галузі, але хочеш зайти в безпілотні системи та оборонні технології.

Під час програми ти:

Illustration

Спроєктуєш систему бортового ПЗ

Розберешся, як влаштована програмна частина дрона, і навчишся визначати, де має працювати кожен компонент — на автопілоті чи на бортовому комп'ютері.

Illustration

Напишеш власну програму спілкування з дроном

Створиш код, що знаходить дрон, тримає з'єднання, приймає телеметрію, відправляє команди й переживає обрив зв'язку.

Illustration

Розгорнеш код на бортовому комп'ютері

Перетвориш свою програму на службу, що сама запускається після ввімкнення, веде журнал і перезапускається після збою.

Illustration

Навчишся знаходити причину збоїв

Отримаєш зламаний стенд і крок за кроком знайдеш, що саме налаштовано неправильно.

Програма курсу

8 тижнів · 9 модулів

  • ● Цифрова грамотність: що це і чому важливо її опанувати на старті навчання.
    ● Перші кроки в цифровому світі: Google-сервіси та хмарні Digital-інструменти

    Результат модуля: Зрозумієте, що таке цифрова грамотність і опануєте Digital-інструменти, які потрібні для вашого подальшого навчання.

  • ● Як влаштована програма; змінні та типи даних; списки й словники для зберігання наборів даних● Умови, цикли, функції; основи об'єктного програмування простими словами● Робота з файлами; обробка помилок у коді; підключення готових бібліотек● Робота в командному рядку та базове збереження версій коду (Git — інструмент, що зберігає історію змін)● Окремий блок: як писати код за допомогою штучного інтелекту й розуміти те, що він видає
    Практика: написати власну програму, що читає дані з файлу, обробляє їх і записує результат назад, з коректною обробкою помилок.

    Результат модуля: самостійно пишеш й читаєш код на Python, працюєш в командному рядку та розумієш код, згенерований ШІ.

  • ● Автопілот як окрема частина; бортовий комп'ютер і навіщо він потрібен● Що має працювати на автопілоті, а що на бортовому комп'ютері● Ланцюг «земля → бортовий комп'ютер → автопілот → корисне навантаження»● Способи з'єднання, затримки, пропускна здатність, слабкі місця системи● Вибір бортового комп'ютера під задачу: коли достатньо Raspberry Pi, а коли потрібен Jetson (критерії — обчислювальна потужність, навантаження зі штучним інтелектом, енергоспоживання, ціна)
    Практика: розібрати задану систему дрона, скласти схему, де має працювати кожен компонент, і обґрунтувати вибір бортового комп'ютера під задані вимоги.

    Результат модуля: проєктуєш систему бортового ПЗ і обґрунтовуєш, яку плату брати під конкретну задачу. 

  • ● MAVLink як мова обміну повідомленнями; повідомлення, команда, підтвердження прийому● Як частини системи розрізняють одна одну; сигнал «я живий» і виявлення пристроїв● Частота повідомлень, потоки даних, способи передачі● Маршрутизація повідомлень; кілька пристроїв в одній системі
    Практика: написати програму на Python, що знаходить дрон, тримає з'єднання, приймає телеметрію, відправляє команду, обробляє підтвердження і переживає обрив зв'язку.

    Результат модуля: пишеш власну програму спілкування з дроном, а не лише переглядаєш телеметрію.

  • ● Два підходи до написання коду — простіший і складніший; коли який потрібен● Бібліотеки pymavlink і MAVSDK (готові набори інструментів)● Підписка на події, таймаути, повторні спроби, застарілі дані● Чому «команда прийнята» ще не означає «команда виконана»
    Практика: реалізувати ту саму задачу двома способами — через pymavlink і через MAVSDK — та письмово обґрунтувати вибір підходу.

    Результат модуля: обираєш потрібний підхід під задачу, а не просто копіюєш чужі приклади.

  • ● Операційна система Linux на бортовому комп'ютері; віддалене підключення; права доступу● Робота з провідними портами; запуск програми як служби● Ведення журналів; автозапуск після ввімкнення; сторож, що перезапускає програму після збою● Контроль ресурсів; контейнери (Docker — спосіб запакувати програму, щоб вона однаково працювала будь-де)
    Практика: перетворити свою програму на службу, що сама запускається після ввімкнення, веде журнал і перезапускається після збою.

    Результат модуля: твій код працює не тільки на власному комп'ютері, а й після перезавантаження на реальному бортовому комп'ютері.

  • ● Провідні та мережеві з'єднання; типові помилки передачі даних; швидкість передачі● Втрата пакетів; накопичення й переповнення даних; перепідключення● Розподіл повідомлень між кількома отримувачами● Керування навантаженням на канал зв'язку
    Практика: на стенді, де програма, автопілот і наземна станція обмінюються даними, знайти проблему, яку викладач навмисно вніс у налаштування (неправильний порт, швидкість, маршрутизація).

    Результат модуля: знаходиш причину проблеми зі з'єднанням.

  • ● Побудова логіки роботи через стани; обробка кількох подій одночасно; черги задач● Докладне ведення журналу; перевірки справності● Поведінка при втраті зв'язку та при застарілих даних● Робота в умовах обмежених ресурсів; коректне відновлення; автоматичні тести
    Практика: отримати «поганий» приклад програми (зависає, падає після обриву зв'язку) і переробити його на надійну службу з обробкою збоїв.

    Результат модуля: перетворюєш тестовий приклад на програму, що переживає реальні збої.

  • ● Камера й корисне навантаження як окремі частини системи; обробка відео оглядово● Розпізнавання об'єктів на бортовому комп'ютері (нейтральні цивільні сценарії)● Специфіка Jetson як платформи для штучного інтелекту: запуск моделей на графічному процесорі, прискорення через TensorRT/OpenCV, теплові та енергетичні обмеження на борту● Як частина зі штучним інтелектом спілкується з основною програмою● Способи зв'язку між програмами; основи запуску на маломіцному залізі 
    Практика: підключити тестовий модуль розпізнавання, що повертає подію «щось знайдено», запустити його з урахуванням обмежень бортового заліза й зробити так, щоб основна програма обробляла подію й реагувала.

    Результат модуля: інтегруєш модуль зі штучним інтелектом або камерою в систему дрона й розумієш обмеження заліза, на якому він працює. 

  • ● Наскрізний фінальний проєкт, що збирає всі навички курсу в один артефакт для портфоліо.● Пошук проблем і спостереження за системою: журнали програми, контроль навантаження на процесор, пам'ять і мережу● Інструменти перегляду обміну повідомленнями; аналіз частоти повідомлень; відтворення збоїв● Складання технічного звіту за результатами перевірки
    Практика: розробити з нуля програму для бортового комп'ютера за технічним завданням. Вона має: запускатися після ввімкнення, знаходити систему дрона й тримати з'єднання, збирати обрану телеметрію, взаємодіяти з тестовим корисним навантаженням, обробляти команди, вести докладний журнал, переживати обрив зв'язку й перепідключатися, проходити перевірку тестами. На виході — репозиторій із кодом, схема системи, налаштування запуску, тести, демо й технічний опис. Проєкт захищається перед викладачем.

    Результат модуля: у мене є готовий інженерний проєкт рівня реальної робочої задачі, який я показую роботодавцю.

Що відбувається між модулями:

illustration
illustration
illustration
illustration
illustration
illustration
illustration
illustration

Перевірка і фідбек від кураторів

Практика в симуляторі

Домашні завдання на власних даних

Робота в малих групах

Q&A-сесії між модулями

Розбір реальних кейсів учасників

Закритий WhatsApp-чат

Записи всіх модулів на платформі

Навик писати бортове ПЗ, а не просто керувати дроном

Проєкт для портфоліо рівня реальної задачі

/ (01)

/ (05)

Illustration
Illustration

Навик розгортання на реальному залізі

Зрозумілий наступний крок

/ (02)

/ (06)

Illustration
Illustration

Робочий підхід кодування за допомогою ШІ

/ (03)

Ти пишеш код за допомогою штучного інтелекту й, головне, розумієш та виправляєш те, що він видає, а не сліпо копіюєш.

Твій код працює не лише в середовищі розробки, а й після перезавантаження на бортовому комп'ютері — як служба, що сама відновлюється.

Ти бачиш траєкторію росту: від інтеграції бортового ПЗ — до глибшої автономності, комп'ютерного зору чи архітектури безпілотних систем, і розумієш, який навик підтягнути далі.

Ти вмієш створити програму, що спілкується з автопілотом і працює на бортовому комп'ютері.

Готова бортова програма з кодом, схемою, налаштуваннями запуску й тестами — те, що ти показуєш роботодавцю.

Illustration
Illustration

Вміння знаходити й виправляти проблеми

/ (04)

Ти діагностуєш збої з'єднання, команд і взаємодії частин системи, а не заходиш у глухий кут при першій же помилці.

У результаті ти отримаєш:

Готовий писати ПЗ для дронів, а не просто керувати ними?

Залиш заявку на курс «Програмування БПЛА: код, автопілот та бортовий комп'ютер». Ми зв'яжемося, розкажемо про формат, тарифи й старт потоку.

Дякуємо за реєстрацію!

Наш менеджер зв'яжеться з Вами найближчим часом!

Can't send form

Please try again later.


FAQ

  • Так, для цього є тариф зі вступним модулем — ти вивчаєш базу Python з нуля за два тижні, а потім заходиш в основну програму. Основна частина — це реальна інженерна робота. Якщо ти готовий вкладатися, стартова база в тебе буде.

  • Більшість часу — практика на комп'ютері. Кожен модуль дає конкретне завдання, яке перевіряє викладач. Головний елемент — «клініка відлагодження», де ти отримуєш зламаний стенд і сам шукаєш причину. Теорія тут обслуговує практику, а не навпаки.

  • Фізичний дрон не потрібен. Уся практика — на готовому навчальному середовищі із симулятором. Потрібен звичайний комп'ютер: 8+ ГБ оперативної пам'яті, сучасний процесор, 64-бітна операційна система.

  • Ти вивчаєш два підходи до написання коду — простіший (pymavlink) і складніший (MAVSDK) — і навчаєшся обирати потрібний під конкретну задачу, а не сліпо триматися одного. Це те, що відрізняє інженера від людини, яка копіює чужі приклади.

  • Ти вчиш інженерію бортового програмного забезпечення та інтеграцію систем — навик, потрібен у цивільній робототехніці, промислових дронах, дослідженнях і оборонних технологіях. Програма не містить інструкцій із бойового чи іншого шкідливого застосування. Ти працюєш із нейтральними технічними сценаріями: з'єднання, телеметрія, розгортання, діагностика.