Радиолокация и радионавигация
УДК 621.396.96 Научная статья
https://doi.org/10.32603/1993-8985-2023-26-2-52-64
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
И. С. Сердюков1121, В. И. Веремьев1, Нгуен Ван Туан2
1 Санкт-Петербургский государственный электротехнический университет "ЛЭТИ"
им. В. И. Ульянова (Ленина), Санкт-Петербург, Россия
2 Вьетнамский государственный технический университет им. Ле Куй Дона, Ханой, Вьетнам
Аннотация
Введение. В настоящее время развитие систем мониторинга и сбора данных ведет к тому, что поток генерируемой информации непрерывно растет. Повышение частоты дискретизации аналого-цифрового преобразователя, увеличение быстродействия систем первичной обработки, приема и передачи информации и другие факторы приводят к тому, что система функционирует, приближаясь к пределу пропускной способности интерфейсов передачи данных. В некоторых приложениях такой поток является избыточным и может быть оптимизирован за счет применения различных алгоритмов первичной обработки информации. Однако в ряде приложений сокращение потока данных является невозможным, так как обработка информации происходит значительно позже ее получения. Поэтому является актуальной разработка методологии программного обеспечения (ПО) управления и сбора данных в системе автоматического мониторинга морской поверхности гидрологическим радиолокатором.
Цель работы. Синтез методологии и разработка ПО управления информационной системой радиолокационного мониторинга морской поверхности.
Материалы и методы. Системный подход, архитектурное и алгоритмическое проектирование ПО, методы управления качеством ПО, системный анализ, фреймворк Qt, язык программирования С++. Результаты. Получена рабочая методология проектирования ПО управления информационно-измерительными системами с большим объемом генерируемой информации. Эффективность методологии и качество разработанного ПО подтверждены контрольными испытаниями. Стабильность и надежность системы протестирована долгосрочными автономными испытаниями в течение 3 месяцев. Фактические информационные потери в системе составили менее 0.002 %, что не превысило критический уровень в 0.5 %, определенный в техническом задании.
Заключение. Разработанная методология позволяет эффективно решать задачи проектирования ПО управления информационно-измерительными системами с большим объемом генерируемой информации. Используемые подходы построения многопоточной архитектуры ПО с асинхронным управлением потоками данных показывают высокую эффективность при решении поставленной задачи.
Ключевые слова: информационно-измерительные системы, радиолокация, программное обеспечение контроля и управления
Для цитирования: Сердюков И. С., Веремьев В. И., Нгуен Ван Туан. Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором // Изв. вузов России. Радиоэлектроника. 2023. Т. 26, № 2. С. 52-64. doi: 10.32603/1993-8985-2023-26-2-52-64
Конфликт интересов. Авторы заявляют об отсутствии конфликта интересов.
Источник финансирования. Исследование выполнено за счет гранта Российского научного фонда № 21-79-10375.
Статья поступила в редакцию 20.01.2023; принята к публикации после рецензирования 10.03.2023; опубликована онлайн 28.04.2023
52
© Сердюков И. С., Веремьев В. И., Нгуен Ван Туан, 2023
Radar and Navigation
Original article
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
Ivan S. Serdiukov ш, Vladimir I. Veremyev 1, Nguyen Van Tuan 2
1 Saint Petersburg Electrotechnical University, St Petersburg, Russia 2 Le Quy Don Technical University, Hanoi, Vietnam H [email protected]
Abstract
Introduction. The current data monitoring and collection systems produce a growing amount of generated information. Such factors, as the increasing sampling rate of ADCs and the increasing speed of systems for primary processing, receiving, and transmitting information, etc., make the systems operate almost at the bandwidth limit of data transmission interfaces. In some applications, such a flow is redundant and can be optimized through the use of various algorithms for the primary processing of information. However, in some applications, reducing the data flow is impossible, since the received information is processed with a delay. Therefore, the development of a software methodology for controlling and collecting data in the system of automatic monitoring of the sea surface by a hydro-logical radiolocation system seems a relevant research task.
Aim. To synthesize a methodology and to develop software for controlling the information system of radar monitoring of the sea surface.
Materials and methods. System approach, software architectural and algorithmic design, software quality management methods, system analysis, Qt framework, C++ programming language.
Results. A working methodology for designing software for controlling information and measurement technologies with a large amount of generated data was obtained. The effectiveness of the methodology and software quality were confirmed by control tests. A 3-month autonomous testing of the stability and reliability of the system was carried out. Detection of data loss in the system comprised less than 0.002 %, thus not exceeding the specified critical level of 0.5 %.
Conclusion. The developed methodology can be used in designing software for controlling information and measuring systems generating a large amount of data. The approaches used to build a multithread software architecture with asynchronous data flow control has shown their high efficiency.
Keywords: information and measuring systems, radar, software, complex system control
For citation: Serdiukov I. S., Veremyev V I., Nguyen Van Tuan. Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System. Journal of the Russian Universities. Radioelectronics. 2023, vol. 26, no. 2, pp. 52-64. doi: 10.32603/1993-8985-2023-26-2-52-64
Conflict of interest. The authors declare no conflicts of interest.
Acknowledgements. The study was supported by a grant from the Russian Science Foundation No. 21-79-10375. Submitted 20.01.2023; accepted 10.03.2023; published online 28.04.2023
Введение. Радиолокационные методы и средства мониторинга морской поверхности являются очень важным инструментарием, который способен значительно повышать безопасность судоходства в сложных для навигации акваториях. В его задачи входит оценка волнения, ветров, течений, а также рельефа дна в условиях мелководья.
Основой радиолокационного мониторинга является использование радиосигналов, отраженных от морской поверхности. Такие сигналы несут в себе информацию о распределении волн на поверхности воды, их интенсивности, а также направлении и скорости распространения. Связь между распределением морских волн на поверхности и гидродинамическими
53
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
процессами позволяет извлекать из полученных радиолокационных изображений полезную информацию, критически важную для обеспечения безопасности судоходства.
На данный момент такие инструменты используются в большей степени в исследовательских целях [1-9], так как их пока еще не слишком широкое распространение в некоторой степени затрудняет разработку и синтез алгоритмов получения гидрографической информации. В связи с этим очень важно сделать такие радары максимально доступными для пользователя, т. е. дешевыми и простыми в эксплуатации.
В настоящее время наиболее популярным решением является использование морских радаров X-диапазона. К преимуществам таких радаров можно отнести их простоту, непритязательность в обслуживании и относительную дешевизну. Основным недостатком данного решения, как правило, является некогерентность большинства таких радаров. Применение некогерентных сигналов дает возможность работы лишь с яр-костным радиолокационным изображением, которое несет в себе информацию об интенсивности отраженных сигналов и полностью лишено информации о доплеровском смещении несущей частоты сигнала, что существенно затрудняет процесс анализа морской поверхности.
К сожалению, ввиду специфики отрасли, морские когерентные радары не соответствуют критерию доступности или же оперируют закрытыми протоколами передачи информации, охраняемыми коммерческой тайной, что делает их фактически бесполезными в рассматриваемой области применения. Однако учеными и инженерами НИИ "Прогноз" СПбГЭТУ "ЛЭТИ" был разработан ряд технических решений [1, 2, 4, 8, 9], которые позволяют модернизировать недорогие некогерентные радары за счет их "искусственной" когерентизации. Решение основано на применении принципа квазикогерентности и реализовано при помощи программируемой логической интегральной схемы (ПЛИС).
Печатная плата, содержащая аналого-цифровой преобразователь (АЦП), кристалл ПЛИС, интерфейс Ethernet, а также интерфейсы, необходимые для управления радаром и контроля его состояния, помещается в радар. Для работы с модернизированным радаром
54
требуется лишь персональный компьютер (ПК) и совместимое программное обеспечение (ПО), позволяющее осуществлять управление.
Методология разработки ПО, применяемая в рамках проекта. Суть применяемой методологии является в какой-то мере отражением принципов, изложенных в [10, 11], и применения цикла Деминга PDCA (англ. Plan-Do-СЬеск-АС; - планирование-действие-проверка-корректировка), подробно описанного в [12] и являющегося, как правило, основой построения системы управления качеством.
Описываемый подход включает в себя пять основных этапов и подразумевает наличие гибких обратных связей на каждом из этапов разработки.
Подготовительный этап - определение основных задач, решаемых проектируемой информационно-измерительной системой.
На данном этапе формируется общее понимание проекта, его целей и задач, основных объектов, решающих поставленные задачи, и основных сведений о системе.
Первый этап - определение архитектуры проекта, состава объектов, их роли и связей между ними.
В рамках данного этапа определяется подробный состав проекта, всех входящих в него объектов и связей между ними, а также основных информационных потоков, осуществляющих обмен данными между всеми узлами системы.
Второй этап - определение критериев, предъявляемых к программно-аппаратному комплексу управления и сбора данных.
На основании информации о системе, полученной на предыдущих этапах, на данной стадии проекта определяются все критерии, предъявляемые непосредственно к комплексу управления и сбора данных. Формируются требования к ПО, определяются все ограничения, в рамках которых ведется проектирование, а также выбираются качественные и количественные метрики, позволяющие определить соответствие разрабатываемого комплекса предъявляемым требованиям.
Третий этап - формирование архитектуры ПО. Данный этап является фактически начальным этапом проектирования ПО и включает в себя четыре основных шага:
1. Определение основных узлов ПО согласно требуемому функционалу.
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса
управления гидрологическим радиолокатором Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
2. Определение связей и информационных потоков между узлами.
3. Разделение узлов на объекты, обладающие узким функционалом.
4. Распределение информационных потоков между объектами с обеспечением асинхронной работы отдельных программных модулей.
В зависимости от результатов проектирования архитектуры ПО, выполняемого на третьем этапе, может также происходить корректировка критериев или архитектуры проекта, если разработчику становится ясно, что какие-то из критериев являются взаимоисключающими или же требования не могут быть выполнены в рамках архитектуры проекта, определенной на первом этапе.
На данном этапе также закладываются архитектурные особенности ПО, позволяющие работать с большими потоками информации, что является основополагающим критерием согласно целям данной статьи. В них входит:
1. Применение многопоточной архитектуры ПО и системы независимой асинхронной работы отдельных программных модулей.
2. Определение наивысшего приоритета выполнения потоков приема оцифрованных данных и их сохранения на жесткий диск.
3. Формирование системы синхронизации модулей ПО на основании информации, получаемой в потоке приема оцифрованных данных, а также в потоках контроля состояния аппаратной части системы.
Таким образом, формируется независимое ядро, генерирующее данные, на основании которых работает весь программный комплекс. В свою очередь, органы управления, доступные оператору ПК, являются своего рода надстройкой над системой и осуществляют синхронизированный контроль над программной и аппаратной частями информационно-измерительного комплекса.
Четвертый этап - написание программного кода в соответствии с архитектурой:
1. Создание отельных программных модулей, ответственных за ограниченную часть функционала ПО.
2. Тестирование и отладка модулей на соответствие поставленным критериям и выполняемым задачам.
3. Поэтапное включение модулей в состав ПО, тестирование и отладка их совместной работы.
4. Финальные испытания ПО в составе комплекса на соответствие установленным критериям и требованиям.
В рамках четвертого этапа также может выполняться корректировка предыдущих трех, так как на данном этапе определяются фактические возможности ПО, выбранного языка программирования и возможностей применяемых моделей ПК. Так или иначе, в результате любого из этапов тестирования может оказаться, что ряд требований нереализуем в рамках применяемой архитектуры проекта, что, в свою очередь, должно привести либо к изменениям требований, либо к ее модернизации.
Как видно, описанная методология предполагает в первую очередь иерархическое разбиение глобальной задачи на определенные этапы с целью упрощения представления и глубокого анализа всех элементов проектируемой системы. Данный подход обладает также наличием обратных связей между различными этапами построения системы, что, в свою очередь, обеспечивает наибольшую гибкость решения поставленных задач.
Выходом данной методологии является продукт, построенный в гармонии между заказчиком и разработчиком (или же разработчиками программной и аппаратной частей) по принципу получения адекватного компромисса между предъявляемыми требованиями и фактическими реализуемыми техническими возможностями.
С другой стороны, применение в данном процессе обратных связей не является обязательным. Их исключение снизит итоговую гибкость системы проектирования, формируя таким образом жесткую иерархическую связь между этапами, требующую абсолютного выполнения критериев. Продукт, полученный при таком подходе, обладает в ряде случаев определенными преимуществами за счет невозможности снижения требований к отдельным узлам, что, однако, зачастую приводит к повышению его стоимости и сроков разработки.
В рамках рассматриваемого проекта была использована методология с применением гибких обратных связей с целью оптимизации общей архитектуры и повышения надежности системы.
Требования, предъявляемые к ПО управления радаром контроля морской по-
55
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
верхности. В рамках данной статьи рассматриваются особенности разработки ПО управления радаром и сбора радиолокационных данных на жесткий диск компьютера.
Основными задачами ПО управления радаром являются: управление приемником, передатчиком и двигателем антенны; контроль основных параметров радара; визуализация данных в виде графиков сигналов и индикатора кругового обзора (ИКО); работа радара по заданному расписанию с заданными параметрами и сохранение радиолокационных сигналов на жесткий диск компьютера.
Большинство систем радиолокационного исследования морской поверхности реализуются в качестве станций сбора экспериментальных данных для последующей их обработки. Такие станции бывают стационарными, временными и мобильными. Разнообразные условия эксплуатации радаров определяют ряд требований к ПО. Такие требования можно разделить на три основные категории.
Первая категория требований основывается на характеристиках применяемого оборудования, используемых протоколах связи и управления; частоты дискретизации сигнала и скорости сканирования пространства. Основным критерием в данной категории выступает обеспечение быстродействия ПО с точки зрения приема, отображения, обработки и/или сохранения радиолокационных данных на жесткий диск.
Ко второй категории следует отнести требования, предъявляемые к ПО с точки зрения пользовательского опыта. Интерфейс программы должен располагать всеми органами контроля и управления, необходимыми для полноценной эксплуатации радара в различных условиях. Важной частью пользовательского интерфейса также является исчерпывающая графическая составляющая с точки зрения контроля состояния радара и окружающей радиолокационной и гидродинамической обстановки.
Третья категория представляется как совокупность требований, предъявляемых к стабильности и безотказности ПО, защите от возможных пользовательских ошибок, а также автономности его работы. В рамках текущей задачи модернизированный радар представляет собой совокупность асинхронных модулей, и
56
важной частью ПО является синхронизация их работы. В таком представлении радар как конечное устройство располагает большим числом внутренних состояний, для каждого из которых должен быть либо разработан особый сценарий, либо же управление должно быть реализовано независимо, что, в свою очередь, предполагает участие оператора в функционировании радара. Данная проблема частично решается надстройкой схемы работы со сценариями над прямым управлением полным функционалом радара, которая в рамках рассматриваемого проекта была реализована внутри подпрограммы управления радаром по расписанию.
Следует отметить, что условное деление требований на категории было выбрано исключительно для удобства построения архитектуры проекта, а сами требования являются в большей степени равнозначными и ни в коем случае не взаимоисключающими.
Архитектура проекта (физический уровень). В основе проекта лежит использование готового морского радара, модернизированного при помощи платы когерентизации. На рис. 1 представлена схема радиолокационного комплекса контроля морской поверхности.
Используемый в проекте радар GEM-Е1есй"оп^ представляет собой морской навигационный радиолокатор кругового обзора Х-диа-пазона, передающая часть которого реализована с использованием магнетрона, а приемная часть -цифрового супергетеродинного приемника.
Как видно из представленной диаграммы, модернизация радара заключается в добавлении непосредственно в корпус радиолокатора дополнительной платы когерентизации, Е1Ьегпе1> коммутатора и СВЧ-усилителя промежуточной частоты.
Плата когерентизации является программно-аппаратным комплексом, реализованным на ПЛИС, в функции которого входит управление модулятором передатчика радара, оцифровкой и гетеродинированием передаваемого и принимаемого сигналов, контроль положения антенны, а также передача оцифрованных сигналов на ПК контроля/управления и сбора данных.
Преимуществом применяемого подхода является минимальное вмешательство в схемотехнику оригинального радара, что обеспечи-
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса
управления гидрологическим радиолокатором Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
Рис. 1. Архитектура проекта Fig. 1. Project Architecture
вает высокую стабильность и надежность радиолокационной системы.
БШетй-коммутатор, установленный в корпус радара, позволяет осуществлять управление радаром и платой когерентизации посредством применения одной восьмижильной ШЬ-БШете! линии передачи данных по протоколу UDP. Основными особенностями данной связки являются ограничение потока данных в 125 Мбайт/с, необходимость контроля целостности данных и определение правильной последовательности принимаемой информации. Для этого в протоколе обмена был реализован двухбайтный счетчик пакетов, позволяющий отслеживать порядок приема сигналов.
В качестве критериев соответствия ПО предъявляемым требованиям были выбраны следующие показатели: качественное определение соответствия по принципу исчерпывающей реализации требований на основании контрольных испытаний и непосредственного пользовательского опыта; количественное определение фактических потерь при приеме оцифрованных сигналов методом расчета пропущенных сигналов, заложенным в протоколе обмена данными.
Архитектура ПО. Архитектура проекта является ядром ПО. Определяя структуру, основные объекты и функциональные связи между ними, она содержит в себе также и философию проекта, взятую разработчиком за основу.
Задачей разрабатываемого ПО является обеспечение модернизированных морских ра-
даров эффективным инструментом контроля и управления. Так как область применения в настоящее время находится в фазе эффективного развития, в требования к проекту изначально была включена возможность "бесшовного" изменения конфигурации оборудования, т. е. смены типа радара/версии прошивки ПЛИС при ее модернизации. Для этого была выбрана независимая модульная архитектура, позволяющая менять критические узлы ПО без необходимости внесения больших изменений в код при добавлении новых конфигураций.
Для оптимизации эффективности использования ресурсов ПК и сокращения времени разработки проекта в качестве основы проекта была выбрана связка OS ШипШ и фреймворк Qt с использованием языка программирования С++.
На рис. 2 представлена основная диаграмма архитектуры проекта, в которую в упрощенном виде включены модули, позволяющие осуществлять функционал радиолокационного комплекса в соответствии с поставленными задачами. Блоки, входящие в состав ПО, реализованы как независимые модули, функционирующие в выделенном потоке, что обеспечивает их стабильную асинхронную работу. Синхронизация потоков обеспечивается системой мьютексов, защищающей внутренние объекты в памяти компьютера от многократного параллельного доступа. Подробное описание применяемых подходов многопоточного программирования можно найти в [13-18].
57
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
Рис. 2. Упрощённая архитектура ПО Fig. 2. Simplified Software Architecture
Основной поток пользовательского интерфейса и управления графической оболочкой обеспечивает связь между всеми компонентами программы, обработку состояния элементов пользовательского интерфейса, сигнал-слотовые связи для реализации потоков данных внутри ПО и т. д.
На рис. 3 представлена расширенная диа-
грамма проекта, в которой раскрыт узел управления радаром и платой когерентизации, контроля их состояния, приема оцифрованных сигналов с последующим сохранением данных на жесткий диск ПК.
Основным и наиболее критическим элементом программного комплекса следует считать
Рис. 3. Архитектура модулей управления и контроля состояния радара и платы когерентизации Fig. 3. Architecture of the Radar and Coherence Board Control and Indication Software Modules
58 Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса
управления гидрологическим радиолокатором Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
поток приема оцифрованных данных и управления состоянием платы когерентизации, так как на него ложится наибольшая часть фактической нагрузки. Данный поток реализует UDP-интерфейс информационного обмена с платой когерентизации, разбирает принятые пакеты с проверкой их целостности, сообщает графическому модулю управления платой ко-герентизации о текущем состоянии соединения и показания датчика угла поворота антенны. Принятые по заранее известному протоколу пакеты данных разбираются на сигналы, которые затем передаются в двух направлениях: поток сохранения оцифрованных данных на жесткий диск компьютера и графический модуль программы с целью последующей их визуализации. Основным требованием в рамках рассматриваемого проекта является обеспечение уровня потерь не более, чем 0.5 % от общего информационного потока.
За счет применения АЦП с частотой дискретизации 80 МГц, частотой сканирования от 1 до 4 кГц и требуемой дальностью сканирования не менее 3.5 км средний поток оцифрованных данных составляет от 8 до 32 Мбайт/с. Тестирование данного модуля в операционной системе (ОС) Windows и ОС семейства Linux показало несостоятельность первой с точки зрения эффективности работы с такими потоками данных, передаваемых по протоколу UDP, - от 10 до 20 % информационного потока по различным причинам не доходило до адресата. Этот критерий, являясь наиболее критическим для системы сбора информации, определил выбор операционной системы проекта в пользу ОС семейства Linux.
Графический модуль управления платой когерентизации, являясь связующим компонентом потока приема оцифрованных данных и основной программой, обладает также элементами обратной связи, обеспечивающей контроль состояния радара и правильную асинхронную работу всех зависимых узлов. Данный модуль обладает также возможностью секторного отключения излучателя для обеспечения электромагнитной совместимости при установке радара на корабле или в составе сложного комплекса. Системы индикации контроля состояния платы когерентизации и состояния радара обеспечивают отображение состояния
подключения на интерфейсе пользователя, а также в файле регистрации состояния.
Не менее важными компонентами ПО являются потоки управления радаром и контроля состояния радара. Помимо очевидного из названия функционала, данные модули также обеспечивают синхронизацию работы всей системы, не позволяя, например, приводить в действие модулятор магнетрона до того, как он не выйдет в рабочий температурный диапазон.
Описанная часть ПО уже являет собой самодостаточный инструмент управления радаром и может применяться отдельно, так как покрывает все технические требования с точки зрения сбора радиолокационной информации, скорости приема и сохранения данных, стабильности и надежности. Однако с точки зрения получения экспериментальных данных перечисленные критерии, хоть и являются необходимыми для разрабатываемого типа ПО, не являются достаточными.
На рис. 4 представлена расширенная диаграмма проекта, в которой раскрыт узел графического модуля управления визуализацией, от-рисовки сигналов, ИКО и индикатора калибровки промежуточной частоты (ПЧ), а также модуль управления расписанием.
Часть программы, ответственная за визуализацию данных, является асинхронной модульной структурой, в которой каждая отдельная часть работает независимо и может включаться/выключаться пользователем по мере необходимости. В ее основе лежит поток обработки графических данных, который, принимая "сырые" оцифрованные сигналы, преобразует их к виду, необходимому для обработки в последующих модулях и непосредственной отри-совки. Такой подход упрощает работу с данными и снижает вычислительную нагрузку, что также снижает требования к ПК контроля/управления и сбора данных.
Графический модуль включает в себя отображение принимаемых сигналов, ИКО и индикатор калибровки промежуточной частоты радиолокатора. Перечисленные индикаторы позволяют оператору комплекса осуществлять калибровку времени задержки АЦП на запись сигнала, нулевого направления угла поворота антенны, промежуточной частоты на выходе смесителя приемника и т. п.
59
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
Рис. 4. Архитектура модулей работы по расписанию и визуализации данных Fig. 4. Architecture of the Schedule and Data Visualization Software Modules
Немаловажной частью программного комплекса является модуль работы по расписанию, функционал которого позволяет оператору создавать сценарий работы радиолокационной станции. Данный модуль является очень важным для комплексов, работающих стационарно, на удаленных объектах. Объем генерируемых радаром данных за один день непрерывной работы составляет в среднем 1.3 ТБ, что не позволяет вести постоянную запись сигналов при использовании современных доступных на рынке дисковых накопителей. Использование сценариев позволяет запускать радар по расписанию для сбора данных в ограниченные промежутки времени, что в целом достаточно для анализа динамики морской поверхности.
Работа радара по расписанию обеспечивается также отдельным потоком контроля расписания, имеющего обратную связь с радаром, что предотвращает запуск записи сигнала или передатчика на излучение в те моменты, когда состояние радара не позволяет это сделать.
Также программный комплекс оснащен системным регистратором процессов и состояния радара/ПО, который позволяет своевременно
60
отслеживать неисправности, возникающие в процессе работы радиолокатора, или ошибки, порождаемые ПО.
Результаты создания и испытаний ПО в составе радиолокационного комплекса. Рассматриваемая архитектура легла в основу программного комплекса управления радарами, применяемыми для мониторинга морской поверхности. Испытания радиолокационного комплекса поэтапно проходили в различных условиях: стационарное расположение радара в прибрежной зоне с работой радара по расписанию; расположение радара на корабле с целью изучения морской поверхности в условиях открытого океана.
Испытания показали высокую эффективность разработанной архитектуры с точки зрения сохранности радиолокационных данных. Фактические потери в зависимости от характеристик ПК составили не более 0.002 % данных, что является неизбежной и в то же время несущественной долей в рамках решаемой задачи. Следует отметить, что испытания проводились с использованием ПК с центральным процессором Intel Core i7 не ниже 6-го поколения.
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса
управления гидрологическим радиолокатором Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
В результате испытаний также была выявлена прямая зависимость между мощностью процессора и потерей данных. В свою очередь, показатель для того же семейства ЦП 11-го поколения составил не более 0.0001 %. Длительность испытаний составляла от двух недель непрерывной работы до трех месяцев работы по расписанию.
Заключение. В представленной работе был решен ряд задач, связанных с разработкой ПО управления и сбора данных для радиолокационного комплекса мониторинга морской поверхности. В первую очередь, исходя из архитектуры проекта, были определены основные критерии, отражающие критические узлы и формирующие ограничения и требования, предъявляемые к ПО. Как показано ранее, в числе этих требований было использование протокола UDP/IP по 1 Гб БШегпе^линии, особенностями которого являются ограничение потока данных в 125 Мбайт/с, необходимость контроля целостности данных и определение их правильной последовательности. Достаточно серьезные требования были предъявлены также к стабильности, безотказности и автономности
ПО, ввиду необходимости стационарного использования системы без участия оператора. Ряд требований был предъявлен к системе индикации и отображения информации.
Применяемая в рамках решения поставленных задач методология позволила синтезировать архитектуру ПО, в полной мере удовлетворяющего предъявляемым требованиям, а также некоторым образом оптимизировать архитектуру проекта.
В ходе контрольных испытаний было выявлено полное соответствие спроектированной системы изначальным требованиям, заложенным в проект. Показатель потерь оцифрованных сигналов составил менее 0.002 %, что является более чем удовлетворительным результатом в рамках обозначенных требований к потерям - не более 0.5 %.
Таким образом, представленная в данной статье методология разработки ПО управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации демонстрирует высокую эффективность в рамках решения поставленной задачи.
Список литературы
1. Determination of the near surface current field from Doppler shift of the coherent radar backscatter under grazing incidence / H. Hatten, J. Seemann, C. M. Senet, A. Bezuglov, V Veremjev, F. Ziemer // IGARSS 2000. IEEE 2000 Intern. Geoscience and Remote Sensing Symp. Taking the Pulse of the Planet: The Role of Remote Sensing in Managing the Environment. Honolulu, USA, 24-28 July 2000. IEEE, 2000. Vol. 2. P. 899-901. doi: 10.1109/IGARSS.2000.861738
2. Carrasco R., Streber M., Horstmann J. A simple method for retrieving significant wave height from Dopplerized X-band radar // Ocean Sci. 2017. Vol 13. P. 95-103.
3. Sea-surface current measurements with an X band radar / N. Braun, A. Bezuglov, G. Schymura, F. Ziemer // Proc. of the 2003 IEEE Intern. Geoscience and Remote Sensing Symp. Toulouse, France, 21-25 July 2003. IEEE, 2003. Vol. 2. P. 963-965. doi: 10.1109/ IGARSS.2003.1293978
4. Sea-Surface Current Features Observed by Doppler Radar / N. Braun, F. Ziemer, A. Bezuglov, M. Cysewski, G. Schymura // IEEE Transactions on Geoscience and Remote Sensing. 2008. Vol. 46, № 4. P. 1125-1133. doi: 10.1109/TGRS.2007.910221
5. Орандаренко Е. Д. Радиолокационные методы измерения гидрографических параметров моря
// Материалы Междунар. конф. "Системы радиолокационного мониторинга/ Radar Monitoring Systems-2017" (RMS'2017). Ханой, Вьетнам, 21-23 нояб. 2017. С. 42-56.
6. System for adjustment of angle coordinates for sea surface surveillance radar / E. Vorobev, A. Be-zuglov, V. Veremyev, V. Kutuzov // 2017 Signal Processing Symp. (SPSympo). Jachranka, Poland, 12-14 Sept. 2017. IEEE, 2017. P. 1-5. doi: 10.1109/ SPS.2017.8053652
7. Orandarenko E. D., Veremyev V. I. Radar methods of measurement bathymetry // 2018 IEEE Conf. of Russ. Young Researchers in Electrical and Electronic Engineering (EIConRus). Moscow and St Petersburg, Russia, 29 Jan. 2018 - 01 Feb. 2018. IEEE, 2018. P. 1129-1131. doi: 10.1109/EIConRus.2018.8317289
8. Mikhailov V. N., Khachaturian A. B. Estimation of sea-wind parameters using a Doppler navigation system // 2018 IEEE Conf. of Russ. Young Researchers in Electrical and Electronic Engineering (EIConRus). Moscow and St Petersburg, Russia, 29 Jan. 2018 -01 Feb. 2018. IEEE, 2018. P. 83-85. doi: 10.1109/ EIConRus.2018.8317035
9. Kulikova D. Yu., Gorbunov I. G. Analysis of the Sea Surface Parameters by Doppler X-Band Radar in the Coastal Zone of the Black Sea // 2019 IEEE Conf.
Методология разработки программного обеспечения управления и сбора данных для систем автономного 61 мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
of Russ. Young Researchers in Electrical and Electronic Engineering (EIConRus), St Petersburg, Russia, 28-31 Jan. 2019. IEEE, 2019. P. 1179-1182. doi: 10.1109/EIConRus.2019.8657257
10. 12207-2017 - ISO/IEC/IEEE Intern. Standard -Systems and software engineering - Software life cycle processes. 15 Nov. 2017. doi: 10.1109/IEEESTD. 2017.8100771
11. Research on Software Quality Assurance Based on Software Quality Standards and Technology Management / P. Shen, X. Ding, W. Ren, C. Yang // 2018 19th IEEE/ACIS Intern. Conf. on Software Engineering, Artificial Intelligence, Net-working and Parallel/Distributed Computing (SNPD). Busan, Korea (South), 27-29 June 2018. IEEE, 2018. P. 385-390. doi: 10.1109/snpd.2018.8441142
12. 90003-2018 - ISO/IEC/IEEE Intern. Standard -Software engineering - Guidelines for the application of ISO 9001:2015 to computer software. 30 Nov. 2018. doi: 10.1109/IEEESTD.2018.8559961
13. Akkary H., Ramly S., Serhan K. Synchronization-Free Multithreading Architecture and Application Programming Interface // 17th IEEE Mediterranean Electro-technical Conf. Beirut, Lebanon, 13-16 Apr. 2014. IEEE, 2014. P. 472-478. doi: 10.1109/MELC0N.2014.6820580
14. Basile C., Kalbarczyk Z., Iyer R. K. Active Replication of Multithreaded Applications // IEEE
Transactions on Parallel and Distributed Systems. 2006. Vol. 17, № 5. P. 448-465. doi: 10.1109/ TPDS.2006.56
15. Advanced Thread Synchronization for Multithreaded MPI Implementations / Hoang-Vu Dang, Sangmin Seo, Abdelhalim Amer, Pavan Balaji // 17th IEEE/ACM Intern. Symp. on Cluster, Cloud and Grid Computing. Madrid, Spain, 14-17 May 2017. IEEE, 2017. P. 314-324. doi: 10.1109/CCGRID.2017.65
16. Hutchins D., Ballman A., Sutherland D. C/C++ Thread Safety Analysis // 14th IEEE Intern. Working Conf. on Source Code Analysis and Manipulation. Victoria, Canada, 28-29 Sept. 2014. IEEE, 2014. P. 41-46. doi: 10.1109/SCAM.2014.34
17. A Simple Multithreaded C++ Framework for High-Performance Data Acquisition Systems / R. Inglés, P. Perek, M. Orlikowski, A. Napieralski // Proc. of the 22nd Intern. Conf. "Mixed Design of Integrated Circuits and Systems", Toru, Poland, 25-27 June 2015. IEEE, 2015. P. 153-157. doi: 10.1109/MIXDES.2015.7208501
18. Maximally Permissive Deadlock Avoidance for Multithreaded Computer Programs / Y Wang, H. Liao, A. Nazeem, S. Reveliotis, T. Kelly, S. Mahlke, S. Lafortune // 5th Annual IEEE Conf. on Automation Science and Engineering. Bangalore, India, 22-25 Aug. 2009. P. 37-41. doi: 10.1109/C0ASE.2009.5234118
Информация об авторах
Сердюков Иван Сергеевич - инженер по специальности "Радиоэлектронные системы и комплексы" (2020), аспирант кафедры радиотехнических систем Санкт-Петербургского государственного электротехнического университета "ЛЭТИ" им. В. И. Ульянова (Ленина). Автор двух научных публикаций. Сфера научных интересов - радиолокация; информационно-измерительные системы.
Адрес: Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В. И. Ульянова (Ленина), ул. Профессора Попова, д. 5, Санкт-Петербург, 197022, Россия E-mail: [email protected] https://orcid.org/0000-0002-6637-5994
Веремьев Владимир Иванович - кандидат технических наук (2000), профессор кафедры радиотехнических систем Санкт-Петербургского государственного электротехнического университета "ЛЭТИ" им. В. И. Ульянова (Ленина), директор НИИ "Прогноз". Автор более 100 научных работ. Сфера научных интересов - комплексный экологический мониторинг; комплексные вопросы построения радиолокационных систем; многодиапазонные многопозиционные радиолокационные комплексы для мониторинга воздушного пространства и морской поверхности.
Адрес: Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В. И. Ульянова
(Ленина), ул. Профессора Попова, д. 5, Санкт-Петербург, 197022, Россия
E-mail: [email protected]
https ://orcid.org/0000-0001 -8167-6616
Нгуен Ван Туан - специалист по направлению "Радиоэлектронные системы и комплексы" (2021), аспирант Вьетнамского государственного технического университета им. Ле Куй Дона (Ханой, Вьетнам). Автор двух научных публикаций. Сфера научных интересов - радиолокация; полуактивная радиолокация. Адрес: Вьетнамский государственный технический университет им. Ле Куй Дона, ул. Хоанг Куок Вьет, 236, район Бак Ты Лием, Ханой, Вьетнам E-mail: [email protected] https://orcid.org/0000-0002-5652-6111
References
1. Hatten H., Seemann J., Senet C. M., Bezuglov A., face Current Field from Doppler Shift of the Coherent Veremjev V, Ziemer F. Determination of the Near Sur- Radar Backscatter under Grazing Incidence. IGARSS
62 Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса
управления гидрологическим радиолокатором Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
2000. IEEE 2000 Intern. Geoscience and Remote Sensing Symp. Taking the Pulse of the Planet: The Role of Remote Sensing in Managing the Environment. Honolulu, USA, 24-28 July 2000. IEEE, 2000, vol. 2, pp. 899-901. doi: 10.1109/IGARSS.2000.861738
2. Carrasco R., Streber M., Horstmann J. A Simple Method for Retrieving Significant Wave Height from Dopplerized X-Band Radar. Ocean Sci. 2017, vol. 13, pp. 95-103.
3. Braun N., Bezuglov A., Schymura G., Ziemer F. Sea-Surface Current Measurements with an X Band Radar. Proc. of the 2003 IEEE Intern. Geoscience and Remote Sensing Symp. Toulouse, France, 21-25 July 2003. IEEE, 2003, vol. 2, pp. 963-965. doi: 10.1109/ IGARSS.2003.1293978
4. Braun N., Ziemer F., Bezuglov A., Cysewski M., Schymura G. Sea-Surface Current Features Observed by Doppler Radar. IEEE Transactions on Geoscience and Remote Sensing. 2008, vol. 46, no. 4, pp. 1125-1133. doi: 10.1109/TGRS.2007.910221
5. Orandarenko E. D. Radar Methods for Measuring the Hydrographic Parameters of the Sea. Intern. Conf. "Radar Monitoring Systems-2017 (RMS'2017)". Hanoi, Vietnam, 21-23 November 2017, pp. 42-56.
6. Vorobev E., Bezuglov A., Veremyev V., Kutuzov V System for Adjustment of Angle Coordinates for Sea Surface Surveillance Radar. 2017 Signal Processing Symp. (SPSympo). Jachranka, Poland, 12-14 September 2017. IEEE, 2017, pp. 1-5. doi: 10.1109/SPS.2017.8053652
7. Orandarenko E. D., Veremyev V. I. Radar Methods of Measurement Bathymetry. 2018 IEEE Conf. of Russ. Young Researchers in Electrical and Electronic Engineering (EIConRus). Moscow and St Petersburg, Russia, 29 January 2018 - 01 February 2018. IEEE, 2018, pp. 1129-1131. doi: 10.1109/EIConRus.2018.8317289
8. Mikhailov V. N., Khachaturian A. B. Estimation of Sea-Wind Parameters Using a Doppler Navigation System. 2018 IEEE Conf. of Russ. Young Researchers in Electrical and Electronic Engineering (EIConRus). Moscow and St Petersburg, Russia, January 2018 -01 February 2018. IEEE, 2018, pp. 83-85. doi: 10.1109/EIConRus.2018.8317035
9. Kulikova D. Yu., Gorbunov I. G. Analysis of the Sea Surface Parameters by Doppler X-Band Radar in the Coastal Zone of the Black Sea. 2019 IEEE Conf. of Russ. Young Researchers in Electrical and Electronic Engineering (EIConRus), St Petersburg, Russia, 28-31 January 2019. IEEE, 2019, pp. 1179-1182. doi: 10.1109/EIConRus.2019.8657257
10. 12207-2017 - ISO/IEC/IEEE Intern. Standard -Systems and Software Engineering - Software Life Cycle Processes. 15 November 2017. doi: 10.1109/IEEESTD.2017.8100771
11. Shen P., Ding X., Ren W., Yang C. Research on Software Quality Assurance Based on Software Quality Standards and Technology Management. 2018 19th IEEE/ACIS Intern. Conf. on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD). Busan, Korea (South), 27-29 June 2018. IEEE, 2018, pp. 385-390. doi:10.1109/snpd.2018.8441142
12. 90003-2018 - ISO/IEC/IEEE Intern. Standard -Software Engineering - Guidelines for the Application of ISO 9001:2015 to Computer Software. 30 November 2018. doi: 10.1109/IEEESTD.2018.8559961
13. Akkary H., Ramly S., Serhan K. Synchronization-Free Multithreading Architecture and Application Programming Interface. 17th IEEE Mediterranean Elec-trotechnical Conf. Beirut, Lebanon, 13-16 April 2014. IEEE, 2014, pp. 472-478. doi: 10.1109/MELC0N.2014.6820580
14. Basile C., Kalbarczyk Z., Iyer R. K. Active Replication of Multithreaded Applications. IEEE Transactions on Parallel and Distributed Systems. 2006, vol. 17, no. 5, pp. 448-465. doi: 10.1109/TPDS.2006.56
15. Dang H.-V, Seo S., Amer A., Balaji P. Advanced Thread Synchronization for Multithreaded MPI Implementations. 17th IEEE/ACM Intern. Symp. on Cluster, Cloud and Grid Computing. Madrid, Spain, 14-17 May 2017. IEEE, 2017, pp. 314-324. doi: 10.1109/CCGRID.2017.65
16. Hutchins D., Ballman A., Sutherland D. C/C++ Thread Safety Analysis. 14th IEEE Intern. Working Conf. on Source Code Analysis and Manipulation. Victoria, Canada, 28-29 Sept. 2014. IEEE, 2014, pp. 4146. doi: 10.1109/SCAM.2014.34
17. Inglés R., Perek P., Orlikowski M., Napieralski A. A Simple Multithreaded C++ Framework for HighPerformance Data Acquisition Systems. Proc. of the 22nd Intern. Conf. "Mixed Design of Integrated Circuits and Systems", Toru, Poland, 25-27 June 2015. IEEE, 2015, pp. 153-157. doi: 10.1109/MIXDES.2015.7208501
18. Wang Y., Liao H., Nazeem A., Reveliotis S., Kelly T., Mahlke S., Lafortune S. Maximally Permissive Deadlock Avoidance for Multithreaded Computer Programs. 5th Annual IEEE Conf. on Automation Science and Engineering. Bangalore, India, 22-25 August 2009, pp. 37-41 doi: 10.1109/C0ASE.2009.5234118
Information about the authors
Ivan S. Serdiukov, Engineer in "Radioelectronic systems and complexes" (2020), Postgraduate student of the Department of Radio Engineering Systems of Saint Petersburg Electrotechnical University. The author of 2 scientific publications. Area of expertise: radiolocation; information and measurement systems. Address: Saint Petersburg Electrotechnical University, 5 F, Professor Popov St., St Petersburg 197022, Russia E-mail: [email protected] https://orcid.org/0000-0002-6637-5994
Методология разработки программного обеспечения управления и сбора данных для систем автономного 63 мониторинга с большим объемом генерируемой информации на примере программного комплекса управления гидрологическим радиолокатором
Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System
Vladimir L Veremyev, Cand. Sci. (2000), Professor of the Department of Radio Engineering Systems in Saint Petersburg Electrotechnical University, Director of the Research Institute "Prognoz". The author of more than 100 scientific publications. Area of expertise: integrated environmental monitoring; complex issues of building radar systems; multi-band multi-position radar systems for airspace and sea surface monitoring. Address: Saint Petersburg Electrotechnical University, 5 F, Professor Popov St., St Petersburg 197022, Russia E-mail: [email protected] https://orcid.org/0000-0001-8167-6616
Nguyen Van Tuan, Specialist in "Radioelectronic systems and complexes" (2021), Postgraduate student of Le Quy Don Technical University. The author of 2 scientific publications. Area of expertise: radiolocation; semi-active radar. Address: Le Quy Don Technical University, 236 Hoang Quoc Viet St., Bac Tu Liem, Ha Noi, Viet Nam E-mail: [email protected] https://orcid.org/0000-0002-5652-6111
Методология разработки программного обеспечения управления и сбора данных для систем автономного мониторинга с большим объемом генерируемой информации на примере программного комплекса
управления гидрологическим радиолокатором Software Methodology for Data Control and Collection for Autonomous Monitoring Systems with a Large Amount of Generated Information on the Example of Software for a Hydrological Radiolocation System