作者:李厚春,,張小林 西北工業(yè)大學(xué)
0 引言
小型無人機(jī)在現(xiàn)代軍事和民用領(lǐng)域的應(yīng)用已越來越廣泛。在經(jīng)歷了早期的遙控飛行后,,目前其導(dǎo)航控制方式已經(jīng)發(fā)展為自主飛行和智能飛行,。導(dǎo)航方式的改變對飛行控制計算機(jī)的精度提出了更高的要求;隨著小型無人機(jī)執(zhí)行任務(wù)復(fù)雜程度的增加,,對飛控計算機(jī)運(yùn)算速度的要求也更高,;而小型化的要求對飛控計算機(jī)的功耗和體積也提出了很高的要求。高精度不僅要求計算機(jī)的控制精度高,,而且要求能夠運(yùn)行復(fù)雜的控制算法,,小型化則要求無人機(jī)的體積小,機(jī)動性好,,進(jìn)而要求控制計算機(jī)的體積越小越好,。
1 概述
目前,隨著微電子技術(shù)的飛速發(fā)展,,市場上出現(xiàn)了眾多功能強(qiáng)大,,功耗,、體積大大縮小的集成電路。芯片制造工藝的進(jìn)步,,像ARM,,DSP等集成眾多外圍電路的CPU芯片以及EPLD,F(xiàn)PGA等大規(guī)模邏輯器件也已經(jīng)出現(xiàn),,其性能比以前的芯片增強(qiáng),,外部電路也大為精簡。其中,,數(shù)字信號處理器(DSP)以強(qiáng)大的指令系統(tǒng),、接口功能以及友好的開發(fā)環(huán)境顯示出功能完善,速度快,,開發(fā)方便等優(yōu)勢,,能夠有效解決小型飛控計算機(jī)中高速與微型的矛盾,從而使為微,、小型無人機(jī)量身設(shè)計的集高速度,、高精度和小型化于一體的新型飛控計算機(jī)成為可能。
在眾多處理器芯片中,,最適合小型飛控計算機(jī)CPU的芯片當(dāng)屬TI公司的TMS320LF2407,,其運(yùn)算速度以及眾多的外圍接口電路很適合用來完成對小型無人機(jī)的實時控制功能。它采用哈佛結(jié)構(gòu),、多級流水線操作,,對數(shù)據(jù)和指令同時進(jìn)行讀取,片內(nèi)自帶資源包括16路10位A/D轉(zhuǎn)換器且?guī)ё詣优判蚬δ?,保證最多16路有轉(zhuǎn)換在同一轉(zhuǎn)換期間進(jìn)行,,而不會增加CPU的開銷;40路可單獨編程或復(fù)用的通用輸入/輸出通道,;5個外部中斷,;集成的串行通信接口(SCI),可使其具備與系統(tǒng)內(nèi)其他控制器進(jìn)行異步(RS 485)通信的能力,;16位同步串行外圍接口(SPI)能方便地用來與其他的外圍設(shè)備通信,;還提供看門狗定時器模塊(WDT)和CAN通信模塊。TMS320LF2407豐富的片內(nèi)資源配合LATTICE公司的EPLD以及串口擴(kuò)展芯片28C94使飛控機(jī)實現(xiàn)較復(fù)雜的飛行控制與飛行管理功能,,同時還滿足了小型無人機(jī)的小體積和低功耗的要求,。CPU提供192 KWord字的可擴(kuò)展外部存儲空間,能夠裝載較大的應(yīng)用程序,,進(jìn)一步增強(qiáng)對外部電路的控制能力,。系統(tǒng)開發(fā)語言選擇BC 3.1,能方便地開發(fā)應(yīng)用程序,,并使之有良好的可移植性,。集成開發(fā)工具CC2000能很方便友好地實現(xiàn)系統(tǒng)的調(diào)試,。
2 系統(tǒng)硬件設(shè)計
2.1 組成模塊
飛控系統(tǒng)實時采集各傳感器測量的飛行狀態(tài)數(shù)據(jù)、接收無線電測控終端傳輸?shù)挠傻孛鏈y控站上行信道送來的控制命令及數(shù)據(jù),,經(jīng)計算處理,,輸出控制指令給執(zhí)行機(jī)構(gòu),實現(xiàn)對無人機(jī)中各種飛行模態(tài)的控制和對任務(wù)設(shè)備的管理與控制,;同時將無人機(jī)的狀態(tài)數(shù)據(jù)及發(fā)動機(jī)、機(jī)載電源系統(tǒng),、任務(wù)設(shè)備的工作狀態(tài)參數(shù)實時傳送給機(jī)載無線電數(shù)據(jù)終端,,經(jīng)無線電下行信道發(fā)送回地面測控站。按照功能劃分,,該飛控系統(tǒng)的硬件包括:主控制模塊,、信號調(diào)理及接口模塊、數(shù)據(jù)采集模塊以及舵機(jī)驅(qū)動模塊等,。具體的硬件構(gòu)成原理如圖1所示,。
2.2 模塊功能
各個功能模塊組合在一起,構(gòu)成飛行控制系統(tǒng)的核心,,而主控制模塊是飛控系統(tǒng)核心,,它與信號調(diào)理模塊、接口模塊和舵機(jī)驅(qū)動模塊相組合,,在只需要修改軟件和簡單改動外圍電路的基礎(chǔ)上可以滿足一系列小型無人機(jī)的飛行控制和飛行管理功能要求,,從而實現(xiàn)一次開發(fā),多型號使用,,降低系統(tǒng)開發(fā)成本的目的,。系統(tǒng)主要完成如下功能:
(1)完成多路模擬信號的高精度采集,包括陀螺信號,、航向信號,、舵偏角信號、發(fā)動機(jī)轉(zhuǎn)速,、缸溫信號,、動靜壓傳感器信號、電源電壓信號等,。由于CPU自帶A/D的精度和通道數(shù)有限,,所以使用了另外的數(shù)據(jù)采集電路,其片選和控制信號是通過EPLD中譯碼電路產(chǎn)生的,。
(2)輸出開關(guān)量信號,、模擬信號和PWM脈沖信號等能適應(yīng)不同執(zhí)行機(jī)構(gòu)(如方向舵機(jī)、副翼舵機(jī),、升降舵機(jī),、氣道和風(fēng)門舵機(jī)等)的控制要求,。
(3)利用多個通信信道,分別實現(xiàn)與機(jī)載數(shù)據(jù)終端,、GPS信號,、數(shù)字量傳感器以及相關(guān)任務(wù)設(shè)備的通信。由于CPU自身的SCI通道配置的串口不能滿足系統(tǒng)要求,,設(shè)計中使用多串口擴(kuò)展芯片28C94來擴(kuò)展8個串口,。
3 系統(tǒng)軟件設(shè)計
該系統(tǒng)的軟件設(shè)計分為2部分,即邏輯電路芯片EPLD譯碼電路的程序設(shè)計和飛控系統(tǒng)的應(yīng)用程序設(shè)計,。
3.1 邏輯電路程序設(shè)計
EPLD用來構(gòu)成數(shù)字邏輯控制電路,,完成譯碼和隔離以及為A/D,D/A,,28C94提供片選信號和讀/寫控制信號的功能,。該軟件的設(shè)計采用原理圖輸入和VERILOG HDL語言編程的混合設(shè)計方式,遵循設(shè)計輸入→設(shè)計實現(xiàn)→設(shè)計校驗→器件編程的流程,。系統(tǒng)使用了兩片ispLSI1048芯片,,分別用來實現(xiàn)對A/D,D/A的控制和對串口擴(kuò)展芯片28C94的控制,。
3.2 系統(tǒng)應(yīng)用程序設(shè)計
由于C語言不但能夠編寫應(yīng)用程序,、系統(tǒng)程序,還能像匯編語言一樣直接對計算機(jī)硬件進(jìn)行控制,,編寫的程序可移植性強(qiáng),。由于以DSP為核心設(shè)計的系統(tǒng)中涉及到大量對外設(shè)端口的操作,以及考慮后續(xù)程序移植的工作,,所以飛控系統(tǒng)的應(yīng)用程序選用BC 3.1來設(shè)計,,分別實現(xiàn)飛行控制和飛行管理功能。
軟件按照功能劃分為4個模塊:時間管理模塊,、數(shù)據(jù)采集與處理模塊,、通信模塊、控制律解算模塊,。通過時間管理模塊在毫秒級時間內(nèi)對無人機(jī)進(jìn)行實時控制,;數(shù)據(jù)采集模塊采集無人機(jī)的飛行狀態(tài)、姿態(tài)參數(shù)以及飛行參數(shù),、飛行狀態(tài)及飛行參數(shù)進(jìn)行遙測編碼并通過串行接口傳送至機(jī)載數(shù)據(jù)終端,,通過無線數(shù)據(jù)信道發(fā)送到地面控制站進(jìn)行飛行監(jiān)控;姿態(tài)參數(shù)通過軟件內(nèi)部接口送控制律解算模塊進(jìn)行解算,,并將結(jié)果通過D/A通道送機(jī)載伺服系統(tǒng),,控制舵機(jī)運(yùn)行,達(dá)到調(diào)整,、飛機(jī)飛行姿態(tài)的目的,;通信模塊完成飛控計算機(jī)與其他機(jī)載外設(shè)之間的數(shù)據(jù)交換功能,。
4 結(jié)語
利用高速DSP控制芯片在控制律計算和數(shù)據(jù)處理方面的優(yōu)勢及其豐富的外部資源,配合大規(guī)??删幊踢壿嬈骷﨏PLD以及串行接口擴(kuò)展芯片28C94設(shè)計小型機(jī)載飛控計算機(jī),,以其為核心設(shè)計的小型無人機(jī)飛控系統(tǒng)具有功能全,體積小,,重量輕,,功耗低的特點,很好地滿足了小型無人機(jī)對飛控計算機(jī)高精度,、小型化,、低成本的要求。該設(shè)計已成功應(yīng)用于某驗證無人機(jī)系統(tǒng),。