Блог
контакты
127018, г. Москва, 3-й пр. Марьиной Рощи д. 40, стр.1, корп. 11 +7 (495) 662-5922
Следите за нами
Траст.ком в Google+ Траст.ком в LinkedIn
Траст.ком в Facebook Траст.ком в ВКонтакте
Топ товаров
Avaya IP Deskphones 1608-I
Avaya 1608-I подробнее >
SIP телефон Aastra 6757i
Aastra 6757i подробнее >
SIP телефон Aastra 6755i
Aastra 6755i подробнее >

Настройка преобразователя протоколов (SNMP, Modbus) Babel Buster. Часть 2

28.04.2016, Автор: Андрей Торженов / контакты / обратная связь /

Статья состоит из двух частей:

В первой части статьи, мы рассмотрели работу преобразователей протокола (SNMP, Modbus) Babel Buster в режиме чтения регистров Modbus используя протокол SNMP, а сейчас мы рассмотрим режим записи в регистры Modbus, а также рассмотрим работу с SNMP Trap и слегка затронем вопрос работы Babel Buster с MODBUS RTU (интерфейс RS-485).

Весь ассортимент шлюзов Babel Buster (Modbus, LonWorks, BACnet и SNMP) в нашем интернет-магазине ucstore.ru

Если вы не читали первую часть статьи, рекомендую её прочитать прежде чем вы начнёте работать со второй частью. Иначе, многие моменты для вас могут быть непонятны.

Часть 2

Запись в регистры Modbus используя SNMP протокол, настройка отправки SNMP Trap'ов и обзор настройки Modbus RTU RS-485

1. Запись в регистры Modbus

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

Для записи значений в Modbus регистры используя SNMP, нам необходимо, создать таблицу связей между регистрами Modbus устройства и локальными регистрами Babel Buster которые уже в свою очередь, ассоциированы с SNMP OID.

Babel Buster, получает по SNMP значение, записывает значение в свой локальный регистр и далее записывает его в регистр Modbus устройства.

Все параметры записи в Modbus регистры, аналогичны предыдущему описанию (Часть 1, Глава 4.4), посвященному чтению регистров Modbus.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Запись в Modbus регистры

Выше мы видим, что вы связали локальный регистр 1011 с Modbus регистром 16 (формат Float) и данный регистр находится на Modbus устройстве Contr.meteo.temp (Modbus устройства мы создавали в первой части Глава 4.3).

Нажав на номер Map можно попасть в расширенные настройки таблицы связей.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Запись в Modbus регистры

Настройки сделаны. Теперь нам необходимо узнать SNMP OID который ассоциирован с локальным регистром 1011.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. SNMP OID

Мы видим какой OID у локального регистра 1011 (и видим его текущее значение – 35).

Теперь используя SNMP SET мы можем записать пороговое значение в Modbus регистр контроллера.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. SNMP SET

 

2. Настройка отправки SNMP Trap

Ниже мы рассмотрим настройку не только отправки SNMP Trap’ов но и возможность Babel Buster производить математические операции (сложение, вычитание, деление и т.д.).

Настроим отправку SNMP Trap по достижению средней температуры двух датчиков температуры больше 30 градусов.

Последовательность настройки:

  1. Рассчитываем среднюю температуру с двух датчиков.
  2. Настраиваем правило с пороговым значением (Thresholds) температуры при котором будет отправляться SNMP Trap.
  3. Настраиваем SNMP параметры.

2.1. Расчёт средней температуры с двух датчиков

У нас есть два датчика температуры. Значение температуы записываются в локальные регистры 1001 и 1003 (подробнее в Части 1).

Для расчёта средней температуры используем формулу:  

tср = (t1 + t2) / Const

 

Где,

tср - средняя температура,
t1 - температура первого датчика,
t2 - температура второго датчика,
Const (константа) - количество датчиков (в нашем случае 2).  

В WEB интерфейсе Babel Buster создаём константу (Const) и записываем её в свободный регистр типа Float, в нашем случае 1007 (про типы регистров читаем подробнее в первой часте статьи).

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Настройка константы

Создадим правило расчёта средней температуры.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Правило расчёта

  • В Rule 1 мы сумируем значение t1 и t2 (Perfom Operation: sum) и результат записываем в локальный регистр типа float 1005.
  • В Rule 2 мы делим (Perfom Operation: divide) результат операции из Rule 1 на выше созданную константу (которая записана в локальный регистра 1007) и результат записываем в локальный регистр типа float 1009.

Теперь в локальном регистре 1009 у нас будет расчётная величина средней температуры с двух датчиков.

  • Также в Rule 3 приведен пример расчёта мощности. Напряжение (локальный регистр 3) умноженное на ток (локальный регистр 2). Значение мощности будет в локальном регистре 4.
  • В Rule 4 приведены все доступные математические операции.

Отображение значений локальных регистров.

Локальные регистры типа Integer.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Локальные регистры Integer

Мы видим как фактические значения с Modbus устройств (Local Register 1, 2 и 3) так и расчётные значения мощности (Local Register 4).

Локальные регистры типа Float.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Локальные регистры Float

Мы видим как фактические значения с Modbus устройств (Local Register 1001, 1003) так и расчётные значения средней температуры (Local Register 1009) и константу, которую ранее указывали (Local Register 1007).

2.2. Настройка порогового значения

Настраиваем пороговое значение температуры (Thresholds) при котором будет отправляться SNMP Trap.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Пороговые значения

Выбираем Rule 1 и настраиваем параметры.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Настройка пороговых значений

Указываем, за каким локальным регистром следим (1), имя порогового значения (2), критерий срабатывания порога (3), пороговое значение (4) и нажимаем Update (5).

Отображение состояния пороговых значений.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Отображение пороговых значений

Номер правила порогового значения (1), имя правила (2), локальный регистр за котором следит правило (3), текущее значение в локальном регистре (4), критерий срабатывания правила (5), значение заданного порога (6), текущее состояние правила порога (сработало или нет) (7). 

2.3. Настройка параметров для SNMP Trap

Преобразователя протоколов (Modbus, SNMP) Babel Buster. SNMP Trap IP адрес

Указываем адрес SNMP сервера получающего трапы, и группу в которую он входит.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. SNMP Trap настройка

Настраиваем правило отправки SNMP Trap'а.

При каких условиях отправлять (1), сколько раз (2), какой группе пренадлежит (3).

Тестирование приёма SNMP Trap

Получили SNMP Trap превышения порогового значения температуры (35oС > 30oC).

Получение SNMP Trap (порог сработал)

Получили SNMP Trap. Порогового значения температуры пришло в норму (25oС < 30oC).

Получение SNMP Trap (порог пришел в норму)

3. Обзор настройки Modbus RTU RS-485

Не буду глубоко погружаться в процесс настройки Modbus RTU, а быстро пробегусь по интерфейсу настроек, т.к. настройки похожи на Modbus TCP.

Параметры RS-485 порта.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Modbus RTU RS-485

Указываем скорость и другие параметры порта, тип Master или Slave и другие параметры.

Создание таблицы связей для чтения и записи в регистры, между регистрами Modbus RTU устройства и локальными регистрами Babel Buster.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Modbus RTU map

Настраивается аналогично Modbus TCP как было описано выше.

Отображение полученных данных от Modbus RTU устройства.

Преобразователя протоколов (Modbus, SNMP) Babel Buster. Modbus RTU данные

В данном примере небыли созданы регистры Modbus RTU, по этой причине список пустой.

Весь ассортимент шлюзов Babel Buster (Modbus, LonWorks, BACnet и SNMP) в нашем интернет-магазине ucstore.ru

4. Дополнительные материалы


Данный материал был подготовлен и размещен специалистами АО «Траст.ком» и является собственностью компании АО «Траст.ком». Использование любых материалов, размещенных на сайте компании АО «Траст.ком» (www.tr-com.ru) допускается только при указании прямой ссылки на непосредственный адрес материала на Сайте.


Опубликовать в социальных сетях:



Статья:

Настройка преобразователя протоколов (SNMP, Modbus) Babel Buster. Часть 2

Обратная связь

* - поля, обязательные для заполнения


Проверочный код