Инструкция подключения Pixel к Zabbix(Шаблон).
Подключаем ModBus TCP шлюз к порту rs-485 Pixel. А к порту +, В к порт -.
Настраиваем ModBus TCP шлюз:
Multi-Master Settings = Modbus tcp to rtu (без этого связи не будет).
Serial Settings = 9600
Настраиваем Pixel:
Зажимаем две кнопки, с право вторая и третья. Заходим в меню Конфигурации-Com port. Отвечать на Мастер, ставим Выкл. Скорость порта, ставим 9600.
Переходим к настройке сервера:
Установка modpoll на Ubuntu(установка сводиться к скачиванию архива и запуску. Установка не требуется):
Код:
wget https://www.modbusdriver.com/downloads/modpoll.tgz
tar xzf modpoll.tgz
cd /modpoll/i686-linux-gnu
копировать в:
Код:
cp modpoll /etc/init.d/modpoll
Проверяем:
Опрашиваем устройство pixel:
Код:
/etc/init.d/modpoll -c1 -r65341 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
Где:
-l: время ожидания ответа
-r: регистр
-a: id устройства
-с1: показать один регистр
-p: порт подключения
-m tcp: ip адрес шлюза ModBus
| grep "]:" | awk '{print $ 2}' : показать только результат регистра
Переходим к настройке Zabbix:
Редактируем:
Код:
nano /etc/zabbix/zabbix_agentd.conf
В конце вставляем:
UserParameter=OtoplenieZona1pixel.5v,/etc/init.d/modpoll -c1 -r65341 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.24v,/etc/init.d/modpoll -c1 -r65342 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.batareyka,/etc/init.d/modpoll -c1 -r65340 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.tPodacha,/etc/init.d/modpoll -c1 -r3086 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.tNarujnyy,/etc/init.d/modpoll -c1 -r3084 -t3 -1 -a1 -l 4000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.tZadanyy,/etc/init.d/modpoll -c1 -r3094 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.tObratka,/etc/init.d/modpoll -c1 -r3082 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
UserParameter=OtoplenieZona1pixel.aktivnayaAvariya ,/etc/init.d/modpoll -c1 -r65343 -t3 -1 -a1 -l 3000 -0 -p4196 -m tcp 10.0.1.237 | grep "]:" | awk '{print $ 2}'
Перезагружаем zabbix:
Код:
service zabbix-agent restart
Переходим в Web zabbix, Настройки-Узлы сети, кнопка "Импорт", импортируем. Шаблон создавался на версии Zabbix 6.0.16. Шаблон в архиве к статье, форум не дает прикрепить его к отдельно.
Или самостоятельно создаем узел сети, а за ним элементы данных:
В zabbix создаем "Узел сети":
Имя узла сети:
Интерфейсы, Агент: 127.0.0.1, IP, порт 10050
Cоздаем "Элемент данных" для сбора данных и построения графика:
Имя: Отопление Зона 1 Напряжение +5В
Тип: Zabbix агент
Ключ: OtoplenieZona1pixel.5v (аналогично для всех данных, берем ключи из /etc/zabbix/zabbix_agentd.conf)
Интерфейс узла сети: 127.0.0.1:10050
Единицы измерения: V
Интервал обновления: 1m
На этом все! Не знаю, почему столько лет никто не написал статью, жадность наверное
Описание регистров modBus, что выдают одинаковые данные:
tпод - температуру подачи ГВП:
3043 3086
3044
3059
t tнар - температуру наружной среды:
3042 3084
tзад - температуру заданая, относительно tнар:
3047 3094
3058 3116
tобр - температуры обратки:
3041 3082
300 часы
301 минуты
302 секунды
303 число
304 месяц
305 год
[3356]: 22 - число
[3358]: 12 - месяц
[3360]: 2023 - год
[3362]: 0 - час
[3354]: 32 - минута
[3366]: 14 - секунда
65340 Напряжение батареи
65341 Напряжение +5В
65342 Напряжение +24В
Работа насоса 1 -
Работа насоса 2 -