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