亚洲免费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.

        日本中文字幕人妻精品| 无码日韩精品一区二区三区免费| 免费人成再在线观看视频| 国产乱子伦精品无码码专区| 亚洲成a人片在线播放观看国产 | 日日噜噜夜夜狠狠久久无码区| 伊人网综合| 亚洲av高清资源在线观看三区 | av日韩高清一区二区| 成人国成人国产suv| 97se亚洲国产综合自在线| 亚洲色大成人一区二区| 日本女优中文字幕有码| 99久久精品费精品国产一区二| 欧美精品v国产精品v日韩精品| 怡春院欧美一区二区三区免费| 一区二区无码精油按摩| 国产三级av大全在线爽| 免费大片黄国产在线观看| 亚洲男人的天堂在线播放| 精品一区二区三区免费爱| 在线观看免费视频发布白白色| 亚洲av片无码久久五月| 日本无码人妻波多野结衣| 国产乱人伦AV在线麻豆A| 中文字幕一区二区三区精品在线 | 国产亚洲精品久久久闺蜜| 八戒网站免费观看视频| 91尤物在线看| 国产精品一区二区三区在线观看 | 加勒比久久综合久久伊人爱| 国产成人精品2021| 人妻aⅴ无码一区二区三区| 亚洲av永久无码精品水牛影视| 国产亚洲一二三区精品| 久久99国产综合精品| 久久久久久久99精品国产片| 亚洲熟妇夜夜一区二区三区| 国产在线观看视频一区二区三区| 免费看黑人男阳茎进女阳道视频| 999国产精品亚洲77777|