定点一阶低通滤波仿真(实际上就是整型运算替代浮点,先放大滤波系数后缩小最终结果,然后来回迭代):必须把整型移位的余数考虑进去,即对每次省略掉的余数值进行积分累加,当累加值达到大于底数单位则送入输出,最后再减去输出。循环重复进行,有点像伺服位置控制的电子齿轮比那样最后还要保证不丢脉冲。如果不考虑余数有两种后果:1)稳定后有比较大静差;2)可能滤波输出一直是0(当滤波历史权重大且输入值很小时)。
2、关于定点一阶低通滤波权重系数表示问题。我们知道浮点型滤波时,要求两权重系数之和等于1;同理,定点时要求两权重系之和等于放大比例(比如如果是IQ10的话,就是1024),如果不满足这个关系,两种可能:1)之和小于放大比,稳定后天然产生静差;3)大于了,则就会发散了。总之,无论是浮点滤波还是定点滤波,两滤波系数一定要互补!
3、定点一阶低通滤波,将以上因素考虑进去后,稳定后,误差最多只差一个单位当量。如下所示,上图是输入阶跃,下图是滤波后的响应效果图,当前权重:历史权重 = 1:1023。以IQ10进行放大或缩小。
4、simulink中的模块memory和z-1二者使用上的区别:memory只延时一拍,不需要设置采样时间,z-1必须设置采样时间,延时拍数可以设置(默认是1拍)。