Browse Source

fix the crash issue.

sangwq 10 months ago
parent
commit
2edb43d393

+ 1 - 1
Venus/Venus_RT/Devices/PreAligner/HongHuVPA.cs

@@ -80,7 +80,7 @@ namespace Venus_RT.Devices.PreAligner
             _module = module;
             string port = SC.GetStringValue($"{module}.VPAPort");
             _serialport = new AsyncSerialPort(port, 9600, 8, Parity.None, StopBits.One, _newLine, _IsAsciiMode);
-            WaferManager.Instance.SubscribeLocation(_module, 1);
+            WaferManager.Instance.SubscribeLocation(ModuleName.VPA, 1);
             _serialport.Open();
             _serialport.OnDataChanged += OnReceiveData;
             _state = RState.Init;

+ 11 - 15
Venus/Venus_RT/Modules/RouteManager.cs

@@ -170,7 +170,6 @@ namespace Venus_RT.Modules
         private TMCycle _TMCycle;
         private ICycle _AutoCycle;
         private ManualTransfer _manualTransfer;
-        private ReturnAllWafer _returnWafer;
         private SETMCycle _seTMCycle;
         private SEManualTransfer _setransfer;
         private SEReturnWafer _sereturnWafer;
@@ -669,7 +668,6 @@ namespace Venus_RT.Modules
             PMB?.Initialize();
             PMC?.Initialize();
             PMD?.Initialize();
-            TM?.Initialize();
             LLA?.Initialize();
             LLB?.Initialize();
 
@@ -677,22 +675,22 @@ namespace Venus_RT.Modules
             VCE?.Initialize();
             VCEA?.Initialize();
             VCEB?.Initialize();
-            seTM?.Initialize();
 
-            if(RtInstance.ConfigType != ConfigType.VenusSE && RtInstance.ConfigType != ConfigType.VenusDE)
+
+            if(RtInstance.ConfigType == ConfigType.VenusSE || RtInstance.ConfigType == ConfigType.VenusDE)
             {
+                seTM?.Initialize();
+                _seTMCycle = new SETMCycle(ModuleName.SETM);
+                _setransfer = new SEManualTransfer();
+                _sereturnWafer = new SEReturnWafer(_setransfer);
+            }
+            else
+            {
+                TM?.Initialize();
                 _TMCycle = new TMCycle();
                 _manualTransfer = new ManualTransfer();
+                _AutoCycle = new SystemDispatcher();
             }
-                
-            //_AutoCycle = new AutoCycle();
-            _AutoCycle = new SystemDispatcher();
-            
-            _returnWafer = new ReturnAllWafer(_manualTransfer);
-            _seTMCycle = new SETMCycle(ModuleName.SETM);
-            _setransfer = new SEManualTransfer();
-            _sereturnWafer = new SEReturnWafer(_setransfer);
-
 
             BuildTransitionTable();
             return true;
@@ -877,7 +875,6 @@ namespace Venus_RT.Modules
         }
         private bool FsmExitReturnWafer(object[] objs)
         {
-            _returnWafer.Clear();
             return true;
         }
 
@@ -889,7 +886,6 @@ namespace Venus_RT.Modules
         private bool FsmAbort(object[] objs)
         {
             _manualTransfer.Clear();
-            _returnWafer.Clear();
             _AutoCycle.Clear();
             return true;
         }