

The Power Meter Modbus is a versatile device designed to measure electrical power consumption and communicate the data using the Modbus protocol. This enables seamless integration into industrial and commercial systems for remote monitoring and control. It is widely used in energy management systems, industrial automation, and building management systems to track energy usage, optimize power consumption, and reduce operational costs.








| Parameter | Specification |
|---|---|
| Supply Voltage | 85-265V AC or 100-300V DC |
| Power Consumption | < 5W |
| Measurement Voltage Range | 0-300V AC |
| Measurement Current Range | 0-5A (via CT) |
| Communication Protocol | Modbus RTU (RS-485) |
| Baud Rate | 9600 bps (default), configurable |
| Data Format | 8N1 (8 data bits, no parity, 1 stop bit) |
| Accuracy | ±0.5% for voltage and current |
| Operating Temperature | -25°C to 70°C |
| Dimensions | 96mm x 96mm x 65mm |
| Pin Number | Label | Description |
|---|---|---|
| 1 | L | Live wire for power supply |
| 2 | N | Neutral wire for power supply |
| 3 | V+ | Voltage measurement input (Phase) |
| 4 | V- | Voltage measurement input (Neutral) |
| 5 | I+ | Current transformer (CT) input (+) |
| 6 | I- | Current transformer (CT) input (-) |
| Pin Number | Label | Description |
|---|---|---|
| 7 | A | RS-485 Modbus communication (A) |
| 8 | B | RS-485 Modbus communication (B) |
| 9 | GND | Ground for RS-485 communication |
Below is an example of how to read data from the Power Meter Modbus using an Arduino UNO and an RS-485 module.
#include <ModbusMaster.h>
// Instantiate ModbusMaster object
ModbusMaster node;
// RS-485 communication pins
#define RE_PIN 2 // Receiver Enable pin
#define DE_PIN 3 // Driver Enable pin
void preTransmission() {
digitalWrite(RE_PIN, HIGH); // Enable RS-485 transmitter
digitalWrite(DE_PIN, HIGH);
}
void postTransmission() {
digitalWrite(RE_PIN, LOW); // Disable RS-485 transmitter
digitalWrite(DE_PIN, LOW);
}
void setup() {
// Initialize serial communication
Serial.begin(9600);
Serial.println("Power Meter Modbus Example");
// Initialize RS-485 control pins
pinMode(RE_PIN, OUTPUT);
pinMode(DE_PIN, OUTPUT);
digitalWrite(RE_PIN, LOW);
digitalWrite(DE_PIN, LOW);
// Initialize Modbus communication
node.begin(1, Serial); // Modbus ID 1
node.preTransmission(preTransmission);
node.postTransmission(postTransmission);
}
void loop() {
uint8_t result;
uint16_t data[2];
// Read voltage (register address 0x0000)
result = node.readInputRegisters(0x0000, 2);
if (result == node.ku8MBSuccess) {
data[0] = node.getResponseBuffer(0); // Voltage value
Serial.print("Voltage: ");
Serial.println(data[0] / 100.0); // Assuming value is in 0.01V units
} else {
Serial.println("Failed to read voltage");
}
delay(1000); // Wait 1 second before next read
}
0x0000 with the appropriate Modbus register address for the parameter you want to read.No Communication with Modbus Master
Incorrect Measurements
Device Not Powering On
Q: Can I use this power meter with a 24V DC power supply?
A: No, the power meter requires a supply voltage of 85-265V AC or 100-300V DC.
Q: What is the maximum cable length for RS-485 communication?
A: RS-485 supports cable lengths up to 1200 meters, but this depends on the baud rate and cable quality.
Q: How do I reset the Modbus address?
A: Refer to the device's user manual for instructions on resetting the Modbus address, typically done via a hardware button or configuration software.
Q: Can I monitor multiple circuits with one power meter?
A: No, this power meter is designed to monitor a single circuit. Use multiple meters for multiple circuits.