Инфракрасная

Устройство, настройка и подготовка к работе

Компоненты системы

Для высокоточного автономного полета в помещении система использует базовую станцию и ИК-модуль навигации. Модуль вместе с базовой станцией образуют систему навигации, которая позволяет точно позиционировать квадрокоптер внутри помещения, когда использование других систем навигации невозможно или затруднено. (Например GPS/ГЛОНАСС/Оптический поток).

Базовая станция

В качестве базовой станции используется SteamVR Base Station 2.0 Базовая станция - является важным элементом работы систем виртуальной реальности, используется для обеспечения отслеживания шлемов, контроллеров и трекеров. Специалисты компании «Геоскан» адаптировали данную станцию для отслеживания квадрокоптера внутри помещения.

Примечание

Базовые станции продаются отдельно. Для заказа пишите на почту sales@geoscan.aero или на официальном сайте разработчика Vive. Комплект поставки включает одну базовую станцию и один адаптер питания с кабелем длинной 2.5 метра.

Устройство

Ознакомьтесь с устройством базовой станции:

IRNav_Base-station
  1. Индикатор состояния
  2. Лицевая панель
  3. Порт подключения питания
  4. Резьбовое монтажное отверстие

Установка базовой станции

IRNav_Base-station
  1. Базовая станция должна быть установлена выше уровня головы (выше двух метров) и направлена к полу под углом 25-35 градусов.
  2. Пространство, в которое «смотрит» базовая станция должно быть свободно от мебели, посторонних предметов.
IRNav_Base-station_mount
  1. Базовая станция должна быть установлена на штативе, кронштейне или другом устойчивом основании.
  2. Убедитесь, что станция надежно зафиксирована так, что ее невозможно случайно уронить, чтобы избежать повреждений или некорректной работы.

Внимание!

Каждая базовая станция имеет горизонтальное поле обзора 150 градусов и вертикальное поле обзора 110 градусов. Убедитесь, что в данном поле нет посторонних объектов а также не закрывайте фронтальную панель каким-либо материалом!

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

Индикация

В процесе работы базовая станция сигнализирует о текущем статусе с помощью светодиодов:

  • Белый или зеленый (в зависимости от варианта оборудования) - базовая станция полностью готова к работе.
  • Светит или мигает синим - базовая станция в ожидании стабилизации. Если она долго остается в этом состоянии, проверьте надежность крепления, не испытывает ли поверхность, на которой установлена базовая станция, вибрации.
  • Мигает красным - произошла ошибка.

Бортовой модуль

В комплекте с модулем предусмотрена плата-адаптер необходимая для выноса модуля из плоскости вращения воздушных винтов. Модуль монтируется на базовую плату через адаптер расширения с помощью четырех винтов М3, при этом обеспечивается надежное соединение разъемов.

Индикация

В процесе работы бортовой модуль сигнализирует о текущем статусе с помощью светодиодов:

  • Красный - ошибка, полет запрещен;
  • Красный моргает быстро - станция рядом, но процесс инициализации не запущен;
  • Красный моргает медленно - станция обнаружена, идет калибровка;
  • Зеленый - связь установлена, полет разрешен.

Обновление прошивки

Для обновления прошивки модуля ИК навигации на вашем компьютере должна быть установлена программа Pioneer Station

  1. Нажмите и удерживайте кнопку «Старт» на базовой плате квадрокоптера и подключите аккумулятор. Квадрокоптер должен перейти в режим прошивки.
  2. Подключите квадрокоптер кабелем microUSB к компьютеру.
  3. Запустите Pioneer Station и выберите подключение по USB.
  4. В окне программы выберите пункт меню «Обновление прошивки» и следуйте указаниям помощника.
  5. При переходе к пункту «Выбор устройства» в списке будет отображаться не только базовая плата квадрокоптера, но и модуль ИК-навигации (IRNav). Поставьте галочку напротив модуля и нажмите «Далее».
  6. При выборе источника прошивки рекомендуется выьрать «встроенный» — это актуальная версия прошивки модуля, входящая в сборку Pioneer Station.

    Подсказка

    Если версия модуля не определяется автоматически, прочтите маркировку на обратной стороне платы и выберите соответствующую прошивку из доступных в папке Pioneer Station. Скачать прошивку модуля можно в разделе Загрузки.

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

Настройка полётного задания

Работа с данной системой имеет некоторые особенности. Пожалуйста, ознакомьтесь с информацией ниже. Положение квадрокоптера в пространстве определяется по трем координатам (x, y, z). Точка начала координат - базовая станция.

IRNav_Base-station_axis1
IRNav_Base-station_axis2

Внимание!

  • Нельзя задавать в полетном задании координату (0, 0, 0) — это приведет к столкновению квадрокоптера и станции и последующей поломке оборудования!
  • Координата по оси Y не должна быть меньше чем 0,5! В противном случае, квадрокоптер попадет в слепую зону базовой станции и потеряет ориентацию в пространстве. Это может привести к поломкам оборудования, травмам.
  • Координата по оси Z (высота) - всегда задается в отрицательных значениях! Учитывайте высоту, на которой у вас установлена базовая станция!
  • Координаты в локальной системе не должны превышать 4 метра (радиус действия базовой станции)! При координатах, превышающих это значение велик риск потери связи.

Перед полётом

  1. В конфигураторе Pioneer Station в настройках автопилота необходимо выставить позиционирование по локальной системе координат (кнопка LPS).
  2. Установите базовую станцию и включите ее. (Примечание, станцию нужно только включить, никаких дополнительных действий не нужно.)
  3. Внесите настроенный квадрокоптер с установленным модулем в полётную зону.
  4. Дождитесь установки связи между ИК-модулем и базовой станцией. Связь настраивается автоматически, необходимо дождаться пока на модуле не загорится зеленый светодиод.
  5. Опытным путем определите полетную зону квадрокоптера (радиус действия базовой станции). Для этого с включенным квадрокоптером в руках медленно отходите в разные стороны от станции. При потере сигнала светодиоды на модуле начнут мерцать красным. При необходимости скорректируйте полетное задание!
  6. Убедитесь, что в зоне полетов нет посторонних.

Внимание!

В случае вылете квадрокоптера за пределы полетной зоны - необходимо в ручном режиме вернуть его обратно. Для этого тумблер SwC должен быть всегда в среднем положении, а тумблер SwB должен быть переведен в момент вылета из среднего в верхнее положение. Подробнее - в разделе Меры предосторожности.

Пример Lua-скрипта

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

  1. Скопируйте код и вставьте его в окно редактирования кода Pioneer Station.
  2. Проверьте, что в параметрах автопилота выставлено позиционирование по локальной системе координат (LPS)
  3. Отключите квадрокоптер от компьютера. Поставьте его в зону действия базовой станции, дождитесь соединения ИК-модуля и базовой станции.
  4. Настройте 8-й канал на пульте РУ на тумблер SwA.
  5. Если вы не проводили проверку рабочей зоны квадрокоптера, то произведите ее по алгоритму, описанному выше в разделе «Перед полетом»
  6. Запустите скрипт, нажав кнопку «Старт» на базовой плате. Переведите тумблер SwA в нижнее положение. Дождитесь начала выполнения полетного задания.
  7. При возникновении внештатной ситуации - переведите квадрокоптер в ручной режим управления и совершите посадку. (Подробнее в разделе Меры предосторожности)
autoFlight.lua
    -- Упрощение вызова функции распаковки таблиц из модуля table
    local unpack = table.unpack

    -- Создание порта управления светодиодами
    local rc = Sensors.rc -- считывание положения тумблеров 

    -- Таблица точек полетного задания в формате {x,y,z}
    -- Обратите внимание на координату Z, она должна быть отрицательной и не равна 0.
    local points = {
            {0, 2, -1},
            {0, 1, -1},
            {0, 2, -1},
            {0, 1, -1}
    }
    -- Счетчик точек
    local curr_point = 1

    -- Функция, изменяющая цвет светодиодов и выполняющая полет к следующей точке
    local function nextPoint()
        -- Текущий цвет. % - остаток от деления, # - размер таблицы. Такая конструкция использована,
        -- чтобы цвета продолжали меняться, даже если точек больше, чем цветов в таблице
    
        -- Изменение цвета светодиодов                                                         

        -- Полет к текущей точке, если её номер не больше количества заданных точек
        if(curr_point <= #points) then
            Timer.callLater(1, function()
                -- Команда полета к точке в системе позиционирования
                ap.goToLocalPoint(unpack(points[curr_point]))
                -- Инкрементация переменной текущей точки
                curr_point = curr_point + 1
            end)
        -- Посадка, если номер текущей точки больше количества заданных точек
        else
            Timer.callLater(1, function()
                -- Команда на посадку
                ap.push(Ev.MCE_LANDING)
            end)
        end
    end

    -- Функция обработки событий, автоматически вызывается автопилотом
    function callback(event)
        -- Когда коптер поднялся на высоту взлета Flight_com_takeoffAlt, переходим к полету по точкам
        if(event == Ev.TAKEOFF_COMPLETE) then
            Timer.callLater(5, nextPoint)
        end
        -- Когда коптер достиг текущей точки, переходим к следующей
        if(event == Ev.POINT_REACHED) then
            Timer.callLater(5, nextPoint)
        end   
    end

    -- Предстартовая подготовка
    startTimer = Timer.new(1, function()
        rc_chans = table.pack(rc())
        if rc_chans[8] > 0 then -- проверка положения тумблера SwA
            curr_point = 1
            ap.push(Ev.MCE_PREFLIGHT)
            Timer.callLater(6, function() ap.push(Ev.MCE_TAKEOFF) end)
        end
    end)
    -- Таймер, через 2 секунды вызывающий функцию взлета
    startTimer:start()

Меры предосторожности

  • Не пытайтесь вскрыть базовые станции, это может привести к травмам или повреждениям конструкции
  • Если лицевая панель имеет трещины или повреждения, прекратите использование базовых станций и обратитесь с службу поддержки производителя.
  • Обязательно снимите защитную пленку с лицевой панели после монтажа базовых станций.
  • Используйте только блоки питания и кабели из комплекта поставки базовых станций!
  • После включения не перемещайте и не регулируйте углы расположения базовых станций, поскольку это может препятствовать процессу отслеживания. В противном случае может потребоваться повторная настройка.

На этой странице