Nástroj pro čtení a konfiguraci RS-485 elektroměru PZEM-016 pomocí Pythonu přes Modbus RTU.
Umožňuje:
- číst všechna měřená data z elektroměru,
- resetovat energii,
- měnit Modbus adresu,
- zjistit aktuální Modbus adresu (včetně použití „general address“),
- zobrazit hodnoty v JSON formátu,
- volit port (
COMx
nebo/dev/ttyUSBx
) a rychlost (baudrate
).
- Python 3.6+
- Knihovny:
pyserial
Instalace závislostí:
pip install pyserial
python cli.py [volby] <příkaz> [parametry]
Přepínač | Význam |
---|---|
-p , --port |
Port (např. COM3 nebo /dev/ttyUSB0 ) |
-b , --baud |
Baudrate (výchozí: 9600) |
--debug |
Zapne ladicí výpis |
Načte a zobrazí všechna dostupná měřená data v JSON formátu.
Získá aktuální Modbus adresu zařízení přes „general address“ (0xF8
).
Nastaví novou Modbus adresu zařízení.
# Načtení dat ze zařízení na COM3
python cli.py -p COM3 getData
# Načtení dat z adresy 4
python cli.py -p COM3 getData 4
# Změna adresy zařízení z výchozí (0xF8) na 4
python cli.py -p COM3 setAddr 4
# Zjištění aktuální adresy zařízení (musí být pouze jedno zařízení na sběrnici)
python cli.py -p COM3 getAddr
Tento projekt je dostupný pod licencí MIT.
- ✅ Můžeš používat, kopírovat, upravovat a šířit.
- ✅ Můžeš integrovat do komerčních projektů.
- ❗ Musíš zachovat původní licenci a copyright.
Jan Zedník
@dvestezar
- Měřiče musí být správně připojené přes RS-485 (a galvanicky oddělené, pokud je to potřeba).
- Pro komunikaci je potřeba koncový odpor (120Ω) na sběrnici.
- Pokud používáš USB-RS485 převodník, ujisti se, že používá správné řízení RE/DE (např. přes auto-flow).
Systémové informace
----------------------------
OS: Windows 10 (build 10.0.22631)
Platforma: Windows-10-10.0.22631-SP0
Python: 3.10.6 (64bit)
Procesor: AMD64 Family 25 Model 33 Stepping 2, AuthenticAMD
Architektura OS: 64-bit