From 4f5e3c1cd53af88ffe60a9a74b779752e6e8d4e1 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Thu, 19 Jun 2025 13:02:57 +0200 Subject: [PATCH] update IobConbf x nuovo valore scaduto resent disabilitabile --- IOB-UT-NEXT/Config/Base/DeviceDto.cs | 5 +++++ IOB-UT-NEXT/Config/IobConfTree.cs | 2 ++ IOB-WIN-FORM/Iob/Generic.Protected.cs | 3 ++- IOB-WIN-PING/DATA/CONF/3024-PING.ini | 1 + IOB-WIN-PING/DATA/CONF/FTP-PING.ini | 1 + IOB-WIN-PING/DATA/CONF/PING.ini | 1 + 6 files changed, 12 insertions(+), 1 deletion(-) diff --git a/IOB-UT-NEXT/Config/Base/DeviceDto.cs b/IOB-UT-NEXT/Config/Base/DeviceDto.cs index 862a75a3..3c3fe305 100644 --- a/IOB-UT-NEXT/Config/Base/DeviceDto.cs +++ b/IOB-UT-NEXT/Config/Base/DeviceDto.cs @@ -47,6 +47,11 @@ namespace IOB_UT_NEXT.Config.Base /// public bool DisabSigIn { get; set; } = false; + /// + /// Indica che sono disabilitati i resend alla scadenza del periodo di controllo anche in mancanza di variazione (tipicametne x gli adapter secondari come PING) + /// + public bool DisabResendScaduto { get; set; } = false; + /// /// Indica che sono disabilitate le fasi controllo stato/semafori (tipicamente x impianti /// con PLC "suddivisi", PLC + HMI) diff --git a/IOB-UT-NEXT/Config/IobConfTree.cs b/IOB-UT-NEXT/Config/IobConfTree.cs index 910e39ba..9dbc8920 100644 --- a/IOB-UT-NEXT/Config/IobConfTree.cs +++ b/IOB-UT-NEXT/Config/IobConfTree.cs @@ -250,6 +250,7 @@ namespace IOB_UT_NEXT.Config DisabPing = bool.Parse(fIni.ReadString("OPTPAR", "NO_PING", "false")), DisabStateCh = bool.Parse(fIni.ReadString("IOB", "DIS_STATE_CH", "false")), DisabSigIn = bool.Parse(fIni.ReadString("OPTPAR", "VETO_SIG_IN", "false")), + DisabResendScaduto = bool.Parse(fIni.ReadString("OPTPAR", "VETO_SCADUTO", "false")), EnabMemRewrite = bool.Parse(fIni.ReadString("OPTPAR", "ENABLE_MEM_REWRITE", "true")), EnabProgName = bool.Parse(fIni.ReadString("CNC", "GETPRGNAME", "true")), EnabPzCount = utils.CRB("enableContapezzi"), @@ -295,6 +296,7 @@ namespace IOB_UT_NEXT.Config exclOptPar.Add("SET_NUM_COM"); exclOptPar.Add("VETO_QUEUE_IN"); exclOptPar.Add("VETO_SIG_IN"); + exclOptPar.Add("VETO_SCADUTO"); // multi... if (!string.IsNullOrEmpty(fIni.ReadString("OPTPAR", "IS_MULTI", "false"))) diff --git a/IOB-WIN-FORM/Iob/Generic.Protected.cs b/IOB-WIN-FORM/Iob/Generic.Protected.cs index 300f2867..b6c9a60d 100644 --- a/IOB-WIN-FORM/Iob/Generic.Protected.cs +++ b/IOB-WIN-FORM/Iob/Generic.Protected.cs @@ -1,5 +1,6 @@ using EgwProxy.Ftp; using IOB_UT_NEXT; +using IOB_UT_NEXT.Config; using MapoSDK; using Newtonsoft.Json; using NLog; @@ -4548,7 +4549,7 @@ namespace IOB_WIN_FORM.Iob // + di un timeout di controllo... DateTime adesso = DateTime.Now; bool scaduto = Math.Abs(adesso.Subtract(lastSigVarSent).TotalSeconds) > lastSigVarVeto; - if (B_output != B_previous || scaduto) + if (B_output != B_previous || (scaduto && !IOBConfFull.Device.DisabResendScaduto)) { lgDebug($"processAllMemory | B_output: {B_output} | B_previous: {B_previous}"); accodaSigIN(ref currDispData); diff --git a/IOB-WIN-PING/DATA/CONF/3024-PING.ini b/IOB-WIN-PING/DATA/CONF/3024-PING.ini index bfec19d2..b7fa6505 100644 --- a/IOB-WIN-PING/DATA/CONF/3024-PING.ini +++ b/IOB-WIN-PING/DATA/CONF/3024-PING.ini @@ -49,6 +49,7 @@ VETO_SIG_IN=false B_IN_OFF=0 B_IN_ON=129 VETO_PING_SEC=6 +VETO_SCADUTO=TRUE [BRANCH] NAME=master diff --git a/IOB-WIN-PING/DATA/CONF/FTP-PING.ini b/IOB-WIN-PING/DATA/CONF/FTP-PING.ini index f0816111..c435924c 100644 --- a/IOB-WIN-PING/DATA/CONF/FTP-PING.ini +++ b/IOB-WIN-PING/DATA/CONF/FTP-PING.ini @@ -51,6 +51,7 @@ VETO_SIG_IN=false B_IN_OFF=0 B_IN_ON=1 VETO_PING_SEC=6 +VETO_SCADUTO=TRUE ;abbasso freq di base gestione timerIntMs=250 diff --git a/IOB-WIN-PING/DATA/CONF/PING.ini b/IOB-WIN-PING/DATA/CONF/PING.ini index 9dc25f5c..41973b1c 100644 --- a/IOB-WIN-PING/DATA/CONF/PING.ini +++ b/IOB-WIN-PING/DATA/CONF/PING.ini @@ -49,6 +49,7 @@ VETO_SIG_IN=false B_IN_OFF=0 B_IN_ON=1 VETO_PING_SEC=6 +VETO_SCADUTO=TRUE [BRANCH]