羅喜霜,宋 亮,雷 瑋,鄭 亮,金海洋
(北京經(jīng)緯恒潤(rùn)科技有限公司,北京 100191)
基于模型的預(yù)警無(wú)人機(jī)飛控系統(tǒng)開發(fā)與驗(yàn)證
羅喜霜,宋 亮,雷 瑋,鄭 亮,金海洋
(北京經(jīng)緯恒潤(rùn)科技有限公司,北京 100191)
為應(yīng)對(duì)城市低空預(yù)警任務(wù)對(duì)固定翼無(wú)人機(jī)飛控系統(tǒng)自主飛行需求,采用基于模型設(shè)計(jì)方法完成無(wú)人機(jī)飛控系統(tǒng)開發(fā)與驗(yàn)證;開發(fā)過程中以飛控算法模型為中心,逐級(jí)開展飛控算法模型設(shè)計(jì)與數(shù)學(xué)仿真、算法快速原型驗(yàn)證以及飛控系統(tǒng)硬件產(chǎn)品實(shí)現(xiàn);飛控算法模型在Matlab/Simulink平臺(tái)中完成了構(gòu)建及數(shù)學(xué)仿真驗(yàn)證,結(jié)合Higale系統(tǒng)提供的實(shí)時(shí)仿真環(huán)境完成算法快速原型驗(yàn)證,基于代碼自動(dòng)生成方式將算法模型自動(dòng)轉(zhuǎn)換為可在DSP中運(yùn)行的實(shí)時(shí)代碼,下載到飛控計(jì)算機(jī)中,進(jìn)行硬件在回路仿真驗(yàn)證,并進(jìn)一步進(jìn)行整機(jī)地面驗(yàn)證;經(jīng)過實(shí)踐,所提出的飛控系統(tǒng)開發(fā)與驗(yàn)證流程可以將系統(tǒng)設(shè)計(jì)中存在的問題缺陷在開發(fā)早期暴露出來并及時(shí)修正,保證了系統(tǒng)研制進(jìn)度、成本和品質(zhì)。
基于模型的系統(tǒng)設(shè)計(jì)方法;Higale實(shí)時(shí)仿真系統(tǒng);硬件在回路;快速原型;代碼自動(dòng)生成
隨著無(wú)人機(jī)技術(shù)的普及和發(fā)展,城市低空空域態(tài)勢(shì)愈發(fā)復(fù)雜,低空域事件具有突發(fā)、隱蔽、難處置及威脅大等特點(diǎn),容易成為城市安全隱患,因此亟需完善低空空域應(yīng)急預(yù)警手段。
考慮到響應(yīng)快速性和使用靈活性,采用中型固定翼無(wú)人機(jī)作為低空空域預(yù)警執(zhí)行手段。飛控系統(tǒng)是無(wú)人機(jī)最核心的機(jī)載系統(tǒng),決定了其任務(wù)執(zhí)行能力。特別的,城市低空空域飛行限制較多,存在飛行區(qū)域、飛行高度等諸多約束,使得無(wú)人機(jī)可行飛行路徑不是任意的,存在禁飛區(qū)域。為了靈活應(yīng)對(duì)突發(fā)事件,無(wú)人機(jī)必須能夠自主進(jìn)行航路規(guī)劃繞開禁飛區(qū)域執(zhí)行任務(wù)。航路規(guī)劃得到的航路后將由自動(dòng)飛行控制執(zhí)行,實(shí)現(xiàn)航路跟蹤,是航路規(guī)劃功能的執(zhí)行基礎(chǔ),決定了無(wú)人機(jī)飛行品質(zhì)。所研無(wú)人機(jī)飛控系統(tǒng)的核心算法即由自適應(yīng)航路規(guī)劃和自動(dòng)飛行控制兩部分組成。
所研飛控系統(tǒng)主要包括飛控計(jì)算機(jī)(簡(jiǎn)稱控制器)、傳感器和執(zhí)行機(jī)構(gòu)。其中傳感器、執(zhí)行機(jī)構(gòu)均采用貨架產(chǎn)品,通過任務(wù)需求分解出功能性能要求進(jìn)行設(shè)備選型??刂破魇秋w控系統(tǒng)的核心,通常小型消費(fèi)級(jí)無(wú)人機(jī)飛控多采用開源飛控構(gòu)架,如Ardunio、APM以及PixHawk等。然而開源飛控硬件性能通常較低,不能滿足較高復(fù)雜度飛控算法的計(jì)算要求,且其軟件構(gòu)架存在較多冗余,無(wú)法充分利用硬件資源。因此一些涉及復(fù)雜算法或高級(jí)應(yīng)用的無(wú)人機(jī)飛控系統(tǒng)常采用DSP作為核心計(jì)算單元[1],輔以外圍電路與其他機(jī)載設(shè)備通信。所研無(wú)人機(jī)飛控計(jì)算機(jī)以兩片高性能計(jì)算機(jī)為計(jì)算中心運(yùn)行核心算法。
作為機(jī)載安全關(guān)鍵系統(tǒng),在整機(jī)試飛前的各個(gè)設(shè)計(jì)開發(fā)環(huán)節(jié),需要逐階段對(duì)其進(jìn)行全面的試驗(yàn)驗(yàn)證,保證其功能性能符合設(shè)計(jì)要求。對(duì)于中大型無(wú)人機(jī),功能復(fù)雜性和可靠性要求的提高使得飛控系統(tǒng)也變得復(fù)雜,為了高效進(jìn)行新機(jī)型飛控系統(tǒng)的研發(fā)及成熟機(jī)型飛控的改進(jìn),需要在系統(tǒng)逐步成型的過程中對(duì)設(shè)計(jì)和實(shí)現(xiàn)進(jìn)行充分的驗(yàn)證,保證在系統(tǒng)進(jìn)入下一階段研制流程前將所有潛在問題暴露出來并解決,為下一階段研制提供一個(gè)盡量干凈的基礎(chǔ)。然而這一需求目前并沒有得到無(wú)人機(jī)行業(yè)的普遍重視。相比于無(wú)人機(jī),目前國(guó)內(nèi)有人機(jī)各主機(jī)所在型號(hào)研發(fā)的過程中更加重視研發(fā)各個(gè)階段的確認(rèn)與驗(yàn)證工作,以便在型號(hào)早期盡可能多地暴露設(shè)計(jì)、制造缺陷,及時(shí)進(jìn)行技術(shù)變更,確保產(chǎn)品技術(shù)狀態(tài)滿足當(dāng)前階段的要求,為后續(xù)工作奠定堅(jiān)實(shí)基礎(chǔ),進(jìn)而達(dá)到縮短研發(fā)周期、降低研發(fā)成本的目的。
基于模型的飛控系統(tǒng)開發(fā)的核心是飛控算法軟件,其設(shè)計(jì)驗(yàn)證流程主要包括算法建立與數(shù)學(xué)仿真驗(yàn)證、半實(shí)物仿真驗(yàn)證(又可分為算法快速原型和硬件在回路)、整機(jī)地面聯(lián)試與飛行試驗(yàn)。在控制系統(tǒng)設(shè)計(jì)領(lǐng)域,SCADE[2]和Simulink[3]是應(yīng)用較多的開發(fā)環(huán)境。SCADE價(jià)格昂貴,在機(jī)載軟件適航性驗(yàn)證方面做得更好,多為國(guó)內(nèi)有人機(jī)主機(jī)所使用,并在某些機(jī)型飛控系統(tǒng)開發(fā)中強(qiáng)制使用;而Matlab/Simulink依托其在控制系統(tǒng)設(shè)計(jì)仿真方面全面的表現(xiàn)使其在中小型無(wú)人機(jī)飛控開發(fā)中有很好的應(yīng)用前景。
由于飛控系統(tǒng)硬件設(shè)備多為貨架產(chǎn)品,本文將圍繞飛控核心算法的設(shè)計(jì)與開發(fā)進(jìn)行展開,論文范圍包括飛控算法模型建立與數(shù)學(xué)仿真驗(yàn)證、飛控算法快速原型、飛控設(shè)備硬件在回路、整機(jī)地面聯(lián)試。在無(wú)人機(jī)飛控系統(tǒng)的開發(fā)過程中,實(shí)踐了上述研發(fā)方法并結(jié)合所研固定翼直升機(jī)特點(diǎn)進(jìn)行了針對(duì)性的改進(jìn),給出了各流程的詳細(xì)方法和關(guān)鍵點(diǎn),旨在探索一種高效的、可標(biāo)準(zhǔn)化的無(wú)人機(jī)飛控研發(fā)流程行業(yè)準(zhǔn)則。
采用Matlab/Simulink軟件作為無(wú)人機(jī)飛控系統(tǒng)開發(fā)環(huán)境,充分利用其圖形化設(shè)計(jì)、代碼自動(dòng)生成以及豐富的控制系統(tǒng)設(shè)計(jì)工具,快速可靠地完成飛控算法軟件從數(shù)學(xué)仿真、快速原型到硬件在回路仿真的完整流程,逐層實(shí)現(xiàn)飛控系統(tǒng)功能性能驗(yàn)證,基于模型的預(yù)警無(wú)人機(jī)飛控系統(tǒng)開發(fā)驗(yàn)證流程如圖1所示。各個(gè)研制階段均以算法模型為基礎(chǔ),所有變更均直接體現(xiàn)在模型上,并基于模型生成各階段所用的代碼。
圖1 基于模型的無(wú)人機(jī)飛控系統(tǒng)開發(fā)驗(yàn)證流程
根據(jù)預(yù)警無(wú)人機(jī)需自主實(shí)現(xiàn)城市復(fù)雜環(huán)境下低空巡航與應(yīng)急處置的需求,確定飛控系統(tǒng)應(yīng)具有自適應(yīng)路徑規(guī)劃和自動(dòng)飛行控制功能。綜合考慮已有技術(shù)儲(chǔ)備和功能需求,確定了基于通視圖法的自適應(yīng)規(guī)劃算法和常規(guī)自動(dòng)飛行控制算法實(shí)現(xiàn)方案。在Matlab/Simulink環(huán)境下完成無(wú)人機(jī)本體模型、環(huán)境模型、傳感器/舵機(jī)模型、自適應(yīng)航路規(guī)劃和自動(dòng)飛控算法建模,并進(jìn)行不同層級(jí)的仿真,驗(yàn)證算法模型的功能性能滿足頂層需求。在項(xiàng)目前已經(jīng)辨識(shí)出自適應(yīng)航路規(guī)劃算法模型需要消耗較多存儲(chǔ)資源,在算法模型開發(fā)完成并經(jīng)過數(shù)學(xué)仿真驗(yàn)證后,初步確定了其資源消耗需求,并基于此進(jìn)行飛控計(jì)算機(jī)硬件選型?;贖igale實(shí)時(shí)仿真系統(tǒng),通過代碼自動(dòng)生成技術(shù)實(shí)現(xiàn)Simulink算法模型的快速原型驗(yàn)證,驗(yàn)證算法模型功能性能,并初步驗(yàn)證系統(tǒng)接口?;贒SP的飛控計(jì)算機(jī)硬件開發(fā)完成后,采用代碼自動(dòng)生成方式快速生成可在DSP中運(yùn)行的飛控軟件代碼,并基于Higale系統(tǒng)提供的閉環(huán)仿真環(huán)境,實(shí)現(xiàn)核心飛控系統(tǒng)硬件在回路仿真驗(yàn)證。飛控系統(tǒng)研制過程中,每個(gè)開發(fā)環(huán)節(jié)在充分驗(yàn)證后解決所有暴露問題后再進(jìn)入下一環(huán)節(jié),若通過驗(yàn)證發(fā)現(xiàn)前一階段的某項(xiàng)設(shè)計(jì)存在缺陷,則需要追溯前一階段的設(shè)計(jì)對(duì)問題項(xiàng)進(jìn)行改進(jìn)。隨著設(shè)計(jì)的進(jìn)行,系統(tǒng)中潛在的缺陷均在其可能出現(xiàn)的早期進(jìn)行修復(fù),避免同一問題潛伏至開發(fā)后期造成成本和開發(fā)周期上更大的損失。
飛控系統(tǒng)功能模塊主要包括控制器、傳感器和執(zhí)行機(jī)構(gòu)。此外,飛控系統(tǒng)與地面站系統(tǒng)和探測(cè)系統(tǒng)存在閉環(huán)交聯(lián),系統(tǒng)組成原理如圖2所示。
圖2 飛控系組成框圖
控制器核心飛控算法為自適應(yīng)航路規(guī)劃算法和自動(dòng)飛行控制算法,由于算法復(fù)雜性較高,控制器電路板圍繞TMS320C28346這款高性能微處理器搭建并輔以外圍電路?;谀K化思想,考慮功能驗(yàn)證便利性,自適應(yīng)航路規(guī)劃模塊和自動(dòng)飛控模塊在兩塊電路板中實(shí)現(xiàn),并安裝在同一結(jié)構(gòu)件中。
傳感器和執(zhí)行機(jī)構(gòu)根據(jù)飛行任務(wù)分解得到的性能指標(biāo)進(jìn)行選型。自適應(yīng)航路規(guī)劃算法以無(wú)人機(jī)經(jīng)緯高、速度、航向?yàn)檩斎?,自?dòng)飛行控制算法以三軸姿態(tài)及角速度、航向、法向過載、速度為輸入,因此確定傳感器包括三軸陀螺+三軸加表MEMS慣導(dǎo)器件、衛(wèi)星導(dǎo)航設(shè)備、無(wú)線電高度表、氣壓高度表及磁航向傳感器。此外,自適應(yīng)航路規(guī)劃模塊的障礙規(guī)避功能需要光學(xué)+雷達(dá)探測(cè)載荷的測(cè)量信息,這部分探測(cè)功能由專門的探測(cè)預(yù)警系統(tǒng)提供??紤]到所研無(wú)人機(jī)飛行包線較小,無(wú)需大范圍的系統(tǒng)調(diào)參,故在基本配置中沒有包含大氣參數(shù)相關(guān)傳感器。
預(yù)警無(wú)人機(jī)以自主飛行為主要模式,手動(dòng)控制模式備份。飛控系統(tǒng)通過鏈路終端與地面站通信,接收手動(dòng)控制指令和地面任務(wù)設(shè)置指令。
所研飛控算法基于Matlab/Simulink開發(fā)環(huán)境,采用基于模型的設(shè)計(jì)范式,借助其圖形化設(shè)計(jì)、早期驗(yàn)證、代碼自動(dòng)生成等特性和較為完備的建模與控制系統(tǒng)設(shè)計(jì)工具箱,提高開發(fā)質(zhì)量與進(jìn)度。飛控算法的核心是自動(dòng)飛行控制算法和自適應(yīng)航路規(guī)劃算法,自動(dòng)飛行控制直接作用于無(wú)人機(jī)本體,決定無(wú)人機(jī)飛行品質(zhì)。自適應(yīng)航路規(guī)劃為自動(dòng)飛控外環(huán),兩者串級(jí)實(shí)現(xiàn)無(wú)人機(jī)自主飛行功能。為了對(duì)核心飛控算法進(jìn)行閉環(huán)驗(yàn)證,需要無(wú)人機(jī)本體模型、環(huán)境場(chǎng)模型、舵機(jī)以及傳感器模型。
無(wú)人機(jī)本體模型是飛控算法的被控對(duì)象,其準(zhǔn)確程度是算法參數(shù)乃至算法結(jié)構(gòu)有效與否的關(guān)鍵。一般地,獲取本體模型的方法包括理論分析、風(fēng)動(dòng)試驗(yàn)和飛行試驗(yàn)[4]。風(fēng)動(dòng)試驗(yàn)和飛行試驗(yàn)?zāi)軌颢@得較為準(zhǔn)確的模型。但風(fēng)動(dòng)試驗(yàn)代價(jià)較大,一些低成本項(xiàng)目無(wú)法承受。而飛行試驗(yàn)在無(wú)人機(jī)研發(fā)后期才能進(jìn)行,一般作為本體模型最終驗(yàn)證與改進(jìn)的途徑。理論分析方法可以在項(xiàng)目初期給出一個(gè)在較大范圍內(nèi)可信的本體模型用于飛控算法設(shè)計(jì)開發(fā)。
由于所研無(wú)人機(jī)的氣動(dòng)外形與動(dòng)力系統(tǒng)均為全新設(shè)計(jì),且無(wú)風(fēng)洞試驗(yàn)條件,因此需要在研發(fā)前期采用理論分析方法進(jìn)行本體建模。采用Simulink航空宇航工具箱中的固定翼飛機(jī)氣動(dòng)建模模塊DATCOM,建立初步的自動(dòng)飛控被控對(duì)象。DATCOM模塊使用NASA開源建模軟件digital DATCOM解算的結(jié)果,將所研無(wú)人機(jī)幾何參數(shù)和質(zhì)量參數(shù)輸入digital DATCOM中即可得到Simulink中可用的氣動(dòng)力氣動(dòng)力矩計(jì)算模塊。DATCOM模塊以迎角、側(cè)滑角、Ma數(shù)等飛行參數(shù)為輸入,輸出對(duì)應(yīng)該狀態(tài)的氣動(dòng)力和氣動(dòng)力矩并作用到六自由度飛機(jī)方程,作為無(wú)人機(jī)氣動(dòng)計(jì)算環(huán)節(jié)實(shí)現(xiàn)閉環(huán)控制仿真驗(yàn)證。
在數(shù)學(xué)仿真驗(yàn)證階段,基于Digital DATCOM得到的本體模型雖然準(zhǔn)確度有限,但足夠作為飛控算法開發(fā)的基礎(chǔ)。該本體模型將在飛行試驗(yàn)中通過系統(tǒng)辨識(shí)進(jìn)行修正。
基于通視圖法進(jìn)行自適應(yīng)航路規(guī)劃算法設(shè)計(jì),并基于Matlab進(jìn)行算法建模。自適應(yīng)航路規(guī)劃算法是飛控系統(tǒng)的最外環(huán),其輸入條件為起始點(diǎn)和禁飛區(qū)信息,不依賴于無(wú)人機(jī)本體和自動(dòng)飛控模塊,對(duì)該算法的仿真驗(yàn)證可以開環(huán)進(jìn)行。自適應(yīng)航路規(guī)劃算法的執(zhí)行包括5個(gè)步驟:
1)規(guī)范禁飛區(qū):將不規(guī)則幾何形狀的禁飛區(qū)都等效為圓形禁飛區(qū);
2)采用圓的內(nèi)外公切線的方法,求解起點(diǎn)位置到終點(diǎn)位置間的所有直線可行路徑,各直線可行路徑與圓形禁飛區(qū)域的交點(diǎn)是可行航路點(diǎn),
3)根據(jù)所有直線可行路徑求解從起點(diǎn)位置到終點(diǎn)位置間的所有可行航線,將路徑最短的可行航線確定為最優(yōu)航線;
4)根據(jù)最優(yōu)航線與最優(yōu)航線上可行航路點(diǎn)的屬性,確定起點(diǎn)位置到終點(diǎn)位置間的最優(yōu)路徑。
自動(dòng)飛控算法模型以航路規(guī)劃給出的航線信息控制無(wú)人機(jī)進(jìn)行航線跟蹤,包括導(dǎo)引功能、自動(dòng)駕駛功能和控制增穩(wěn)功能。自動(dòng)飛控算法需要保證除起飛降落模式以外的全包線飛行品質(zhì),因此對(duì)非線性本體模型根據(jù)飛行包線范圍選取若干工作點(diǎn)進(jìn)行配平并線性化得到線性被控對(duì)象,然后分別針對(duì)不同被控對(duì)象進(jìn)行控制器設(shè)計(jì)。采用經(jīng)典控制系統(tǒng)設(shè)計(jì)方法,設(shè)計(jì)內(nèi)容主要包括俯仰、滾轉(zhuǎn)、偏航通道前向通路指令成型濾波器、角速率洗出濾波器及前向通道控制參數(shù)的設(shè)計(jì),具體構(gòu)型參考[5]。進(jìn)行控制器設(shè)計(jì)時(shí)充分利用Simulink控制系統(tǒng)工具箱提高設(shè)計(jì)過程的自動(dòng)化程度:采用配平函數(shù)及工具直接對(duì)模型進(jìn)行配平,獲得平衡點(diǎn);基于平衡點(diǎn)自動(dòng)進(jìn)行線性化得到線性被控對(duì)象;采用Simulink System Tuner進(jìn)行多通道耦合控制器優(yōu)化,獲得控制器、濾波器和增益環(huán)節(jié)的參數(shù)。基于線性化模型設(shè)計(jì)的控制器首先與線性模型組成簡(jiǎn)單閉環(huán),進(jìn)行仿真驗(yàn)證。針對(duì)所有平衡點(diǎn)完成控制器設(shè)計(jì)后,將控制器與原非線性模型組成閉環(huán),針對(duì)單一平衡點(diǎn)進(jìn)行飛控效果的驗(yàn)證。然后以平衡點(diǎn)參數(shù)作為插值變量對(duì)所有控制器進(jìn)行插值調(diào)用,并針對(duì)全飛行包線進(jìn)行閉環(huán)仿真驗(yàn)證,確認(rèn)控制器在全包線飛行時(shí)的功能與性能。
自動(dòng)飛控按照縱側(cè)向解耦方式實(shí)現(xiàn)垂直面和水平面控制。垂直面自動(dòng)駕駛包括高度保持和定速爬升兩種模式,垂直導(dǎo)航系統(tǒng)通過升降舵在垂直面控制飛機(jī)按預(yù)定垂直速度爬升或下降進(jìn)入某一高度,并進(jìn)行高度保持。垂直速度和高度保持的控制回路的內(nèi)回路均為俯仰角控制。水平面控制通過副翼和方向舵兩個(gè)通道的耦合控制飛機(jī)在水平面的軌跡運(yùn)動(dòng)。副翼通道為主通道,方向舵為輔助通道,后者只起到阻尼和協(xié)調(diào)轉(zhuǎn)彎的作用,通過副翼控制飛機(jī)轉(zhuǎn)彎以便修正飛機(jī)的軌跡。
環(huán)境場(chǎng)主要為風(fēng)場(chǎng),直接使用Simulink航空宇航工具箱中的風(fēng)切變模型、剖面模型和紊流模型建立不同的風(fēng)環(huán)境,實(shí)現(xiàn)對(duì)算法的充分驗(yàn)證。傳感器模型模擬真實(shí)傳感器的動(dòng)態(tài)特性和噪聲特性,本體模型輸出的飛行參數(shù)經(jīng)過該模型轉(zhuǎn)換為傳感器測(cè)量參數(shù)作為飛控算法模型的輸入。傳感器特性的引入可以使飛控算法的閉環(huán)仿真環(huán)境更貼近實(shí)際,驗(yàn)證結(jié)果更加可信。傳感器模型的搭建主要根據(jù)所選傳感器標(biāo)定文檔所提功能的數(shù)據(jù)。舵機(jī)模型根據(jù)所選型號(hào)的動(dòng)態(tài)特性進(jìn)行建模,需準(zhǔn)確建模出舵回路的帶寬。
將自動(dòng)飛行飛控算法模型、自適應(yīng)航路規(guī)劃算法模型與其他輔助模型組成飛控閉環(huán),在Simulink環(huán)境下進(jìn)行任務(wù)級(jí)仿真驗(yàn)證,驗(yàn)證完整飛控算法的功能和性能。
根據(jù)預(yù)警無(wú)人機(jī)的任務(wù)特性,設(shè)置仿真場(chǎng)景。根據(jù)城市空管要求建立禁飛區(qū)域,將常規(guī)巡航飛行模式和應(yīng)急飛行模式結(jié)合,選擇不同的風(fēng)場(chǎng)環(huán)境,完成場(chǎng)景配置。在Simulink中進(jìn)行非實(shí)時(shí)閉環(huán)仿真,自適應(yīng)航路規(guī)劃方面主要驗(yàn)證所規(guī)劃航線的合理性和最優(yōu)性,自動(dòng)飛控方面主要考察實(shí)際飛行路線對(duì)規(guī)劃航線的跟蹤性能以及姿態(tài)變化的動(dòng)態(tài)性。
飛控算法快速原型是飛控核心算法與飛控系統(tǒng)硬件設(shè)備聯(lián)試的第一步,可以對(duì)實(shí)時(shí)環(huán)境下算法功能性能進(jìn)行快速驗(yàn)證,并對(duì)接口通信功能進(jìn)行初步驗(yàn)證??焖僭椭兴玫娘w控軟件由經(jīng)過數(shù)學(xué)仿真驗(yàn)證的算法模型自動(dòng)生成,并在Higale實(shí)時(shí)仿真系統(tǒng)中運(yùn)行。在快速原型階段,需要為飛控算法提供實(shí)時(shí)、完整的閉環(huán)驗(yàn)證環(huán)境,全面充分地激勵(lì)算法特性。
HiGale 系統(tǒng)是一套基于半實(shí)物實(shí)時(shí)仿真技術(shù)的控制系統(tǒng)開發(fā)及測(cè)試的工作平臺(tái)。無(wú)人機(jī)飛控系統(tǒng)的開發(fā)過程中的快速原型及硬件在回路仿真均以Higale系統(tǒng)為支撐環(huán)境開展。系統(tǒng)由仿真機(jī)及IO板卡等硬件,和HigaleTarget/Higale RTD/HigaleView等軟件組成。系統(tǒng)硬件基于高可靠性 cPCI/PXI 總線,多套硬件設(shè)備可構(gòu)成分布式仿真系統(tǒng)。系統(tǒng)基于RTW技術(shù)通過HigaleTarget與 Simulink 軟件無(wú)縫連接,提供仿真模型的代碼生成、編譯、下載等功能,并支持QNX 及VxWorks 實(shí)時(shí)操作系統(tǒng)。HiGaleRTD為實(shí)時(shí)驅(qū)動(dòng)軟件庫(kù),提供多種IO通信驅(qū)動(dòng)能力,實(shí)現(xiàn)Simulink 模型與硬件平臺(tái)間的無(wú)縫銜接。 HiGaleView為實(shí)驗(yàn)管理軟件,內(nèi)置豐富的虛擬儀器儀表控件,可實(shí)現(xiàn)仿真數(shù)據(jù)實(shí)時(shí)顯示、存儲(chǔ),控制參數(shù)在線調(diào)整。
4.1.1 IO接口模型
數(shù)學(xué)仿真階段使用的模型中沒有IO通信功能,需基于HigaleRTD的IO接口驅(qū)動(dòng)模塊實(shí)現(xiàn)該功能。根據(jù)接口類型,在HigaleRTD庫(kù)中選擇對(duì)應(yīng)的通信模塊,并根據(jù)通信協(xié)議進(jìn)行總線數(shù)據(jù)的打解包和通信參數(shù)設(shè)置。
4.1.2 飛控軟件自動(dòng)生成
基于HigaleTarget將飛控算法模型直接轉(zhuǎn)換成可在實(shí)時(shí)仿真系統(tǒng)中運(yùn)行的、c語(yǔ)言形式的飛控軟件。在搭建模型時(shí)應(yīng)充分考慮建模限制,所研飛控算法最終需要下載到DSP中運(yùn)行,因此其對(duì)應(yīng)的模型必須使用discrete離散求解器,相應(yīng)的,算法模型及輔助模型必須滿足離散求解器的要求,不能使用連續(xù)狀態(tài)模塊。此外,對(duì)于具有可變形參的Matlab函數(shù),如取模函數(shù)norm,在生成代碼時(shí)會(huì)根據(jù)維數(shù)、數(shù)據(jù)類型的不同生成多個(gè)函數(shù)體實(shí)現(xiàn),且會(huì)根據(jù)內(nèi)部機(jī)制生成一個(gè)超限的中間變量,使得在DSP開發(fā)環(huán)境中編譯錯(cuò)誤。這種情況下應(yīng)采用非向量操作的等價(jià)算法取代問題函數(shù)。
預(yù)警無(wú)人機(jī)飛控算法快速原型以Higale實(shí)時(shí)仿真系統(tǒng)為核心,系統(tǒng)由三臺(tái)實(shí)時(shí)仿真機(jī)、上位機(jī)、以太網(wǎng)交換機(jī)和無(wú)人機(jī)手動(dòng)操作設(shè)備構(gòu)成。實(shí)時(shí)仿真機(jī)由NI PXI-1044機(jī)箱、NI-8430 RS232串口通信板卡和處理器板卡。
在實(shí)際使用時(shí),自適應(yīng)航路規(guī)劃和自動(dòng)飛控算法軟件在兩個(gè)獨(dú)立的DSP中運(yùn)行,為了盡可能模擬飛控系統(tǒng)真實(shí)物理環(huán)境,在快速原型階段將兩者分別在兩臺(tái)仿真機(jī)中下載。自適應(yīng)航路規(guī)劃與自動(dòng)飛控均需接收傳感器的數(shù)據(jù),且自動(dòng)飛控模塊需向舵機(jī)伺服控制器發(fā)送控制指令,為了模擬真實(shí)接口,將相關(guān)模型下載到另一臺(tái)仿真機(jī)中。仿真機(jī)分配所遵循的思想是,關(guān)鍵模塊間的通信接口與實(shí)際使用接口一致,具有相同的接口類型、接口參數(shù)和通信協(xié)議,關(guān)鍵算法應(yīng)具有與實(shí)際使用情況相同的獨(dú)立運(yùn)行環(huán)境。根據(jù)系統(tǒng)通信設(shè)計(jì),傳感器、自適應(yīng)航路規(guī)劃模塊、自動(dòng)飛控模塊、舵機(jī)控制器均通過RS232進(jìn)行數(shù)據(jù)傳輸,在快速原型系統(tǒng)中通過NI-8430板卡提供總線模擬。
在快速原型仿真中,HigaleView、HigaleTarget以及Matlab/Simulink運(yùn)行在上位機(jī)中,試驗(yàn)人員通過上位機(jī)控制試驗(yàn)的進(jìn)行,包括模型代碼自動(dòng)生成與下載、實(shí)時(shí)仿真控制、在線調(diào)參與數(shù)據(jù)實(shí)時(shí)顯示。
對(duì)于所研無(wú)人機(jī),由于條件所限,無(wú)法為驗(yàn)證系統(tǒng)配備完整的硬件環(huán)境,核心的外部激勵(lì)參數(shù)均由實(shí)時(shí)仿真系統(tǒng)模擬??焖僭偷哪康氖牵谙嗤娘w行仿真條件下,確保實(shí)時(shí)運(yùn)行的原型飛控算法控制結(jié)果與數(shù)學(xué)仿真階段得到的結(jié)果在一定范圍內(nèi)是一致的。在符合建模規(guī)范的前提下,算法模型轉(zhuǎn)換到實(shí)時(shí)仿真代碼的過程不會(huì)造成顯著的結(jié)果失配。造成結(jié)果不一致的可能原因主要包括模型拆分帶來的模塊執(zhí)行順序變化、物理接口引入帶來的信號(hào)順序變化等。尤其對(duì)于復(fù)雜模型,拆分后的輸入輸出端口被真實(shí)物理接口連接,在每一個(gè)仿真周期中有可能會(huì)引入額外延遲。由于在進(jìn)行飛控算法設(shè)計(jì)時(shí)考慮了系統(tǒng)的魯棒性,延遲數(shù)據(jù)對(duì)計(jì)算部分影響較小,但對(duì)自主飛行導(dǎo)引邏輯的影響較大,可能會(huì)激發(fā)出潛在邏輯缺陷,而這些缺陷在原模型中是體現(xiàn)不出來的。
算法快速原型仿真中執(zhí)行與數(shù)學(xué)仿真階段相同的仿真算例,將得到的仿真結(jié)果與數(shù)學(xué)仿真結(jié)果進(jìn)行對(duì)比,包括時(shí)域和頻域方面。時(shí)域方面,對(duì)比結(jié)果應(yīng)有相似的趨勢(shì),且偏差應(yīng)在給定范圍內(nèi)且沒有顯著的、非預(yù)期的超調(diào),沒有必要追求絕對(duì)的一致性;頻域方面,控制內(nèi)環(huán)、導(dǎo)引外環(huán)等各環(huán)節(jié)的穩(wěn)定裕度應(yīng)與數(shù)學(xué)仿真相似。由于Simulink的代碼生成功能確保了模型與代碼的一致性,若結(jié)果不滿足以上要求,則應(yīng)重點(diǎn)檢查信號(hào)時(shí)序和邏輯方面的問題。比較好的檢查方法是做飛控系統(tǒng)的極性與傳動(dòng)比試驗(yàn),得到算法關(guān)鍵環(huán)節(jié)輸入輸出的關(guān)系,并與數(shù)學(xué)仿真階段結(jié)果進(jìn)行對(duì)比,確定問題發(fā)生的位置。
在快速原型仿真中,經(jīng)過問題排查,最終得到的仿真結(jié)果與采用相同算例的數(shù)學(xué)仿真結(jié)果具有很高的一致性,驗(yàn)證了算法功能的正確性。圖 3給出了在某一測(cè)試算例下數(shù)學(xué)仿真(roll)和快速原型仿真(roll_rcp)中姿態(tài)角的結(jié)果對(duì)比,兩者具有很好的一致性。
圖3 姿態(tài)角結(jié)果對(duì)比
完整的飛控系統(tǒng)半實(shí)物仿真應(yīng)包括飛控系統(tǒng)主要設(shè)備并通過物理效應(yīng)模擬器將所有設(shè)備的真實(shí)工作環(huán)境激勵(lì)出來,如使用轉(zhuǎn)臺(tái)模擬無(wú)人機(jī)姿態(tài)運(yùn)動(dòng)對(duì)陀螺進(jìn)行激勵(lì),使用GPS模擬對(duì)GPS接收機(jī)進(jìn)行激勵(lì),使用舵負(fù)載模擬器對(duì)舵機(jī)施加氣動(dòng)負(fù)載力矩。然而,由于中小型無(wú)人機(jī)項(xiàng)目經(jīng)費(fèi)一般較少,無(wú)法如大型飛機(jī)試驗(yàn)系統(tǒng)提供所有激勵(lì)設(shè)備,傳感器和舵機(jī)等設(shè)備僅參與完整飛控系統(tǒng)的接口驗(yàn)證,閉環(huán)仿真時(shí)僅飛控計(jì)算機(jī)接入。
飛控計(jì)算機(jī)主要包括自動(dòng)飛控板和自適應(yīng)航路規(guī)劃板,分別獨(dú)立運(yùn)行自動(dòng)飛控算法和自適應(yīng)航路規(guī)劃算法。
自適應(yīng)航路規(guī)劃板通過232串口接收地面站上傳的指令及參數(shù)信息,接收各傳感器反饋量,執(zhí)行航跡規(guī)劃算法,計(jì)算出各航點(diǎn)及控制指令,通過另一路232串口下發(fā)至自動(dòng)飛控板。自動(dòng)飛控板通過232串口接收自適應(yīng)航路規(guī)劃板下發(fā)的控制指令及傳感器反饋信息,通過FPGA采集遙控器控制信號(hào)及電機(jī)轉(zhuǎn)速反饋,DSP處理器產(chǎn)生相應(yīng)的控制信號(hào)控制舵機(jī)及動(dòng)力電機(jī)執(zhí)行相應(yīng)動(dòng)作,完成目標(biāo)指令。在飛控系統(tǒng)運(yùn)行時(shí),自動(dòng)飛控板實(shí)時(shí)存儲(chǔ)飛行參數(shù)和關(guān)鍵的飛控算法中間參數(shù),并存儲(chǔ)在SD卡中,以供后續(xù)分析使用。飛控計(jì)算機(jī)功能如圖4所示。
圖4 飛控計(jì)算機(jī)硬件組成框圖
相對(duì)于快速原型,硬件回路仿真中真實(shí)飛控計(jì)算機(jī)硬件將替代仿真機(jī)運(yùn)行的飛控代碼作為實(shí)際的控制單元。系統(tǒng)其他功能與快速原型一致,由Higale仿真機(jī)中的飛行仿真模型生成飛行參數(shù)激勵(lì),HigaleView進(jìn)行實(shí)時(shí)仿真監(jiān)控。
硬件回路仿真中所需的驗(yàn)證科目與快速原型基本一致,通過運(yùn)行與前階段相同的仿真算例,驗(yàn)證系統(tǒng)的時(shí)域和頻域特性。結(jié)合HigaleView和CCS實(shí)現(xiàn)代碼調(diào)試、數(shù)據(jù)監(jiān)控?;贒SP仿真器的調(diào)試功能在CCS中進(jìn)行程序的調(diào)試操作,步進(jìn)程序排查問題;將飛控算法中間變量從測(cè)試接口引出與輸出變量發(fā)送到實(shí)時(shí)仿真機(jī)中,借助HigaleView強(qiáng)大的數(shù)據(jù)可視化功能進(jìn)行數(shù)據(jù)監(jiān)控和保存,保存后的數(shù)據(jù)在Matlab中進(jìn)行進(jìn)一步的對(duì)比分析。
聯(lián)合Matlab/Simulink和CCS(Code Composer Studio)進(jìn)行將飛控算法模型自動(dòng)生成DSP中運(yùn)行飛控代碼,并使用CCS手動(dòng)進(jìn)行必要的代碼微調(diào)。
進(jìn)行DSP飛控代碼自動(dòng)生成時(shí),飛控核心模型仍沿用先前成果,但需要對(duì)IO通信接口驅(qū)動(dòng)重新建模,使用Simulink Embedded Coder工具箱中C2834x專用IO驅(qū)動(dòng)模塊替換快速原型中階段使用的Higale IO驅(qū)動(dòng)模塊,并使用DSP配置模塊進(jìn)行其他必要設(shè)置和資源分配。對(duì)于模塊庫(kù)中不提供的資源驅(qū)動(dòng),需手動(dòng)進(jìn)行功能添加。所研飛控計(jì)算機(jī)采用大容量SD進(jìn)行飛行數(shù)據(jù)存儲(chǔ),模塊庫(kù)中沒有現(xiàn)成的SD卡驅(qū)動(dòng),在CCS環(huán)境下將SD卡驅(qū)動(dòng)和讀寫邏輯手動(dòng)編碼并增加到算法軟件工程中。模型由Simulink到CCS中DSP可執(zhí)行代碼的過程如圖5所示[6]。
圖5 Simulink自動(dòng)生成DSP代碼過程
無(wú)人機(jī)各機(jī)載系統(tǒng)完成地面總裝集成后,對(duì)于飛控系統(tǒng),首先進(jìn)行與其他系統(tǒng)的接口靜態(tài)測(cè)試,確保信號(hào)交聯(lián)正確。然后進(jìn)行核心的飛控系統(tǒng)極性測(cè)試,即確定各個(gè)控制環(huán)節(jié)輸入與舵面響應(yīng)的關(guān)系,保證符合設(shè)計(jì)要求。主要包括操縱桿——舵面、不同模態(tài)下自動(dòng)飛控指令——舵面。手動(dòng)飛行模式下,無(wú)人機(jī)駕駛?cè)藛T的操縱桿指令經(jīng)過內(nèi)環(huán)控制增穩(wěn)后形成舵機(jī)控制指令驅(qū)動(dòng)舵面運(yùn)動(dòng),不同飛行狀態(tài)下相同操縱指令舵面偏轉(zhuǎn)角度甚至方向都是不同的,通過算法代碼中設(shè)置的測(cè)試模塊靜態(tài)設(shè)置若干典型飛行狀態(tài),此時(shí)控制操縱桿進(jìn)行預(yù)設(shè)的作動(dòng),查看舵面偏轉(zhuǎn)的極性,并與標(biāo)稱結(jié)果進(jìn)行對(duì)照。采用相似的方法進(jìn)行自動(dòng)飛控指令到舵面的極性檢驗(yàn)類似。極性驗(yàn)證至關(guān)重要,事實(shí)上,相比于大型有人駕駛飛機(jī),由于中小型固定翼飛機(jī)的飛行包線較小、可控性好,只要控制回路極性正確,控制律參數(shù)在較大范圍都能保證飛機(jī)飛行狀態(tài)的穩(wěn)定。整機(jī)地面試驗(yàn)階段的閉環(huán)仿真中,傳感器和舵機(jī)等核心硬件都具備了試驗(yàn)狀態(tài),但由于沒有模擬器激勵(lì)這些設(shè)備進(jìn)行全包線仿真,因此采用如下折中試驗(yàn)方式。仍使用Higale實(shí)時(shí)仿真系統(tǒng)進(jìn)行飛行仿真,將傳感器等設(shè)備的仿真激勵(lì)數(shù)據(jù)從飛控計(jì)算機(jī)測(cè)試接口輸入;對(duì)傳感器進(jìn)行靜態(tài)激勵(lì)使其輸出靜態(tài)值;在飛控計(jì)算機(jī)的測(cè)試通道中將仿真激勵(lì)數(shù)據(jù)與傳感器靜態(tài)測(cè)量輸出值疊加,作為仿真中實(shí)際使用的傳感器等設(shè)備的輸出值,如此可以在有限的試驗(yàn)條件下最大限度地在將設(shè)備特性在閉環(huán)仿真中體現(xiàn),提高仿真真實(shí)性。由于實(shí)際傳感器等設(shè)備特性的引入,全包線閉環(huán)仿真結(jié)果與前幾個(gè)階段的結(jié)果相比有一定差異,主要原因在于之前仿真中使用的模型不能完全準(zhǔn)確模擬設(shè)備特性,具體差異主要為噪聲幅值和頻譜差異和響應(yīng)動(dòng)態(tài)性差異。該原因?qū)е氯缦卢F(xiàn)象:處于平飛等穩(wěn)定飛行狀態(tài)時(shí),姿態(tài)回路在平衡位置處的震蕩幅特性有差別;處于機(jī)動(dòng)狀態(tài)時(shí),姿態(tài)、高度、速度、控制輸出均有小幅的偏差。雖然一定差異,但主要控制指標(biāo)均得到滿足,達(dá)到試飛條件。如果整機(jī)地面試驗(yàn)中閉環(huán)仿真結(jié)果與先前結(jié)果有較大差異甚至飛控失效,則應(yīng)對(duì)傳感器和舵機(jī)特性進(jìn)行更準(zhǔn)確的建模,并依次重復(fù)上述各個(gè)研制階段進(jìn)行算法方面的調(diào)整,直至問題解決。
事實(shí)上,由于試驗(yàn)系統(tǒng)功能完整,大型飛機(jī)飛控系統(tǒng)極性試驗(yàn)一般包含在硬件回路階段(鐵鳥集成試驗(yàn)?zāi)酥粮绲南到y(tǒng)綜合試驗(yàn)),所研無(wú)人機(jī)受限于客觀條件,在先前階段只能在信號(hào)層面進(jìn)行極性試驗(yàn),直到整機(jī)集成后,才有完整的硬件環(huán)境進(jìn)行硬件級(jí)極性檢驗(yàn),以及包括所有硬件的閉環(huán)仿真。
應(yīng)用基于模型的設(shè)計(jì)理念,進(jìn)行了某型城市預(yù)警固定翼無(wú)人機(jī)飛控系統(tǒng)開發(fā)。結(jié)合所研無(wú)人機(jī)飛行特點(diǎn)和研發(fā)條件,優(yōu)化了設(shè)計(jì)流程,形成了適于無(wú)人機(jī)飛控系統(tǒng)快速、可靠的開發(fā)流程。經(jīng)過數(shù)學(xué)仿真、快速原型、硬件回路仿真和整機(jī)地面試驗(yàn),完成了飛控系統(tǒng)試飛前的設(shè)計(jì)驗(yàn)證。
[1] 劉 艷. 基于DSP的無(wú)人機(jī)飛控系統(tǒng)的研究[D].重慶:重慶大學(xué),2014.
[2] 張雅妮,李 巖,李小勛. 基于SCADE的飛控軟件的適航驗(yàn)證與確認(rèn)[J]. 飛行力學(xué),2012(1):34-37.
[3] 云 超,李小民,鄭宗貴. 基于Matlab/Simulink的硬件在回路無(wú)人機(jī)仿真系統(tǒng)設(shè)計(jì)[J]. 計(jì)算機(jī)測(cè)量與控制,2012(12): 3306-3308,3324.
[4] 王冠林. 基于模態(tài)分割方法的小型無(wú)人直升機(jī)動(dòng)力學(xué)頻域辨識(shí)建模[D].北京:清華大學(xué),2012.
[5] Thomas R. Yechout. Introduction to Aircraft Flight Mechanics[M]. AIAA, 2003.
[6] 齊星剛,趙 剛,李 原. 在MATLABSimulink平臺(tái)上DSP代碼的自動(dòng)生成[J]. 中國(guó)測(cè)試技術(shù),2005(1):87-88,106.
Model-based Development of Police UAV
Luo Xishuang,Song Liang, Lei Wei, Zheng Liang, Jin Haiyang
(Hirain Technologies Co.,Ltd., Beijing 100191, China)
For UAV-based urban airborne alert, a high reliability design and verification procedure is developed for the capability of autonomous path planning and autopilot controller of an unmanned aerial vehicle. Followed by model-based design pattern, the design and verification of flight control system is carried out step by step, control law software is designed and verificated, then rapid-prototyping and hardware in the loop. The control law software is developed in terms of Simulink model and simulated synchronously. The confirmed software is then compiled and download in Higale real-time system for rapid-prototyping. When DSP-based controller board is manufactured, control law software is downloaded, and hardware in the loop simulation is conducted. At last, full scale UAV ground test is proceeded and verified. With the proposed design and verification method, most faults are explored to and modified timely by the designer early in the program, which guarantees the progress,cost reduction and high quality.
model-based design; Higale; hardware in the loop; rapid prototyping; code generation
2017-04-25;
2017-05-21。
北京市科技計(jì)劃項(xiàng)目基金(D161100005816002)。
羅喜霜(1976-),女,廣西馬山縣人,博士,高級(jí)工程師,主要從事飛行制導(dǎo)導(dǎo)航控制方向的研究。
1671-4598(2017)12-0283-05
10.16526/j.cnki.11-4762/tp.2017.12.073
V279+.3
A