public void Step_Status_Read() { for (int i = 0; i < 2; i++) { m_StepStatusData[i].Clear(); EziMotionPlusR.FAS_GetAxisStatus(nPortNo, (byte)i, ref dwOutPut); int nIndex = 0; for (nIndex = 0; nIndex < 32; nIndex++) { // Verify the last bit value of data read uFlagHigh = dwOutPut & 0x00000001; // Shift rightward by bit by bit dwOutPut = dwOutPut >> 1; // Updat bit value in control if (uFlagHigh == 1) { m_StepStatusData[i].Add(true); } else { m_StepStatusData[i].Add(false); } } EziMotionPlusR.FAS_GetCommandPos(nPortNo, (byte)i, ref CmdPos); //(nPortNo, (byte)i, ref dwOutPut); m_StepStatusData[i].Add(CmdPos); EziMotionPlusR.FAS_GetActualVel(nPortNo, (byte)i, ref ActVel); //(nPortNo, (byte)i, ref dwOutPut); m_StepStatusData[i].Add(ActVel); } }
private void EziMotion_Check_Slave() { if (EziMotionPlusR.FAS_IsSlaveExist(nPortNo, iSlaveNo) == false) { return; } }
public void Step_Configration_Set(IStepMotors InStep, int nStep) { //RM 에서 설정된 부분을 사용한다. //this.Step_Status_Signal_Set(InStep); //설정 단위가 1mm가 되도록 Unit을 설정한다.(10:10000 = 1pulse에 1mm) //duRetCode = CAXM.AxmMotSetMoveUnitPerPulse(Axis_On.AXIS_CONF_NO, 10, 10000); bool ezRetCode = EziMotionPlusR.FAS_ServoEnable((byte)1, (byte)0, true); }
private void EziMotion_Get_SlaveInfo() { nRtn = EziMotionPlusR.FAS_GetSlaveInfo(nPortNo, iSlaveNo, nType, ref IpBuffer, nBuffSize); string IRtn = nRtn.ToString(); }
private void EziMotion_Close() { EziMotionPlusR.FAS_Close(nPortNo); }
private void EziMotion_Connect() { EziMotionPlusR.FAS_Connect(nPortNo, uBaudRate); }