瀏覽代碼

1.自定义 UI 管道与阀门
2.添加部分IO功能

# Conflicts:
# Venus/Venus_RT/Venus_RT.csproj

lixiang 2 年之前
父節點
當前提交
2d9b78db8c
共有 28 個文件被更改,包括 1428 次插入81 次删除
  1. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.Common.dll
  2. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.Common.pdb
  3. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.Core.dll
  4. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.Core.pdb
  5. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.EquipmentLibrary.dll
  6. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.EquipmentLibrary.pdb
  7. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.Simulator.Core.dll
  8. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.Simulator.Core.pdb
  9. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.UI.Core.dll
  10. 二進制
      Venus/Framework/Output/MECF.Framework/MECF.Framework.UI.Core.pdb
  11. 二進制
      Venus/Framework/Output/MECF.Framework/Newtonsoft.Json.dll
  12. 二進制
      Venus/Framework/Output/MECF.Framework/en-US/MECF.Framework.Common.resources.dll
  13. 二進制
      Venus/Framework/Output/MECF.Framework/zh-CN/MECF.Framework.Common.resources.dll
  14. 13 12
      Venus/Framework/UICore/Control/FlowPipe.xaml
  15. 13 12
      Venus/Framework/UICore/Control/FlowPipeV2.xaml
  16. 1 1
      Venus/Framework/UICore/Control/FlowPipeV2.xaml.cs
  17. 46 0
      Venus/Framework/UICore/Control/FlowPipeValve.xaml
  18. 50 0
      Venus/Framework/UICore/Control/FlowPipeValve.xaml.cs
  19. 25 0
      Venus/Framework/UICore/Converters/BoolReverseConverter.cs
  20. 二進制
      Venus/Framework/UICore/Resources/valve.png
  21. 9 0
      Venus/Framework/UICore/UICore.csproj
  22. 12 1
      Venus/Venus_MainPages/Views/OverView.xaml
  23. 12 0
      Venus/Venus_MainPages/Views/OverView.xaml.cs
  24. 46 0
      Venus/Venus_RT/Config/IoProviderConfig.xml
  25. 52 52
      Venus/Venus_RT/Config/_ioDefineVenus.xml
  26. 1142 0
      Venus/Venus_RT/Devices/FinsPlc.cs
  27. 1 1
      Venus/Venus_RT/Instances/ToolLoader.cs
  28. 6 2
      Venus/Venus_RT/Venus_RT.csproj

二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.Common.dll


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.Common.pdb


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.Core.dll


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.Core.pdb


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.EquipmentLibrary.dll


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.RT.EquipmentLibrary.pdb


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.Simulator.Core.dll


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.Simulator.Core.pdb


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.UI.Core.dll


二進制
Venus/Framework/Output/MECF.Framework/MECF.Framework.UI.Core.pdb


二進制
Venus/Framework/Output/MECF.Framework/Newtonsoft.Json.dll


二進制
Venus/Framework/Output/MECF.Framework/en-US/MECF.Framework.Common.resources.dll


二進制
Venus/Framework/Output/MECF.Framework/zh-CN/MECF.Framework.Common.resources.dll


+ 13 - 12
Venus/Framework/UICore/Control/FlowPipe.xaml

@@ -82,10 +82,22 @@
                 </Style.Triggers>
             </Style>
         </Canvas.Resources>
+       
+
+        <Border   x:Name="border1"    CornerRadius="1"  BorderBrush="Gray"  BorderThickness="0" 
+                  Width="{Binding ElementName=flowPipeControl,Path=Width}" Height="{Binding ElementName=flowPipeControl,Path=Height}">
+            <Border.Background>
+                <LinearGradientBrush StartPoint="0.5 0" EndPoint="0.5 1">
+                    <GradientStop Color="Silver"  Offset="0"/>
+                    <GradientStop Color="White" Offset="0.5"/>
+                    <GradientStop Color="Silver"  Offset="1"/>
+                </LinearGradientBrush>
+            </Border.Background>
+        </Border>
         <Path Name="path1" Fill="Red" Stretch="Fill" 
               Width="{Binding ElementName=flowPipeControl,Path=Width}" 
               Height="{Binding ElementName=flowPipeControl,Path=Height}" 
-              Stroke="Green" StrokeDashArray="1,3" StrokeDashCap="Round" StrokeThickness="5"
+              Stroke="Red" StrokeDashArray="1,3" StrokeDashCap="Round" StrokeThickness="5"
               Style="{StaticResource AnimatingFlow}">
             <Path.Data>
                 <PathGeometry>
@@ -101,16 +113,5 @@
                 </PathGeometry>
             </Path.Data>
         </Path>
-
-        <Border   x:Name="border1"    CornerRadius="1"  BorderBrush="Gray"  BorderThickness="1" Opacity="0.5" 
-                  Width="{Binding ElementName=flowPipeControl,Path=Width}" Height="{Binding ElementName=flowPipeControl,Path=Height}">
-            <Border.Background>
-                <LinearGradientBrush StartPoint="0.5 0" EndPoint="0.5 1">
-                    <GradientStop Color="Gray" Offset="0"/>
-                    <GradientStop Color="White" Offset="0.5"/>
-                    <GradientStop Color="Gray" Offset="1"/>
-                </LinearGradientBrush>
-            </Border.Background>
-        </Border>
     </Canvas>
 </UserControl>

+ 13 - 12
Venus/Framework/UICore/Control/FlowPipeV2.xaml

@@ -82,9 +82,21 @@
                 </Style.Triggers>
             </Style>
         </Canvas.Resources>
+
+
+        <Border   x:Name="border1"    CornerRadius="1"  BorderBrush="Gray"  BorderThickness="1" 
+                  Width="{Binding ElementName=flowPipeControl,Path=Width}" Height="{Binding ElementName=flowPipeControl,Path=Height}">
+            <Border.Background>
+                <LinearGradientBrush StartPoint="0.5 0" EndPoint="0.5 1">
+                    <GradientStop Color="Silver" Offset="0"/>
+                    <GradientStop Color="White" Offset="0.5"/>
+                    <GradientStop Color="Silver" Offset="1"/>
+                </LinearGradientBrush>
+            </Border.Background>
+        </Border>
         <Path Name="path1" Fill="Red" Stretch="Fill" 
               Width="{Binding ElementName=flowPipeControl,Path=Width}" 
-              Height="{Binding ElementName=flowPipeControl,Path=Height}" 
+              Height="{Binding ElementName=border1,Path=Height}" 
               Stroke="Green" StrokeDashArray="1,3" StrokeDashCap="Round" StrokeThickness="5"
               Style="{StaticResource AnimatingFlow}">
             <Path.Data>
@@ -101,16 +113,5 @@
                 </PathGeometry>
             </Path.Data>
         </Path>
-
-        <Border   x:Name="border1"    CornerRadius="1"  BorderBrush="Gray"  BorderThickness="1" Opacity="0.5" 
-                  Width="{Binding ElementName=flowPipeControl,Path=Width}" Height="{Binding ElementName=flowPipeControl,Path=Height}">
-            <Border.Background>
-                <LinearGradientBrush StartPoint="0.5 0" EndPoint="0.5 1">
-                    <GradientStop Color="Gray" Offset="0"/>
-                    <GradientStop Color="White" Offset="0.5"/>
-                    <GradientStop Color="Gray" Offset="1"/>
-                </LinearGradientBrush>
-            </Border.Background>
-        </Border>
     </Canvas>
 </UserControl>

+ 1 - 1
Venus/Framework/UICore/Control/FlowPipeV2.xaml.cs

@@ -143,7 +143,7 @@ namespace Aitex.Core.UI.Control
             if (IsSlowFlowing && !IsFlowing)
                 path1.StrokeThickness = 3;
             else if (IsFlowing)
-                path1.StrokeThickness = 5;
+                path1.StrokeThickness = 15;
         }
     }
 }

File diff suppressed because it is too large
+ 46 - 0
Venus/Framework/UICore/Control/FlowPipeValve.xaml


+ 50 - 0
Venus/Framework/UICore/Control/FlowPipeValve.xaml.cs

@@ -0,0 +1,50 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Controls;
+using System.Windows.Data;
+using System.Windows.Documents;
+using System.Windows.Input;
+using System.Windows.Media;
+using System.Windows.Media.Imaging;
+using System.Windows.Navigation;
+using System.Windows.Shapes;
+
+namespace Aitex.Core.UI.Control
+{
+    /// <summary>
+    /// FlowPipeValve.xaml 的交互逻辑
+    /// </summary>
+    public partial class FlowPipeValve : UserControl
+    {
+        public FlowPipeValve()
+        {
+            InitializeComponent();
+        }
+
+        public static readonly DependencyProperty IsOpenProperty = DependencyProperty.Register(
+           "IsOpen", typeof(bool), typeof(FlowPipeValve));
+
+        public bool IsOpen
+        {
+            get { return (bool)this.GetValue(IsOpenProperty); }
+            set {
+                if (value == true)
+                {
+                    openValve.Visibility = Visibility.Visible;
+                    closeValve.Visibility = Visibility.Collapsed;
+                }
+                else
+                {
+                    openValve.Visibility = Visibility.Collapsed;
+                    closeValve.Visibility = Visibility.Visible;
+                }
+                this.SetValue(IsOpenProperty, value);
+               
+                }
+        }
+    }
+}

+ 25 - 0
Venus/Framework/UICore/Converters/BoolReverseConverter.cs

@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows;
+using System.Windows.Data;
+
+namespace MECF.Framework.UI.Core.Converters
+{
+    public class BoolReverseConverter : IValueConverter
+    {
+        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
+        {
+
+            return (bool)value?Visibility.Visible:Visibility.Collapsed;
+        }
+
+        public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
+        {
+            return null;
+
+        }
+    }
+}

二進制
Venus/Framework/UICore/Resources/valve.png


+ 9 - 0
Venus/Framework/UICore/UICore.csproj

@@ -176,6 +176,9 @@
     <Compile Include="Control\FlowPipeV2.xaml.cs">
       <DependentUpon>FlowPipeV2.xaml</DependentUpon>
     </Compile>
+    <Compile Include="Control\FlowPipeValve.xaml.cs">
+      <DependentUpon>FlowPipeValve.xaml</DependentUpon>
+    </Compile>
     <Compile Include="Control\GasFlowButton.xaml.cs">
       <DependentUpon>GasFlowButton.xaml</DependentUpon>
     </Compile>
@@ -315,6 +318,7 @@
     <Compile Include="Control\ValveRound.xaml.cs">
       <DependentUpon>ValveRound.xaml</DependentUpon>
     </Compile>
+    <Compile Include="Converters\BoolReverseConverter.cs" />
     <Compile Include="Converters\BoolSensorConverter.cs" />
     <Compile Include="Converters\CenterBorderGapMaskConverter.cs" />
     <Compile Include="Converters\ColorToBrushConverter.cs" />
@@ -563,6 +567,10 @@
       <Generator>MSBuild:Compile</Generator>
       <SubType>Designer</SubType>
     </Page>
+    <Page Include="Control\FlowPipeValve.xaml">
+      <SubType>Designer</SubType>
+      <Generator>MSBuild:Compile</Generator>
+    </Page>
     <Page Include="Control\GasFlowButton.xaml">
       <Generator>MSBuild:Compile</Generator>
       <SubType>Designer</SubType>
@@ -1035,6 +1043,7 @@
     <Resource Include="Resources\SystemLog\UserOperation.png" />
     <Resource Include="Resources\SystemLog\Warning.png" />
     <Resource Include="Resources\unknown.png" />
+    <EmbeddedResource Include="Resources\valve.png" />
     <Content Include="Resources\Valve\FastPumpValve.png" />
     <Content Include="Resources\Valve\PumpBlack.png" />
     <Content Include="Resources\Valve\PumpGray.png" />

+ 12 - 1
Venus/Venus_MainPages/Views/OverView.xaml

@@ -7,8 +7,19 @@
              mc:Ignorable="d" 
              xmlns:prism="http://prismlibrary.com/"
              prism:ViewModelLocator.AutoWireViewModel="True"
+             xmlns:ctrls="clr-namespace:Aitex.Core.UI.Control;assembly=MECF.Framework.UI.Core"
              d:DesignHeight="450" d:DesignWidth="800">
     <Grid>
-        <TextBlock Text="{Binding Title}" FontSize="30"/>
+        <Grid.RowDefinitions>
+            <RowDefinition/>
+            <RowDefinition/>
+            <RowDefinition/>
+            <RowDefinition/>
+            <RowDefinition/>
+            <RowDefinition/>
+        </Grid.RowDefinitions>
+        <ctrls:FlowPipeValve Name="flv"/>
+        <ctrls:FlowPipeV2 Grid.Row="1" Height="20" Name="fl2" Width="200"/>
+        <Button Grid.Row="2" Width="100" Height="20" Click="Button_Click"  Content="Switch"/>
     </Grid>
 </UserControl>

+ 12 - 0
Venus/Venus_MainPages/Views/OverView.xaml.cs

@@ -23,6 +23,18 @@ namespace Venus_MainPages.Views
         public OverView()
         {
             InitializeComponent();
+            fl2.IsFlowing = false;
+            fl2.IsSlowFlowing = false;
+            flv.IsOpen = false;
+        }
+       
+        private void Button_Click(object sender, RoutedEventArgs e)
+        {
+            fl2.IsFlowing = !fl2.IsFlowing;
+
+            fl2.IsSlowFlowing = !fl2.IsSlowFlowing;
+
+            flv.IsOpen = !flv.IsOpen;
         }
     }
 }

+ 46 - 0
Venus/Venus_RT/Config/IoProviderConfig.xml

@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="utf-8"?>
+<IoProviders system="Cluster" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+  <IoProvider load_condition="0" module="PMA" name="PLC" map_module="PMA" map_file="_ioDefineVenus.xml" class="MECF.Framework.RT.Core.IoProviders.MCProtocolPlc" assembly="MECF.Framework.RT.Core">
+    <Parameter ip="127.0.0.1" port="6731" network_id="1" station_id="1"></Parameter>
+    <Blocks>
+      <Block type="di" offset="0" size="640" value_type=""></Block>
+      <Block type="do" offset="0" size="640" value_type=""></Block>
+      <Block type="ai" offset="0" size="640" value_type=""></Block>
+      <Block type="ao" offset="0" size="640" value_type=""></Block>
+    </Blocks>
+  </IoProvider>
+
+  <!--<IoProvider load_condition="0" module="PMB" name="PLC" map_module="PMB" map_file="_ioDefineVirgo_D.xml"  class="MECF.Framework.RT.Core.IoProviders.MCProtocolPlc" assembly="MECF.Framework.RT.Core">
+    <Parameter ip="127.0.0.1" port="6732" network_id="1" station_id="1"></Parameter>
+    <Blocks>
+      <Block type="di" offset="0" size="640" value_type=""></Block>
+      <Block type="do" offset="0" size="640" value_type=""></Block>
+      <Block type="ai" offset="0" size="640" value_type=""></Block>
+      <Block type="ao" offset="0" size="640" value_type=""></Block>
+    </Blocks>
+  </IoProvider>-->
+
+  <IoProvider load_condition="1" module="PMA" name="PLC" map_module="PMA" map_file="_ioDefineVenus.xml"  class="Venus_RT.Devices.FinsPlc" assembly="Venus_RT">
+    <Parameter  ip="192.168.10.11" port="9600"
+                diBlockType="WR" doBlockType="WR" aiBlockType="D" aoBlockType="D"
+                diStartPosition="20" doStartPosition="0" aiStartPosition="2000" aoStartPosition="1000" ></Parameter>
+    <Blocks>
+      <Block type="di" offset="0" size="128" value_type=""></Block>
+      <Block type="do" offset="0" size="128" value_type=""></Block>
+      <Block type="ai" offset="0" size="128" value_type=""></Block>
+      <Block type="ao" offset="0" size="128" value_type=""></Block>
+    </Blocks>
+  </IoProvider>
+
+  <!--<IoProvider load_condition="1" module="PMB" name="PLC" map_module="PMB" map_file="_ioDefineVirgo_D.xml"  class="Virgo_DRT.Devices.IODevices.FinsPlc" assembly="Virgo_DRT">
+    <Parameter  ip="192.168.10.12" port="9600"
+                diBlockType="WR" doBlockType="WR" aiBlockType="D" aoBlockType="D"
+                diStartPosition="20" doStartPosition="0" aiStartPosition="2000" aoStartPosition="1000" ></Parameter>
+    <Blocks>
+      <Block type="di" offset="0" size="128" value_type=""></Block>
+      <Block type="do" offset="0" size="128" value_type=""></Block>
+      <Block type="ai" offset="0" size="128" value_type=""></Block>
+      <Block type="ao" offset="0" size="128" value_type=""></Block>
+    </Blocks>
+  </IoProvider>-->
+</IoProviders>

+ 52 - 52
Venus/Venus_RT/Config/_ioDefineVenus.xml

@@ -2,59 +2,59 @@
 <IO_DEFINE xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>
 
 	<!--文件根据IO list_Venus样机_V1.0_2022_08_26.xlsx生成-->
-	<!--生成时间:09/07/2022 17:09:44-->
+	<!--生成时间:09/15/2022 10:50:11-->
 	<Dig_In>
-		<DI_ITEM Index="0" Name="DI_PM_Lid_Closed" Device="" Addr="Interlock-HW" Note="w20.00" />
-		<DI_ITEM Index="1" Name="DI_PM_ATM_SW" Device="" Addr="Interlock-PLC" Note="w20.01" />
-		<DI_ITEM Index="2" Name="DI_PM_VAC_SW" Device="" Addr="Interlock-HW" Note="w20.02" />
-		<DI_ITEM Index="3" Name="DI_PCW_Flow_SW" Device="" Addr="Interlock-HW,冷却水流量开关" Note="w20.03" />
-		<DI_ITEM Index="4" Name="DI_Water_Leak_Sensor" Device="" Addr="1=normal, 0=alarm" Note="w20.04" />
-		<DI_ITEM Index="5" Name="DI_Lift_Pin_Up_POS" Device="" Addr="1=on, 0=off" Note="w20.05" />
-		<DI_ITEM Index="6" Name="DI_Lift_Pin_Down_POS" Device="" Addr="1=on, 0=off" Note="w20.06" />
-		<DI_ITEM Index="7" Name="DI_Generator_Hardware_Interlock" Device="" Addr="1=RF interlock normal, 0=RF interlock off" Note="w20.07" />
-		<DI_ITEM Index="8" Name="DI_Source_RF_Fan" Device="" Addr="1=normal, 0=alarm, Interlock-HW" Note="w20.08" />
-		<DI_ITEM Index="9" Name="DI_Turbo_Pump_Interlock" Device="" Addr="1= interlock normal, 0= interlock off" Note="w20.09" />
-		<DI_ITEM Index="10" Name="DI_Slit_Door_Open_POS" Device="" Addr="Interlock-HW" Note="w20.10" />
-		<DI_ITEM Index="11" Name="DI_Slit_Door_Close_POS" Device="" Addr="Interlock-HW" Note="w20.11" />
-		<DI_ITEM Index="12" Name="DI_CDA_Pressure" Device="" Addr="1=normal, 0=alarm" Note="w20.12" />
-		<DI_ITEM Index="13" Name="DI_Coolant_Inlet_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w20.13" />
-		<DI_ITEM Index="14" Name="DI_Coolant_Outlet_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w20.14" />
-		<DI_ITEM Index="15" Name="DI_Process_Vacuum_Gauge_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w20.15" />
-		<DI_ITEM Index="16" Name="DI_Chamber_Vacuum_Gauge_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.00" />
-		<DI_ITEM Index="17" Name="DI_Chamber_Vacuum_Gauge_2_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.01" />
-		<DI_ITEM Index="18" Name="DI_Foreline_Vacuum_Gauge_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.02" />
-		<DI_ITEM Index="19" Name="DI_Loadlock_Vacuum_Gauge_Alarm" Device="" Addr="0=normal, 1=alarm, Loadlock Config" Note="w21.03" />
-		<DI_ITEM Index="20" Name="DI_Valve_TC_Deviation_out_of_range" Device="" Addr="0=normal, 1=alarm" Note="w21.04" />
-		<DI_ITEM Index="21" Name="DI_Valve_Control_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.05" />
-		<DI_ITEM Index="22" Name="DI_Valve_Monitor_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.06" />
-		<DI_ITEM Index="23" Name="DI_Valve_Heater_On_FB" Device="" Addr="0=off, 1=on" Note="w21.07" />
-		<DI_ITEM Index="24" Name="DI_Foreline_TC_Deviation_out_of_range" Device="" Addr="0=normal, 1=alarm" Note="w21.08" />
-		<DI_ITEM Index="25" Name="DI_Foreline_Control_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.09" />
-		<DI_ITEM Index="26" Name="DI_Foreline_Monitor_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.10" />
-		<DI_ITEM Index="27" Name="DI_Foreline_Heater_On_FB" Device="" Addr="0=off, 1=on" Note="w21.11" />
-		<DI_ITEM Index="28" Name="DI_CHB_Wall_TC_Deviation_out_of_range" Device="" Addr="0=normal, 1=alarm" Note="w21.12" />
-		<DI_ITEM Index="29" Name="DI_CHB_Wall_Control_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.13" />
-		<DI_ITEM Index="30" Name="DI_CHB_Wall_Monitor_TC_Broken_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w21.14" />
-		<DI_ITEM Index="31" Name="DI_CHB_Wall_Heater_On_FB" Device="" Addr="0=off, 1=on" Note="w21.15" />
-		<DI_ITEM Index="32" Name="DI_CHB_Wall_OT_SW_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w22.00" />
-		<DI_ITEM Index="33" Name="DI_GB_Interlock" Device="" Addr="1= interlock normal, 0= interlock off" Note="w22.01" />
-		<DI_ITEM Index="34" Name="DI_PN2_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.02" />
-		<DI_ITEM Index="35" Name="DI_MFC1_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.03" />
-		<DI_ITEM Index="36" Name="DI_MFC2_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.04" />
-		<DI_ITEM Index="37" Name="DI_MFC3_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.05" />
-		<DI_ITEM Index="38" Name="DI_MFC4_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.06" />
-		<DI_ITEM Index="39" Name="DI_MFC5_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.07" />
-		<DI_ITEM Index="40" Name="DI_MFC6_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.08" />
-		<DI_ITEM Index="41" Name="DI_MFC7_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.09" />
-		<DI_ITEM Index="42" Name="DI_MFC8_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.10" />
-		<DI_ITEM Index="43" Name="DI_He_Pressure_SW" Device="" Addr="1=normal, 0=alarm, Interlock-PLC" Note="w22.11" />
-		<DI_ITEM Index="44" Name="DI_Gas_pressure_gauge_Alarm" Device="" Addr="0=normal, 1=alarm" Note="w22.12" />
-		<DI_ITEM Index="45" Name="DI_Loadlock_Lid_Closed" Device="" Addr="Loadlock" Note="w22.13" />
-		<DI_ITEM Index="46" Name="DI_Loadlock_Arm_Extend_POS" Device="" Addr="" Note="w22.14" />
-		<DI_ITEM Index="47" Name="DI_Loadlock_Arm_Retract_POS" Device="" Addr="" Note="w22.15" />
-		<DI_ITEM Index="48" Name="DI_Small_Wafer_In_POS" Device="" Addr="" Note="w23.00" />
-		<DI_ITEM Index="49" Name="DI_Big_Wafer_In_POS" Device="" Addr="" Note="w23.01" />
-		<DI_ITEM Index="50" Name="DI_Loadlock_ATM_SW" Device="" Addr="" Note="w23.02" />
+		<DI_ITEM Index="0" Name="DI_PM_Lid_Closed" Device="" Addr="w20.00" Note="Interlock-HW" />
+		<DI_ITEM Index="1" Name="DI_PM_ATM_SW" Device="" Addr="w20.01" Note="Interlock-PLC" />
+		<DI_ITEM Index="2" Name="DI_PM_VAC_SW" Device="" Addr="w20.02" Note="Interlock-HW" />
+		<DI_ITEM Index="3" Name="DI_PCW_Flow_SW" Device="" Addr="w20.03" Note="Interlock-HW,冷却水流量开关" />
+		<DI_ITEM Index="4" Name="DI_Water_Leak_Sensor" Device="" Addr="w20.04" Note="1=normal, 0=alarm" />
+		<DI_ITEM Index="5" Name="DI_Lift_Pin_Up_POS" Device="" Addr="w20.05" Note="1=on, 0=off" />
+		<DI_ITEM Index="6" Name="DI_Lift_Pin_Down_POS" Device="" Addr="w20.06" Note="1=on, 0=off" />
+		<DI_ITEM Index="7" Name="DI_Generator_Hardware_Interlock" Device="" Addr="w20.07" Note="1=RF interlock normal, 0=RF interlock off" />
+		<DI_ITEM Index="8" Name="DI_Source_RF_Fan" Device="" Addr="w20.08" Note="1=normal, 0=alarm, Interlock-HW" />
+		<DI_ITEM Index="9" Name="DI_Turbo_Pump_Interlock" Device="" Addr="w20.09" Note="1= interlock normal, 0= interlock off" />
+		<DI_ITEM Index="10" Name="DI_Slit_Door_Open_POS" Device="" Addr="w20.10" Note="Interlock-HW" />
+		<DI_ITEM Index="11" Name="DI_Slit_Door_Close_POS" Device="" Addr="w20.11" Note="Interlock-HW" />
+		<DI_ITEM Index="12" Name="DI_CDA_Pressure" Device="" Addr="w20.12" Note="1=normal, 0=alarm" />
+		<DI_ITEM Index="13" Name="DI_Coolant_Inlet_TC_Broken_Alarm" Device="" Addr="w20.13" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="14" Name="DI_Coolant_Outlet_TC_Broken_Alarm" Device="" Addr="w20.14" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="15" Name="DI_Process_Vacuum_Gauge_Alarm" Device="" Addr="w20.15" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="16" Name="DI_Chamber_Vacuum_Gauge_Alarm" Device="" Addr="w21.00" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="17" Name="DI_Chamber_Vacuum_Gauge_2_Alarm" Device="" Addr="w21.01" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="18" Name="DI_Foreline_Vacuum_Gauge_Alarm" Device="" Addr="w21.02" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="19" Name="DI_Loadlock_Vacuum_Gauge_Alarm" Device="" Addr="w21.03" Note="0=normal, 1=alarm, Loadlock Config" />
+		<DI_ITEM Index="20" Name="DI_Valve_TC_Deviation_out_of_range" Device="" Addr="w21.04" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="21" Name="DI_Valve_Control_TC_Broken_Alarm" Device="" Addr="w21.05" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="22" Name="DI_Valve_Monitor_TC_Broken_Alarm" Device="" Addr="w21.06" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="23" Name="DI_Valve_Heater_On_FB" Device="" Addr="w21.07" Note="0=off, 1=on" />
+		<DI_ITEM Index="24" Name="DI_Foreline_TC_Deviation_out_of_range" Device="" Addr="w21.08" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="25" Name="DI_Foreline_Control_TC_Broken_Alarm" Device="" Addr="w21.09" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="26" Name="DI_Foreline_Monitor_TC_Broken_Alarm" Device="" Addr="w21.10" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="27" Name="DI_Foreline_Heater_On_FB" Device="" Addr="w21.11" Note="0=off, 1=on" />
+		<DI_ITEM Index="28" Name="DI_CHB_Wall_TC_Deviation_out_of_range" Device="" Addr="w21.12" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="29" Name="DI_CHB_Wall_Control_TC_Broken_Alarm" Device="" Addr="w21.13" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="30" Name="DI_CHB_Wall_Monitor_TC_Broken_Alarm" Device="" Addr="w21.14" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="31" Name="DI_CHB_Wall_Heater_On_FB" Device="" Addr="w21.15" Note="0=off, 1=on" />
+		<DI_ITEM Index="32" Name="DI_CHB_Wall_OT_SW_Alarm" Device="" Addr="w22.00" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="33" Name="DI_GB_Interlock" Device="" Addr="w22.01" Note="1= interlock normal, 0= interlock off" />
+		<DI_ITEM Index="34" Name="DI_PN2_Pressure_SW" Device="" Addr="w22.02" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="35" Name="DI_MFC1_Pressure_SW" Device="" Addr="w22.03" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="36" Name="DI_MFC2_Pressure_SW" Device="" Addr="w22.04" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="37" Name="DI_MFC3_Pressure_SW" Device="" Addr="w22.05" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="38" Name="DI_MFC4_Pressure_SW" Device="" Addr="w22.06" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="39" Name="DI_MFC5_Pressure_SW" Device="" Addr="w22.07" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="40" Name="DI_MFC6_Pressure_SW" Device="" Addr="w22.08" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="41" Name="DI_MFC7_Pressure_SW" Device="" Addr="w22.09" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="42" Name="DI_MFC8_Pressure_SW" Device="" Addr="w22.10" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="43" Name="DI_He_Pressure_SW" Device="" Addr="w22.11" Note="1=normal, 0=alarm, Interlock-PLC" />
+		<DI_ITEM Index="44" Name="DI_Gas_pressure_gauge_Alarm" Device="" Addr="w22.12" Note="0=normal, 1=alarm" />
+		<DI_ITEM Index="45" Name="DI_Loadlock_Lid_Closed" Device="" Addr="w22.13" Note="Loadlock" />
+		<DI_ITEM Index="46" Name="DI_Loadlock_Arm_Extend_POS" Device="" Addr="w22.14" />
+		<DI_ITEM Index="47" Name="DI_Loadlock_Arm_Retract_POS" Device="" Addr="w22.15" />
+		<DI_ITEM Index="48" Name="DI_Small_Wafer_In_POS" Device="" Addr="w23.00" />
+		<DI_ITEM Index="49" Name="DI_Big_Wafer_In_POS" Device="" Addr="w23.01" />
+		<DI_ITEM Index="50" Name="DI_Loadlock_ATM_SW" Device="" Addr="w23.02" />
 		<DI_ITEM Index="51" Name="" />
 		<DI_ITEM Index="52" Name="" />
 		<DI_ITEM Index="53" Name="" />

File diff suppressed because it is too large
+ 1142 - 0
Venus/Venus_RT/Devices/FinsPlc.cs


+ 1 - 1
Venus/Venus_RT/Instances/ToolLoader.cs

@@ -63,7 +63,7 @@ namespace Venus_RT.Instances
 
             Singleton<SystemConfigManager>.Instance.Initialize(PathManager.GetCfgDir() + "System.sccfg");
 
-            //IoProviderManager.Instance.Initialize(PathManager.GetCfgDir() + "IoProviderConfig.xml");
+            IoProviderManager.Instance.Initialize(PathManager.GetCfgDir() + "IoProviderConfig.xml");
 
             //IoManager.Instance.Initialize(PathManager.GetCfgDir() + "Interlock.Virgo.xml");
 

+ 6 - 2
Venus/Venus_RT/Venus_RT.csproj

@@ -78,6 +78,7 @@
     <Compile Include="Devices\DeviceManager.cs" />
     <Compile Include="Devices\EdwardsPump.cs" />
     <Compile Include="Devices\ESC5HighVoltage.cs" />
+    <Compile Include="Devices\FinsPlc.cs" />
     <Compile Include="Devices\KashiyamaPump.cs" />
     <Compile Include="Devices\PendulumValve.cs" />
     <Compile Include="Devices\PlasmaController.cs" />
@@ -120,9 +121,9 @@
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>Resources.Designer.cs</LastGenOutput>
     </EmbeddedResource>
-    <None Include="Config\System.sccfg">
+    <Content Include="Config\System.sccfg">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
-    </None>
+    </Content>
     <None Include="Properties\Settings.settings">
       <Generator>SettingsSingleFileGenerator</Generator>
       <LastGenOutput>Settings.Designer.cs</LastGenOutput>
@@ -179,6 +180,9 @@
     <Content Include="Config\EventDefine.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>
+    <Content Include="Config\IoProviderConfig.xml">
+      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
+    </Content>
     <Content Include="Config\RecipeFormat.xml">
       <CopyToOutputDirectory>Always</CopyToOutputDirectory>
     </Content>