85 lines
2.9 KiB
C#
85 lines
2.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using CMS_CORE;
|
|
using CMS_CORE.Fanuc;
|
|
using Step.Model.DTOModels;
|
|
using TeamDev.SDK.MVVM;
|
|
|
|
namespace Step.Core
|
|
{
|
|
public static class ThreadsFunctions
|
|
{
|
|
public static bool ReadAlarmsAsync(Nc numericalControl)
|
|
{
|
|
AlarmsModel alarms = new AlarmsModel();
|
|
List<string> tmpAlarms = new List<string>();
|
|
|
|
//if (!numericalControl.NC_IsConnected())
|
|
// numericalControl.NC_Connect();
|
|
|
|
while (true)
|
|
{
|
|
//PAOLO Qui ci sono problemi con il CN
|
|
|
|
//if (numericalControl.NC_IsConnected())
|
|
//{
|
|
// // Read NC active alarms
|
|
// numericalControl.NC_RActiveAlarms(ref tmpAlarms);
|
|
|
|
// // Create response list from strings
|
|
// foreach (string alarmMessage in tmpAlarms)
|
|
// {
|
|
// alarms.NcAlarms.Add(new GenericAlarmModel()
|
|
// {
|
|
// alarmMessage = alarmMessage,
|
|
// id = 1
|
|
// });
|
|
// }
|
|
|
|
// // Get NC max process number
|
|
// ushort maxProcNumber = 0;
|
|
// numericalControl.NC_RProcessesNum(ref maxProcNumber);
|
|
|
|
// // For each process
|
|
// for (ushort i = 1; i <= maxProcNumber; i++)
|
|
// {
|
|
// // Get process active alarms
|
|
// numericalControl.PROC_RActiveAlarms(i, ref tmpAlarms);
|
|
// // Create response list from strings
|
|
// foreach (string alarmMessage in tmpAlarms)
|
|
// {
|
|
// alarms.ProcessAlarms.Add(new ProcessAlarmModel()
|
|
// {
|
|
// alarmMessage = alarmMessage,
|
|
// id = 1,
|
|
// process = i
|
|
// });
|
|
// }
|
|
// }
|
|
|
|
// // Read PLC Active Messages
|
|
// numericalControl.PLC_RActiveMessages(ref tmpAlarms);
|
|
// // Formatting response list from strings
|
|
// foreach (string alarmMessage in tmpAlarms)
|
|
// {
|
|
// alarms.PlcAlarms.Add(new GenericAlarmModel()
|
|
// {
|
|
// alarmMessage = alarmMessage,
|
|
// id = 1
|
|
// });
|
|
// }
|
|
|
|
// MessageServices.Current.Publish("testsignal", null, alarms);
|
|
// Thread.Sleep(200);
|
|
// alarms.Clear();
|
|
|
|
//}
|
|
}
|
|
return true;
|
|
}
|
|
}
|
|
}
|