恭喜,你发布的帖子
发布于 2020-07-12 12:28:53
15楼
想起来把S曲线的核心算法逻辑放这
不一定放在中断OB中,普通OB也可以。当然最好是中断OB。
每个扫描周期,用RD_SYS_T来获得系统当前时间,和上一周期系统时间记录之差,得出扫描周期的时间。
用( 结束值 - 起始值) / 加速度,算出渐变需要的时间。加速度值自己限定。
每个扫描周期累加起来,当超过了所需时间,S渐变计算就结束了。
变化幅度 = 结束值 - 起始值
加速因子和自然常数都是预设常量。
加速因子的值(这里默认10或12)越大,S曲线越陡峭,曲线首尾的步幅越细密,中间段步幅越大。
计算中当两个数值的差小于一个精度(比如1.0E-5 精度0.00001),就代表目标达到了。
精华帖版主置评:又重新看过一遍。理解了。
如果把 一维空间曲线的速度、加速度、加加速度、加加加速度。。。都看成空间的一个时间维度,是可以解释 n维空间的概念。-yming
请填写推广理由:
分享
只看
楼主