Разработка приложений для мобильных интеллектуальных систем на платформе Intel Atom

Проект Мультиагентная система для БПЛА

Показывать лекцию целиком

Введение

Презентацию к лекции Вы можете скачать здесь.

В настоящее время миниатюризация электронных компонент и технологичность их изготовления позволяет применять небольшие и доступныен беспилотные летательные аппараты (БПЛА) для выполнения задач исследования территории. Несмотря на небольшие размеры "игрушечные" самолеты сейчас способны развивать скорость свыше четырехсот км/ч, при установки на них небольшого реактивного двигателя. В нашем проекте "Мультиагентная система для беспилотного летательного аппарата (БПЛА)", представленном в сентябре 2012 года на "Петербургской осенней выставке ЭКСПО-2012", используется легкий планер PAPRIKA и небольшой квадрокоптер (вертолет), который представляет из себя четырехмоторную раму в виде креста (рис. 7.1).

Технические характеристики планера:

  • размах крыльев 2 м, вес 2 кг
  • полезная нагрузка 500 г
  • скорость 40-60 км/ч
  • дальность 200 км
  • и квадрокоптера:

  • длинна лучей 450 мм
  • полезная нагрузка до 1,2 кг
  • скорость до 20 км/ч
  • дальность до 1 км
  • (рис 7.1) Внешний вид планера и квадрокоптера (на рисунке слева – один из разработчиков проекта К.С.Амелин, на заднем плане – научный руководитель проекта, профессор О.Н.Граничин )

    Комплект бортового оборудования для управления и связи состоит из:

  • исполнительных механизмов, которые в зависимости от источника способны работать, как с цифровым, так и с аналоговым управляющим сигналом;
  • комплекта мотоустновки, в который входит: аккумулятор (LiPo – хорошая токоотдача, но потеря емкости при отречательных температурах или LiFePO4 – низкая токоотдача, но работа при низких температурах), контроллер оборотов и безколллекторный электрический двигатель;
  • автопилота Ardupilot (Arducopter) построенного на основе процессора ATmega 2560 (16 MHz) и дополнительного процессора ATMega328 для обработки управляющего сигнала;
  • комплекта приемника радиосигнала;
  • для навигации используется стандартный набор инерциальной системы (гироскопы, магнитометры и акселерометры) и современный ГЛОНАСС/GPS приемник;
  • передача телеметрии построена на модемах XBee 2.4 GHz;
  • различное дополнительное оборудование;
  • смартфон Intel с ОС Аndroid построен на основе процессора Intel Atom X86.
  • За счёт небольшого веса БПЛА взлёт осуществляется с рук человека (в стандарте предполагается взлёт с катапульты). Посадка – либо за счёт встроенного парашюта, либо за счёт "перехвата" на ручное управление. Наличие "на борту" полнофункционального микрокомпьютера позволяет использовать БПЛА не просто в режиме "удаленной видеокамеры", которая передает видеопотоки в зоне прямой радиосвязи, а как интеллектуального мобильного агента с функциями автопилота. Такой агент способен существенно переработать исходную информацию, подготовить ее для обработки и самостоятельно автономно передать ее суперкомпьютеру по разным каналам связи – в том числе и через Интернет. Реальное ускорение в обработке данных позволит перевести в практическую плоскость и организацию автоматической обратной связи от суперкомпьютера к БПЛА с указанием возможных корректировок планов полета и наблюдений. Бортовые микрокомпьютеры со связью позволяют организовать и автономное взаимодействие внутри группы БПЛА для возможности перераспределения или уточнения заданий, обмена данными и т. п.

    Например, при использовании группы БПЛА для геологоразведки на определенной территории работа системы организуется следующим образом:

  • Выбирается тип задачи (в выбранном примере – геологоразведка).
  • В зависимости от площади исследуемой территории и количества БПЛА в группе, их характеристик, территория разделяется на участки, и формируются отдельные задачи для каждого члена группы.
  • В микрокомпьютер каждого БПЛА группы записывается глобальная задача (параметры исследуемой территории и т. п.) и отдельная задача этого самолета-агента.
  • Каждый агент приступает к выполнению поставленной ему задачи.
  • Когда в зону Wi-Fi видимости одного БПЛА из группы попадает другой, при "общении" происходит передача между агентами накопленной информации и при необходимости взаимное уточнение отдельных задач. Таким образом, по ходу выполнения частной задачи, все агенты накапливают информацию о ходе решении общей задачи группы, а также локально принимают решения о корректировке своих частных задач для более эффективного выполнения общей. Например, группа БПЛА летит по определённому маршруту, все БПЛА летят на разной высоте, при обмене информацией между членами группы выясняется наилучшая высота полёта по энергозатратам, по ходу выполнения задания вся группа оперативно перестраивается на эту высоту.
  • Базовые наземные станции, обеспечивая связь с центром обработки данных (ЦОД), принимают/передают информацию от БПЛА, находящихся в их зоне видимости или поддерживающих связь через Интернет. Так как в процессе общения между БПЛА информация о выполнении общей задачи накапливается во всех микрокомпьютерах группы, то данные даже от тех самолетов, которые редко выходят на связь, все равно попадает в ЦОД.
  • Полученная в ЦОДе информация обрабатывается и визуализируется для заказчика (выдается карта с нанесенными исследуемыми характеристиками).
  • Наличие обратной связи с мобильными агентами (БПЛА) позволяет оперативно формировать из ЦОДа инструкции по корректировке их заданий.
  • В мире ИТ уже во многих областях побеждает схема, в которой нет четкого выделения трех изолированных стадий: подготовка данных, счет, анализ результатов. Этому способствовало всеобщее проникновение персональных компьютеров, смартфонов, мобильных телефонов, которые кардинально изменили представления о месте ЭВМ в обычной жизни. Компьютеры уже интегрированы во многие сферы человеческой деятельности, разработчики встраивают миниатюрные вычислительные устройства и специализированные программы во внутрь многих процессов. В массовом сознании о роли ЭВМ в практической жизни уже произошел сдвиг от супервычислителя к мобильности, понимаемой в очень широком смысле.

    В действительности мобильность и высокопроизводительные вычисления, по нашему мнению, будут всё более тесно связаны. Посмотрим на пример такой традиционной области для ИТ, как "кодирование/декодирование информации". Полвека развития со времен пионерских работ Котельникова-Найквиста-Шеннона успели убедить несколько поколений в незыблемости и правильности постулатов о минимальном числе отсчетов необходимых для точного восстановления сигнала (функции). Но развитие технологий в 90-е годы прошлого века позволило массово перейти от обработки одномерных сигналов к изображениям, а сейчас на повестке дня стоит решение задач трехмерного телевидения. Однако реальные задачи обработки таких сигналов для традиционных средств кодирования/декодирования уже становятся "не по плечу" даже суперкомпьютерам!

    Что же происходит сейчас у нас на глазах с развитием и изменением "парадигмы кодирования/декодирования"? Вместо классической появляется новая парадигма "Compressive Sensing", для которой еще даже не придумано русское название (статья О. Граничина и Д. Павленко в журнале "Автоматика и телемеханика" ). В чем ее суть? Пользователям в реальном времени обычно не нужна вся информация о процессах в каждый момент времени, а важно только изменение принципиальных компонент. Например, при передаче ведеопотока с трехмерной сцены достаточно однократно передать общий вид и детали, выделить характерных персонажей, а потом только отслеживать их изменения. Оказывается, имея интеллектуальные сенсоры (использование принципа мобильности сбора информации), целесообразно до момента кодировки и передачи данных вместо определения всех значений трехмерной сцены (обычно это огромное число) сначала произвести несколько "сверток" всей сцены с некоторыми рандомизированными матрицами, а потом закодировать и передать для обработки суперкомпьютеру только эти несколько измерений. А это означает, что уже сейчас можно говорить о том, что мобильность и использование интеллектуальных агентов при сборе и предварительной обработке данных может существенно сократить время подготовки данных для суперкомпьютерных вычислений. Если глубже взглянуть на новую парадигму кодирования/декодирования, то становится ясным, что при ней существенно меняется не только процесс подготовки данных, но и сам процесс обработки. Таким образом мы говорим уже взаимном дополнении и развитии таких важнейших технологий, как мобильность и супервычисления..

    Исходя из вышесказанного перспективную модель вычисления можно представить следующим образом: мобильные устройства, которые обладают различными датчиками и сенсорами (например, видео- или фото- камерой, gps, датчиками температуры и давления и т.п.) и способны "общаться" друг с другом, являются сборщиками информации, они передают информацию на суперкомпьютер где и происходят конечные вычисления. Мобильные устройства, собирая информацию, одновременно могут фильтровать её, т.е. отмечать особенности и разделять данные различные по тематике (например, отделить файлы с координатами и файлы с фотографиями).

    Эта модель реализуется на примере проекта "Мультиагентная система для группы лёгких беспилотных летательных аппаратов (БПЛА)" . Трудно переоценить актуальность такой задачи для России с её огромной территорией, сельскохозяйственными угодьями, лесами, множеством газо- и нефтепроводов, ЛЭП и "пожарами". При создании такой системы как раз и проявляются все обсуждавшиеся выше проблемы. Многие из задач – разведка полезных ископаемых, поиск людей, выяснение причин техногенных катастроф, плановое патрулирование территорий и т.п. требуют для получения практических результатов применения супервычислений с огромным количеством исходных данных, которые должны поступать на суперкомпьютер в режиме реального времени. Если используются традиционные БПЛА с оператором и приемом/передачей данных по радиоканалу, то реальные автоматизированные системы "захлебываются" от потоков данных, которые надо еще сохранять и передавать компьютеру для обработки. Об обратном потоке управления БПЛА обычно даже речь и не идет, так как результаты не удается получить в реальном времени.

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

    В этой главе будет рассмотрена терхуровневая система управления БПЛА, на основе которой строится мультиагентная система для управления легкими БПЛА.

    Мультиагентный подход и трёхуровневая система управления БПЛА

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

    Описанная выше систем управления комплексом и принцип применения нескольких комплексов БПЛА для группового выполнения задачи характеризуются отсутствием автономной постановки новых задач, позволяющей группе оперативно принимать эффективные решения по изменению сценария выполнения поставленной задачи. Типичными примерами событий, вызывающих необходимость в постановке новых задач, являются: появление нового выгодной информации, для более эффективного выполнения задачи; выход из строя части имеющихся ресурсов; а также изменение критериев принятия решений. Чем выше неопределенность, чем более распределенный характер имеют процессы принятия решения и чем чаще случаются незапланированные события, тем ниже эффективность существующих систем, не способных самостоятельно принимать решения и автоматически перестраиваться под изменения в среде. Кроме того, любая модификация схем принятия решений в традиционных системах представляет собой весьма сложный и трудоемкий процесс и требует высокой квалификации исполнителей, что делает разработку и эксплуатацию рассматриваемых систем крайне дорогостоящими.

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

  • коллегиальность, т.е. способность к коллективному целенаправленному поведению в интересах решения общей задачи;
  • автономность, т. е. способность самостоятельно решать локальные задачи;
  • активность, т. е. способность к активным действиям ради достижения общих и локальных целей;
  • информационная и двигательная мобильность, т. е. способность активно перемещаться и целенаправленно искать и находить информацию, энергию и объекты, необходимые для кооперативного решения общей задачи;
  • адаптивность, т. е. способность автоматически приспосабливаться к неопределнным условиям в динамической среде.
  • Эти возможности кардинально отличают мультиагентные системы (МАС) от существующих "жестко" организованных систем управления группы автономных БПЛА 7.

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

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

    Отметим полезные свойства, которыми обладает группа взаимодействующих моделей по сравнению с использованием одного БПЛА

  • коллективный облет вырабатывает большую картину мира;
  • взаимодействие между собой помогает оптимизировать маршрут полета, основываясь на уже имеющихся данных с другого БПЛА;
  • большее множество стратегий;
  • возможность создания объемной картины мира;
  • более эффективное решение задач (экология, метеорология, оптимизация полёта группы);
  • больше гарантий выполнения задачи;
  • выигрыш во времени (главное условие для задач поиска потерявшихся людей);
  • возможность одновременного обследования территории;
  • возможность корректировки плана и выбора оптимального маршрута, основываясь на имеющихся данных соседнего UAV;
  • возможность постановке разных задач для разных участников группы UAV.
  • Для применения мультиагентного подхода к группе БПЛА в двухуровневую схему управления комплексом БПЛА мы добавляем промежуточный средний уровень, который осуществляется за счёт дополнительного микрокомпьютера установленного в БПЛА .

    (рис 7.2) Три уровня управления БПЛА-агента

    Таким образом, мы получаем новую трёхуровневую систему управления БПЛА-агента (рис.7.2), в которой, на верхнем уровне происходит формирование глобального задания уже для группы БПЛА, начальные условия, корректировка или изменения глобальной задачи, а также приём и обработка полученной от группы информации. На верхнем уровне находится персональный компьютер, к которому подсоединены различные модули для связи (модемы, радиоприемники и др.). Средний уровень управление осуществляется за счёт внедрения в БПЛА микрокомпьютера, который способен обмениваться информацией с другими членами группы и базовой станцией. На основе этой информации микрокомпьютер может изменить свою начальную задачу для ускорения достижения цели глобальной задачи, если это потребуется. Таким образом, мы получаем группу БПЛА-агентов, которая способна адаптироваться к изменениям происходящим во внешней среде. На нижнем уровне находятся управление исполнительными механизмами, датчиками и дополнительным оборудованием.

    БПЛА-агент для автономной группы

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

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

    На верхнем уровне управления нами применяется компьютер – базовая станция (ноутбук, нетбук или стационарный ПК), оснащённый различными средствами связи (радиомодемом, Wi-Fi модемом, Интернет модемом) (рис.7.3). Основными задачами базовой станции являются:

  • определение глобальной миссии группы БПЛА-агентов (параметры территории исследования, задание способов исследования, высота полёта и т.д.);
  • разбиение глобальной задачи на части и формирование начальной индивидуальной задачи для каждого БПЛА-агента группы в зависимости от количества БПЛА-агентов и поставленной перед группой задачей;
  • обмен информацией с БПЛА-агентами, находящимися в зоне связи;
  • сбор и обработка информации от БПЛА-агентов группы;
  • формирование новой глобальной миссии для группы в зависимости от поступающей на базовую станцию новой информации.
  • (рис 7.3) Верхний уровень управления БПЛА-агента

    На среднем уровне управления БПЛА-агента находится бортовой микрокомпьютер – головное устройство системы управления БПЛА. Его основная цель – выполнить поставленную ему задачу с наименьшими затратами по времени и ресурсам . Для этого он выполняет пять основных функций:

  • генерация обновлений к программе полета для автопилота;
  • обработка данных навигационного оборудования и телеметрии;
  • работа с дополнительным оборудованием;
  • общение с микрокомпьютерами других БПЛА (если работа ведется в группе);
  • отправка данных на базовую станцию и получение от нее новых заданий.
  • С базовой станции микрокомпьютер получает общие задачи (начальное состояние, конечные точки, задача для группы и т.п.). При групповом полете общая задача разбивается на частные для каждого БПЛА. В процессе выполнения задачи микрокомпьютер осуществляет общение с другими членами группы, находящимися в радиусе действия радиосвязи. Взаимодействие в группе позволяет группе БПЛА эффективнее выполнить общую задачу, а также избежать столкновений.

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

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

    Связь с базовой станцией осуществляется за счет отдельного радиоканала или через GPRS по GSM модему. GSM модем легко интегрируется с микрокомпьютером, но для передачи данных пакеты необходимо сжимать.

    Cвязь между микрокомпьютерами разных БПЛА осуществляется за счет встроенного радиоприемника с частотой 2,4 GHz и протоколом общения 802.11 n (Wi-Fi), в котором применяется технология, связывающая два ближайших канала в один. Таким образом, микрокомпьютеры в БПЛА смогут одновременно принимать и отправлять информацию друг другу. Связь с базовой станцией осуществляется за счет отдельного радиоканала или через GPRS по GSM модему

    За счёт небольшого веса БПЛА взлёт осуществляется с рук человека или с катапульты. Посадка – либо за счёт встроенного парашюта, либо за счёт "перехвата" на ручное управление.

    Нижний уровень управление осуществяется автопилотом БПЛА-агента (рис.7.4). Автопилот – устройство с микроконтроллером с системой реального времени. Основная задача автопилота состоит в управлении исполнительными механизмами (сервоприводами, мотоустановкой, дополнительным оборудование), основываясь на записанной ему программе полёта и информации с датчиков (инерциальной системы, инфракрасных датчиков, датчиков давления и скорости и т. п.).

    (рис 7.4) Нижний уровень управления БПЛА-агентом

    Таким образом, аппаратная реализация трехуровневой системы, которая нужна для создания мультиагентной сети управления группой БПЛА, возможна

    Алгоритмы групповой работы сети БПЛА

    Во введении были перечислены преимущества, которыми обладает группа взаимодействующих БПЛА-агентов по сравнению с использованием одного БПЛА. В разделе 3 описана аппаратная возможность построения группы БПЛА-агентов. В этом разделе мы рассмотрим два основных типа алгоритмов управления полётом БПЛА: алгоритм мониторинга местности на примере исследование экологической ситуации и алгоритм оптимизации полёта БПЛА на примере использования термических потоков для увеличения дальности полёта .

    При использовании группы БПЛА для мониторинга местности (рассмотрим задачу исследования экологической обстановки в акватории залива, например, разлив нефти) работа системы организуется следующим образом:

  • Выбирается тип задачи (в выбранном примере – поиск нефтяных пятен и источника их образования).
  • В зависимости от площади исследуемой территории, количества БПЛА в группе и их характеристек территория разделяется на участки, и формируются отдельные задачи для каждого члена группы (для выбранного примера задача будет стоять таким образом: поиск аномалии интенсивности цвета поверхности акватории).
  • В микрокомпьютер каждого БПЛА группы записывается глобальная задача (параметры исследуемой территории и т. п.) и отдельная задача этого БПЛА-агента.
  • Каждый агент приступает к выполнению поставленной ему задачи.
  • Когда в зону Wi-Fi видимости одного БПЛА из группы попадает другой при "общении" происходит передача между агентами накопленной информации и, при необходимости, взаимное уточнение отдельных задач. Таким образом, по ходу выполнения частной задачи, все агенты накапливают информацию о ходе решении общей задачи группы, а также локально принимают решения о корректировке своих частных задач для более эффективного выполнения общей. (Например, для выбранного нами примера, группа БПЛА исследует территорию на предмет нефтяных пятен, все БПЛА исследуют разные квадранты. При обмене информацией между членами группы выясняется наличие пятен в одном из квадрантов. По ходу выполнения задания вся группа перестраивает задачу, которая сводится к поиску источника разлива нефти.)

    Базовые наземные станции, обеспечивая связь с центром обработки данных (ЦОД), принимают/передают информацию от БПЛА, находящихся в их зоне видимости или поддерживающих связь через Интернет. Т.к. в процессе общения между БПЛА информация о выполнении общей задачи накапливается во всех микрокомпьютерах группы, то данные даже от тех самолетов, которые редко выходят на связь, все равно попадает в ЦОД.

    Полученная в ЦОДе информация обрабатывается и визуализируется для заказчика (выдается карта с нанесенными исследуемыми характеристиками).

    Наличие обратной связи с мобильными агентами (БПЛА) позволяет оперативно формировать из ЦОДа инструкции по корректировке их заданий.

    Такой алгоритм действия группы подходит к любым задачам визуального мониторинга территории. Основные отличия будут состоять в типе искомого сигнала и в соответствующем дополнительном оборудовании для поиска этого сигнала.

    Программирование бортовых микрокомпьютеров БПЛА

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

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

  • поддержание заданных параметров движения (управляющие воздействия на исполнительные механизмы, генерируемые автопилотом на основании данных, полученных от микрокомпьютера и систем навигации);
  • корректировку курсу (данные для управления передаются автопилоту и формируются на основе данных навигационной системы и поставленной задачи для мобильного объекта);
  • выполнение маршрута движения (формируются на базовой станции в зависимости от поступающей информации от мобильных объектов и поставленной задачи оператором).
  • Все три контура управления в конечном итоге формируют управляющий сигнал на исполнительные механизмы.

    Схематично три контура показаны на рис. 7.5.

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

    (рис 7.5) Три контура управления

    Автопилот формирует управляющие воздействия на сервомеханизмы с применением пропорционально-интегрально-дифференциального (ПИД) регулятора. Это наиболее часто используемый вид управления с обратной связью. Если $$u(t)$$ -управляющее воздействие, $$y(t)$$ - измерения, $$r(t)$$ - желаемый результат измерения, $$e(t) = r(t) - y(t)$$ – "невязка", то ПИД регулятор имеет следующий вид:

    $$u(t)=K_Pe(t)-K_I \int e(t)dt+K_De(t)$$

    где $$K_P,K_I,K_D$$ - коэффициенты усиления пропорциональной, интегральной и дифференциальной составляющей регулятора. В устойчивых системах стабилизация движения часто может быть обеспечена только с помощью пропорциональной составляющей. Интегральный член компенсирует статистическую ошибку, а дифференциальный служит для компенсации задержек в системе. Основой для составление управляющего сигнала являются данные, получаемые с различных датчиков и источников получения дополнительной информации (например, информация с базовой станции, полученная через модуль связи, и т. п.).

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

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

    Обмен информацией между микрокомпьютером и автопилотом можно осуществлять посредством последовательного периферийного интерфейса (SPI, Serial Peripheral Interface).

    В третьем контуре управления на основе поставленной глобальной задачи для группы мобильных объектов и частной задачи для члена группы выбираются точки маршрута. Первоначально точки маршрута формируются оператором на базовой станции на основе поставленной задачи. Глобальная задача записывается в микрокомпьютер, а начальные частные задачи для членов группы - в их автопилоты. В процессе полета изменения глобальной задачи посылаются микрокомпьютерам мобильных объектов группы, которые эти изменения обрабатывают и формируют новые частные задачи для автопилотов. Также, исходя из принятой информации от других мобильных объектов, в рамках глобальной задачи для более быстрого ее завершения микрокомпьютер может поменять частную задачу для автопилота. В описанном выше примере трехуровневой архитектуры обмен информацией между мобильными объектами и между мобильным объектом и базовой станцией происходит посредством различных модулей связи: радио-, Wi-Fi-, Интернет-модема. Связь посредством GSM модема с выходом во всемирную систему компьютерных сетей Интернет в основном предусмотрена для передачи необходимой информации на сервер, доступ к которому можно осуществить с любого компьютера, подключенного к "всемирной паутине".

    Конкретизируем алгоритм (протокол) взаимодействия мобильных объектов в группе без единого центра управления, но с единым центром сбора данных мониторинга некоторой территории с помощью различного оборудования для таких задач, как:

  • визуальный поиск объекта на местности;
  • поиск источника радиосигнала;
  • поиск утечки газопродуктов;
  • поиск источника магнитного излучения;
  • поиск источника радиационного излучения и т.п.
  • Каждой комплекту данных (фотографии, набору данных по замеру химического состава и т.п.) приписывается свой индекс, который соответствует времени фиксации и координатам точки, в которой произведен сбор данных.

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

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

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

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

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

    Обмен информацией мобильного объекта с базовой станцией происходит в тот момент, когда первый входит зону видимости базовой станции. Такая связь осуществляется за счет стабильного радиоканала с дальностью действия 1-2 км. На большем удалении мобильный объект может передавать информацию через подключение к глобальной сети Интернет через связь GSM. Передача информации по такому каналу может быть прервана из-за сбоев в связи при использовании его в воздухе и на значительном удалении от вышек GSM. В связи с этим алгоритм отправки информации такой:

  • создать пакет с полученными данными в установленном интервале времени (например, фото- изображение сделанные за первую минуту сбора данных);
  • сжать пакет;
  • если нет пакетов в очереди отправки, то отправить сжатый пакет;
  • если есть очередь отправки, то поставить пакет в очередь отправки;
  • после отправки пакет и получения подтвержения доставки поставить отметку в индексах – отправлено на сервер. В противном случае пакет считается неотправленным.
  • В ЦОДе данные обрабатываются для извлечени необходимой информации. Для обработки фотографий применяются программные приложения с алгоритмами распознавания образов, выделяются фотографии одинаковой местности и на них определяются изменения. На выходе потребитель получает фотографии с отмеченной наиболее важной информацией. Одним из результатов обработки данных может стать формирование новой глобальной миссии для группы мобильных объектов.

    Вернуться к учебному плану