//类的克隆,返回个相同的实例化对象 public Axis Clone(AXIS_TYPE_E axisType) { Axis axis = new Axis(axisType, this.DriveDiv, this.Acc, this.Dec, this.Pitch, this.MinSpeed, this.MaxSpeed); return(axis); }
//构造函数 public Axis(AXIS_TYPE_E axisType, uint driveDiv, uint acc, uint dec , float pitch, float minSpeed, float maxSpeed) { this.driveDiv = driveDiv; this.acc = acc; this.dec = dec; this.pitch = pitch; this.minSpeed = minSpeed; this.maxSpeed = maxSpeed; this.axisType = axisType; }
public static extern int SMC_SetOperateAxisPlane(byte ucControllerAddr, AXIS_TYPE_E enAxisType1, AXIS_TYPE_E enAxisType2, AXIS_TYPE_E enAxisType3);
public static extern int SMC_GetMotorPosition(byte ucControllerAddr, AXIS_TYPE_E enAxisType, out float pfMotorPostion);
public static extern int SMC_ClearMotorPosition(byte ucControllerAddr, AXIS_TYPE_E enAxisType);
public static extern int SMC_MotorIsRunning(byte ucControllerAddr, AXIS_TYPE_E enAxisType, out bool pbIsRunning);
public static extern int SMC_SlowStopMotor(byte ucControllerAddr, AXIS_TYPE_E enAxisType);
public static extern int SMC_MotorGoPos(byte ucControllerAddr, AXIS_TYPE_E enAxisType, float fPostion);
public static extern int SMC_ManualRightMove(byte ucControllerAddr, AXIS_TYPE_E enAxisType);
public static extern int SMC_MotorMove(byte ucControllerAddr, AXIS_TYPE_E enAxisType, float fMoveDist);
public static extern int SMC_GetMotorCurSpeed(byte ucControllerAddr, AXIS_TYPE_E enAxisType, out float pfMotorSpeed);
public static extern int SMC_SetMotorMinSpeed(byte ucControllerAddr, AXIS_TYPE_E enAxisType, float fMinMotorSpeed);
public static extern int SMC_GetMotorDec(byte ucControllerAddr, AXIS_TYPE_E enAxisType, out UInt32 pulUserDecPar);
public static extern int SMC_SetMotorDec(byte ucControllerAddr, AXIS_TYPE_E enAxisType, UInt32 ulDecPar);
public static extern int SMC_GetMotorPitch(byte ucControllerAddr, AXIS_TYPE_E enAxisType, out float pfPitch);
public static extern int SMC_GetMotorDriveDiv(byte ucControllerAddr, AXIS_TYPE_E enAxisType, out UInt32 pulDriverDiv);