Архитектура программного обеспечения полётного контроллера

Программное обеспечение полётного контроллера разделено на задачи чтения датчиков, оценки состояния, управления и связи. Программный стек может разделять.

3 мин чтенияПолётные контроллеры, автопилоты и режимы управления

Введение

Программное обеспечение полётного контроллера разделено на задачи чтения датчиков, оценки состояния, управления и связи. Программный стек может разделять драйверы датчиков, оценивание состояния, регуляторы и обмен сообщениями. Разделение функций облегчает понимание ошибок, но общие вычислительные ресурсы связывают модули между собой. Открытые архитектуры не следует без доказательств приписывать закрытым системам.

Принцип формирования данных

ПО полётного контроллера может включать драйверы датчиков, оценку состояния, регуляторы, обмен сообщениями и журналирование. Уровни взаимодействуют, но не являются одной неразделимой программой.

Разделение модулей позволяет тестировать функции, но программный сбой способен распространиться через общие ресурсы вычислителя.

Сравнение двух показателей

Ошибка датчика, ошибка интерпретации сообщений и ошибка отображения интерфейса способны иметь разные проявления. Поэтому архитектура важна для диагностики.

Близкие технические понятия

estimator — модуль оценки состояния; flight controller — модуль расчёта управляющих команд.

Открытая документация к проекту показывает его собственное устройство; распространять её на закрытые отечественные комплексы без независимого основания нельзя.

Что не следует заключать

Название прошивки или наличие открытого кода не раскрывают автоматически архитектуру конкретной военной версии аппарата.

Программное обеспечение контроллера — несколько взаимосвязанных слоёв

В архитектуре автопилота часто выделяют получение данных от датчиков, оценку состояния, управляющие функции и обмен сообщениями с внешними устройствами. Это функциональные слои, которые могут быть реализованы в разных процессах или модулях. Название микроконтроллера не раскрывает автоматически структуру всего ПО.

Важны различия между программной задачей реального времени и приложением наземного интерфейса. Первая связана с обработкой бортовых событий, второе — с отображением и обменом информацией.

Для описания конкретного комплекса требуются датированные сведения о версии ПО, а не только схожесть схем с открытой платформой.

Как разделены задачи программных подсистем

Полётное ПО может содержать модули взаимодействия с датчиками, оценки положения, регулирования, обмена сообщениями, журналирования и контроля состояния. Их логические границы полезны даже тогда, когда программы выполняются на одном процессоре. Благодаря такому разделению можно объяснить, почему сбой отображения данных не всегда тождествен отказу бортового регулятора и наоборот.

Важно отличать исходный код, конкретную сборку прошивки, аппаратные драйверы и настройки продукта. Название программной платформы не гарантирует одинакового набора функций для всех совместимых устройств. Гражданские открытые проекты позволяют изучать общую архитектуру, однако по их документации нельзя устанавливать программный состав закрытого российского конкретного БПЛА. Для подобных утверждений требуются проверяемые сведения об изделии.

Архитектура программного обеспечения включает также диагностику, обработку исключительных ситуаций и правила обмена данными. Но список модулей не позволяет судить об их фактической реализации и качестве. Статья о ПО контроллера должна подчёркивать роль тестирования и версий, а не ограничиваться графической блок-схемой. Открытая документация демонстрирует подходы, но не подтверждает состав закрытых модификаций.

Источники

  1. PX4 — Basic Concepts — Аппаратная и программная архитектура автопилота.
  2. PX4 — Using PX4 Navigation Filter (EKF2) — Объединение измерений датчиков; документация ПО, не утверждение о военном комплексе.
  3. MAVLink — Common Message Set — Стандартные категории телеметрии, состояния и навигационных сообщений.

Улицы Героев

Сайт проекта и контакты.

ПРОФБПЛА · Связь, навигация и управление БПЛА на СВО