Итак... одним дождливым зимним днем пришла идея мониторить электросеть по новому. Так как собственный интерфейс программы прибора LPW-305 выглядел не так как хотелось, мною было принято решение сделать свой интерфейс.
И так как я пол года имел дело с мониторингом сетевого оборудования (L3 коммутаторы), выбор пал на Zabbix сервер. Ведь он умеет общаться с modbus устройствами. А LPW-305 имеет интерфейс ethernet и протокол modbus tcp.
Кратко... Накатываем виртуальную машину с Ubuntu. В virtualbox настройках свежеиспеченной машины выбираем пункт сеть и ставим "сетевой мост". Теперь наш коммутатор будет выдавать виртуальной машине ip адрес, который желательно прописать статикой в настройках сетевого подключения ubuntu. На сервер ставим zabbix сервер, базу данных mysql или postgresql, и веб-сервер apache или nginx.
Теперь мы можем подключиться с других устройств в этой сети к серверу zabbix, введя в адресной строке браузера ip адрес виртуальной машины с окончанием "/zabbix/
". Например: http://192.168.1.10/zabbix/
если ip адрес машины 192.168.1.10
Вводим логин и пароль от админки.
Далее самое интересное... Это создание собственных шаблонов. Создаем шаблон, я назвал его не замысловато lpw-305-modbus-agent
Добавляем его в какую либо группу, можно предварительно ее создать. Переходим во вкладку макросы и создаем три макроса:
макрос: {$MODBUS_PORT}
значение: tcp://192.168.1.9:502
макрос: {$MODBUS_SLAVE}
значение: 10
макрос: {$NODATA_PERIOD}
значение: 3000
Добавляем элементы данных которые нас интересуют из мануала на прибор. У меня это напряжение и ток:
Далее добавляю триггеры для уведомления, поддерживается telegram.
Мы создали самое основное, далее нужно создать узел сети...
Создаю узел с именем lpw-305
В макросе узла указываю {$NODATA_PERIOD}
значение: 600
В качестве агента используем локалхост с портом 10050
Осталось настроить саму панель, это уже на вкус и цвет. У меня это выглядит как то так...
Также справа внизу есть панелька "кабель" она мониторит состояние одного кабеля через Arduino Uno + ethernet shield w5100. На arduino написан скетч с zabbix агентом для пингования самой ардуины и проверки состояния ее пина.