瀏覽代碼

1.Fix SETM robot ArmExtend bugs
2.Statistics enhance
3.Open pendulumvalve interlock bugs fix

hecl 1 年之前
父節點
當前提交
0f361d7301

+ 40 - 5
Venus/Venus_MainPages/ViewModels/StatisticsViewModel.cs

@@ -67,7 +67,42 @@ namespace Venus_MainPages.ViewModels
             PollData();
             _timer = new PeriodicJob(200, this.OnTimer, "Database cleaner", true);
             _timer.Start();
-                } 
+         }
+        private DelegateCommand _ResetCommnad;
+        public DelegateCommand ResetCommnad =>
+            _ResetCommnad ?? (_ResetCommnad = new DelegateCommand(Resets));
+
+        private DelegateCommand<StatsDataListItem> _ResetValueCommnad;
+        public DelegateCommand<StatsDataListItem> ResetValueCommnad =>
+            _ResetValueCommnad ?? (_ResetValueCommnad = new DelegateCommand<StatsDataListItem>(ResetValue));
+
+        private DelegateCommand<StatsDataListItem> _ResetEnableValueCommnad;
+        public DelegateCommand<StatsDataListItem> ResetEnableValueCommnad =>
+            _ResetEnableValueCommnad ?? (_ResetEnableValueCommnad = new DelegateCommand<StatsDataListItem>(ResetEnableWarning));
+        private DelegateCommand<StatsDataListItem> _SetWarningValueCommnad;
+        public DelegateCommand<StatsDataListItem> SetWarningValueCommnad =>
+            _SetWarningValueCommnad ?? (_SetWarningValueCommnad = new DelegateCommand<StatsDataListItem>(SetWarningValue));
+
+        private DelegateCommand<StatsDataListItem> _ResetEnableAlarmCommnad;
+        public DelegateCommand<StatsDataListItem> ResetEnableAlarmCommnad =>
+    _ResetEnableAlarmCommnad ?? (_ResetEnableAlarmCommnad = new DelegateCommand<StatsDataListItem>(ResetEnableAlarm));
+        private DelegateCommand<StatsDataListItem> _SetAlarmValueCommnad;
+        public DelegateCommand<StatsDataListItem> SetAlarmValueCommnad =>
+    _SetAlarmValueCommnad ?? (_SetAlarmValueCommnad = new DelegateCommand<StatsDataListItem>(SetAlarmValue));
+
+        private DelegateCommand<StatsDataListItemRFAndPump> _ResetTimeValueCommnad;
+        public DelegateCommand<StatsDataListItemRFAndPump> ResetTimeValueCommnad =>
+    _ResetTimeValueCommnad ?? (_ResetTimeValueCommnad = new DelegateCommand<StatsDataListItemRFAndPump>(ResetTimeValue));
+
+
+        private DelegateCommand<StatsDataListItemRFAndPump> _SetPMIntervalValueCommnad;
+        public DelegateCommand<StatsDataListItemRFAndPump> SetPMIntervalValueCommnad =>
+    _SetPMIntervalValueCommnad ?? (_SetPMIntervalValueCommnad = new DelegateCommand<StatsDataListItemRFAndPump>(SetPMIntervalValue));
+
+
+        private DelegateCommand<StatsDataListItemRFAndPump> _ResetRFEnableAlarmCommnad;
+        public DelegateCommand<StatsDataListItemRFAndPump> ResetRFEnableAlarmCommnad =>
+    _ResetRFEnableAlarmCommnad ?? (_ResetRFEnableAlarmCommnad = new DelegateCommand<StatsDataListItemRFAndPump>(ResetRFEnableAlarm));
         private int MenuPermission
         {
             //get
@@ -278,19 +313,19 @@ namespace Venus_MainPages.ViewModels
 
         public void ResetValue(StatsDataListItem item)
         {
-            if (MenuPermission != 3) return;
             InvokeClient.Instance.Service.DoOperation("System.Stats.ResetValue", item.Name);
         }
-
+        public void Resets()
+        {
+            //InvokeClient.Instance.Service.DoOperation("System.Stats.ResetValue", item.Name);
+        }
         public void ResetEnableAlarm(StatsDataListItem item)
         {
-            if (MenuPermission != 3) return;
             InvokeClient.Instance.Service.DoOperation("System.Stats.EnableAlarm", item.Name, item.AlarmEnable);
         }
 
         public void ResetEnableWarning(StatsDataListItem item)
         {
-            if (MenuPermission != 3) return;
             InvokeClient.Instance.Service.DoOperation("System.Stats.EnableWarning", item.Name, item.WarningEnable);
         }
 

+ 1 - 1
Venus/Venus_MainPages/Views/OverVenusSEView.xaml

@@ -1225,7 +1225,7 @@
                 </i:Interaction.Triggers>
             </ComboBox>
             <Border Width="210" Height="28"  Canvas.Left="840" Canvas.Top="90" BorderBrush="Black" BorderThickness=".7">
-                <ComboBox  ItemsSource="{Binding CurrentModuleRecipes}" SelectedIndex="{Binding SelectedRecipeIndex}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Style="{StaticResource customeComboBoxStyle}" BorderBrush="White" FontSize="15" Margin="0,0,-190,0">
+                <ComboBox  ItemsSource="{Binding CurrentModuleRecipes}" SelectedIndex="{Binding SelectedRecipeIndex}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}" Style="{StaticResource customeComboBoxStyle}" BorderBrush="White" FontSize="15">
                     <i:Interaction.Triggers>
                         <i:EventTrigger EventName="DropDownOpened">
                             <i:InvokeCommandAction Command="{Binding LoadRecipeCommand}"/>

+ 24 - 74
Venus/Venus_MainPages/Views/StatisticsView.xaml

@@ -3,12 +3,16 @@
              xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
              xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
-             xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
+             xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
              xmlns:cal="http://www.caliburn.org"
+             xmlns:unity="clr-namespace:Venus_MainPages.Unity"
+             xmlns:userControls="clr-namespace:Venus_Themes.UserControls;assembly=Venus_Themes"
+             xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration" 
              prism:ViewModelLocator.AutoWireViewModel="True"
              xmlns:prism="http://prismlibrary.com/"
              xmlns:ctrl="http://OpenSEMI.Ctrlib.com/presentation"
-             mc:Ignorable="d" >
+             mc:Ignorable="d" 
+             x:Name="stastic">
     <Grid HorizontalAlignment="Left">
         <Grid.RowDefinitions>
             <RowDefinition Height="300"/>
@@ -17,8 +21,7 @@
         <TabControl Grid.Row="0">
             <TabItem Header="Statistic Item List ">
 
-                <DataGrid Grid.Row="1" AlternationCount="2" HorizontalAlignment="Left" CanUserAddRows="False" AutoGenerateColumns="False" RowHeaderWidth="0"
-                  VirtualizingPanel.IsVirtualizing="True" VirtualizingPanel.VirtualizationMode="Recycling"
+                <DataGrid Grid.Row="1" AlternationCount="2" HorizontalAlignment="Left" CanUserAddRows="False" AutoGenerateColumns="False" RowHeaderWidth="0"               
                   ItemsSource="{Binding StatData}" Margin="0,5,0,0" >
 
                     <DataGrid.Columns>
@@ -50,14 +53,8 @@
                         <DataGridTemplateColumn Width="130">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <Button Content="Reset Value" Width="120" Height="25" FontSize="12">
-                                        <i:Interaction.Triggers>
-                                            <i:EventTrigger EventName="Click">
-                                                <cal:ActionMessage MethodName="ResetValue">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
-                                            </i:EventTrigger>
-                                        </i:Interaction.Triggers>
+                                    <Button Content="Reset Value"  Command="{Binding DataContext.ResetValueCommnad, ElementName=stastic}" Width="120" Height="25" FontSize="12">
+                                        <!--Command="{Binding DataContext.ResetValueCommnad,RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=UserControl}}"-->
                                     </Button>
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
@@ -66,17 +63,13 @@
                         <DataGridTemplateColumn Header="Enable Warning" Width="120">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <CheckBox Height="35" Width="35" VerticalContentAlignment="Center" IsChecked="{Binding WarningEnable, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
+                                    <CheckBox IsChecked="{Binding WarningEnable,Mode=TwoWay}"   VerticalAlignment="Center" HorizontalAlignment="Center" >
                                         <i:Interaction.Triggers>
                                             <i:EventTrigger EventName="Checked">
-                                                <cal:ActionMessage MethodName="ResetEnableWarning">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
+                                                <i:InvokeCommandAction Command="{Binding DataContext.ResetEnableValueCommnad,  ElementName=stastic}" CommandParameter="{Binding }" />
                                             </i:EventTrigger>
                                             <i:EventTrigger EventName="Unchecked">
-                                                <cal:ActionMessage MethodName="ResetEnableWarning">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
+                                                <i:InvokeCommandAction Command="{Binding DataContext.ResetEnableValueCommnad,  ElementName=stastic}" CommandParameter="{Binding }"/>
                                             </i:EventTrigger>
                                         </i:Interaction.Triggers>
                                     </CheckBox>
@@ -104,15 +97,8 @@
                         <DataGridTemplateColumn Width="80">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <Button Content="Set" Width="60" Height="25" FontSize="12">
-                                        <i:Interaction.Triggers>
-                                            <i:EventTrigger EventName="Click">
-                                                <cal:ActionMessage MethodName="SetWarningValue">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
-                                            </i:EventTrigger>
-                                        </i:Interaction.Triggers>
-                                    </Button>
+                                    <Button Content="Set" Width="60" Command="{Binding DataContext.SetWarningValueCommnad, ElementName=stastic}"  Height="25" FontSize="12"/>
+
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
                         </DataGridTemplateColumn>
@@ -120,17 +106,13 @@
                         <DataGridTemplateColumn Header="Enable Alarm" Width="120">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <CheckBox Height="35" Width="35" VerticalContentAlignment="Center" IsChecked="{Binding AlarmEnable, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
+                                    <CheckBox IsChecked="{Binding AlarmEnable,Mode=TwoWay}"   VerticalAlignment="Center" HorizontalAlignment="Center" >
                                         <i:Interaction.Triggers>
                                             <i:EventTrigger EventName="Checked">
-                                                <cal:ActionMessage MethodName="ResetEnableAlarm">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
+                                                <i:InvokeCommandAction Command="{Binding DataContext.ResetEnableAlarmCommnad,  ElementName=stastic}" CommandParameter="{Binding }" />
                                             </i:EventTrigger>
                                             <i:EventTrigger EventName="Unchecked">
-                                                <cal:ActionMessage MethodName="ResetEnableAlarm">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
+                                                <i:InvokeCommandAction Command="{Binding DataContext.ResetEnableAlarmCommnad,  ElementName=stastic}" CommandParameter="{Binding }"/>
                                             </i:EventTrigger>
                                         </i:Interaction.Triggers>
                                     </CheckBox>
@@ -158,14 +140,7 @@
                         <DataGridTemplateColumn Width="80">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <Button Content="Set" Width="60" Height="25" FontSize="12">
-                                        <i:Interaction.Triggers>
-                                            <i:EventTrigger EventName="Click">
-                                                <cal:ActionMessage MethodName="SetAlarmValue">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
-                                            </i:EventTrigger>
-                                        </i:Interaction.Triggers>
+                                    <Button Content="Set" Width="60" Command="{Binding DataContext.SetAlarmValueCommnad, ElementName=stastic}" Height="25" FontSize="12">
                                     </Button>
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
@@ -191,14 +166,7 @@
                         <DataGridTemplateColumn Width="130"  >
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <Button Content="Reset Total" Width="120" Height="25" FontSize="12">
-                                        <i:Interaction.Triggers>
-                                            <i:EventTrigger EventName="Click">
-                                                <cal:ActionMessage MethodName="ResetTotalValue">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
-                                            </i:EventTrigger>
-                                        </i:Interaction.Triggers>
+                                    <Button Content="Reset Total" Command="{Binding DataContext.ResetTotalValue, ElementName=stastic}" Width="120" Height="25" FontSize="12">
                                     </Button>
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
@@ -246,14 +214,7 @@
                         <DataGridTemplateColumn Width="130">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <Button Content="Reset Value" Width="120" Height="25" FontSize="12">
-                                        <i:Interaction.Triggers>
-                                            <i:EventTrigger EventName="Click">
-                                                <cal:ActionMessage MethodName="ResetTimeValue">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
-                                            </i:EventTrigger>
-                                        </i:Interaction.Triggers>
+                                    <Button Content="Reset Value" Command="{Binding DataContext.ResetTimeValueCommnad, ElementName=stastic}" Width="120" Height="25" FontSize="12">
                                     </Button>
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
@@ -286,14 +247,7 @@
                         <DataGridTemplateColumn Width="80">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <Button Content="Set" Width="60" Height="25" FontSize="12">
-                                        <i:Interaction.Triggers>
-                                            <i:EventTrigger EventName="Click">
-                                                <cal:ActionMessage MethodName="SetPMIntervalValue">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
-                                            </i:EventTrigger>
-                                        </i:Interaction.Triggers>
+                                    <Button Content="Set" Width="60" Command="{Binding DataContext.SetPMIntervalValueCommnad, ElementName=stastic}" Height="25" FontSize="12">
                                     </Button>
                                 </DataTemplate>
                             </DataGridTemplateColumn.CellTemplate>
@@ -302,17 +256,13 @@
                         <DataGridTemplateColumn Header="Enable Alarm" Width="120">
                             <DataGridTemplateColumn.CellTemplate>
                                 <DataTemplate>
-                                    <CheckBox Height="35" Width="35" VerticalContentAlignment="Center" IsChecked="{Binding AlarmEnable, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}">
+                                    <CheckBox IsChecked="{Binding AlarmEnable,Mode=TwoWay}"   VerticalAlignment="Center" HorizontalAlignment="Center" >
                                         <i:Interaction.Triggers>
                                             <i:EventTrigger EventName="Checked">
-                                                <cal:ActionMessage MethodName="ResetRFEnableAlarm">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
+                                                <i:InvokeCommandAction Command="{Binding DataContext.ResetRFEnableAlarmCommnad,  ElementName=stastic}" CommandParameter="{Binding }" />
                                             </i:EventTrigger>
                                             <i:EventTrigger EventName="Unchecked">
-                                                <cal:ActionMessage MethodName="ResetRFEnableAlarm">
-                                                    <cal:Parameter Value="{Binding }" />
-                                                </cal:ActionMessage>
+                                                <i:InvokeCommandAction Command="{Binding DataContext.ResetRFEnableAlarmCommnad,  ElementName=stastic}" CommandParameter="{Binding }"/>
                                             </i:EventTrigger>
                                         </i:Interaction.Triggers>
                                     </CheckBox>

+ 5 - 6
Venus/Venus_RT/Devices/JetVenusDEPM.cs

@@ -1326,11 +1326,6 @@ namespace Venus_RT.Devices
 
         public override bool TurnPendulumValve(bool on)
         {
-            if (on && (!TurboPumpInterlock || !IsCDA_OK || !IsTurboPumpAtSpeed || !IsWLK))
-            {
-                LOG.Write(eEvent.ERR_PENDULUM_VALVE, Module, "Cannot open PendulumValve, as Interlock not arrival");
-                return false;
-            }
             return _pendulumValve.TurnValve(on);
         }
 
@@ -1471,7 +1466,11 @@ namespace Venus_RT.Devices
             GeneratorBiasPowerOn(false);
             OpenValve(ValveType.TurboPumpPumping, true);
             OpenValve(ValveType.TurboPumpPurge, true);
-            _pendulumValve.SetPosition(1000);
+            if (IsTurboPumpAtSpeed)
+            {
+                OpenValve(ValveType.TurboPumpPumping, true);
+                _pendulumValve.SetPosition(1000);
+            }           
             OnOffSetESCHV(false);
         }
 

+ 5 - 1
Venus/Venus_RT/Devices/JetVenusSEPM.cs

@@ -1397,7 +1397,11 @@ namespace Venus_RT.Devices
             GeneratorBiasPowerOn(false);
             OpenValve(ValveType.TurboPumpPumping, true);
             OpenValve(ValveType.TurboPumpPurge, true);
-            _pendulumValve.SetPosition(1000);
+            if (IsTurboPumpAtSpeed)
+            {
+                OpenValve(ValveType.TurboPumpPumping, true);
+                _pendulumValve.SetPosition(1000);
+            }
             OnOffSetESCHV(false);
         }
 

+ 10 - 10
Venus/Venus_RT/Devices/PendulumValve.cs

@@ -513,7 +513,7 @@ namespace Venus_RT.Devices
 
         public bool SetPosition(float postion)
         {
-            if (_CheckStatus())
+            if (_CheckStatus(true))
             {
                 m_PositionSetPoint = postion;
                 float setPosition = (float)Math.Round(postion, 1);
@@ -526,7 +526,7 @@ namespace Venus_RT.Devices
 
         public bool SetPressure(float pressure)
         {
-            if (_CheckStatus())
+            if (_CheckStatus(true))
             {
                 m_PressureSetPoint = pressure;
                 if (m_PressureType == PressureType.Pa)
@@ -596,14 +596,14 @@ namespace Venus_RT.Devices
                 LOG.Write(eEvent.ERR_DEVICE_INFO, Module, $"Chamber Pressure:{_chamber.ChamberPressure} is higher than {_chamberPressureLimit}{m_PressureType} and Chamber.TurboPumpSpeed is higher than {_turboPumpSpeedLimit}, can not turn on pendulum valve.");
                 return false;
             }
-            //if (_chamber.IsTurboPumpRunning)
-            //{
-            //    if (!_chamber.IsISOOpen)
-            //    {
-            //        LOG.Write(eEvent.ERR_DEVICE_INFO, Module, $"Chamber TurboPumpingvalve is not open, can not turn on pendulum valve.");
-            //        return false;
-            //    }
-            //}
+            if (_chamber.IsTurboPumpRunning )
+            {
+                if (!_chamber.IsISOOpen && bTurnOn)
+                {
+                    LOG.Write(eEvent.ERR_DEVICE_INFO, Module, $"Chamber TurboPumpingvalve is not open, can not turn on pendulum valve.");
+                    return false;
+                }
+            }
 
             return true;
         }

+ 1 - 1
Venus/Venus_RT/Devices/TruPlasmaRF.cs

@@ -576,7 +576,7 @@ namespace Venus_RT.Devices
                         else //帧头不正确时,记得清除
                         {
                             buffer.Clear();
-                            LOG.Write(eEvent.ERR_MATCH, Module, $"Match通讯错误");
+                            //LOG.Write(eEvent.ERR_MATCH, Module, $"Match通讯错误");
                         }
                     }
                 }

+ 2 - 0
Venus/Venus_RT/Modules/PMs/ProcessDefine.cs

@@ -291,6 +291,7 @@ namespace Venus_RT.Modules.PMs
             {
                 Chamber.GeneratorSetpower(0);
                 Chamber.GeneratorPowerOn(false);
+                return RState.Failed;
             }
 
             if (step.ElapsedTime() > rfMatchC1C2Index * 1000)
@@ -435,6 +436,7 @@ namespace Venus_RT.Modules.PMs
             {
                 Chamber.GeneratorBiasSetpower(0);
                 Chamber.GeneratorBiasPowerOn(false);
+                return RState.Failed;
             }
             if (step.ElapsedTime() > biasRfMatchC1C2Index * 1000)
             {

+ 4 - 2
Venus/Venus_RT/Modules/TM/VenusEntity/SEMFPMPickRoutine.cs

@@ -36,6 +36,7 @@ namespace Venus_RT.Modules.TM.VenusEntity
             QueryAWC,
             DropDownWafer,
             PickDelay,
+            PickDelay1,
             PickDelay2,
             ArmRetract,
             SavePickeData,
@@ -134,11 +135,12 @@ namespace Venus_RT.Modules.TM.VenusEntity
         {
             Runner.Wait(PickStep.WaitPMReady, () => _pmModule.IsIdle, _delay_60s)
                         .RunIf(PickStep.WaitforControlPressure, NeedControlPressure, StartControlPressure, IsPressureReady, _delay_60s)
-                        .Run(PickStep.PMPrepare, ModulePrepare, IsModulePrepareReady)
+                        .Run(PickStep.PMPrepare, ModulePrepare, IsModulePrepareReady,_delay_60s)
+                        .Delay(PickStep.PickDelay, _pickdelay)
                         .Run(PickStep.ArmExtend, ArmExtend, WaitRobotExtendDone, _ExtendTimeout)
                         .Run(PickStep.QueryAWC, QueryAWC, WaitRobotQueryDone, _delay_1s)
                         .Run(PickStep.DropDownWafer, NotifyPMPickWafer, WaitPMWaferDropDown)
-                        .Delay(PickStep.PickDelay, _pickdelay)
+                        .Delay(PickStep.PickDelay1, _pickdelay)
                         .Run(PickStep.ArmRetract, ArmRetract, WaitRobotRetractDone, _RetractTimeout)
                         .Run(PickStep.SavePickeData, RecordAWCData, NullFun)
                         .Run(PickStep.NotifyDone, NotifyPMDone, _delay_50ms)

+ 3 - 1
Venus/Venus_RT/Modules/TM/VenusEntity/SEMFPMPlaceRoutine.cs

@@ -32,6 +32,7 @@ namespace Venus_RT.Modules.TM.VenusEntity
             QueryAWC,
             LiftUpWafer,
             PlaceDelay,
+            PlaceDelay1,
             PlaceDelay2,
             ArmRetract,
             SavePlaceData,
@@ -114,10 +115,11 @@ namespace Venus_RT.Modules.TM.VenusEntity
         {
             Runner.Wait(PlaceStep.WaitPMReady, () => _pmModule.IsIdle, _delay_60s)
                 .Run(PlaceStep.PMPrepare, ModulePrepare, IsModulePrepareReady, _delay_60s)
+                .Delay(PlaceStep.PlaceDelay, _placeDelayTime)
                 .Run(PlaceStep.ArmExtend, ArmExtend, WaitRobotExtendDone, _ExtendTimeout)
                 .Run(PlaceStep.QueryAWC, QueryAWC, WaitRobotQueryDone, _delay_1s)
                 .Run(PlaceStep.LiftUpWafer, NotifyPMPlaceWafer, WaitPMWaferLiftUp, _delay_30s)
-                .Delay(PlaceStep.PlaceDelay, _placeDelayTime)
+                .Delay(PlaceStep.PlaceDelay1, _placeDelayTime)
                 .Run(PlaceStep.ArmRetract, ArmRetract, WaitRobotRetractDone, _RetractTimeout)
                 .Run(PlaceStep.SavePlaceData, RecordAWCData, NullFun)
                 .Run(PlaceStep.NotifyDone, NotifyPMDone, _delay_50ms)