Commit c55429b2 LN

20200805

横移3和横移1顶升下降之后需要等待1秒再检测托盘检测信号是否消失。
出料4紧急出料最多等待20-30秒,如果料架已离开或者当前无料架直接放行托盘。
上升端不到位就横移。
两头的横移有时皮带不转。
1 个父辈 4d2406af
......@@ -98,6 +98,7 @@ namespace OnlineStore.AssemblyLine
}
if (!isShow)
{
System.Net.ServicePointManager.DefaultConnectionLimit = 512;
XmlConfigurator.Configure();
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
......
进仓18个夹爪,夹紧DI信号不用
20200805
横移3和横移1顶升下降之后需要等待1秒再检测托盘检测信号是否消失。
出料4紧急出料最多等待20-30秒,如果料架已离开或者当前无料架直接放行托盘。
上升端不到位就横移。
两头的横移有时皮带不转。
进仓18个夹爪,夹紧DI信号不用
横移四个定位气缸暂时不用
......
......@@ -421,18 +421,20 @@ namespace OnlineStore.DeviceLibrary
else if (SecondMoveInfo.MoveStep.Equals(LineMoveStep.MO_200_WaitInoutParam))
{
if (MoveInfo.MoveType.Equals(LineMoveType.None) && StartTrayOut(SecondMoveInfo.MoveParam))
if ( StartTrayOut(SecondMoveInfo.MoveParam))
{
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_201_WaitOutEnd);
}
else if (SecondMoveInfo.IsTimeOut(120))
//如果当前无料串,或者料串已离开,直接放行 托盘
else if (SecondMoveInfo.IsTimeOut(30))
{
WarnMsg = SecondMoveInfo.Name + "[" + SecondMoveInfo.MoveStep + "] 等待出库移栽超时 [" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg + ",暂时放托盘离开");
TrayMoveOk();
}
else if (SecondMoveInfo.IsTimeOut(60))
else if (SecondMoveInfo.IsTimeOut(20))
{
WarnMsg = SecondMoveInfo.Name + "[" + SecondMoveInfo.MoveStep + "] 等待出库移栽超时 [" + Math.Round(MoveInfo.StepSpan().TotalSeconds, 1) + "]秒";
LogUtil.error(WarnMsg, DeviceID * 1000 + 21);
......@@ -505,6 +507,7 @@ namespace OnlineStore.DeviceLibrary
if (Config.SidesWayNum > 0)
{
CheckLog("托盘放行 " + SecondMoveInfo.SLog + " ,等待托盘离开");
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
SecondMoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW_TrayCheck, IO_VALUE.LOW));
}
else
......@@ -1559,7 +1562,7 @@ namespace OnlineStore.DeviceLibrary
}
return false;
}
}
internal bool WaitEmptyTray()
{
try
......
......@@ -40,15 +40,31 @@ namespace OnlineStore.DeviceLibrary
{
if (outParam == null || outParam.PosId == null || outParam.PosId.Equals(""))
{
LogUtil.error(Name + "出库失败,参数不完整:");
LogUtil.error(Name + "出库失败,参数不完整,托盘先离开");
TrayMoveOk();
LogUtil.error(outParam.ToStr());
return false;
}
if (IOValue(IO_Type.SL_Location_Check).Equals(IO_VALUE.LOW) || OutStoreHeight < 0)
{
LogUtil.error(Name + "出库" + outParam.ToStr() + "失败,未准备好料架,托盘先离开");
TrayMoveOk();
return false;
}
//如果已经开始送出料架,暂不处理
if (MoveInfo.MoveType.Equals(LineMoveType.OutStore) && MoveInfo.MoveStep >= LineMoveStep.FO_30_BatchAxisToP2)
{
LogUtil.error(Name + "出库" + outParam.ToStr() + "失败,未准备好料架");
LogUtil.error(Name + "出库" + outParam.ToStr() + "失败,正在送出料架,托盘先离开");
TrayMoveOk();
return false;
}
if (!MoveInfo.MoveType.Equals(LineMoveType.None))
{
return false;
}
runStatus = LineRunStatus.Busy;
lineStatus = LineStatus.OutStoreExecute;
......
......@@ -309,7 +309,7 @@ namespace OnlineStore.DeviceLibrary
{
return true;
}
else if (SW23_MoveInfo.MoveStep <= (LineMoveStep.SW12_WaitTrayGo)
else if (SW23_MoveInfo.MoveStep <= (LineMoveStep.SW13_WaitTrayGo)
&& SW23_MoveInfo.MoveStep >= (LineMoveStep.SW10_WatOutFixture2)
)
{
......@@ -333,7 +333,7 @@ namespace OnlineStore.DeviceLibrary
{
return true;
}
else if (SW41_MoveInfo.MoveStep <= (LineMoveStep.SW12_WaitTrayGo)
else if (SW41_MoveInfo.MoveStep <= (LineMoveStep.SW13_WaitTrayGo)
&& SW41_MoveInfo.MoveStep >= (LineMoveStep.SW10_WatOutFixture2))
{
if (CylinderIsOk(IO_Type.SW4_TopCylinder_Up, IO_Type.SW4_TopCylinder_Down))
......@@ -692,7 +692,7 @@ namespace OnlineStore.DeviceLibrary
if (result)
{
SW41_MoveInfo.NextMoveStep(LineMoveStep.SW12_WaitTrayGo);
SW41_MoveInfo.NextMoveStep(LineMoveStep.SW13_WaitTrayGo);
SWLog("横移轨道41:关闭皮带电机,不需要等待 托盘离开");
IOMove(IO_Type.SW4_MotorRun, IO_VALUE.LOW);
IOMove(IO_Type.SW1_MotorRun, IO_VALUE.LOW);
......@@ -705,14 +705,11 @@ namespace OnlineStore.DeviceLibrary
if (topCylinderDown)
{
SW41_MoveInfo.NextMoveStep(LineMoveStep.SW12_WaitTrayGo);
SWLog("横移轨道41:关闭皮带电机,等待SW1_TrayCheck=0,关闭横移电机 ");
SW41_MoveInfo.NextMoveStep(LineMoveStep.SW12_WaitTime);
SWLog("横移轨道41:关闭皮带电机,等待1秒后,关闭横移电机 ");
IOMove(IO_Type.SW4_MotorRun, IO_VALUE.LOW);
IOMove(IO_Type.SW1_MotorRun, IO_VALUE.LOW);
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW1_TrayCheck, IO_VALUE.LOW));
// SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(5000));
// SW41_MoveInfo.OneWaitCanEndStep = true;
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
}
else
{
......@@ -721,8 +718,17 @@ namespace OnlineStore.DeviceLibrary
CylinderMove(SW41_MoveInfo, IO_Type.SW1_TopCylinder_Up, IO_Type.SW1_TopCylinder_Down);
}
}
}
else if (SW41_MoveInfo.MoveStep.Equals(LineMoveStep.SW12_WaitTime))
{
SW41_MoveInfo.NextMoveStep(LineMoveStep.SW13_WaitTrayGo);
SWLog("横移轨道41:关闭皮带电机,等待SW1_TrayCheck=0,关闭横移电机 ");
IOMove(IO_Type.SW4_MotorRun, IO_VALUE.LOW);
IOMove(IO_Type.SW1_MotorRun, IO_VALUE.LOW);
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW1_TrayCheck, IO_VALUE.LOW));
}
else if (SW41_MoveInfo.MoveStep.Equals(LineMoveStep.SW12_WaitTrayGo))
else if (SW41_MoveInfo.MoveStep.Equals(LineMoveStep.SW13_WaitTrayGo))
{
lastSw4StopDownTime = DateTime.Now.AddSeconds(-2);
SW41_MoveInfo.EndMove();
......@@ -737,6 +743,8 @@ namespace OnlineStore.DeviceLibrary
SWLog("横移轨道41:开始转动电机 ,等待1000,SW4_TrayCheck=0, SW1_TrayCheck=1 ");
IOMove(IO_Type.SW4_MotorRun, IO_VALUE.HIGH);
IOMove(IO_Type.SW1_MotorRun, IO_VALUE.HIGH);
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW4_MotorRun, IO_VALUE.HIGH));
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW1_MotorRun, IO_VALUE.HIGH));
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW1_TrayCheck, IO_VALUE.HIGH));
SW41_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW4_TrayCheck, IO_VALUE.LOW));
}
......@@ -937,8 +945,8 @@ namespace OnlineStore.DeviceLibrary
}
if (result)
{
SW23_MoveInfo.NextMoveStep(LineMoveStep.SW12_WaitTrayGo);
SWLog("横移轨道41:关闭皮带电机,需要紧急出料,不需要等待 托盘离开");
SW23_MoveInfo.NextMoveStep(LineMoveStep.SW13_WaitTrayGo);
SWLog("横移轨道23:关闭皮带电机,需要紧急出料,不需要等待 托盘离开");
IOMove(IO_Type.SW2_MotorRun, IO_VALUE.LOW);
IOMove(IO_Type.SW3_MotorRun, IO_VALUE.LOW);
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW2_MotorRun, IO_VALUE.LOW));
......@@ -948,14 +956,11 @@ namespace OnlineStore.DeviceLibrary
{
if (topCylinderDown)
{
SW23_MoveInfo.NextMoveStep(LineMoveStep.SW12_WaitTrayGo);
SWLog("横移轨道23:关闭皮带电机,等待SW3_TrayCheck=0,关闭横移电机 ");
SW23_MoveInfo.NextMoveStep(LineMoveStep.SW12_WaitTime);
SWLog("横移轨道23:关闭皮带电机,等待1秒钟,关闭横移电机 ");
IOMove(IO_Type.SW2_MotorRun, IO_VALUE.LOW);
IOMove(IO_Type.SW3_MotorRun, IO_VALUE.LOW);
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW3_TrayCheck, IO_VALUE.LOW));
// SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(5000));
// SW23_MoveInfo.OneWaitCanEndStep = true;
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
}
else
{
......@@ -965,11 +970,16 @@ namespace OnlineStore.DeviceLibrary
}
}
}
//else if (SW23_MoveInfo.MoveStep.Equals(LineMoveStep.SW11_StopDrive))
//{
//}
else if (SW23_MoveInfo.MoveStep.Equals(LineMoveStep.SW12_WaitTrayGo))
else if (SW23_MoveInfo.MoveStep.Equals(LineMoveStep.SW12_WaitTime))
{
SW23_MoveInfo.NextMoveStep(LineMoveStep.SW13_WaitTrayGo);
SWLog("横移轨道23:关闭皮带电机,等待SW3_TrayCheck=0,关闭横移电机 ");
IOMove(IO_Type.SW2_MotorRun, IO_VALUE.LOW);
IOMove(IO_Type.SW3_MotorRun, IO_VALUE.LOW);
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(2000));
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW3_TrayCheck, IO_VALUE.LOW));
}
else if (SW23_MoveInfo.MoveStep.Equals(LineMoveStep.SW13_WaitTrayGo))
{
lastSw2StopDownTime = DateTime.Now.AddSeconds(-2);
SW23_MoveInfo.EndMove();
......@@ -985,6 +995,8 @@ namespace OnlineStore.DeviceLibrary
SWLog("横移轨道23:开始转动电机 ,等待1000,SW2_TrayCheck=0, SW3_TrayCheck=1 ");
IOMove(IO_Type.SW2_MotorRun, IO_VALUE.HIGH);
IOMove(IO_Type.SW3_MotorRun, IO_VALUE.HIGH);
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW2_MotorRun, IO_VALUE.HIGH));
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW3_MotorRun, IO_VALUE.HIGH));
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW3_TrayCheck, IO_VALUE.HIGH));
SW23_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.SW2_TrayCheck, IO_VALUE.LOW));
}
......
......@@ -342,6 +342,8 @@ namespace OnlineStore.DeviceLibrary
IOMove(IO_Type.Shunt_MotorRun1, IO_VALUE.HIGH);
IOMove(IO_Type.Shunt_MotorRun2, IO_VALUE.HIGH);
CylinderMove(Shunt_MoveInfo, IO_Type.Shunt_TopCylinder_Down2, IO_Type.Shunt_TopCylinder_Up2);
Shunt_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Shunt_MotorRun1, IO_VALUE.HIGH));
Shunt_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Shunt_MotorRun2, IO_VALUE.HIGH));
Shunt_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Shunt_Check1_Front, IO_VALUE.LOW));
Shunt_MoveInfo.WaitList.Add(WaitResultInfo.WaitIO(IO_Type.Shunt_Check2_Middle, IO_VALUE.LOW));
}
......
......@@ -299,6 +299,18 @@ namespace OnlineStore.DeviceLibrary
#region 上下气缸伺服运动
private bool UpdownIsUp()
{
if (UseAxis)
{
return true;
}
else
{
return CylinderIsOk(IO_Type.UpDownCylinder_Down, IO_Type.UpDownCylinder_Up);
}
}
private void UpdownUpMove()
{
if (UseAxis)
......@@ -308,7 +320,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
CylinderMove(MoveInfo, IO_Type.UpDownCylinder_Down, IO_Type.UpDownCylinder_Up);
}
}
......@@ -323,7 +335,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
CylinderMove(MoveInfo, IO_Type.UpDownCylinder_Up, IO_Type.UpDownCylinder_Down);
}
}
......@@ -337,7 +349,7 @@ namespace OnlineStore.DeviceLibrary
}
else
{
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
CylinderMove(MoveInfo, IO_Type.UpDownCylinder_Up, IO_Type.UpDownCylinder_Down);
}
}
......
......@@ -26,12 +26,13 @@ namespace OnlineStore.DeviceLibrary
}
if (runStatus.Equals(LineRunStatus.Runing))
{
LogInfo("启动出库【" + posId + "】 ");
LogInfo("启动出库【" + posId + "】升降气缸上升 ");
runStatus = LineRunStatus.Busy;
lineStatus = LineStatus.OutStoreExecute;
MoveInfo.NewMove(LineMoveType.OutStore);
MoveInfo.MoveParam = param;
MoveInfo.NextMoveStep(LineMoveStep.MO_50_StartOutProcess);
UpdownUpMove();
// TrayManager.AddNeedEmptyTrayNum();
return true;
}
......@@ -59,10 +60,19 @@ namespace OnlineStore.DeviceLibrary
#region 移载装置 移栽物品操作
if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_50_StartOutProcess))
{
MoveInfo.NextMoveStep(LineMoveStep.MO_51_CylinderBefore);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
OutLog("出库 " + MoveInfo.MoveStep + ": 前后气缸前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
if (UpdownIsUp())
{
MoveInfo.NextMoveStep(LineMoveStep.MO_51_CylinderBefore);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(1000));
OutLog("出库 " + MoveInfo.MoveStep + ": 前后气缸前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.MO_50_StartOutProcess);
OutLog("出库 " + MoveInfo.MoveStep + ": 升降气缸上升");
UpdownUpMove();
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_51_CylinderBefore))
{
......@@ -107,9 +117,19 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MO_55_CylinderUp))
{
if (IsBigStore())
if (UpdownIsUp())
{
if (TrayIsOk())
if (IsBigStore())
{
if (TrayIsOk())
{
MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
OutLog("出库 " + MoveInfo.SLog + ": 前后气缸后退");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
}
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
......@@ -119,10 +139,9 @@ namespace OnlineStore.DeviceLibrary
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.MO_56_CylinderAfter);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(200));
OutLog("出库 " + MoveInfo.SLog + ": 前后气缸后退");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
MoveInfo.NextMoveStep(LineMoveStep.MO_55_CylinderUp);
OutLog("出库 " + MoveInfo.SLog + ": 上下气缸上升");
UpdownUpMove();
}
}
#endregion
......@@ -287,16 +306,7 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.NextMoveStep(LineMoveStep.MI_09_CylinderUp);
InLog("入库 " + MoveInfo.SLog + ": 上下气缸上升");
UpdownUpMove();
//if (MoveInfo.MoveParam.PlateW.Equals(7))
//{
// InLog("放托盘(放开阻挡): " + MoveInfo.SLog + " 7寸盘已移走,气缸1下降");
// SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
// CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
//}
//else
//{
CylinderMove(null, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
//}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_09_CylinderUp))
{
......@@ -306,20 +316,24 @@ namespace OnlineStore.DeviceLibrary
MoveInfo.WaitList.Add(WaitResultInfo.WaitBoxCanReviceTray());
TrayManager.UpdateTrayInfo(num);
//阻挡气缸移动
//if (SecondMoveInfo.MoveStep < LineMoveStep.MO_14_TopDown)
//{
// SecondMoveInfo.NewMove(LineMoveType.CheckFixture);
InLog("放托盘(放开阻挡): " + MoveInfo.SLog + " 物品已移走,顶升气缸1下降");
SecondMoveInfo.NextMoveStep(LineMoveStep.MO_14_TopDown);
CylinderMove(SecondMoveInfo, IO_Type.TopCylinder_UP, IO_Type.TopCylinder_Down);
//}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_10_WaitBox))
{
MoveInfo.NextMoveStep(LineMoveStep.MI_10_CylinderBefore);
InLog("入库: " + MoveInfo.SLog + " 前后气缸1前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
if (UpdownIsUp())
{
MoveInfo.NextMoveStep(LineMoveStep.MI_10_CylinderBefore);
InLog("入库: " + MoveInfo.SLog + " 前后气缸1前进");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_After, IO_Type.BeforeAfterCylinder_Before);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.MI_10_WaitBox);
InLog("入库: " + MoveInfo.SLog + " 升降气缸上升");
UpdownUpMove();
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_10_CylinderBefore))
{
......@@ -350,14 +364,22 @@ namespace OnlineStore.DeviceLibrary
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_13_UpdownCylinderUp))
{
MoveInfo.NextMoveStep(LineMoveStep.MI_14_CylinderAfter);
InLog("入库 " + MoveInfo.SLog + ",前后气缸后退,等待300 ");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
//此时box就可以入库操作了 //触发事件,BOX入库
// LineServer.StartInStore(DeviceID, MoveInfo.MoveParam);
if (UpdownIsUp())
{
MoveInfo.NextMoveStep(LineMoveStep.MI_14_CylinderAfter);
InLog("入库 " + MoveInfo.SLog + ",前后气缸后退,等待300 ");
CylinderMove(MoveInfo, IO_Type.BeforeAfterCylinder_Before, IO_Type.BeforeAfterCylinder_After);
MoveInfo.WaitList.Add(WaitResultInfo.WaitTime(300));
//此时box就可以入库操作了 //触发事件,BOX入库
// LineServer.StartInStore(DeviceID, MoveInfo.MoveParam);
}
else
{
MoveInfo.NextMoveStep(LineMoveStep.MI_13_UpdownCylinderUp);
InLog("入库 " + MoveInfo.SLog + ",上下气缸上升");
UpdownUpMove();
}
}
else if (MoveInfo.MoveStep.Equals(LineMoveStep.MI_14_CylinderAfter))
{
MoveInfo.NextMoveStep(LineMoveStep.MI_15_SendPosToStore);
......
......@@ -456,11 +456,14 @@ namespace OnlineStore.DeviceLibrary
/// 停止横移轨道转动,横移轨道顶升气缸下降
/// </summary>
SW11_TopDown=5011,
/// <summary>
/// 等待托盘流出,等待1秒后再检测托盘信号是否消失
/// </summary>
SW12_WaitTime = 5012,
/// <summary>
/// 等待托盘流出,上升阻挡气缸
/// </summary>
SW12_WaitTrayGo=5012,
SW13_WaitTrayGo =5013,
#endregion
......
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!