亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Matlab、VC++與PCAuto組態(tài)軟件混合編程方法的Kalman濾波器實(shí)現(xiàn)

        2018-06-11 09:31:46王野
        科學(xué)與財(cái)富 2018年11期

        王野

        摘 要:Matlab是功能強(qiáng)大的工程計(jì)算和數(shù)據(jù)分析軟件,VC++是面向?qū)ο蟮目焖匍_發(fā)工具,PCAuto組態(tài)軟件是面向監(jiān)控與數(shù)據(jù)采集(Supervisory Control and Data Acquisition, SCADA)的軟件平臺(tái)工具。三者結(jié)合,可以取長補(bǔ)短,能開發(fā)出處理復(fù)雜矩陣運(yùn)算且界面友好、滿足工程領(lǐng)域需要的應(yīng)用軟件。本文探討了三者混合編程的詳細(xì)實(shí)現(xiàn)過程,通過一個(gè)Kalman濾波實(shí)例,說明了實(shí)現(xiàn)混合編程方法的過程和實(shí)用性。

        關(guān)鍵詞:Kalman濾波;VC++;Matlab;PCAuto;混合編程

        1 引言

        濾波問題是如何從被噪聲污染的觀測信號(hào)中過濾噪聲,盡可能消除或減小噪聲影響,求未知真實(shí)信號(hào)或系統(tǒng)狀態(tài)的最優(yōu)估計(jì)。由于信號(hào)和噪聲往往是多維非平穩(wěn)隨機(jī)過程,因此1960年初Kalman[1,2]用時(shí)域上的狀態(tài)空間方法提出了Kalman濾波理論,提出了便于計(jì)算機(jī)上遞推實(shí)現(xiàn)的Kalman濾波算法,解決了多維非平穩(wěn)隨機(jī)信號(hào)的濾波問題。我們基于Kalman濾波算法用Matlab實(shí)現(xiàn)仿真,通過VC將Matlab與組態(tài)軟件進(jìn)行互聯(lián),最終通過組態(tài)軟件來實(shí)現(xiàn)Kalman濾波器。

        2 理論依據(jù)

        考慮用如下狀態(tài)空間模型描寫的動(dòng)態(tài)系統(tǒng)

        其中t為離散時(shí)間,系統(tǒng)在時(shí)刻t的狀態(tài)為x(t)∈Rn,y(t)∈Rm為對(duì)狀態(tài)的觀測信號(hào),方差為Q的輸入白噪聲w(t)∈Rr,方差為R的觀測白噪聲v(t)∈Rm,且w(t)和v(t)不相關(guān)。?椎,,H分別為已知的適當(dāng)維矩陣。由[1,2]我們易知該系統(tǒng)的最優(yōu)狀態(tài)濾波方程組為:

        3 用Matlab實(shí)現(xiàn)Kalman濾波器仿真

        在系統(tǒng)(1)和(2)中取?椎= 0.9 0-0.5 0.2,?祝=12,H=[1 1],Q=0.81, R=1。基于Kalman濾波原理(3)-(8), 通過Matlab在計(jì)算機(jī)上實(shí)現(xiàn)Kalman濾波器的仿真。

        具體m文件源代碼如下:

        for i=1:bushu

        [x1(:,i+1)]=mult(fai,x(:,i));

        [wa]=mult(tao,w(i));

        [x(:,i+1)]=add(x1(:,i+1),wa);

        [hx]=mult(H,x(:,i+1));

        [y(i)]=add(hx,v(i));

        [xjian(:,i+1),p]=kkmm(n,fai,tao,H,Q,R,p,xjian(:,i),y(i));

        End

        其中,調(diào)用了mult(),add(),kkmm()這三個(gè)函數(shù),這些都是預(yù)先編寫好的。kkmm.m是整個(gè)程序的主要部分,即Kalman濾波算法。運(yùn)行結(jié)果如圖1和圖2所示,其中實(shí)現(xiàn)表示真實(shí)狀態(tài),虛線表示估計(jì)狀態(tài)。

        4 VC++與Matlab混合編程的應(yīng)用

        VC++[3]具有很多的優(yōu)點(diǎn),但對(duì)于一些比較復(fù)雜的工程計(jì)算程序,編寫起來比較困難。Matlab語言是一種高級(jí)矩陣語言,對(duì)于一些復(fù)雜的運(yùn)算有直接的函數(shù)可以調(diào)用,提高了編程的效率。

        4.1 應(yīng)用實(shí)例(Kalman濾波器)

        建立一個(gè)基于對(duì)話框的MFC應(yīng)用程序Kalman,通過制作一個(gè)曲線控件[3],可以清楚地看到xi(t)和 i(t|t)走勢。

        其中,使用了WM_TIMER響應(yīng)函數(shù)。運(yùn)行結(jié)果如圖3所示,其中黃線表示真實(shí)狀態(tài)x(t)紅線表示估計(jì)狀態(tài) (t|t)。

        5 實(shí)現(xiàn)VC++與組態(tài)軟件的數(shù)據(jù)通訊

        建立一個(gè)基于對(duì)話框的MFC程序VMP,按照本文4.2節(jié)提到的方法,將Kalman濾波器添加到當(dāng)

        前工程中。其中響應(yīng)函數(shù)CVMPDlg::OnTimer(UINT nIDEvent)的主要源代碼如下:

        for(int i = 0;i

        { CString strTagPar,strVal;

        XEstrTagPars.GetSubStr(i,strTagPar);

        pTagPars[i].vt = VT_BSTR;

        pTagPars[i].bstrVal = strTagPar.AllocSysString();

        XEstrVals.GetSubStr(i,strVal);

        pVals[i].vt = VT_BSTR;

        pVals[i].bstrVal = strVal.AllocSysString();}

        m_pDbCom->SetStringData(iTagParCount,pTagPars,pVals);

        for (i = 0; i < iTagParCount; i++)

        { SysFreeString(pTagPars[i].bstrVal);

        SysFreeString(pVals[i].bstrVal);}

        delete pTagPars; delete pVals;

        然后(t|t)可以通過上述源代碼進(jìn)行數(shù)據(jù)傳遞,將數(shù)據(jù)從Matlab通過VC++傳到組態(tài)軟件當(dāng)中去。

        6 結(jié)論

        通過上述方法,可以將Kalman濾波器應(yīng)用到現(xiàn)場中,廣泛應(yīng)用在信號(hào)處理、通信、目標(biāo)跟蹤和控制等領(lǐng)域。VC++是Matlab與組態(tài)軟件結(jié)合的橋梁,從而擴(kuò)大了Matlab的應(yīng)用范圍。因此如何在特定的情況下使用最好的實(shí)現(xiàn)方法非常重要,隨著數(shù)據(jù)接口的進(jìn)一步改善,混合編程將在工程應(yīng)用中發(fā)揮其越來越重大的作用。

        參考文獻(xiàn)

        [1]Kalman R E. A New Approach to Linear Filtering and Predictioning Problems.Trans.ASME,J.Basic Eng.,1960,82D:34-45.

        [2]鄧自立,王欣,高媛.建模與估計(jì)(第二版)[M].北京:科學(xué)出版社,2016.

        [3]王東華,李櫻.VisualC++6.0從入門到精通[M].北京:人民郵電出版社,2016.

        [4]江澤林,劉維.實(shí)戰(zhàn)MATLAB文件與數(shù)據(jù)接口技術(shù)[M].北京:北京航空航天大學(xué)出版社,2014.

        [5]張瓊瓊,馬躍,王志成.組態(tài)式人機(jī)界面編輯與仿真技術(shù)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2015(04),26-31.

        [6]鄧云偉,杜衛(wèi)星,楊光玲.基于組態(tài)軟件和FP23智能儀表的溫度監(jiān)控系統(tǒng)設(shè)計(jì)[J].價(jià)值工程.2013(20),208-210.

        久久精品国产亚洲av成人文字| 调教在线播放黄| 亚洲国产一区久久yourpan| 亚洲成人一区二区三区不卡| 久久国产成人精品国产成人亚洲| 国产精品久久久久久无码| 欧美精品一区二区精品久久| 视频一区视频二区亚洲| 日本不卡高字幕在线2019| 色先锋av资源中文字幕| 亚洲毛片αv无线播放一区| 一区二区三区精品婷婷| 日本中文字幕有码网站| а√资源新版在线天堂| 18禁成人黄网站免费观看| 无码专区久久综合久中文字幕| 国产自产精品露脸刺激91在线| 国产精品久久国产精品久久| 国语对白福利在线观看| 中文字幕乱码琪琪一区| 欧美国产小视频| 色哟哟亚洲色精一区二区| 青草内射中出高潮| 九九免费在线视频| 日本黄色高清视频久久| 在线观看av网站永久| 日本丰满少妇裸体自慰| 欧美日韩亚洲国产精品| 国产剧情无码中文字幕在线观看不卡视频 | 97人妻中文字幕总站| 深夜福利啪啪片| 人人妻人人添人人爽日韩欧美| 一二三四中文字幕日韩乱码| 开心五月婷婷激情综合网| 精品国产乱码久久久久久1区2区| 91情侣视频| 麻豆成人久久精品一区| 日韩aⅴ人妻无码一区二区| 高清在线亚洲中文精品视频| 精品女同一区二区三区免费播放| 久久午夜av一区二区三区|