23.03.2020 22:05
Программно-аппаратная платформа мультикоптера
В настоящее время широкое распространение получили готовые комплекты, позволяющие построить мультикоптер самостоятельно. Чаще всего в их состав входит несущая рама, двигатели вместе с контроллерами и винты. Однако, для того чтобы такой аппарат мог выполнять полет, необходимо подобрать платформу, в состав которой входит управляющая логика и разнообразные датчики. Возможности этой платформы во многом определяют набор функций, реализуемый беспилотным аппаратом.
Целью данной работы являлся подбор программно-аппаратной платформы, а также рекомендаций по способам организации обработки данных от различных подсистем мультикоптера.
Совершенствование технологии производства электронных компонентов привело к тому, что появилась возможность уместить на одной миниатюрной плате полноценный компьютер (микроконтроллер), по мощности не уступающий персональным компьютерам пятнадцатилетней давности. Более того, ряд привычных механических измерительных приборов также выполнены в так называемых микроэлектромеханических системах.
При решении проблемы оптимального выбора аппаратной платформы следует учесть, что управляющая система мультикоптера должна обладать гироскопом, акселерометром, магнитометром и высотомером. Кроме того, вычислительные способности управляющего микроконтроллера должны быть достаточны для первичной обработки данных с датчиков, а также для быстрой реализации алгоритмов подсистем стабилизации, удаленной связи, технического зрения. При этом весьма важными показателями является масса и энергопотребление платформы.
В результате анализа существующих решений в качестве основной управляющей платформы для мультикоптера был выбран модуль Flymaple на основе микроконтроллера STM32F103 архитектуры ARM, поскольку он обладает необходимым набором датчиков и интерфейсов, а также приемлемой производительностью.
Поскольку управляющий контроллер является однокристальным компьютером с сильно ограниченными аппаратными ресурсами необходимо уделить внимание проблемам распределения вычислительных ресурсов между подсистемами мультикоптера. Микроконтроллер работает в режиме реального времени, то есть время его реакции на внешнее событие должно быть сопоставимо со скоростью протекания внешних процессов. Для того чтобы корректно распределить процессорное время на выполнение поставленных задач, выделить под них память, а также согласовать работу всех используемых датчиков и механизмов, и защитить их от сбоев, рационально применять операционную систему реального времени (FreeRTOS, ^C/OS-II).
Значительную важность имеет первичная информация с датчиков подсистемы стабилизации мультикоптера (акселерометр, гироскоп и магнитометр), поскольку именно она отвечает за безопасность летательного аппарата. В силу сложного процесса движения эти измерители подвержены постоянным вибрациям и наводкам со стороны бесколлекторных электрических двигателей. Эти процессы приводят к скачкам показаний, поэтому данные нужно усреднять или фильтровать. Для этого применяются программные фильтры: фильтр средних частот, фильтр Калмана и другие.
В заключение отметим, что использование современных микроконтроллеров и датчиков в управляющих системах беспилотных летательных аппаратов позволяет наращивать их интеллектуальный потенциал, интегрировать подсистемы, выполняющие сложные функции (распознавание препятствий, расчет траектории движения) и соблюдать при этом необходимый компромисс между малыми массогабаритными показателями, энергопотреблением и вычислительной мощностью.
Работа выполнена в рамках минипроекта «Разработка системы управления автономного летающего робота на базе стандартной мультикоптерной платформы» программы стратегического развития ПетрГУ на 2012-2016 гг.
В. Ю. Водакова, М. И. Гудзь, М. В. Красковский
Опубликовано 23.03.2020 22:05 | Просмотров: 749 | Блог » RSS |