From 01b6cd91e450478dccc394c7009b678d436199eb Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Wed, 4 Jun 2025 12:29:06 +0200 Subject: [PATCH 1/3] update valori minimi invio dati in REDIS --- IOB-WIN-FORM/Iob/Simula.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/IOB-WIN-FORM/Iob/Simula.cs b/IOB-WIN-FORM/Iob/Simula.cs index 165cce4c..93cdf8bc 100644 --- a/IOB-WIN-FORM/Iob/Simula.cs +++ b/IOB-WIN-FORM/Iob/Simula.cs @@ -405,7 +405,7 @@ namespace IOB_WIN_FORM.Iob taskDone.Add(item.Key, taskVal); // salvo SIMULAZIONE dati scambiati: lunghezza string - trackExchData(taskVal.Length, 256); + trackExchData(taskVal.Length, 1792); } } } @@ -817,7 +817,7 @@ namespace IOB_WIN_FORM.Iob answ = true; // salvo SIMULAZIONE dati scambiati: lunghezza string - trackExchData(rawVal.Length, 256); + trackExchData(rawVal.Length, 1280); } } return answ; @@ -1157,7 +1157,7 @@ namespace IOB_WIN_FORM.Iob } lgInfo($"S01: Valori contatori: contapezzi macchina contapezziPLC: {contapezziPLC} | contapezziIOB: {contapezziIOB} | contapezziPLC > contapezziIOB"); // salvo SIMULAZIONE dati scambiati: contapezzi 8 byte (parziale, totale, richiesti, mancanti) - trackExchData(32, 256); + trackExchData(16, 768); } } } @@ -1718,7 +1718,7 @@ namespace IOB_WIN_FORM.Iob trackDynData(kvpFlux[0], kvpFlux[1]); // salvo SIMULAZIONE dati scambiati: lunghezza val string - trackExchData(fLog2send.valString.Length, 256); + trackExchData(fLog2send.valString.Length, 1536); } } } @@ -1867,7 +1867,7 @@ namespace IOB_WIN_FORM.Iob trackDynData(currData[0], currData[1]); // salvo SIMULAZIONE dati scambiati: lunghezza val string - trackExchData(fLog2send.valString.Length, 256); + trackExchData(fLog2send.valString.Length, 1024); } } } From 08745f7fd22d9eddc1b8bf759c080daab2da6863 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Wed, 4 Jun 2025 16:26:27 +0200 Subject: [PATCH 2/3] refresh proj --- IOB-WIN-MTC/IOB-WIN-MTC.csproj | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/IOB-WIN-MTC/IOB-WIN-MTC.csproj b/IOB-WIN-MTC/IOB-WIN-MTC.csproj index 06d8590e..927bfd31 100644 --- a/IOB-WIN-MTC/IOB-WIN-MTC.csproj +++ b/IOB-WIN-MTC/IOB-WIN-MTC.csproj @@ -310,9 +310,15 @@ Always - - - + + Always + + + Always + + + Always + From a7dfaf423ea4637cc60c414b4df76f8bda96d3e2 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Wed, 4 Jun 2025 17:08:46 +0200 Subject: [PATCH 3/3] Update MTC e SHelly x track dati da pacchetti raw ricevuti --- IOB-WIN-FORM/Iob/Generic.Protected.cs | 20 ++++++++++++++++++++ IOB-WIN-MTC/Iob/MTConn.cs | 14 ++++++++++++++ IOB-WIN-SHELLY/Iob/ShellyClient.cs | 2 ++ 3 files changed, 36 insertions(+) diff --git a/IOB-WIN-FORM/Iob/Generic.Protected.cs b/IOB-WIN-FORM/Iob/Generic.Protected.cs index 8500539f..474e256c 100644 --- a/IOB-WIN-FORM/Iob/Generic.Protected.cs +++ b/IOB-WIN-FORM/Iob/Generic.Protected.cs @@ -3614,6 +3614,26 @@ namespace IOB_WIN_FORM.Iob } } + + /// + /// Track dati ricevuti generici (serializzando) + /// + /// + protected void trackExchDataRaw(object genObj, long val2rec = 256) + { + try + { + // salvo indicazione valore ricevuto + string rawVal = JsonConvert.SerializeObject(genObj); + // salvo dim caratteri ricevuti + trackExchData(rawVal.Length, val2rec); + } + catch (Exception exc) + { + lgError($"trackExchDataRaw | errore in fase di track obj ricevuto{Environment.NewLine}{exc}"); + } + } + /// /// Accumulatore counter byte x inviare meno record in REDIS /// diff --git a/IOB-WIN-MTC/Iob/MTConn.cs b/IOB-WIN-MTC/Iob/MTConn.cs index 8e04f676..1d1193a3 100644 --- a/IOB-WIN-MTC/Iob/MTConn.cs +++ b/IOB-WIN-MTC/Iob/MTConn.cs @@ -1,6 +1,7 @@ using IOB_UT_NEXT; using IOB_UT_NEXT.Config; using MapoSDK; +using MTConnect.Assets; using MTConnect.Clients; using MTConnect.Devices; using MTConnect.Observations; @@ -16,6 +17,7 @@ using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; using System.Xml.Linq; +using static System.Windows.Forms.VisualStyles.VisualStyleElement; namespace IOB_WIN_MTC.Iob { @@ -1028,6 +1030,7 @@ namespace IOB_WIN_MTC.Iob { processObservation(observation, forceSend); } + } } } @@ -1559,11 +1562,17 @@ namespace IOB_WIN_MTC.Iob queueInEnabCurr = true; connectionOk = true; lastCurrent = DateTime.Now; + int docSize = 0; + string rawVal = ""; foreach (var asset in doc.Assets) { // Print AssetId to the Console lgInfo($"Asset: {asset.AssetId}"); + rawVal = JsonConvert.SerializeObject(asset); + docSize += rawVal.Length; } + // salvo dim caratteri ricevuti + trackExchData(docSize, 1024); } private void MTC_ref_ClientStarted(object sender, EventArgs e) @@ -1685,6 +1694,8 @@ namespace IOB_WIN_MTC.Iob { lgInfo($"STEP 03 invio dati di {elencoDataItems.Count} records"); sendDataItemsList(elencoDataItems); + // provoa a tracciare dataitems... + trackExchDataRaw(elencoDataItems, 1024); } hasReadItems = true; lgInfo($"STEP 04: memorizzati {dataItemMem.Count} oggetti in memoria"); @@ -1705,6 +1716,7 @@ namespace IOB_WIN_MTC.Iob lastCurrent = DateTime.Now; lgTrace("SAMPLE received"); checkAndSend(document, false); + trackExchDataRaw(document, 1024); } /// @@ -1865,6 +1877,7 @@ namespace IOB_WIN_MTC.Iob } } lgTrace(sMsg); + trackExchDataRaw(observ, 1024); } /// @@ -1892,6 +1905,7 @@ namespace IOB_WIN_MTC.Iob } } lgTrace(sMsg); + trackExchDataRaw(observation, 1024); } #endregion Private Methods diff --git a/IOB-WIN-SHELLY/Iob/ShellyClient.cs b/IOB-WIN-SHELLY/Iob/ShellyClient.cs index ea50fbdd..d5df8780 100644 --- a/IOB-WIN-SHELLY/Iob/ShellyClient.cs +++ b/IOB-WIN-SHELLY/Iob/ShellyClient.cs @@ -124,6 +124,8 @@ namespace IOB_WIN_SHELLY.Iob //outData.Add(item.Key, outValDbl.ToString("F3", CultureInfo.InvariantCulture)); } } + // traccio dati ricevuti + trackExchDataRaw(lastShellyResp, 1024); } return outData; }