1.修正AutoTranfer时TMRobot不取Buffer中已用完次数的Tray的问题

This commit is contained in:
HCL 2024-04-08 18:48:25 +08:00
parent 213dcaebeb
commit 8498c8ce93
3 changed files with 69 additions and 2 deletions

View File

@ -1764,7 +1764,7 @@
<config default="true" name="IsVerifyDoorEnabled" visible="false" description="TM是否set atm door" max="" min="" paramter="" tag="" unit="" type="Bool" />
<config default="120" name="PostTransferTimeout" description="Post transfer time out" max="1000" min="0" paramter="" tag="" unit="s" type="Integer" />
<config default="960" name="AtmPressureBase" description="判断大气压的时候,压力值需要大于该值" max="1200" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="302" name="VacuumPressureBase" description="判断真空的时候,压力值需要小于该值" max="1200" min="0" paramter="" tag="" unit="mbar" type="Double" visible="false"/>
<config default="302" name="VacuumPressureBase" description="判断真空的时候,压力值需要小于该值" max="1200" min="0" paramter="" tag="" unit="mbar" type="Double" visible="true"/>
<config default="1100" name="VentMaxPressure" description="腔体到达此压力自动关闭Vent阀门" max="1200" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="0.5" name="ForelinePressureBase" visible="false" description="抽气的时候Foreline压力值需要小于该值" max="1200" min="0" paramter="" tag="" unit="mbar" type="Double" />
<config default="true" name="RunPumpRoutineEventBelowBasePressure" visible="false" description="即使在低压,仍然继续抽" max="" min="" paramter="" tag="" unit="" type="Bool" />

View File

@ -2358,6 +2358,29 @@ namespace SicRT.Modules
}
}
if (!_tmRobot.IsAvailable || !_buffer.IsAvailable)
{
return;
}
//第三种情况如果Buffer1中有用尽次数的Tray,先取Tray,Load腔需没有Tray
canPick = _buffer.HasTrayAndExceedProcessCount(0)
&& _tmRobot.NoTray(0)
&& _load.IsAvailable
&& _load.IsReadyForPlace(ModuleName.TMRobot, 0)
&& _load.NoTray(0);
if (canPick)
{
if (_buffer.IsReadyForPick(ModuleName.TMRobot, 0))
{
if (_tmRobot.Pick(_buffer.Module, 0, Hand.Blade1))
{
_buffer.WaitTransfer(ModuleName.TMRobot);
return;
}
}
}
}
private void MonitorTmRobotBuffer2PickTask()
@ -2417,6 +2440,28 @@ namespace SicRT.Modules
}
}
}
if (!_tmRobot.IsAvailable || !_buffer.IsAvailable)
{
return;
}
//第三种情况如果Buffer2中有用尽次数的Tray,先取Tray,Load腔需没有Tray
canPick = _buffer.HasTrayAndExceedProcessCount(1)
&& _tmRobot.NoTray(0)
&& _load.IsAvailable
&& _load.IsReadyForPlace(ModuleName.TMRobot, 0)
&& _load.NoTray(0);
if (canPick)
{
if (_buffer.IsReadyForPick(ModuleName.TMRobot, 0))
{
if (_tmRobot.Pick(_buffer.Module, 1, Hand.Blade1))
{
_buffer.WaitTransfer(ModuleName.TMRobot);
return;
}
}
}
}
private void MonitorTmRobotBuffer3PickTask()
@ -2509,6 +2554,28 @@ namespace SicRT.Modules
}
}
}
if (!_tmRobot.IsAvailable || !_buffer.IsAvailable)
{
return;
}
//第三种情况如果Buffer3中有用尽次数的Tray,先取Tray,Load腔需没有Tray
canPick = _buffer.HasTrayAndExceedProcessCount(2)
&& _tmRobot.NoTray(0)
&& _load.IsAvailable
&& _load.IsReadyForPlace(ModuleName.TMRobot, 0)
&& _load.NoTray(0);
if (canPick)
{
if (_buffer.IsReadyForPick(ModuleName.TMRobot, 0))
{
if (_tmRobot.Pick(_buffer.Module, 2, Hand.Blade1))
{
_buffer.WaitTransfer(ModuleName.TMRobot);
return;
}
}
}
}
private void MonitorTmRobotPMPlaceTask()

View File

@ -6,7 +6,7 @@ Auto-GE 自动通用版适用有EFEM设备
## 下次发行备忘
- Bug修复
-修正AutoTranfer时TMRobot不取Buffer中已用完次数的Tray的问题
- 新特性