Sfoglia il codice sorgente

优化topview界面
优化pump down逻辑
优化传片动画

lixiang 1 anno fa
parent
commit
530ddcbae7

+ 6 - 13
Venus/Framework/UICore/DeviceControl/AITSignalTower.xaml

@@ -12,8 +12,7 @@
             <RowDefinition Height="20" />
             <RowDefinition Height="20" />
             <RowDefinition Height="20" />
-
-</Grid.RowDefinitions>
+        </Grid.RowDefinitions>
 
         <Image Canvas.Left="0" Canvas.Top="0" Name="rectangle1" Stretch="Fill" Source="pack://application:,,,/MECF.Framework.Common;component/Resources/red.png" Width="30" Height="20" VerticalAlignment="Top">
             <Image.Effect>
@@ -25,7 +24,7 @@
             </Image.Effect>
             <Image.Style>
                 <Style>
-                    <Setter Property="Image.Opacity"  Value="0.4"/>
+                    <Setter Property="Image.Opacity"  Value="0.5"/>
                     <Style.Triggers>
                         <DataTrigger Binding="{Binding ElementName=signalTower,Path=IsRedLightOn}"  Value="True">
                             <Setter Property="Image.Opacity"  Value="1"/>
@@ -41,13 +40,10 @@
                                   RenderingBias="Performance"
                                   Opacity="1"  
                                   BlurRadius="20"/>
-                <!--<BlurEffect RenderingBias="Performance" Radius="15" >
-
-                </BlurEffect>-->
             </Image.Effect>
             <Image.Style>
                 <Style>
-                    <Setter Property="Image.Opacity"  Value="0.4"/>
+                    <Setter Property="Image.Opacity"  Value="0.5"/>
                     <Style.Triggers>
                         <DataTrigger Binding="{Binding ElementName=signalTower,Path=IsYellowLightOn}"  Value="True">
                             <Setter Property="Image.Opacity"  Value="1"/>
@@ -63,13 +59,10 @@
                             RenderingBias="Performance"
                                   Opacity="1"  
                         BlurRadius="20"/>
-                <!--<BlurEffect RenderingBias="Performance" Radius="15" >
-
-                </BlurEffect>-->
             </Image.Effect>
             <Image.Style>
                 <Style>
-                    <Setter Property="Image.Opacity"  Value="0.4"/>
+                    <Setter Property="Image.Opacity"  Value="0.5"/>
                     <Style.Triggers>
                         <DataTrigger Binding="{Binding ElementName=signalTower,Path=IsGreenLightOn}"  Value="True">
                             <Setter Property="Image.Opacity"  Value="1"/>
@@ -88,7 +81,7 @@
             </Image.Effect>
             <Image.Style>
                 <Style>
-                    <Setter Property="Image.Opacity"  Value="0.4"/>
+                    <Setter Property="Image.Opacity"  Value="0.5"/>
                     <Style.Triggers>
                         <DataTrigger Binding="{Binding ElementName=signalTower,Path=IsRedLightOn}"  Value="True">
                             <Setter Property="Image.Opacity"  Value="1"/>
@@ -107,7 +100,7 @@
             </Image.Effect>
             <Image.Style>
                 <Style>
-                    <Setter Property="Image.Opacity"  Value="0.4"/>
+                    <Setter Property="Image.Opacity"  Value="0.5"/>
                     <Style.Triggers>
                         <DataTrigger Binding="{Binding ElementName=signalTower,Path=IsBluzzerLightOn}"  Value="True">
                             <Setter Property="Image.Opacity"  Value="1"/>

+ 1 - 1
Venus/Venus_MainPages/Venus_MainPages.csproj

@@ -22,7 +22,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
-    <NoWarn>CS0168</NoWarn>
+    <NoWarn>CS0168,CS0219,CS0649,CS0169,CS0414</NoWarn>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     <DebugType>pdbonly</DebugType>

+ 2 - 2
Venus/Venus_MainPages/Views/OperationOverView.xaml

@@ -31,8 +31,8 @@
                     <customControls:WaferRobotControl OriginT="PMD"    Canvas.Left="410" Canvas.Top="76"   Width="200" Height="300"   x:Name="robot2" RobotTAction="{Binding Robot2TAction}" RobotXAction="{Binding Robot2XAction}"  RobotWafer="{Binding BladeBWafer}"/>
 
 
-                    <userControls:LoadLockLeft  Width="150" Height="150" Canvas.Top="310" Canvas.Left="358"  DoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLAWafer}"/>
-                    <userControls:LoadLockRight Width="150" Height="150" Canvas.Top="309" Canvas.Left="519"  DoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLBWafer}"/>
+                    <userControls:LoadLockLeft  Width="150" Height="150" Canvas.Top="310" Canvas.Left="358"  DoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Door2IsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLAWafer}"/>
+                    <userControls:LoadLockRight Width="150" Height="150" Canvas.Top="309" Canvas.Left="519"  DoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Door2IsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLBWafer}"/>
 
 
                     <userControls:TMChamber x:Name="PMA" Canvas.Top="302"  Canvas.Left="233" Width="140" Height="140" RotateTransformValue="-90"  DoorIsOpen="{Binding RtDataValues[PMA.IsSlitDoorClosed],Converter={StaticResource BoolToBool}}" RobotWafer="{Binding PMAWafer}"/>

+ 8 - 5
Venus/Venus_MainPages/Views/OverView.xaml

@@ -776,9 +776,9 @@
                         />
 
             <Ellipse Width="20" Height="20" Fill="{Binding LiftPinIsUp,Converter={StaticResource boolToColor}}"  Canvas.Left="1065" Canvas.Top="466" Stroke="Silver" StrokeThickness="2"/>
-            <Button Height="20" Width="100" Content="Pin Up" Canvas.Left="1100" Canvas.Top="466" Command="{Binding PinUpDownCommand}" CommandParameter="True" Style="{StaticResource SysBtnStyle}" />
+            <Button Height="20" Width="100" Content="Pin Up" Canvas.Left="1100" Canvas.Top="466" Command="{Binding PinUpDownCommand}" CommandParameter="True" Style="{StaticResource SysBtnStyle}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
             <Ellipse Width="20" Height="20" Fill="{Binding LiftPinIsUp,Converter={StaticResource boolToColor2}}" Canvas.Left="1065" Canvas.Top="490" Stroke="Silver" StrokeThickness="2"/>
-            <Button Height="20" Width="100" Content="Pin Down" Canvas.Left="1100" Canvas.Top="490" Command="{Binding PinUpDownCommand}" CommandParameter="False" Style="{StaticResource SysBtnStyle}" />
+            <Button Height="20" Width="100" Content="Pin Down" Canvas.Left="1100" Canvas.Top="490" Command="{Binding PinUpDownCommand}" CommandParameter="False" Style="{StaticResource SysBtnStyle}" IsEnabled="{Binding IsAutoMode,Converter={StaticResource BoolToBool}}"/>
             
             <ctrls:Pump Canvas.Top="700"  Canvas.Left="1244" Width="35" Height="35" IsOpen="{Binding PumpIsOpen,Mode=TwoWay}">
                 <ctrls:Pump.ContextMenu>
@@ -792,7 +792,7 @@
            
            
         </Canvas>
-        <Canvas Canvas.Right="1250" Canvas.Top="120">
+        <Canvas Canvas.Right="1250" Canvas.Top="100">
 
             <!--<Button Width="120" Height="30" Content="Flash"  Canvas.Left="700" Canvas.Top="100" Command="{Binding LoadRecipeCommand}" IsEnabled="{Binding IsAutoMode}" Style="{x:Null}"/>-->
             <!--<TextBlock Background="Silver"  Height="30" Width="230" Canvas.Left="820" Canvas.Top="100" Text="{Binding SelectedRecipe}" TextBlock.TextAlignment="Center"    Block.TextAlignment="Center" Padding="0,7,0,0"/>-->
@@ -996,13 +996,14 @@
             <!--<Button Width="120" Height="30" Content="Abort"            Canvas.Left="910" Canvas.Top="690"  IsEnabled="{Binding IsAutoMode}"/>
             <Button Width="120" Height="30" Content="Chamber Offline"  Canvas.Left="1110" Canvas.Top="690" IsEnabled="{Binding IsAutoMode}"/>-->
         </Canvas>
-        <Grid Width="350" Height="130" Canvas.Left="1350" Canvas.Top="70"  unity:GridOptions.LineBrush="#afb4db"  unity:GridOptions.ShowBorder="True">
+        <Grid Width="350" Height="150" Canvas.Left="1350" Canvas.Top="20"  unity:GridOptions.LineBrush="#afb4db"  unity:GridOptions.ShowBorder="True">
             <Grid.RowDefinitions>
                 <RowDefinition/>
                 <RowDefinition/>
                 <RowDefinition/>
                 <RowDefinition/>
                 <RowDefinition/>
+                <RowDefinition/>
             </Grid.RowDefinitions>
             <Grid.ColumnDefinitions>
                 <ColumnDefinition Width="2*"/>
@@ -1013,6 +1014,8 @@
             <TextBlock Grid.Row="2" Text="Step Type"          FontSize="15"  Padding="10,2,0,0" Background="#D0D8E8"/>
             <TextBlock Grid.Row="3" Text="Step Elpased Time"  FontSize="15"  Padding="10,2,0,0" Background="#D0D8E8"/>
             <TextBlock Grid.Row="4" Text="Step Time(s)"       FontSize="15"  Padding="10,2,0,0" Background="#D0D8E8"/>
+            <TextBlock Grid.Row="5" Text="Next Step"       FontSize="15"  Padding="10,2,0,0" Background="#D0D8E8"/>
+
 
             <TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeName}" FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
             <TextBlock Grid.Row="1" Grid.Column="1"   FontSize="15" Padding="10,2,0,0" Background="#E9EDF4">
@@ -1026,9 +1029,9 @@
             <TextBlock Grid.Row="2" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepType}"  FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
             <TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepDuringTime, StringFormat=hh\\:mm\\:ss}"  FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
             <TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding CurrentRecipeResult.RecipeStepSetTime}"  FontSize="15" Padding="10,2,0,0" Background="#E9EDF4"/>
+            <Button    Grid.Row="5" Grid.Column="1"   Content="Manual Endpoint"   IsEnabled="{Binding IsAutoMode}" Command="{Binding EndStepCommand}" BorderThickness="0"/>
 
         </Grid>
-        <Button Width="120" Height="30" Content="Manual Endpoint"  Canvas.Left="1750" Canvas.Top="170"  IsEnabled="{Binding IsAutoMode}" Command="{Binding EndStepCommand}"/>
 
         <Grid Width="300" Height="260"  Canvas.Left="500" Canvas.Top="402" Background="#E8E8E8" unity:GridOptions.LineBrush="#afb4db" unity:GridOptions.ShowBorder="True">
             <Grid.RowDefinitions>

+ 3 - 3
Venus/Venus_MainPages/Views/TMView.xaml

@@ -248,7 +248,7 @@
                         <CheckBox  Grid.Column="2" Margin="5" Grid.ColumnSpan="4" IsChecked="{Binding CycleEnable}"/>
                         <TextBlock Text="TM Cycle Count"             Grid.Row="1" Grid.ColumnSpan="2" Padding="0,5,0,5" Background="#D0D8E8"/>
                         <TextBlock Text="TM Cycle Count Remained"    Grid.Row="1" Grid.Column="3" Grid.ColumnSpan="2" Padding="0,5,0,5" Background="#D0D8E8"/>
-                        <TextBlock Text="{Binding RtDataValues[TMCycle.CycleIndex]}"    Grid.Row="1" Grid.Column="5"  Padding="0,5,0,5" Background="#D0D8E8" HorizontalAlignment="Center"/>
+                        <TextBlock Text="{Binding RtDataValues[TMCycle.CycleIndex]}"    Grid.Row="1" Grid.Column="5"  Padding="0,5,0,5"  HorizontalAlignment="Center"/>
 
                         <TextBox Grid.Row="1" Grid.Column="2" BorderThickness="0" VerticalContentAlignment="Center" Padding="36,0,0,0" Text="{Binding CycleCount}"/>
                     </Grid>
@@ -456,8 +456,8 @@
                     <customControls:WaferRobotControl OriginT="PMD"    Canvas.Left="410" Canvas.Top="76"   Width="200" Height="300"   x:Name="robot2" RobotTAction="{Binding Robot2TAction}" RobotXAction="{Binding Robot2XAction}"  RobotWafer="{Binding BladeBWafer}"/>
 
 
-                    <userControls:LoadLockLeft  Width="150" Height="150" Canvas.Top="310" Canvas.Left="358"  DoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLAWafer}"/>
-                    <userControls:LoadLockRight Width="150" Height="150" Canvas.Top="309" Canvas.Left="519"  DoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLBWafer}"/>
+                    <userControls:LoadLockLeft Door2IsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Width="150" Height="150" Canvas.Top="310" Canvas.Left="358"  DoorIsOpen="{Binding RtDataValues[TM.LLATSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLAWafer}"/>
+                    <userControls:LoadLockRight Width="150" Height="150" Canvas.Top="309" Canvas.Left="519"  DoorIsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Door2IsOpen="{Binding RtDataValues[TM.LLBTSlitDoor.IsClosed],Converter={StaticResource BoolToBool}}" Visibility="{Binding LLBIsInstalled,Converter={StaticResource bool2VisibilityConverter}}" RobotWafer="{Binding LLBWafer}"/>
 
 
                     <userControls:TMChamber x:Name="PMA" Canvas.Top="302"  Canvas.Left="233" Width="140" Height="140" RotateTransformValue="-90"  DoorIsOpen="{Binding RtDataValues[PMA.IsSlitDoorClosed],Converter={StaticResource BoolToBool}}" RobotWafer="{Binding PMAWafer}" Visibility="{Binding PMAIsInstalled,Converter={StaticResource bool2VisibilityConverter}}"/>

+ 68 - 50
Venus/Venus_MainPages/Views/TopView.xaml

@@ -29,69 +29,87 @@
         <TextBlock Style="{StaticResource textBlockStyle}" Text="{Binding Title}" FontSize="60"    FontStyle="Italic" Canvas.Left="5"/>
         <TextBlock Text="{Binding SoftwareVersion}" Foreground="White"    FontSize="20"  Canvas.Left="70" Canvas.Top="80" />
 
-        <userControls:StateTitle Title="System"  TextBoxValue="{Binding RtDataValues[SYSTEM.FsmState]}" TextBoxColor="{Binding RtDataValues[SYSTEM.FsmState],Converter={StaticResource SystemStateConverter}}" Canvas.Left="220"  Canvas.Top="5"/>
-        <userControls:StateTitle Title="EFEM"    TextBoxValue="{Binding RtDataValues[EFEM.FsmState]}" TextBoxColor="{Binding RtDataValues[EFEM.FsmState],Converter={StaticResource PMStateConverter}}" Canvas.Left="520"  Canvas.Top="5"/>
-        <userControls:StateTitle Title="LLA"     TextBoxValue="{Binding RtDataValues[LLA.FsmState]}" TextBoxColor="{Binding RtDataValues[LLA.FsmState],Converter={StaticResource LLStateConverter}}" Canvas.Left="820"  Canvas.Top="5"/>
-        <userControls:StateTitle Title="LLB"     TextBoxValue="{Binding RtDataValues[LLB.FsmState]}" TextBoxColor="{Binding RtDataValues[LLB.FsmState],Converter={StaticResource LLStateConverter}}" Canvas.Left="1120"  Canvas.Top="5"/>
+        <Grid Canvas.Left="240" Width="1300" Height="110">
+            <Grid.RowDefinitions>
+                <RowDefinition/>
+                <RowDefinition/>
+                <RowDefinition/>
+            </Grid.RowDefinitions>
+            <Grid.ColumnDefinitions>
+                <ColumnDefinition/>
+                <ColumnDefinition/>
+                <ColumnDefinition/>
+                <ColumnDefinition/>
+            </Grid.ColumnDefinitions>
+            <userControls:StateTitle Title="System"  TextBoxValue="{Binding RtDataValues[SYSTEM.FsmState]}" TextBoxColor="{Binding RtDataValues[SYSTEM.FsmState],Converter={StaticResource SystemStateConverter}}" Canvas.Left="220"  Canvas.Top="5"/>
+            <userControls:StateTitle Title="EFEM"  Grid.Column="1"  TextBoxValue="{Binding RtDataValues[EFEM.FsmState]}"    Canvas.Left="520"   Canvas.Top="5"/>
+            <userControls:StateTitle Title="LLA"   Grid.Column="2"   TextBoxValue="{Binding RtDataValues[LLA.FsmState]}"    TextBoxColor="{Binding RtDataValues[LLA.FsmState],Converter={StaticResource LLStateConverter}}"  Canvas.Left="820"   Canvas.Top="5"/>
+            <userControls:StateTitle Title="LLB"   Grid.Column="3"  TextBoxValue="{Binding RtDataValues[LLB.FsmState]}"    TextBoxColor="{Binding RtDataValues[LLB.FsmState],Converter={StaticResource LLStateConverter}}"  Canvas.Left="1120"  Canvas.Top="5"/>
 
-        <userControls:StateTitle Title="PMA"     TextBoxValue="{Binding RtDataValues[PMA.FsmState]}" TextBoxColor="{Binding RtDataValues[PMA.FsmState],Converter={StaticResource PMStateConverter}}" Canvas.Left="220"  Canvas.Top="40"/>
-        <userControls:StateTitle Title="PMB"     TextBoxValue="{Binding RtDataValues[PMB.FsmState]}" TextBoxColor="{Binding RtDataValues[PMB.FsmState],Converter={StaticResource PMStateConverter}}" Canvas.Left="520"  Canvas.Top="40"/>
+            <userControls:StateTitle Title="PMA"   Grid.Column="0"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMA.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMA.FsmState],Converter={StaticResource PMStateConverter}}"  Canvas.Left="220"   Canvas.Top="40"/>
+            <userControls:StateTitle Title="PMB"   Grid.Column="1"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMB.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMB.FsmState],Converter={StaticResource PMStateConverter}}"  Canvas.Left="520"   Canvas.Top="40"/>
 
-        <userControls:StateTitle Title="PMC"     TextBoxValue="{Binding RtDataValues[PMC.FsmState]}" TextBoxColor="{Binding RtDataValues[PMC.FsmState],Converter={StaticResource PMStateConverter}}" Canvas.Left="820"  Canvas.Top="40"/>
-        <userControls:StateTitle Title="PMD"     TextBoxValue="{Binding RtDataValues[PMD.FsmState]}" TextBoxColor="{Binding RtDataValues[PMD.FsmState],Converter={StaticResource PMStateConverter}}" Canvas.Left="1120" Canvas.Top="40"/>
+            <userControls:StateTitle Title="PMC"   Grid.Column="2"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMC.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMC.FsmState],Converter={StaticResource PMStateConverter}}"  Canvas.Left="820"   Canvas.Top="40"/>
+            <userControls:StateTitle Title="PMD"   Grid.Column="3"  Grid.Row="1"  TextBoxValue="{Binding RtDataValues[PMD.FsmState]}"    TextBoxColor="{Binding RtDataValues[PMD.FsmState],Converter={StaticResource PMStateConverter}}"  Canvas.Left="1120"  Canvas.Top="40"/>
 
-        <userControls:StateTitle Title="TM"      TextBoxValue="{Binding RtDataValues[TM.FsmState]}"  TextBoxColor="{Binding RtDataValues[TM.FsmState],Converter={StaticResource TMStateConverter}}"  Canvas.Left="220"  Canvas.Top="75"/>
+            <userControls:StateTitle Title="TM"    Grid.Row="2"    TextBoxValue="{Binding RtDataValues[TM.FsmState]}"     TextBoxColor="{Binding RtDataValues[TM.FsmState],Converter={StaticResource TMStateConverter}}"  Canvas.Left="220"  Canvas.Top="75"/>
 
-        <Label Content="Log" Style="{StaticResource TopLable_LeftTop}" Canvas.Left="520" Width="100" Canvas.Top="75" BorderThickness="1" BorderBrush="White"  HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="34"/>
-        <ComboBox  Width="896" Canvas.Left="620" Canvas.Top="77" Height="32"
+            <StackPanel Orientation="Horizontal" Grid.Column="1"  Grid.Row="2" Grid.ColumnSpan="3">
+                <Label Content="Log" Style="{StaticResource TopLable_LeftTop}" Canvas.Left="520" Width="100" Canvas.Top="76" BorderThickness="1" BorderBrush="White"  HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Height="30"/>
+                <ComboBox  Width="720" Canvas.Left="620" Canvas.Top="74.2" Height="32"
                                        ItemsSource="{Binding EventLogList}"   
                                        SelectedIndex="{Binding EventLogListSelectedIndex}"
                                        VerticalContentAlignment="Center" FontSize="15"  >
-            <ComboBox.ItemTemplate>
-                <DataTemplate>
-                    <StackPanel Orientation="Horizontal">
-                        <TextBlock FontSize="20" Text="{Binding ElementName=topView,Path=DataContext.CurrentEventItem,Converter={StaticResource EventItemToStringConverter}}" Foreground="{Binding ElementName=topView,Path=DataContext.CurrentEventItem.Level,Converter={StaticResource StringToColorConverter}}"/>
-                    </StackPanel>
-                </DataTemplate>
-            </ComboBox.ItemTemplate>
-            <ComboBox.ItemContainerStyle>
-                <Style TargetType="ComboBoxItem">
-                    <Setter Property="Template">
-                        <Setter.Value>
-                            <ControlTemplate TargetType="ComboBoxItem">
-                                <TextBlock FontSize="20" Text="{Binding .,Converter={StaticResource EventItemToStringConverter}}"  FontFamily="宋体"
+                    <ComboBox.ItemTemplate>
+                        <DataTemplate>
+                            <StackPanel Orientation="Horizontal">
+                                <TextBlock FontSize="20" Text="{Binding ElementName=topView,Path=DataContext.CurrentEventItem,Converter={StaticResource EventItemToStringConverter}}" Foreground="{Binding ElementName=topView,Path=DataContext.CurrentEventItem.Level,Converter={StaticResource StringToColorConverter}}"/>
+                            </StackPanel>
+                        </DataTemplate>
+                    </ComboBox.ItemTemplate>
+                    <ComboBox.ItemContainerStyle>
+                        <Style TargetType="ComboBoxItem">
+                            <Setter Property="Template">
+                                <Setter.Value>
+                                    <ControlTemplate TargetType="ComboBoxItem">
+                                        <TextBlock FontSize="20" Text="{Binding .,Converter={StaticResource EventItemToStringConverter}}"  FontFamily="宋体"
                                                    Foreground="{Binding Level,Converter={StaticResource StringToColorConverter}}">
 
-                                    <TextBlock.Style>
-                                        <Style>
-                                            <Style.Triggers>
-                                                <Trigger Property="TextBlock.IsMouseOver" Value="true">
-                                                    <Setter Property="TextBlock.Background" Value="Silver"/>
-                                                </Trigger>
-                                            </Style.Triggers>
-                                        </Style>
-                                    </TextBlock.Style>
-                                </TextBlock>
-                            </ControlTemplate>
-                        </Setter.Value>
-                    </Setter>
-                    <Setter Property="Background"  Value="{Binding Level,Converter={StaticResource StringToColorConverter}}"/>
-                </Style>
-            </ComboBox.ItemContainerStyle>
-        </ComboBox>
-        <Button  Content="Skip"   BorderThickness="0,0,1,0"  BorderBrush="White"        Style="{StaticResource SysBtnStyle}"   Command="{Binding SkipCommand}"  Width="70"    FontSize="15" Canvas.Left="1520" Canvas.Top="77" Height="30"/>
-        <Button  Content="Clear"  BorderThickness="0"        BorderBrush="Transparent"  Style="{StaticResource SysBtnStyle}"   Command="{Binding ClearCommand}" Width="70"    FontSize="15" Canvas.Left="1600"  Canvas.Top="77" Height="30"/>
+                                            <TextBlock.Style>
+                                                <Style>
+                                                    <Style.Triggers>
+                                                        <Trigger Property="TextBlock.IsMouseOver" Value="true">
+                                                            <Setter Property="TextBlock.Background" Value="Silver"/>
+                                                        </Trigger>
+                                                    </Style.Triggers>
+                                                </Style>
+                                            </TextBlock.Style>
+                                        </TextBlock>
+                                    </ControlTemplate>
+                                </Setter.Value>
+                            </Setter>
+                            <Setter Property="Background"  Value="{Binding Level,Converter={StaticResource StringToColorConverter}}"/>
+                        </Style>
+                    </ComboBox.ItemContainerStyle>
+                </ComboBox>
+                <Button  Content="Skip"   BorderThickness="0,0,1,0"  BorderBrush="White"        Style="{StaticResource SysBtnStyle}"   Command="{Binding SkipCommand}"  Width="70"    FontSize="15" Canvas.Left="1306"  Canvas.Top="76" Height="30"/>
+                <Button  Content="Clear"  BorderThickness="0"        BorderBrush="Transparent"  Style="{StaticResource SysBtnStyle}"   Command="{Binding ClearCommand}" Width="70"    FontSize="15" Canvas.Left="1376"  Canvas.Top="76" Height="30"/>
+            </StackPanel>
+           
+           
+        </Grid>
 
-        <Border Height="100" Width="40" Canvas.Right="10" Canvas.Top="5"  BorderBrush="White" BorderThickness="1" Background="White">
-            <Viewbox  Height="90"   >
+
+       
+            <Viewbox  Height="100" Width="40" Canvas.Right="10" Canvas.Top="10"    >
                 <deviceControl:AITSignalTower  
-                                              IsRedLightOn="{Binding SignalTowerData.IsRedLightOn}"
+                                              IsRedLightOn   ="{Binding SignalTowerData.IsRedLightOn}"
                                               IsYellowLightOn="{Binding SignalTowerData.IsYellowLightOn}"
-                                              IsGreenLightOn="{Binding SignalTowerData.IsGreenLightOn}"
-                                              IsBlueLightOn="{Binding SignalTowerData.IsBlueLightOn}"
-                                              IsBuzzerOn="{Binding SignalTowerData.IsBuzzerOn}"/>
+                                              IsGreenLightOn ="{Binding SignalTowerData.IsGreenLightOn}"
+                                              IsBlueLightOn  ="{Binding SignalTowerData.IsBlueLightOn}"
+                                              IsBuzzerOn     ="{Binding SignalTowerData.IsBuzzerOn}"/>
             </Viewbox>
-        </Border>
+
  
 
     </Canvas>

BIN
Venus/Venus_RT/Config/DeviceModelVenus.xml


+ 0 - 1
Venus/Venus_RT/Modules/PMs/PumpDownRoutine.cs

@@ -100,7 +100,6 @@ namespace Venus_RT.Modules.PMs
 
             // ISO Valve
             _chamber.OpenValve(ValveType.TurboPumpPumping, true);
-            _chamber.OpenValve(ValveType.Guage, true);
 
             return true;
         }

+ 8 - 3
Venus/Venus_RT/Modules/RouteManager.cs

@@ -35,6 +35,7 @@ namespace Venus_RT.Modules
             Stop,
 
             StartCycle,
+            StopCycle,
 
             HOME,
             RESET,
@@ -137,7 +138,7 @@ namespace Venus_RT.Modules
 
             OP.Subscribe("System.Home", (cmd, args) => CheckToPostMessage((int)MSG.HOME, args));
             OP.Subscribe("TMCycle.Start", (cmd, args) => CheckToPostMessage((int)MSG.TMCycle, args));
-            OP.Subscribe("TMCycle.Abort", (cmd, args) => CheckToPostMessage((int)MSG.ABORT, args));
+            OP.Subscribe("TMCycle.Abort", (cmd, args) => CheckToPostMessage((int)MSG.StopCycle, args));
 
 
             DATA.Subscribe("SYSTEM.FsmState", () => (((RtState)fsm.State).ToString()));
@@ -292,7 +293,7 @@ namespace Venus_RT.Modules
             // TM  Cycle
             Transition(RtState.Idle,        MSG.TMCycle,        FsmStartTMCycle,        RtState.TMCycle);
             Transition(RtState.TMCycle,     FSM_MSG.TIMER,      FsmMonitorTMCycle,      RtState.Idle);
-            Transition(RtState.TMCycle,     MSG.ABORT,          FsmAbort,               RtState.Idle);
+            Transition(RtState.TMCycle,     MSG.StopCycle,      FsmStopTMCycle,               RtState.Idle);
 
         }
 
@@ -369,7 +370,11 @@ namespace Venus_RT.Modules
 
             return ret == RState.End;
         }
-
+        private bool FsmStopTMCycle(object[] objs)
+        {
+            _TMCycle.Abort();
+            return true;          
+        }
         private void _debugRoutine()
         {
             int flag = 0;

+ 1 - 1
Venus/Venus_RT/Modules/Schedulers/SchedulerTMRobot.cs

@@ -41,7 +41,7 @@ namespace Venus_RT.Modules.Schedulers
         }
 
         private TMEntity _entity = null;
-        private int _entityTaskToken = (int)FSM_MSG.NONE;
+        public int _entityTaskToken = (int)FSM_MSG.NONE;
         private Queue<SchedulerItem> _schedulerList = new Queue<SchedulerItem>();
         private SchedulerItem _currentScheduler = null;
         public SchedulerTMRobot() : base(ModuleName.TM.ToString())

+ 7 - 2
Venus/Venus_RT/Modules/TMCycle.cs

@@ -14,6 +14,7 @@ using Venus_RT.Modules.Schedulers;
 using Venus_RT.Scheduler;
 using System;
 using MECF.Framework.Common.Schedulers;
+using Aitex.Core.RT.Fsm;
 
 namespace Venus_RT.Modules
 {
@@ -44,7 +45,7 @@ namespace Venus_RT.Modules
         Queue<MoveItem> _runningItems = new Queue<MoveItem>();
         Queue<MoveItem> _CycleWafers = new Queue<MoveItem>();
 
-        public int CycleIndex;
+        public int? CycleIndex;
         public TMCycle() : base(ModuleName.System)
         {
             Name = "TM Cycle";
@@ -208,6 +209,9 @@ namespace Venus_RT.Modules
 
         private bool ReturnBack()
         {
+            var t1 = IsModuleAvailable(_sourceModule);
+            var t2 = IsModuleAvailable(_destinationModule);
+            var t3 = _TMRobot.IsAvailable;
             if (IsModuleAvailable(_sourceModule) && IsModuleAvailable(_destinationModule) && _TMRobot.IsAvailable)
             {
 
@@ -330,7 +334,8 @@ namespace Venus_RT.Modules
 
         public void Abort()
         {
-
+            CycleIndex = null;
+            _TMRobot._entityTaskToken = (int)FSM_MSG.NONE;
         }
     }
 }

+ 1 - 1
Venus/Venus_RT/Venus_RT.csproj

@@ -41,7 +41,7 @@
     <DefineConstants>DEBUG;TRACE</DefineConstants>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
-    <NoWarn>CS0168</NoWarn>
+    <NoWarn>CS0168,CS0219</NoWarn>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     <PlatformTarget>AnyCPU</PlatformTarget>

+ 4 - 4
Venus/Venus_Themes/Themes/Generic.xaml

@@ -493,9 +493,9 @@
         <Setter Property="FontSize" Value="16"/>
         <Setter Property="Foreground" Value="{DynamicResource FG_White}"/>
         <Setter Property="BorderBrush" Value="{DynamicResource TopFrame_TableBD_Highlight}"/>
-        <Setter Property="BorderThickness" Value="3"/>
+        <Setter Property="BorderThickness" Value="1"/>
         <Setter Property="Background" Value="{DynamicResource TopFrame_TableBG}"/>
-        <Setter Property="Margin" Value="1,1,0,1"/>
+        <!--<Setter Property="Margin" Value="1,1,0,1"/>-->
         <Setter Property="Padding" Value="5,2"/>
         <Setter Property="Border.CornerRadius" Value="6,0,0,6"/>
         <Setter Property="SnapsToDevicePixels" Value="True"/>
@@ -514,8 +514,8 @@
     <Style x:Key="TextBox_Top" TargetType="{x:Type TextBox}">
         <Setter Property="SnapsToDevicePixels" Value="True"/>
         <Setter Property="FontFamily" Value="Arial" />
-        <Setter Property="FontSize" Value="14" />
-        <Setter Property="Margin" Value="0,2,2,2"/>
+        <Setter Property="FontSize" Value="24" />
+        <!--<Setter Property="Margin" Value="0,2,2,2"/>-->
         <Setter Property="BorderThickness" Value="0,1,1,1"/>
         <Setter Property="Background" Value="{DynamicResource TextBox_Top_BG}" />
         <Setter Property="Foreground" Value="{DynamicResource Foreground_Black}" />

+ 24 - 4
Venus/Venus_Themes/UserControls/LoadLockLeft.xaml

@@ -30,6 +30,27 @@
                 </DataTrigger>
             </Style.Triggers>
         </Style>
+        <Style TargetType="Rectangle" x:Key="door2Animation">
+            <Setter Property="Width" Value="142"/>
+            <Style.Triggers>
+                <DataTrigger Binding="{Binding ElementName=LeftLoadLock,Path=Door2IsOpen}" Value="True">
+                    <DataTrigger.EnterActions>
+                        <BeginStoryboard>
+                            <Storyboard>
+                                <DoubleAnimation  Storyboard.TargetProperty="Width" To="30" Duration="0:0:1"/>
+                            </Storyboard>
+                        </BeginStoryboard>
+                    </DataTrigger.EnterActions>
+                    <DataTrigger.ExitActions>
+                        <BeginStoryboard>
+                            <Storyboard>
+                                <DoubleAnimation  Storyboard.TargetProperty="Width" To="142" Duration="0:0:1"/>
+                            </Storyboard>
+                        </BeginStoryboard>
+                    </DataTrigger.ExitActions>
+                </DataTrigger>
+            </Style.Triggers>
+        </Style>
     </UserControl.Resources>
     <Viewbox Stretch="Fill" >
         <Canvas Width="200" Height="200">
@@ -78,10 +99,9 @@
                 </ctrl:Slot>
             </Viewbox>
             
-            <Rectangle  Fill="Silver" Width="142"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="-1"/>
-            <Rectangle  Fill="DimGray" Width="142"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="-1"/>
-            <Rectangle  Fill="DimGray" Width="142"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="-1"/>
-           
+            <Rectangle  Fill="Silver" Width="142"   VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="-1"/>
+            <Rectangle  Fill="DimGray" Style="{StaticResource door2Animation}"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="-1"/>
+
         </Canvas>
             
         

+ 11 - 0
Venus/Venus_Themes/UserControls/LoadLockLeft.xaml.cs

@@ -36,6 +36,17 @@ namespace Venus_Themes.UserControls
                 this.SetValue(DoorIsOpenProperty, value);
             }
         }
+        public static readonly DependencyProperty Door2IsOpenProperty = DependencyProperty.Register(
+       "Door2IsOpen", typeof(bool), typeof(LoadLockLeft));
+
+        public bool Door2IsOpen
+        {
+            get { return (bool)this.GetValue(Door2IsOpenProperty); }
+            set
+            {
+                this.SetValue(Door2IsOpenProperty, value);
+            }
+        }
         public static readonly DependencyProperty RobotWaferProperty = DependencyProperty.Register(
       "RobotWafer", typeof(WaferInfo), typeof(LoadLockLeft));
         public WaferInfo RobotWafer

+ 26 - 2
Venus/Venus_Themes/UserControls/LoadLockRight.xaml

@@ -30,6 +30,27 @@
                 </DataTrigger>
             </Style.Triggers>
         </Style>
+        <Style TargetType="Rectangle" x:Key="door2Animation">
+            <Setter Property="Width" Value="142"/>
+            <Style.Triggers>
+                <DataTrigger Binding="{Binding ElementName=RightLoadLock,Path=Door2IsOpen}" Value="True">
+                    <DataTrigger.EnterActions>
+                        <BeginStoryboard>
+                            <Storyboard>
+                                <DoubleAnimation  Storyboard.TargetProperty="Width" To="30" Duration="0:0:1"/>
+                            </Storyboard>
+                        </BeginStoryboard>
+                    </DataTrigger.EnterActions>
+                    <DataTrigger.ExitActions>
+                        <BeginStoryboard>
+                            <Storyboard>
+                                <DoubleAnimation  Storyboard.TargetProperty="Width" To="142" Duration="0:0:1"/>
+                            </Storyboard>
+                        </BeginStoryboard>
+                    </DataTrigger.ExitActions>
+                </DataTrigger>
+            </Style.Triggers>
+        </Style>
     </UserControl.Resources>
     <Viewbox Stretch="Fill" >
         <Canvas Width="200" Height="200">
@@ -78,8 +99,11 @@
                 </ctrl:Slot>
             </Viewbox>
             <Rectangle  Fill="Silver" Width="142"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="59"/>
-            <Rectangle  Fill="DimGray" Width="142"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="59"/>
-            <Rectangle  Fill="DimGray" Width="142"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="59"/>
+            <Rectangle  Fill="DimGray" Style="{StaticResource door2Animation}"  VerticalAlignment="Top"    Height="20"  Canvas.Top="200" Canvas.Left="59"  >
+                <Rectangle.RenderTransform>
+                    <RotateTransform Angle="180" CenterX="71" CenterY="10"/>
+                </Rectangle.RenderTransform>
+            </Rectangle>
         </Canvas>
     </Viewbox>
 </UserControl>

+ 11 - 0
Venus/Venus_Themes/UserControls/LoadLockRight.xaml.cs

@@ -36,6 +36,17 @@ namespace Venus_Themes.UserControls
                 this.SetValue(DoorIsOpenProperty, value);
             }
         }
+        public static readonly DependencyProperty Door2IsOpenProperty = DependencyProperty.Register(
+      "Door2IsOpen", typeof(bool), typeof(LoadLockRight));
+
+        public bool Door2IsOpen
+        {
+            get { return (bool)this.GetValue(Door2IsOpenProperty); }
+            set
+            {
+                this.SetValue(Door2IsOpenProperty, value);
+            }
+        }
         public static readonly DependencyProperty RobotWaferProperty = DependencyProperty.Register(
        "RobotWafer", typeof(WaferInfo), typeof(LoadLockRight));
         public WaferInfo RobotWafer

+ 3 - 3
Venus/Venus_Themes/UserControls/StateTitle.xaml

@@ -6,9 +6,9 @@
              xmlns:local="clr-namespace:Venus_Themes.UserControls"
              mc:Ignorable="d" 
              d:DesignHeight="40" d:DesignWidth="800" x:Name="stateTitle">
+    
     <StackPanel Orientation="Horizontal">
-
-        <Label Style="{StaticResource TopLable_LeftTop}" Content="{Binding ElementName=stateTitle,Path=Title}"  HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Width="100" BorderBrush="White" BorderThickness="1"/>
-        <TextBox Style="{StaticResource TextBox_Top}" Text="{Binding ElementName=stateTitle,Path=TextBoxValue}"  Background="{Binding ElementName=stateTitle,Path=TextBoxColor}" Width="200" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" BorderThickness="1" BorderBrush="Black" FontSize="25"/>
+        <Label   Style="{StaticResource TopLable_LeftTop}" Content="{Binding ElementName=stateTitle,Path=Title}"      HorizontalContentAlignment="Center" VerticalContentAlignment="Center" Width="100" BorderBrush="White" BorderThickness="1" VerticalAlignment="Center" Height="30"/>
+        <TextBox Style="{StaticResource TextBox_Top}"      Text="{Binding ElementName=stateTitle,Path=TextBoxValue}"  Background="{Binding ElementName=stateTitle,Path=TextBoxColor}" Width="210" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" BorderThickness="1" BorderBrush="Black" VerticalAlignment="Center"/>
     </StackPanel>
 </UserControl>