diff --git a/MTC_Adapter/MTC_Adapter/AdapterGeneric.cs b/MTC_Adapter/MTC_Adapter/AdapterGeneric.cs
index e4931ae..ee6340f 100644
--- a/MTC_Adapter/MTC_Adapter/AdapterGeneric.cs
+++ b/MTC_Adapter/MTC_Adapter/AdapterGeneric.cs
@@ -2481,9 +2481,12 @@ namespace MTC_Adapter
string value = "";
try
{
- if (!persistenceLayer.TryGetValue(keyVal, out value))
+ if (persistenceLayer != null)
{
- persistenceLayer.Add(keyVal, "0");
+ if (!persistenceLayer.TryGetValue(keyVal, out value))
+ {
+ persistenceLayer.Add(keyVal, "0");
+ }
}
}
catch
diff --git a/MTC_Adapter/MTC_Adapter/AdapterOsai.cs b/MTC_Adapter/MTC_Adapter/AdapterOsai.cs
index 8285e21..b84a00d 100644
--- a/MTC_Adapter/MTC_Adapter/AdapterOsai.cs
+++ b/MTC_Adapter/MTC_Adapter/AdapterOsai.cs
@@ -451,7 +451,7 @@ namespace MTC_Adapter
currACK_DW = new byte[1];
}
}
- catch(Exception exc)
+ catch (Exception exc)
{
lg.Error(string.Format("Errore in strobe:{0}{1}", Environment.NewLine, exc));
}
@@ -1109,31 +1109,27 @@ namespace MTC_Adapter
private void getMtzDataFromPlc()
{
bool needSave = false;
-#if false
// recupero i dati di manutenzione dall'area di memoria IN BLOCCO
- int memIndex = 14000;
- byte[] tabDatiMtz = new byte[4 * maintData.Length];
+ int memIndex = 19166;
+ uint[] tabDatiMtz = new uint[maintData.Length];
inizio = DateTime.Now;
- OsaiMemRW(R, FANUC.MemType.R, memIndex, ref tabDatiMtz);
- if (utils.CRB("recTime")) TimingData.addResult(string.Format("R{0}-DatiMtz", tabDatiMtz.Length), DateTime.Now.Subtract(inizio).Ticks);
+ OsaiMemRW_DWord(R, OSAI.MemTypeWord.MW_CODE, memIndex, ref tabDatiMtz);
+ if (utils.CRB("recTime")) TimingData.addResult(string.Format("R{0}-DatiMtz", tabDatiMtz.Length * 4), DateTime.Now.Subtract(inizio).Ticks);
// uno ad uno vado a inserirli nella mappa dei dati dell'adapter...
- int shift = 4; // 32bit
int numero = 0;
uint valRead = 0;
for (int i = 0; i < maintData.Length; i++)
{
numero = 0;
valRead = 0;
- // 2016.07.06 uso indice i * 4 x selezionare area memoria...
- //shift = Convert.ToInt32(maintData[i].codNum) - 1;
if (maintData[i].varName == "ACC_TIME")
{
- istOreMaccOn = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istOreMaccOn = tabDatiMtz[i];
}
else if (maintData[i].varName == "ACC_TIME_WORK")
{
- istOreMaccLav = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istOreMaccLav = tabDatiMtz[i];
}
else if (maintData[i].varName.StartsWith("Path_"))
{
@@ -1148,7 +1144,7 @@ namespace MTC_Adapter
}
if (numero > 0)
{
- vettPath[numero - 1].mPathPartCount.Value = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ vettPath[numero - 1].mPathPartCount.Value = tabDatiMtz[i];
}
}
}
@@ -1164,7 +1160,7 @@ namespace MTC_Adapter
{ }
if (numero > 0)
{
- istDistMovAssi[numero - 1] = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istDistMovAssi[numero - 1] = tabDatiMtz[i];
}
}
else if (maintData[i].varName.EndsWith("_Invers"))
@@ -1180,12 +1176,12 @@ namespace MTC_Adapter
// 2016.07.06 debug di valori che potrebbero essere nulli...
try
{
- valRead = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ valRead = tabDatiMtz[i];
}
catch (Exception exc)
{
valRead = 0;
- lg.Error(string.Format("Errore in recupero num inversioni:{0}parametro: {1}{0}shift: {2}{0}i: {3}{0}Exc: {4}", Environment.NewLine, maintData[i].varName, shift, i, exc));
+ lg.Error(string.Format("Errore in recupero num inversioni:{0}parametro: {1}{0}i: {2}{0}Exc: {3}", Environment.NewLine, maintData[i].varName, i, exc));
}
istNumInvAssi[numero - 1] = valRead;
}
@@ -1203,12 +1199,12 @@ namespace MTC_Adapter
// 2016.07.06 debug di valori che potrebbero essere nulli...
try
{
- valRead = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ valRead = tabDatiMtz[i];
}
catch (Exception exc)
{
valRead = 0;
- lg.Error(string.Format("Errore in recupero num inversioni:{0}parametro: {1}{0}shift: {2}{0}i: {3}{0}Exc: {4}", Environment.NewLine, maintData[i].varName, shift, i, exc));
+ lg.Error(string.Format("Errore in recupero num inversioni:{0}parametro: {1}{0}i: {2}{0}Exc: {3}", Environment.NewLine, maintData[i].varName, i, exc));
}
istAccTimeAssi[numero - 1] = valRead;
}
@@ -1226,7 +1222,7 @@ namespace MTC_Adapter
{ }
if (numero > 0)
{
- istGiriElettrom[numero - 1] = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istGiriElettrom[numero - 1] = tabDatiMtz[i];
}
}
else if (maintData[i].varName.EndsWith("_NumCambiUT"))
@@ -1239,7 +1235,7 @@ namespace MTC_Adapter
{ }
if (numero > 0)
{
- istNumCambiUt[numero - 1] = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istNumCambiUt[numero - 1] = tabDatiMtz[i];
}
}
}
@@ -1255,7 +1251,7 @@ namespace MTC_Adapter
{ }
if (numero > 0)
{
- istVacPumpWrkTime[numero - 1] = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istVacPumpWrkTime[numero - 1] = tabDatiMtz[i];
}
}
}
@@ -1271,7 +1267,7 @@ namespace MTC_Adapter
{ }
if (numero > 0)
{
- istVacActCount[numero - 1] = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istVacActCount[numero - 1] = tabDatiMtz[i];
}
}
}
@@ -1287,7 +1283,7 @@ namespace MTC_Adapter
{ }
if (numero > 0)
{
- istLubroCount[numero - 1] = BitConverter.ToUInt32(tabDatiMtz, shift * i);
+ istLubroCount[numero - 1] = tabDatiMtz[i];
}
}
}
@@ -1310,11 +1306,9 @@ namespace MTC_Adapter
// salvo se necessario!
if (needSave) parentForm.persistData();
- // -------------------------------------------
-#endif
+ // -------------------------------------------
}
-
///
/// Gestione lettura dati status da PLC
///
@@ -1452,7 +1446,7 @@ namespace MTC_Adapter
// anche il secondo!
procPathOverride(1, currPathData, ref sb);
}
-
+
// se ho allarmi li accodo...
if (allNcData.lastncerror != 0)
{
@@ -1514,7 +1508,6 @@ namespace MTC_Adapter
///
private void loadMaintData()
{
-#if false
// carico dati x Maintenance
if (utils.CRB("verbose")) lg.Info("Inizio caricamento vettore variabili manutenzione gestite");
int totRighe = 0;
@@ -1533,7 +1526,7 @@ namespace MTC_Adapter
if (linea.Substring(0, 1) != "#")
{
//elencoAllarmi[rumRiga] = decodeAlarmLine(linea, ':');
- maintData[numRiga] = decodeOtherData(linea, utils.CRC("testCharSep"), "R", 14000, 4);
+ maintData[numRiga] = decodeOtherData(linea, utils.CRC("testCharSep"), "MW", 19166, 2);
numRiga++;
}
}
@@ -1542,8 +1535,7 @@ namespace MTC_Adapter
// ora trimmo vettore al solo numero VERO dei valori caricati...
Array.Resize(ref maintData, numRiga);
- if (utils.CRB("verbose")) lg.Info(string.Format("Fine caricamento vettore di {0} variabili manutenzione gestite", numRiga));
-#endif
+ if (utils.CRB("verbose")) lg.Info(string.Format("Fine caricamento vettore di {0} variabili manutenzione gestite", numRiga));
}
///
/// Lettura file gestione dati status da PLC
diff --git a/MTC_Adapter/MTC_Adapter/App.config b/MTC_Adapter/MTC_Adapter/App.config
index d3daaeb..0742eef 100644
--- a/MTC_Adapter/MTC_Adapter/App.config
+++ b/MTC_Adapter/MTC_Adapter/App.config
@@ -48,7 +48,7 @@
-
+
diff --git a/MTC_Adapter/MTC_Adapter/MainForm.cs b/MTC_Adapter/MTC_Adapter/MainForm.cs
index c84731b..13e92cd 100644
--- a/MTC_Adapter/MTC_Adapter/MainForm.cs
+++ b/MTC_Adapter/MTC_Adapter/MainForm.cs
@@ -159,12 +159,12 @@ namespace MTC_Adapter
// se abilitato autoload conf leggo file corretto...
if (utils.CRB("autoLoadConf"))
{
- loadXmlFile(defConfFilePath);
- lg.Info("XML LOADED");
loadPersistLayer(defPersLayerFile);
lg.Info("PersLayerFile READ");
agObj.loadPersData();
lg.Info("PersLayerFile LOADED");
+ loadXmlFile(defConfFilePath);
+ lg.Info("XML LOADED");
}
else
{
@@ -179,7 +179,7 @@ namespace MTC_Adapter
gather.Interval = utils.CRI("timerIntMs");
gather.Enabled = true;
- displayTaskAndWait("Running");
+ displayTaskAndWait("Program Running");
createTrayMenu();
displayTaskAndWait("Tray Menu OK");
@@ -1131,9 +1131,12 @@ namespace MTC_Adapter
if (userClickedOK == DialogResult.OK)
{
string XmlConfFile = openFileDial.FileName;
- loadXmlFile(XmlConfFile);
loadPersistLayer(defPersLayerFile);
+ lg.Info("PersLayerFile READ");
agObj.loadPersData();
+ lg.Info("PersLayerFile LOADED");
+ loadXmlFile(XmlConfFile);
+ lg.Info("XML LOADED");
}
}
///