|
@@ -1,5 +1,6 @@
|
|
|
using Aitex.Core.RT.Routine;
|
|
|
using Aitex.Core.RT.SCCore;
|
|
|
+using Aitex.Sorter.Common;
|
|
|
using MECF.Framework.Common.Equipment;
|
|
|
using System;
|
|
|
using System.Collections.Generic;
|
|
@@ -17,7 +18,8 @@ namespace Venus_RT.Modules.TM.VenusEntity
|
|
|
private enum HomeStep
|
|
|
{
|
|
|
seRobotHome,
|
|
|
- seRobotCheckLoad,
|
|
|
+ seRobotBlade1CheckLoad,
|
|
|
+ seRobotBlade2CheckLoad,
|
|
|
seRobotDelay,
|
|
|
seSlitDoor,
|
|
|
seSlitDoorDelay,
|
|
@@ -60,13 +62,18 @@ namespace Venus_RT.Modules.TM.VenusEntity
|
|
|
//模式 指令名称 执行命令 检查结束命令 超时时长
|
|
|
public RState Monitor()
|
|
|
{
|
|
|
- Runner.Run(HomeStep.seRobotHome, HomeRobot, CheckRobotReady, _robotHomingTimeout)
|
|
|
- .Run(HomeStep.seRobotCheckLoad, CheckLoad, CheckRobotReady, _robotHomingTimeout)
|
|
|
- .Delay(HomeStep.seRobotDelay, 500)
|
|
|
- .Run(HomeStep.seSlitDoor, HomeSlitDoor, CheckSlitDoorReady, _slitDoorHomingTimeout)
|
|
|
- .Delay(HomeStep.seSlitDoorDelay, 500)
|
|
|
- .Run(HomeStep.seVPAHome, HomeVPA, CheckVPAReady, _vpaHomingTimeout)
|
|
|
- .End(HomeStep.seEnd, NullFun, _delay_50ms);
|
|
|
+ if(!_TMHomeRBFlag)
|
|
|
+ Runner.Run(HomeStep.seRobotHome, HomeRobot, CheckRobotReady, _robotHomingTimeout)
|
|
|
+ .Run(HomeStep.seRobotBlade1CheckLoad, Blade1CheckLoad, CheckRobotReady, _robotHomingTimeout)
|
|
|
+ .Run(HomeStep.seRobotBlade2CheckLoad, Blade2CheckLoad, CheckRobotReady, _robotHomingTimeout)
|
|
|
+ .Delay(HomeStep.seRobotDelay, 500)
|
|
|
+ .Run(HomeStep.seSlitDoor, HomeSlitDoor, CheckSlitDoorReady, _slitDoorHomingTimeout)
|
|
|
+ .Delay(HomeStep.seSlitDoorDelay, 500)
|
|
|
+ .Run(HomeStep.seVPAHome, HomeVPA, CheckVPAReady, _vpaHomingTimeout)
|
|
|
+ .End(HomeStep.seEnd, NullFun, _delay_50ms);
|
|
|
+ else
|
|
|
+ Runner.Run(HomeStep.seRobotHome, HomeRobot, CheckRobotReady, _robotHomingTimeout)
|
|
|
+ .End(HomeStep.seEnd, NullFun, _delay_50ms);
|
|
|
return Runner.Status;
|
|
|
}
|
|
|
|
|
@@ -106,9 +113,14 @@ namespace Venus_RT.Modules.TM.VenusEntity
|
|
|
//robot状态结束
|
|
|
return _robot.Status == RState.End;
|
|
|
}
|
|
|
- private bool CheckLoad()
|
|
|
+ private bool Blade1CheckLoad()
|
|
|
+ {
|
|
|
+ return _robot.CheckLoad(Hand.Blade1);
|
|
|
+ }
|
|
|
+
|
|
|
+ private bool Blade2CheckLoad()
|
|
|
{
|
|
|
- return _robot.CheckLoad();
|
|
|
+ return _robot.CheckLoad(Hand.Blade2);
|
|
|
}
|
|
|
private bool HomeRobot()
|
|
|
{
|