技術(shù)頻道

      智能跟蹤控制系統(tǒng)的動(dòng)畫(huà)仿真設(shè)計(jì)

      1 引言

        在軍事、交通、網(wǎng)絡(luò)通信、機(jī)器人領(lǐng)域中,軌跡跟蹤被廣泛應(yīng)用于移動(dòng)或運(yùn)載工具自動(dòng)跟蹤、衛(wèi)星軌道調(diào)整、飛行物攔截、智能機(jī)器人、機(jī)組編隊(duì)控制等。由于這些裝備結(jié)構(gòu)復(fù)雜價(jià)格昂貴,在研究設(shè)計(jì)的過(guò)程中,要盡量減少實(shí)物實(shí)驗(yàn)。用仿真實(shí)驗(yàn)的方法來(lái)研究軌跡跟蹤控制問(wèn)題,可以大大減少實(shí)物實(shí)驗(yàn)失敗帶來(lái)的損失,節(jié)省大量的資源、資金和時(shí)間。傳統(tǒng)的仿真實(shí)驗(yàn)方法是利用matlab軟件,其優(yōu)點(diǎn)是建模簡(jiǎn)易,數(shù)值計(jì)算簡(jiǎn)便,仿真曲線精確,但具有一定的局限。例如,對(duì)來(lái)源于各種復(fù)雜現(xiàn)場(chǎng)的數(shù)據(jù)進(jìn)行仿真較復(fù)雜;仿真結(jié)果一般只能得到二維或三維的靜態(tài)曲線;不能根據(jù)觀察需要對(duì)仿真過(guò)程進(jìn)行有效的控制。因此本文針對(duì)傳統(tǒng)仿真方法的不足,采用opengl圖形系統(tǒng)結(jié)合vc++軟件開(kāi)發(fā)平臺(tái)設(shè)計(jì)出智能跟蹤控制系統(tǒng)三維動(dòng)畫(huà)仿真軟件。在該軟件的設(shè)計(jì)方案中,提出自動(dòng)導(dǎo)入的方法使其能直接導(dǎo)入來(lái)自各種現(xiàn)場(chǎng)的數(shù)據(jù),克服數(shù)據(jù)來(lái)源復(fù)雜的難題;提出幾何變換法實(shí)現(xiàn)視點(diǎn)調(diào)整功能,使仿真過(guò)程具有多角度可視性;利用程序的延時(shí)技術(shù)實(shí)現(xiàn)仿真速度的可控性,提高了軟件對(duì)仿真對(duì)象進(jìn)行觀察研究的能力。

      2 仿真軟件總體框架

        智能跟蹤控制系統(tǒng)三維動(dòng)畫(huà)仿真軟件的基本任務(wù)是提供仿真數(shù)據(jù)的導(dǎo)入功能,智能體軌跡跟蹤過(guò)程的精確重演,提供仿真過(guò)程的交互功能。通過(guò)數(shù)據(jù)導(dǎo)入功能,不論是來(lái)自于實(shí)物實(shí)驗(yàn)還是仿真實(shí)驗(yàn)的數(shù)據(jù)都能較容易地被該仿真軟件使用。仿真運(yùn)行時(shí)要能生成三維動(dòng)畫(huà)圖像,精確模仿智能體軌跡跟蹤過(guò)程。仿真過(guò)程中要能夠?qū)σ朁c(diǎn)和速度進(jìn)行調(diào)整,以便于從各個(gè)方向和不同的距離觀察,以及快放和慢放軌跡跟蹤過(guò)程,進(jìn)一步方便對(duì)仿真結(jié)果進(jìn)行分析和處理。

        軌跡跟蹤控制系統(tǒng)可能只涉及到一個(gè)智能體,也可能涉及到若干個(gè)智能體,各個(gè)智能體在跟蹤過(guò)程中可能組成編隊(duì)并擔(dān)任著不同的職能,不同類(lèi)型的智能體以及不同的跟蹤任務(wù)其跟蹤控制方法也不同[3]。但跟蹤原理基本一致,即智能體根據(jù)預(yù)設(shè)的或者捕捉到的目標(biāo)軌跡,經(jīng)過(guò)計(jì)算產(chǎn)生控制信號(hào)輸入,使其發(fā)出跟蹤行動(dòng),產(chǎn)生跟蹤軌跡。

        為了便于整體開(kāi)發(fā)和擴(kuò)展應(yīng)用,根據(jù)軌跡跟蹤過(guò)程的特點(diǎn)和研究需求,將軟件按照實(shí)現(xiàn)的功能進(jìn)行模塊化設(shè)計(jì),并通過(guò)操作界面來(lái)控制其功能的實(shí)現(xiàn)。圖1所示為該仿真軟件的框架結(jié)構(gòu)。



      圖1 仿真軟件框架示意圖

        該仿真軟件主要設(shè)計(jì)有導(dǎo)入模塊、重演模塊、控制模塊三大功能模塊,以及提供用戶界面的界面模塊。其中界面模塊用vc++[4]開(kāi)發(fā),為用戶提供可實(shí)現(xiàn)各項(xiàng)功能的操作界面。導(dǎo)入模塊可將復(fù)雜數(shù)據(jù)源的數(shù)據(jù)導(dǎo)入到指定存儲(chǔ)器中;重演模塊將數(shù)據(jù)生成軌跡跟蹤過(guò)程的三維動(dòng)畫(huà);控制模塊實(shí)現(xiàn)用戶交互功能,可以在仿真過(guò)程中通過(guò)它調(diào)整仿真速度和視點(diǎn)位置。

      3 智能跟蹤控制系統(tǒng)建模

        根據(jù)軌跡跟蹤基本原理建立智能軌跡跟蹤控制系統(tǒng)模型。

        設(shè)定目標(biāo)軌跡為:

        s0(t)=[s0(t),s0(t),s0(t)]t,

        智能跟蹤控制系統(tǒng)為:

        (1)其中t為時(shí)間參數(shù),x(t)=[x1(t),x2(t),x3(t)]t為系統(tǒng)的狀態(tài)向量,u(t)=[u1(t),u2(t),u3(t)]t為系統(tǒng)的輸入向量,f(t)=[f1(t),f2(t),f3(t)]t為系統(tǒng)的控制信號(hào)輸入向量,ai,i=1,2,3為系統(tǒng)狀態(tài)的常數(shù)系數(shù)矩陣,bi,i=1,2,3為系統(tǒng)輸入的常數(shù)系數(shù)矩陣。

        設(shè)計(jì)控制信號(hào)輸入f(t)使系統(tǒng)(1)有一個(gè)特解為s0(t)這時(shí):

        (2)由于系統(tǒng)(1)漸近穩(wěn)定,因而系統(tǒng)(1)的任意解都趨向于s0(t)。

        利用matlab\simulink工具箱[5]可將數(shù)學(xué)模型轉(zhuǎn)換為計(jì)算機(jī)仿真模型。圖2為系統(tǒng)(1)第一個(gè)變量的仿真模型。input controller為系統(tǒng)的控制器模塊,其功能是將采集的目標(biāo)狀態(tài)s0通過(guò)函數(shù)計(jì)算得到系統(tǒng)的控制信號(hào)f1輸出。



      圖2 系統(tǒng)(1)第一個(gè)變量的仿真模型

      4 三維動(dòng)畫(huà)仿真軟件設(shè)計(jì)

        4.1 導(dǎo)入功能設(shè)計(jì)


        研究軌跡跟蹤系統(tǒng)需要采集和處理大量的系統(tǒng)狀態(tài)數(shù)據(jù),而數(shù)據(jù)的來(lái)源方式具有多樣性,可以是系統(tǒng)仿真數(shù)據(jù),也可以是若干智能體設(shè)備的運(yùn)行數(shù)據(jù)。導(dǎo)入模塊的功能是將這些外部數(shù)據(jù)以規(guī)則的方式存貯在仿真軟件指定的存儲(chǔ)器中。圖3為該仿真軟件的數(shù)據(jù)流圖。

        當(dāng)仿真對(duì)象發(fā)生變化時(shí),只要在存儲(chǔ)器中導(dǎo)入新的跟蹤系統(tǒng)狀態(tài)數(shù)據(jù),無(wú)需改變?nèi)魏纬绦虼a,就可以進(jìn)行新系統(tǒng)的仿真。導(dǎo)入功能將數(shù)據(jù)的供給與動(dòng)畫(huà)實(shí)現(xiàn)程序獨(dú)立開(kāi)來(lái),使整個(gè)仿真軟件不受數(shù)據(jù)來(lái)源情況復(fù)雜的限制。



      圖3 仿真軟件數(shù)據(jù)流圖

        4.2 opengl動(dòng)畫(huà)開(kāi)發(fā)設(shè)計(jì)

        opengl圖形系統(tǒng)是行業(yè)領(lǐng)域中最為廣泛接納的2d/3d圖形api[6],其跨平臺(tái)性和優(yōu)越的三維動(dòng)畫(huà)特性可以滿足仿真軟件的需求。基于第2節(jié)對(duì)程序各個(gè)功能模塊進(jìn)行的需求和能力分析,設(shè)計(jì)開(kāi)發(fā)了軌跡跟蹤動(dòng)畫(huà)實(shí)現(xiàn)代碼。該模塊只向指定存儲(chǔ)器讀取軌跡跟蹤行為的數(shù)據(jù),并且留有控制指令接口,實(shí)現(xiàn)了動(dòng)畫(huà)核心程序的重用和可擴(kuò)展。程序流程如圖4所示。



      圖4 opengl三維動(dòng)畫(huà)程序流程圖

        將第3節(jié)建立的智能跟蹤控制系統(tǒng)模型分別運(yùn)用matlab和三維動(dòng)畫(huà)仿真軟件進(jìn)行仿真,仿真結(jié)果分別如圖5,圖6所示。



      圖5 matlab仿真結(jié)果

      圖6 三維動(dòng)畫(huà)仿真結(jié)果

        圖5是matlab仿真結(jié)果,我們只能觀察到跟蹤過(guò)程完成后的情況,其中sys1、sys2、sys3的點(diǎn)線分別表示智能跟蹤系統(tǒng)一、系統(tǒng)二、系統(tǒng)三的軌跡。圖6是三維動(dòng)畫(huà)仿真結(jié)果,如圖6所示,目標(biāo)為紅色,其運(yùn)動(dòng)軌跡為紅色橢圓,顏色分別為橙色、綠色、藍(lán)色的智能體從不同空間位置出發(fā),以各自的路徑和速度進(jìn)入目標(biāo)軌跡,然后沿著目標(biāo)軌跡跟蹤目標(biāo)。從圖6(b)中可以看到綠色智能體跟蹤速度最快,進(jìn)入目標(biāo)軌跡后幾乎與目標(biāo)重合。對(duì)比兩種軟件的仿真效果,三維動(dòng)畫(huà)仿真能更加直觀地表現(xiàn)出智能體跟蹤運(yùn)動(dòng)過(guò)程。

      4.3 仿真過(guò)程控制

        在對(duì)跟蹤控制問(wèn)題的研究過(guò)程中,為了改進(jìn)智能體模型或者控制器性能,需要詳細(xì)觀察智能體某個(gè)階段的運(yùn)動(dòng)軌跡形態(tài)。為了達(dá)到此要求,設(shè)計(jì)開(kāi)發(fā)過(guò)程控制模塊,實(shí)現(xiàn)對(duì)仿真過(guò)程的實(shí)時(shí)控制。該模塊主要設(shè)計(jì)了兩種鍵盤(pán)控制功能,即速度調(diào)整和視點(diǎn)調(diào)整。

        速度調(diào)整是在創(chuàng)建系統(tǒng)形體的間隙設(shè)置額外的延遲時(shí)間來(lái)調(diào)控仿真速度。設(shè)計(jì)在f1~f6按鍵響應(yīng)程序中分別設(shè)置六個(gè)檔次的速度。

        視點(diǎn)調(diào)整是設(shè)計(jì)用幾何變換法來(lái)改變視點(diǎn)的位置。該方法的設(shè)計(jì)原理如圖7所示。



      圖7 幾何變換設(shè)計(jì)原理圖

        圖7中,o為軌跡中心;ρ為由o指向視點(diǎn)的矢量;視點(diǎn)坐標(biāo)(x,y)為矢量ρ分別在x軸和y軸上的投影值;圓環(huán)面l為xoy平面上的視點(diǎn)調(diào)整區(qū)域,由ρ的模最大值和最小值來(lái)界定;上、下方向鍵分別用于調(diào)整ρ變大、變小;左、右方向鍵用于調(diào)整視點(diǎn)在l內(nèi)以o為圓心ρ為半徑的圓環(huán)上分別向左、向右移動(dòng)?;谠搸缀巫儞Q法的設(shè)計(jì),在仿真運(yùn)行過(guò)程中,通過(guò)控制模塊向軟件發(fā)出指令,就能夠?qū)崿F(xiàn)視點(diǎn)360°全方位移動(dòng)和觀察距離的調(diào)整。圖8為經(jīng)過(guò)視點(diǎn)調(diào)整后看到的仿真圖像。



      圖8 軌跡交接放大圖

        從圖8中能夠觀察到各條跟蹤軌跡接近目標(biāo)軌跡前的形態(tài)以及接近的位置,進(jìn)而判斷各系統(tǒng)模型或跟蹤控制器的優(yōu)劣,為改進(jìn)它們的參數(shù)提供了實(shí)驗(yàn)依據(jù)。

      5 結(jié)束語(yǔ)

        本文根據(jù)智能跟蹤控制系統(tǒng)研究的需要,開(kāi)發(fā)出三維動(dòng)畫(huà)仿真軟件。該軟件具有以下突出優(yōu)點(diǎn):采用數(shù)據(jù)導(dǎo)入的思想,使軟件擺脫數(shù)據(jù)來(lái)源復(fù)雜的限制,拓寬了該仿真軟件的使用范圍;設(shè)計(jì)視點(diǎn)幾何變換法等,實(shí)現(xiàn)仿真過(guò)程的實(shí)時(shí)可操作特性,從而提高了其作為仿真研究的價(jià)值;采用模塊化設(shè)計(jì),結(jié)構(gòu)緊湊合理,可重用性和擴(kuò)展性較強(qiáng)。實(shí)驗(yàn)表明該軟件視覺(jué)表現(xiàn)力強(qiáng),性能穩(wěn)定,為智能跟蹤控制系統(tǒng)的研究提供了一個(gè)良好的仿真工具,其設(shè)計(jì)思想和方法對(duì)其他仿真軟件的設(shè)計(jì)也有參考價(jià)值。

      文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。

      主站蜘蛛池模板: 国产成人精品久久一区二区三区av| 色一乱一伦一区一直爽| 国产成人精品一区二三区熟女| 国产成人免费一区二区三区| 久久精品国产亚洲一区二区三区| 亚洲AV乱码一区二区三区林ゆな | 精品一区二区三区在线播放视频 | 在线观看国产一区二三区| 韩国一区二区三区| 日韩精品无码一区二区中文字幕| 一区二区在线视频免费观看| 综合一区自拍亚洲综合图区| 精品无码av一区二区三区| 真实国产乱子伦精品一区二区三区 | 成人免费视频一区二区| 日韩一区二区超清视频| 中日韩一区二区三区| 日韩精品一区二区三区视频| 欧美日韩精品一区二区在线视频 | 国产人妖视频一区二区| 一区二区三区免费看| 国产在线观看一区二区三区四区 | 高清国产AV一区二区三区| 亚洲国产精品成人一区| 亚州国产AV一区二区三区伊在| 国产伦精品一区二区三区无广告| 国产成人精品一区二三区 | 日本精品一区二区三区在线视频一 | 亚洲一区中文字幕| 国产乱码一区二区三区四| 亚洲乱码一区二区三区国产精品| 国产韩国精品一区二区三区久久| 国产一区二区三区免费| 无码少妇一区二区| 麻豆AV无码精品一区二区 | 中文字幕精品一区二区三区视频| av无码人妻一区二区三区牛牛 | 国产福利一区二区| 好爽毛片一区二区三区四| 国模精品一区二区三区| 国产一区二区内射最近更新|