Project

General

Profile

Task #3354 » KT_telematics_chiller_modbusmapping.txt

Gowri G, 23/03/2026 06:51 AM

 

For **Bulk Milk Chiller (BMC) with Thermal Battery IoT integration**, there is **no universal Modbus register map** because each OEM controller uses its own map. However, for a **custom IoT gateway or controller**, a standard **industrial Modbus register structure** can be designed so SCADA, dairy ERP, or cloud systems can easily integrate.

Below is a **practical Modbus RTU/TCP register map typically used for Milk Chiller monitoring systems**.

---

# 1. Modbus Communication Parameters

Typical configuration used in dairy equipment:

| Parameter | Value |
| --------- | ------------ |
| Protocol | Modbus RTU |
| Interface | RS485 |
| Baud rate | 9600 / 19200 |
| Data bits | 8 |
| Parity | Even |
| Stop bits | 1 |
| Slave ID | 1–247 |

IoT gateway can convert **RS485 → MQTT / HTTP / Cloud**.

---

# 2. Input Registers (Sensor Data)

**Function Code: 04**

| Register | Parameter | Unit | Description |
| -------- | ------------------------- | ------ | --------------------- |
| 30001 | Milk Temperature | 0.1 °C | Milk tank temp |
| 30002 | Thermal Battery Temp | 0.1 °C | PCM temperature |
| 30003 | Evaporator Temp | 0.1 °C | Cooling coil |
| 30004 | Compressor Discharge Temp | 0.1 °C | Compressor protection |
| 30005 | Ambient Temperature | 0.1 °C | Outside environment |
| 30006 | Milk Tank Level | Liters | From level sensor |
| 30007 | Milk Flow Rate | L/min | Milk intake |
| 30008 | Compressor Current | 0.1 A | Motor load |
| 30009 | Voltage | 0.1 V | Supply voltage |
| 30010 | Power Consumption | W | Real-time power |

---

# 3. Holding Registers (Configuration)

**Function Code: 03**

| Register | Parameter | Unit |
| -------- | --------------------------- | ------ |
| 40001 | Milk Cooling Setpoint | °C |
| 40002 | Compressor Start Temp | °C |
| 40003 | Compressor Stop Temp | °C |
| 40004 | Thermal Battery Charge Temp | °C |
| 40005 | Alarm Temp High | °C |
| 40006 | Alarm Temp Low | °C |
| 40007 | Compressor Restart Delay | sec |
| 40008 | Milk Tank Capacity | Liters |

---

# 4. Coil Registers (Digital Outputs)

**Function Code: 01**

| Register | Control |
| -------- | --------------------------- |
| 00001 | Compressor ON/OFF |
| 00002 | Agitator Motor |
| 00003 | Milk Pump |
| 00004 | Thermal Battery Charge Mode |
| 00005 | Alarm Buzzer |
| 00006 | Remote Reset |

---

# 5. Discrete Inputs (Status)

**Function Code: 02**

| Register | Status |
| -------- | ----------------------- |
| 10001 | Compressor Running |
| 10002 | Agitator Running |
| 10003 | Power Available |
| 10004 | Door Open |
| 10005 | High Temperature Alarm |
| 10006 | Low Temperature Alarm |
| 10007 | Thermal Battery Charged |
| 10008 | Sensor Fault |

---

# 6. Data Logging Registers

For **IoT analytics**

| Register | Parameter |
| -------- | -------------------------- |
| 31001 | Total Compressor Run Hours |
| 31002 | Total Energy Consumption |
| 31003 | Milk Collected Today |
| 31004 | Cooling Cycles Today |
| 31005 | Last Alarm Code |

---

# 7. Alarm Codes

| Code | Alarm |
| ---- | --------------------------- |
| 1 | Milk temperature high |
| 2 | Compressor overload |
| 3 | Low refrigerant pressure |
| 4 | Thermal battery not charged |
| 5 | Sensor failure |
| 6 | Power failure |

---

# 8. Example Modbus Read

Example: Read milk temperature

```
Slave ID : 01
Function : 04
Register : 30001
Length : 01
```

Response:

```
01 04 02 00 FA CRC
```

`00FA = 250 → 25.0 °C`

---

# 9. Typical IoT Gateway Architecture

```
BMC Controller
│ RS485 Modbus
IoT Gateway
(ESP32 / STM32 / Linux)
4G / NB-IoT
MQTT
Cloud Dashboard
```

---

# 10. Recommended Sensors for BMC IoT

| Parameter | Sensor |
| ------------------ | ---------------------- |
| Milk temperature | PT100 / DS18B20 |
| Tank level | Ultrasonic / Load cell |
| Flow | Milk flow meter |
| Power | Energy meter |
| Compressor current | Hall current sensor |

---

💡 **Important practical note**

Most dairy chillers (including those from Promethean Power Systems) **do not expose native Modbus**, so an **external IoT controller** usually reads sensors directly or taps into PLC signals.

---

If you want, I can also provide:

1️⃣ **Complete SAME54 firmware architecture for BMC IoT controller**
2️⃣ **RS485 Modbus gateway firmware with MQTT cloud upload**
3️⃣ **Full hardware BOM (~₹4500 IoT board) for 1000 milk collection centers**.
(7-7/8)