Bläddra i källkod

Added PMChamberLabel display for VenusDE and VenusSE.

kuangzl 9 månader sedan
förälder
incheckning
eaf2ce039b

+ 28 - 2
Venus/Venus_MainPages/ViewModels/SeTMViewModel.cs

@@ -107,10 +107,33 @@ namespace Venus_MainPages.ViewModels
         private bool m_PMCIsCycle;
 
         private int m_CycleCount;
-
+        private string m_PMAChamberLabel;
+        private string m_PMBChamberLabel;
+        private string m_PMCChamberLabel;
+        private string m_PMDChamberLabel;
         #endregion
 
         #region 属性
+        public string PMAChamberLabel
+        {
+            get { return m_PMAChamberLabel; }
+            set { SetProperty(ref m_PMAChamberLabel, value); }
+        }
+        public string PMBChamberLabel
+        {
+            get { return m_PMBChamberLabel; }
+            set { SetProperty(ref m_PMBChamberLabel, value); }
+        }
+        public string PMCChamberLabel
+        {
+            get { return m_PMCChamberLabel; }
+            set { SetProperty(ref m_PMCChamberLabel, value); }
+        }
+        public string PMDChamberLabel
+        {
+            get { return m_PMDChamberLabel; }
+            set { SetProperty(ref m_PMDChamberLabel, value); }
+        }
         public double Alignerangle
         {
             get { return m_Alignerangle; }
@@ -726,7 +749,10 @@ namespace Venus_MainPages.ViewModels
             PAWafer = ModuleManager.ModuleInfos["Aligner1"].WaferManager.Wafers[0];
             RobotUpperWafer = TMModuleInfo.WaferManager.Wafers[0];
             RobotLowerWafer = TMModuleInfo.WaferManager.Wafers[1];
-
+            PMAChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMA.ChamberLabel").ToString();
+            PMBChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMB.ChamberLabel").ToString();
+            PMCChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMC.ChamberLabel").ToString();
+            PMDChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMD.ChamberLabel").ToString();
         }
         private async void RobotMoveInfoChanged(RobotMoveInfo oldValue, RobotMoveInfo newValue)
         {

+ 28 - 2
Venus/Venus_MainPages/ViewModels/VenusDETMViewModel.cs

@@ -115,10 +115,33 @@ namespace Venus_MainPages.ViewModels
         private bool m_PMDIsCycle;
 
         private int m_CycleCount;
-
+        private string m_PMAChamberLabel;
+        private string m_PMBChamberLabel;
+        private string m_PMCChamberLabel;
+        private string m_PMDChamberLabel;
         #endregion
 
         #region 属性
+        public string PMAChamberLabel
+        {
+            get { return m_PMAChamberLabel; }
+            set { SetProperty(ref m_PMAChamberLabel, value); }
+        }
+        public string PMBChamberLabel
+        {
+            get { return m_PMBChamberLabel; }
+            set { SetProperty(ref m_PMBChamberLabel, value); }
+        }
+        public string PMCChamberLabel
+        {
+            get { return m_PMCChamberLabel; }
+            set { SetProperty(ref m_PMCChamberLabel, value); }
+        }
+        public string PMDChamberLabel
+        {
+            get { return m_PMDChamberLabel; }
+            set { SetProperty(ref m_PMDChamberLabel, value); }
+        }
         public WaferInfo PMAWafer
         {
             get { return m_PMAWafer; }
@@ -765,7 +788,10 @@ namespace Venus_MainPages.ViewModels
             PAWafer = ModuleManager.ModuleInfos["Aligner1"].WaferManager.Wafers[0];
             RobotUpperWafer = TMModuleInfo.WaferManager.Wafers[0];
             RobotLowerWafer = TMModuleInfo.WaferManager.Wafers[1];
-
+            PMAChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMA.ChamberLabel").ToString();
+            PMBChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMB.ChamberLabel").ToString();
+            PMCChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMC.ChamberLabel").ToString();
+            PMDChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMD.ChamberLabel").ToString();
         }
         private async void RobotMoveInfoChanged(RobotMoveInfo oldValue, RobotMoveInfo newValue)
         {

+ 29 - 0
Venus/Venus_MainPages/ViewModels/VenusDeOperationOverViewModel.cs

@@ -89,6 +89,11 @@ namespace Venus_MainPages.ViewModels
         private bool m_TMIsVAC;
         private bool m_VCEAIsVAC;
         private bool m_VCEBIsVAC;
+        private string m_PMAChamberLabel;
+        private string m_PMBChamberLabel;
+        private string m_PMCChamberLabel;
+        private string m_PMDChamberLabel;
+
         private int m_CurrentSlotA;
         private int m_CurrentSlotB;
         private ObservableCollection<int> m_VCEASlots = new ObservableCollection<int>();
@@ -139,6 +144,26 @@ namespace Venus_MainPages.ViewModels
             get { return m_VCEBIsVAC; }
             set { SetProperty(ref m_VCEBIsVAC, value); }
         }
+        public string PMAChamberLabel
+        {
+            get { return m_PMAChamberLabel; }
+            set { SetProperty(ref m_PMAChamberLabel, value); }
+        }
+        public string PMBChamberLabel
+        {
+            get { return m_PMBChamberLabel; }
+            set { SetProperty(ref m_PMBChamberLabel, value); }
+        }
+        public string PMCChamberLabel
+        {
+            get { return m_PMCChamberLabel; }
+            set { SetProperty(ref m_PMCChamberLabel, value); }
+        }
+        public string PMDChamberLabel
+        {
+            get { return m_PMDChamberLabel; }
+            set { SetProperty(ref m_PMDChamberLabel, value); }
+        }
         public DERobotTAction Robot1TAction
         {
             get { return m_Robot1TAction; }
@@ -986,6 +1011,10 @@ namespace Venus_MainPages.ViewModels
                 TMIsVAC = (CommonFunction.GetValue<int>(RtDataValues, "TM.TMPressure.Value") < Convert.ToInt32(QueryDataClient.Instance.Service.GetConfig($"TM.VACTargetPressure")));
                 VCEAIsVAC = (CommonFunction.GetValue<int>(RtDataValues, "TM.VCEAPressure.Value") < Convert.ToInt32(QueryDataClient.Instance.Service.GetConfig($"VCEA.VACTargetPressure")));
                 VCEBIsVAC = (CommonFunction.GetValue<int>(RtDataValues, "TM.VCEBPressure.Value") < Convert.ToInt32(QueryDataClient.Instance.Service.GetConfig($"VCEB.VACTargetPressure")));
+                PMAChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMA.ChamberLabel").ToString();
+                PMBChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMB.ChamberLabel").ToString();
+                PMCChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMC.ChamberLabel").ToString();
+                PMDChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMD.ChamberLabel").ToString();
 
                 if (PMAIsInstalled == true)
                 {

+ 28 - 0
Venus/Venus_MainPages/ViewModels/VenusSeOperationOverViewModel.cs

@@ -69,9 +69,33 @@ namespace Venus_MainPages.ViewModels
 
         private WaferAssociationInfo m_VCEwaferAssociation;
         private bool loadflag;
+        private string m_PMAChamberLabel;
+        private string m_PMBChamberLabel;
+        private string m_PMCChamberLabel;
+        private string m_PMDChamberLabel;
         #endregion
 
         #region 属性
+        public string PMAChamberLabel
+        {
+            get { return m_PMAChamberLabel; }
+            set { SetProperty(ref m_PMAChamberLabel, value); }
+        }
+        public string PMBChamberLabel
+        {
+            get { return m_PMBChamberLabel; }
+            set { SetProperty(ref m_PMBChamberLabel, value); }
+        }
+        public string PMCChamberLabel
+        {
+            get { return m_PMCChamberLabel; }
+            set { SetProperty(ref m_PMCChamberLabel, value); }
+        }
+        public string PMDChamberLabel
+        {
+            get { return m_PMDChamberLabel; }
+            set { SetProperty(ref m_PMDChamberLabel, value); }
+        }
         public SERobotTAction Robot1TAction
         {
             get { return m_Robot1TAction; }
@@ -771,6 +795,10 @@ namespace Venus_MainPages.ViewModels
                 TMModuleInfo = ModuleManager.ModuleInfos["TMRobot"];
                 RobotUpperWafer = TMModuleInfo.WaferManager.Wafers[0];
                 RobotLowerWafer = TMModuleInfo.WaferManager.Wafers[1];
+                PMAChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMA.ChamberLabel").ToString();
+                PMBChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMB.ChamberLabel").ToString();
+                PMCChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMC.ChamberLabel").ToString();
+                PMDChamberLabel = QueryDataClient.Instance.Service.GetConfig($"PMD.ChamberLabel").ToString();
             }
             catch
             {

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 3 - 3
Venus/Venus_MainPages/Views/SeTMView.xaml


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 6 - 4
Venus/Venus_MainPages/Views/VenusDETMView.xaml


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 4 - 4
Venus/Venus_MainPages/Views/VenusDeOperationOverView.xaml


Filskillnaden har hållts tillbaka eftersom den är för stor
+ 3 - 3
Venus/Venus_MainPages/Views/VenusSeOperationOverView.xaml


+ 1 - 1
Venus/Venus_RT/App.config

@@ -28,7 +28,7 @@
 	<connectionStrings>
 		<add name="PostgreSQL"   connectionString="Server=localhost;Port=5432;User Id=postgres;Password=123456;Database=postgres;Enlist=true;Preload Reader=true;" />
 		<!--0是other,1是kepler2300,2是Kepler2200,3是VenusSE,4是VenusDE-->
-		<add name="ConfigType"   connectionString="4"/>
+		<add name="ConfigType"   connectionString="3"/>
 	</connectionStrings>
 	<system.serviceModel>
 		<!--<diagnostics>

+ 1 - 1
Venus/Venus_Simulator/App.config

@@ -4,7 +4,7 @@
 		<section name="customSettings" type="System.Configuration.NameValueSectionHandler"/>
 	</configSections>
 	<customSettings>
-		<add key="SimulatorType" value="4"/>
+		<add key="SimulatorType" value="3"/>
 	</customSettings>
     <startup> 
         <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />

+ 57 - 251
Venus/Venus_Themes/UserControls/SERobot.xaml

@@ -8,269 +8,75 @@
              d:DesignHeight="250" d:DesignWidth="200">
     <Grid>
 
-        <Viewbox x:Name="viewbox" Stretch="Fill">
-            <VisualStateManager.VisualStateGroups>
-                <VisualStateGroup Name="RobotXActions">
-                    <VisualStateGroup.Transitions>
-                        <VisualTransition To="Extend">
-                            <Storyboard FillBehavior="HoldEnd" Timeline.SpeedRatio="13">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT1RotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="90" KeyTime="0:0:0"/>
-                                    <LinearDoubleKeyFrame Value="0"  KeyTime="0:0:9"/>
-                                </DoubleAnimationUsingKeyFrames>
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2ArmRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:0"/>
-                                    <LinearDoubleKeyFrame Value="0"   KeyTime="0:0:9"/>
-                                </DoubleAnimationUsingKeyFrames>
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2Act" Storyboard.TargetProperty="X">
-                                    <LinearDoubleKeyFrame Value="0" KeyTime="0:0:9"/>
-                                    <LinearDoubleKeyFrame Value="2.126" KeyTime="0:0:8"/>
-                                    <LinearDoubleKeyFrame Value="8.443" KeyTime="0:0:7"/>
-                                    <LinearDoubleKeyFrame Value="18.756" KeyTime="0:0:6"/>
-                                    <LinearDoubleKeyFrame Value="32.753" KeyTime="0:0:5"/>
-                                    <LinearDoubleKeyFrame Value="50.009" KeyTime="0:0:4"/>
-                                    <LinearDoubleKeyFrame Value="70" KeyTime="0:0:3"/>
-                                    <LinearDoubleKeyFrame Value="92.117" KeyTime="0:0:2"/>
-                                    <LinearDoubleKeyFrame Value="115.689" KeyTime="0:0:1"/>
-                                    <LinearDoubleKeyFrame Value="140" KeyTime="0:0:0"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-                        <VisualTransition To="Retract">
-                            <Storyboard FillBehavior="HoldEnd" SpeedRatio="14">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT1RotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="0"  KeyTime="0:0:0"/>
-                                    <LinearDoubleKeyFrame Value="90" KeyTime="0:0:9"/>
-                                </DoubleAnimationUsingKeyFrames>
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2ArmRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="0"   KeyTime="0:0:0"/>
-                                    <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:9"/>
-                                </DoubleAnimationUsingKeyFrames>
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2Act" Storyboard.TargetProperty="X">
-                                    <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0"/>
-                                    <LinearDoubleKeyFrame Value="2.126" KeyTime="0:0:1"/>
-                                    <LinearDoubleKeyFrame Value="8.443" KeyTime="0:0:2"/>
-                                    <LinearDoubleKeyFrame Value="18.756" KeyTime="0:0:3"/>
-                                    <LinearDoubleKeyFrame Value="32.753" KeyTime="0:0:4"/>
-                                    <LinearDoubleKeyFrame Value="50.009" KeyTime="0:0:5"/>
-                                    <LinearDoubleKeyFrame Value="70" KeyTime="0:0:6"/>
-                                    <LinearDoubleKeyFrame Value="92.117" KeyTime="0:0:7"/>
-                                    <LinearDoubleKeyFrame Value="115.689" KeyTime="0:0:8"/>
-                                    <LinearDoubleKeyFrame Value="140" KeyTime="0:0:9"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-                    </VisualStateGroup.Transitions>
+        <Canvas Width="200" Height="300" >
 
-                    <VisualState Name="X_Origin">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <!--后臂+底座-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT1RotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="-30" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <!--中臂+前臂-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2Act" Storyboard.TargetProperty="Y">
-                                <LinearDoubleKeyFrame Value="35" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <!--中臂-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2ArmRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="30" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <!--前臂-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT3ArmTranslateAct" Storyboard.TargetProperty="Y">
-                                <LinearDoubleKeyFrame Value="30" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-
-                    <VisualState Name="Extend">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <!--后臂+底座-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT1RotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <!--中臂+前臂-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2Act" Storyboard.TargetProperty="Y">
-                                <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <!--中臂-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2ArmRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <!--前臂-->
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT3ArmTranslateAct" Storyboard.TargetProperty="Y">
-                                <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                    <VisualState Name="Retract">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT1RotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="90" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2ArmRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="armXT2Act" Storyboard.TargetProperty="X">
-                                <LinearDoubleKeyFrame Value="140" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                </VisualStateGroup>
-
-                <VisualStateGroup Name="RobotTActions">
-                    <VisualStateGroup.Transitions>
-                        <VisualTransition To="T_Origin">
-                            <Storyboard FillBehavior="HoldEnd">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:1"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-
-                        <VisualTransition To="PMA">
-                            <Storyboard FillBehavior="HoldEnd">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="90" KeyTime="0:0:0.5"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-                        <VisualTransition To="PMB">
-                            <Storyboard FillBehavior="HoldEnd">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0.5"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-                        <VisualTransition To="PMC">
-                            <Storyboard FillBehavior="HoldEnd">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="120" KeyTime="0:0:0.5"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-                        <VisualTransition To="Aligner1">
-                            <Storyboard FillBehavior="HoldEnd">
-                                <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                    <LinearDoubleKeyFrame Value="180" KeyTime="0:0:0.5"/>
-                                </DoubleAnimationUsingKeyFrames>
-                            </Storyboard>
-                        </VisualTransition>
-                    </VisualStateGroup.Transitions>
-
-                    <VisualState Name="T_Origin">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                    <VisualState Name="PMA">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="-90" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                    <VisualState Name="PMB">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="0" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                    <VisualState Name="PMC">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="90" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                    <VisualState Name="Aligner1">
-                        <Storyboard FillBehavior="HoldEnd">
-                            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="robotRotateAct" Storyboard.TargetProperty="Angle">
-                                <LinearDoubleKeyFrame Value="180" KeyTime="0:0:0"/>
-                            </DoubleAnimationUsingKeyFrames>
-                        </Storyboard>
-                    </VisualState>
-                </VisualStateGroup>
-
-            </VisualStateManager.VisualStateGroups>
-            <Canvas Width="200" Height="300" >
-
-                <Canvas x:Name="robot" Width="100" Height="150" RenderTransformOrigin="1 1" >
-                    <!--robot总动作-->
+            <Canvas x:Name="robot" Width="100" Height="150" RenderTransformOrigin="1 1" >
+                <!--robot总动作-->
+                <Canvas.RenderTransform>
+                    <TransformGroup>
+                        <RotateTransform  x:Name="robotRotateAct"/>
+                        <!--<RotateTransform Angle="-90"/>-->
+                        <!--<TranslateTransform  x:Name="robotUpDownAct"></TranslateTransform>-->
+                    </TransformGroup>
+                </Canvas.RenderTransform>
+                <Canvas x:Name="armXT1" Width="200" Height="100"  Canvas.Top="100" RenderTransformOrigin="0.5 0.5">
+                    <!--后臂+底座动作-->
                     <Canvas.RenderTransform>
-                        <TransformGroup>
-                            <RotateTransform  Angle="180"/>
-                            <!--<RotateTransform  x:Name="robotRotateAct"/>-->
-                            <!--<TranslateTransform  x:Name="robotUpDownAct"></TranslateTransform>-->
-                        </TransformGroup>
+                        <RotateTransform Angle="-115"/>
+                        <!--<RotateTransform  x:Name="armXT1RotateAct"/>127.86,125.72,123.58,121.44,119.3,115-->
                     </Canvas.RenderTransform>
-                    <Canvas x:Name="armXT1" Width="200" Height="100"  Canvas.Top="100" RenderTransformOrigin="0.5 0.5">
-                        <!--后臂+底座动作-->
-                        <Canvas.RenderTransform>
-                            <RotateTransform  Angle="90"/>
-                            <!--<RotateTransform  x:Name="armXT1RotateAct"/>-->
-                        </Canvas.RenderTransform>
-                        <Canvas x:Name="armXT1Center"  Width="60" Height="60" Canvas.Left="70" Canvas.Top="20" ToolTip="底座">
-                            <Viewbox Canvas.Left="0" Canvas.Top="0" Width="60" Height="60">
-                                <userControls:SERobot4 IsEnabled="False" Height="60"/>
-                            </Viewbox>
-                        </Canvas>
-                        <Canvas x:Name="armXT1Arm" Width="120" Height="40"  Canvas.Left="10" Canvas.Top="30"  ToolTip="后臂" >
-                            <Viewbox Canvas.Left="0" Canvas.Top="-40" Width="120" Height="120" >
-                                <userControls:SERobot3 IsEnabled="False" Height="150"/>
-                            </Viewbox>
-                        </Canvas>
+                    <Canvas x:Name="armXT1Center"  Width="60" Height="60" Canvas.Left="70" Canvas.Top="20" ToolTip="底座">
+                        <Viewbox Canvas.Left="0" Canvas.Top="0" Width="60" Height="60">
+                            <userControls:SERobot4 IsEnabled="False" Height="60"/>
+                        </Viewbox>
+                    </Canvas>
+                    <Canvas x:Name="armXT1Arm" Width="120" Height="40"  Canvas.Left="10" Canvas.Top="30"  ToolTip="后臂" >
+                        <Viewbox Canvas.Left="0" Canvas.Top="-40" Width="120" Height="120" >
+                            <userControls:SERobot3 IsEnabled="False" Height="150"/>
+                        </Viewbox>
                     </Canvas>
-                    <Canvas x:Name="armXT2" Width="270" Height="50" Canvas.Left="0" Canvas.Top="180" RenderTransformOrigin="1 0.5">
-                        <!--中臂加前臂动作-->
+                    <Canvas x:Name="armXT2Arm" Width="105" Height="40"  Canvas.Left="-73" Canvas.Top="30" ToolTip="中臂"  RenderTransformOrigin="1 0.5">
+                        <!--中臂动作-->
                         <Canvas.RenderTransform>
                             <TransformGroup>
-                                <TranslateTransform x:Name="armXT2Act"></TranslateTransform>
-                                <RotateTransform x:Name="armXT2RotateAct"/>
+                                <RotateTransform Angle="-120"/>
+                                <!--<TranslateTransform x:Name="armXT2ArmTranslateAct"/>174.17
+163.34
+152.51
+141.68
+130.85
+120.02
+                                <RotateTransform x:Name="armXT2ArmRotateAct"/>-->
                             </TransformGroup>
                         </Canvas.RenderTransform>
-                        <Canvas x:Name="armXT2Arm" Width="120" Height="40"  Canvas.Left="10" Canvas.Top="-50" ToolTip="中臂" RenderTransformOrigin="0 0.5">
-                            <!--中臂动作-->
-                            <Canvas.RenderTransform>
-                                <TransformGroup>
-                                    <RotateTransform Angle="-90"/>
-                                    <TranslateTransform X="70"/>
-                                    <TranslateTransform Y="-25"/>
-                                    <RotateTransform x:Name="armXT2ArmRotateAct"/>
-                                </TransformGroup>
-                            </Canvas.RenderTransform>
-                            <Viewbox Canvas.Left="0" Canvas.Top="-40" Width="120" Height="120" >
-                                <userControls:SERobot2 IsEnabled="False" Height="150"/>
-                            </Viewbox>
-                        </Canvas>
-                        <!--前臂动作-->
-                        <Canvas x:Name="armGripper" Height="160" Width="45"  Canvas.Left="77" Canvas.Top="-170" ToolTip="前臂" RenderTransformOrigin="1 0.5">
-                            <Canvas.RenderTransform>
-                                <TransformGroup>
-                                    <TranslateTransform Y="-155"/>
-                                    <!--<TranslateTransform x:Name="armXT3ArmTranslateAct"/>-->
-                                    <RotateTransform x:Name="armXT3ArmRotateAct"/>
-                                </TransformGroup>
-                            </Canvas.RenderTransform>
-                            <Viewbox  Canvas.Left="0" Canvas.Top="0" Width="45" Height="160">
-                                <userControls:SERobot1 IsEnabled="False" Height="190"/>
-                            </Viewbox>
-                            <Viewbox Canvas.Left="-17" Canvas.Top="-90" Width="85" Height="85">
-                                <userControls:WaferCtrl WaferData="{Binding RobotWafer,RelativeSource={RelativeSource TemplatedParent}}" IsEnabled="False"/>
-                            </Viewbox>
-
-                        </Canvas>
-
-
+                        <Viewbox Canvas.Left="10" Canvas.Top="-40" Width="110" Height="120" >
+                            <userControls:SERobot2 IsEnabled="False"/>
+                        </Viewbox>
                     </Canvas>
                 </Canvas>
-            </Canvas>
+                <!--前臂动作-->
+                <Canvas x:Name="armGripper" Height="40" Width="158"  Canvas.Left="-190" Canvas.Top="130" ToolTip="前臂" RenderTransformOrigin="1 0.5">
+                    <Canvas.RenderTransform>
+                        <TransformGroup>
+                            <TranslateTransform X="225"/>
+                            <TranslateTransform Y="0"/>
+                            <!--<TranslateTransform x:Name="armXT3ArmTranslateAct"/>
+                            <RotateTransform x:Name="armXT3ArmRotateAct"/> 152,-12 -->
+                        </TransformGroup>
+                    </Canvas.RenderTransform>
+                    <Viewbox  Canvas.Left="56" Canvas.Top="-60" Width="45" Height="160">
+                        <userControls:SERobot1 IsEnabled="False"/>
+                    </Viewbox>
+                    <Viewbox Canvas.Left="-30" Canvas.Top="-15" Width="70" Height="70">
+                        <!--<Border BorderBrush="Black" BorderThickness="2">-->
+                        <userControls:WaferCtrl WaferData="{Binding RobotWafer,RelativeSource={RelativeSource TemplatedParent}}" IsEnabled="False"/>
+                        <!--</Border>-->
+                    </Viewbox>
 
-        </Viewbox>
+                </Canvas>
 
+            </Canvas>
 
+        </Canvas>
     </Grid>
 </UserControl>

+ 1 - 1
Venus/Venus_Themes/UserControls/TMChamber.xaml

@@ -91,7 +91,7 @@
 
                 <Border  Canvas.Top="-50" Canvas.Left="-60" HorizontalAlignment="Center" Width="320" Visibility="Visible">
                     <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center" Visibility="{Binding ElementName=tmChamber,Path=PMVisibility}">
-                        <!--<TextBlock FontSize="30" Text="{Binding ElementName=tmChamber,Path=Name}"/>-->
+                        <TextBlock FontSize="30" Width="Auto" Text="{Binding ElementName=tmChamber,Path=ModuleName}"/>
                         <!--<TextBlock FontSize="30" Text="(" HorizontalAlignment="Center"/>
                         <TextBlock FontSize="30" Text="{Binding ElementName=tmChamber,Path=PressureValue,StringFormat=F0}" HorizontalAlignment="Center"/>
                         <TextBlock FontSize="30" Text="{Binding ElementName=tmChamber,Path=Unit}" HorizontalAlignment="Center"/>