PLC滤波算法之卡尔曼滤波(kalman Filter)代码+测试

本文详细介绍了在PLC中如何实现一维卡尔曼滤波算法,包括三菱FX梯形图和内嵌ST代码的实现,并探讨了卡尔曼增益在滤波过程中的作用。同时,提供了SMART PLC的卡尔曼滤波程序,以及不同编程环境下滤波效果的对比分析。
摘要由CSDN通过智能技术生成

卡尔曼滤波是采用递归的方法属于线性滤波器,只需要当前的测量值input(西门子PLC里比如我们的模拟量通道AIW0值)和前一个采样周期的估计值(上一个时刻的滤波输出结果last_out)就能进行状态估计,需要的存储空间小,每一步的计算量小。下面我们通过程序代码一一给大家展示下。

 注意:当前时刻的最佳估计值也就是当前时刻的卡尔曼滤波输出结果out。

 预测状态方程的目的:由系统状态变量k-1时刻的最优值(一维的时候状态变量就是比如我们的速度,如果再加上位置那就是向量了) 和 系统输入 计算出k时刻的 系统预测值。本篇博文主要讲解一维卡尔曼滤波,多维借助矩阵运算就好,公式一样。一维的时候变换矩阵Fk 就是标量1,这里没有任何矩阵概念存在(可能大家觉得没有矩阵难度小了很多,其实我们大部分的卡尔曼滤波矩阵维数并不高,计算难度也并不大,不要动不动就被矩阵吓住了,矩阵运算也是一系列代数运算操作完成的)。

建议大家可以先了解下什么是最小二乘法(预测值与真值平方差最小)。可以参看我的另一篇博文:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RXXW_Dor

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值