Научная статья на тему 'РАЗРАБОТКА АГРЕГАТНЫХ ФУНКЦИЙ ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОГРАММЕ ПРОСМОТРА РЕЗУЛЬТАТОВ ОБРАБОТКИ ТЕЛЕМЕТРИЧЕСКОЙ ИНФОРМАЦИИ ЗА НЕСКОЛЬКО СЕАНСОВ'

РАЗРАБОТКА АГРЕГАТНЫХ ФУНКЦИЙ ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОГРАММЕ ПРОСМОТРА РЕЗУЛЬТАТОВ ОБРАБОТКИ ТЕЛЕМЕТРИЧЕСКОЙ ИНФОРМАЦИИ ЗА НЕСКОЛЬКО СЕАНСОВ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
19
8
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АГРЕГАТНЫЕ ФУНКЦИИ / ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / ТЕЛЕМЕТРИЧЕСКАЯ ИНФОРМАЦИЯ / КОСМИЧЕСКИЙ АППАРАТ / ПАРАМЕТР

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Агеев Н.В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Агеев Н.В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «РАЗРАБОТКА АГРЕГАТНЫХ ФУНКЦИЙ ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОГРАММЕ ПРОСМОТРА РЕЗУЛЬТАТОВ ОБРАБОТКИ ТЕЛЕМЕТРИЧЕСКОЙ ИНФОРМАЦИИ ЗА НЕСКОЛЬКО СЕАНСОВ»

Т Е Х Н И Ч Е С К И Е

НАУКИ

УДК 004

Н.В. Агеев

РАЗРАБОТКА АГРЕГАТНЫХ ФУНКЦИЙ ДЛЯ ИСПОЛЬЗОВАНИЯ В ПРОГРАММЕ

ПРОСМОТРА РЕЗУЛЬТАТОВ ОБРАБОТКИ ТЕЛЕМЕТРИЧЕСКОЙ ИНФОРМАЦИИ

ЗА НЕСКОЛЬКО СЕАНСОВ

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

Ключевые слова: Агрегатные функции, программное обеспечение, телеметрическая информация, космический аппарат, параметр.

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

Телеметрия - информация о значениях измеряемых параметров (напряжения, тока, давления, температуры и т.п.) контролируемых и управляемых объектов методами и средствами телемеханики. [1]

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

© Агеев Н.В., 2019.

Научный руководитель: Королькова Любовь Варламовна - старший преподаватель, Мытищинский филиал МГТУ им. Баумана, Россия.

ISSN 2223-4047

Вестник магистратуры. 2019. № 6-2(93)

агрегатные функции, которые позволят упростить и сделать более наглядным анализ значений ТМ-параметров.

По желанию специалистов были разработаны и добавлены 13 агрегатных функций. Подробнее в таблице №1.

Таблица 1

Агрегатные функции, разработанные для программы просмотра результатов обработки _телеметрической информации за несколько сеансов_

№ п/п Название Описание

1 Среднее арифметическое значение Вычисляет среднее арифметическое значений параметра

2 Минимум Возвращает минимальное значение параметра

3 Максимум Возвращает максимальное значение параметра

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

5 Взять время Возвращает время получения значения параметра в миллисекундах

6 Разница между соседними элементами Возвращает последовательность, в которой записаны разница соседних значений параметра (по модулю)

7 Сумма Возвращает сумму всех значений параметров

8 Первое Возвращает первое значение параметра в текущем сеансе

9 Последнее Возвращает последнее значение параметра в текущем сеансе

10 Убрать серии Возвращает значения параметра, в котором из значений убраны исключая повторяющиеся элементы, расположенные подряд,

11 Убрать серии по времени Возвращает значения параметра, в котором удалены все значения, имеющее одинаковое время получения

12 Сортировка по времени Возвращает значения параметра, в котором все значения отсортированы по времени получения данных значений.

13 Сортировка по значениям Возвращает значение параметра, в котором все значения отсортированы по возрастанию или убыванию показаний.

Результат работы агрегатных функций используется при построении графиков. Для наглядности можно построить график значений исходного параметра и график значений обработанного агрегатной функцией параметра в одной координатной плоскости и оценить, например, насколько отличается значение параметра от среднего значения. Функции «Убрать серии», «Убрать серии по времени» используются при анализе значений несжатого параметра (обычно из необработанной ТМИ). Функция «Сортировка по времени» используется, когда время в сеансе не монотонно возрастает (при некорректной склейке информации, поступающей с разных наземных измерительных пунктов). Функции «Первое» и «Последнее» обычно используются на одной координатной плоскости вместе с исходным значением параметра и позволяют специалисту сравнивать текущее значение параметра с первым или последним, не прокручивая график по оси времени. Функция «Среднее арифметическое значение» позволяет отследить сбойные значения параметра, возникающие из-за помех в радиолинии (для аналоговых параметров).

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

Агрегатные функции реализованы на языке программирования высокого уровня С#. Введённое пользователем программы выражение преобразуется в программный код на языке С#, а также создаётся окружение, необходимое для работы этого кода. Программный код компилируется во время выполнения программы и, если компиляция прошла успешно, исполняется. Использование данного подхода позволяет улучшить производительность работы программы при построении графиков параметров, содержащих большое количество значений.

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

Регулярные выражения - формальный язык поиска и осуществления манипуляций с подстроками в тексте, основанный на использовании метасимволов. Для поиска используется строка-образец, состоящая из символов и метасимволов и задающая правило поиска. Для манипуляций с текстом дополнительно задаётся строка замены, которая также может содержать в себе специальные символы. [2]

Работа с агрегатной функцией в программе разделена на два этапа.

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

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

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

Библиографический список

1. ГОСТ 26.005-82. Телекоммуникации. Аудио и видеотехника. Термины и определения. Часть 1. // Москва. Стандартинформ. - 2005. - 10 с.

2. Джеффри Фридл. Регулярные выражения. // Санкт-Петербург - Москва. - 2008. - 350 с.

АГЕЕВ НИКОЛАЙ ВАСИЛЬЕВИЧ - магистрант, Мытищинский филиал МГТУ им. Баумана, Россия.

i Надоели баннеры? Вы всегда можете отключить рекламу.