using Rs.MotionPlat.Commom;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace Rs.MotionPlat.Flow
{
public enum EMachineStatus
{
///
/// 未初始化
///
NotInit,
///
/// 未回原
///
NotHomed,
///
/// 回原中
///
Homing,
///
/// 回零失败
///
HomeFail,
///
/// 回原完成
///
Homed,
///
/// 工作中
///
Working,
///
/// 暂停
///
Stop,
///
/// 报警中
///
Warning,
///
/// 急停中
///
EStop
}
public class MachineManage
{
private static MachineManage instace;
public static MachineManage Instance
{
get
{
if (instace == null)
instace = new MachineManage();
return instace;
}
}
private MachineManage() { }
public EMachineStatus MachineStatus = EMachineStatus.NotInit;
///
/// 上下料状态(Waiting,Busying,Unloading,Error,Interrupt,)
///
public ERunState RunState { get; set; } = ERunState.Interrupt;
///
/// 设备运行状态(Started,Stopped,InAlarm,EMGStop)
///
public ERunStatus RunStatus { get; set; } = ERunStatus.Stopped;
///
/// 运行模式(Manual,Automatic)
///
public ERunMode RunMode { get; set; } = ERunMode.Manual;
///
/// 初始化状态(Uninitialized,Initializing,Initialized)
///
public EInitializeState InitializeState { get; set; } = EInitializeState.Uninitialized;
///
/// 物料分配模式(正常或空跑)
///
public EAssignMode AssignMode { get; set; } = EAssignMode.Normal;
public bool NeedRestoreMove { get; set; } = false;
}
}