private void btnNegativeJog_Click(object sender, EventArgs e) { byte iSlaveNo; int nRtn; uint lVelocity; if (m_bConnected == false) { return; } if (textSlaveNo.Text.Length <= 0) { textSlaveNo.Focus(); return; } iSlaveNo = byte.Parse(textSlaveNo.Text); lVelocity = uint.Parse(tbSpeed.Text); nRtn = EziMOTIONPlusRLib.FAS_MoveVelocity(m_nPortNo, iSlaveNo, lVelocity, 0); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_MoveVelocity() \nReturned :" + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); } }
/// <summary> /// ALl axis return Origin /// </summary> public void Move_All_Axis_Origin() { int nRtn = EziMOTIONPlusRLib.FAS_AllMoveOriginSingleAxis(VarGlobal.PortNo); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_AllMoveOriginSingleAxis() \nReturned: " + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); } do { int nRtn_3 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, VarGlobal.iSLAVE_X, ref dwAxisStatus_x); int nRtn_4 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, VarGlobal.iSLAVE_Y, ref dwAxisStatus_y); int nRtn_5 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, VarGlobal.iSLAVE_Z, ref dwAxisStatus_z); if (nRtn_3 != EziMOTIONPlusRLib.FMM_OK || nRtn_4 != EziMOTIONPlusRLib.FMM_OK || nRtn_5 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetAxisStatus() \nReturned: " + nRtn_3.ToString() + nRtn_4.ToString() + nRtn_5.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } if ((dwAxisStatus_x & 0x00000001) == 1 || (dwAxisStatus_y & 0x00000001) == 1 || (dwAxisStatus_z & 0x00000001) == 1) // FFLAG_ERRORALL is ON { string strMsg; strMsg = "Error flag"; MessageBox.Show(strMsg, "AxisStatus"); return; } }while ((dwAxisStatus_x & 0x08000000) != 0 || (dwAxisStatus_y & 0x08000000) != 0 || (dwAxisStatus_z & 0x08000000) != 0); // FFLAG_MOTIONING is ON }
private void btnResetAlarmZ_Click(object sender, EventArgs e) { if (VarGlobal.m_Connected) { if (EziMOTIONPlusRLib.FAS_IsSlaveExist(VarGlobal.PortNo, 3) != 0) { int nRnt_1 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, 3, ref dwAxisStatus); if (nRnt_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetAxisStatus() \nReturned: " + nRnt_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); } if ((dwAxisStatus & 0x00000001) != 0) //FFLAG_ERRORALL is ON { int nRtn = EziMOTIONPlusRLib.FAS_StepAlarmReset(VarGlobal.PortNo, 3, 1); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_ServoAlarmReset() \nReturned: " + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); } } } } else { MessageBox.Show("Not connect"); } }
private void Move_Stop(object sender, MouseEventArgs e) { for (byte i = 1; i <= 3; i++) { EziMOTIONPlusRLib.FAS_MoveStop(VarGlobal.PortNo, i); } }
public void ResetAlarm() { if (VarGlobal.m_Connected == false) { return; } else { for (byte i = 1; i <= 3; i++) { if (EziMOTIONPlusRLib.FAS_IsSlaveExist(VarGlobal.PortNo, i) != 0) { int nRnt_1 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, i, ref dwAxisStatus); if (nRnt_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetAxisStatus() \nReturned: " + nRnt_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); } if ((dwAxisStatus & 0x00000001) != 0) //FFLAG_ERRORALL is ON { int nRtn = EziMOTIONPlusRLib.FAS_StepAlarmReset(VarGlobal.PortNo, i, 1); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_ServoAlarmReset() \nReturned: " + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); } } } } } }
void ShowCoordinate() { if (VarGlobal.m_Connected) { try { while (true) { int nRtn_1 = EziMOTIONPlusRLib.FAS_GetCommandPos(VarGlobal.PortNo, 1, ref Calculate.CommandPosX); if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_GetActualPos() \nreturned: " + nRtn_1.ToString(); MessageBox.Show(strmsg, "function failed"); } int nRtn_2 = EziMOTIONPlusRLib.FAS_GetCommandPos(VarGlobal.PortNo, 2, ref Calculate.CommandPosY); if (nRtn_2 != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_GetActualPos() \nreturned: " + nRtn_2.ToString(); MessageBox.Show(strmsg, "function failed"); } int nRtn_3 = EziMOTIONPlusRLib.FAS_GetCommandPos(VarGlobal.PortNo, 3, ref Calculate.CommandPosZ); if (nRtn_3 != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_GetActualPos() \nreturned: " + nRtn_3.ToString(); MessageBox.Show(strmsg, "function failed"); } if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK || nRtn_2 != EziMOTIONPlusRLib.FMM_OK || nRtn_3 != EziMOTIONPlusRLib.FMM_OK) { return; } VarGlobal.position_mm_x = Calculate.Calculate_Coordinate_mm(Calculate.CommandPosX, Calculate.STEP_X); VarGlobal.position_mm_y = Calculate.Calculate_Coordinate_mm(Calculate.CommandPosY, Calculate.STEP_Y); VarGlobal.position_mm_z = Calculate.Calculate_Coordinate_mm(Calculate.CommandPosZ, Calculate.STEP_Z); //Invoke(new MethodInvoker(delegate //{ bsiPosX.Caption = VarGlobal.position_mm_x.ToString("0.0000"); bsiPosY.Caption = VarGlobal.position_mm_y.ToString("0.0000"); bsiPosZ.Caption = VarGlobal.position_mm_z.ToString("0.0000"); //bsiMeasurement.Caption = VarGlobal.measurementvalue.ToString("0.0000"); //})); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } else { MessageBox.Show("Not Connected"); } }
private void fmMain_FormClosed(object sender, FormClosedEventArgs e) { if (VarGlobal.m_Connected) { EziMOTIONPlusRLib.FAS_Close(VarGlobal.PortNo); } if (VarGlobal.adam_Connected) { VarGlobal.adamCom.CloseComPort(); } }
private void fmBoardList_Load(object sender, EventArgs e) { if (VarGlobal.m_Connected) { for (byte i = 1; i <= 3; i++) { int nRtn1 = EziMOTIONPlusRLib.FAS_GetSlaveInfo(VarGlobal.PortNo, i, ref _pType_ezi, ref _version); int nRtn2 = EziMOTIONPlusRLib.FAS_GetMotorInfo(VarGlobal.PortNo, i, ref _pType_motor, ref _motor); if (nRtn1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetSlaveInfo() \nReturned: " + nRtn1.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } if (nRtn2 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetMotorInfo() \nReturned: " + nRtn2.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } switch (_pType_ezi) { case 1: _typeEzi = "Ezi-SERVO Plus-R ST"; break; case 20: _typeEzi = "Ezi-STEP Plus-R ST"; break; case 50: _typeEzi = "Ezi- SERVO Plus-R MINI"; break; default: break; } ListViewItem lvi = new ListViewItem("Port " + VarGlobal.PortNo + " Slave No " + i); lvi.SubItems.Add(_typeEzi); lvi.SubItems.Add(_motor); lvi.SubItems.Add(_version); lviBoardList.Items.Add(lvi); } } else { MessageBox.Show("Not connect"); } }
private void Move_Stop(object sender, MouseEventArgs e) { if (VarGlobal.m_Connected) { for (byte i = 1; i <= 3; i++) { EziMOTIONPlusRLib.FAS_MoveStop(VarGlobal.PortNo, i); } } else { MessageBox.Show("Not connect"); } }
private void btnDisconnect_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { EziMOTIONPlusRLib.FAS_Close(VarGlobal.PortNo); VarGlobal.adamCom.CloseComPort(); VarGlobal.Reset(); bsiX.Caption = "..."; bsiY.Caption = "..."; bsiZ.Caption = "..."; bsiPosX.Caption = "---"; bsiPosY.Caption = "---"; bsiPosZ.Caption = "---"; bsiMeasurement.Caption = "---"; bsiAdam.Caption = "---"; }
/// <summary> /// Stop all axis motioning /// </summary> public void All_Move_Stop() { if (!VarGlobal.m_Connected) { MessageBox.Show("not connect"); return; } int nRtn = EziMOTIONPlusRLib.FAS_AllMoveStop(VarGlobal.PortNo); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_AllMoveStop() \nReturned: " + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); } }
/// <summary> /// Move all axis with Abs Position /// </summary> /// <param name="x_pos_abs"></param> /// <param name="y_pos_abs"></param> public void Move_All_Axis_Abs_Pos(int x_pos_abs, int y_pos_abs) { if (VarGlobal.m_Connected == false) { return; } else { int nRtn_1 = EziMOTIONPlusRLib.FAS_MoveSingleAxisAbsPos(VarGlobal.PortNo, VarGlobal.iSLAVE_X, x_pos_abs, VarGlobal.speedJOG_X); if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_MoveSingleAxisAbsPos() \nReturned: " + nRtn_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); } int nRtn_2 = EziMOTIONPlusRLib.FAS_MoveSingleAxisAbsPos(VarGlobal.PortNo, VarGlobal.iSLAVE_Y, y_pos_abs, VarGlobal.speedJOG_Y); if (nRtn_2 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_MoveSingleAxisAbsPos() \nReturned: " + nRtn_2.ToString(); MessageBox.Show(strMsg, "Function Failed"); } } do { int nRtn_3 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, VarGlobal.iSLAVE_X, ref dwAxisStatus_x); int nRtn_4 = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, VarGlobal.iSLAVE_Y, ref dwAxisStatus_y); if (nRtn_3 != EziMOTIONPlusRLib.FMM_OK || nRtn_4 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetAxisStatus() \nReturned: " + nRtn_3.ToString() + nRtn_4.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } if ((dwAxisStatus_x & 0x00000001) == 1 || (dwAxisStatus_y & 0x00000001) == 1) // FFLAG_ERRORALL is ON { string strMsg; strMsg = "Error flag"; MessageBox.Show(strMsg, "AxisStatus"); return; } }while ((dwAxisStatus_x & 0x08000000) != 0 || (dwAxisStatus_y & 0x08000000) != 0); // FFLAG_MOTIONING is ON }
private void btnSave_Click(object sender, EventArgs e) { this.Invoke(new Action(() => { Coordinates.Xcoordinate.Instance().x_coor[VarGlobal.Point] = Calculate.CommandPosX; Coordinates.Ycoordinate.Instance().y_coor[VarGlobal.Point] = Calculate.CommandPosY; Coordinates.Zcoordinate.Instance().z_coor[VarGlobal.Point] = Calculate.CommandPosZ; VarGlobal.Instance().node_item_x.lPosition = Calculate.CommandPosX; int nRtn_1 = EziMOTIONPlusRLib.FAS_PosTableWriteItem(VarGlobal.PortNo, 1, VarGlobal.Point, VarGlobal.Instance().node_item_x); if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_PosTableWriteItem() \nreturned: " + nRtn_1.ToString(); MessageBox.Show(strmsg, "function failed"); } VarGlobal.Instance().node_item_y.lPosition = Calculate.CommandPosY; int ntRn_2 = EziMOTIONPlusRLib.FAS_PosTableWriteItem(VarGlobal.PortNo, 2, VarGlobal.Point, VarGlobal.Instance().node_item_y); if (ntRn_2 != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_PosTableWriteItem() \nreturned: " + ntRn_2.ToString(); MessageBox.Show(strmsg, "function failed"); } VarGlobal.Instance().node_item_z.lPosition = Calculate.CommandPosZ; int ntRn_3 = EziMOTIONPlusRLib.FAS_PosTableWriteItem(VarGlobal.PortNo, 2, VarGlobal.Point, VarGlobal.Instance().node_item_z); if (ntRn_3 != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_PosTableWriteItem() \nreturned: " + ntRn_3.ToString(); MessageBox.Show(strmsg, "function failed"); } if (!SQLite.Instance().CheckExistData("T24DefaultPointMeasurement", VarGlobal.Point + 1)) { SQLite.Instance().InsertDefaultPointsCoordinate("T24DefaultPointMeasurement", VarGlobal.Point + 1, "Point " + (VarGlobal.Point + 1), lblCoorX.Text, lblCoorY.Text, lblCoorZ.Text); } else { SQLite.Instance().UpdateDefaultPointsCoordinate("T24DefaultPointMeasurement", VarGlobal.Point + 1, lblCoorX.Text, lblCoorY.Text, lblCoorZ.Text); } this.Close(); })); }
/// <summary> /// Move Stop of Z coor /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Move_Stop(object sender, MouseEventArgs e) { if (VarGlobal.m_Connected) { int nRtn = EziMOTIONPlusRLib.FAS_MoveStop(VarGlobal.PortNo, 3); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_MoveStop() \nreturned: " + nRtn.ToString(); MessageBox.Show(strmsg, "function failed"); } } else { MessageBox.Show("Not connect"); } }
private void fmMain_FormClosing(object sender, FormClosingEventArgs e) { Thread.Sleep(500); for (byte i = 0; i < EziMOTIONPlusRLib.MAX_SLAVE_NUMS; i++) { if (EziMOTIONPlusRLib.FAS_IsSlaveExist(VarGlobal.PortNo, i) != 0) { int nRtn = EziMOTIONPlusRLib.FAS_ServoEnable(VarGlobal.PortNo, i, 0); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_ServoEnable() \nReturned: " + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); } } } }
private void Jog_Manual(byte i, int j, uint speed) { if (VarGlobal.m_Connected == false) { return; } else { int nRtn = EziMOTIONPlusRLib.FAS_MoveVelocity(VarGlobal.PortNo, i, speed, j); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strmsg; strmsg = "FAS_Movesingleaxisincpos() \nreturned: " + nRtn.ToString(); MessageBox.Show(strmsg, "function failed"); } } }
private void btnMoveOriginZ_Click(object sender, EventArgs e) { if (VarGlobal.m_Connected) { int nRtn_1 = EziMOTIONPlusRLib.FAS_MoveOriginSingleAxis(VarGlobal.PortNo, 3); if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_MoveSingleAxisAbsPos() \nReturned: " + nRtn_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); } Thread.Sleep(500); } else { MessageBox.Show("Not Connect"); } }
private void btnMoveZ_Click(object sender, EventArgs e) { if (VarGlobal.m_Connected) { int nRtn_1 = EziMOTIONPlusRLib.FAS_MoveSingleAxisAbsPos(VarGlobal.PortNo, 3, Calculate.Calculate_Coordinate_pulse(float.Parse(txtPositionZ.Text.Trim()), Calculate.STEP_Z), VarGlobal.speedJOG_Z); if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_MoveSingleAxisAbsPos() \nReturned: " + nRtn_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); } } else { MessageBox.Show("Not connect"); } }
private void btnParameterList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { int ROMPara = 0; string temp = ""; if (VarGlobal.m_Connected) { for (byte i = 0; i < 30; i++) { EziMOTIONPlusRLib.FAS_GetROMParameter(VarGlobal.PortNo, 1, i, ref ROMPara); temp += ROMPara.ToString() + "-"; } } else { MessageBox.Show("not connect"); } MessageBox.Show(temp); }
private void btnWritetoROM_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (VarGlobal.m_Connected) { int ntRn_3 = EziMOTIONPlusRLib.FAS_PosTableWriteROM(VarGlobal.PortNo, 1); int ntRn_4 = EziMOTIONPlusRLib.FAS_PosTableWriteROM(VarGlobal.PortNo, 2); if (ntRn_3 != EziMOTIONPlusRLib.FMM_OK || ntRn_4 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_PosTableWriteROM() \nReturned: " + ntRn_3.ToString() + "And" + ntRn_4.ToString(); MessageBox.Show(strMsg, "Function Failed"); } MessageBox.Show("Write Success!"); } else { MessageBox.Show("Not connect"); } }
/// <summary> /// Move Z axis with Abs position /// </summary> /// <param name="z_pos_abs"></param> public bool Move_Z_Axis_Abs_Pos(int z_pos_abs) { if (VarGlobal.m_Connected == false) { MessageBox.Show("Not Connect"); } int nRtn_1 = EziMOTIONPlusRLib.FAS_MoveSingleAxisAbsPos(VarGlobal.PortNo, VarGlobal.iSLAVE_Z, z_pos_abs, VarGlobal.speedJOG_Z); do { int nRtn = EziMOTIONPlusRLib.FAS_GetAxisStatus(VarGlobal.PortNo, VarGlobal.iSLAVE_Z, ref dwAxisStatus_z); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetAxisStatus() \nReturned: " + nRtn.ToString(); MessageBox.Show(strMsg, "Function Failed"); return(false); } if ((dwAxisStatus_z & 0x00000001) == 1) // FFLAG_ERRORALL is ON { string strMsg; strMsg = "Error flag"; MessageBox.Show(strMsg, "AxisStatus"); return(false); } }while ((dwAxisStatus_z & 0x08000000) != 0); if (nRtn_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_MoveSingleAxisAbsPos() \nReturned: " + nRtn_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); return(false); } else { return(true); } }
private void btnStop_Click(object sender, EventArgs e) { byte iSlaveno; int nRtn; if (m_bConnected == false) { return; } if (textSlaveNo.Text.Length <= 0) { textSlaveNo.Focus(); return; } iSlaveno = byte.Parse(textSlaveNo.Text); nRtn = EziMOTIONPlusRLib.FAS_MoveStop(m_nPortNo, iSlaveno); if (nRtn != EziMOTIONPlusRLib.FMM_OK) { string strMessage; strMessage = "FAS_MoveStop() \nReturned:" + nRtn.ToString(); MessageBox.Show(strMessage, "Function Failed"); } }
private void btnOpen_Click(object sender, EventArgs e) { SerialPropeties(); if (cbPortName.Text.Length <= 0) { cbPortName.Focus(); return; } if (m_bConnected == false) { uint dwBaud; m_nPortNo = byte.Parse(cbPortName.Text); dwBaud = uint.Parse(cbBaudRate.Text); if (EziMOTIONPlusRLib.FAS_Connect(m_nPortNo, dwBaud) == 0) { MessageBox.Show("Failed"); } else { m_bConnected = true; for (byte i = 0; i < EziMOTIONPlusRLib.MAX_SLAVE_NUMS; i++) { if (EziMOTIONPlusRLib.FAS_IsSlaveExist(m_nPortNo, i) != 0) { textSlaveNo.Text = i.ToString(); break; } } } } else { EziMOTIONPlusRLib.FAS_Close(m_nPortNo); m_bConnected = false; } }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { var woker = sender as BackgroundWorker; Invoke(new MethodInvoker(delegate { if (comboBoxPortNo.Text.Length <= 0) { comboBoxPortNo.Focus(); return; } if (comboBoxAdamCOM.Text.Length <= 0) { comboBoxAdamCOM.Focus(); return; } })); //Connect ezi step plus R while (_mConnected == false) { Invoke(new MethodInvoker(delegate { _portNo = byte.Parse(comboBoxPortNo.Text); _adamCOM = int.Parse(comboBoxAdamCOM.Text); dwBaud = uint.Parse(comboBaudrate.Text); })); if (EziMOTIONPlusRLib.FAS_Connect(_portNo, dwBaud) == 0) { //error connect //MessageBox.Show("Error Connect!"); if (SuccessConnect != null) { //VarGlobal._portNo = 0; SuccessConnect(CheckConnection.fail); this.Close(); } } else { for (byte i = 1; i <= 3; i++) { if (EziMOTIONPlusRLib.FAS_IsSlaveExist(_portNo, i) != 0) { int nRnt_1 = EziMOTIONPlusRLib.FAS_GetAxisStatus(_portNo, i, ref dwAxisStatus); if (nRnt_1 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_GetAxisStatus() \nReturned: " + nRnt_1.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } //reset alarm if there is alarm if ((dwAxisStatus & 0x00000001) != 0) // FFLAG_ERRORALL is ON { int nRnt_2 = EziMOTIONPlusRLib.FAS_StepAlarmReset(_portNo, i, 1); if (nRnt_2 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_ServoAlarmReset() \nReturned: " + nRnt_2.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } } //all servo on int nRnt_3 = EziMOTIONPlusRLib.FAS_ServoEnable(_portNo, i, 1); if (nRnt_3 != EziMOTIONPlusRLib.FMM_OK) { string strMsg; strMsg = "FAS_ServoEnable() \nReturned: " + nRnt_3.ToString(); MessageBox.Show(strMsg, "Function Failed"); return; } } VarGlobal._3AxisReady += 1; } if (VarGlobal._3AxisReady >= 3) { _mConnected = true; while (_count <= 100 && _mConnected == true) { Thread.Sleep(100); woker.ReportProgress(_count); _count += 10; } } else { MessageBox.Show("Error occur!"); } } } if (SuccessConnect != null) { VarGlobal.PortNo = _portNo; VarGlobal.m_Connected = _mConnected; VarGlobal.AdamCOM = _adamCOM; SuccessConnect(CheckConnection.success); } }