Added API

WIP Thread
This commit is contained in:
Lucio Maranta
2018-12-20 13:18:06 +01:00
parent 4a27b1dba4
commit ebfbfd2d9e
9 changed files with 148 additions and 18 deletions
+40 -1
View File
@@ -2,6 +2,7 @@
using Step.Core;
using Step.Model.DTOModels;
using Step.Model.DTOModels.AlarmModels;
using Step.Model.DTOModels.Scada;
using Step.Model.DTOModels.ToolModels;
using Step.NC;
using System.Collections.Generic;
@@ -26,7 +27,6 @@ public static class ThreadsFunctions
private static long ReadToolDataTimer = 0, ReadToolDataTimes = 0;
private static long WatchdogTimer = 0, WatchdogTimes = 0;
private static Thread ConnThread;
#region Functions
@@ -715,6 +715,45 @@ public static class ThreadsFunctions
}
}
public static void ReadScadaData()
{
NcHandler ncHandler = new NcHandler();
Stopwatch sw = new Stopwatch();
try
{
// Try connection
CmsError libraryError = ncHandler.Connect();
if (libraryError.errorCode != 0)
ManageLibraryError(libraryError);
while (true)
{
sw.Restart();
// Check if client is connected
if (ncHandler.numericalControl.NC_IsConnected())
{
// Get new data from PLC
libraryError = ncHandler.ReadScadaData(out List<DTOScadaModel> scadas);
if (libraryError.IsError())
ManageLibraryError(libraryError);
// MessageServices.Current.Publish(NC_MAGAZINE_IS_ACTIVE, null, status);
}
else
RestoreConnection();
sw.Stop();
// Wait
Thread.Sleep(CalcSleepTime(500 , (int)sw.ElapsedMilliseconds));
}
}
catch (ThreadAbortException)
{
}
}
#endregion Functions
#region SupportFunctions