private static void InitThread() { try { using (new ProcessBarMgt("正在在初始化系统...")) { IsInInit = true; //connect to MessageBody message = new MessageBody(); //1. light LogHelper.AppLoger.Debug("init light control."); message.type = MsgType.Information; message.msg = "初始化触发控制卡"; ThrowMessage(message); IsInInit = Ilight.InitSys(); if (IsInInit) { LogHelper.AppLoger.Debug("init light control successed."); message.type = MsgType.Information; message.msg = "初始化触发控制卡成功"; ThrowMessage(message); } else { LogHelper.AppLoger.Debug("init light control failed."); message.type = MsgType.Information; message.msg = "初始化触发控制卡失败"; ThrowMessage(message); } //2.connnect motor LogHelper.AppLoger.Debug("init plc control."); message.type = MsgType.Information; message.msg = "初始化运动控制卡"; ThrowMessage(message); IsInInit = IMotorCtrl.Connect(SystemConfig.Instance.Control_IP); if (IsInInit) { LogHelper.AppLoger.Debug("init plc control successed."); message.type = MsgType.Information; message.msg = "初始化运动控制卡成功"; ThrowMessage(message); } else { LogHelper.AppLoger.Debug("init plc control failed."); message.type = MsgType.Information; message.msg = "初始化运动控制卡失败"; ThrowMessage(message); } //3. home //IMotorCtrl.ExecHomeALL(); message.msg = "运动平台开始回原点"; ThrowMessage(message); //while (true) //{ // if (IMotorCtrl.IsHome()) // { // message.msg = "运动平台回原点成功"; // ThrowMessage(message); // break; // } // else // { // System.Threading.Thread.Sleep(100); // } //} if (IsInInit) { //4.move z to start pos //IMotorCtrl.Move(3, -4.45015f); //message.msg = "Z轴运动到初始位置"; ThrowMessage(message); } //4.init camera LogHelper.AppLoger.Debug("init camera control."); message.type = MsgType.Information; message.msg = "初始化相机"; ThrowMessage(message); IsInInit = ICamCtrl.Init(); if (IsInInit) { LogHelper.AppLoger.Debug("init camera control successed."); message.type = MsgType.Information; message.msg = "初始化相机成功"; ThrowMessage(message); } else { LogHelper.AppLoger.Debug("init camera control failed."); message.type = MsgType.Information; message.msg = "初始化相机失败"; ThrowMessage(message); } //IsInInit = ICamCtrl_HaiKang.Init(); //if (IsInInit) //{ // LogHelper.AppLoger.Debug("Init HaiKang camera control successed."); // message.type = MsgType.Information; // message.msg = "初始化海康相机成功"; // ThrowMessage(message); //} //else //{ // LogHelper.AppLoger.Debug("Init HaiKang camera control failed."); // message.type = MsgType.Information; // message.msg = "初始化海康相机失败"; // ThrowMessage(message); //} //5. init matlab control //IsInInit = IFocus.Init(); if (IsInInit) { LogHelper.AppLoger.Debug("init matlab control successed."); } else { LogHelper.AppLoger.Debug("init matlab control failed."); } //6. set green light on ConstDef.IsSysReady = IsInInit; //7.初始化压电陶瓷控制器,20181213,顾叶俊修改 IsInInit = IPiz.Open(); if (IsInInit) { LogHelper.AppLoger.Debug("init Pize control successed."); message.type = MsgType.Information; message.msg = "初始化压电陶瓷控制器成功"; ThrowMessage(message); } else { LogHelper.AppLoger.Debug("init Pize control failed."); message.type = MsgType.Information; message.msg = "初始化压电陶瓷控制器失败"; ThrowMessage(message); } } } catch (Exception ex) { MessageBox.Show("初始化系统异常!", "睿仟医疗", MessageBoxButtons.OK, MessageBoxIcon.Error); LogHelper.AppLoger.Error(ex); } finally { IsInInit = false; } }