![]() |
|
HELP! How to read this kind of register - 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! How to read this kind of register (/showthread.php?tid=5653) |
HELP! How to read this kind of register - Tuwat47 - 04.10.2024 Hi everyone, I've integrated a Caleffi Conteca device on my LM and everything works well. I'll share my .json just after I'll solve this problem. I would like to add the register in attached and have a different GA output for every kind of alarm. For example: - bit0 - Errore on Flow Temperature - 0/5/0 - bit1 - Errore on return temperature - 0/5/1 - bit6 - Low Battery Alarm - 0/5/2 and go on for the other bit of alarm. Can someone explain me how to do? Thanks in advance. RE: HELP! How to read this kind of register - Daniel - 04.10.2024 see this https://forum.logicmachine.net/showthread.php?tid=839&pid=6729#pid6729 RE: HELP! How to read this kind of register - Tuwat47 - 07.10.2024 (04.10.2024, 15:59)Daniel Wrote: see this Hi Admin and thanks for your answer. My LogicMachine knowledge is not so pro to let me know how go on with this issue. Can you halp me a little bit more? Code: {
"name": "Alarm Status - bit 0 - Error flow temperature",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask" : what can I use for reading bit0?
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm Status - bit 1 - Error return temperature",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask" : what can I use for reading bit1?
"value_custom": {"01": "OK", "1": "Alarm"}
},Please consider to help me. RE: HELP! How to read this kind of register - admin - 07.10.2024 Use this. I've also fixed incorrect value_custom (should be "0" instead of "01"). Code: {
"name": "Alarm Status - bit 0 - Error flow temperature",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x01,
"value_custom": {"0": "OK", "1": "Alarm"}
},
{
"name": "Alarm Status - bit 1 - Error return temperature",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x02,
"value_custom": {"0": "OK", "1": "Alarm"}
},RE: HELP! How to read this kind of register - Tuwat47 - 07.10.2024 Hi Admin I don't have my LM for testing the result, but what do you think if I use this kind of .json for reading every single bit? Code: {
[
{
"name": "Alarm - bit 0 - Error flow temperature",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x1,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 1 - Error return temperature",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x2,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 6 - Low battery alarm",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x40,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 8 - Measurament unit mismatch on main counter",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x100,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 9 - Measurament unit mismatch on counter 1",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x200,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 10 - Measurament unit mismatch on counter 2",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x400,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 11 - Measurament unit mismatch on counter 3",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x800,
"value_custom": {"01": "OK", "1": "Alarm"}
},
{
"name": "Alarm - bit 12 - Measurament unit mismatch on counter 4",
"bus_datatype": "bool",
"datatype": "uint16",
"type": "register",
"address": 119,
"value_bitmask": 0x1000,
"value_custom": {"01": "OK", "1": "Alarm"}
},
]
}If it will work I'll post my .json for Caleffi Conteca. (07.10.2024, 08:20)admin Wrote: Use this. I've also fixed incorrect value_custom (should be "0" instead of "01"). Ok, perfect. I will try as soon as possible. Thanks in advance for your help Admin. RE: HELP! How to read this kind of register - admin - 07.10.2024 Fixed profile attached. RE: HELP! How to read this kind of register - nhemtman - 11.03.2025 Hi, Could any of you help me? I need help with registers 138-139. It's a BITMAP32 register, where 0-15 are read as LSW and 16-31 are read as MSW (see example below), how are these parameterized in the modbus profile? I also attached the manual and the modbus profile I made. Thanks! 0x00100071 > Byte 1 ( 0x00 ), Byte 2 (0x71), Byte 3 (0x00), Byte 4 (0x10) MSB, LSW MSB: Most significant byte first LSW: Least significant word first In That example the following bits are set(counting starting at 0):
RE: HELP! How to read this kind of register - admin - 11.03.2025 Use profiler app: https://forum.logicmachine.net/showthread.php?tid=5911 Use Value bitmask option. Click the calculator icon to select the required bits. Set Modbus data type to uint32 and Object data type to 1 bit. RE: HELP! How to read this kind of register - nhemtman - 11.03.2025 (11.03.2025, 07:18)admin Wrote: Use profiler app: https://forum.logicmachine.net/showthread.php?tid=5911 Thanks! |