瀏覽代碼

Cutting failure

zhangjiaxin 4 年之前
父節點
當前提交
b3023d20ef

+ 6 - 3
HOZProject/App.config

@@ -60,10 +60,13 @@
 
       <add key="RemoteCutHoleInfoFilePath" value="\\192.168.1.101\Service" />
 
-      <add key="RemoteELYPath" value="\\192.168.1.101\fib auto\FIB Recipe\" />
-      <add key="RemoteMLFPath" value="\\192.168.1.101\fib auto\FIB Recipe\" />
-
+      <add key="RemoteHintELYPath" value="\\192.168.1.101\fib auto\FIB Recipe\" />
+      <add key="RemoteHintMLFPath" value="\\192.168.1.101\fib auto\FIB Recipe\" />
 
+	  <!--在电镜电脑上需要有一下两个路径,并且共享权限为读写-->
+		<add key="RemoteELYDesPath" value="\\192.168.1.101\Carl Zeiss\SmartFIB\API\Drop\"/>
+		<add key="RemoteMLFDesPath" value="\\192.168.1.101\Carl Zeiss\SmartSEM\User\Service\"/>
+	  <!--在电镜电脑上需要有一下两个路径,并且共享权限为读写end-->
 
       <!--是否仅拍照-->
       <!--<add key="Is_Photograph" value="False" />-->

+ 8 - 8
HOZProject/FormUnitControl.cs

@@ -690,8 +690,8 @@ namespace HOZProject
             MeasureParam md = new MeasureParam();
             md.SampleType = "aaaaaa";
             md.IfPT = true;
-            md.PTTemp = "bbbbb";
-            md.FIBTemp = "cccc";
+            md.RemotePTOriginalEly = "bbbbb";
+            md.RemoteFIBOriginalEly = "cccc";
             //md.FocusMode = 2;
 
             mf.MParam = md;
@@ -1146,7 +1146,7 @@ namespace HOZProject
             if (sfd.ShowDialog() == DialogResult.OK)
             {
                 //string fn = Path.GetFileNameWithoutExtension(sfd.FileName).ToUpper();
-                iSEM.SetRemoteMLFPath(@"\\192.168.1.197\wq\");
+                iSEM.SetRemoteDesMLFPath(@"\\192.168.1.197\wq\");
                 iSEM.CMDMCFFilename(sfd.FileName);
             }
         }
@@ -1283,7 +1283,7 @@ namespace HOZProject
             sfd.Filter = "ELY文件|*.ELY";
             if (sfd.ShowDialog() == DialogResult.OK)
             {
-                iSEM.SetRemoteELYPath(@"\\192.168.1.197\wq\");
+                iSEM.SetRemoteDesELYPath(@"\\192.168.1.197\wq\");
                 iSEM.CmdFIBLoadELY(sfd.FileName);
             } 
         }
@@ -1411,8 +1411,8 @@ namespace HOZProject
             MeasureParam cfm = new MeasureParam();
             cfm.IsShotSectionToRun = chkWIsP.Checked;
             cfm.IfPT = chkWPT.Checked;
-            cfm.PTTemp = txtWPTF.Text;
-            cfm.FIBTemp = txtWFIBF.Text;
+            cfm.RemotePTOriginalEly = txtWPTF.Text;
+            cfm.RemoteFIBOriginalEly = txtWFIBF.Text;
             cfm.Straighten_Magnification = Convert.ToSingle(cbbWLZ.Text);
             cfm.Location_Magnification = Convert.ToSingle(cbbWQGF.Text);
             cfm.Voltage = Convert.ToSingle(cbbWQGD.Text);
@@ -1472,8 +1472,8 @@ namespace HOZProject
             cf.Read(@"E:\test.cfg");
             chkRIsP.Checked = cfm.IsShotSectionToRun;
             chkRPT.Checked = cfm.IfPT;
-            txtRPTF.Text = cfm.PTTemp;
-            txtRFIBF.Text = cfm.FIBTemp;
+            txtRPTF.Text = cfm.RemotePTOriginalEly;
+            txtRFIBF.Text = cfm.RemoteFIBOriginalEly;
             txtRLZ.Text = cfm.Straighten_Magnification.ToString();
             txtRQGF.Text = cfm.Location_Magnification.ToString();
             txtRQGD.Text = cfm.Voltage.ToString();

+ 7 - 7
HOZProject/UserControls/UControl_Init.cs

@@ -297,7 +297,7 @@ namespace HOZProject
             //设置对话框标题
             pOpenFileDialog.Title = "选择模板文件";
             //默认目录
-            pOpenFileDialog.InitialDirectory = FormHOZMainObject.m_MeasureFile.MParam.RemoteELYPath;
+            pOpenFileDialog.InitialDirectory = FormHOZMainObject.m_MeasureFile.MParam.RemoteHintELYPath;
             //设置打开文件类型
             pOpenFileDialog.Filter = "ely文件(*.ely)|*.ely";
             ////监测文件是否存在
@@ -393,8 +393,8 @@ namespace HOZProject
             m_param.EDSParam.XrayCollectMode = Convert.ToInt16(cboXrayMode.Text);
             //自动对焦模式
             //cfm.FocusMode = chkManul.Checked;
-            m_param.PTTemp = txtWPTF.Text;//PT文件路径
-            m_param.FIBTemp = txtWFIBF.Text;//FIB文件路径
+            m_param.RemotePTOriginalEly = txtWPTF.Text;//PT文件路径
+            m_param.RemoteFIBOriginalEly = txtWFIBF.Text;//FIB文件路径
                                            
 
 
@@ -434,8 +434,8 @@ namespace HOZProject
                 config.AppSettings.Settings["Is_Photograph"].Value = m_Prm.IsShotSectionToRun.ToString();
                 config.AppSettings.Settings["PT_Depostion"].Value = m_Prm.IfPT.ToString();
 
-                config.AppSettings.Settings["PT_ELYFile"].Value = m_Prm.PTTemp;
-                config.AppSettings.Settings["FIB_ELYFile"].Value = m_Prm.FIBTemp;
+                config.AppSettings.Settings["PT_ELYFile"].Value = m_Prm.RemotePTOriginalEly;
+                config.AppSettings.Settings["FIB_ELYFile"].Value = m_Prm.RemoteFIBOriginalEly;
 
                 config.AppSettings.Settings["ScanRotCur"].Value = m_Prm.ScanRotCor.ToString();
 
@@ -537,8 +537,8 @@ namespace HOZProject
                 chkWPT.Checked = cfm.m_Config.IfPT;
                 //自动对焦模式
                 //cfm.FocusMode = chkManul.Checked;
-                txtWPTF.Text = cfm.m_Config.PTTemp;
-                txtWFIBF.Text = cfm.m_Config.FIBTemp;
+                txtWPTF.Text = cfm.m_Config.RemotePTOriginalEly;
+                txtWFIBF.Text = cfm.m_Config.RemoteFIBOriginalEly;
 
                 cbbWYP.Text = cfm.m_Config.SampleType;
                 cbbWCS.Text = cfm.m_Config.Firm;

+ 15 - 8
MeasureData/MeasureParam.cs

@@ -103,7 +103,7 @@ namespace MeasureData
 
         //FIB使用的ELY文件
         private string m_fibTemp;
-        public string FIBTemp
+        public string RemoteFIBOriginalEly
         {
             get { return this.m_fibTemp; }
             set { this.m_fibTemp = value; }
@@ -111,7 +111,7 @@ namespace MeasureData
 
         //PT使用的ELY文件
         private string m_ptTemp;
-        public string PTTemp
+        public string RemotePTOriginalEly
         {
             get { return this.m_ptTemp; }
             set { this.m_ptTemp = value; }
@@ -119,9 +119,13 @@ namespace MeasureData
        public string RemoteELYPath ;
        public string   RemoteMLFPath;
 
+        public string RemoteELYDesPath { get; private set; }
+        public string RemoteMLFDesPath { get; private set; }
         public string FocusServerIP { get; private set; }
         public string FocusServerPort { get; private set; }
         public string RemoteCutHoleInfoFilePath { get; private set; }
+        public string RemoteHintELYPath { get; private set; }
+        public string RemoteHintMLFPath { get; private set; }
 
 
         //拉直操作需要的放大位数
@@ -287,8 +291,8 @@ namespace MeasureData
             bool.TryParse(ConfigurationManager.AppSettings["PT_Depostion"].ToString(), out bResult);
             cfm.IfPT = bResult;
 
-            cfm.PTTemp = ConfigurationManager.AppSettings["PT_ELYFile"].ToString();
-            cfm.FIBTemp = ConfigurationManager.AppSettings["FIB_ELYFile"].ToString();
+            cfm.RemotePTOriginalEly = ConfigurationManager.AppSettings["PT_ELYFile"].ToString();
+            cfm.RemoteFIBOriginalEly = ConfigurationManager.AppSettings["FIB_ELYFile"].ToString();
 
 
 
@@ -315,8 +319,11 @@ namespace MeasureData
 
 
             cfm.RemoteCutHoleInfoFilePath = ConfigurationManager.AppSettings["RemoteCutHoleInfoFilePath"];
-            cfm.RemoteELYPath = ConfigurationManager.AppSettings["RemoteELYPath"];
-       cfm.RemoteMLFPath = ConfigurationManager.AppSettings["RemoteMLFPath"];
+            cfm.RemoteHintELYPath = ConfigurationManager.AppSettings["RemoteHintELYPath"];
+            cfm.RemoteHintMLFPath = ConfigurationManager.AppSettings["RemoteHintMLFPath"];
+
+            cfm.RemoteELYDesPath = ConfigurationManager.AppSettings["RemoteELYDesPath"];
+            cfm.RemoteMLFDesPath = ConfigurationManager.AppSettings["RemoteMLFDesPath"];
 
             cfm.FocusServerIP = ConfigurationManager.AppSettings["FocusServerIP"];
             cfm.FocusServerPort = ConfigurationManager.AppSettings["FocusServerPort"];
@@ -472,8 +479,8 @@ namespace MeasureData
         {
             this.SampleType = @"";
             this.IfPT = false;
-            this.FIBTemp = @"";
-            this.PTTemp = @"";
+            this.RemoteFIBOriginalEly = @"";
+            this.RemotePTOriginalEly = @"";
            
            
             this.IfTilt = false;

+ 9 - 6
MeasureThread/FibWork.cs

@@ -12,18 +12,18 @@ namespace MeasureThread
     {
         NLog.Logger log;
         SmartSEMControl.ISEMControl iSEM;
-        string FIBTemp;
-        public FibWork(SmartSEMControl.ISEMControl aSEM,string a_FibTemp)
+        string remoteoriginalEly;
+        public FibWork(SmartSEMControl.ISEMControl aSEM,string a_originalFibEly)
         {
             log = NLog.LogManager.GetCurrentClassLogger();
             iSEM = aSEM;
-            FIBTemp = a_FibTemp;
+            remoteoriginalEly = a_originalFibEly;
         }
         //FIB切割
         public bool DoFIBWork()
         {
             //执行PT沉积的ELY文件
-            if (!ExcuteEly(FIBTemp))
+            if (!ExcuteEly(remoteoriginalEly))
             {
                 return false;
             }
@@ -54,7 +54,7 @@ namespace MeasureThread
             px = iSEM.GetPixelSize();
             //修改FIB切割的ELY文件坐标
             XmlDocument xmlDoc = new XmlDocument();
-            xmlDoc.Load(FIBTemp);//加载baixml文件,xmlpath 为XML文件的路径du
+            xmlDoc.Load(remoteoriginalEly);//加载baixml文件,xmlpath 为XML文件的路径du
             XmlNode xns = xmlDoc.SelectSingleNode("ELAYOUT/STRUCTURE_LIST/STRUCTURE/LAYER_REFERENCE/TRAPEZOID");
             if (xns != null)
             {
@@ -94,7 +94,7 @@ namespace MeasureThread
                     }
                 }
             }
-            xmlDoc.Save(FIBTemp);//保存的该XML文件,否则更新无效
+            xmlDoc.Save(remoteoriginalEly);//保存的该XML文件,否则更新无效
             return true;
         }
         //执行ELY文件的步骤
@@ -103,6 +103,9 @@ namespace MeasureThread
             //执行ELy文件有三个动作
             //1. 选择ELY文件
             //SendMsg("选择ELY文件");
+
+
+
             if (!iSEM.CmdFIBLoadELY(a_filename))
             {
                 //SendMsg("选择ELY文件失败");

+ 9 - 6
MeasureThread/Measure.cs

@@ -488,8 +488,9 @@ namespace MeasureThread
         {
             m_measureFile = a_measurefile;
             //SmartSEM远程路径
-            this.RemoteELYPath = m_measureFile.MParam.RemoteELYPath;
-            this.RemoteMLFPath = m_measureFile.MParam.RemoteMLFPath;
+        
+
+
             log = NLog.LogManager.GetCurrentClassLogger();
             TStatus = new ThreadStatus();
             cutHoles = new List<MeasureData.CutHole>();
@@ -547,11 +548,13 @@ namespace MeasureThread
 
 
             //设置SmartSEM远程路径
-            iSEM.SetRemoteELYPath(RemoteELYPath);
-            iSEM.SetRemoteMLFPath(RemoteMLFPath);
+            //iSEM.SetRemoteELYPath(RemoteELYPath);
+            //iSEM.SetRemoteMLFPath(RemoteMLFPath);
+            iSEM.SetRemoteDesELYPath(m_measureFile.MParam.RemoteELYDesPath);
+            iSEM.SetRemoteDesMLFPath(m_measureFile.MParam.RemoteMLFDesPath);
 
-            m_FibWork = new FibWork(iSEM, MParam.FIBTemp);
-            m_PTWork = new PTWork(iSEM, MParam.PTTemp);
+            m_FibWork = new FibWork(iSEM, MParam.RemoteFIBOriginalEly);
+            m_PTWork = new PTWork(iSEM, MParam.RemotePTOriginalEly);
 
             iSEM.SetScanRotationOff();
             Thread.Sleep(200);

+ 2 - 2
SmartSEMControl/HardwareInterface.cs

@@ -227,8 +227,8 @@ namespace SmartSEMControl
 
         Boolean SetStageDeltaR(float set);
 
-        void SetRemoteELYPath(String path);
-        void SetRemoteMLFPath(String path);
+        void SetRemoteDesELYPath(String path);
+        void SetRemoteDesMLFPath(String path);
 
         void SetReduced(int x, int y, int W, int H);
         void CloseReduced();

+ 35 - 44
SmartSEMControl/SmartSEM.cs

@@ -109,12 +109,12 @@ namespace SmartSEMControl
 
         #region 固定参数
         //判断这个文件夹是否存在20200826
-        private readonly String ELYPATH = @"C:\ProgramData\Carl Zeiss\SmartFIB\API\Drop\";
+        //private readonly String ELYPATH = @"C:\ProgramData\Carl Zeiss\SmartFIB\API\Drop\";
         private readonly String ELYFILENAME = "ApiLayout.ely";
-        private readonly String MLFPATH = @"C:\ProgramData\Carl Zeiss\SmartSEM\User\Service\";
+        //private readonly String MLFPATH = @"C:\ProgramData\Carl Zeiss\SmartSEM\User\Service\";
         private readonly String MLFFILENAME = "Opton.MLF";
-        private String REMOTEELYPATH = @"";
-        private String REMOTEMLFPATH = @"";
+        private String REMOTEDesELYPATH = @"";
+        private String REMOTEDesMLFPATH = @"";
         #endregion
 
         #region 模拟参数
@@ -294,15 +294,15 @@ namespace SmartSEMControl
             //LogManager.InitHardwareLog();
             Init();
             //判断ELY默认文件夹是否存在
-            if(!Directory.Exists(ELYPATH))
-            {
-                Directory.CreateDirectory(ELYPATH);
-            }
+            //if(!Directory.Exists(ELYPATH))
+            //{
+            //    Directory.CreateDirectory(ELYPATH);
+            //}
 
-            if (!Directory.Exists(MLFPATH))
-            {
-                Directory.CreateDirectory(MLFPATH);
-            }
+            //if (!Directory.Exists(MLFPATH))
+            //{
+            //    Directory.CreateDirectory(MLFPATH);
+            //}
         }
         #endregion
 
@@ -1773,22 +1773,23 @@ namespace SmartSEMControl
             //log.Info("CMDMCFFilename = " + filename, ret);
             //return ret;
 
-            if (File.Exists(_MLFFullFileName) && Directory.Exists(MLFPATH))
+            if (File.Exists(_MLFFullFileName) )
             {
                 //移动文件
-                if (_MLFFullFileName != (MLFPATH + MLFFILENAME))
-                {
-                    File.Copy(_MLFFullFileName, MLFPATH + MLFFILENAME, true);
-                    log.Info("CmdFIBLoadMLF Copy FileName:" + _MLFFullFileName + " To " + MLFPATH + MLFFILENAME, true);
-                    try
-                    {
-                        if (REMOTEMLFPATH != "")
+                //if (_MLFFullFileName != (MLFPATH + MLFFILENAME))
+                //{
+                //    File.Copy(_MLFFullFileName, MLFPATH + MLFFILENAME, true);
+                //    log.Info("CmdFIBLoadMLF Copy FileName:" + _MLFFullFileName + " To " + MLFPATH + MLFFILENAME, true);
+                //    try
+                //    {
+                        if (REMOTEDesMLFPATH != "")
                         {
-                            File.Copy(_MLFFullFileName, REMOTEMLFPATH + MLFFILENAME, true);
+                            File.Copy(_MLFFullFileName, REMOTEDesMLFPATH + MLFFILENAME, true);
+                            log.Info("CmdFIBLoadELY Success Execute " + _MLFFullFileName + "to " + REMOTEDesMLFPATH + MLFFILENAME);
                         }
-                    }
-                    catch { }
-                }
+                //    }
+                //    catch { }
+                //}
                 Boolean ret = ExecuteCmd(MCF_FILENAME + MLFFILENAME.Substring(0,MLFFILENAME.Length-4));
                 log.Info("CmdFIBLoadMLF Success Execute " + _MLFFullFileName, true);
                 return ret;
@@ -2165,25 +2166,15 @@ namespace SmartSEMControl
         #region FIB加载.ely文件
         public Boolean CmdFIBLoadELY(String _ELYFullFileName)
         {
-            if (File.Exists(_ELYFullFileName) && Directory.Exists(ELYPATH))
+            if (File.Exists(_ELYFullFileName) )
             {
-                //移动文件
-                if(_ELYFullFileName != ( ELYPATH + ELYFILENAME ))
-                {
-                    File.Copy(_ELYFullFileName, ELYPATH + ELYFILENAME, true);
-                    log.Info("CmdFIBLoadELY Copy FileName:" + _ELYFullFileName + " To " + ELYPATH + ELYFILENAME, true);
-                    try
-                    {
-                        if (REMOTEELYPATH != "")
-                        {
-                            File.Copy(_ELYFullFileName, REMOTEELYPATH + ELYFILENAME, true);
-                        }
-                    }
-                    catch
-                    {
 
-                    }
+                if (REMOTEDesELYPATH != "")
+                {
+                    File.Copy(_ELYFullFileName, REMOTEDesELYPATH + ELYFILENAME, true);
+                    log.Info("copy " + _ELYFullFileName + " to " + REMOTEDesELYPATH + ELYFILENAME);
                 }
+
                 Boolean ret = ExecuteCmd(CMD_SMARTFIB_LOAD_ELY);
                 log.Info("CmdFIBLoadELY Success Execute " + _ELYFullFileName, true);
                 return ret;
@@ -2440,14 +2431,14 @@ namespace SmartSEMControl
         #endregion
 
         //20201102 远程服务地址
-        public void SetRemoteELYPath(String path)
+        public void SetRemoteDesELYPath(String path)
         {
-            this.REMOTEELYPATH = path;
+            this.REMOTEDesELYPATH = path;
         }
 
-        public void SetRemoteMLFPath(String path)
+        public void SetRemoteDesMLFPath(String path)
         {
-            this.REMOTEMLFPATH = path;
+            this.REMOTEDesMLFPATH = path;
         }
 
         public void SetReduced(int x, int y, int W, int H)