M法也称直接脉冲计数法,是通过对给定采样周期T内的反馈脉冲直接进行计数来测量速度。伺服电机转子速度较低时,每个采样周期内计到的反馈脉冲数减少,测速精度降低。因此直接脉冲计数法的特点是高速时测速精度高,低速时测速精度低。
T法也称脉冲间隔时间法,是通过测量两个相邻反馈脉冲间的时间间隔来测量速度,具体方法是以两个相邻反馈脉冲间隔内插入的高频时标信号的个数来测量脉冲间隔时间。伺服电机转子速度较高时,每两个相邻反馈脉冲间隔内计到的高频时标数减少,测速精度降低。因此,脉冲间隔时间法测速的特点恰恰与直接脉冲计数法的相反,即低速时测速精度高,高速时测速精度低。
M/T法也称混合法,是在大致相等的采样间隔内,计取反馈脉冲的个数,并同时计取首末脉冲间隔内高频时标信号的个数作为间隔时间,然后以脉冲个数除以首末脉冲间隔时间求得速度。由其测速原理可知该方法是直接脉冲计数法和脉冲间隔时间法相结合的产物,因而在保持这两种方法的优点的同时也克服了各自的缺点,可以在整个测速范围内保持测速精度的一致性。
但是,必须指出的是在采样率不变的前提下,无论是T法还是M/T法,虽然能够在一个确定的速度区间以上获得较高的速度解析力,但是在该速度区间以下不具备实质性检测能力,也就是说其最低速的检测能力还是会受限于采样率,而降低采样率就有可能意味着要牺牲速度环带宽。
对于脉冲反馈而言,也许可以用T法,或M/T法在一定速度区间以上(正如楼上所言的72转以上时)获得较高的速度解析力,但是在不降低采样率的前提下,无法从根本上解决最低速的检测能力。
另,T法,或M/T法未必非要在一个周期测到2个以上的脉冲。如果反馈是反映位置信息的串行码流,则无法实施T法,或M/T法。
"T法,或M/T法未必非要在一个周期测到2个以上的脉冲。"这句不理解。如果在一个采样周期内不能检测到两个脉冲,就无法计算脉冲间的时间,从而无法计算转速。除非延长采样时间,即你说的降低采样率。但降低采样率后,也只有在采样间隔内可靠出现两个脉冲时(不是偶尔),才能测得准确转速啊。
我用fpga做mt法测速,采样时间在低速时略大一下。采样时间的切换点就是在采样周期刚好能出现两个脉冲时。
不知道你在低速时是怎么处理的?希望能在你这里得到启发。
不妨借用最为传统用法的M/T法采样思想:在一个定时周期开始之后,监测并记录第一个反馈脉冲的跳变沿,此后监测并捕捉下一个采样周期结束后出现的第一个反馈脉冲跳变沿,由这两个反馈脉冲边沿的时间间隔除上间隔内的反馈脉冲数,就可以实现M/T法测速,这样一来如果每个采样周期只来一个反馈脉冲,那么也一样可以借助与前一个周期的反馈脉冲计算出这2个脉冲之间的时间间隔,就不必非要在一个周期内必须等到两个脉冲了。
既然是在用FPGA做设计,那么逻辑和时序的灵活性就可以自由把握,触发模式和触发时机也自由得多。
内容的回复:这种方法其实已经是非直接的延长了采样周期。但要考虑到,第一个采样周期内捕捉到了脉冲,下一个采样周期未必能捕捉到脉冲。或许电机已经停转。这样时间计数器很有可能溢出。