久久精品99久久_亚洲一区二区综合_狠狠色伊人亚洲综合成人_亚洲综合爱爱久久网

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當前位置:首頁 >> 技術中心 >> 單片機入門 >> 平衡小車卡爾曼濾波算法

平衡小車卡爾曼濾波算法

關鍵字:卡爾曼濾波 平衡小車 作者:admin 來源:不詳 發布時間:2018-05-18  瀏覽:12

這次的平衡車,使用到了卡爾曼濾波,下面談談使用心得

我們是利用角速度傳感器和加速度傳感器測量得到角度和角速度,但是由于車子是運動的,我們利用加速度得到的角度并不完全正確,由于噪聲干擾,我們對角速度傳感器的測量值也存在懷疑。于是我們就要進行濾波,通過兩個傳感器數值上的相互關系來得到我們想要的結果。我們使用卡爾曼濾波器連接這兩個測量值。

首先開感性的理解一下卡爾曼,引用網上(百度百科)的經典解釋:

在介紹他的5條公式之前,先讓我們來根據下面的例子一步一步的探索。

假 設我們要研究的對象是一個房間的溫度。根據你的經驗判斷,這個房間的溫度是恒定的,也就是下一分鐘的溫度等于現在這一分鐘的溫度(假設我們用一分鐘來做時 間單位)。假設你對你的經驗不是100%的相信,可能會有上下偏差幾度。我們把這些偏差看成是高斯白噪聲(White Gaussian Noise),也就是這些偏差跟前后時間是沒有關系的而且符合高斯分配(Gaussian Distribution)。另外,我們在房間里放一個溫度計,但是這個溫度計也不準確的,測量值會比實際值偏差。我們也把這些偏差看成是高斯白噪聲。

好了,現在對于某一分鐘我們有兩個有關于該房間的溫度值:你根據經驗的預測值(系統的預測值)和溫度計的值(測量值)。下面我們要用這兩個值結合他們各自的噪聲來估算出房間的實際溫度值。

假 如我們要估算k時刻的是實際溫度值。首先你要根據k-1時刻的溫度值,來預測k時刻的溫度。因為你相信溫度是恒定的,所以你會得到k時刻的溫度預測值是跟 k-1時刻一樣的,假設是23度,同時該值的高斯噪聲的偏差是5度(5是這樣得到的:如果k-1時刻估算出的最優溫度值的偏差是3,你對自己預測的不確定 度是4度,他們平方相加再開方,就是5)。然后,你從溫度計那里得到了k時刻的溫度值,假設是25度,同時該值的偏差是4度。

由于我們用 于估算k時刻的實際溫度有兩個溫度值,分別是23度和25度。究竟實際溫度是多少呢?相信自己還是相信溫度計呢?究竟相信誰多一點,我們可以用他們的 covariance來判斷。因為Kg^2=5^2/(5^2+4^2),所以Kg=0.78,我們可以估算出k時刻的實際溫度值是:23+0.78* (25-23)=24.56度。可以看出,因為溫度計的covariance比較小(比較相信溫度計),所以估算出的最優溫度值偏向溫度計的值。

現 在我們已經得到k時刻的最優溫度值了,下一步就是要進入k+1時刻,進行新的最優估算。到現在為止,好像還沒看到什么自回歸的東西出現。對了,在進入 k+1時刻之前,我們還要算出k時刻那個最優值(24.56度)的偏差。算法如下:((1-Kg)*5^2)^0.5=2.35。這里的5就是上面的k時 刻你預測的那個23度溫度值的偏差,得出的2.35就是進入k+1時刻以后k時刻估算出的最優溫度值的偏差(對應于上面的3)。

就是這樣,卡爾曼濾波器就不斷的把covariance遞歸,從而估算出最優的溫度值。他運行的很快,而且它只保留了上一時刻的covariance。上面的Kg,就是卡爾曼增益(Kalman Gain)。他可以隨不同的時刻而改變他自己的值,是不是很神奇!

然后看看我們的代碼,代碼來自網絡,使用的是ouravr某大牛的代碼

#include "Kalman.h"

float Q_angle=0.001, Q_gyro=0.003, R_angle=0.5, dt=0.005;

//注意:dt的取值為kalman濾波器采樣時間;

float P[2][2] = {

{ 1, 0 },

{ 0, 1 }

};

float Pdot[4] ={0,0,0,0};

const char C_0 = 1;

float q_bias, angle_err, PCt_0, PCt_1, E, K_0, K_1, t_0, t_1;

//-------------------------------------------------------

void Kalman_Filter(float angle_m,float gyro_m) //gyro_m:gyro_measure

{

angle+=(gyro_m-q_bias) * dt;//先驗估計

Pdot[0]=Q_angle - P[0][1] - P[1][0];// Pk-' 先驗估計誤差協方差的微分

Pdot[1]=- P[1][1];

Pdot[2]=- P[1][1];

Pdot[3]=Q_gyro;

P[0][0] += Pdot[0] * dt;// Pk- 先驗估計誤差協方差微分的積分 = 先驗估計誤差協方差

P[0][1] += Pdot[1] * dt;

P[1][0] += Pdot[2] * dt;

P[1][1] += Pdot[3] * dt;

angle_err = angle_m - angle;//zk-先驗估計

PCt_0 = C_0 * P[0][0];

PCt_1 = C_0 * P[1][0];

E = R_angle + C_0 * PCt_0;

K_0 = PCt_0 / E;//Kk

K_1 = PCt_1 / E;

t_0 = PCt_0;

t_1 = C_0 * P[0][1];

P[0][0] -= K_0 * t_0;//后驗估計誤差協方差

P[0][1] -= K_0 * t_1;

P[1][0] -= K_1 * t_0;

P[1][1] -= K_1 * t_1;

angle += K_0 * angle_err;//后驗估計

q_bias += K_1 * angle_err;//后驗估計

angle_dot = gyro_m-q_bias;//輸出值(后驗估計)的微分 = 角速度

}

我們一個個語句進行解釋

angle+=(gyro_m-q_bias) * dt

首先我們要利用系統的過程模型,來預測下一狀態的系統。假設現在的系統狀態是k,根據系統的模型,可以基于系統的上一狀態而預測出現在狀態:

X(k|k-1)=A X(k-1|k-1)+B U(k) ……….. (1)

我們的矩陣X為:

(angle

gyro)

我們的矩陣A為:

( 1 1

0 1)

要注意的是我們得到的是X(k|k-1)!!這可不是我們要的結果

然后是

Pdot[0]=Q_angle - P[0][1] - P[1][0];// Pk-' 先驗估計誤差協方差的微分

Pdot[1]=- P[1][1];

Pdot[2]=- P[1][1];

Pdot[3]=Q_gyro;

P[0][0] += Pdot[0] * dt;// Pk- 先驗估計誤差協方差微分的積分 = 先驗估計誤差協方差

P[0][1] += Pdot[1] * dt;

P[1][0] += Pdot[2] * dt;

P[1][1] += Pdot[3] * dt;

這8句一起進行解釋

到現在為止,我們的系統結果已經更新了,可是,對應于X(k|k-1)的covariance還沒更新。我們用P表示covariance:

P(k|k-1)=A P(k-1|k-1) A’+Q ……… (2)

Pdot是P的微分。

我們的Q是

(Q_angle 0

0 Q_gyro)

積分后協方差就算出來了,同樣注意也是P(k|k-1)。具體怎么算~~~好吧我承認我線代沒有學好~~~算了好久。。。。

angle_err = angle_m - angle;//這句好像沒有必要說~~

接下來算卡爾曼增益:

PCt_0 = C_0 * P[0][0];

PCt_1 = C_0 * P[1][0];

E = R_angle + C_0 * PCt_0;

K_0 = PCt_0 / E;

K_1 = PCt_1 / E;

Kg(k)= P(k|k-1) H’ / (H P(k|k-1) H’ + R)

H是測量系統的矩陣,為(1

1)

t_0 = PCt_0;

t_1 = C_0 * P[0][1];

P[0][0] -= K_0 * t_0;//后驗估計誤差協方差

P[0][1] -= K_0 * t_1;

P[1][0] -= K_1 * t_0;

P[1][1] -= K_1 * t_1;

到現在為止,我們已經得到了k狀態下最優的估算值X(k|k)。但是為了要另卡爾曼濾波器不斷的運行下去直到系統過程結束,我們還要更新k狀態下X(k|k)的covariance:

P(k|k)=(I-Kg(k) H)P(k|k-1) ……… (5)

這個很好理解了~~I是單位矩陣不多說鳥~~

angle += K_0 * angle_err;//后驗估計

q_bias += K_1 * angle_err;//后驗估計

angle_dot = gyro_m-q_bias;//輸出值(后驗估計)的微分 = 角速度

現在我們有了現在狀態的預測結果,然后我們再收集現在狀態的測量值。結合預測值和測量值,我們可以得到現在狀態(k)的最優化估算值X(k|k):

X(k|k)= X(k|k-1)+Kg(k) (Z(k)-H X(k|k-1)) ……… (3)

觀察一下K_1計算過程,再聯系到協方差矩陣的性質就可以知道為什么角速度偏差量用P[1][0]算了~~

至于STM32上跑的速度,72M下這段代碼執行時間在0.5毫秒內,速度不是問題~~

編輯:admin  最后修改時間:2018-05-18

聯系方式

0755-82591179

郵箱:ivy@yingtexin.net

地址:深圳市南山區桃源街道平山社區平山一路2號南山云谷創業園二期11棟410-411

Copyright © 2014-2026 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號-4

久久精品99久久_亚洲一区二区综合_狠狠色伊人亚洲综合成人_亚洲综合爱爱久久网
亚洲一区二区在线视频观看| 亚洲小说欧美另类激情| 欧美 亚洲 视频| 涩多多在线观看| 国产大片一区二区三区| 9l视频白拍9色9l视频| 中文字幕 91| 特级西西444www| 天天综合中文字幕| 特色特色大片在线| 久久综合久久久久| 国产不卡一区二区视频| 啊啊啊一区二区| 精品一卡二卡三卡| 亚洲xxx在线观看| 少妇熟女一区二区| 亚洲熟妇无码一区二区三区导航| 黄色成人在线看| 熟女人妇 成熟妇女系列视频| 爱情岛论坛成人| 日本三日本三级少妇三级66| 阿v天堂2018| 别急慢慢来1978如如2| 黄色免费高清视频| 国产91在线免费| 天天干天天av| 久久精品xxx| 成人午夜激情av| 成人免费看片'免费看| 激情视频综合网| 国产又粗又猛又爽又黄的网站| 99热自拍偷拍| 污视频在线观看免费网站| 精品无码国产一区二区三区av| www.99av.com| 国产黄色一级网站| 亚洲第一精品区| 中文字幕第21页| 欧日韩免费视频| 亚洲一区精品视频在线观看| 成年人午夜免费视频| 国产91色在线观看| 国产精品50p| 免费cad大片在线观看| 亚洲精品视频导航| 五月丁香综合缴情六月小说| 国产大片一区二区三区| 国产精品视频黄色| 黄色免费福利视频| 黄色特一级视频| 手机精品视频在线| jizzzz日本| 白嫩少妇丰满一区二区| 欧美成人免费在线观看视频| 在线观看av免费观看| 免费涩涩18网站入口| 狠狠干 狠狠操| 波多野结衣 作品| 三级在线免费观看| 久久久成人精品一区二区三区| 色播五月综合网| 亚洲第一狼人区| 久久这里只精品| 日韩av一卡二卡三卡| 成人性生交免费看| 手机免费av片| 干日本少妇视频| 精品国偷自产一区二区三区| 国产精品免费看久久久无码| 国产激情在线看| 青青青在线视频播放| 国产a级片网站| 成年人在线看片| 欧美午夜aaaaaa免费视频| 中文字幕有码av| 成人免费黄色av| 久久综合久久网| 国产成人精品视频免费看| 99久久激情视频| 中文字幕资源在线观看| 天天操夜夜操很很操| 亚洲一区 在线播放| av在线免费观看国产| 国产最新免费视频| 午夜一区二区视频| 天天做天天躁天天躁| 岳毛多又紧做起爽| 日韩在线一区视频| 视色,视色影院,视色影库,视色网| 欧洲精品在线播放| 久久久久狠狠高潮亚洲精品| 一区二区三区 日韩| 路边理发店露脸熟妇泻火| 国产深夜男女无套内射| 高清av免费看| 欧美 日韩 亚洲 一区| 少妇一级淫免费播放| 国产精品第157页| 亚洲免费黄色录像| 欧美极品欧美精品欧美| 在线观看日本www| 成人在线观看黄| 日韩精品一区二区三区四| 99免费视频观看| 蜜臀av色欲a片无码精品一区| 黄色av免费在线播放| 日韩中文字幕亚洲精品欧美| 中国黄色片免费看| 天天夜碰日日摸日日澡性色av| 97人人爽人人| 激情综合网俺也去| 欧美 国产 综合| av久久久久久| 9色视频在线观看| 欧美丝袜在线观看| 激情综合网俺也去| 日韩欧美亚洲天堂| 中文精品无码中文字幕无码专区| 国产探花在线看| 无码日韩人妻精品久久蜜桃| 黑人巨茎大战欧美白妇| а 天堂 在线| 欧美丝袜在线观看| 狠狠操狠狠干视频| 中文久久久久久| 欧美一级裸体视频| 中文字幕国内自拍| 色一情一乱一伦一区二区三区日本| 秋霞无码一区二区| 免费观看国产精品视频| 岛国大片在线播放| www插插插无码视频网站| 国产尤物av一区二区三区| 男女爱爱视频网站| 视色,视色影院,视色影库,视色网| 三年中文高清在线观看第6集| aaa一级黄色片| 国产精品h视频| 日本天堂免费a| 男人用嘴添女人下身免费视频| 欧美变态另类刺激| 国产精品人人爽人人爽| 超碰在线播放91| 亚洲成年人专区| 久久久无码中文字幕久...| 91成人综合网| 婷婷丁香激情网| 手机精品视频在线| 成人免费毛片在线观看| 黑鬼大战白妞高潮喷白浆| 艹b视频在线观看| 成人在线免费观看网址| 黄色大片在线免费看| 久久久久国产一区| 欧美精品色视频| aa在线观看视频| 五月天丁香花婷婷| www在线观看免费| 老司机午夜性大片| 99在线精品免费视频| 国内自拍视频一区| a级网站在线观看| 黄色a级片免费| 在线观看18视频网站| 黄www在线观看| 一二三在线视频| 毛片av免费在线观看| 好色先生视频污| 亚洲 激情 在线| 精品人妻少妇一区二区| 另类小说第一页| 欧美大片在线播放| 免费的av在线| 国产美女18xxxx免费视频| 欧美大片在线播放| 真人做人试看60分钟免费| 久久婷婷综合色| 精品人妻一区二区三区四区在线| 国产传媒免费观看| 日本三级黄色网址| 青青在线免费观看视频| 日韩黄色短视频| 日韩成人手机在线| 97超碰免费观看| 在线能看的av网站| 天天综合网日韩| 国产又猛又黄的视频| 那种视频在线观看| 欧美日韩在线中文| www在线观看免费| 亚洲一区二区三区av无码| 久久亚洲a v| 精品国产一区二区三区无码| 欧美日韩亚洲国产成人| 一级 黄 色 片一| 精品久久免费观看| 91精品国产毛片武则天| 亚洲国产欧美91| 国产激情在线看| 青青青青草视频|