document PZEM-004T connection

This commit is contained in:
King Kévin 2017-01-22 15:56:40 +01:00
parent f5d7287136
commit 31c95b9ed1
1 changed files with 22 additions and 1 deletions

View File

@ -52,6 +52,7 @@ DDM100TC
This 3-phase 4-wire electricity meter provides an S0 interface.
On my model this would output 1600 impulse/kWh, thus each impulse corresponds to a power consumption of 0.625 Wh).
This rate is hard coded in `main.c`.
To record these impulses a timer input capture is used.
The number of impulses determines the energy used.
It is stored in a backup register, keeping the value in memory even when the board is powered down as long as a (coin cell) battery is connected to VBAT.
@ -61,7 +62,27 @@ The time has a resolution of 0.91 ms (leading to a power calculation error of <1
Connections DDM100TC <-> board:
- S0+, pin 8; +3.3V or +5V
- S0-, pin 7; TIM4_CH1, PB6 (use pull-down resistor)
- S0-, pin 7; PB6, TIM4_CH1 (add pull-down resistor)
PZEM-004T
---------
This 1-phase 2-wire electricity meter provides a UART interface.
For the 3-phase 4-wire power distribution installation I used 3 meters, one per phase.
Because each command includes a device address, they can be connected to the same UART port (one individual addresses have been set).
All meters are periodically (see RTC) sequentially queried for their measurements (voltage, current, power, energy).
The used addresses are hard coded in `main.c`
A timer is used to guarantee a minimum (undocumented in the specification) time between requests in order to improve the response success.
Connections 3xPZEM-004T <-> board:
- 5V, 1; +5V (+3.3V is not sufficient)
- RX, 2; PA2, USART2_TX
- TX, 3, PA3, USART2_RX
- GND, 4; ground
Note: when connecting multiple meters one the same UART bus only keep one of the pull-up resistors (across all meters) on the TX pin (on the opto-coupler output), else the low level is not low enough for the micro-controller to correctly decode the signal.
ESP8266
-------