[发明专利]一种基于Kalman滤波的检定台测温方法有效
| 申请号: | 201410383784.0 | 申请日: | 2014-08-06 |
| 公开(公告)号: | CN104165711B | 公开(公告)日: | 2017-09-29 |
| 发明(设计)人: | 余庭照;王立志 | 申请(专利权)人: | 烟台华蓝新瑞节能科技有限公司 |
| 主分类号: | G01K19/00 | 分类号: | G01K19/00 |
| 代理公司: | 北京高沃律师事务所11569 | 代理人: | 王戈 |
| 地址: | 264003 山东*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 kalman 滤波 检定 测温 方法 | ||
技术领域
本发明涉及一种测温方法,尤其是一种基于Kalman滤波的检定台测温方法。
背景技术
在热计量行业中需要超声波热量表检定设备对出厂的超声波热量表进行逐一检定,这就需要检定台自身能够精确实时地对管路中的水温进行测量;由于测量系统临近大功率电机等设备,测试现场环境比较复杂,需要检定设备中的测温电路具有良好的抗干扰能力,现有技术中,需要对检定设备中的这两方便进行改善。
发明内容
本发明所要解决的技术问题是提供一种基于Kalman滤波的检定台测温方法,该方法能够提高测温系统在工业现场中的抗干扰能力,且由于Kalman滤波是从一组有限的、包含噪声的测量值(可能有偏差)中预测出与真实值更加接近的数值,基于水温是一个相对变化缓慢的连续的量,该方法可以实现对水温的精确实时测量。
为了解决现有技术的不足,本发明所提供的技术方案是:一种基于Kalman滤波的检定台测温方法,其特征在于,其步骤是:
(1)对Kalman滤波器参数进行初始化,包括影响收敛速度、动态噪声的协方差(即估计值的协方差)、过程和测量的噪声协方差等;
(2)根据前一状态的噪声值和最优值来预测现有时刻的数值,并根据预测的数值计算Kalman增益;
(3)添加新息序列,利用最小二乘法对相关数据进行抗野处理,保证数据不出现大的波动,提高数据预测的准确度;
(4)由前一状态的值估计现有状态的值,根据现有状态的协方差和Kalman增益计算下一状态的协方差,同时对Kalman算法内的相关数据更新,并返回Kalman滤波的最优值。
本发明的有益效果是:本发明将Kalman滤波算法引入到热计量行业的检定台水温的测量,对传统Kalman滤波进行了部分改造,加入了新息序列,提高了大型检定台测温电路对工业现场的抗干扰能力;kalman滤波具有很好的平滑性,并且能很好的应对工业现场的产生的干扰“野值”,能够准确实时的测量检定台的进水管、回水管以及水箱的水温度;将Kalman滤波引入到热计量行业的检定台水温测量中,具有一定的示范意义,可以对热计量行业中的气温测量,水温测量,流量测量等起到一定的示范作用。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是实际测量原始水温值,以及经过Kalman滤波与平滑滤波的水温值展示。
图2是Kalman滤波算法流程图。
由附图1中可清洗展示Kalman滤波具有很好的平滑性,对连续实时测量水温具有很好的抗干扰能力。
具体实施方式
一种基于Kalman滤波的检定台测温方法,其特征在于,其步骤是:
(1)对Kalman滤波器参数进行初始化,包括影响收敛速度、动态噪声的协方差(即估计值的协方差)Q、过程和测量的噪声协方差R等;
(2)根据前一状态的噪声值和最优值来预测现有时刻的数值,得到预测后的现在时刻噪声协方差p10(p10=p00+Q,p00是kalman函数起始时候的的预测值的协方差)和现在时刻的状态估计值x10(x10=x00,x00是kalman滤波的起始时刻设定的最优值),并根据预测的数值计算Kalman增益Kg,计算公式为kg=p10/(p10+R);
(3)添加新息序列e,e=z-x10;其中,输入参数z是实际测量初值,利用最小二乘法对相关数据进行抗野处理,保证数据不出现大的波动,提高数据预测的准确度;
进行抗野处理时,如果用于抗野处理的abs_e≤1,则新息序列e的值不变;如果1<abs_e≤2,则新息序列e = (0.5/abs_e)*e;如果野值超过了估计范围,即abs_e>2,则新息序列不采纳测量值,e=0;此处的抗野处理判断采用最小二乘法的特例进行了处理;
(4)由前一状态的值估计现有状态的值,计算公式为,当前状态的最优值x11=x10+Kg*e;根据现有状态的协方差和Kalman增益计算下一状态的协方差,其计算公式为Kalman函数结束时的最优值p11=(1-kg)*p10;同时对Kalman算法内的x00、p00更新,x00=x11,p00=p11,并返回Kalman滤波的最优值x00。
其详细的C语言函数为:
***********************************************************
定义的全局变量:作为初始化数据 float x00,p00;
变量定义
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烟台华蓝新瑞节能科技有限公司,未经烟台华蓝新瑞节能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410383784.0/2.html,转载请声明来源钻瓜专利网。





