Киберимунный автономный квадрокоптер
Проект представляет собой набор инструментов и решений для создания киберимунного автономного квадрокоптера. Состоит из ОрВД и наземной станции, прошивки для квадрокоптера, симулятора, модуля безопасности, документации.
Содержание репозитория:
- /ardupilot - прошивка для квадрокоптера и симулятор
- /docs - документация
- /kos - модуль безопасности
- /orvd - Система организации воздушного движения
- /planner - APM Planner 2 под Linux (наземная станция)
- /tests - тесты проекта
Квалификация
Читайте об условиях квалификации в документе - Квалификация. a# Разработка системы навигации для беспилотных летательных аппаратов (БПЛА) на основе визуальных ориентиров, которая будет работать в условиях отсутствия стабильного поля глобальной навигационной спутниковой системы (ГНСС) и иметь встроенную защиту от кибератак
Оглавление
План реализации (задачи - дорожная карта)
Этап | Название этапа | Описание работ по этапу | Задачи | Результаты | Период этапа (один квартал) |
---|---|---|---|---|---|
1 | Анализ ценностей и ущерба с позиции эксплуатанта | На этом этапе проводится оценка потенциальных рисков и возможных последствий при эксплуатации беспилотного летательного аппарата (БПЛА). Определяются ключевые ценности, которые могут подвергаться риску, а также возможные виды ущерба, который может возникнуть в случае инцидента. | Определение критически важных активовВыявление их ценностей Определение их значимости Оценка. возможных видов ущерба Идентификация основных угроз поCWE (потенциальные слабости кода) Идентификация основных уязвимостей разрабатываемой системы Определение потенциально негативных событий | Определение критически важных активов и их значимости для компании.Оценка возможных видов ущерба (материальный, репутационный, экологический и пр.).Идентификация основных угроз и уязвимостей системы. | 01.01.2025– 15.01.2025 |
2 | Формулировка целей и предположений безопасности (ЦПБ) для такого дрона-инспектора | Этот этап включает разработку и формулирование конкретных целей безопасности, которые должны быть достигнуты для обеспечения безопасной эксплуатации дрона. Также формируются предположения о том, какие условия необходимо соблюдать для достижения этих целей. | Формирование целей безопасностиФормирование предположений безопасности Составление таблицы (ценность, негативное событие, оценка ущерба, комментарий и ЦБ) Составление ролей пользователей и их возможностей(вdraw io) Выявления основных аварийных ситуаций | Четко сформулированные цели безопасности, соответствующие нормативным требованиям и стандартам.Описание условий, необходимых для выполнения этих целей (например, требования к оборудованию, персоналу, процессам). | 15.01.2025 – 30.01.2025 |
3 | Исходя из ЦПБ проанализировать предлагаемую архитектуру и определить уровни доверия доменов безопасности | После определения целей безопасности проводится анализ архитектуры системы дронов на предмет соответствия этим целям. Определяется уровень доверия различных компонентов системы (доменовбезопасности), исходя из их важности и влияния на безопасность. | Определение компонентовПостроение архитектуры Анализ как применятьMILS, FLASK, Microkernel Построение схемы архитектуры с аннотациями Построение диаграмм каждого из негативных событий | Определена архитектура, домены безопасности и составлены схемы, составлено покомпонентное описание, составлены потенциальныенегативные сценарии | 30.01.2025 – 01.03.2025 |
4 | Анализ функциональности программных модулей БПЛА | Выбор типа БПЛА и разработка решения для исследования выделенного участка энергообъекта Написание аналитики для модулей БПЛА: Модуль анализа ориентиров Модуль машинного обучения навигацииМодуль управления в типовых и критических ситуациях | Разработка диаграмма функциональности каждого модуля, подробно с диаграммами классовФормирование спискадоступных команд для дрона Выбор модели нейронной сети (анализ почему именно выбранная модель стоит) Подготовка физических модулей, анализ что необходимо использовать и почему | Алгоритмы работы каждого модуля и применения принциповкиберимунныхсистем в них,UMLсхемы и блок-схемы, описывающие процесс работы каждой функции в модуле | 01.03.2025 –30.04.2025 |
5 | Сбор датасетов для работы БПЛА | Для обучения и тестирования систем управления БПЛА собираются данные, необходимые для работы алгоритмов искусственного интеллекта и других автоматизированных процессов. Это могут быть данные о маршрутах полетов, объектах наблюдения, погодных условиях и т.п. | Поиск необходимых датасетов Тестирование датасетов, в случае если нет нужного, то создание своего (создание тренировочной, валидационной и тестовой выборки из 1000+ аннотированных изображений) Документирование процесса сбора и анализа датасетов, выявление причин, почему именно данных датасет необходим | Набор качественных и разнообразных данных, достаточных для эффективного функционирования системы.Документирование процесса сбора данных и источников информации. | 01.03.2025 – 30.04.2025 |
6 | Анализ датасетов на «цифровом двойнике» | Собранные данные анализируются и проверяются на моделируемом виртуальном аналоге реальной системы («цифровой двойник»). Это позволяет выявить потенциальные проблемы и ошибки до реального применения. | Запуск цифрового двойника сdocker-compose Если есть необходимость, то составление своегоMakefileдля сборки цифрового двойника Составлениеdocker-composeдля автоматизированной сборки Тестирование запуска симулятора в графическом виде Создание сквозных тестовТестирование сквозных тестов | Обнаружение ошибок и несоответствий в собранных данных.Оптимизация данных для повышения точности и эффективности работы системы.Предложения по доработке или дополнению наборов данных. | 30.04.2025 – 15.05.2025 |
7 | Разработка программных модулей | Безопасная разработка модулей БПЛА:Модуль анализа ориентиров (языкпрограммированияC++) Модуль машинного обучения навигации(язык программированияPython)Модуль управления в типовых и критических ситуациях (язык программирования C++) | Разработка программы для взаимодействия модулей дрона для работы наrasperi pi Корректирование кода согласно MISRA и CWE Отделение кода на разные модули согласно принципамmicrokernel, MILSиFLASK Разработка кода для обучения нейронной сети вне дрона (Python yolov train) Разработка кода для обнаружения объектов на самом дроне с использованием подготовленного датасета(Python yolov detect), с использованием камеры дрона иRasperi PI Разработка кода для синхронизации данных лидара и камеры, объединения данных для понимания объектом, насколько далеко находятся и что за объекты (python, либоC++) Разработка модуля для управления аппаратной частю дронаРазработка модуля для понимания команд и управлением дрона Разработка модуля для свзяи с центром управления Разработка модуля логирования Разработка модуля для понимая аварийных ситуаций (*) Разработка модуля для запоминания команд и маршрута Разработка модуля для выбора сценария (маршрута полета) Разработка модуля для аварийных ситуаций | Программный код, написанный с использованием принципов конструктивнойбезопасности (“Secure by design”) | 15.04.2025 –15.09.2025 |
8 | Рефакторинг идебаггингразработанного кода модулей | Рефакторинг разработанного кодаДебаггингили обнаружение ошибок в работе модулей | Рефакторинг кода каждого модуля с целью улучшения чтения и обнаружения логических ошибокДебаг каждого модуля | Чистый код и тестовый результат работы модулей | 15.09.7025 –15.10.2025 |
9 | Разработка документации к разработанным модулям | Разработка документации к разработанному коду модулей | Разработка документации к разработанному коду модулей | Документация к программному коду | 15.10.2025 – 31.10.2025 |
10 | Проведение тестов на «цифровом двойнике» | Разработанные модули тестируются на цифровом двойнике, чтобы проверить их работоспособность и надежность в различных сценариях использования. | Тестирование на цифровом двойникеВыявление ошибок | Результаты тестирования, включая отчеты об обнаруженных проблемах и рекомендациях по их устранению.Валидация функциональности и корректности работы модулей в реальных условиях.Подтверждение готовности системы к натурным испытаниям. | 31.10.2025 –15.11.2025 |
11 | Сбор и анализ полученных данных | После проведения тестов собирается и анализируется информация о работе системы. Анализируются показатели производительности, точность работы алгоритмов, устойчивость к сбоям и другие важные параметры. | Анализ показателей производительности, точность работы алгоритмов, устойчивость к сбоям | Отчеты с результатами анализа данных.Выводы о соответствии системы установленным требованиям.Рекомендации по дальнейшему совершенствованию системы. | 15.11.2025 –05.12.2025 |
12 | Проведение натурных испытаний | Система проходит реальные испытания в условиях, максимально приближенных к эксплуатационным. Проверяется работа всех компонентов в комплексе, включая аппаратную часть, программное обеспечение и взаимодействие с окружающей средой. | Проверка работы всех компонентов в комплексе, включая аппаратную часть, программное обеспечение и взаимодействие с окружающей средой | Данные о поведении системы в реальных условиях эксплуатации.Оценка надежности и стабильности работы БПЛА.Выявление проблем и ограничений, требующих дополнительного внимания. | 05.12.2025 – 20.12.2025 |
13 | Сбор и анализ полученных данных | После проведения тестов собирается и анализируется информация о работе системы. Анализируются показатели производительности, точность работы алгоритмов, устойчивость к сбоям и другие важные параметры. | Анализ показателей производительности, точность работы алгоритмов, устойчивость к сбоям | Отчеты с результатами анализа данных.Выводы о соответствии системы установленным требованиям.Рекомендации по дальнейшему совершенствованию системы. | 21.12.2025 – 25.12.2025 |
1 этап
Анализ ценностей и ущерба с позиции эксплуатанта
Ценность | Негативное событие | Оценка ущерба | Комментарий |
---|---|---|---|
Дрон | в результате атаки разбился об землю или был угнан | средний | дрон застрахован |
Люди | дрон врезался и причинил вред здоровью человека | высокий | Последствия: Травмы могут варьироваться от незначительных до тяжелых (например, порезы винтами, черепно-мозговые травмы). Юридические аспекты: Оператор может быть привлечен к уголовной или гражданской ответственности за халатность, нарушение правил эксплуатации дронов (например, полет в запрещенных зонах). Меры предотвращения: Обязательное использование защитных кожухов на винтах. Внедрение систем автоматического избегания препятствий (LiDAR, компьютерное зрение). Ограничение полетов над скоплениями людей (геозонирование). Страхование: Требование наличия страховки гражданской ответственности для операторов дронов. |
Данные мониторинга | из-за нарушения целостности данных приняты неправильные решения на стороне заказчика(компрометация данных для нейронной сети) | средний | внутренние издержки- людей не отправили наустранение проблемы- людей отправили не туда |
Данные мониторинга | данные фото и видеофиксации оказались доступны злоумышленникам | высокий | нарушение закона о защите секретной информации |
Данные обучения нейронной сети | Обученная нейронная сеть попала в руки злоумышленников | Средний | Утечка обученной нейронной сети представляет средний риск, так как потенциальный вред зависит от контекста её применения и типа данных, на которых она обучалась. |
Оперативные данные | результаты обработки данных (события) стали доступны злоумышленникам или СМИ | высокий | репутационный ущерб |
инфраструктура | дрон врезался в объект критической инфраструктуры | высокий | В случае дрона ЛЭПРиски: Перебои в энергоснабжении, экологические катастрофы, угрозы безопасности (например, повреждение АЭС). Экономические потери из-а простоя инфраструктуры. Технические решения: Режим “no-fly zones” с блокировкой полетов вблизи критических объектов. Системы распознавания инфраструктуры дронами (ИИ-алгоритмы). То что будет использоваться Регуляторные меры: Сертификация операторов для полетов вблизи инфраструктуры. Жесткие штрафы за нарушения. |
Имущество третьих лиц | дрон врезался в объект критической инфраструктуры | высокий | Примеры ущерба: Повреждение автомобилей, окон, фасадов зданий, сельскохозяйственных угодий. Ответственность: Оператор обязан возместить ущерб (включая косвенные потери, например, простой бизнеса). Требуется доказательство соблюдения правил эксплуатации (логи полетов, данные телеметрии). Профилактика: Использование дронов с парашютами для аварийного приземления. Регулярная калибровка навигационных систем. Страховые решения: Включение дронов в полисы страхования имущества. Тарификация страховки в зависимости от зоны полетов. |
Идентификация рисков:
- Анализируются различные аспекты эксплуатации БПЛА, включая технические характеристики устройства, условия использования, окружение и т.д.
- Определяются потенциальные источники опасности, такие как механические поломки, программные сбои, воздействие внешних факторов (погода, электромагнитные помехи и др.).
Оценка вероятностей:
- Оценивается вероятность возникновения каждого из выявленных рисков. Для этого используются статистические данные, экспертные оценки и опыт аналогичных проектов.
Оценка последствий:
- Рассматриваются возможные последствия каждого риска, если он реализуется. Последствия могут включать ущерб имуществу, травмы или гибель людей, экологический вред, финансовые потери и другие негативные эффекты.
Классификация рисков:
- Все риски классифицируются по уровню критичности, исходя из сочетания вероятности их возникновения и тяжести последствий. Обычно используется матрица рисков, где риски разделяются на категории, например, «низкий», «средний» и «высокий».
Разработка мероприятий по управлению рисками:
- Для каждого значимого риска разрабатывается план действий по его предотвращению или минимизации последствий. Это могут быть технические улучшения, дополнительные проверки, обучение операторов и другие меры.
Документирование результатов:
- Результаты анализа рисков оформляются в виде отчета, который служит основой для принятия решений о дальнейшей эксплуатации БПЛА. Отчет должен содержать информацию о выявленных рисках, оценках их вероятности и последствий, а также предложенные меры по управлению ими.
Пример использования:
- Дрон обнаруживает нештатную ситуацию (падение напряжения). Блок ML Core активирует аварийный сценарий:
- Рассчитывает безопасную траекторию снижения.
- Уведомляет ОрВД о проблеме.
- Шифрует и передаёт телеметрию авторизованным получателям.
- После посадки обновляет модель через OTA для предотвращения повторных инцидентов.
Угрозы и уязвимости:
Кибератаки: Взлом канала управления БПЛА.
Технические сбои: Отказ навигации в зоне сильных электромагнитных помех.
Человеческий фактор: Ошибки оператора при анализе данных.
Методы анализа:
FMEA (Failure Mode and Effects Analysis): Оценка последствий отказов компонентов.
STPA (System-Theoretic Process Analysis): Выявление системных угроз.
2 этап
Формулировка целей и предположений безопасности (ЦПБ) для такого дрона-инспектора
Цели безопасности
- Выполняются только аутентичные задания на мониторинг
Ложиться на безопасность
- Выполняются только авторизованные системой ОрВД задания
Прогнозирование конфликтов: Нейросеть предсказывает пересечение маршрутов с другими дронами/воздушными судами, блокируя неавторизованные полеты.
- Все манёвры выполняются согласно ограничениям в полётном задании (высота, полётная зона/эшелон)
Реальная корректировка траектории: Нейросеть в режиме реального времени анализирует данные с лидаров и камер, корректируя высоту/скорость для соблюдения ограничений.
Компьютерное зрение: Распознавание запрещенных зон (например, военных объектов) через бортовые камеры.
- Только авторизованные получатели имеют доступ к сохранённым данным фото-видео фиксации
Ложиться на безопасность
- В случае критического отказа дрон снижается со скоростью не более 1 м/с
- Для запроса авторизации вылета к системе ОрВД используется только аутентичный идентификатор дрона
Ложиться на безопасность
- Только авторизованные получатели имеют доступ к оперативной информации
Ложиться на безопасность
Дрон с компьютерным зрением (YOLOv8) игнорирует несанкционированное задание пролететь над частной территорией, так как нейросеть классифицировала объект как “запретная зона” на основе спутниковых данных и локального сканирования.
Предположения безопасности
- аутентичная система ОрВД благонадёжна
- аутентичные сотрудники благонадёжны и обладают необходимой квалификацией
- только авторизованные сотрудники управляют системами
- аутентичное полётное задание составлено так, что на всём маршруте дрон может совершить аварийную посадку без причинения неприемлемого ущерба заказчику и третьим лицам
3 этап
Исходя из ЦПБ проанализировать предлагаемую архитектуру и определить уровни доверия доменов безопасности
Функциональные блоки
Компонент | Назначение |
---|---|
1. Связь и интеграция с ОрВД | отвечает за взаимодействие с системой распределения полётов и системой организациивоздушного движения (ОрВД)Функции:Реальная передача данных о местоположении в систему ОрВД.Получение актуальных данных о воздушном пространстве.Автоматический запрос разрешений на изменение маршрута.Технологии:Протоколы MQTT и HTTP/3 для минимальных задержек.Explainable AI для прозрачности решений при аудите.Полетное задание выстраивается на основе снимков карт (опционально) |
2.Сбор и анализ данных | собирает и анализирует данные фото-видеофиксации |
3. Центральнаясистема управления | осуществляет общее управление дроном, контролирует выполнение полётного заданияС помощью нейронной сети |
4. Навигация и контроль ограничений | предоставляет спутниковые координаты дронаФункции:Реальное время корректировки траектории с помощью компьютерного зрения (YOLO, LiDAR).Соблюдение высоты, зон полёта и эшелонов.Автоматическое геозонирование (блокировка полётов над запрещёнными объектами).Технологии:SLAM-алгоритмы для построения карты местности.ИИ-предсказание конфликтов с другими воздушными судами. |
5. Хранение данных | отвечает за запись и чтение данных в/из энергонезависимой памяти |
6. Полётный контроллер | осуществляет комплекс действий для поддержания дрона в воздухеи его перемещения в заданном направлении |
7. Самодиагностика | предоставляет данные оценки состояния подсистем (например, контроля батареи) |
8. Приводы | серво-приводы и драйверы для их управления - управляют скоростью вращения винтов дрона,механизацией вспомогательных крыльев (если есть) |
9. Контроль батареи | предоставляет статус остаточного заряда батареи и оценку продолжительности полёта в текущемрежиме энергопотребления |
10. Блок безопасности | Функции:Шифрование фото/видео данных на лету (AES-256).Контроль доступа через биометрию (распознавание лиц, отпечатков).Маскирование конфиденциальной информации в видеопотоке (NLP + CV).Технологии:Federated Learning для обучения моделей без передачи сырых данных.Динамическая фильтрация данных на основе ролей пользователей. |
11. Блок аварийного управления | Функции:Мониторинг телеметрии (вибрации, температура, заряд батареи).Прогнозирование отказов через LSTM-сети.Автоматическое снижение со скоростью ≤1 м/с (RL-алгоритмы).Технологии:Парашютные системы с управлением с нейронной сети. (kiil switch, но с сохранением дрона`` задача со *) |
12. Блок машинного обучения(ML core)на базеYOLOV | Функции:Обнаружение аномалий в заданиях через визуальную валидацию:YOLOv анализирует визуальные данные (спутниковые снимки, карты) из полётного задания, проверяя соответствие целей:Распознавание запрещённых зон (военные объекты, частные территории).Визуальная сверка контрольных точек маршрута с эталонными шаблонами.Оптимизация маршрутов в реальном времени:YOLOv обнаруживает препятствия (здания, деревья, ЛЭП) через бортовые камеры, корректируя траекторию.Динамическое перестроение маршрута на основе распознавания ориентиров (реки, дороги).Контроль доступа через визуальное распознавание:YOLOv идентифицирует авторизованных пользователей по лицам/пропускам в видеостриме с камер управления.Детекция подозрительных действий (попытки физического доступа к дрону). |
4 этап
Анализ функциональности программных модулей БПЛА
Диаграмма классов разрабатываемой системы
@startuml
class Связь_и_интеграция_с_ОрВД {
-mqttClient: MQTTClient
-http3Client: HTTP3Client
-xaiModule: ExplainableAI
+передатьДанныеМестоположения(coords: GPSData): boolean
+получитьДанныеВоздушногоПространства(): AirspaceData
+запроситьИзменениеМаршрута(newRoute: Route): FlightPermission
}
class Сбор_и_анализ_данных {
-rawImageBuffer: byte[]
-metadata: JSON
+сборДанных(cameraFeed: VideoStream): void
+предобработкаДанных(): ProcessedData
}
class Центральная_система_управления {
-currentMission: MissionPlan
-nnController: NeuralNetwork
+координироватьБлоки(): void
+принятьРешение(inputs: SensorData): ControlCommand
}
class Навигация_и_контроль_ограничений {
-currentPosition: GeoCoordinate
-slamMap: 3DMap
+построитьМаршрут(destination: GeoCoordinate): Route
+корректироватьТраекторию(obstacles: Obstacle[]): AdjustedPath
}
class Хранение_данных {
-database: SQLite
-videoCodec: H265
+сохранитьТелеметрию(telemetry: TelemetryData): boolean
+архивироватьВидео(video: VideoStream): CompressedVideo
}
class Полётный_контроллер {
-currentState: FlightState
+управлениеДвижением(commands: ControlCommand): void
+стабилизироватьПоложение(sensors: IMUData): void
}
class Самодиагностика {
-systemStatus: SystemHealth
+проверитьСостояние(): SystemStatusReport
+генерироватьОшибку(errorCode: int): ErrorReport
}
class Приводы {
-motorSpeed: RPM[]
-tiltAngle: Degrees
+изменитьСкорость(rpmValues: RPM[]): void
+корректироватьУгол(angle: Degrees): void
}
class Контроль_батареи {
-currentCharge: mAh
-consumptionRate: mAh/min
+мониторитьЗаряд(): BatteryStatus
+оптимизироватьПотребление(): PowerPlan
}
class Блок_безопасности {
-encryptionKey: AES256Key
-accessRules: RBACPolicy
+шифроватьДанные(data: byte[]): EncryptedData
+аутентифицироватьУстройство(deviceID: string): bool
}
class Блок_аварийного_управления {
-emergencyStatus: EmergencyLevel
+активироватьРежим(reason: string): void
+выполнитьЭкстреннуюПосадку(): LandingProcedure
}
class ML_YOLOV {
-yoloModel: YOLOv5
-trainingData: Dataset
+обнаружитьОбъекты(image: Tensor): DetectionResult
+классифицироватьПрепятствия(objects: DetectedObject[]): ObstacleClassification
}
Связь_и_интеграция_с_ОрВД --> Центральная_система_управления : FlightPermission
Сбор_и_анализ_данных --> ML_YOLOV : VideoStream
ML_YOLOV --> Навигация_и_контроль_ограничений : Obstacle[]
Центральная_система_управления --> Навигация_и_контроль_ограничений : ControlCommand
Навигация_и_контроль_ограничений --> Полётный_контроллер : AdjustedPath
Полётный_контроллер --> Приводы : RPM[]
Самодиагностика --> Блок_аварийного_управления : ErrorReport
Контроль_батареи --> Блок_аварийного_управления : BatteryStatus
Блок_безопасности --> Хранение_данных : EncryptedData
ML_YOLOV --> Хранение_данных : DetectionLog
@enduml
@startuml
actor Оператор
participant "Безопасность" as Security
participant "ML Core" as ML
participant "ОрВД" as ATC
participant "Центр. управление" as Control
participant "Навигация" as Nav
participant "Сбор данных" as Data
participant "Хранение" as Storage
participant "Полетный контроллер" as FC
participant "Приводы" as Motors
participant "Батарея" as Battery
participant "Самодиагностика" as Diag
participant "Аварийный блок" as Emergency
' === Инициализация ===
Оператор -> Control: 1. Запуск дрона
Control -> Security: 2. Аутентификация (биометрия)
Control -> ATC: 3. Запрос разрешения на полет
ATC --> Control: 4. Маршрут + ограничения
Control -> Nav: 5. Загрузка геозон + шаблонов
Control -> ML: 6. Инициализация YOLO
' === Основной цикл ===
loop Каждый цикл (реальное время)
Control -> Data: 7. Активировать сбор видео
Data --> ML: 8. Передать кадры
ML -> ML: **9. Распознавание препятствий (YOLOv)**
ML --> Control: 10. Координаты препятствий
Control -> Nav: 11. Обновить траекторию (SLAM)
Nav -> FC: 12. Скорректировать курс
FC -> Motors: 13. Изменить скорость моторов
Control -> Diag: 14. Проверить состояние
Diag -> Battery: 15. Мониторинг заряда
Diag --> Control: 16. Статус системы
Control -> Security: 17. Шифрование данных
Security -> Storage: 18. Записать снимки
Control -> ATC: 19. Отправить телеметрию
ATC --> Control: 20. Обновления воздушного пространства
' === Облёт препятствий (основное задание) ===
alt **21. Обнаружено препятствие**
ML -> Control: 21.1 Тревога
Control -> Nav: 21.2 Экстренный пересчёт маршрута
Nav -> FC: 21.3 Резкое изменение вектора
FC -> Motors: 21.4 Корректировка моторов
end
' === Аварийные сценарии ===
alt 22. Низкий заряд/неисправность
Battery -> Emergency: 22.1 Сигнал тревоги
Emergency -> Control: 22.2 Запрос на посадку
Control -> FC: 22.3 Активировать алгоритм посадки
FC -> Motors: 22.4 Снижение
end
end
' === Завершение ===
Оператор -> Control: 23. Команда на посадку
Control -> FC: 24. Завершить полет
FC -> Motors: 25. Остановка
Control -> Storage: 26. Архивировать данные
Storage --> Security: 27. Шифрование логов
@enduml
5 этап
Сбор датасетов для работы БПЛА
6 этап
Анализ датасетов на «цифровом двойнике»
7 этап
Разработка программных модулей
8 этап
Рефакторинг и дебагг разработанного кода модулей, улучшение безопасности
9 этап
Разработка документации к разработанным модулям
10 этап
Проведение тестов на «цифровом двойнике»
11 этап
Сбор и анализ полученных данных
12 этап
Проведение натурных испытаний
13 этап
Сбор и анализ полученных данных
Установка и настройка
Используемые ресурсы
- https://stepik.org/course/206470/syllabus
- https://www.youtube.com/watch?v=ioUc7Gv06uk
- https://github.com/cyberimmunity-edu/cyberimmune-development-hackathon2.0-2023-starting-point2
- https://cyberimmunity.spbu.ru/cyberimmune.html
- https://gitflic.ru/project/learning-cyberimmunity/cyberimmune-systems-autonomous-delivery-drone-with-kos
- https://www.youtube.com/watch?v=ytzJ13hsMwg&t=265s
- https://rutube.ru/video/51b7901268d84087c0cf9bc607cd28a9/
- https://rutube.ru/channel/27369385/
- https://www.youtube.com/@learning_cyberimmunity/playlists
- https://habr.com/ru/news/819891/
- https://clover.coex.tech/ru/auto_setup.html
- https://habr.com/ru/articles/661493/
Контакты
Telegram
=======
Киберимунный автономный квадрокоптер
Проект представляет собой набор инструментов и решений для создания киберимунного автономного квадрокоптера. Состоит из ОрВД и наземной станции, прошивки для квадрокоптера, симулятора, модуля безопасности, документации.
Содержание репозитория:
- /ardupilot - прошивка для квадрокоптера и симулятор
- /docs - документация
- /kos - модуль безопасности
- /orvd - Система организации воздушного движения
- /planner - APM Planner 2 под Linux (наземная станция)
- /tests - тесты проекта
Квалификация
Читайте об условиях квалификации в документе - Квалификация.
Документация
- Быстрый старт - инструкция для быстрого запуска проекта (установка, настройка, запуск).
- API - программный интерфейс модуля безопасности.
- Архитектура - архитектурные диаграмы, помогающие понять проект.
- Инструменты - описание инструментов, входящих в решение, и полезные материалы по работе с ними.
- Соревнования - описание соревнований для участников Регионального этапа инженерных соревнований по киберимунной автономности 2025 в Москве.
- Критерии оценки команд на соревнованиях - критерии оценки, используемые на Региональном этапе инженерных соревнований по киберимунной автономности 2025 в Москве.
- Квалификация - квалификационное задание для участников Регионального этапа инженерных соревнований по киберимунной автономности 2025 в Москве.
Документация
- Быстрый старт - инструкция для быстрого запуска проекта (установка, настройка, запуск).
- API - программный интерфейс модуля безопасности.
- Архитектура - архитектурные диаграмы, помогающие понять проект.
- Инструменты - описание инструментов, входящих в решение, и полезные материалы по работе с ними.
- Соревнования - описание соревнований для участников Регионального этапа инженерных соревнований по киберимунной автономности 2025 в Москве.
- Критерии оценки команд на соревнованиях - критерии оценки, используемые на Региональном этапе инженерных соревнований по киберимунной автономности 2025 в Москве.
- Квалификация - квалификационное задание для участников Регионального этапа инженерных соревнований по киберимунной автономности 2025 в Москве.