From d363a620f4f59048338d3556815f582638fedfb4 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Wed, 3 Nov 2021 17:08:25 +0100 Subject: [PATCH] Update filtraggio ed invio allarmi ModBus --- IOB-UT-NEXT/ToMapo.cs | 3 +- IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json | 36 +++++++++++++- IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json.bak | 52 +++++++++++++++++++++ IOB-WIN-NEXT/IobGeneric.cs | 8 ++-- IOB-WIN-NEXT/IobModbusTCPHam.cs | 4 +- 5 files changed, 94 insertions(+), 9 deletions(-) create mode 100644 IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json.bak diff --git a/IOB-UT-NEXT/ToMapo.cs b/IOB-UT-NEXT/ToMapo.cs index cac2af0e..090ffaf6 100644 --- a/IOB-UT-NEXT/ToMapo.cs +++ b/IOB-UT-NEXT/ToMapo.cs @@ -17,7 +17,7 @@ namespace IOB_UT_NEXT #region Public Fields /// - /// valore di aprtenza x un segnale di blink in caso di inizio variazione + /// valore di partenza x un segnale di blink in caso di inizio variazione /// public int blinkVal = 30; @@ -152,6 +152,7 @@ namespace IOB_UT_NEXT } else { + alarmsBlinkCounter[idx] = 1; alarmsMask[bank] += (uint)1 << idx; } idx++; diff --git a/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json b/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json index bcb583bc..8be1bfee 100644 --- a/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json +++ b/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json @@ -4,7 +4,7 @@ "tipoMem": "DInt", "memAddr": "40901", "index": 901, - "size": 2, + "size": 4, "messages": [ "Basso livello serbatoio", "Alto livello serbatoio", @@ -21,6 +21,22 @@ "##", "Allarme rilevatore gas 3", "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", "##" ] }, @@ -29,7 +45,7 @@ "tipoMem": "DInt", "memAddr": "40907", "index": 907, - "size": 2, + "size": 4, "messages": [ "##", "Pulsante di Emergenza Premuto", @@ -46,6 +62,22 @@ "##", "##", "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", "##" ] } diff --git a/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json.bak b/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json.bak new file mode 100644 index 00000000..bcb583bc --- /dev/null +++ b/IOB-WIN-NEXT/DATA/CONF/PIZ05_alarm.json.bak @@ -0,0 +1,52 @@ +[ + { + "description": "Allarmi Impianto", + "tipoMem": "DInt", + "memAddr": "40901", + "index": 901, + "size": 2, + "messages": [ + "Basso livello serbatoio", + "Alto livello serbatoio", + "Errore trasmettitore livello", + "Bassa pressione serbatoio", + "Alta pressione serbatoio", + "##", + "##", + "Allarme rilevatore gas 1", + "##", + "##", + "Allarme rilevatore gas 2", + "##", + "##", + "Allarme rilevatore gas 3", + "##", + "##" + ] + }, + { + "description": "Emergenza", + "tipoMem": "DInt", + "memAddr": "40907", + "index": 907, + "size": 2, + "messages": [ + "##", + "Pulsante di Emergenza Premuto", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##", + "##" + ] + } +] \ No newline at end of file diff --git a/IOB-WIN-NEXT/IobGeneric.cs b/IOB-WIN-NEXT/IobGeneric.cs index 3e72adce..c38ea12b 100644 --- a/IOB-WIN-NEXT/IobGeneric.cs +++ b/IOB-WIN-NEXT/IobGeneric.cs @@ -4616,10 +4616,10 @@ namespace IOB_WIN_NEXT { ActiveAlarmList.Add($"{i:000}-{AlarmList.ElementAt(i)}"); } - else - { - ActiveAlarmList.Add($"Unknown Bit.{i}"); - } + //else + //{ + // ActiveAlarmList.Add($"Unknown Bit.{i}"); + //} } } } diff --git a/IOB-WIN-NEXT/IobModbusTCPHam.cs b/IOB-WIN-NEXT/IobModbusTCPHam.cs index f25353d8..83148ecb 100644 --- a/IOB-WIN-NEXT/IobModbusTCPHam.cs +++ b/IOB-WIN-NEXT/IobModbusTCPHam.cs @@ -85,10 +85,10 @@ namespace IOB_WIN_NEXT numErrors++; } // registro gli allarmi attivi e trasmetto... - if (sendAlarmVariations(item.memAddr, i, item.alarmsState[i], (uint)currStatus, item.messages)) + if (sendAlarmVariations(item.memAddr, i, item.alarmsState[i], (uint)(item.alarmsMask[i] & currStatus), item.messages)) { // se inviato --> salvo stato da current... - item.updStatusVal(i, (uint)currStatus); + item.updStatusVal(i, (uint)(item.alarmsMask[i] & currStatus)); } } }