10-13-2025, 02:06 AM
Code:
N30 Energy Module Modbus Protocol Specification
==============================================
1. Overview
-----------
This document specifies the Modbus communication protocol for the N30 Energy Module.
The device communicates using the Modbus RTU protocol and provides access to electrical
measurement parameters including current, power, energy consumption, voltage, frequency,
temperature, and power factor from 3 independent energy monitoring chips.
2. Module Characteristics
-------------------------
- Energy Monitoring Chips: 3
- Communication Protocol: Modbus RTU
- Wireless Technology: Not applicable (wired connection)
- Maximum Sensors Supported: 32
- Board Features: Display, Ethernet (W5500), 4G, SD Card support
- GPIO Availability: 2 free GPIOs (pins 15, 16)
3. Communication Parameters
---------------------------
- Protocol: Modbus RTU
- Baud Rate: 38400
- Function Codes:
* 0x03: Read Holding Registers (for reading data)
* 0x05: Write Single Coil (for control operations)
* 0x10: Write Multiple Registers (for configuration)
4. Chip Addressing
------------------
The N30 Energy Module contains 3 measurement chips, each with a base address:
+-------------+--------------+--------------------+
| Chip Number | Base Address | Physical Location |
+-------------+--------------+--------------------+
| Chip 1 | 100 | Main board P1 |
| Chip 2 | 200 | Main board P2 |
| Chip 3 | 300 | Main board P3 |
+-------------+--------------+--------------------+
Aggregate data from all 3 chips is available starting at address 1000.
5. Data Structure
-----------------
Each chip provides the following data (accessible via Function Code 0x03):
5.1 Current Measurements (RMS) per Chip
---------------------------------------
+----------------+------------+-------+--------+---------------+
| Register Offset| Parameter | Units | Format | Resolution |
+----------------+------------+-------+--------+---------------+
| 0 | RMS_1 | A | uint32 | 0.001A/LSB |
| 2 | RMS_2 | A | uint32 | 0.001A/LSB |
| 4 | RMS_3 | A | uint32 | 0.001A/LSB |
| 6 | RMS_4 | A | uint32 | 0.001A/LSB |
| 8 | RMS_5 | A | uint32 | 0.001A/LSB |
| 10 | RMS_6 | A | uint32 | 0.001A/LSB |
| 12 | RMS_7 | A | uint32 | 0.001A/LSB |
| 14 | RMS_8 | A | uint32 | 0.001A/LSB |
| 16 | RMS_9 | A | uint32 | 0.001A/LSB |
| 18 | RMS_10 | A | uint32 | 0.001A/LSB |
+----------------+------------+-------+--------+---------------+
Example: To read RMS_1 from Chip 1, read registers 100 and 101 (2 registers for uint32).
Example: To read RMS_1 from Chip 2, read registers 200 and 201 (2 registers for uint32).
Example: To read RMS_1 from Chip 3, read registers 300 and 301 (2 registers for uint32).
Display: Reading of 5432 represents 5.432A (5432 × 0.001A)
5.2 Power Measurements (WATT) per Chip
--------------------------------------
+----------------+------------+-------+--------+---------------+
| Register Offset| Parameter | Units | Format | Resolution |
+----------------+------------+-------+--------+---------------+
| 20 | WATT_1 | W | uint32 | 0.1W/LSB |
| 22 | WATT_2 | W | uint32 | 0.1W/LSB |
| 24 | WATT_3 | W | uint32 | 0.1W/LSB |
| 26 | WATT_4 | W | uint32 | 0.1W/LSB |
| 28 | WATT_5 | W | uint32 | 0.1W/LSB |
| 30 | WATT_6 | W | uint32 | 0.1W/LSB |
| 32 | WATT_7 | W | uint32 | 0.1W/LSB |
| 34 | WATT_8 | W | uint32 | 0.1W/LSB |
| 36 | WATT_9 | W | uint32 | 0.1W/LSB |
| 38 | WATT_10 | W | uint32 | 0.1W/LSB |
+----------------+------------+-------+--------+---------------+
Example: To read WATT_1 from Chip 1, read registers 120 and 121 (2 registers for uint32).
Example: To read WATT_1 from Chip 2, read registers 220 and 221 (2 registers for uint32).
Example: To read WATT_1 from Chip 3, read registers 320 and 321 (2 registers for uint32).
Display: Reading of 12345 represents 1234.5W (12345 × 0.1W)
5.3 Energy Consumption Measurements per Chip
--------------------------------------------
+----------------+-------------+-------+--------+---------------------+
| Register Offset| Parameter | Units | Format | Resolution |
+----------------+-------------+-------+--------+---------------------+
| 40 | Energy_1 | kWh | uint32 | 1kWh/LSB |
| 42 | Energy_2 | kWh | uint32 | 1kWh/LSB |
| 44 | Energy_3 | kWh | uint32 | 1kWh/LSB |
| 46 | Energy_4 | kWh | uint32 | 1kWh/LSB |
| 48 | Energy_5 | kWh | uint32 | 1kWh/LSB |
| 50 | Energy_6 | kWh | uint32 | 1kWh/LSB |
| 52 | Energy_7 | kWh | uint32 | 1kWh/LSB |
| 54 | Energy_8 | kWh | uint32 | 1kWh/LSB |
| 56 | Energy_9 | kWh | uint32 | 1kWh/LSB |
| 58 | Energy_10 | kWh | uint32 | 1kWh/LSB |
| 60 | Energy_Sum | kWh | uint32 | 1kWh/LSB |
+----------------+-------------+-------+--------+---------------------+
Note: The maximum measurable energy per channel is 65535 kWh.
5.4 Other Measurements per Chip
-------------------------------
+----------------+-------------+-------+--------+---------------------+
| Register Offset| Parameter | Units | Format | Resolution |
+----------------+-------------+-------+--------+---------------------+
| 62 | RMS_V | V | uint16 | 0.01V/LSB |
| 63 | Period | Hz | uint16 | 0.01Hz/LSB |
| 64 | TPS1 | °C | float | 0.1°C/LSB |
| 66 | PF | - | float | Power Factor (0-1) |
+----------------+-------------+-------+--------+---------------------+
6. Channel Mapping
------------------
Total of 30 energy monitoring channels:
- Channels 1-10: Managed by Chip 1 (base address 100)
- Channels 11-20: Managed by Chip 2 (base address 200)
- Channels 21-30: Managed by Chip 3 (base address 300)
Each chip reports its 10 channels as local channels 1-10 in the register mapping.
7. Control Functions (Function Code 0x05)
------------------------------------------
The following control registers can be written to using the Modbus function code 0x05:
+----------+------------------------------+--------------------------------------------+
| Register | Function | Description |
+----------+------------------------------+--------------------------------------------+
| 500 | Warm Reset | Resets the device |
| 501 | Save Parameters to Flash | Save communication parameters to flash |
| 503 | Save Coefficients to Flash | Save calibration coefficients to flash |
| 504 | Clear Coefficients | Reset all coefficients to 1.0 (use caution)|
| 510 | Restore Factory Settings | Restore factory communication parameters |
+----------+------------------------------+--------------------------------------------+
8. Energy Clearing Functions (Function Code 0x05)
--------------------------------------------------
The following registers clear energy consumption data when written with function code 0x05:
8.1 Clear All Channels on a Chip
---------------------------------
+----------+--------------------------------+
| Register | Function |
+----------+--------------------------------+
| 520 | Clear all energy on Chip 1 |
| 521 | Clear all energy on Chip 2 |
| 522 | Clear all energy on Chip 3 |
+----------+--------------------------------+
8.2 Clear Individual Channels
------------------------------
+----------------+------------------------------------------------+
| Register Range | Function |
+----------------+------------------------------------------------+
| 526-535 | Clear energy on Chip 1, channels 1-10 |
| 536-545 | Clear energy on Chip 2, channels 1-10 |
| 546-555 | Clear energy on Chip 3, channels 1-10 |
| 586 | Clear sum energy on Chip 1 |
| 587 | Clear sum energy on Chip 2 |
| 588 | Clear sum energy on Chip 3 |
+----------------+------------------------------------------------+
9. Calibration Coefficients (Function Code 0x03 to read, 0x10 to write)
------------------------------------------------------------------------
All coefficients are stored as floating-point values in CDBA format.
9.1 Current (RMS) Coefficients for Chip 1
------------------------------------------
+----------+---------------------+---------+
| Register | Parameter | Default |
+----------+---------------------+---------+
| 3000 | FACTOR OF RMS1 | 1.0 |
| 3002 | FACTOR OF RMS2 | 1.0 |
| 3004 | FACTOR OF RMS3 | 1.0 |
| 3006 | FACTOR OF RMS4 | 1.0 |
| 3008 | FACTOR OF RMS5 | 1.0 |
| 3010 | FACTOR OF RMS6 | 1.0 |
| 3012 | FACTOR OF RMS7 | 1.0 |
| 3014 | FACTOR OF RMS8 | 1.0 |
| 3016 | FACTOR OF RMS9 | 1.0 |
| 3018 | FACTOR OF RMS10 | 1.0 |
+----------+---------------------+---------+
9.2 Power (WATT) Coefficients for Chip 1
-----------------------------------------
+----------+---------------------+---------+
| Register | Parameter | Default |
+----------+---------------------+---------+
| 3020 | FACTOR OF WATT1 | 1.0 |
| 3022 | FACTOR OF WATT2 | 1.0 |
| 3024 | FACTOR OF WATT3 | 1.0 |
| 3026 | FACTOR OF WATT4 | 1.0 |
| 3028 | FACTOR OF WATT5 | 1.0 |
| 3030 | FACTOR OF WATT6 | 1.0 |
| 3032 | FACTOR OF WATT7 | 1.0 |
| 3034 | FACTOR OF WATT8 | 1.0 |
| 3036 | FACTOR OF WATT9 | 1.0 |
| 3038 | FACTOR OF WATT10 | 1.0 |
+----------+---------------------+---------+
9.3 Energy Coefficients for Chip 1
-----------------------------------
+----------+-----------------------+---------+
| Register | Parameter | Default |
+----------+-----------------------+---------+
| 3040 | FACTOR OF ENERGY1 | 1.0 |
| 3042 | FACTOR OF ENERGY2 | 1.0 |
| 3044 | FACTOR OF ENERGY3 | 1.0 |
| 3046 | FACTOR OF ENERGY4 | 1.0 |
| 3048 | FACTOR OF ENERGY5 | 1.0 |
| 3050 | FACTOR OF ENERGY6 | 1.0 |
| 3052 | FACTOR OF ENERGY7 | 1.0 |
| 3054 | FACTOR OF ENERGY8 | 1.0 |
| 3056 | FACTOR OF ENERGY9 | 1.0 |
| 3058 | FACTOR OF ENERGY10 | 1.0 |
| 3060 | FACTOR OF ENERGY SUM | 1.0 |
+----------+-----------------------+---------+
9.4 Other Chip Calibration Coefficient Base Addresses
------------------------------------------------------
The calibration coefficients for other chips follow the same structure but start at
different base addresses:
+-------------+---------------+
| Chip Number | Base Register |
+-------------+---------------+
| Chip 2 | 3064 |
| Chip 3 | 3128 |
+-------------+---------------+
10. Data Aggregation
--------------------
Gateway systems can aggregate data from all three chips:
- Total System Current = Sum of all RMS values from all chips
- Total System Power = Sum of all WATT values from all chips
- Total System Energy = Sum of all Energy values from all chips
- Average System Voltage = Average of RMS_V from all chips
- Average System Frequency = Average of Period from all chips
- Maximum System Temperature = Maximum of TPS1 from all chips
11. Advanced Features
---------------------
11.1 Load Balancing
-------------------
N30 devices can implement intelligent load balancing:
- Distribute circuits across three chips for balanced loading
- Monitor per-chip temperature and adjust loads
- Implement chip-level alarming and fault detection
11.2 Fault Tolerance
--------------------
With three chips, the N30 provides enhanced fault tolerance:
- Continued operation even if one chip fails
- Redundant monitoring of critical circuits
- Automatic failover capabilities
12. Programming Notes
---------------------
1. After modifying communication parameters, write to register 501 to save them to flash.
2. After modifying calibration coefficients, write to register 503 to save them to flash.
3. Read the entire data structure for a chip by reading 68 registers starting at the
chip's base address.
4. For 32-bit values (uint32, float), read/write two consecutive registers.
5. When writing float values, use the CDBA format.
6. All energy measurements have a maximum value of 65535 kWh per channel.
7. Monitor all three chips to detect individual chip failures.
8. Implement timeout detection for missing chip data.
13. Installation and Deployment
-------------------------------
13.1 Circuit Assignment
-----------------------
Recommended circuit assignment strategy:
- Distribute high-priority circuits across all three chips
- Balance total current load per chip
- Consider thermal management (spread high-power circuits)
- Maintain critical circuit monitoring even if one chip fails
13.2 Monitoring Strategy
------------------------
For N30 deployment:
- Implement comprehensive monitoring of all three chips
- Set up alarm conditions for chip failures
- Monitor temperature across all chips
- Implement load balancing algorithms
14. Comparison Table
--------------------
+------------------+------------------+------------------+------------------+------------------+
| Feature | N10 | N20 | N30 | N60 |
+------------------+------------------+------------------+------------------+------------------+
| Communication | Modbus RTU | Modbus RTU | Modbus RTU | Modbus RTU |
| Energy Chips | 1 | 2 | 3 | 6 |
| Channels | 10 | 20 | 30 | 60 |
| Base Addresses | 100 | 100, 200 | 100, 200, 300 | 100-600 |
| Data Structure | Standard | Dual-chip | Triple-chip | Six-chip |
| Installation | Wired | Wired | Wired | Wired |
| Fault Tolerance | Basic | Enhanced | High | Maximum |
+------------------+------------------+------------------+------------------+------------------+
15. Conclusion
--------------
The N30 Energy Module provides triple-chip energy monitoring with Modbus RTU
communication, offering the highest monitoring capacity in the N-series while
maintaining protocol compatibility. The device is ideal for large-scale installations
requiring comprehensive electrical measurement and monitoring across many circuits,
with enhanced reliability through triple redundancy.
The N30 represents the pinnacle of the N-series energy monitoring family, providing
30-channel monitoring capability with advanced features like load balancing, fault
tolerance, and intelligent circuit distribution.
==============================================================================
Document generated for N30 Energy Module Modbus Protocol
For technical support, please contact Kincony support team.
N30_Energy_Modbus_Protocol.txt (Size: 15.55 KB / Downloads: 71)
YouTube: https://www.youtube.com/c/KinCony
Online Store: https://shop.kincony.com
Alibaba Store: https://kincony.en.alibaba.com/
Online Store: https://shop.kincony.com
Alibaba Store: https://kincony.en.alibaba.com/

