BolikStav

<<< Назад

Pzem-016+Mqtt

Снятие показание электроэнергии

Добрый день.
На страницах нашего форуме так и не нашёл реализации как подключить Pzem-016 к Raspberry-3,пришлось искать самому.
Имеется:

  • Raspberry-3 (сборка от Сергея)
  • Pzem-016
  • Китайский переходник RS-485

Необходимо без Arduino передать данные в Majordomo, и лучше всего в Mqtt.

На просторах интернета был найден хороший проект spicierModbus2mqtt,который довольно свежий и простой. Смысл настройки минимален - запуск python скрипта с параметрами, который в свою очередь обращается к файлу настроек. Потом читает с порта USB и уже с железяк.
Подключаем Pzem-016 к проводам 220 вольт, и к RS-485. Датчик тока на нулевой провод.

Качаем проект spicierModbus2mqtt
Доставляем python3 и модули

sudo apt-get install python3 and python3-pip and python3-serial
sudo pip3 install pymodbus
sudo pip3 install paho-mqtt

далее настраеваем конфиг файл example.csv

type,"topic","col2","col3","col4","col5","col6"

poll,pzem016,1,0,10,input_register,1
ref,Voltage,0,r
ref,Current_low,1,r
ref,Current_max,2,r
ref,Power_low,3,r
ref,Power_max,4,r
ref,Energy_lov,5,r
ref,Energy_max,6,r
ref,Frequency,7,r
ref,Power_factor,8,r
ref,Alarm,9,r

и запускам скрипт

python3 modbus2mqtt.py --rtu /dev/ttyUSB0 --rtu-baud 9600 --rtu-parity none --mqtt-host localhost --config example.csv

Идём в модуль mqtt и ищем наши данные.

Готова :)

Обсуждение (1) (5)

Ставрополь, Россия

Веб-сайт:
http://stavhome.ru