SchedulerLoadLock中增加Wafer Place以后的Purge标记。
This commit is contained in:
parent
054542eb66
commit
6574353eb6
|
@ -1654,16 +1654,7 @@ namespace SicRT.Modules
|
|||
return;
|
||||
}
|
||||
|
||||
// 如果Sequence的下一步是Load腔,则进行吹扫
|
||||
/*if (_load.CheckWaferNextStepIsThis(ModuleName.LoadLock, 0) && !_unload.IsInPumping && !_tmRobot.IsInPumping)
|
||||
{
|
||||
// Group以后执行吹扫动作
|
||||
_load.Purge(_load.GetWaferPurgeCount(0), _load.GetWaferPumpDelayTime(0));
|
||||
_load.GetWaferInfo(0).NextSequenceStep++;
|
||||
return;
|
||||
}*/
|
||||
|
||||
if (_load.HasPurged == false)
|
||||
if (_load.HasPurgedAfterGrouped == false)
|
||||
return;
|
||||
|
||||
// 有Wafer和石墨盘,等待TM来取
|
||||
|
@ -1993,7 +1984,7 @@ namespace SicRT.Modules
|
|||
if (canPlace)
|
||||
{
|
||||
// TMRobot向Load喂Tray时,如果Wafer还未Purge,先Purge
|
||||
if (_load.HasPurged == false)
|
||||
if (_load.HasPurgedAfterGrouped == false)
|
||||
{
|
||||
if (_load.CheckWaferNextStepIsThis(ModuleName.LoadLock, 0) && !_unload.IsInPumping)
|
||||
{
|
||||
|
@ -2740,7 +2731,7 @@ namespace SicRT.Modules
|
|||
return;
|
||||
|
||||
// 如果Tray从Cassette喂进来,则等Wafer/Tray组合完毕后统一Purge
|
||||
if (_load.HasPurged == false && _load.HasWafer(0) && _load.HasTray(0) && _load.CheckWaferTrayGrouped())
|
||||
if (_load.HasPurgedAfterGrouped == false && _load.HasWafer(0) && _load.HasTray(0) && _load.CheckWaferTrayGrouped())
|
||||
{
|
||||
if (_load.CheckWaferNextStepIsThis(ModuleName.LoadLock, 0) && !_unload.IsInPumping && !_tmRobot.IsInPumping)
|
||||
{
|
||||
|
|
|
@ -57,12 +57,17 @@ namespace SicRT.Scheduler
|
|||
_task == TaskType.Pump || _task == TaskType.Purge || _task == TaskType.PrepareTransfer;
|
||||
|
||||
/// <summary>
|
||||
/// 是否已执行Purge.
|
||||
/// <para> 当Wafer从Cassette传入后,是否Purge分两种情况:</para>
|
||||
/// <para> 1. 如果Tray来自Buffer,则直接Purge</para>
|
||||
/// <para> 2. 如果Tray来自Cassette,等Tray放好后Purge</para>
|
||||
/// 是否执行放Wafer后,TM放Tray前的Purge。
|
||||
/// <para>如果Tray来自TMRobot,放完Wafer马上Purge。</para>
|
||||
/// <para>如果Tray来自TrayCassette,放完Tray以后统一Purge。</para>
|
||||
/// </summary>
|
||||
public bool HasPurged { get; private set; }
|
||||
public bool HasPurgedAfterWaferPlaced { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// 是否已执行组合后、TM取盘前的Purge.
|
||||
/// <para>无论Tray来自TMRobot还是TrayRobot,Group以后一定要Purge。</para>
|
||||
/// <para>Purge次数使用Sequence中的配置。</para>
|
||||
public bool HasPurgedAfterGrouped { get; private set; }
|
||||
|
||||
#endregion
|
||||
|
||||
|
@ -152,7 +157,8 @@ namespace SicRT.Scheduler
|
|||
{
|
||||
lock (SyncRoot)
|
||||
{
|
||||
HasPurged = false;
|
||||
HasPurgedAfterWaferPlaced = false;
|
||||
HasPurgedAfterGrouped = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -197,7 +203,7 @@ namespace SicRT.Scheduler
|
|||
{
|
||||
_task = TaskType.Purge;
|
||||
LogTaskStart(_task, $"{Module} purge for new job");
|
||||
HasPurged = true;
|
||||
HasPurgedAfterGrouped = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue