Browse Source

Fixed the blocking bug after error PM restored.

sangwq 9 months ago
parent
commit
98cc9d6be7
1 changed files with 3 additions and 6 deletions
  1. 3 6
      Venus/Venus_RT/Modules/SystemDispatcher.cs

+ 3 - 6
Venus/Venus_RT/Modules/SystemDispatcher.cs

@@ -3414,14 +3414,11 @@ namespace Venus_RT.Modules
                     {
                         if (_specialRoutingPattern == SpecialRoutingPattern.LongTimeRecipe && _tmRobotSingleArmOption == 0)
                         {
-                            if(_dictModuleTask.Where(mod => ModuleHelper.IsPm(mod.Key) && !mod.Value.HasWafer && mod.Value.Scheduler.IsOnline).Count() == 0)
+                            if(_dictModuleTask.Where(mod => ModuleHelper.IsPm(mod.Key) && !mod.Value.HasWafer && mod.Value.Scheduler.IsOnline).Count() == 0 && ModuleHelper.IsLoadPort(robotWafers[0].destMod))
                             {
-                                if (ModuleHelper.IsLoadPort(robotWafers[0].destMod))
+                                if (outLLModule.ReayForTMInTime(10) && outLLWaferStatus.emptySlot.Count > 0)
                                 {
-                                    if (outLLModule.ReayForTMInTime(10) && outLLWaferStatus.emptySlot.Count > 0)
-                                    {
-                                        _tmSchdActions.Enqueue(new List<MoveItem> { new MoveItem(ModuleName.TMRobot, robotWafers[0].currentSlot, outLL, outLLWaferStatus.emptySlot[0], (Hand)(robotWafers[0].currentSlot)) });
-                                    }
+                                    _tmSchdActions.Enqueue(new List<MoveItem> { new MoveItem(ModuleName.TMRobot, robotWafers[0].currentSlot, outLL, outLLWaferStatus.emptySlot[0], (Hand)(robotWafers[0].currentSlot)) });
                                 }
 
                                 return;