УДК 004.75;614.84
АЛГОРИТМИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ БОРТОВОГО КОМПЛЕКСА МОНИТОРИНГА ЛЕСОПОЖАРНОЙ ОБСТАНОВКИ
М.А. Сонькин, А.В. Шкуратов
Томский политехнический университет E-mail: neos@tpu.ru
Предложена структура программного обеспечения мониторинга лесопожарной обстановки, используемая для автоматизации службы авиационной охраны лесов, основывающаяся на оригинальных алгоритмах формирования, обработки и передачи информации и позволяющая повысить оперативность и достоверность передаваемых навигационных и производственных данных. Приведены результаты верификации алгоритма фильтрации навигационных данных, которые подтвердили эффективность предложенного подхода.
Ключевые слова:
Навигация, оптимизация данных, передача навигации, структура программного обеспечения.
Key words:
Navigation, data optimizing, data transmitting, software structure.
Введение
Ежегодно в РФ происходят тысячи лесных пожаров, приносящих миллиардные убытки государству. Своевременное обнаружение лесных пожаров является залогом их быстрой локализации и ликвидации. Из-за большой площади страны важную роль в этом деле играет авиационный мониторинг, позволяющий с наибольшей скоростью и точностью обнаружить пожар и вызвать подкрепление. Эту работу на борту воздушного судна выполняет летчик-наблюдатель. Информация, которой он обладает, является важной для выполнения мероприятий по тушению лесного пожара. Весь перечень работ и ответственности отражен в работе [1].
При мониторинге лесопожарной обстановки летчик-наблюдатель сталкивается с рядом трудностей: навигация по бумажным картам, необходимость вести подробную запись о происшествиях в бортжурнале, поддерживать радиосвязь с локальными диспетчерскими центрами.
Таким образом, работа летчика-наблюдателя является важной, ответственной и вместе с тем -неавтоматизированной. Она сопряжена с использованием большого количества инструментов, многие из которых морально устарели. Среди существующих способов обеспечения навигации и передачи информации с борта воздушного судна в диспетчерский центр не было найдено решения, комбинирующего необходимые векторные карты местности, данные спутникового навигационного приемника, работу с производственной информацией и передачу данных в диспетчерский центр органа мониторинга лесопожарной обстановки.
Цель данной статьи - исследование и разработка алгоритмического и программного обеспечения информационно-телекоммуникационной системы, обеспечивающей формирование, обработку и передачу навигационной информации с борта воздушного судна в диспетчерский центр органа мониторинга лесопожарной обстановки региона,
с целью повышения оперативности и достоверности переданной информации.
Структура предлагаемого программного обеспечения
Для автоматизации работы предлагается использовать программное обеспечение бортового комплекса мониторинга лесопожарной обстановки, отличающееся оригинальной структурой, рис. 1, с использованием динамически подключаемых модулей ГИС, управления каналами связи и работы с навигационной информацией. Структура разделена на две части: серверное и клиентское программное обеспечение.
В структуре выделены модули:
• ГИС, представляющий собой электронную карту местности, набор функций для работы с ней.
• Отображения объектов на карте, представляющий собой отдельный блок-прослойку между модулем ГИС и остальными модулями. Анализируя загрузку процессора, проводится балансировка нагрузки за счет дополнительной буферизации информации о вызываемых командах и их последующего поэтапного выполнения.
• Работы с производственной информацией, автоматически генерирующий формы и таблицы для просмотра и редактирования производственной информации на основе хт1-конфигу-раций.
• Отчетности, позволяющий генерировать отчетные формы на основе проведенных полетов.
• Работы с базой данных, реализованный на клиентской и серверной частях, причем клиентская часть использует серверную для доступа к данным.
• Приема навигационной информации, служащий для приема навигационной информации от серверной части программного обеспечения.
• Чтения навигационных данных, позволяющий читать навигационные данные со спутниковых навигационных приемников.
Отображение Работа с
объектов на -* гис производственной
карте информацией
Прием
навигационной
информации
Отчетность
Работа с базой данных
Управление записью и передачей данных
Формирование блоков нав. инф. для передачи
Фильтрация навигационных данных
Работа с базой данных
Управление подключаемыми модулями
Передача информации
Чтение навигационной информации
Импорт-экспорт данных
Рис. 1. Структура программного обеспечения бортового комплекса мониторинга лесопожарной обстановки
• Фильтрации навигационных данных, предназначенный для уменьшения объема навигационной информации путем отбрасывания лишних точек в реальном масштабе времени.
• Передачи информации, отвечающий за оперативную и достоверную передачу информации по комбинированным сетям в информационнотелекоммуникационную систему «Ясень» [2].
• Импорта-экспорта данных, предназначенный для выгрузки/загрузки производственной информации из внешних источников, включая данные космомониторинга [3].
• Управления записью и передачей информации, являющийся связующим звеном и управляющий модулями записи, чтения и фильтрации навигационной информации, подсистемой передачи информации.
Алгоритм фильтрации навигационной информации
Пусть перемещение объекта задано некоторой функцией F(t), назовем это истинное перемещение. Спутниковые навигационные приемники передают текущие координаты с частотой от 1 до 5 раз/с; f(t) - интерполированная навигационным приемником функция перемещения. При режиме записи точек через каждую секунду при 5-часовом полете получается 18 тыс. точек, что является избыточным.
Необходимо провести переход F(t)^f(t)^f’(t), где f *(t) - новая интерполированная функция, ко-
торая удовлетворяет Л(/)=|/(/)-/*(0|<£, /е[/0,/„], /0 -время фиксации первой точки; - время фиксации крайней точки; е - некоторая указанная точность, причем переход должен быть осуществлен в реальном масштабе времени.
Учитывая, что погрешность большинства спутниковых навигационных приемников при хорошем приеме сигнала не превышает 20 м [4. С. 107], можно рассчитывать на дополнительные е=10м погрешности, добавляемые алгоритмом фильтрации навигационной информации. Большинство навигационных приемников могут давать «выбросы», когда навигатор в выходном наборе достоверных точек дает одну или более точек на неадекватно большом расстоянии от крайней, а затем снова передается набор достоверных точек.
Следовательно, необходим алгоритм, который исключит из набора навигационных данных выбросы и уменьшит количество точек так, чтобы выполнялось Л(/)<£.
Среди отличительных особенностей передвижения воздушного от наземного транспортного средства можно выделить: скорость перемещения в полете постоянно больше 80 км/ч (скорость взлета самолета модели АН-2) и сохраняется на уровне ~ 150 км/ч (крейсерская скорость АН-2); изменение направления движения происходит медленнее; на движение воздушного судна влияет ветер, поэтому летчику необходимо все время поправлять курс. Из этого возникает такое явление, как рыска-
Рис. 2. Расчет максимальной высоты, опущенной из точки дуги на прямую, соединяющую первую и крайнюю точку дуги
нье - курс постоянно меняется на 1...2°. Таким образом, все движение воздушного судна - набор дуг, прямых линий практически нет.
Для реализации алгоритма фильтрации навигационных данных введем несколько понятий:
Навигационная точка - точка, координаты которой получены с помощью систем спутниковой навигации.
Фиксированная навигационная точка - навигационная точка, которая прошла фильтрацию и будет в выходном массиве точек.
Рассмотрим ситуацию разворота воздушного судна. Для обеспечения заданной точности при фильтрации необходимо, чтобы все дуги трека удовлетворяли требованию: проекция высоты Н„ опущенная из г-й точки дуги на прямую, соединяющую первую и крайнюю точку дуги, меньше величины заданной точности Ах, рис. 2. То есть выполнялось условие: шах(к1,к1,...,к„)<е.
Пунктирной линией К отмечен курс в крайней зафиксированной точке. Точечной линией К' отмечен курс текущей точки относительно крайней фиксированной - результирующий курс. Сплошной линией с подписью £ обозначено направление с азимутом 0. Угол в - курс крайней фиксированной точки. Угол у -результирующий курс. Угол а1, а3 - курсы в нефиксированных точках относительно результирующего курса. Угол а2 не показан, т. к. он равен 0; Н1 и Н2 - проекции высот, опущенные из нефиксированных точек на прямую результирующего курса; /1-/3 - перемещения между нефиксированными точками.
При вычислении расстояний, в том числе максимального отклонения, для получения точного результата необходимо применять сферическую геометрию. Однако эти вычисления являются тру-
доемкими. Для ускорения этой операции можно использовать плоскую геометрию, что упростит вычисления, а при столь малых значениях (расстояние порядка 30.50 м) погрешность вычислений будет мала. Рассмотрим это допущение: А/=/-/щ, рис. 3, где А/ - погрешность измерения при использовании плоской геометрии вместо сферической; / - длина дуги (перемещение по сфере); /пр - перемещение по прямой, длина отрезка, соединяющего первую и крайнюю точку дуги на плоскости.
Рис. 3. Участок сечения сферы Земли ОАВ
На рис. 3 О - центр сферы Земли; Я - средний радиус Земли; А - первая точка перемещения; В -вторая точка перемещения; а - сторона сферического треугольника. Расстояние между двумя точками на сфере - длина дуги большого круга. Т. к. треугольник ОАВ - равнобедренный (ОА=ОВ=Я),
то /„р=2йзт(а/2). Также известно а =-----------360,
2п Я
учитывая малое значение l (50 м) и большое значение R, Afo0.
Следовательно, при таких перемещениях можно использовать простую пространственную гео-
у£‘
метрию: h,l sin aj, где ht - проекция г-й высо-
j=i
ты, опущенная из точки дуги на отрезок, соединяющий первую и крайнюю точку дуги. На рис. 2 отображены h1 и h2; lt - расстояние между точками сг-1 и c; aj - угол между курсом движения в точке ct и вычисленным результирующим курсом из первой в крайнюю точку дуги.
Алгоритм динамической выборки
навигационных данных
Навигационная информация не может передаваться постоянно, т. к. это невозможно с технической точки зрения либо сопряжено с большими финансовыми затратами. Следовательно, целесообразно передавать информацию по блокам. Таким образом, каждая фиксированная точка ci формирует множество всех записанных точек текущего трека C и множество точек текущего блока b. Крайний записанный блок bn_1 назовем оперативными данными.
На данный момент в большинстве комплексов передачи навигационной информации используется следующий подход по передаче архивной информации: все архивные точки разбиваются на блоки определенного размера в порядке их фиксации и передаются. Этот подход является самым очевидным, однако, если канал связи неустойчив, то при передаче данных в процессе полета в диспетчерском центре может получиться «рваный» трек с детальными данными в одних частях траектории и без данных в других.
Предлагается новый алгоритм формирования блоков навигационной информации для передачи: выполняется проход по всем архивным точкам и в результирующий блок выбирается каждая -я точка. Из списка архивных точек удаляются выбранные. Если оставшихся архивных точек больше 0, то определяется новое , и делается следующий проход для формирования второго блока и так далее до тех пор, пока количество архивных точек не станет равным 0.
Этот алгоритм изменяет порядок точек в блоке и обеспечивает поэтапную передачу навигационной информации в диспетчерский центр, ускоряющую вывод общей траектории на электронную карту. Как видно, является функцией от набора точек, который подлежит обработке, и максимального размера блока N. Для обеспечения равномерности выбираемых данных по времени (время между двумя выбранными точками больше или равно некоторому t) выбираются те точки, где время фиксации между крайней выбранной и текущей различается не меньше, чем общая длина архивного трека (время), поделенная на максимальное ко-
личество точек в блоке N. Если при проходе (при подходе к концу) остается свободных мест в блоке больше, чем необработанных архивных точек, то оставшиеся выбираются в свободные места без проверки.
Если сгенерированные блоки не были переданы, то точки, выбранные для их формирования, возвращаются в набор архивных и участвуют при следующих сеансах связи - в противном случае удаляются из набора.
Входные параметры итерации алгоритма выборки: Б - массив архивных точек; N - максимальное число точек в блоке; / - вычисленное среднее время между точками.
Используемые переменные: / - номер крайней фиксированной точки; - индекс текущей обрабатываемой точки; К - размер входного массива точек Б; / - количество «свободных» мест в выходном массиве.
Шаг 1. Установить номер текущей точки г=0, 7=0, размерность входного массива К=яге(Б), /=N-1.
Шаг 2. Сохранить точку Б{ в выходной массив.
Шаг 3. Перейти к следующей архивной точке, г= г+1.
Шаг 3. Если размерность массива стала равной или превысила N или г>К - переход на шаг 7. Иначе - на шаг 4.
Шаг 4. Если время между текущей точкой и крайней фиксированной больше /, либо не проверенных точек в Б меньше, чем свободных мест в архивном блоке, то - на шаг 5. Иначе - на шаг 3.
Шаг 5. Индекс крайней фиксированной точки 7= г. Число свободных мест в архивном блоке уменьшается на единицу, /=/-1.
Шаг 6. Сохранить точку Б{в выходном массиве. Далее - на шаг 3.
Шаг 7. Конец.
Для оценки алгоритма введем понятия: /точки - вероятность передачи одной точки; рчас]и блока - вероятность передачи любой части блока (любой точки блока); /блока - вероятность передачи блока. При использовании существующих подходов А^Рчасш блока=Рблока, так как одна точка помещается только в один блок, который не делится на подблоки. При использовании предлагаемого алгоритма выборки навигационной информации точки одного блока распределяются по к блокам (число непереданных блоков). Следовательно, за счет разделения на подблоки новое значение р',^блок^к^™ блока. В условиях качественной связи к равно 1, однако в условиях неустойчивой связи, значение будет больше 1.
Таким образом, хотя число переданных точек, выбранных существующим и предлагаемым алгоритмами при равных условиях одинаково, время, необходимое для отображения общей траектории при использовании нового алгоритма -меньше.
Внешний вид разработанного программного обеспечения интуитивно понятен пользователю, рис. 4.
Рис. 4. Интерфейс программного обеспечения бортового комплекса мониторинга лесопожарной обстановки
Таблица. Сравнение алгоритмов фильтрации навигационной информации
Кол-во тыс. точек до фильтрации Кол-во точек Ср. откл. трека, м
1 2 1 2
20 1283 1659 8,5 21,2
30 1462 2140 9,3 23,1
23 1379 1821 8,8 20,8
Программное обеспечение «Ясень-БКПО» [5] внедрено в составе информационно-телекоммуникационной системы «Ясень» в структурах лесного хозяйства Московской, Новосибирской, Свердловской областях и Ханты-Мансийского автономного округа.
Верификация алгоритмов
Разработанные алгоритмы были реализованы и верифицированы в реальных условиях. Результат сравнения стандартного алгоритма фильтрации навигационной информации наземных транспортных средств и предлагаемого представлены в таблице. Столбцы с индексом 1 отображают результаты использования нового, с индексом 2 - стандартного алгоритмов. Сравниваемые параметры:
количество точек после фильтрации, среднее отклонение точек исходного трека от нового.
Из таблицы следует, что традиционный алгоритм генерирует трек с большим числом точек и погрешностью, превышающей заданную (равную 10 м) более чем в 2 раза.
Заключение
Разработана структура программного обеспечения мониторинга лесопожарной обстановки, используемая для автоматизации работы летчика-на-блюдателя службы авиационной охраны лесов на основе динамически подключаемых модулей.
Предложены алгоритмы фильтрации и динамической выборки навигационной информации для передачи, позволяющие повысить ее оперативность и достоверность за счет более эффективного использования канала связи.
Результаты испытаний подтвердили корректность теоретических выкладок и разработанных алгоритмов.
Работа выполнена при проведении НИР в рамках реализации ФЦП «Научные и научно-педагогические кадры инновационной России» 2009-2013 гг. Госконтракт № П2396.
СПИСОК ЛИТЕРАТУРЫ
1. Коровин Г.Н., Андреев Н.А. Авиационная охрана лесов. - М.: Агропромиздат, 1988. - 220 с.
2. Сонькин М.А., Печерская Е.И., Семыкин С.В. и др. Информационно-телекоммуникационная система мониторинга лесопожарной обстановки субъекта РФ (ИТС «Ясень») // Федеральная служба по интеллектуальной собственности, патентам и товарным знакам. Свидетельство о государственной регистрации программы для ЭВМ № 2011614800. - 2011.
3. Беляев А.И., Коровин Г.Н., Лупян Е.А. Состояние и перспективы развития Российской системы дистанционного мониторинга лесных пожаров // Современные проблемы дистанцион-
ного зондирования Земли из космоса: Труды III открытой Все-рос. конф. - М.: ИКИ РАН, 2006. - С. 341-350.
4. Глобальная спутниковая радионавигационная система ГЛО-НАСС / под ред. В.Н. Харисова, А.И. Петрова, В.А. Болдина. -М.: ИПРЖР, 1999. - 400 с.
5. Сонькин М.А., Печерская Е.И., Комлев А.Н. и др. Программное обеспечение бортового комплекса подвижного объекта для мониторинга лесных пожаров // Федеральная служба по интеллектуальной собственности, патентам и товарным знакам. Свидетельство о государственной регистрации программы для ЭВМ № 2011614798. - 2011.
Поступила 26.10.2011 г.
УДК 004.62
ЗАДАЧА СБОРА И ПЕРЕДАЧИ ТЕХНОЛОГИЧЕСКОЙ ИНФОРМАЦИИ РАСПРЕДЕЛЕННОГО ПРОМЫШЛЕННОГО ПРЕДПРИЯТИЯ
В.В. Вейбер, А.В. Кудинов, Н.Г. Марков*
Томский политехнический университет *ОАО «ВостокГазпром», г. Томск E-mail: webvad@tpu.ru
Рассмотрены задачи сбора технологической информации промышленного предприятия и ее передачи на уровень управления и принятия решений. Проанализированы проблемы использования стандарта ОРСдля решения указанных задач. Предложена оригинальная архитектура и функции разработанного программного пакета для сбора первичных технологических данных на основе принципов SOA, приведены результаты исследования эффективности предложенных решений по сравнению с аналогами.
Ключевые слова:
Интеграция производственных данных, стандарт OPC, веб-сервис.
Key words:
Manufacturing data integration, OPC standard, Web-service.
Актуальной задачей автоматизации промышленных предприятий является создание единого информационного пространства для объективной и оперативной оценки текущей ситуации на производстве, быстрого принятия оптимальных управленческих решений, ликвидации информационных и организационных барьеров между управленческим и технологическим уровнями. В свою очередь, организация единого информационного пространства невозможна без создания надежного механизма сбора первичной технологической информации и ее передачи на вышестоящие уровни управления и принятия решений. Задача сбора детальных технологических данных и оперативного управления производством на их основе традиционно решается с применением разного рода автоматизированных систем управления технологическими процессами (АСУТП).
Это не означает, что потребность в первичных технологических данных испытывают только специалисты, находящиеся на уровне оперативного управления. Как сами детальные данные, так производные от них (например, рассчитанные на их
основе агрегатные показатели), являются необходимой и существенной частью информационного обеспечения процессов управления производством как на среднем уровне (по модели С1М), так и на уровне стратегического управления предприятием. Автоматизация процессов управления на этих уровнях ведется при помощи систем классов МЕ^, ЕАМ, ERP, В1 и других. Таким образом, построение единого информационного пространства промышленного предприятия предполагает, в том числе, организацию оперативного и надежного доступа к технологическим данным, контролируемым при помощи АСУТП, со стороны внешних информационных систем.
Решение этой, интеграционной по сути, задачи сопряжено с целым рядом как технических, так и организационных проблем, анализу которых, а также поиску возможных вариантов их преодоления посвящена эта работа.
Нетривиальность задачи вертикальной интеграции по данным информационных систем промышленного предприятия и АСУТП обусловлена следующими факторами: