|
|
|
@ -154,7 +154,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
// slots.Add(slot.FromIndex + 1);
|
|
|
|
|
//}
|
|
|
|
|
retakeNum = 0;
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-接收到测试工位上料任务";
|
|
|
|
|
logInfo = GetClassName()+$"接收到测试工位上料任务";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到周转盘取料位上方;
|
|
|
|
|
}
|
|
|
|
@ -166,7 +166,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
// slots.Add(slot.FromIndex + 1);
|
|
|
|
|
//}
|
|
|
|
|
retakeNum = 0;
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-接收到测试工位下料任务";
|
|
|
|
|
logInfo = GetClassName() + $"接收到测试工位下料任务";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.测试完成抬起到高速位;
|
|
|
|
|
}
|
|
|
|
@ -190,7 +190,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到周转盘取料位上方";
|
|
|
|
|
logInfo = GetClassName()+$"到周转盘取料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待运动到周转盘取料位上方;
|
|
|
|
|
}
|
|
|
|
@ -202,7 +202,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待运动到周转盘取料位上方:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到周转盘取料位上方 TurnoverY at:{Ops.GetCurPosition( AxisAlias.TurnoverY)}";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到周转盘取料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到周转盘下方取料位1;
|
|
|
|
|
}
|
|
|
|
@ -218,7 +218,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到周转盘下方取料位1";
|
|
|
|
|
logInfo = GetClassName()+$"到周转盘下方取料位1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待运动到周转盘下方取料位1;
|
|
|
|
|
}
|
|
|
|
@ -234,7 +234,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
break;
|
|
|
|
|
case ETurnoverFlowStep.取料异常报警:
|
|
|
|
|
List<TurnoverTraySlot> untestSlots = TurnoverTrayManager.Instance.GetSlots(ETurnoverTraySlotType.WaitTest, ETurnoverTraySlotStatus.Have);
|
|
|
|
|
alarmInfo = $"{nameof(TurnoverFlow)}周转盘{string.Join(",", untestSlots.Select(s => s.Index))}号穴位异常";
|
|
|
|
|
alarmInfo = GetClassName()+$"周转盘{string.Join(",", untestSlots.Select(s => s.Index))}号穴位异常";
|
|
|
|
|
TestCenterMessageBox.Show(AlarmConstID.TurnoverTakeFailAlarm, alarmInfo, MessageButtonManager.GetRetry_Skip_MoveToSafe_Button(),
|
|
|
|
|
MessageButtonManager.GetRetry_Skip_MoveToSafe_ButtonText());
|
|
|
|
|
msgBox = TestCenterMessageBox.WaitResult(AlarmConstID.TurnoverTakeFailAlarm);
|
|
|
|
@ -276,7 +276,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待运动到周转盘下方取料位1:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到周转盘下方取料位1 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
logInfo = GetClassName()+ $"已运动到周转盘下方取料位1 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到周转盘下方取料位2;
|
|
|
|
|
}
|
|
|
|
@ -290,7 +290,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到周转盘下方取料位2";
|
|
|
|
|
logInfo = GetClassName() + $"到周转盘下方取料位2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待运动到周转盘下方取料位2;
|
|
|
|
|
}
|
|
|
|
@ -302,11 +302,11 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待运动到周转盘下方取料位2:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到周转盘下方取料位2 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到周转盘下方取料位2 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
|
|
|
|
|
undealTasks = LoadAndUnloadTask.Instance.GetTurnoverToTestTasks(ETaskDealStatus.Undeal);
|
|
|
|
|
/*打开周转吸头真空吸*/
|
|
|
|
|
/*打开周转吸嘴真空吸*/
|
|
|
|
|
VacManager.TransitNozzleVacSuction(EVacOperator.Open, undealTasks.Select(t => t.ToIndex + 1).ToArray());
|
|
|
|
|
/*关闭周转盘真空吸*/
|
|
|
|
|
VacManager.TurnoverTrayVacSuction(EVacOperator.Close, undealTasks.Select(t => t.FromIndex + 1).ToArray());
|
|
|
|
@ -324,7 +324,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到周转盘取料破真空位";
|
|
|
|
|
logInfo = GetClassName() + $"到周转盘取料破真空位";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到周转盘取料破真空位;
|
|
|
|
|
}
|
|
|
|
@ -353,7 +353,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-周转盘取料完成抬起";
|
|
|
|
|
logInfo = GetClassName() + $"周转盘取料完成抬起";
|
|
|
|
|
MessageQueue.Instance.Insert (logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待周转盘取料完成抬起;
|
|
|
|
|
}
|
|
|
|
@ -365,7 +365,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待周转盘取料完成抬起:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到周转盘取料完成抬起位";
|
|
|
|
|
logInfo = GetClassName() + $"周转盘取料完成已抬起";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.周转盘取料完成真空检测;
|
|
|
|
|
}
|
|
|
|
@ -377,16 +377,16 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
if (Ops.IsOn($"周转{task.FromIndex+1}号吸嘴真空吸检测") || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
//如果真空检测OK,带料产品已经吸上了
|
|
|
|
|
task.Dealed = true;
|
|
|
|
|
TurnoverTraySlot slot = TurnoverTrayManager.Instance.Slot(task.FromIndex + 1);
|
|
|
|
|
TransitNozzleManager.Instance.Nozzle(task.FromIndex + 1).AddProduct(slot);
|
|
|
|
|
slot.ClearProduct();
|
|
|
|
|
TransitNozzleManager.Instance.Nozzle(task.ToIndex + 1).AddProduct(task);
|
|
|
|
|
TurnoverTrayManager.Instance.Slot(task.FromIndex + 1).ClearProduct();
|
|
|
|
|
//slot.ClearProduct();
|
|
|
|
|
GlobalTray.TurnoverTray.ChangeStatus(task.FromIndex + 1, ESlotStatus.NotHave);
|
|
|
|
|
task.Dealed = true;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (TransitNozzleManager.Instance.GetHasProductNozzleNum() > 0||GlobalVar.RunSpace || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"周转吸头{string.Join(",", TransitNozzleManager.Instance.GetHasProductNozzles().Select(n=>n.NozzleIndex).ToArray())}真空检测OK";
|
|
|
|
|
logInfo = GetClassName()+ $"周转吸头{string.Join(",", TransitNozzleManager.Instance.GetHasProductNozzles().Select(n=>n.NozzleIndex).ToArray())}真空检测OK";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试放料位上方;
|
|
|
|
|
}
|
|
|
|
@ -405,7 +405,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到测试放料位上方";
|
|
|
|
|
logInfo = GetClassName()+$"到测试放料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待运动到测试放料位上方;
|
|
|
|
|
}
|
|
|
|
@ -470,16 +470,17 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
}
|
|
|
|
|
if (loseSlots.Count > 0)
|
|
|
|
|
{
|
|
|
|
|
alarmInfo = $"周转{string.Join(",", loseSlots)}号吸嘴真空异常丢料,请处理";
|
|
|
|
|
alarmInfo = $"周转{loseSlots.ToJoinString()}号吸嘴真空异常丢料,请处理";
|
|
|
|
|
TestCenterMessageBox.Show(AlarmConstID.NozzlesLoseMaterialAlarm, alarmInfo, MessageButtonManager.GetSkip_MoveToSafe_Button(), MessageButtonManager.GetSkip_MoveToSafe_ButtonText());
|
|
|
|
|
msgBox = TestCenterMessageBox.WaitResult(AlarmConstID.NozzlesLoseMaterialAlarm);
|
|
|
|
|
switch (msgBox.Button)
|
|
|
|
|
{
|
|
|
|
|
case ETipButton.Skip:
|
|
|
|
|
MessageQueue.Instance.Insert($"{nameof(TurnoverFlow)}-点击了跳过按钮");
|
|
|
|
|
MessageQueue.Instance.Insert(GetClassName()+$"点击了跳过按钮");
|
|
|
|
|
TransitNozzleManager.Instance.GetHasProductNozzles().ForEach((n) => { n.IsHasProduct = false;n.SN = ""; });
|
|
|
|
|
break;
|
|
|
|
|
case ETipButton.Yes:
|
|
|
|
|
MessageQueue.Instance.Insert($"{nameof(TurnoverFlow)}-点击了移动到安全位按钮");
|
|
|
|
|
MessageQueue.Instance.Insert(GetClassName()+$"点击了移动到安全位按钮");
|
|
|
|
|
TransitModuleSafePosFlow.Instance.GoSafePostion();
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
@ -488,7 +489,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到测试放料位上方";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到测试放料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试放料位下方1;
|
|
|
|
|
}
|
|
|
|
@ -504,7 +505,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到测试放料位下方1";
|
|
|
|
|
logInfo = GetClassName()+$"到测试放料位下方1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待运动到到测试放料位下方1;
|
|
|
|
|
}
|
|
|
|
@ -516,7 +517,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待运动到到测试放料位下方1:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到到测试放料位下方1 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
logInfo =GetClassName()+ $"已运动到到测试放料位下方1 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试放料位下方2;
|
|
|
|
|
}
|
|
|
|
@ -530,7 +531,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到测试放料位下方2";
|
|
|
|
|
logInfo =GetClassName()+ $"到测试放料位下方2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
LogHelper.Debug(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待运动到到测试放料位下方2;
|
|
|
|
@ -545,7 +546,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
//获取需要放料的吸嘴
|
|
|
|
|
List<TransitNozzle> hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles();
|
|
|
|
|
logInfo = $"已运动到到测试放料位下方2 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
logInfo =GetClassName()+ $"已运动到到测试放料位下方2 TurnoverZ at:{Ops.GetCurPosition(AxisAlias.TurnoverZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
/*打开测试穴位真空吸*/
|
|
|
|
|
VacManager.TestTrayVacSuction(EVacOperator.Open, hasProductNozzles.Select(n => n.NozzleIndex).ToArray());
|
|
|
|
@ -567,7 +568,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"测试位放料完成抬起";
|
|
|
|
|
logInfo = GetClassName()+$"测试位放料完成抬起";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待测试位放料完成抬起;
|
|
|
|
|
}
|
|
|
|
@ -579,7 +580,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待测试位放料完成抬起:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"测试位放料完成抬起完成";
|
|
|
|
|
logInfo = GetClassName()+$"测试位放料完成抬起完成";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.测试位放料完成粘料检测;
|
|
|
|
|
}
|
|
|
|
@ -605,13 +606,13 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
if(masticSlots.Count > 0)
|
|
|
|
|
{
|
|
|
|
|
//粘料报警
|
|
|
|
|
alarmInfo = $"周转{string.Join(",", loseSlots)}号吸嘴真空异常粘料,请手工处理";
|
|
|
|
|
alarmInfo = $"周转{loseSlots.ToJoinString()}号吸嘴真空异常粘料,请手工处理";
|
|
|
|
|
TestCenterMessageBox.Show(AlarmConstID.NozzlesLoseMaterialAlarm, alarmInfo, MessageButtonManager.GetSkip_MoveToSafe_Button(), MessageButtonManager.GetSkip_MoveToSafe_ButtonText());
|
|
|
|
|
msgBox = TestCenterMessageBox.WaitResult(AlarmConstID.NozzlesLoseMaterialAlarm);
|
|
|
|
|
switch (msgBox.Button)
|
|
|
|
|
{
|
|
|
|
|
case ETipButton.Skip:
|
|
|
|
|
MessageQueue.Instance.Insert($"{nameof(TurnoverFlow)}-点击了跳过按钮");
|
|
|
|
|
MessageQueue.Instance.Insert(GetClassName() + $"点击了跳过按钮");
|
|
|
|
|
foreach (int nozzleIndex in masticSlots)
|
|
|
|
|
{
|
|
|
|
|
TransitNozzle nozzle = TransitNozzleManager.Instance.Nozzle(nozzleIndex);
|
|
|
|
@ -623,7 +624,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case ETipButton.Yes:
|
|
|
|
|
MessageQueue.Instance.Insert($"{nameof(TurnoverFlow)}-点击了移动到安全位按钮");
|
|
|
|
|
MessageQueue.Instance.Insert(GetClassName() + $"点击了移动到安全位按钮");
|
|
|
|
|
TransitModuleSafePosFlow.Instance.GoSafePostion();
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
@ -649,7 +650,8 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
foreach (var nozzle in TransitNozzleManager.Instance.GetHasProductNozzles())
|
|
|
|
|
{
|
|
|
|
|
GlobalTray.TestTray.ChangeStatus(nozzle.NozzleIndex, ESlotStatus.Have);
|
|
|
|
|
TestTrayManager.Instance.Slot(nozzle.NozzleIndex).AddProduct(nozzle.SN, nozzle.FromIndex, TurnoverType.Turnover, nozzle.NozzleIndex);
|
|
|
|
|
//TestTrayManager.Instance.Slot(nozzle.NozzleIndex).AddProduct(nozzle.SN, nozzle.FromIndex, TurnoverType.Turnover, nozzle.NozzleIndex);
|
|
|
|
|
TestTrayManager.Instance.Slot(nozzle.NozzleIndex).AddProduct(nozzle);
|
|
|
|
|
nozzle.Clear();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
@ -688,7 +690,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到测试保压位上方";
|
|
|
|
|
logInfo = GetClassName() + $"到测试保压位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到测试保压位上方;
|
|
|
|
|
}
|
|
|
|
@ -700,7 +702,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到测试保压位上方:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到测试保压位上方";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到测试保压位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试保压位下方1;
|
|
|
|
|
}
|
|
|
|
@ -715,7 +717,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到测试保压位下方1";
|
|
|
|
|
logInfo = GetClassName() + $"到测试保压位下方1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到测试保压位下方1;
|
|
|
|
|
}
|
|
|
|
@ -727,7 +729,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到测试保压位下方1:
|
|
|
|
|
if (Ops.IsStop(AxisControl.PressZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已到测试保压位下方1 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
logInfo = GetClassName() + $"已到测试保压位下方1 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试保压位下方2;
|
|
|
|
|
}
|
|
|
|
@ -742,7 +744,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到测试保压位下方2";
|
|
|
|
|
logInfo = GetClassName() + $"到测试保压位下方2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到测试保压位下方2;
|
|
|
|
|
}
|
|
|
|
@ -754,15 +756,16 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到测试保压位下方2:
|
|
|
|
|
if (Ops.IsStop(AxisControl.PressZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已到测试保压位下方2 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
logInfo = GetClassName()+$"已到测试保压位下方2 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
/*关闭测试穴位真空吸*/
|
|
|
|
|
List<TestTraySlot> willTestSlot = TestTrayManager.Instance.GetSlots(ETestTraySlotStatus.Have);
|
|
|
|
|
VacManager.TestTrayVacSuction(EVacOperator.Close, willTestSlot.Select(s => s.Index).ToArray());
|
|
|
|
|
loadOk = true;
|
|
|
|
|
MachineManage.Instance.SetTesterState(ETesterState.Ready);
|
|
|
|
|
MessageQueue.Instance.Insert("通知中控测试位就绪,可以开始测试");
|
|
|
|
|
Thread.Sleep(1000 * 30);
|
|
|
|
|
logInfo = GetClassName() + "通知中控测试位就绪,可以开始测试";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
//Thread.Sleep(1000 * 30);
|
|
|
|
|
Step = ETurnoverFlowStep.等待任务;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
@ -784,7 +787,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-测试完成准备抬起";
|
|
|
|
|
logInfo = GetClassName()+$"测试完成准备抬起";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待测试完成抬起到高速位;
|
|
|
|
|
}
|
|
|
|
@ -793,7 +796,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待测试完成抬起到高速位:
|
|
|
|
|
if (Ops.IsStop(AxisControl.PressZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-测试完成已抬起 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
logInfo = GetClassName()+$"测试完成已抬起 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.测试完成抬起安全位;
|
|
|
|
|
}
|
|
|
|
@ -807,7 +810,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-测试完成抬起安全位";
|
|
|
|
|
logInfo = GetClassName() + $"测试完成抬起安全位";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待测试完成抬起安全位;
|
|
|
|
|
}
|
|
|
|
@ -815,7 +818,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待测试完成抬起安全位:
|
|
|
|
|
if (Ops.IsStop(AxisControl.PressZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-测试完成已抬起到安全位 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
logInfo = GetClassName() + $"测试完成已抬起到安全位 PressZ at:{Ops.GetCurPosition(AxisAlias.PressZ)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试取料位上方;
|
|
|
|
|
}
|
|
|
|
@ -829,7 +832,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到测试取料位上方";
|
|
|
|
|
logInfo = GetClassName() + $"到测试取料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到测试取料位上方;
|
|
|
|
|
}
|
|
|
|
@ -837,7 +840,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到测试取料位上方:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到测试取料位上方 TurnoverY at:{Ops.GetCurPosition(AxisAlias.TurnoverY)}";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到测试取料位上方 TurnoverY at:{Ops.GetCurPosition(AxisAlias.TurnoverY)}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试取料位下方1;
|
|
|
|
|
}
|
|
|
|
@ -853,7 +856,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到测试取料位下方1";
|
|
|
|
|
logInfo = GetClassName() + $"到测试取料位下方1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到测试取料位下方1;
|
|
|
|
|
}
|
|
|
|
@ -933,7 +936,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-到测试取料位下方2";
|
|
|
|
|
logInfo = GetClassName() + $"到测试取料位下方2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到测试取料位下方2;
|
|
|
|
|
}
|
|
|
|
@ -942,16 +945,16 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到测试取料位下方2:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到测试取料位下方2 TurnoverZ at:{Ops.GetCurPosition("TurnoverZ")}";
|
|
|
|
|
logInfo = GetClassName()+$"已运动到测试取料位下方2 TurnoverZ at:{Ops.GetCurPosition("TurnoverZ")}";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
undealTasks = LoadAndUnloadTask.Instance.GetTestToTurnoverTasks(ETaskDealStatus.Undeal);
|
|
|
|
|
|
|
|
|
|
int[] indexes = undealTasks.Select(t => t.FromIndex + 1).ToArray();
|
|
|
|
|
/*打开周转吸头真空吸*/
|
|
|
|
|
VacManager.TransitNozzleVacSuction(EVacOperator.Open, undealTasks.Select(t => t.FromIndex + 1).ToArray());
|
|
|
|
|
VacManager.TransitNozzleVacSuction(EVacOperator.Open, indexes);
|
|
|
|
|
/*关闭测试穴位真空吸*/
|
|
|
|
|
VacManager.TestTrayVacSuction(EVacOperator.Close, undealTasks.Select(t => t.FromIndex + 1).ToArray());
|
|
|
|
|
VacManager.TestTrayVacSuction(EVacOperator.Close, indexes);
|
|
|
|
|
/*打开测试穴位真空破*/
|
|
|
|
|
VacManager.TestTrayVacBreak(EVacOperator.Open, undealTasks.Select(t => t.FromIndex + 1).ToArray());
|
|
|
|
|
VacManager.TestTrayVacBreak(EVacOperator.Open, indexes);
|
|
|
|
|
Step = ETurnoverFlowStep.到测试破关真空位;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
@ -961,7 +964,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
errCode = AxisControl.TurnoverZ.MovePos(targetPos, GlobalVar.PressLowSpeed);
|
|
|
|
|
if (errCode == Motion.ErrorCode.Ok || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"到测试破关真空位";
|
|
|
|
|
logInfo = GetClassName()+ $"到测试破关真空位";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
if (GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
@ -973,7 +976,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到测试关破真空位:
|
|
|
|
|
if(Ops.IsStop(AxisAlias.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"{nameof(TurnoverFlow)}-已运动到测试关破真空位";
|
|
|
|
|
logInfo = GetClassName()+$"已运动到测试关破真空位";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
undealTasks = LoadAndUnloadTask.Instance.GetTestToTurnoverTasks(ETaskDealStatus.Undeal);
|
|
|
|
|
/*关闭测试穴位真空破*/
|
|
|
|
@ -990,7 +993,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"测试位取料完成准备抬起";
|
|
|
|
|
logInfo =GetClassName()+ $"测试位取料完成抬起";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待测试位取料完成抬起;
|
|
|
|
|
}
|
|
|
|
@ -998,7 +1001,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待测试位取料完成抬起:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"测试位取料完成已抬起";
|
|
|
|
|
logInfo =GetClassName()+ $"测试位取料完成已抬起";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.测试位取料完成后真空检测;
|
|
|
|
|
}
|
|
|
|
@ -1010,15 +1013,23 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
TestTraySlot testSlot = TestTrayManager.Instance.Slot(task.FromIndex + 1);
|
|
|
|
|
if (Ops.IsOn($"周转{task.FromIndex+1}号吸嘴真空吸检测") || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
testSlot.ClearProduct();
|
|
|
|
|
task.Dealed= true;
|
|
|
|
|
TransitNozzleManager.Instance.Nozzle(task.FromIndex + 1).AddProduct(testSlot);
|
|
|
|
|
TransitNozzleManager.Instance.Nozzle(task.FromIndex + 1).AddProduct(task);
|
|
|
|
|
GlobalTray.TestTray.ChangeStatus(task.FromIndex + 1, ESlotStatus.NotHave);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (TransitNozzleManager.Instance.GetHasProductNozzleNum()>0 || GlobalVar.RunSpace|| GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
MachineManage.Instance.SetTesterState( ETesterState.NotReady );
|
|
|
|
|
MessageQueue.Instance.Insert("通知中控产品已取走");
|
|
|
|
|
Step = ETurnoverFlowStep.到周转盘放料位上方;
|
|
|
|
|
if(TestTrayManager.Instance.GetSlots(ETestTraySlotStatus.Have).Count==0)
|
|
|
|
|
{
|
|
|
|
|
MachineManage.Instance.SetTesterState(ETesterState.NotReady);
|
|
|
|
|
logInfo = GetClassName() + "通知中控产品全部已从治具中取出,状态变成NotReady";
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
@ -1056,7 +1067,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到周转盘放料位上方";
|
|
|
|
|
logInfo =GetClassName()+ $"到周转盘放料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到周转盘放料位上方;
|
|
|
|
|
}
|
|
|
|
@ -1064,7 +1075,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到周转盘放料位上方:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverY) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到周转盘放料位上方";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到周转盘放料位上方";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.周转盘放料前丢料检测;
|
|
|
|
|
}
|
|
|
|
@ -1126,7 +1137,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到周转盘放料位下方1";
|
|
|
|
|
logInfo = GetClassName() + $"到周转盘放料位下方1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到周转盘放料位下方1;
|
|
|
|
|
}
|
|
|
|
@ -1134,7 +1145,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到周转盘放料位下方1:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到周转盘放料位下方1";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到周转盘放料位下方1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.到周转盘放料位下方2;
|
|
|
|
|
}
|
|
|
|
@ -1149,7 +1160,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"到周转盘放料位下方2";
|
|
|
|
|
logInfo = GetClassName() + $"到周转盘放料位下方2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到周转盘放料位下方2;
|
|
|
|
|
}
|
|
|
|
@ -1157,15 +1168,15 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到周转盘放料位下方2:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到周转盘放料位下方2";
|
|
|
|
|
logInfo = GetClassName() + $"已运动到周转盘放料位下方2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
/*打开周转盘真空吸*/
|
|
|
|
|
List<TransitNozzle> hasProductNozzles = TransitNozzleManager.Instance.GetHasProductNozzles();
|
|
|
|
|
VacManager.TurnoverTrayVacSuction(EVacOperator.Open, hasProductNozzles.Select(n => n.ToIndex).ToArray());
|
|
|
|
|
/*打开周转盘真空吸*/
|
|
|
|
|
VacManager.TurnoverTrayVacSuction(EVacOperator.Open, hasProductNozzles.Select(n => n.ToIndex+1).ToArray());
|
|
|
|
|
/*关闭周转吸头真空吸*/
|
|
|
|
|
VacManager.TransitNozzleVacSuction( EVacOperator.Close,hasProductNozzles.Select(n=>n.FromIndex).ToArray());
|
|
|
|
|
VacManager.TransitNozzleVacSuction( EVacOperator.Close,hasProductNozzles.Select(n=>n.FromIndex + 1).ToArray());
|
|
|
|
|
/*打开周转吸头真空破*/
|
|
|
|
|
VacManager.TransitNozzleVacBreak(EVacOperator.Open, hasProductNozzles.Select(n => n.FromIndex).ToArray());
|
|
|
|
|
VacManager.TransitNozzleVacBreak(EVacOperator.Open, hasProductNozzles.Select(n => n.FromIndex + 1).ToArray());
|
|
|
|
|
Step = ETurnoverFlowStep.周转盘放料完成抬起1;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
@ -1179,7 +1190,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"周转盘放料完成准备抬起1";
|
|
|
|
|
logInfo = GetClassName() + $"周转盘放料完成准备抬起1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待周转盘放料完成抬起1;
|
|
|
|
|
}
|
|
|
|
@ -1187,7 +1198,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待周转盘放料完成抬起1:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"周转盘放料完成已抬起1";
|
|
|
|
|
logInfo = GetClassName() + $"周转盘放料完成已抬起1";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.周转盘放料完成抬起2;
|
|
|
|
|
|
|
|
|
@ -1202,7 +1213,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
{
|
|
|
|
|
Thread.Sleep(GlobalVar.VirtualAxisMoveTime);
|
|
|
|
|
}
|
|
|
|
|
logInfo = $"周转盘放料完成准备抬起2";
|
|
|
|
|
logInfo = GetClassName() + $"周转盘放料完成准备抬起2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待周转盘放料完成抬起2;
|
|
|
|
|
}
|
|
|
|
@ -1210,7 +1221,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待周转盘放料完成抬起2:
|
|
|
|
|
if (Ops.IsStop(AxisControl.TurnoverZ) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"周转盘放料完成已抬起2";
|
|
|
|
|
logInfo = GetClassName() + $"周转盘放料完成已抬起2";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.周转盘放料完成粘料检测;
|
|
|
|
|
|
|
|
|
@ -1242,7 +1253,8 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
switch (msgBox.Button)
|
|
|
|
|
{
|
|
|
|
|
case ETipButton.Skip:
|
|
|
|
|
MessageQueue.Instance.Insert($"{nameof(TurnoverFlow)}-点击了跳过按钮");
|
|
|
|
|
logInfo = GetClassName() + "点击了跳过按钮";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
foreach (int nozzleIndex in masticSlots)
|
|
|
|
|
{
|
|
|
|
|
TransitNozzle nozzle = TransitNozzleManager.Instance.Nozzle(nozzleIndex);
|
|
|
|
@ -1254,7 +1266,8 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case ETipButton.Yes:
|
|
|
|
|
MessageQueue.Instance.Insert($"{nameof(TurnoverFlow)}-点击了移动到安全位按钮");
|
|
|
|
|
logInfo = GetClassName() + "点击了移动到安全位按钮";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
TransitModuleSafePosFlow.Instance.GoSafePostion();
|
|
|
|
|
break;
|
|
|
|
|
default:
|
|
|
|
@ -1270,12 +1283,14 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.周转盘放料完成后真空检测:
|
|
|
|
|
foreach (var nozzle in TransitNozzleManager.Instance.GetHasProductNozzles())
|
|
|
|
|
{
|
|
|
|
|
TurnoverTraySlot slot = TurnoverTrayManager.Instance.Slot(nozzle.ToIndex);
|
|
|
|
|
GlobalTray.TurnoverTray.ChangeStatus(nozzle.ToIndex, ESlotStatus.Have);
|
|
|
|
|
TurnoverTrayManager.Instance.Slot(nozzle.ToIndex).AddProduct(nozzle.SN, nozzle.NozzleIndex, TurnoverType.Turnover, nozzle.NozzleIndex);
|
|
|
|
|
TurnoverTraySlot slot = TurnoverTrayManager.Instance.Slot(nozzle.ToIndex+1);
|
|
|
|
|
//GlobalTray.TurnoverTray.ChangeStatus(nozzle.ToIndex, ESlotStatus.Have);
|
|
|
|
|
slot.AddProduct(nozzle);
|
|
|
|
|
//TurnoverTrayManager.Instance.Slot(nozzle.ToIndex).AddProduct(nozzle.SN, nozzle.NozzleIndex, TurnoverType.Turnover, nozzle.NozzleIndex);
|
|
|
|
|
nozzle.Clear();
|
|
|
|
|
if (slot.HasVac() || GlobalVar.VirtualAxis|| GlobalVar.RunSpace)
|
|
|
|
|
{
|
|
|
|
|
GlobalTray.TurnoverTray.ChangeStatus(slot.Index, ESlotStatus.Have);
|
|
|
|
|
slot.VacException = false;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
@ -1366,7 +1381,7 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
errCode = AxisControl.TurnoverY.MovePos(SysConfigParam.GetValue<double>("PressY"), GlobalVar.WholeSpeed);
|
|
|
|
|
if ((errCode == Motion.ErrorCode.Ok) || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"周转吸头下料完成到安全位";
|
|
|
|
|
logInfo = GetClassName() + $"周转吸头下料完成到安全位";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
Step = ETurnoverFlowStep.等待到安全位;
|
|
|
|
|
}
|
|
|
|
@ -1378,21 +1393,21 @@ namespace Rs.MotionPlat.Flow
|
|
|
|
|
case ETurnoverFlowStep.等待到安全位:
|
|
|
|
|
if(Ops.IsStop("TurnoverY") || GlobalVar.VirtualAxis)
|
|
|
|
|
{
|
|
|
|
|
logInfo = $"已运动到安全位,任务结束";
|
|
|
|
|
logInfo = GetClassName()+$"已运动到安全位,任务结束";
|
|
|
|
|
MessageQueue.Instance.Insert(logInfo);
|
|
|
|
|
|
|
|
|
|
Step = ETurnoverFlowStep.等待任务;
|
|
|
|
|
Step = ETurnoverFlowStep.上报中控任务完成;
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case ETurnoverFlowStep.上报中控任务完成:
|
|
|
|
|
unloadOk = true;
|
|
|
|
|
TestCenter.Instance.LoadTestUnLoadResult();
|
|
|
|
|
List<TurnoverInfo> testUnLoadList = LoadAndUnloadTask.Instance.GetTestToTurnoverTasks();
|
|
|
|
|
//切换穴位状态
|
|
|
|
|
foreach (TurnoverInfo turnoverInfo in testUnLoadList)
|
|
|
|
|
{
|
|
|
|
|
GlobalTray.TurnoverTray.ChangeStatus(turnoverInfo.ToIndex + 1, ESlotStatus.Have);
|
|
|
|
|
}
|
|
|
|
|
//List<TurnoverInfo> testUnLoadList = LoadAndUnloadTask.Instance.GetTestToTurnoverTasks();
|
|
|
|
|
////切换穴位状态
|
|
|
|
|
//foreach (TurnoverInfo turnoverInfo in testUnLoadList)
|
|
|
|
|
//{
|
|
|
|
|
// GlobalTray.TurnoverTray.ChangeStatus(turnoverInfo.ToIndex + 1, ESlotStatus.Have);
|
|
|
|
|
//}
|
|
|
|
|
LoadAndUnloadTask.Instance.Clear(1);
|
|
|
|
|
MachineManage.Instance.SetLoadUnloadStatus(ERunState.Waiting);
|
|
|
|
|
Step = ETurnoverFlowStep.等待任务;
|
|
|
|
|