//S形速度运动(S梯形速度曲线) public override bool AxisVelocityMove_S(int Axis, int Position, int StartSpeed, int MaxSpeed, Double AccSpeed, int AccEnable, int PulseMode, out string ErrorMessage) { int State = -1; if (Dmc1000_Dll.d1000_check_done(Axis) == 0) { ErrorMessage = Convert.ToString(Axis) + "轴正在运行"; return(false); } State = Dmc1000_Dll.d1000_set_sd(Axis, AccEnable);//设置减速开关是否有效 if (State != ERR_NoError) { ErrorMessage = Convert.ToString(Axis) + "轴设置减速信号使能失败"; return(false); } else { ErrorMessage = Convert.ToString(Axis) + "轴设置减速信号使能成功"; } State = Dmc1000_Dll.d1000_set_pls_outmode(Axis, PulseMode);//设置控制卡脉冲输出模式 if (State != ERR_NoError) { ErrorMessage = Convert.ToString(Axis) + "轴设置控制卡脉冲输出模式失败"; return(false); } else { ErrorMessage = Convert.ToString(Axis) + "轴设置控制卡脉冲输出模式成功"; } State = Dmc1000_Dll.d1000_start_sv_move(Axis, StartSpeed, MaxSpeed, AccSpeed); if (State != ERR_NoError) { ErrorMessage = Convert.ToString(Axis) + "轴S型速度运动失败"; return(false); } else { ErrorMessage = Convert.ToString(Axis) + "轴S型速度运动成功"; } return(true); }