Разработка.

С2000-ПП, Linux, Болид и все что с этим связано.

В настоящий момент упор делается на работу С2000-ПП в режиме «ведомый», в силу того, что я совместно с партнером начал внедрение ПО VPROGS.

Сейчас в разработке:

  • vserv 1.00 — осуществляет опрос устройств С2000-ПП, подключенных к шине MODBUS
  • vlog 1.00 — ведет лог событий, происходящих в системе (системах) Орион Болид, подключенных через С2000-ПП к шине MODBUS в локальную БД SQLITE
  • vconf 1.00 — приложение для настройки БД, добавления ботов, создания общего для всех приложений файла конфигурации
  • vbtlg 1.00 — телеграм-бот для отправки событий, происходящих в системе (системах) Орион Болид пользователю.

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


В настройках режима «ведомый» при конфигурировании С2000-ПП версии 2.00 есть опция «Прямая трансляция событий», именно она определяет то — каким образом С2000-ПП обрабатывает события.
Что удалось установить достоверно:

При включенной опции:

  1. Информация о зонах не передается
  2. Идентификатор пользователя используется из базы С2000-М
  3. Информация о разделах берется из базы С2000-М
  4. При взятии раздела есть привязка к пользователю

При отключенной опции:

  1. Информация о зонах передается
  2. Идентификатор пользователя используется из базы С2000-ПП
  3. Информация о разделах берется из базы С2000-ПП
  4. При взятии раздела есть нет привязки к пользователю, привязку видно только на взятых зонах этого раздела

Лог одного и того же действия при разных версиях ПП и его режимах работы:
Порядок действий:

  1. Ввод пароля для управления разделом
  2. Взятие раздела
  3. Ввод пароля для управления разделом
  4. Снятие раздела
Прямая трансляция событий в С2000-ПП версии 2.00
Прямая трансляция событий в С2000-ПП версии 2.00

После тестов проведенных совместно с партнером было выявлено что С2000-ПП в соответствии с п. 1.1.5.7 С2000-ПП» АЦДР.426469.020 РЭп … событие с кодом 250 «Потеряна связь с прибором» не генерируется или генерируется способом отличным от указанного.

Была проведена проверка с помощью ПО «Панель управления С2000-ПП» вер 1.2, а так же средствами собственной разработки.

При проверке собственными средствами использовалась следующая методика :

  1. Приборы подключены в штатном режиме, производится опрос состояния зон отвечающих за состояние приборов и запрос старого непрочитанного события.
  2. На 13 итерации (пауза между итерациями — 1 сек) была физически отключена линия RS-485 С2000М от С2000-ПП
    Примечание: Никаких изменений в кодах состояния зон или событий не возникло по окончании времени ожидания 10 сек в соответствии с конфигом.
  3. На 37 итерации (через 24 секунды) линия RS-485 С2000М от С2000-ПП была была восстановлена и событие с кодом 251 успешно сгенерировалось и было обработано.

Тоже самое наблюдается при использовании ПО «Панель управления С2000-ПП» вер 1.2

В этом вопросе служба поддержки помогла. Спустя 3 дня переписок мой вопрос все-таки адресовали специалисту.

Выяснилось что для корректного формирования событий опросчика (пульта или АРМ) необходимо создать в таблице зон С2000-ПП зону опросчика. Для этого необходимо сделать ПКМ на любой свободной зоне и выбрать опцию «Создать зону опросчика».

С2000-ПП. Создание зоны опросчика.
С2000-ПП. Создание зоны опросчика.

С2000-ПП. Зона опросчика.
С2000-ПП. Зона опросчика.

После добавления магической зоны события 250 и 251 стали генерироваться + если у вас есть отдельный раздел, в котором прописано состояние С2000-М, событие 251 генерируется также и этом разделе.

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


Генерирует ли С2000-ПП в режиме «ведомый» событие о изменении состояния реле, или это можно узнать только используя постоянный опрос текущих состояний реле?

Например при использовании С2000-М 2.08, С2000-КДЛ 2.26 и СП2 события не генерируются ни при включении реле с пульта, ни при включении реле командами через С2000-ПП, ни при включении реле, например, при тревоге.

Опция сообщать об изменении состояния исполнительных выходов на вкладке ВЫХОДЫ включена.

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

1. В конфигурации С2000М создаем раздел в который мы потом добавим … реле. В моем случае это С2000СП2 подключенные к 2000КДЛ.

Создание раздела для реле в С2000М

2. Добавляем реле в этот раздел.
3. Переходим на вкладку «Трансляция событий» и добавляем этот раздел к С2000-ПП и справа разрешаем трансляцию событий реле.

Настройка трансляции событий реле

Но на этом приключения не заканчиваются…

В описании к С2000-ПП версии 2.00 указано следующее:

Чтение событий реле из регистров ввода

Так вот — это снова брехня. Все работает не так. Рассказываю:

  • Старший байт регистра 0x0E05 это состояние реле. Судя по всему это номер программы управления: 1 — включено, 2 — выключено.
  • Младший байт регистра 0x0E05 это номер реле из базы С2000-ПП при отключенной прямой трансляции. Если реле в базе нет событие не генерируется! При включенной прямой трансляции байт равен 0.

One Reply to “Разработка.”

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *