优化一次上下料流程结束后,ZR回原问题

master
lhiven 1 year ago
parent e561e40654
commit 03c02cbe09

@ -139,6 +139,7 @@ namespace Rs.MotionPlat.Flow
|| LoadAndUnloadTask.Instance.GetTaskNum(ETaskType.Unload) > 0
|| LoadAndUnloadTask.Instance.GetTaskNum(ETaskType.Change) > 0)
{
ZRHomeFlow.Instance.Wait();
StockTrayToTurnoverTray = true;
logInfo = GetClassName()+$"接收到排料任务";
MessageQueue.Instance.Insert(logInfo);
@ -1660,26 +1661,27 @@ namespace Rs.MotionPlat.Flow
errCode = AxisControl.LoadX.MovePos(SysConfigParam.GetValue<double>("LoadXStartPos"), GlobalVar.WholeSpeed);
if(errCode== ErrorCode.Ok || GlobalVar.VirtualAxis)
{
AxisControl.NozzleZ1.Home();
AxisControl.NozzleZ2.Home();
AxisControl.NozzleZ3.Home();
AxisControl.NozzleZ4.Home();
AxisControl.NozzleZ5.Home();
AxisControl.NozzleZ6.Home();
AxisControl.NozzleZ7.Home();
AxisControl.NozzleZ8.Home();
//AxisControl.NozzleZ1.Home();
//AxisControl.NozzleZ2.Home();
//AxisControl.NozzleZ3.Home();
//AxisControl.NozzleZ4.Home();
//AxisControl.NozzleZ5.Home();
//AxisControl.NozzleZ6.Home();
//AxisControl.NozzleZ7.Home();
//AxisControl.NozzleZ8.Home();
AxisControl.NozzleR1.Home();
AxisControl.NozzleR2.Home();
AxisControl.NozzleR3.Home();
AxisControl.NozzleR4.Home();
AxisControl.NozzleR5.Home();
AxisControl.NozzleR6.Home();
AxisControl.NozzleR7.Home();
AxisControl.NozzleR8.Home();
//AxisControl.NozzleR1.Home();
//AxisControl.NozzleR2.Home();
//AxisControl.NozzleR3.Home();
//AxisControl.NozzleR4.Home();
//AxisControl.NozzleR5.Home();
//AxisControl.NozzleR6.Home();
//AxisControl.NozzleR7.Home();
//AxisControl.NozzleR8.Home();
errCode = AxisControl.LoadY.MovePos(SysConfigParam.GetValue<double>("LoadYStartPos"), GlobalVar.WholeSpeed);
if(errCode== ErrorCode.Ok || GlobalVar.VirtualAxis)
{
ZRHomeFlow.Instance.GoHome();
if (GlobalVar.VirtualAxis)
{
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);

@ -32,14 +32,16 @@ namespace Rs.MotionPlat.Flow.SubFlow
return instance;
}
}
private ManualResetEvent homeFinished = new ManualResetEvent(false);
private ManualResetEvent homeFinished = new ManualResetEvent(true);
private EZRHomeFlowStep step = EZRHomeFlowStep.StartHome;
bool finished = false;
bool finished = true;
public void GoHome()
{
step = EZRHomeFlowStep.StartHome;
if (finished)
{
homeFinished.Reset();
finished = false;
}
else
@ -117,5 +119,10 @@ namespace Rs.MotionPlat.Flow.SubFlow
}
});
}
public bool Wait()
{
return homeFinished.WaitOne();
}
}
}

Loading…
Cancel
Save