Фильтр по тематике

Создание программного обеспечения опроса тепловычислителей

Разработаны алгоритмы и программы для контроллера с панелью и для АРМ оператора, предназначенные для сбора данных с тепловычислителей ВКТ-7 и СПТ961. В процессе создания программ дополнительно реализованы программы, имитирующие протоколы и работу ВКТ-7 и СПТ961 и позволяющие упростить отладку и доработку.

25.07.2025 1118 0
Создание программного обеспечения опроса тепловычислителей
Созданные программы для АРМ оператора и контроллера с сенсорной панелью осуществляют технический учёт параметров теплопотребления и вклю­чены в состав программного обеспечения более сложной АСУ ТП. АРМ оператора связан с контроллером по интерфейсу Ethernet. Контроллер через два порта интерфейса RS-485 взаимодействует с тепловычислителями: с четырьмя ВКТ-7 и тремя СПТ961 (рис. 1).

АРМ, помимо непрерывного сбора текущих параметров со всех тепловычислителей, позволяет копировать их архивные данные.  Запросы архивов формируются по команде оператора для выбранных ВКТ-7 и СПТ961. На рис. 2 показано диалоговое окно, где запущены опросы архивных данных. 

По окончании сбора архивных данных генерируются файлы почасовых, посуточных или помесячных отчётов (табл. 1).

Для АРМ и для контроллера созданы по две независимые программы, реализующие параллельно обмен по протоколу Modbus TCP и опрос тепловычислителей ВКТ-7 и СПТ961 по нестандартным протоколам. Контроллер циклически опрашивает текущие параметры тепловычислителей и отправляет их в АРМ. Если АРМ запрашивает архивные данные, то контроллер чередует запросы и отправку текущих и архивных параметров, так что текущие всегда актуальны. Если связь с АРМ отсутствует, то контроллер продолжает опрос только текущих параметров для нужд основных алгоритмов АСУ ТП. 

Для надёжного и последовательного диалога между АРМ и контроллером при запросах архивных данных тепловычислителей разработан алгоритм, упрощённо представленный на рис. 3. АРМ генерирует целое число SgnARM как вспомогательный сигнал, идентифицирующий данную транзакцию и не равный ни предыдущему, ни последующему значениям. Сигнал SgnARM передаётся в контроллер вместе с параметрами архивных запросов (если таковые заданы оператором). 

Контроллер после чтения формирует SgnPLC, равный полученному SgnARM, и направляет его в качестве подтверждения в АРМ вместе с порцией архивных данных, полученной от тепловычислителей. Передача между АРМ и контроллером выполняется непрерывно с использованием групповых команд Modbus, которые передают регистры подряд друг за другом. 

Чтобы контролировать консистентность данных, значения SgnARM и SgnPLC помещаются в начале и в конце передаваемой группы регистров (SgnARM1 и SgnARM2) или (SgnPLC1 и SgnPLC2), см. рис. 3. 

Функции обмена данными с тепловычислителями на низком уровне выполнены в контроллере с учётом описания протоколов от их производителей [1–4]. Для СПТ961 это символьный протокол, где управляющие символы, значения, метки времени, единицы измерения передаются ASCII-кодами. Протокол обмена с ВКТ-7 представляет данные в двоичном коде, но требует программирования вспомогательных промежуточных запросов. Для обработки запросов к тепловычислителям реализован поэтапный циклический алгоритм, причём каждый этап может занимать несколько повторений рабочего цикла контроллера. 

Краткое описание алгоритма для СПТ961 приведено в табл. 2.

Последние прочитанные текущие и архивные данные выводятся в кадрах панели контроллера (рис. 4).

Наряду с разработкой программ АРМ и контроллера для удобства отладки и доработки созданы программы-эмуляторы, имитирующие работу ВКТ-7 и СПТ961 при их отсутствии. Эмуляторы на ноутбуке (рис. 1), замещая тепловычислители, воспроизводят протоколы обмена через подключаемые преобразователи USB/RS-485. Экран ПК эмуляции, подобно кадрам контроллера (рис. 4), отображает последние моделируемые текущие и архивные данные тепловычислителей. Программы АРМ, контроллера и эмуляторов создавались параллельно и по принципу от простого к сложному. Реализована возможность сохранения в файлы протоколов работы программ и протоколов обмена, а также архивов данных, смоделированных в эмуляторах и накопленных в АРМ за время сеанса. Программы контроллера могут быть загружены в виртуальный контроллер на компьютере, благодаря чему в процессе разработки, отладки и тестирования кроме схемы рис. 1 применялись ещё и следующие схемы взаимодействия программ АРМ, контроллера и программ-эмуляторов: 
  1. наиболее удобная схема для разработки основных алгоритмов. Все программы АРМ, контроллера и эмуляции запускались на одном компьютере. Программы оператора и контроллера обменивались через виртуальный Ethernet, а программы контроллера и эмуляции – через связанные пары виртуальных портов RS-485; 
  2. схема для разработки протоколов обмена по RS-485 для ВКТ-7 и СПТ961. Программы АРМ и контроллера запускались на одном компьютере, а программы-эмуляторы – на другом. Программы оператора и контроллера взаимодействовали через виртуальный Ethernet, а программы контроллера и эмуляции – через реальные каналы с помощью четырёх USB/RS-485 преобразователей;
  3. схема для разработки протоколов передачи текущих данных и архивных запросов по Ethernet поверх Modbus TCP. Программы АРМ запускались на одном компьютере, а программы контроллера и эмуляции – на другом. АРМ оператора и контроллер использовали реальный Ethernet, контроллер и эмуляторы – виртуальные порты RS-485. ●

Литература

  1. Вычислитель количества теплоты ВКТ-7. Руководство по эксплуатации. Теплоком.
  2. Реализация протокола обмена для связи с вычислителем ВКТ-7. Теплоком.
  3. Тепловычислители СПТ961. Руководство по эксплуатации. ЛОГИКА. 
  4. Магистральный протокол СПСеть. Руководство программиста. ЛОГИКА. 
 
© СТА-ПРЕСС, 2025

Если вам понравился материал, кликните значок — вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал —не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

25.07.2025 1118 0
Комментарии
Рекомендуем

ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjeHksEz
ООО «ИнСАТ»  ИНН 7734682230  erid = 2SDnjddDXPx
  Подписывайтесь на наш канал в Telegram и читайте новости раньше всех! Подписаться