Skip to content

Глава 3. Конфигуратор платы управления микроквадрокоптера

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

Нажимаем на кнопку «Connect».

Запуск конфигуратора (Setup)

После старта запускается вкладка «Setup», где отображается:

  • Информация предварительной проверки (Pre-arming checks), которая предотвратит включение двигательной установки транспортного средства, если перед началом движения будет обнаружена какая-либо из довольно большого числа проблем, включая пропущенную калибровку, конфигурацию или неверные данные датчиков.

  • Информация о текущем состоянии системы питания.

  • GPS данные.

В нижнем правом углу отображаются найденные ошибки (строка ошибок видна в полноэкранном режиме конфигуратора). Если поле пустое, то запуск прошел успешно.

Обратите внимание на строку Arming Flags. Режим Arm (постановка на охрану) не позволит контроллеру полета управлять дроном. В самом начале данный режим должен быть выключен, как на картинке выше.

Калибровка (Calibration)

Во вкладке «Calibration» откалибруем акселерометр, нажав кнопку «Calibrate Accelerometer». Поворачиваем и удерживаем полетный контроллер в тех положениях, что изображены в конфигураторе.

После успешной калибровки акселерометра все этапы процесса калибровки загораются синим цветом.

Откалибруем оптический поток, нажав кнопку «Calibrate Optic Flow».

Поворачиваем дрон по направлениям Pitch, Roll, Yaw, но так, чтобы центр дрона никуда не смещался. После калибровки выводится значение Scale. Если значение в диапазоне от 4 до 5, то результат калибровки считается приемлемым. В ином случае откалибруйте заново.

После калибровки нажимаем кнопку «Save and Reboot» для внесения изменений.

Пресеты (Mixer)

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

После настройки нажимаем «Save and Reboot» для внесения изменений.

Выводы (Outputs)

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

Во вкладке «Outputs» активируем «Enable motor and servo output» (Предосторожность, предотвращающая повреждение сервоприводов сразу после перепрошивки полетного контроллера).

Сначала включаем активатор моторов, после это управляем моторами как по отдельности, так и всеми вместе.

После завершения настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

Порты (Ports)

Во вкладке «Ports» отображаются все доступные порты подключения и их конфигурации. Режим MSP позволяет передавать данные через протокол MSP - основной протокол общения с полетным контроллером. Режим Serial RX нужен для подключения радиоприемника для пульта управления. А также есть возможность подключения внешних сенсоров, например, GPS.

Активируем режим Serial RX на том порте, к которому подключен передатчик, режим Sensors GPS, где подключен GPS, а остальные режимы выставляем в протоколе MSP.

После настройки нажимаем «Save and Reboot» для внесения изменений.

Конфигурация (Configuration)

Во вкладке «Configuration» можно настроить датчики и шины данных, датчики напряжения и тока, выставить параметры батареи. В прочих настройках можно определить вывод телеметрии, регистрацию полетных данных и другое.

Во вкладке «Configuration» устанавливаем настройки, согласно рисунку:

После настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

Отказоустойчивость (Failsafe)

В данной вкладке определяется поведение дрона при возникновении внештатной ситуации.

После настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

ПИД (PID tuning)

PID — это функция в полетном контроллере. Эта функция считывает данные с датчиков и передает двигателям, как быстро им нужно вращаться. В конечном итоге, именно так достигается стабильность полета дрона. PID обозначает пропорционально-интегрально-дифференцирующий регулятор. ПИД-регулятор представляет собой замкнутую систему управления, которая пытается получить фактический результат ближе к желаемому результату, внеся коррективы в выходные данные, которые отправляются двигателям. Если происходит ошибка, система возвращается в начало, и цикл повторяется.

Во вкладке «PID gains», пользователи могут выставить свои показатели:

Во вкладке «Rates&Expo» выставлены значения скорости (градусы в секунду) дрона при максимальном отклонении стика. В основном, эти данные используются в «Acro» режиме.

Во вкладке, «Filters» происходит настройка используемых фильтров для улучшения работы дрона.

Во вкладке «Mechanics» можно выбрать необходимую механику для дрона.

После завершения настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

Расширенная настройка (Advanced Tuning)

В данной вкладке выставляются параметры дрона для навигационных режимов. Например, в режиме торможения можно настроить то, как быстро дрон будет сбрасывать скорость. И другие описанные параметры, в том числе и для режима возврата «Домой».

А также есть возможность для дополнительной настройки навигационных режимов (общие параметры навигации, полет по точкам, автоматическая посадка).

После завершения настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

Передатчик (Receiver)

Во вкладке Receiver происходит отображение каналов управления. Настраивается тип передатчика, протокол общения, сглаживание.

При перемещении стиков цветные ползунки будут перемещаться.

После завершения настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

Режимы работы (Modes)

В данной вкладке отображается определение переключателей и соответствующие режимы.

Как видно переключатель, закрепленный за 5 каналом будет отвечать за режим «Arm» (постановка на охрану). Канал 6 всегда запускает полетный режим «Angle», 7 канал отвечает за режим удержания высоты и положения.

После завершения настройки нажимаем кнопку «Save and Reboot» для внесения изменений.

Информация на экране (OSD)

В данной вкладке настраивается OSD — это информация, которая накладывается на видеопоток. Вы видите эту информацию на экране шлема или в очках.

Во вкладке «Конфигурация» соответствующий ползунок должен быть активирован.

Сохраняем и перезагружаем (кнопка «Save and reboot»).

Сенсоры (Sensors)

В данной вкладке выводятся графики с датчиков, подключенных к полетному контроллеру.

Внимание! Debug0-Debug3, отвечают за оптический поток. Debug0 и Debug2 отвечают за перемещение дрона по Roll. Визуально, по фазе они должны совпадать.

Debug1 и Debug3 отвечают за перемещение дрона по Pitch. Визуально, по фазе они должны совпадать.

В случае если они не совпадают, как на рисунке ниже, разворачиваем оптический поток на 180 градусов.

В случаях, когда они не совпадают, как на рисунке ниже, развернем оптические поток на 180 градусов, введя в CLI команду:

set align_opflow = CW180FLIP

Привязанное ведение журнала (Tethered Logging)

Здесь происходит логирование в файл csv. Сразу же доступен просмотр «сырых» данных. Такой формат логирования полезен для настройки дрона на стендах, чтобы сразу обнаруживать помехи, вибрации и прочее.

После настройки начинаем логирование (кнопка «Start Logging»).

Логирование (Blackbox)

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

Включаем запись данных.

Выбираем необходимые параметры для записи, вставляем SD карту в полетный контроллер, сохраняем и перезагружаем.

Обратите внимание, если карта проинициализировалась, то она загорится синим, иначе - красным.

Командная строка (CLI)

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

Обновление встроенного программного обеспечения полетного контроллера

Обновления повышают надежность и стабильность работы микроквадрокоптера, а также позволяют добавлять новые функции.

  1. Вставляем батарею в дрон. Подключаемся к полетному контроллеру через конфигуратор. В конфигураторе во вкладке "Командная строка (CLI)" вводим команду (для ввода нажимаем клавишу «Enter»):

diff

А после нажимаем на кнопку «Save to File». Выбираем или создаем папку, где будут хранится текущие настройки дрона.

  1. Скачиваем update_gui (**https://github.com/AppliedRobotics/ARA-EDU), скачайте обновление - файл с расширением .bin. Положим прошивки в одну папку, а программу в другую. В целом должно получится 3 папки с настройками дрона (diff), с прошивками и с программой для обновления (update_gui).

  1. Для обновления update_gui и необходимую прошивку нужно иметь в одной папке, поэтому скопируем необходимую прошивку в папку с update_gui.

Обратите внимание, для работы внешнего пульта управления используется прошивка, где в названии есть окончание «_rx», например, out_rx.bin. Для работы с DXL шиной в окончании есть «_dxl», например, out_dxl.bin.

  1. Переименуем прошивку в out.bin.

  1. Вставим батарею в дрон, не нажимая кнопки включения.

  2. Запускаем update_gui.

  1. Подключаем провод к полетному контроллеру, а другой конец в компьютеру.

  2. Нажимаем кнопку «Обновить» и ждем окончания загрузки.

  3. После завершения отключаем батарею и провод USB.

  4. Подключаем батарею. Подключаемся к полетному контроллеру. Открыв конфигуратор, выбираем «Keep current settings».

  1. Во вкладке "Командная строка (CLI)" нажимаем на кнопку «Load from file» и выбираем файл, что сохранили в первом пункте.

И выбираем «Execute». После этого система перезагрузится и все изменения вступят в силу.

Обновление встроенного программного обеспечения программируемого контроллера

Скачиваем обновление для программируемого контроллера (https://github.com/AppliedRobotics/ARA-EDU).

Запускаем проект, например, через Arduino IDE.

Для этого переходим в "File" (Файл) ---> "Preferences" (Настройки).

В поле «Additional Boards Manager URLs» («Дополнительные ссылки для Менеджера плат») вводим строку: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json

Для сохранения нажимаем «ОК».

Переходим в "Tools" (Инструменты) ---> "Board" (Плата) ---> "Board Managers" (Менеджер плат).

В открывшемся окне выполняем поиск ESP32, понадобится плата «esp32 by Espressif Systems». Нажимаем на кнопку «INSTALL» («Установка»).

Убедимся в том, что у есть активное интернет соединение и подождите пока установка полностью завершится. Этот процесс может занять до нескольких минут и зависит от скорости интернет соединения.

По завершению загрузки закрываем окно Board Managers (Менеджер плат).

Теперь, перейдя в "Tools" (Инструменты) ---> "Board" (Плата), esp32 станет доступна. Для прошивки ARA Mini выберите ESP32 Wrover Module, а также установите в Flash Mode параметр «DIO», а в Partition Scheme - «Huge APP(3MB No OTA/1MB SPIFFS)».

Подключим батарею к дрону. Подключив провод к разъему для подключения к программируемому контроллеру, выбираем порт подключения.

Загружаем скрипт стандартным образом.

После прошивки в монитор порта выводится адрес веб-пульта.

Для работы подключимся к wifi сети, которую создает дрон. Пароль: 12345678.

Введя в браузере выше указанный адрес с указанием порта 8775 , откроется пульт содержащий вывод изображения, джойстик и каналы управления, имитирующие реальную аппаратуру управления.

Подключение пульта

Управление осуществляется через веб-интерфейс, загруженный на программируемый контроллер.

Также на плате предусмотрены разъем UART для возможного подключения аппаратуры управления.

ВНИМАНИЕ! Микроквадрокоптер ARA Mini поддерживает подключение внешнего пульта управления, однако совместная работа внешнего пульта и шины DXL невозможна. Поэтому меняйте встроенное программное обеспечение полетного контроллера в зависимости от задач (подробнее в разделе «Обновление»). Для подключения стороннего пульта управления обновите прошивку программируемого и полетного контроллеров (подробнее в разделе «Обновление»).

  1. Подключаем приемник по проводу к разъему UART;

  2. Зажимаем на кнопку на приемнике, подключаем батарею, включаем дрон, приемник начинает резко мигать;

  3. Зажимаем кнопку BIND на пульт и включаем его;

  4. Если подключение прошло успешно, то приемник начнет постоянно гореть красным, при этом на пульте не будет никакой индикации;

  5. Всё отключаем и заново включаем, если приемник по прежнему статично горит, то всё подключено, иначе повторите шаги.

Переходим в конфигуратор во вкладку Receiver и проверяем чтобы Receiver Mode имел значение SERIAL, а Serial Receiver Provider - IBUS.

Важно обратить внимание, что для управления через веб-интерфейс Receiver Mode должен иметь значение MSP.

Зарядка

ВНИМАНИЕ! Для реализации зарядки требуется обновить прошивку программируемого и полетного контроллеров (подробнее об обновлении в пункте 3.17, 3.18).

Для отслеживания уровня заряда батареи открываем конфигуратор. Во вкладке "Запуск" конфигуратора (Setup) в поле "Info" выводится информация о состоянии батареи.

Перейдя во вкладку "Конфигурация (Configuration)" в поле "Battery Voltage" отображается текущий заряд аккумулятора, в поле "Warning Cell Voltage" отображается критический заряд аккумулятора, после которого дрон отключается, поэтому советуем не доводиться до этого значения для предупреждения непредвиденных ситуаций.

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

Для вывода микроквадрокоптера из состояния зарядки отправляем что-то по UART в программируемый контроллер (откройте Serial port (Монитор порта), и отправляем по Serial сообщение из 10 или более символов). После чего программируемый и полетный контроллеры начнут передавать друг другу данные.

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