diff --git a/IOB-WIN-NEXT/IobOpcUa.cs b/IOB-WIN-NEXT/IobOpcUa.cs index 97882859..a99eb267 100644 --- a/IOB-WIN-NEXT/IobOpcUa.cs +++ b/IOB-WIN-NEXT/IobOpcUa.cs @@ -53,10 +53,6 @@ namespace IOB_WIN_NEXT /// protected DateTime lastCurrent = DateTime.Now; - /// - /// Variabile numero errori controllo --> se supera soglia 20 --> disconnette - /// - protected int numErroriCheck = 0; /// /// Oggetto MAIN x connessione MTC @@ -930,7 +926,7 @@ namespace IOB_WIN_NEXT } } // se supero soglia errori lettura --> disconnetto e resetto - if (numErroriCheck > 100) + if (numErroriCheck > maxErroriCheck) { lgInfo($"numErroriCheck: {numErroriCheck} --> richiesta disconnessione adapter con tryDisconnect"); diff --git a/IOB-WIN-NEXT/IobSiemens.cs b/IOB-WIN-NEXT/IobSiemens.cs index 614bb0a6..3af6857a 100644 --- a/IOB-WIN-NEXT/IobSiemens.cs +++ b/IOB-WIN-NEXT/IobSiemens.cs @@ -176,7 +176,7 @@ namespace IOB_WIN_NEXT { lastMemWrite.Add(memAddrWrite, adesso.AddMinutes(-1)); } - // ora mi leggo valore ultimas crittura e confronto con adesso + // ora mi leggo valore ultima scrittura e confronto con adesso try { doWrite = (lastMemWrite[memAddrWrite].AddSeconds(vetoSeconds) < adesso); @@ -188,7 +188,8 @@ namespace IOB_WIN_NEXT // se encessario --> LOG! if (doWrite) { - lgInfo(logValue); + // 2022.03.16 portato a livello TRACE x evitare log troppo verboso + lgTrace(logValue); lastMemWrite[memAddrWrite] = adesso; } } @@ -1086,6 +1087,7 @@ namespace IOB_WIN_NEXT else { lgError($"Mismatch dimensione array memoria: indirizzo: {memAddrRead} | passato array di {Value.Length} byte, letti da S7 {memByteRead.Length} byte"); + numErroriCheck++; } string titolo = $"READ BLOCK MEM BYTE: {parametri.memAddrRead} --> {numByte} byte"; if (verboseLog) @@ -1117,6 +1119,14 @@ namespace IOB_WIN_NEXT TimingData.addResult(cIobConf.codIOB, string.Format("{0}|{1}", parametri.memAddrRead, numByte), sw.ElapsedTicks); } } + // se supero soglia errori lettura --> disconnetto e resetto + if (numErroriCheck > maxErroriCheck) + { + lgInfo($"numErroriCheck: {numErroriCheck} --> richiesta disconnessione adapter con tryDisconnect"); + numErroriCheck = 0; + tryDisconnect(); + } + return answ; }