Смарт-камера PX4FLOW

PX4Flow Top View PX4Flow Bottom View

PX4FLOWopen in new window – смарт-камера, реализующая алгоритм вычисления "оптического потока" (optical flowopen in new window) и способная передать полученные данные в полётный контроллер. Optical flow часто применяется для полётов коптера в помещении.

Спецификации

Модуль PX4FLOW содержит:

  • микропроцессор Cortex M4F (168 MHz, 128 + 64 KB RAM);
  • светочувствительную матрицу MT9V034 (разрешение: 752x480 точек);
  • трёхосевой гироскоп L3GD20.

Для светочувствительной матрицы используется объектив 16мм М12 с установленным ИК-фильтром.

Габариты модуля составляют 45.5x35x25 мм (в зависимости от настройки объектива).

Модуль использует питание 5 В и потребляет до 115 мА.

Интерфейсы:

  • USB (разъём microUSB) – используется для программирования и первоначальной настройки;
  • I2C (разъём Hirose DF13 4 pos) – используется для передачи данных на полётный контроллер;
  • USART2, USART3 (разъёмы Hirose DF13 6 pos) – могут использоваться для подключения к полётному контроллеру и последовательного соединения нескольких модулей.

СОВЕТ

Использование Optical Flow требует наличия дальномера!

На некоторых моделях PX4FLOW может быть установлен сонар Maxbotix LZ-EZ4. В этом случае его показания будут пересылаться вместе с показаниями камеры.

Первоначальная настройка

Настройка камеры производится с помощью программы QGroundControlopen in new window. Запустите её и подключите модуль PX4FLOW к компьютеру по USB. Откройте режим Vehicle setup (иконка с шестерёнками); окно QGroundControl при этом будет выглядеть примерно так:

QGroundControl PX4FLOW connected

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

QGroundControl PX4FLOW firmware update

СОВЕТ

При перепрошивке PX4FLOW следует выбрать прошивку PX4 Pro при использовании полётного контроллера на базе PX4 и ArduPilot при использовании полётного контроллера с прошивкой ArduPilot.

Фокусировка камеры

Для оптимальной работы модуля PX4FLOW следует настроить фокус его камеры на предполагаемое расстояние от пола, при котором будут осуществляться полёты. Это можно сделать в QGroundControl в режиме Vehicle setup во вкладке PX4Flow. Там вы сможете увидеть изображение с камеры:

QGroundControl PX4FLOW camera feed

СОВЕТ

Для калибровки камеры лучше использовать специальный режим Video only. Для его включения зайдите во вкладку Parameters, найдите параметр VIDEO_ONLY и установите его в значение 1

QGroundControl PX4FLOW Video Only Parameter

Фокусировку следует проводить в хорошо освещённом месте, модуль камеры при этом следует закрепить. Для фокусировки рекомендуется использовать книгу или коробку с текстом. Расположите объект, на котором вы будете фокусироваться, на таком расстоянии, на котором вы предполагаете летать над полом.

СОВЕТ

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

При работе в режиме калибровки рекомендуется развернуть окно QGroundControl на весь экран, чтобы лучше видеть изображение:

QGroundControl PX4FLOW calibration

СОВЕТ

Изображение с камеры будет отражено по вертикальной оси. Это является нормальным поведением и не должно быть поводом для беспокойства.

Отпустите контргайку на объективе и медленно вращайте его, пока изображение не станет резким. После этого аккуратно закрепите объектив с помощью контргайки.

СОВЕТ

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

Установка и подключение

По умолчанию предполагается, что модуль PX4FLOW будет расположен так, что направление оси y будет совпадать со стрелкой на полётном контроллере:

PX4FLOW alignment

СОВЕТ

Поворот модуля PX4FLOW относительно полётного контроллера указывается параметром SENS_FLOW_ROTopen in new window в PX4. Его значение по умолчанию (Yaw 270°) соответствует размещению на иллюстрации.

Подключение к Pixhawk

Подключите PX4FLOW с помощью поставляемых кабелей к разъёму I2C на Pixhawk:

PX4FLOW Pixhawk connection

Подключение к Pixracer

В полётном контроллере Pixracer используется совмещённый порт UART/I2Copen in new window (помечен как GPS).

ВНИМАНИЕ

На более ранних версиях PX4FLOW разъём I2C может быть перевёрнут; ориентируйтесь на кабель, идущий в комплекте – на нём красным отмечен провод питания.

PX4FLOW Pixracer connection

СОВЕТ

Для подключения PX4FLOW к Pixracer рекомендуется использовать GPS/I2C сплиттерopen in new window

Настройка полётного контроллера

Для того, чтобы полётный контроллер использовал данные с PX4FLOW, следует установить соответствующие флаги в настройках estimator'а:

  • Для LPE (SYS_MC_EST_GROUP = local_position_estimator): в LPE_FUSION включены флажки fuse optical flow и flow gyro compensation.
  • Для EKF2 (SYS_MC_EST_GROUP = ekf2): в EKF_AID_MASK включен флажок use optical flow.

СОВЕТ

Остальные настройки PX4FLOW описаны в статье по Optical Flow. Значения по умолчанию должны обеспечить оптимальную работу PX4FLOW.