Merge branch 'Sic8ToSic6' into 整理机台兼容内容
This commit is contained in:
commit
f55efcecbf
|
@ -65,13 +65,25 @@ namespace SicRT.Modules.Schedulers
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
[Obsolete("Cassette等待传盘时不要使用这个函数,用另一个包含三个参数的函数。")]
|
/// <summary>
|
||||||
|
/// Manual模式进入等待时调用此函数,_lastTransferAction被设置为 **TransferTarget**。
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="robot"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
/// <exception cref="NotSupportedException"></exception>
|
||||||
public override bool WaitTransfer(ModuleName robot)
|
public override bool WaitTransfer(ModuleName robot)
|
||||||
{
|
{
|
||||||
Debug.Assert(false, "DO NOT use this method for cassette scheduler.");
|
_lastTransferSlot = -1;
|
||||||
throw new NotSupportedException();
|
return base.WaitTransfer(robot);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// AutoRun模式进入等待时调用此函数,_lastTransferAction被设置为 **Pick** 或 **Place** 。
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="robot"></param>
|
||||||
|
/// <param name="isPick"></param>
|
||||||
|
/// <param name="slot"></param>
|
||||||
|
/// <returns></returns>
|
||||||
public bool WaitTransfer(ModuleName robot, bool isPick, int slot)
|
public bool WaitTransfer(ModuleName robot, bool isPick, int slot)
|
||||||
{
|
{
|
||||||
_lastTransferAction = isPick ? TaskType.Pick : TaskType.Place;
|
_lastTransferAction = isPick ? TaskType.Pick : TaskType.Place;
|
||||||
|
@ -86,6 +98,12 @@ namespace SicRT.Modules.Schedulers
|
||||||
if (ret)
|
if (ret)
|
||||||
{
|
{
|
||||||
// 当Wafer返回到Cassette时,触发警告,响蜂鸣器
|
// 当Wafer返回到Cassette时,触发警告,响蜂鸣器
|
||||||
|
//! 注意:报警提示逻辑仅在AutoRun模式时生效,Manual模式没有此逻辑。
|
||||||
|
// 如何区分AutoRun还是ManualRun?参考WaitTransfer()调用:
|
||||||
|
// 1. 当调用WaitTransfer(ModuleName robot)是表示Manual模式
|
||||||
|
// 2. 当调用WaitTransfer(ModuleName robot, bool isPick, int slot)表示AutoRun模式
|
||||||
|
// WaitTransfer()两个重载中对_lastTransferAction的赋值不同,AutoRun模式_lastTransferAction为Pick或Place,而Manual模式为TransferTarget
|
||||||
|
|
||||||
if (robot == ModuleName.WaferRobot
|
if (robot == ModuleName.WaferRobot
|
||||||
&& _lastTransferAction == TaskType.Place
|
&& _lastTransferAction == TaskType.Place
|
||||||
&& WaferManager.Instance.CheckHasWafer(_module, _lastTransferSlot))
|
&& WaferManager.Instance.CheckHasWafer(_module, _lastTransferSlot))
|
||||||
|
|
Loading…
Reference in New Issue