调用运动方法去掉acc,dec

增加版本号:2.20.24.3
master
lhiven 1 year ago
parent 27449e6f98
commit 85c4c15bd3

@ -81,12 +81,12 @@ namespace Rs.Motion.Base
return ErrorCode.Ok; return ErrorCode.Ok;
} }
public virtual ErrorCode MovePos(double dfPosVal, int percent = 100,double accTime=0,double decTime=0) public virtual ErrorCode MovePos(double dfPosVal, int percent = 100)
{ {
return ErrorCode.Ok; return ErrorCode.Ok;
} }
public virtual ErrorCode MoveOffset(double dfDistVal, int percent = 100,double accTime=0,double decTime=0) public virtual ErrorCode MoveOffset(double dfDistVal, int percent = 100)
{ {
return ErrorCode.Ok; return ErrorCode.Ok;
} }

@ -263,7 +263,7 @@ namespace Rs.Motion.GugaoEcat
/// <param name="nSpeedPercent"></param> /// <param name="nSpeedPercent"></param>
/// <param name="bypassEL"></param> /// <param name="bypassEL"></param>
/// <returns></returns> /// <returns></returns>
public override ErrorCode MovePos(double dfPosVal, int nSpeedPercent = 100,double accTime=0,double decTime=0) public override ErrorCode MovePos(double dfPosVal, int nSpeedPercent = 100)
{ {
if (!cardManager.IsInitialized) if (!cardManager.IsInitialized)
return ErrorCode.CardNotInit; return ErrorCode.CardNotInit;
@ -308,8 +308,11 @@ namespace Rs.Motion.GugaoEcat
MmToPulse(Config.StopSpeed, out double stopSpeedPulse); MmToPulse(Config.StopSpeed, out double stopSpeedPulse);
float fMaxVel = (float)(maxSpeedPulse * dfPercent / 1000.0);//pulse/ms float fMaxVel = (float)(maxSpeedPulse * dfPercent / 1000.0);//pulse/ms
float fAcc = (float)(maxSpeedPulse / (accTime == 0 ? Config.AccTime : accTime) / 1000000.0); //float fAcc = (float)(maxSpeedPulse / (accTime == 0 ? Config.AccTime : accTime) / 1000000.0);
float fDec = (float)(maxSpeedPulse / (decTime == 0 ? Config.DecTime : decTime) / 1000000.0); //float fDec = (float)(maxSpeedPulse / (decTime == 0 ? Config.DecTime : decTime) / 1000000.0);
float fAcc = (float)(maxSpeedPulse / Config.AccTime / 1000000.0);
float fDec = (float)(maxSpeedPulse / Config.DecTime / 1000000.0);
float fStart = (float)(minSpeedPulse / 1000.0); float fStart = (float)(minSpeedPulse / 1000.0);
float fStop = (float)(stopSpeedPulse / 1000.0); float fStop = (float)(stopSpeedPulse / 1000.0);
apiResult = mc_ecat.GTN_PrfTrap(core, (short)Config.AxisId);//设置运动模式为点位运动 apiResult = mc_ecat.GTN_PrfTrap(core, (short)Config.AxisId);//设置运动模式为点位运动
@ -356,7 +359,7 @@ namespace Rs.Motion.GugaoEcat
/// <param name="nSpeedPercent"></param> /// <param name="nSpeedPercent"></param>
/// <param name="bypassEL"></param> /// <param name="bypassEL"></param>
/// <returns></returns> /// <returns></returns>
public override ErrorCode MoveOffset(double dfDistVal, int nSpeedPercent = 100, double accTime = 0, double decTime = 0) public override ErrorCode MoveOffset(double dfDistVal, int nSpeedPercent = 100)
{ {
if (!cardManager.IsInitialized) if (!cardManager.IsInitialized)
{ {

@ -300,7 +300,7 @@ namespace Rs.Motion.GugaoPulse
/// <param name="nSpeedPercent"></param> /// <param name="nSpeedPercent"></param>
/// <param name="bypassEL"></param> /// <param name="bypassEL"></param>
/// <returns></returns> /// <returns></returns>
public override ErrorCode MovePos(double dfPosVal, int nSpeedPercent = 4,double accTime=0,double decTime=0) public override ErrorCode MovePos(double dfPosVal, int nSpeedPercent = 4)
{ {
if (!cardManager.IsInitialized) if (!cardManager.IsInitialized)
return ErrorCode.CardNotInit; return ErrorCode.CardNotInit;
@ -348,8 +348,10 @@ namespace Rs.Motion.GugaoPulse
MmToPulse(Config.StopSpeed, out double stopSpeedPulse); MmToPulse(Config.StopSpeed, out double stopSpeedPulse);
float fMaxVel = (float)(maxSpeedPulse * dfPercent / 1000.0);//pulse/ms float fMaxVel = (float)(maxSpeedPulse * dfPercent / 1000.0);//pulse/ms
float fAcc = (float)(maxSpeedPulse / (accTime == 0 ? Config.AccTime : accTime) / 1000000.0); //float fAcc = (float)(maxSpeedPulse / (accTime == 0 ? Config.AccTime : accTime) / 1000000.0);
float fDec = (float)(maxSpeedPulse / (decTime == 0 ? Config.DecTime : decTime) / 1000000.0); //float fDec = (float)(maxSpeedPulse / (decTime == 0 ? Config.DecTime : decTime) / 1000000.0);
float fAcc = (float)(maxSpeedPulse / Config.AccTime / 1000000.0);
float fDec = (float)(maxSpeedPulse / Config.DecTime / 1000000.0);
float fStart = (float)(minSpeedPulse / 1000.0); float fStart = (float)(minSpeedPulse / 1000.0);
float fStop = (float)(stopSpeedPulse / 1000.0); float fStop = (float)(stopSpeedPulse / 1000.0);
apiResult = mc_pulse.GT_PrfTrap((short)Config.CardId, (short)Config.AxisId);//设置运动模式为点位运动 apiResult = mc_pulse.GT_PrfTrap((short)Config.CardId, (short)Config.AxisId);//设置运动模式为点位运动
@ -400,7 +402,7 @@ namespace Rs.Motion.GugaoPulse
/// <param name="nSpeedPercent"></param> /// <param name="nSpeedPercent"></param>
/// <param name="bypassEL"></param> /// <param name="bypassEL"></param>
/// <returns></returns> /// <returns></returns>
public override ErrorCode MoveOffset(double dfDistVal, int nSpeedPercent = 100, double accTime = 0, double decTime = 0) public override ErrorCode MoveOffset(double dfDistVal, int nSpeedPercent = 100)
{ {
if (!cardManager.IsInitialized) if (!cardManager.IsInitialized)
{ {

@ -32,5 +32,5 @@ using System.Runtime.InteropServices;
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值 //可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
//通过使用 "*",如下所示: //通过使用 "*",如下所示:
// [assembly: AssemblyVersion("1.0.*")] // [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.0.2.31")] [assembly: AssemblyVersion("2.20.24.3")]
//[assembly: AssemblyFileVersion("1.0.0.0")] //[assembly: AssemblyFileVersion("1.0.0.0")]

@ -268,7 +268,7 @@ namespace Rs.Motion.GugaoEcat
/// <param name="nSpeedPercent"></param> /// <param name="nSpeedPercent"></param>
/// <param name="bypassEL"></param> /// <param name="bypassEL"></param>
/// <returns></returns> /// <returns></returns>
public override ErrorCode MovePos(double dfPosVal, int nSpeedPercent = 100, double accTime = 0, double decTime = 0) public override ErrorCode MovePos(double dfPosVal, int nSpeedPercent = 100)
{ {
if (!cardManager.IsInitialized) if (!cardManager.IsInitialized)
return ErrorCode.CardNotInit; return ErrorCode.CardNotInit;
@ -316,8 +316,10 @@ namespace Rs.Motion.GugaoEcat
float fMaxVel = (float)(maxSpeedPulse * dfPercent / 1000.0);//pulse/ms float fMaxVel = (float)(maxSpeedPulse * dfPercent / 1000.0);//pulse/ms
//float fAcc = (float)(maxSpeedPulse / Config.AccTime / 1000000.0); //float fAcc = (float)(maxSpeedPulse / Config.AccTime / 1000000.0);
//float fDec = (float)(maxSpeedPulse / Config.DecTime / 1000000.0); //float fDec = (float)(maxSpeedPulse / Config.DecTime / 1000000.0);
float fAcc = (float)(fMaxVel / (accTime==0?Config.AccTime:accTime * 1000)); //float fAcc = (float)(fMaxVel / (accTime==0?Config.AccTime:accTime * 1000));
float fDec = (float)(fMaxVel / (decTime==0?Config.DecTime:decTime * 1000)); //float fDec = (float)(fMaxVel / (decTime==0?Config.DecTime:decTime * 1000));
float fAcc = (float)(fMaxVel / Config.AccTime / 1000.0);//pulse/ms2
float fDec = (float)(fMaxVel / Config.DecTime / 1000.0);//pulse/ms2
float fStart = (float)(minSpeedPulse / 1000.0); float fStart = (float)(minSpeedPulse / 1000.0);
float fStop = (float)(stopSpeedPulse / 1000.0); float fStop = (float)(stopSpeedPulse / 1000.0);
m_apiResult = ZTM.ZT_MoveA(Config.CardMc, (short)Config.AxisId, (int)dfPos, fStart, fMaxVel, fAcc, fDec, fStop, (ushort)(Config.STime * 1000.0)); m_apiResult = ZTM.ZT_MoveA(Config.CardMc, (short)Config.AxisId, (int)dfPos, fStart, fMaxVel, fAcc, fDec, fStop, (ushort)(Config.STime * 1000.0));
@ -338,7 +340,7 @@ namespace Rs.Motion.GugaoEcat
/// <param name="nSpeedPercent"></param> /// <param name="nSpeedPercent"></param>
/// <param name="bypassEL"></param> /// <param name="bypassEL"></param>
/// <returns></returns> /// <returns></returns>
public override ErrorCode MoveOffset(double dfDistVal, int nSpeedPercent = 100, double accTime = 0, double decTime = 0) public override ErrorCode MoveOffset(double dfDistVal, int nSpeedPercent = 100)
{ {
if (!cardManager.IsInitialized) if (!cardManager.IsInitialized)
{ {

Loading…
Cancel
Save