Browse Source

fix IsUnloadCompleted标志位调整

jiangjy 2 weeks ago
parent
commit
e193151597

+ 2 - 0
FrameworkLocal/Common/SubstrateTrackings/CarrierManager.cs

@@ -4,6 +4,7 @@ using Aitex.Core.RT.Event;
 using Aitex.Core.RT.Log;
 using Aitex.Core.Util;
 using Aitex.Sorter.RT.Module.DBRecorder;
+using DocumentFormat.OpenXml.Wordprocessing;
 using MECF.Framework.Common.Equipment;
 using MECF.Framework.Common.Utilities;
 using System;
@@ -161,6 +162,7 @@ namespace MECF.Framework.Common.SubstrateTrackings
             CarrierDataRecorder.Unloaded(_locationCarriers[module][0].InnerId.ToString());
 
             _locationCarriers[module][0].Clear();
+            LOG.Info($"{module} DeleteCarrier");
 
             Serialize();
         }

+ 2 - 2
Furnace/FurnaceRT/Config/System.sccfg

@@ -485,7 +485,7 @@
 		<config default="10" name="PickTimeout" description="Pick Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
 		<config default="10" name="HomeTimeout" description="Home Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
 		<config default="10" name="MotionTimeout" description="Motion Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
-		<config default="127.0.0.1:10002" name="Address" description="Robot ip,default 192.168.250.35:13000" max="" min="" paramter="" tag="" unit="" type="String" />
+		<config default="127.0.0.1:10001" name="Address" description="Robot ip,default 192.168.250.35:13000" max="" min="" paramter="" tag="" unit="" type="String" />
 		<config default="10" name="PlaceTimeout" description="Place Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
 		<config default="10" name="ExtendTimeout" description="Extend Time Out" max="60" min="1" paramter="" tag="" unit="s" type="Integer"  visible="false"/>
 		<config default="10" name="RetractTimeout" description="Retract Time Out" max="60" min="1" paramter="" tag="" unit="s" type="Integer"  visible="false"/>
@@ -2334,7 +2334,7 @@
 		<config default="10" name="PickTimeout" description="Pick Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
 		<config default="10" name="HomeTimeout" description="Home Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
 		<config default="10" name="MotionTimeout" description="Motion Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
-		<config default="127.0.0.1:10001" name="Address" description="Robot ip,default 192.168.250.32:13000" max="" min="" paramter="" tag="" unit="" type="String" />
+		<config default="127.0.0.1:10002" name="Address" description="Robot ip,default 192.168.250.32:13000" max="" min="" paramter="" tag="" unit="" type="String" />
 		<config default="10" name="PlaceTimeout" description="Place Time Out" max="360" min="1" paramter="" tag="" unit="s" type="Integer" />
 		<config default="10" name="ExtendTimeout" description="Extend Time Out" max="60" min="1" paramter="" tag="" unit="s" type="Integer"  visible="false"/>
 		<config default="10" name="RetractTimeout" description="Retract Time Out" max="60" min="1" paramter="" tag="" unit="s" type="Integer"  visible="false"/>

+ 7 - 2
Furnace/FurnaceRT/Devices/IoLP.cs

@@ -60,8 +60,7 @@ namespace FurnaceRT.Devices
         {
             get
             {
-                if (_isSimulatorMode)
-                    return CarrierManager.Instance.CheckHasCarrier(LPModuleName.ToString(), 0);
+               
                 if (_diInPosition1 != null && _diInPosition2 != null && _diInPosition3 != null && _doPresenceLight != null)
                 {
                     //  _doPresenceLight.Value = _diInPosition1.Value && _diInPosition2.Value && _diInPosition3.Value;
@@ -344,6 +343,8 @@ namespace FurnaceRT.Devices
                 {
                     if (!CarrierManager.Instance.CheckHasCarrier(Name, 0))
                     {
+                        LOG.Info($"{Name}  IsUnloadCompleted exec CreateCarrier");
+
                         CarrierManager.Instance.CreateCarrier(Name, CarrierType.SD, Name);
                     }
                 }
@@ -370,6 +371,8 @@ namespace FurnaceRT.Devices
 
                 if (CarrierManager.Instance.GetCarrier(Name).IsEmpty)
                 {
+                    LOG.Info($"{Name} ConfirmAddCarrier exec CreateCarrier");
+
                     CarrierManager.Instance.CreateCarrier(Name);
 
                 }
@@ -1113,6 +1116,7 @@ namespace FurnaceRT.Devices
             //_doUnloadFoup.SetValue(true, out reason);
             //_doLoadFoup.SetValue(false, out reason);
             //_doInit.SetValue(false, out reason);
+            LOG.Info($"Unload-{Name} IsLoadCompleted from {IsLoadCompleted} to {false} and IsUnloadCompleted from {IsUnloadCompleted} to {true}");
             IsLoadCompleted = false;
             IsUnloadCompleted = true;
             return true;
@@ -1120,6 +1124,7 @@ namespace FurnaceRT.Devices
         public bool Load(out string reason)
         {
             reason = "";
+            LOG.Info($"Load-{Name} IsUnloadCompleted from {IsUnloadCompleted} to {false} and IsLoadCompleted from {IsLoadCompleted} to {true}");
             //_doUnloadFoup.SetValue(false, out reason);
             //_doLoadFoup.SetValue(true, out reason);
             //_doInit.SetValue(false, out reason);

+ 6 - 1
Furnace/FurnaceRT/Equipments/CarrierRobots/CarrierRobotPick.cs

@@ -256,6 +256,8 @@ namespace FurnaceRT.Equipments.CarrierRobots
                     Goto((int)RoutineStep.Goto, _source, _sourceSlot, _blade, true, _timeout);
 
                     CheckGotoFinish((int)RoutineStep.CheckGotoFinish, _source, _timeout);
+
+                    SetLPLoad((int)RoutineStep.SetLPLoad, _source, _timeout);
                 }
 
                 if (_cassetteRobotModule.TrigActionCommand != null)
@@ -269,7 +271,10 @@ namespace FurnaceRT.Equipments.CarrierRobots
                     SaferDoorOpen((int)RoutineStep.DoorClose, false, _timeout);
 
                 }
-
+                if (_source == ModuleName.LP3 || _source == ModuleName.LP4)
+                {
+                    SetLPUnload((int)RoutineStep.SetLPUnload, _source, _timeout);
+                }
                 //RobotRequestCassettePresent((int)RoutineStep.RobotRequestCassettePresent, _blade, _timeout);
 
                 CheckCassetteInfoByRobotSensor((int)RoutineStep.CheckCassetteInfoByRobotSensor, _blade, true);

+ 6 - 0
Furnace/FurnaceRT/Equipments/CarrierRobots/CarrierRobotPlace.cs

@@ -255,6 +255,8 @@ namespace FurnaceRT.Equipments.CarrierRobots
                     Goto((int)RoutineStep.Goto, _destination, _destinationSlot, _blade, false, _timeout);
 
                     CheckGotoFinish((int)RoutineStep.CheckGotoFinish, _destination, _timeout);
+
+                    SetLPLoad((int)RoutineStep.SetLPLoad, _destination, _timeout);
                 }
 
                 if (_cassetteRobotModule.TrigActionCommand != null)
@@ -267,6 +269,10 @@ namespace FurnaceRT.Equipments.CarrierRobots
                     SetLPUnload((int)RoutineStep.SetLPUnload, _destination, _timeout);
                     SaferDoorOpen((int)RoutineStep.DoorClose, false, _timeout);
                 }
+                if (_destination == ModuleName.LP3 || _destination == ModuleName.LP4)
+                {
+                    SetLPUnload((int)RoutineStep.SetLPUnload, _destination, _timeout);
+                }
                 //RobotRequestCassettePresent((int)RoutineStep.RobotRequestCassettePresent, _blade, _timeout);
 
                 CheckCassetteInfoByRobotSensor((int)RoutineStep.CheckCassetteInfoByRobotSensor, _blade, false);

+ 3 - 1
Furnace/FurnaceRT/Equipments/LPs/LoadPortHome.cs

@@ -13,6 +13,7 @@ using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
 using FurnaceRT.Equipments.Systems;
+using Aitex.Core.RT.Log;
 
 namespace FurnaceRT.Equipments.LPs
 {
@@ -72,10 +73,11 @@ namespace FurnaceRT.Equipments.LPs
             {
                 return Result.FAIL;
             }
-
+            LOG.Info($"AAAAA-Home-{Name} IsLoadCompleted from {_lpModule.LPDevice.IsLoadCompleted} to {false} and IsUnloadCompleted from {_lpModule.LPDevice.IsUnloadCompleted} to {true}");
             _lpModule.LPDevice.IsInitCompleted = true;
             _lpModule.LPDevice.IsLoadCompleted = false;
             _lpModule.LPDevice.IsUnloadCompleted = true;
+
             Notify($"{Name} home finished");
             return Result.DONE;
         }