diff --git a/IOB-WIN-OPC-UA/DATA/CONF/2014.ini b/IOB-WIN-OPC-UA/DATA/CONF/2014.ini index 7da24a5a..707a793c 100644 --- a/IOB-WIN-OPC-UA/DATA/CONF/2014.ini +++ b/IOB-WIN-OPC-UA/DATA/CONF/2014.ini @@ -67,6 +67,8 @@ ENABLE_DYN_DATA=FALSE FORCE_DYN_DATA=TRUE ENABLE_DATA_FILTER=TRUE ENABLE_CLI_RESTART=TRUE +SEND_PZCNT_MODE=DIRECT +;SEND_PZCNT_MODE=TASK DISABLE_SEND_WDST=TRUE diff --git a/IOB-WIN-OPC-UA/DATA/CONF/2015.ini b/IOB-WIN-OPC-UA/DATA/CONF/2015.ini index c7f2ac55..1cbbf2e6 100644 --- a/IOB-WIN-OPC-UA/DATA/CONF/2015.ini +++ b/IOB-WIN-OPC-UA/DATA/CONF/2015.ini @@ -67,6 +67,8 @@ ENABLE_DYN_DATA=FALSE FORCE_DYN_DATA=TRUE ENABLE_DATA_FILTER=TRUE ENABLE_CLI_RESTART=TRUE +;SEND_PZCNT_MODE=DIRECT +SEND_PZCNT_MODE=TASK DISABLE_SEND_WDST=TRUE diff --git a/IOB-WIN-OPC-UA/IobOpc/OpcUaSiemens.cs b/IOB-WIN-OPC-UA/IobOpc/OpcUaSiemens.cs index 615d9862..614f4615 100644 --- a/IOB-WIN-OPC-UA/IobOpc/OpcUaSiemens.cs +++ b/IOB-WIN-OPC-UA/IobOpc/OpcUaSiemens.cs @@ -244,13 +244,35 @@ namespace IOB_WIN_OPC_UA.IobOpc /// public override bool setcontapezziPLC(int newPzCount) { + lgInfo($"Richiesto setcontapezziPLC | {newPzCount}"); bool answ = false; if (memMap != null && memMap.mMapWrite.ContainsKey("forceSetPzCount")) { - // provare x Donati EMCO e Siemens Rama Tenditalia - Dictionary task2add = new Dictionary(); - task2add.Add("forceSetPzCount", $"{newPzCount}"); - executeTasks(task2add); + // modalità invio secondo richiesta + string sendMode = getOptPar("SEND_PZCNT_MODE"); + if (sendMode == "TASK") + { + Dictionary task2add = new Dictionary(); + task2add.Add("forceSetPzCount", $"{newPzCount}"); + executeTasks(task2add); + } + else + { + // provare x Donati EMCO e Siemens Rama Tenditalia + var ListTempParams = new List(); + // aggiungo reset caricamento + objItem writeReq = new objItem() + { + uid = "forceSetPzCount", + reqValue = $"{newPzCount}", + name = "forceSetPzCount" + }; + ListTempParams.Add(writeReq); + // effettua chiamata scrittura verso impianto x il solo reset...... + plcWriteParams(ref ListTempParams); + } + answ = true; + lgInfo($"Eseguito scrittura OPC-UA su nodo setcontapezziPLC | sendMode: {sendMode}"); } else {