优化不能空跑的问题

master
lhiven 1 year ago
parent 08326b2f1d
commit 6ddbaaf621

@ -185,7 +185,7 @@ namespace Rs.MotionPlat.Flow
} }
} }
curNozzle = NozzleManager.GetIdelNozzle(); curNozzle = NozzleManager.GetIdelNozzle();
if (curTask!=null && curNozzle != null && AxisControl.GetAxis($"NozzleR{curNozzle.NozzleIndex}").HomeStatus == EHomeStatus.Finished) if (curTask!=null && curNozzle != null)
{ {
if (XYCanGoLocalArea() || GlobalVar.VirtualAxis) if (XYCanGoLocalArea() || GlobalVar.VirtualAxis)
{ {
@ -807,7 +807,7 @@ namespace Rs.MotionPlat.Flow
{ {
imgs = imgs.Reverse().ToArray(); imgs = imgs.Reverse().ToArray();
} }
if (GlobalVar.RunSpace && GlobalVar.EnableScanBarCodeByDownCamera) if (GlobalVar.RunSpace)
{ {
if(GlobalVar.EnableScanBarCodeByDownCamera) if(GlobalVar.EnableScanBarCodeByDownCamera)
{ {
@ -1809,208 +1809,220 @@ namespace Rs.MotionPlat.Flow
private void ScanBarCode() private void ScanBarCode()
{ {
SchedulingMessageBox box = new SchedulingMessageBox(); SchedulingMessageBox box = new SchedulingMessageBox();
if (LoadAndUnloadTask.Instance.GetUndealedLoadToTurnoverTask().Count == 0 && !GlobalVar.VirtualAxis) if(GlobalVar.RunSpace)
{ {
if (GlobalVar.GRR) List<TurnoverTraySlot> slots = TurnoverTrayManager.Instance.GetSlots(ETurnoverTraySlotType.WaitTest, ETurnoverTraySlotStatus.Have);
foreach (var slot in slots)
{ {
scanNum++; LoadAndUnloadTask.Instance.CopyBarcodeToTask(slot.Index - 1, VirtualBarCode.Code);
} }
if (scanNum == 1 || !GlobalVar.GRR) }
else
{
if (LoadAndUnloadTask.Instance.GetUndealedLoadToTurnoverTask().Count == 0)
{ {
if (GlobalVar.EnableVirtuleBarCode) if (GlobalVar.GRR)
{ {
List<TurnoverTraySlot> slots = TurnoverTrayManager.Instance.GetSlots(ETurnoverTraySlotType.WaitTest, ETurnoverTraySlotStatus.Have); scanNum++;
foreach (var slot in slots)
{
LoadAndUnloadTask.Instance.CopyBarcodeToTask(slot.Index - 1, VirtualBarCode.Code);
}
} }
else if (scanNum == 1 || !GlobalVar.GRR)
{ {
//没有需要给周转盘上料的任务后,就开始上相机扫码 if (GlobalVar.EnableVirtuleBarCode)
//判断周转盘第一行有没有产品,如果有产品则拍第一行 {
if (TurnoverTrayManager.Instance.HasProduct(ETrayRow.One)) List<TurnoverTraySlot> slots = TurnoverTrayManager.Instance.GetSlots(ETurnoverTraySlotType.WaitTest, ETurnoverTraySlotStatus.Have);
{ foreach (var slot in slots)
//找拍照起点和终点 {
SlotPoint grabStartPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 1); LoadAndUnloadTask.Instance.CopyBarcodeToTask(slot.Index - 1, VirtualBarCode.Code);
SlotPoint grabEndPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 8); }
UpCameraScanBarCodeFlow.Instance.ScanMulti(1, false); }
List<VisionResult> result = UpCameraScanBarCodeFlow.Instance.Wait(); else
foreach (var vr in result) {
//没有需要给周转盘上料的任务后,就开始上相机扫码
//判断周转盘第一行有没有产品,如果有产品则拍第一行
if (TurnoverTrayManager.Instance.HasProduct(ETrayRow.One))
{ {
if (TurnoverTrayManager.Instance.Slot(vr.SlotIndex).IsHasProduct) //找拍照起点和终点
SlotPoint grabStartPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 1);
SlotPoint grabEndPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 8);
UpCameraScanBarCodeFlow.Instance.ScanMulti(1, false);
List<VisionResult> result = UpCameraScanBarCodeFlow.Instance.Wait();
foreach (var vr in result)
{ {
if (vr.SearchModelOK)//定位成功 if (TurnoverTrayManager.Instance.Slot(vr.SlotIndex).IsHasProduct)
{ {
if (!GlobalVar.EnableScanBarCodeByDownCamera) if (vr.SearchModelOK)//定位成功
{ {
if (GlobalVar.RunSpace) if (!GlobalVar.EnableScanBarCodeByDownCamera)
{
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, VirtualBarCode.Code);
}
else
{ {
if (vr.ScanBarCodeOK) if (GlobalVar.RunSpace)
{ {
OnShowGrabResult?.Invoke(vr, true); LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, VirtualBarCode.Code);
//复制二维码
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN);
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vr.SN;
} }
else else
{ {
int failNum = 1; if (vr.ScanBarCodeOK)
while (true)
{ {
if (failNum < 4) OnShowGrabResult?.Invoke(vr, true);
{ //复制二维码
//如果扫码失败再重扫一次 LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN);
UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true); TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vr.SN;
VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle(); }
if (vrsigle.ScanBarCodeOK) else
{ {
OnShowGrabResult?.Invoke(vrsigle, true); int failNum = 1;
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vrsigle.SN); while (true)
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vrsigle.SN;
break;
}
else
{
failNum++;
OnShowGrabResult?.Invoke(vrsigle, true);
//复制二维码
//LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, "");
Thread.Sleep(1000);
}
}
else
{ {
alarmInfo = string.Format(AlarmCollection.GetAlarm(AlarmConstID.), vr.SlotIndex); if (failNum < 4)
box = MsgBox.ShowDialog(AlarmConstID., alarmInfo, ETipButton.Retry | ETipButton.Cancel);
if (box.Button == ETipButton.Retry)
{ {
failNum = 1; //如果扫码失败再重扫一次
UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true);
VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle();
if (vrsigle.ScanBarCodeOK)
{
OnShowGrabResult?.Invoke(vrsigle, true);
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vrsigle.SN);
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vrsigle.SN;
break;
}
else
{
failNum++;
OnShowGrabResult?.Invoke(vrsigle, true);
//复制二维码
//LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, "");
Thread.Sleep(1000);
}
} }
else else
{ {
//OnShowGrabResult?.Invoke(vrsigle, true); alarmInfo = string.Format(AlarmCollection.GetAlarm(AlarmConstID.), vr.SlotIndex);
//复制二维码 box = MsgBox.ShowDialog(AlarmConstID., alarmInfo, ETipButton.Retry | ETipButton.Cancel);
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); if (box.Button == ETipButton.Retry)
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = ""; {
break; failNum = 1;
}
else
{
//OnShowGrabResult?.Invoke(vrsigle, true);
//复制二维码
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, "");
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = "";
break;
}
} }
} }
} }
} }
} }
} }
else
{
//定位失败,或者超出指定范围
}
} }
else else
{ {
//定位失败,或者超出指定范围 OnShowGrabResult?.Invoke(vr, false);
} }
} }
else //OnUpCameraGrabResult?.Invoke(result);
{
OnShowGrabResult?.Invoke(vr, false);
}
} }
//OnUpCameraGrabResult?.Invoke(result); //判断周转盘第三行有没有产品,如果有产品则拍第三行
} if (TurnoverTrayManager.Instance.HasProduct(ETrayRow.Three))
//判断周转盘第三行有没有产品,如果有产品则拍第三行
if (TurnoverTrayManager.Instance.HasProduct(ETrayRow.Three))
{
//找拍照起点和终点
SlotPoint grabStartPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 17);
SlotPoint grabEndPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 24);
UpCameraScanBarCodeFlow.Instance.ScanMulti(24, true);
List<VisionResult> result = UpCameraScanBarCodeFlow.Instance.Wait();
foreach (var vr in result)
{ {
if (TurnoverTrayManager.Instance.Slot(vr.SlotIndex).IsHasProduct) //找拍照起点和终点
SlotPoint grabStartPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 17);
SlotPoint grabEndPoint = TrayPointManager.GetSlotPoint(ETrayType.Turnover, 24);
UpCameraScanBarCodeFlow.Instance.ScanMulti(24, true);
List<VisionResult> result = UpCameraScanBarCodeFlow.Instance.Wait();
foreach (var vr in result)
{ {
if (TurnoverTrayManager.Instance.Slot(vr.SlotIndex).IsHasProduct)
if (vr.SearchModelOK)//定位成功
{ {
if (!GlobalVar.EnableScanBarCodeByDownCamera)
if (vr.SearchModelOK)//定位成功
{ {
if (GlobalVar.RunSpace) if (!GlobalVar.EnableScanBarCodeByDownCamera)
{
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, VirtualBarCode.Code);
}
else
{ {
if (vr.ScanBarCodeOK) if (GlobalVar.RunSpace)
{ {
OnShowGrabResult?.Invoke(vr, true); LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, VirtualBarCode.Code);
//复制二维码
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN);
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vr.SN;
} }
else else
{ {
int failNum = 1; if (vr.ScanBarCodeOK)
while (true)
{ {
if (failNum < 4) OnShowGrabResult?.Invoke(vr, true);
//复制二维码
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vr.SN);
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vr.SN;
}
else
{
int failNum = 1;
while (true)
{ {
if (failNum < 4)
//如果扫码失败再重扫一次
UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true);
VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle();
if (vrsigle.ScanBarCodeOK)
{ {
OnShowGrabResult?.Invoke(vrsigle, true);
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vrsigle.SN); //如果扫码失败再重扫一次
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vrsigle.SN; UpCameraScanBarCodeFlow.Instance.ScanSingle(vr.SlotIndex, true);
break; VisionResult vrsigle = UpCameraScanBarCodeFlow.Instance.WaitSingle();
if (vrsigle.ScanBarCodeOK)
{
OnShowGrabResult?.Invoke(vrsigle, true);
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, vrsigle.SN);
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = vrsigle.SN;
break;
}
else
{
failNum++;
OnShowGrabResult?.Invoke(vrsigle, true);
//复制二维码
//LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, "");
Thread.Sleep(1000);
}
} }
else else
{ {
failNum++; box = MsgBox.ShowDialog(AlarmConstID.ScanBarCodeFailAlarm, $"{vr.SlotIndex}穴位扫码失败", ETipButton.Retry | ETipButton.Skip);
OnShowGrabResult?.Invoke(vrsigle, true); if (box.Button == ETipButton.Retry)
//复制二维码 {
//LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, ""); failNum = 1;
Thread.Sleep(1000); }
} else if (box.Button == ETipButton.Skip)
} {
else //OnShowGrabResult?.Invoke(vrsigle, true);
{ //复制二维码
box = MsgBox.ShowDialog(AlarmConstID.ScanBarCodeFailAlarm, $"{vr.SlotIndex}穴位扫码失败", ETipButton.Retry | ETipButton.Skip); LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, "");
if (box.Button == ETipButton.Retry) TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = "";
{ break;
failNum = 1; }
}
else if (box.Button == ETipButton.Skip)
{
//OnShowGrabResult?.Invoke(vrsigle, true);
//复制二维码
LoadAndUnloadTask.Instance.CopyBarcodeToTask(vr.SlotIndex - 1, "");
TurnoverTrayManager.Instance.Slot(vr.SlotIndex).SN = "";
break;
} }
} }
} }
} }
} }
} }
else
{
//定位失败,或者超出指定范围
}
} }
else else
{ {
//定位失败,或者超出指定范围 OnShowGrabResult?.Invoke(vr, false);
} }
} }
else //OnUpCameraGrabResult?.Invoke(result);
{
OnShowGrabResult?.Invoke(vr, false);
}
}
//OnUpCameraGrabResult?.Invoke(result);
}
} }
} }
} }
} }
} }
/// <summary> /// <summary>

@ -200,7 +200,7 @@ namespace Rs.AutoDischarge.V3.Flow
return false; return false;
} }
IAxis StockZ = AxisControl.GetAxis($"StockZ{(int)m_stockType}"); IAxis StockZ = AxisControl.GetAxis($"StockZ{(int)m_stockType}");
if(StockZ.HomeStatus!= EHomeStatus.Finished) if(StockZ.HomeStatus!= EHomeStatus.Finished && !GlobalVar.VirtualAxis)
{ {
MsgBox.ShowAxisAlarmDialog(StockZ, ErrorCode.AxisNotHome); MsgBox.ShowAxisAlarmDialog(StockZ, ErrorCode.AxisNotHome);
return false; return false;
@ -453,7 +453,7 @@ namespace Rs.AutoDischarge.V3.Flow
return false; return false;
} }
IAxis StockZ = AxisControl.GetAxis($"StockZ{(int)m_stockType}"); IAxis StockZ = AxisControl.GetAxis($"StockZ{(int)m_stockType}");
if (StockZ.HomeStatus != EHomeStatus.Finished) if (StockZ.HomeStatus != EHomeStatus.Finished && !GlobalVar.VirtualAxis)
{ {
MsgBox.ShowAxisAlarmDialog(StockZ, ErrorCode.AxisNotHome); MsgBox.ShowAxisAlarmDialog(StockZ, ErrorCode.AxisNotHome);
return false; return false;

@ -142,7 +142,7 @@ namespace Rs.MotionPlat.Flow
case ETakeTrayFlowStep.: case ETakeTrayFlowStep.:
if (Ops.IsStop("LoadX", "LoadY") || GlobalVar.VirtualAxis) if (Ops.IsStop("LoadX", "LoadY") || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.LoadX,AxisControl.LoadY)) if(Ops.IsArrived(AxisControl.LoadX,AxisControl.LoadY) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到{m_fromTray}料仓取料盘位上方"; logInfo = GetClassName() + $"已运动到{m_fromTray}料仓取料盘位上方";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -312,7 +312,7 @@ namespace Rs.MotionPlat.Flow
case ETakeTrayFlowStep.: case ETakeTrayFlowStep.:
if (Ops.IsStop("LoadX", "LoadY") || GlobalVar.VirtualAxis) if (Ops.IsStop("LoadX", "LoadY") || GlobalVar.VirtualAxis)
{ {
if (Ops.IsArrived(AxisControl.LoadX, AxisControl.LoadY)) if (Ops.IsArrived(AxisControl.LoadX, AxisControl.LoadY) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到{toTray}料仓放料盘上方"; logInfo = GetClassName() + $"已运动到{toTray}料仓放料盘上方";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -381,7 +381,7 @@ namespace Rs.MotionPlat.Flow
case ETakeTrayFlowStep.: case ETakeTrayFlowStep.:
if(stopwatch.ElapsedMilliseconds<5000) if(stopwatch.ElapsedMilliseconds<5000)
{ {
if(Ops.IsOn("夹爪气缸原位")) if(Ops.IsOn("夹爪气缸原位") || GlobalVar.RunSpace)
{ {
step = ETakeTrayFlowStep.; step = ETakeTrayFlowStep.;
} }

@ -238,7 +238,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverX,AxisControl.TurnoverY) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverX,AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverX, AxisControl.TurnoverY)) if(Ops.IsArrived(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到周转盘取料位上方"; logInfo = GetClassName() + $"已运动到周转盘取料位上方";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -384,7 +384,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到周转盘下方取料位2 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}"; logInfo = GetClassName() + $"已运动到周转盘下方取料位2 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -456,7 +456,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"周转盘取料完成已抬起"; logInfo = GetClassName() + $"周转盘取料完成已抬起";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -532,7 +532,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverX,AxisControl.TurnoverY) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverX,AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverX,AxisControl.TurnoverY)) if(Ops.IsArrived(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if (turnoverTakeFinishe == false && TurnoverTrayManager.Instance.GetSlots(ETurnoverTraySlotType.WaitTest, ETurnoverTraySlotStatus.Have).Count() == 0) if (turnoverTakeFinishe == false && TurnoverTrayManager.Instance.GetSlots(ETurnoverTraySlotType.WaitTest, ETurnoverTraySlotStatus.Have).Count() == 0)
{ {
@ -724,7 +724,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
//获取需要放料的吸嘴 //获取需要放料的吸嘴
hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles(); hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles();
@ -771,7 +771,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.1: case ETurnoverFlowStep.1:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
//获取需要放料的吸嘴 //获取需要放料的吸嘴
//hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles(); //hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles();
@ -805,7 +805,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if (Ops.IsArrived(AxisControl.TurnoverZ)) if (Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
//获取需要放料的吸嘴 //获取需要放料的吸嘴
//hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles(); //hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles();
@ -1018,7 +1018,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverX,AxisControl.TurnoverY)) if(Ops.IsArrived(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if (TestTrayManager.Instance.GetSlots(ETestTraySlotStatus.Have).Count > 0) if (TestTrayManager.Instance.GetSlots(ETestTraySlotStatus.Have).Count > 0)
{ {
@ -1087,7 +1087,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.PressZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.PressZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.PressZ)) if(Ops.IsArrived(AxisControl.PressZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已到测试保压位下方2 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}"; logInfo = GetClassName() + $"已到测试保压位下方2 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1193,7 +1193,7 @@ namespace Rs.MotionPlat.Flow
//AxisControl.PressZ.Get_Target_Position(out double pos); //AxisControl.PressZ.Get_Target_Position(out double pos);
//double tpos = Ops.GetCurPosition(AxisControl.PressZ); //double tpos = Ops.GetCurPosition(AxisControl.PressZ);
//AxisControl.PressZ.IsArrived(out bool isArrived); //AxisControl.PressZ.IsArrived(out bool isArrived);
if (Ops.IsArrived(AxisAlias.PressZ)) if (Ops.IsArrived(AxisAlias.PressZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"测试完成已抬起到安全位 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}"; logInfo = GetClassName() + $"测试完成已抬起到安全位 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1271,7 +1271,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverX,AxisControl.TurnoverY)) if(Ops.IsArrived(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到测试取料位上方 TurnoverY at:{Ops.GetCurPosition(AxisAlias.TurnoverY)}"; logInfo = GetClassName() + $"已运动到测试取料位上方 TurnoverY at:{Ops.GetCurPosition(AxisAlias.TurnoverY)}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1411,7 +1411,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到测试取料位下方2 TurnoverZ at:{Ops.GetCurPosition("TurnoverZ")}"; logInfo = GetClassName() + $"已运动到测试取料位下方2 TurnoverZ at:{Ops.GetCurPosition("TurnoverZ")}";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1486,7 +1486,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"测试位取料完成已抬起"; logInfo = GetClassName() + $"测试位取料完成已抬起";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1599,7 +1599,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.: case ETurnoverFlowStep.:
if (Ops.IsStop(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverX,AxisControl.TurnoverY)) if(Ops.IsArrived(AxisControl.TurnoverX, AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到周转盘放料位上方"; logInfo = GetClassName() + $"已运动到周转盘放料位上方";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1742,7 +1742,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"已运动到周转盘放料位下方2"; logInfo = GetClassName() + $"已运动到周转盘放料位下方2";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);
@ -1818,7 +1818,7 @@ namespace Rs.MotionPlat.Flow
case ETurnoverFlowStep.2: case ETurnoverFlowStep.2:
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis) if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
if(Ops.IsArrived(AxisControl.TurnoverZ)) if(Ops.IsArrived(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
{ {
logInfo = GetClassName() + $"周转盘放料完成已抬起2"; logInfo = GetClassName() + $"周转盘放料完成已抬起2";
MessageQueue.Instance.Insert(logInfo); MessageQueue.Instance.Insert(logInfo);

Loading…
Cancel
Save