completata gestione variabili analogiche "libere"

This commit is contained in:
Samuele E. Locatelli
2017-06-28 20:18:40 +02:00
parent bdc049eb57
commit b578a27c0b
2 changed files with 31 additions and 33 deletions
+30 -33
View File
@@ -1039,7 +1039,7 @@ namespace MTC_Adapter
/// <summary>
/// Vettore SAMPLES letti da area AnalogData
/// </summary>
public Event[] mAnalogDataSamples;
public Sample[] mAnalogDataSamples;
#endregion
@@ -1445,6 +1445,15 @@ namespace MTC_Adapter
Array.Resize<otherData>(ref analogData, numRiga);
if (utils.CRB("verbose")) lg.Info(string.Format("Fine caricamento vettore di {0} variabili analogiche gestite", numRiga));
// ora inizializzo l'insieme dei samples delle var analogiche
mAnalogDataSamples = new Sample[numRiga];
for (int i = 0; i < numRiga; i++)
{
mAnalogDataSamples[i] = new Sample("AV_" + analogData[i].varName);
mAdapter.AddDataItem(mAnalogDataSamples[i]);
}
if (utils.CRB("verbose")) lg.Info(string.Format("inizializzato vettore di {0} MTC.SAMPLES delle variabili analogiche", numRiga));
}
/// <summary>
/// Lettura file gestione dati status da PLC
@@ -1482,7 +1491,7 @@ namespace MTC_Adapter
if (utils.CRB("verbose")) lg.Info(string.Format("Fine caricamento vettore di {0} variabili status gestite", numRiga));
// ora inizializzo l''insieme degli eventi di status
// ora inizializzo l'insieme degli eventi di status
mStatusEvents = new Event[numRiga];
for (int i = 0; i < numRiga; i++)
{
@@ -2091,9 +2100,11 @@ namespace MTC_Adapter
sb2.AppendLine(string.Format("UT: ToolId {0} | VitaRes {1} | TipoVita {2} ", vettUnOp[i].mUnOpToolId.Value, vettUnOp[i].mUnOpVitaRes.Value, vettUnOp[i].mUnOpVitaResType.Value));
}
parentForm.dataMonitor_2 = sb2.ToString();
// gestisco lettura dati status da PLC...
getStatusDataFromPlc();
// gestisco lettura dati analogici da PLC...
getAnalogDataFromPlc();
}
/// <summary>
/// Legge dati globali...
@@ -3236,8 +3247,6 @@ namespace MTC_Adapter
// gestisco lettura dati manutenzione da PLC...
getMtzDataFromPlc();
// gestisco lettura dati analogici da PLC...
getAnalogDataFromPlc();
// reload dati da file...
reloadDataFromFile();
@@ -3476,39 +3485,27 @@ namespace MTC_Adapter
public void processAnalogData(uint[] tabDatiAnag, otherData[] analogData)
{
// uno ad uno vado a inserirli nella mappa dei dati dell'adapter...
int numero = 0;
uint valRead;
StringBuilder sb = new StringBuilder();
double analogVal = 0;
for (int i = 0; i < analogData.Length; i++)
{
numero = 0;
valRead = 0;
// decodifico...
if (analogData[i].varName.StartsWith("Axis_"))
// gestisco in modalità "lazy" qualsiasi variabile (dividendo x opportuno fattore conversione...)
try
{
if (analogData[i].varName.EndsWith("_Load"))
{
try
{
numero = Convert.ToInt32(analogData[i].varName.Replace("Axis_", "").Replace("_Load", ""));
}
catch
{ }
if (numero > 0)
{
try
{
valRead = tabDatiAnag[i];
}
catch (Exception exc)
{
valRead = 0;
lg.Error(string.Format("Errore in recupero load assi:{0}parametro: {1}{0}i: {2}{0}Exc: {3}", Environment.NewLine, analogData[i].varName, i, exc));
}
istLoadAssi[numero - 1] = valRead;
}
}
analogVal = ((double)tabDatiAnag[i]) / utils.CRI("fattDecVA");
}
catch (Exception exc)
{
analogVal = 0;
lg.Error(string.Format("Errore in recupero valore analogico:{0}parametro: {1}{0}i: {2}{0}Exc: {3}", Environment.NewLine, analogData[i].varName, i, exc));
}
// salvo vettore eventi...
mAnalogDataSamples[i].Value = analogVal;
// accodo ultimi codici in visualizzazione...
sb.AppendLine(string.Format("{0}", mAnalogDataSamples[i]).Replace("|", " | "));
}
// aggiungo i vari analogici rilevati
parentForm.dataMonitor_3 += sb.ToString();
}
/// <summary>
/// processa dataLayer e se necessario salva/mostra
+1
View File
@@ -60,6 +60,7 @@
<add key="testCharSep" value="|"/>
<add key="fattdecimale" value="1000"/>
<add key="fattConvDistAssi" value="1000"/>
<add key="fattDecVA" value="1000"/>
<!--conf file-->
<add key="dataPath" value="DATA"/>
<add key="dataConfPath" value="DATA\CONF"/>