Программный комплекс для анализа информации и оптимизации управления путевой машиной

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

Фокин Сергей

190
В ЗАКЛАДКИ

Введение

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

Бортовая система мониторинга и управления РПБ-01

На путевой машине РПБ-01 производства АО «Калугапутьмаш» (рис. 1) используется бортовая система мониторинга и управления производства АО ВНИКТИ.

Она позволяет оптимизировать управление машиной, предоставляя обслуживающему персоналу возможность оперативно следить за всеми узлами и агрегатами.
Перечень подлежащих мониторингу основных параметров РПБ-01 включает в себя 64 наименования. Для обеспечения работоспособности системы на борту путевой машины РПБ-01 установлено 33 дискретных и 29 аналоговых датчиков, что позволяет достоверно отображать состояние всех её агрегатов [1]. На основе полученной информации происходит формирование сообщений оператору о возможных неисправностях и методах их устранения. Все анализируемые параметры бортовой системы мониторинга и управления отображаются виртуальными приборами, которые разбиты на функциональные группы.

Описание жизненного цикла программного комплекса


Процесс реализации программного комплекса (ПК) бортовой системы мониторинга и управления можно представить с помощью спиральной модели разработки (рис. 2). Опишем его в соответствии с данной моделью [2].
  1. Определение целей, начальный сбор требований и планирование про­екта. К момен­ту получения технического задания (ТЗ) имелись отдельные экспериментальные наработки, которые учи­тывались на последующих этапах [3].
  2. Анализ риска на основе имеющихся данных. В результате анализа ТЗ были установлены сроки создания ПК и определена трудоёмкость работ. Этапы выполнения работ согласовывались с соответствующими этапами создания новой путевой машины.
  3. Создание рабочей версии. Начальный макет системы успешно прошёл испытания на путевой машине ДСП-С № 82 [4].
  4. Согласование с заказчиком. Разработка системы была включена в перечень проводимых работ.
Далее описанный цикл работ повторился на более высоком уровне. В соответствии с рекомендациями завода-изготовителя путевой машины РПБ-01 были внесены коррективы в конструктив и алгоритм работы системы мониторинга и управления, после чего она была установлена на первой версии путевой машины.
Результатом выполнения следующего цикла работ стало создание системы мониторинга и управления СПС для РПБ-01 № 004 (рис. 3). Она стала базовым вариантом системы.

В процессе изготовления новых путевых машин постоянно происходит доработка конструктива и ПК системы мониторинга и управления, но базовая концепция остаётся той же, что и на РПБ-01 № 004.

Общая структура программного комплекса

Программный комплекс системы мониторинга и управления для СПС представлен двумя программными модулями –нижнего и верхнего уровня. Они работают автономно на разных устройствах, но обмениваются данными по шине CAN [5].
Общая диаграмма компонентов ПК по­казана на рис. 4.

Программа нижнего уровня

Программа нижнего уровня, которая управляет работой российского промышленного контроллера CPM701 фирмы FASTWEL (рис. 5), разработана на языке ST [6]. Она осуществляет опрос датчиков посредством модулей ввода-вывода, формирование CAN-пакетов и передачу этих пакетов по CAN-шине [7].

Задача программиста – назначить адрес пакету CAN и разместить требуемые данные в пакете с соответствующим адресом. При программировании контроллера необходимо задать несколько дополнительных параметров, одним из которых является частота опроса модулей ввода-вывода в миллисекундах. На основании проведённых экспериментов было выяснено, что для задачи контроля агрегатов путевой машины подходит значение 20 мс. Такая величина обусловлена прежде всего необходимостью отображения текущих быстро изменяющихся данных, например оборотов двигателя.
Для упрощения отладочных работ используется пользовательский светодиодный индикатор. Его наличие позволяет убедиться в том, что в данный момент на контроллере запущена и работает требуемая программа. Алгоритм работы программы показан на рис. 6.

Контроллер преобразует информацию из одного вида в другой, производя малое количество математических преобразований. Данные поступают от модулей ввода-вывода по внутренней шине системы ввода-вывода сигналов. Программа, заложенная в контроллере, принимает полученные данные и в зависимости от источника (модуля ввода) назначает соответствующий адрес в формируемом пакете CAN. Для каждого канала каждого модуля системы ввода-вывода сигналов назначается свой адрес в CAN-пакете. Таким образом, в контроллере формируется пакет CAN. Далее сформированный пакет посылается по шине на обработку программой верхнего уровня.
Это обусловлено тем, что вычислительные ресурсы системной платы верхнего уровня, которая обрабатывает данные, полученные от контроллера, значительно выше вычислительной мощности самого контроллера. Кроме того, при возникновении необходимости увеличения количества обрабатываемых данных, а следовательно, добавления новых модулей ввода-вывода, понадобится выделять дополнительные адреса в CAN-пакете для новых данных. В результате произойдёт перераспределение адресного пространства контроллера. Это приведёт к тому, что потребуется изменять программу, написанную на языке ST, что может оказаться весьма непростым делом, особенно при большом количестве обрабатываемых данных и сложных алгоритмах обработки. При минимальном количестве преобразований данных изменение количества модулей ввода-вывода потребует лишь внесения изменений в схему адресации контроллера [8].

Программа верхнего уровня

Первая операция программы верхнего уровня – определение свойств и места расположения исполняемого файла. Запуск программы из рабочей среды говорит о том, что происходит процесс отладки программы разработчиком. Это влияет на количество отображаемой для пользователя информации. Если же программа запускается автономно, то это свидетельствует о штатном режиме эксплуатации. Данная проверка необходима для упрощения её разработки и отладки, поскольку в процессе работы программы производится запись некоторой служебной информации.
Следующим шагом загружается имя путевой машины из файла m_name.dat и производится запись определённых данных в реестр операционной системы [9], блокирующих возможность подключения флэш-накопителей. Это требуется для обеспечения безопасности бортового компьютера. После этого задаются размер и положение основного экрана пользователя, а также происходит инициализация глобальных и локальных переменных.
Далее формируется кнопка-сообщение, предлагающая войти в режим корректировки рабочих зон параметров. При её нажатии запускается соответствующая подпрограмма. Если же пользователь никаких действий не производит, то через 3 секунды вид кнопки изменяется и предлагается войти в режим корректировки тарировочных таблиц. Сценарий действий в этом случае аналогичен: если пользователь нажимает кнопку, то запускается соответствующая подпрограмма, в противном случае спустя 3 секунды программа выполняется дальше.
Следующим действием программы является архивация предыдущих данных журнала, который формируется при работе программы в специальном dat-файле. В нём с частотой, указанной в ТЗ, фиксируются все контролируемые параметры в виде таблицы и сохраняются в зашифрованном виде в бинарном формате [10]. Поскольку бортовая система мониторинга и управления выключается, как правило, внезапно, например при прекращении подачи питания, то обработать накопленные данные по окончании её работы не удаётся. По этой причине при старте программы последний записанный dat-файл архивируется под именем, соответствующим текущей дате запуска программы.
Все архивные файлы хранятся в течение определённого интервала времени, длительность которого задаётся заказчиком, после чего они удаляются.
После архивации журнала программа выполняет создание dat-файла, в который записывается текущая дата и время.
Далее в соответствующие глобальные переменные записывается текущее время для отсчёта временныˆх интервалов, задаются значения некоторых констант, создаётся массив для записи времени возникновения аварии и открывается панель кнопок. На этом заканчивается инициализация, и программа вступает в основной цикл работы.
В основном цикле работы программы верхнего уровня производится:
  • отображение данных всех каналов модулей ввода-вывода;
  • установка режима работы системы;
  • формирование тревожных и предупреждающих сообщений;
  • запись данных в файл журнала;
  • выбор экрана работы программы;
  • глушение дизеля при повышенных оборотах;
  • отображение вспомогательных переменных.
При выходе из основного цикла по нажатию определённой кнопки происходит закрытие всех окон и завершение работы программы [11].
Отображение данных всех каналов модулей ввода-вывода требуется для предоставления текущей информации наладчику системы во время её работы. Войти в этот режим можно с помощью скрытой сенсорной кнопки.
Выбор режима работы (рис. 7) системы зависит от количества оборотов двигателя и положения тумблера переключения режимов на пульте машиниста.

Алгоритм выбора режима работы машины показан на рис. 8.

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

Параллельно с основной программой работают ещё две подпрограммы:
  • обработки CAN-сообщений;
  • работы с панелью сенсорных кнопок.

Подпрограмма обработки CAN-сообщений

Выполнение подпрограммы начинается с подключения библиотеки для работы с оборудованием CAN (платы NIM351 компании FASTWEL) и инициализации переменных. После этого производится чтение пакетов CAN и их передача для записи в контроллер. По завершении работы программы происходит отключение библиотеки CAN.
При чтении пакета CAN расшиф-ровка сообщения выполняется в такой по­следовательности:
  1. с помощью dll-библиотеки, которая предоставляется поставщиком оборудования CAN, считывается всё содержимое информационного пакета в переменную-кластер F_CAN_MSG_IN1;
  2. из данного кластера данные побитно для дискретных данных и побайтно для аналоговых в соответствии с адресом записываются в соответствующие переменные;
  3. в случае необходимости данные проходят обработку. Например, для четырёх байтов, передающих частоту вращения двигателя, выполняется оценка показаний. Если значение входит в заданный интервал, то оно отображается на приборе. В противном случае значение не обрабатывается и на прибор выдаётся константа.

Подпрограмма работы с панелью сенсорных кнопок

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

Выводы

Разработанные алгоритмы сбора, обработки, анализа и хранения информации, получаемой от контролируемых систем объекта мониторинга, которые реализованы в программном комплексе, отличаются универсальностью и улучшенными характеристиками, с точки зрения обеспечения надёжности функционирования, эргономики и условий труда обслуживающего персонала. Структурное разделение ПК на два уровня позволяет оптимально распределить вычислительную нагрузку между элементами системы, обеспечив высокую степень её универсальности. Она может устанавливаться на промышленные объекты различного назначения с минимальными затратами времени на адаптацию к заданным техническим параметрам.
Применение программного комплекса бортовой системы мониторинга и управления на путевой машине РПБ-01 обеспечивает контроль работоспособности машины, анализ её текущего технического состояния и фиксацию фактов отказа с точной идентификацией места их возникновения, что позволяет повысить качество управления машиной. ●

Литература

  1. Распределитель-планировщик балласта РПБ-01 [Электронный ресурс] // Сайт АО «Калугапутьмаш». – Режим доступа : https://www.kalugaputmash.ru/catalog/desc_1_23.shtml.
  2. ГОСТ Р ИСО/МЭК 12207-2010. Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств. ‒ М. : Стандартинформ, 2011.
  3. Изготовление опытного образца СТДГ : технический отчёт / ВНИКТИ ; исп. Бидуля А.Л. – № И-27-06 ; Инв. № 6683. – Коломна, 2006.
  4. Эксплуатационные испытания машины ДСП-С, оборудованной унифицированным пультом управления : технический отчёт / ВНИКТИ ; исп. Бидуля А.Л. – № И-24-06 ; Инв. № 6679. – Коломна, 2006.
  5. Соловьёв С.В., Гринкруг Л.С., Цой Р.И. Технология разработки прикладного про­граммного обеспечения. ‒ М. : Академия Естествознания, 2011.
  6. Система ввода-вывода FASTWEL I/O Контроллеры CPM701/CPM702/CPM703/CPM704 : Руководство программиста. Вер­сия 2.0 [Электронный ресурс]. – Режим дос­тупа : http://insat.ru/products/fastwel/FIO_CPM70x_GUIDE_PROGRAMMER.pdf.
  7. Фокин С.В. Программный комплекс обеспечения человеко-машинных интерфей­сов системы мониторинга и диагностики специального подвижного состава // Актуальные вопросы современной информатики : сб. мат. конф. – Коломна : МГОСГИ, 2014.
  8. Фокин С.В. Принципы построения бортовой системы мониторинга и диагностики путевой машины // Актуальные проблемы гуманитарных и естественных наук. – 2015. – № 7-4.
  9. Сведения о реестре Windows для опытных пользователей [Электронный ресурс] // Сайт Microsoft. – Режим доступа : https://support.microsoft.com/ru-ru/kb/256986.
  10. Суранов А.Я. LabVIEW 8.20 : Справочник по функциям. ‒ М. : ДМК Пресс, 2007.
  11. Фокин С.В. Структура программного комплекса системы мониторинга путевой машины // Инженерные исследования и достижения – основа инновационного развития : мат. Всерос. науч.-тех. конф. – Рубцовск : РИИ АлтГТУ, 2014.
E-mail: Sergei-Kolomna@mail.ru


ПОДПИСАТЬСЯ НА НОВОСТИ

Будьте всегда в курсе самых свежих новостей
и узнавайте первыми о содержании нового номера

Подписка на новости

РЕКОМЕНДУЕМ