|
|
|
@ -152,39 +152,47 @@ namespace Rs.MotionPlat.Commom
|
|
|
|
|
|
|
|
|
|
public static void Start()
|
|
|
|
|
{
|
|
|
|
|
bool run = true;
|
|
|
|
|
if(GlobalVar.EnableVirtuleBarCode)
|
|
|
|
|
//先检测门禁
|
|
|
|
|
if(IoManager.Instance.ReadIn("后安全门禁")==0)
|
|
|
|
|
{
|
|
|
|
|
DialogResult dr = Msg.ShowQuestion("device run use virtual bar code?");
|
|
|
|
|
if(dr== DialogResult.Cancel)
|
|
|
|
|
{
|
|
|
|
|
run = false;
|
|
|
|
|
}
|
|
|
|
|
MessageQueue.Instance.Warn("door opened,please close door!!!");
|
|
|
|
|
}
|
|
|
|
|
if(run)
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
Task.Run(() => {
|
|
|
|
|
if (MachineManage.Instance.MachineStatus == EMachineStatus.Homed || MachineManage.Instance.MachineStatus == EMachineStatus.Stop)
|
|
|
|
|
bool run = true;
|
|
|
|
|
if (GlobalVar.EnableVirtuleBarCode)
|
|
|
|
|
{
|
|
|
|
|
DialogResult dr = Msg.ShowQuestion("device run use virtual barcode?");
|
|
|
|
|
if (dr == DialogResult.Cancel)
|
|
|
|
|
{
|
|
|
|
|
MachineManage.Instance.SetLocalMachineStatus(EMachineStatus.Working);
|
|
|
|
|
On("启动灯");
|
|
|
|
|
Off("停止灯");
|
|
|
|
|
LightManger.Instance.SetStatus(ELightStatus.Green);
|
|
|
|
|
if (!WorkEnvironment.Instance.IsRunning())
|
|
|
|
|
{
|
|
|
|
|
WorkEnvironment.Instance.Ready();
|
|
|
|
|
}
|
|
|
|
|
WorkEnvironment.Instance.EnvReadyOkEvent.WaitOne();
|
|
|
|
|
DischargeFlow.Instance.Start();
|
|
|
|
|
TurnoverFlow.Instance.Start();
|
|
|
|
|
MachineManage.Instance.SetCenterMachineStatus(ERunStatus.Started);
|
|
|
|
|
//if (DischargeFlow.Instance.GetCurStep() == "等待任务" && TurnoverFlow.Instance.GetStep() == "等待任务")
|
|
|
|
|
if (MachineManage.Instance.GetLoadUnloadStatus() != ERunState.Busying)
|
|
|
|
|
run = false;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (run)
|
|
|
|
|
{
|
|
|
|
|
Task.Run(() => {
|
|
|
|
|
if (MachineManage.Instance.MachineStatus == EMachineStatus.Homed || MachineManage.Instance.MachineStatus == EMachineStatus.Stop)
|
|
|
|
|
{
|
|
|
|
|
MachineManage.Instance.SetLoadUnloadStatus(ERunState.Waiting);
|
|
|
|
|
MachineManage.Instance.SetLocalMachineStatus(EMachineStatus.Working);
|
|
|
|
|
On("启动灯");
|
|
|
|
|
Off("停止灯");
|
|
|
|
|
LightManger.Instance.SetStatus(ELightStatus.Green);
|
|
|
|
|
if (!WorkEnvironment.Instance.IsRunning())
|
|
|
|
|
{
|
|
|
|
|
WorkEnvironment.Instance.Ready();
|
|
|
|
|
}
|
|
|
|
|
WorkEnvironment.Instance.EnvReadyOkEvent.WaitOne();
|
|
|
|
|
DischargeFlow.Instance.Start();
|
|
|
|
|
TurnoverFlow.Instance.Start();
|
|
|
|
|
MachineManage.Instance.SetCenterMachineStatus(ERunStatus.Started);
|
|
|
|
|
//if (DischargeFlow.Instance.GetCurStep() == "等待任务" && TurnoverFlow.Instance.GetStep() == "等待任务")
|
|
|
|
|
if (MachineManage.Instance.GetLoadUnloadStatus() != ERunState.Busying)
|
|
|
|
|
{
|
|
|
|
|
MachineManage.Instance.SetLoadUnloadStatus(ERunState.Waiting);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|