资源简介
卡尔曼滤波算法,1.本文档主要讲解卡尔曼滤波的一些算法 , 已将封装好 51 和 STM32 的文件可以直接放到工程代码里面使用。卡尔曼滤波(Kalman filtering)一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。
代码片段和文件信息
#include
#include
#include
float x_last=0; // 表示上一次的最优值
float p_last=0.02; // 表示上一次的 最优协方差
float Q=0.018; // Q (偏差)为高斯白噪声 不随时间变化
float R=0.542; // R (偏差) 为高斯白噪声 不随时间变化
float kg; // kg 为 kalman filter 用于计算 最优值
float x_mid; // 当前的预测值
float x_now; // 当前的最优值
float p_mid; // 当前的协方差
float p_now; // 当前的 最优 协方差
float sumerror_kalman=0; // 估计值的 累计 误差
float sumerror_measure=0; // 测量值的 累计误差
float kalman_filter(int kalman_val)
{
x_mid=x_last;
p_mid=p_last+Q;
kg=p_mid/(p_mid+R);
x_now=x_mid+kg*(kalman_val-x_mid);
p_now=(1-kg)*p_mid;
sumerror_kalman = sumerror_kalman + fabs(x_mid - x_now);
sumerror_measure = sumerror_measure + fabs(kalman_val - x_now);
p_last = p_now; //更新covar
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1077 2017-08-02 19:42 卡尔曼滤波\32 版 卡尔曼(一维) 头文件\kalman.c
文件 966 2017-08-02 19:42 卡尔曼滤波\32 版 卡尔曼(一维) 头文件\kalman.h
文件 1051 2017-08-02 18:07 卡尔曼滤波\51 版 卡尔曼 (一维) 头文件\kalman.c
文件 1076 2017-08-02 18:07 卡尔曼滤波\51 版 卡尔曼 (一维) 头文件\kalman.h
文件 893 2017-08-02 17:13 卡尔曼滤波\公式 5 条 .txt
文件 17273 2010-06-07 10:25 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\CoreSupport\core_cm3.c
文件 85714 2011-02-09 14:59 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\CoreSupport\core_cm3.h
文件 26297 2011-03-14 12:31 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\Release_Notes.html
文件 15766 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_cl.s
文件 15503 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_hd.s
文件 15692 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_hd_vl.s
文件 12376 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_ld.s
文件 13656 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_ld_vl.s
文件 12765 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md.s
文件 14073 2011-03-10 10:51 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_md_vl.s
文件 15955 2011-03-10 10:51 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm\startup_stm32f10x_xl.s
文件 13072 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_cl.s
文件 13160 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_hd.s
文件 12482 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_hd_vl.s
文件 9814 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_ld.s
文件 10562 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_ld_vl.s
文件 10269 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_md.s
文件 11058 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_md_vl.s
文件 13261 2011-03-10 10:52 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\gcc_ride7\startup_stm32f10x_xl.s
文件 16626 2011-03-10 10:53 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_cl.s
文件 16229 2011-03-10 10:53 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_hd.s
文件 15675 2011-03-10 10:53 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_hd_vl.s
文件 12650 2011-03-10 10:53 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_ld.s
文件 12950 2011-03-10 10:53 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_ld_vl.s
文件 12912 2011-03-10 10:53 卡尔曼滤波\卡尔曼滤波(平衡小车)程序\卡尔曼滤波\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_md.s
............此处省略189个文件信息
相关资源
- 算法集合(NATIONAL ADVISORY COMMITTEE FO
- 《数据结构与算法分析:C语言描述第
- JPEG图像压缩c语言算法
- PatchMatch图像修复算法opencv和C++版)
- 数据结构 C语言版2009年-严蔚敏 高清扫
- KCF跟踪算法(C++)146187
- 时空上下文跟踪STC
- 基于信息熵的属性约简算法c/c++代码
- MFC vc6.0 RSA DES MD5 加密解密算法
- 计算机图形学图形剪裁与变换算法的
- C++算法-图算法
- C语言实现最短路径规划
- 数据结构与算法分析:C语言描述(第
- 数据结构与算法分析 c++描述 第三版
- Alpha-Beta剪枝算法一字棋源码及实验报
- C语言算法导论
- A*算法求解八数码--演示程序MFC
- 算法V(C++实现)-图算法(第三版)
- 数据结构与算法分析C++版(中文版)
- 数据结构C++版邓俊辉 第三版 带习题
- ISODATA算法
- Visual c++数字图像处理典型算法及源代
- 常用算法深入学习实录(光盘C语言源
- C语言数值算法程序大全第二版
- C++算法—图算法第三版
- 哈夫曼压缩与解压算法(可以直接运
- 分水岭分割算法c++代码实现
- 数据结构与算法分析:C++语言描述 中文
- 算法设计实验报告-求最大子段和问题
- 哈工大C语言1.zip
评论
共有 条评论