From 07fe5b23d7ea7d47d03cec99533bde6bd7ae7830 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Mon, 3 Feb 2025 16:00:32 +0100 Subject: [PATCH] Update adapter x GWMS Pizzaferri con gestione contatore in decremento NON trasmesso + test log allarmi x capire problema rilievi extra --- IOB-WIN-FORM/Iob/Generic.cs | 14 +++++++++++++- IOB-WIN-MBUS/IobModbustTCP/ModbusTCPHam.cs | 15 +++++++++++++++ IOB-WIN-SIEMENS/IobSiemens/SiemensComeca.cs | 15 +++++++++++++++ 3 files changed, 43 insertions(+), 1 deletion(-) diff --git a/IOB-WIN-FORM/Iob/Generic.cs b/IOB-WIN-FORM/Iob/Generic.cs index 3105cbd7..c3cf731d 100644 --- a/IOB-WIN-FORM/Iob/Generic.cs +++ b/IOB-WIN-FORM/Iob/Generic.cs @@ -4152,7 +4152,7 @@ namespace IOB_WIN_FORM.Iob /// - invio in blocco pezzi /// - aggiornamento del contapezzi (passato come ref) x nuovo valore post invio /// - public void trySendPzCountBlock(string forceMachName) + protected virtual void trySendPzCountBlock(string forceMachName) { // in primis HA SENSO procedere SOLO SE server MP è Online... if (MPOnline) @@ -5678,12 +5678,24 @@ namespace IOB_WIN_FORM.Iob // di discesa if (item.isChanged(i, (uint)currStatus)) { + lgInfo($"Alarm state change | {item.memAddr} | i: {i} | prev: {item.alarmsState[i]} | curr: {currStatus}"); // registro gli allarmi attivi e trasmetto... 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)(item.alarmsMask[i] & currStatus)); } + else + { + lgError($"Errore in sendAlarmVariations | {item.memAddr} | i: {i} | prev: {item.alarmsState[i]} | curr: {currStatus}"); + } + } + else + { + if (currStatus>0) + { + lgTrace($"Alarm UNCHANGED but Active | {item.memAddr} | i: {i} | prev: {item.alarmsState[i]} | curr: {currStatus}"); + } } } } diff --git a/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPHam.cs b/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPHam.cs index 2b342351..b834795d 100644 --- a/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPHam.cs +++ b/IOB-WIN-MBUS/IobModbustTCP/ModbusTCPHam.cs @@ -87,6 +87,21 @@ namespace IOB_WIN_MBUS.IobModbusTCP B_input = byteSignals; } + /// + /// Effettua verifica se abilitato invio pezzi in blocco e nel caso + /// - invio in blocco pezzi + /// - aggiornamento del contapezzi (passato come ref) x nuovo valore post invio + /// + protected override void trySendPzCountBlock(string forceMachName) + { + // non fa nulla se non accettare lato IOB i pezzi del PLC... su GWMS NON è gestito il contapezzi + if (contapezziIOB != contapezziPLC) + { + contapezziIOB = contapezziPLC; + lgTrace($"Registrata variazione contapezzi"); + } + } + #endregion Protected Methods } } \ No newline at end of file diff --git a/IOB-WIN-SIEMENS/IobSiemens/SiemensComeca.cs b/IOB-WIN-SIEMENS/IobSiemens/SiemensComeca.cs index 7590a05a..c50ae98f 100644 --- a/IOB-WIN-SIEMENS/IobSiemens/SiemensComeca.cs +++ b/IOB-WIN-SIEMENS/IobSiemens/SiemensComeca.cs @@ -200,6 +200,21 @@ namespace IOB_WIN_SIEMENS.IobSiemens B_input = byteSignals; } + /// + /// Effettua verifica se abilitato invio pezzi in blocco e nel caso + /// - invio in blocco pezzi + /// - aggiornamento del contapezzi (passato come ref) x nuovo valore post invio + /// + protected override void trySendPzCountBlock(string forceMachName) + { + // non fa nulla se non accettare lato IOB i pezzi del PLC... su GWMS NON è gestito il contapezzi + if (contapezziIOB != contapezziPLC) + { + contapezziIOB = contapezziPLC; + lgTrace($"Registrata variazione contapezzi"); + } + } + #endregion Protected Methods #region Private Methods