novakon作者
11年3个月前修改于 11年3个月前IP:江西
788604
2楼
上面的方法,其实就是用一条直线,将当前时间之前的两个采样点连起来,然后将这条直线向后延伸到当前时间,得出当前的位置。换句话讲,我们通过将两个解代入一个匀速直线运动方程(X=kT+b),求得方程的系数,并将当前时刻带入求解出的方程,得出当前位移。

因为匀速直线运动的方程是一次的,求系数只需要两个解,因此只需要Tn,Xn两个测量值。但是,电机总是要加减速的,所以如果只用匀速直线运动方程来描述,在加减速的过程中就会出现之前所说的误差。因此,下面我们把运动方程改为匀加速直线运动。这就需要假定,相邻时刻之间加速度的变化很小,可以忽略。

根据高中物理的知识,设加速度a不变,位移可以写作:
x = 1/2aT平方 + bT + c,其中 b为初始速度,c为初始位移。这是一个二次方程,需要三个解才可以算出系数,因此需要Tn, Tn-1, Xn, Xn-1四个测量值。有的同学可能会问,为什么Xn和Xn-1都需要测量,它们不是相等且已知的吗?好吧,电机在正转的时候,Xn是正的,反转的时候Xn就是负的,因此Xn和Xn-1的绝对值是固定的,但符号不一定相同。而且,在电机转速过0的时候,Xn有可能为0(两次经过同一个编码器信号边沿)。

先去吃饭,有空再写。
评论
文号 / 788604

万流景仰
名片发私信
学术分 16
总主题 1270 帖总回复 8407 楼拥有证书:学者 机友 笔友
注册于 2008/03/29 15:34:00最后登录 2022/01/09 14:09:34
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:0

个人简介

已走,勿送

笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的