![]() |
|
Help Modbus Datatype - Printable Version +- LogicMachine Forum (https://forum.logicmachine.net) +-- Forum: LogicMachine eco-system (https://forum.logicmachine.net/forumdisplay.php?fid=1) +--- Forum: Gateway (https://forum.logicmachine.net/forumdisplay.php?fid=10) +--- Thread: Help Modbus Datatype (/showthread.php?tid=4707) |
Help Modbus Datatype - Hiller - 11.04.2023 Hi Everybody, I try to conect my Tecalor / Stiebel Eltron heat pump to my KNX System over Modbus TCP IP. With the Modbus Profile Generator I generated a Profile which works, but I got Problems white the Modbus Datatype and Bus Datatype. When I read the Inputregister its wrong, for Exampel it shows 23C in reality its 6,7C. I don't Understand which datatype I need to use. The documentation of my Heat Pump: Code: {
"manufacturer": "Tecalor",
"description": "THZ",
"mapping": [
{
"name": "RAUMISTTEMP",
"address": 1,
"bus_datatype": "float16",
"datatype": "float16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "RAUMSOLLTEMP",
"address": 2,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "AUSSENTEMPERATUR",
"address": 7,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "ISTWERT-HK1",
"address": 8,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "SOLLWERT-HK1",
"address": 9,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "VORLAUFTEMP",
"address": 12,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "RUECKLAUFTEMP",
"address": 13,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "WW -ISTTEMP",
"address": 16,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "WW -SOLLTEMP",
"address": 17,
"bus_datatype": "int16",
"datatype": "int16",
"type": "inputregister",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "RAUMTEMP-TAG",
"address": 1002,
"bus_datatype": "int16",
"datatype": "int16",
"type": "register",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "RAUMTEMP-NACHT",
"address": 1003,
"bus_datatype": "int16",
"datatype": "int16",
"type": "register",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "WW -SOLL-TAG",
"address": 1012,
"bus_datatype": "int16",
"datatype": "int16",
"type": "register",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "WW -SOLL-NACHT",
"address": 1013,
"bus_datatype": "int16",
"datatype": "int16",
"type": "register",
"units": "\u00B0C",
"value_multiplier": 0.1
},
{
"name": "STUFE -TAG",
"address": 1018,
"bus_datatype": "uint16",
"datatype": "uint16",
"type": "register",
"units": "Stufe",
"value_multiplier": 1
},
{
"name": "STUFE -NACHT",
"address": 1019,
"bus_datatype": "uint16",
"datatype": "uint16",
"type": "register",
"units": "Stufe",
"value_multiplier": 1
}
]
}RE: Help Modbus Datatype - admin - 12.04.2023 For values that have a 0.1 multiplier use these settings: Code: "bus_datatype": "float16",
"datatype": "int16"RE: Help Modbus Datatype - Hiller - 12.04.2023 Hi admin, thank you for the fast answer. Its what you said, the register adress is shiftet... when I want to read adress 7 I need to read adress 6. |