Разработка методики анализа телеметрии системы электропитания с помощью машинного обучения

Шнейдмиллер В.Р. Пиганов М.Н.

Журнал: Физика волновых процессов и радиотехнические системы @journal-pwp

Статья в выпуске: 3 т.29, 2026 года.

Бесплатный доступ

Обоснование. Актуальность темы данной работы обусловлена необходимостью повышения надежности, точности и стабильности функционирования радиотехнических комплексов (РТК) космических аппаратов (КА) и группировок КА в целом. Цель. Разработка методики анализа телеметрии базовой системы РТК КА – системы электропитания – на основе комбинированного алгоритма. Новизна работы состоит в разработке более эффективного алгоритма, который включает в себя сбор, хранение и анализ полученной информации со всех систем электропитания спутниковой группировки с помощью машинного обучения. Методы. Наряду с общеизвестными методами авторы используют оригинальный метод машинного обучения и современное программное обеспечение. Авторы разработали и использовали программу, которая позволяет оценивать эффективность проведенного анализа телеметрической информации, демонстрирует правильность принятых оценок. Результаты. Предложен и апробирован комбинированный алгоритм, на базе которого разработана методика анализа телеметрии системы электропитания КА. Для этого использованы метод машинного обучения и современное программное обеспечение. Разработана пилотная программа, позволяющая оценить эффективность анализа телеметрической информации. Заключение. Полученные результаты показывают возможность повышения живучести и надежности КА в составе группировок, т. е. на глобальном уровне. Данная методика предполагает ее совершенствование путем использования реальных данных и определения уровней иерархии для хранения конкретной телеметрии.

система электропитания \ космический аппарат \ телеметрическая информация \ выявление предаварийных состояний

Короткий адрес: https://sciup.org/140316785

IDS: 140316785   |   УДК: 621.398   |   DOI: 10.18469/1810-3189.2026.29.3.134-141

Development of a methodology for power supply system telemetry analysis using machine learning

Background. The relevance of this work is driven by the need to enhance the reliability, accuracy, and operational stability of spacecraft radio systems and satellite constellations as a whole. Aim. The study aims to develop a methodology for analyzing telemetry from the power supply system – a core spacecraft radio subsystem – based on a combined algorithm. Originality. The novelty of the research lies in the development of a more efficient algorithm that incorporates the collection, storage, and machine learning-based analysis of data obtained from all power supply systems within a satellite constellation. Methods. Along with well-established methods, the authors utilize an original machine learning approach and modern software. A proprietary program was developed and employed to evaluate the effectiveness of the telemetry analysis and to demonstrate the validity of the resulting assessments. Results. A combined algorithm has been proposed and tested, serving as the basis for the developed power supply system telemetry analysis methodology. This was achieved through the use of machine learning methods and modern software tools. A pilot program was developed to evaluate the efficiency of the telemetric information analysis. Conclusion. The results demonstrate the potential for increasing the survivability and reliability of spacecraft within constellations on a global level. The proposed methodology allows for further refinement through the use of real-world data and the definition of hierarchical levels for storing specific telemetry parameters.

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

Требования к гарантийному сроку функционирования космических аппаратов (КА) постоянно растут. Вслед за этим требованием вынужденно растут и надежность КА в целом, и отдельных его систем, в том числе и системы электропитания (СЭП) [1]. Помимо пассивной надежности, которая достигается грамотным проектированием и конструированием инженерно-конструкторского состава, важна и активная надежность. Под активной надежностью понимается надежность, которая достигается с помощью контроля за системой с помощью телеметрических параметров (ТМИ), отслеживанием метрик и дальнейшей выдачи команд операторами на КА с целью предотвращения нештатных ситуаций или вывода КА из них [2–3]. Увеличивать надежность систем и КА в целом можно не только за счет проведения комплексных испытаний на стадии изготовления [4– 6], но и с помощью средств и методов контроля при штатной эксплуатации. Отслеживание потенциальных нештатных ситуаций и аварий является очень важным аспектом в управлении и эксплуатации КА, так как своевременная идентификация проблем значительно увеличивает шансы на их избегание или решение, что, в свою очередь, сохраняет КА, а следовательно, сохраняет финансовые ресурсы, необходимые для пуска нового КА [7].

Современная СЭП содержит в себе более сотни ТМ-параметров, что является большим массивом данных, который можно анализировать, прогонять через фильтры, искать аномальные значения. На данный момент в основном этим занимаются команды специалистов, в состав которых входят инженеры-конструкторы, разрабатывающие СЭП, а также инженеры, которые занимаются эксплуатацией КА. Даже с учетом «подсветки» (выделения цветом) аномальных значений, следить за таким количеством ТМ-параметров проблематично [8]. К основным недостаткам классического метода мониторинга инженерами эксплуатации КА можно отнести низкую скорость анализа и отсутствие возможности оценивать состояние КА одновременно по всем ТМ-параметрам.

Целью данной работы является разработка методики анализа ТМ-параметров СЭП на основе комбинированного алгоритма с использованием машинного обучения в совокупности с современ-

Рис. 1. Предложенный алгоритм

Fig. 1. Proposed algorithm

ными инструментами информационных технологий (Python, PostgreSQL и т. д.).

1.    Алгоритм обработки ТМИ

Зачастую нештатная ситуация в СЭП происходит не мгновенно, ей предшествует предаварийное состояние, в котором ни один из ТМ-параметров не «подсвечивается», но их совокупность может подсказать о надвигающейся аварии. Подобные предаварийные состояния может определить использование машинного обучения в обработке ТМИ СЭП [9].

Предложенный алгоритм обработки ТМИ и поиска аномальных или аварийных ситуаций в СЭП с использованием машинного обучения с учителем [10] изображен на рис. 1.

В первую очередь ТМИ собирается традиционным способом со всех датчиков каждой системы КА, подготавливается для отправки и отправляется на наземный комплекс управления (НКУ). После приема пакета ТМИ он распаковывается также традиционным способом, выводится на приборную панель (экран) с актуальной информацией оператора, где он может провести предварительный экспресс-анализ. После этого программным путем формируется выборка необходимых параметров для дальнейшей подачи на вход программы с машинным обучением [10]. На работоспособность СЭП влияют многие факторы, которые входят в состав не только ТМИ СЭП: напряжение аккумуляторной батареи (АБ), емкость АБ, напряжение на батарее солнечной (БС), но и ТМИ других систем, например мгновенная сила тока на научной аппаратуре (НА), температуры посадочного места для АБ или работоспособность одного из тепловых контуров в составе системы обеспечения теплового режима (СОТР).

После выбора нужных метрик ТМИ они записываются в базу данных (БД), которую можно развернуть как реляционную базу (база данных, таблицы в которой связаны между собой) на платформе PostgreSQL [11]. Система использует удобный язык SQL, который позволит не только легко обращаться к серверу за данными, но и структурировать рейсы ТМИ от КА по датам, событиям, системам и так далее. После обновления БД (загрузки в БД ТМИ) запускается программа (возможен автоматический вариант запуска), которая загружает в себя необходимую вновь поступившую ТМИ (после загрузки в дополнительном поле таблицы БД проставляется метка, что данный кадр ТМИ уже был выгружен, для избегания повторной выгрузки). После чего программа выдает подробный отчет оператору, в котором будут выделены предаварийные и аварийные кадры телеметрии.

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

С учетом того, что используется машинное обучение с учителем, необходима хорошая выборка данных ТМИ (достоверная, охватывающая максимально возможные предаварийные и аварийные ситуации), которую можно использовать для обучения программы. Если КА серийный и есть опыт его эксплуатации, можно взять ТМИ с предыдущих полетов таких изделий, чтобы получить максимально адекватную, достаточную и достоверную выборку. Если КА нового образца – выборку ТМИ необходимо брать с испытаний и обновлять во время летной эксплуатации. Если КА имеет массовый характер и одновременно эксплуатируются два и более изделий – идеальным будет создание единой резервируемой БД для всех КА, к которой будет обращаться программа при анализе каждого КА.

2.    Разработка программы с помощью языка Python

Для тестирования методики и демонстрации результатов была разработана программа на языке Python версии 3.12.3, код которой изображен на рис. 2.

3.    Отработка программы

На вход программы подается телеметрия СЭП и других смежных систем (необходимо заранее выбрать метрики, которые будут участвовать в определении предаварийных ситуаций на системе, например, методом экспертных оценок). В данном примере на вход подается следующий набор параметров: «температура в месте установки АБ» (temp in place), «температура АБ» (temp in LIAB), «напряжение АБ» (U AB), «ток заряда АБ» (Ic AB), «ток разряда АБ» (Idisc AB), «ток БС» (I BS), «напряжение на выходе СЭП» (U SEP out). Выборка параметров изображена на рис. 3, она является синтетической, но при этом близкой к реальной.

Виды предаварийных ситуаций (столбец type) были выбраны следующие: «низкое напряжение на ЛИАБ» (low U in AB), «высокая температура в месте установки АБ» (hi temp in place). Также в выборке есть нормальное состояние системы (normal). Предаварийных ситуаций может быть значительно больше, однако в данном примере выбраны только две и нормальное состояние системы, чего достаточно для проверки работоспособности программы.

  • 3.1.    Результат работы программы по двум полям

    С учетом того, что используется машинное обучение с учителем, в данном примере в обучающую часть направляется 30 % данных, а в тестовую – 70 % (стратифицированным разделением, что обеспечивает равномерное распределение классов в обучающей и тестовой выборке). При этом программа пользуется в своих вычислениях только двумя полями: «температура АБ» (temp in LIAB) и «напряжение на выходе СЭП» (U SEP out). Используется наивный байесовский классификатор. Точность определения состояния системы при использовании двух полей равна 0,95714. Матрица ошибок показана на рис. 4 [12].

Из матрицы ошибок можно сделать вывод, что программа верно идентифицировала все нормальные состояния системы, верно оценила все предаварийные состояния типа «высокая температура в месте установки АБ», но из 14 преда-

5 б

Подключение необходимых библиотек import pandas as pd import numpy as np import matplotlib.pyplot as pit from, matplotlib.colors import ListedColormap from. sklearn.naive_bayes import GaussianNB from sklearn import preprocessing from sklearn.metrics import accuracyscore from sklearn.metrics import confusion_matrix from sklearn.metrics import ConfusionMatrixDisplay from sklearn.model_selection import train_test_split

Объявление переменных, чтение входных данных и приведение их к нужному виду name = "Работа алгоритма" classifier = GaussianNB{} df=pd.read_excel{'all_target_data.xlsx') df=df.drop([ id ] , axis=l) x_label='temp in LIAB' y_label='U SEP out' X=df[[x_label, y_label]] у = df['target'] у = у - 1 scaler = preprocessing.MinMaxScaler() scaled_features = scaler.fit_transform(X)

X .describe 0 df

  • #Перемешивание входных данных

    X_train, X_test, y_train, y_test = train_test_split(X,y,test_size=O.7,random_state=23456, stratify=y)

clf_acc = accuracy_score(y_test, clf_pred)

print('%s : Score— %.05f ' %(name,clf_acc))

Отрисовка матрицы ошибок cm = confusion_matrix(y_test, clf_pred, labels=classifiers.classes_)

^Подготовка и отрисовка визуализации пространства признаков h = .01

x_min, x_max = X.min{)['temp in LIAB ] - 0.1, X.max()[ temp in LIAB ] +0.1

y_min, y_max = X.min{}['U SEP out1] - 0.1, X.max()[1U SEP out ] +0.1

ax.scatter(x=X_train['temp in LIAB'], y=X_train['j SEP ou . ], c=y_train, cmap=cmap_bold, alpha=1.0, edgecolor=T'black") ax.scatter(x=X_test['temp in LIAB'], y=X_test['U SEP out'], c=y_test, cmap=cmap_light, alpha=0.6, edgecolor="black") ax.set_xlim(xx.min(), xx.max()) ax.set_ylim(yy.min(), yy.maxO) ax.set_title("PM dataset”) ax = pit.subplot(6, 2, 3) tO = time.time()

ax.contourf(xx, yy, Z, cmap=cmap_light, alpha=.8)

ax.scatter(x=X_train['temp in LIAB'], y=X_train['U SEP out'], c=y_train, cmap=cmap_bold, alpha=1.0, edgecolor«"black") ax.scatter(x=X_test['temp in LIAB'], y»X test["J SEP out'], c=y_test, cmap=cmap_light, alpha=0.6, edgecolor="b±ack") ax.set_xlim(xx.min(), xx.maxO) ax.set_ylim(yy.min(), yy.max()) ax.set_title(name) dt=(tl - t0> *1000

Рис. 2. Код программы на языке Python

Fig. 2. Python program code варийных состояний типа «низкое напряжение на ЛИАБ» (low U in AB) верно предсказано лишь 11. Три предаварийных состояния программа ошибочно идентифицировала как нормальное состояние системы, что может повлечь за собой пропуск оператором предаварийных состояний.

Визуализация пространства признаков программой (разделение объема признаков в двумерном пространстве) изображена на рис. 5. На рисунке видно (обозначено знаком «плюс») три состояния системы, которые идентифицированы программой неверно.

temp in place

temp in LIAB

U AB

Ic AB

Idisc AB

I BS

U SEP out

‘VP®

target

0

21.9

20.8

26.8

0.0

35.1

3.4

26.5

low U in AB

3

1

18.8

20.2

26.6

0.0

38.0

1.0

26.9

low U in AB

3

2

18.3

20.8

27.5

0.0

34.6

0.0

26.6

low U in AB

3

3

18.7

23.8

26.8

0.0

37.8

4.2

27.3

low U in AB

3

4

21.3

22.5

26.8

0.0

34.6

3.5

26.9

low U in AB

3

95

23.3

24.2

30.6

18.8

24.5

30.4

31.7

normal

1

96

20.4

21.1

28.1

10.3

7.1

15.0

29.8

normal

1

97

18.5

20.5

28.8

12.5

30.3

32.2

28.6

normal

1

98

19.4

21.7

28.9

16.4

21.3

36.0

31.6

normal

1

99

21.9

22.0

29.9

2.1

28.4

29.8

29.5

normal

1

Рис. 5. Визуализация пространства признаков Fig. 5. Latent space visualization

Рис. 3. Выборка параметров, которая подается на вход программы

Fig. 3. Sample of parameters fed into the program

Матрица ошибок

Рис. 4. Матрица ошибок (работа программы по двум полям)

Fig. 4. Confusion matrix (program performance by two fields)

| columns=[1 temp in place','temp in LIAB', 'U AB', 'Ic AB','Idisc AB', 'I BS', ' U SEP out'] X=df [col mens]

Рис. 6. Изменения в программе для использования всех полей

Fig. 6. Program modifications for utilizing all fields

  • 3.2.    Результат работы программы по всем полям

Если же использовать не два поля, а все возможные данные из входного массива (которые были выбраны для подачи на вход программы методом экспертных оценок), как изображено на рис. 6 (вместо строк 18–20 в исходной программе, показанной на рис. 2), то точность работы при выбранном классификаторе становится равной 1,0. Матрица ошибок для работы программы по всем полям изображена на рис. 7.

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

Матрица ошибок

Предсказанные значения

Рис. 7. Матрица ошибок при работе программы по всем полям

Fig. 7. Confusion matrix of the program across all fields

Заключение

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

  • 2.    Разработана программа на языке Python. Созданы синтетические данные работы системы

  • 3.    Полученные результаты показывают возможность повышения живучести и надежности КА за счет определения предаварийных состояний до возникновения аварии.

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