Fix filtraggio anche x eventi MTConnect
This commit is contained in:
+34
-19
@@ -237,10 +237,21 @@ namespace IOB_WIN_NEXT
|
||||
// verifico se salvare
|
||||
bool changed = checkSaveItem(dataItem);
|
||||
// cerco se non sia un dato filtrato in FLUXLOG...
|
||||
|
||||
if (changed || forceSend)
|
||||
// cerco se non sia un dato filtrato in FLUXLOG...
|
||||
bool isFiltered = mtcParams.fluxLogVeto.Contains(dataItem.DataItemId);
|
||||
if (isFiltered)
|
||||
{
|
||||
accodaFLog(sVal, qEncodeFLog(time2, descr, dataItem.CDATA));
|
||||
if (isVerboseLog)
|
||||
{
|
||||
lgInfo($"NON ACCODATO sample per {dataItem.DataItemId} poiché trovato VETO in fluxLogVeto", false);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (changed || forceSend)
|
||||
{
|
||||
accodaFLog(sVal, qEncodeFLog(time2, descr, dataItem.CDATA));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -318,22 +329,19 @@ namespace IOB_WIN_NEXT
|
||||
* B2: pzCount
|
||||
* B3: allarme
|
||||
* B4: manuale
|
||||
* B5: emergenza
|
||||
* B5: emergenza (dipende da state machine se riportare 1 = armata/premuta, vedere conf mtcParams.emergencyArmedTrue)
|
||||
----------------------------------------------------- */
|
||||
|
||||
// Controllo booleano PING e POWERON...
|
||||
string currPowerOn = getDataItemValue(mtcParams.condPowerOn.keyName);
|
||||
// se valido il check ping lo eseguo... altrimenti lo do x buono
|
||||
bool checkPing = !mtcParams.pingAsPowerOn;
|
||||
if (!checkPing)
|
||||
{
|
||||
checkPing = (testPingMachine == IPStatus.Success);
|
||||
}
|
||||
bool isPingOk = (testPingMachine == IPStatus.Success);
|
||||
|
||||
// verifico da target value richiesto...
|
||||
bool checkPowerOn = (currPowerOn == mtcParams.condPowerOn.targetValue);
|
||||
|
||||
// bit 0 (poweron) imposto a 1 SE pingo o PowerOn=="ON"...
|
||||
B_input = (checkPing || checkPowerOn) ? 1 : 0;
|
||||
B_input = ((isPingOk && mtcParams.pingAsPowerOn) || checkPowerOn) ? 1 : 0;
|
||||
|
||||
// variabili RUN...
|
||||
string currRun = getDataItemValue(mtcParams.keyRunMode);
|
||||
@@ -358,11 +366,6 @@ namespace IOB_WIN_NEXT
|
||||
B_input += (1 << 1);
|
||||
}
|
||||
}
|
||||
// emergenza premuta = 1
|
||||
else if (hasEStopTriggered && !mtcParams.emergencyArmedTrue)
|
||||
{
|
||||
B_input += (1 << 5);
|
||||
}
|
||||
// se ho almeno 1 allarme E NON SONO IN AUTO --> ALARM!
|
||||
else if (hasError)
|
||||
{
|
||||
@@ -374,11 +377,23 @@ namespace IOB_WIN_NEXT
|
||||
B_input += (1 << 4);
|
||||
}
|
||||
|
||||
|
||||
// emergenza armata = 1
|
||||
if (!hasEStopTriggered && mtcParams.emergencyArmedTrue)
|
||||
// emergenza armata da riportare con bit True/ 1
|
||||
if (mtcParams.emergencyArmedTrue)
|
||||
{
|
||||
B_input += (1 << 5);
|
||||
//se NON premuta lazo il bit
|
||||
if (!hasEStopTriggered)
|
||||
{
|
||||
B_input += (1 << 5);
|
||||
}
|
||||
}
|
||||
// emergenza armata da riportare come False/0 (!mtcParams.emergencyArmedTrue)
|
||||
else
|
||||
{
|
||||
// se premuta alzo il bit...
|
||||
if (hasEStopTriggered)
|
||||
{
|
||||
B_input += (1 << 5);
|
||||
}
|
||||
}
|
||||
|
||||
DateTime adesso = DateTime.Now;
|
||||
|
||||
Reference in New Issue
Block a user