佟 賀,徐艷艷
(中國人民解放軍陸軍航空兵學(xué)院,北京 101123)
無人機(jī)(UAV,Unmanned Aerial Vehicle)全稱無人駕駛飛機(jī),可無人駕駛,且可重復(fù)使用。近年來,隨著控制技術(shù)和微電子技術(shù)的發(fā)展,無人機(jī)的研究與制造也取得了迅猛的發(fā)展,應(yīng)用領(lǐng)域也越來越廣泛,除軍事方面,在民用領(lǐng)域應(yīng)用也越來越廣泛。作為眾多無人機(jī)的一種,無人直升機(jī)還具有一些獨(dú)特的飛行性能,可以完成一些其它無人飛行器很難完成的任務(wù)。
無人機(jī)設(shè)計(jì)最主要的部分就是飛行控制系統(tǒng)的設(shè)計(jì),本文設(shè)計(jì)的飛行控制系統(tǒng)主要由DSP模塊和ARM模塊兩大部分組成,其硬件框圖如圖1所示。這里DSP模塊和ARM模塊通過一片雙口RAM來交換數(shù)據(jù)。圖中電源模塊主要是來提供系統(tǒng)所需的各種電壓和對供電電池進(jìn)行管理。
圖1 飛行控制系統(tǒng)硬件平臺框圖
飛行控制系統(tǒng)硬件系統(tǒng)中的DSP模塊采用的是TMS320-DM642芯片,ARM采用的是Cortex-A芯片,此外,系統(tǒng)還包括一些外圍接口,主要有10M以太網(wǎng)接口、數(shù)傳電臺接口、RS232接口、GPS接口、I2C接口和SD卡接口等,這些模塊實(shí)現(xiàn)的功能主要有:
(1)保持和地面站的信息交換。
(2)采集傳感器端數(shù)據(jù),如GPS信號和聲納高度傳感器數(shù)據(jù)。
(3)運(yùn)行飛行控制算法和導(dǎo)航控制算法以及發(fā)送控制命令給主控芯片。
ARM模塊以Cortex-A為主控芯片,控制的接口電路主要有:六路無線接收器信號采集通道、九路姿態(tài)傳感器信號采集通道、五路舵機(jī)驅(qū)動(dòng)通道、發(fā)動(dòng)機(jī)轉(zhuǎn)速測量通道、電池電壓檢測通道等。這些模塊的主要功能如下:
(1)采集各路傳感器數(shù)據(jù)。
(2)接收無線接收機(jī)數(shù)據(jù)。
(3)接收TMS320DM642的命令。
(4)驅(qū)動(dòng)舵機(jī)工作。
控制器的硬件設(shè)計(jì)主要由DSP模塊和ARM模塊組成。其中DSP模塊主要包含DSP處理器芯片及部分外圍器件構(gòu)成。DSP處理器通過三個(gè)串口分別與數(shù)傳電臺、GSP和PC機(jī)相連接。再有,DSP芯片通過與聲納高度傳感器相連接,以此來獲得高度信息。此外,DSP模塊還額外預(yù)留一個(gè)以太網(wǎng)接口,主要作為系統(tǒng)調(diào)試的接口。DSP模塊與ARM模塊的數(shù)據(jù)交換主要由雙口RAM配合完成,SD卡主要用于存放應(yīng)用軟件以及一些數(shù)據(jù)。
該飛行控制系統(tǒng)中數(shù)據(jù)采集和舵機(jī)驅(qū)動(dòng)功能主要由ARM模塊完成。兩片模數(shù)轉(zhuǎn)換器主要用來采集航向傳感器和姿態(tài)的信號。采集來數(shù)據(jù)先進(jìn)行預(yù)處理,處理完畢后存放到雙口RAM中。ARM還由雙口RAM的指定位置讀取命令與數(shù)據(jù),進(jìn)而根據(jù)命令執(zhí)行相應(yīng)的控制功能。
飛行控制軟件可以實(shí)現(xiàn)無人機(jī)控制、檢測、通訊等功能。軟件主要設(shè)計(jì)了四個(gè)模塊:CPU輔助子模塊、控制子模塊、通信子模塊、飛行狀態(tài)檢測及故障判斷子模塊。程序部分采用了主程序+任務(wù)十中斷的軟件結(jié)構(gòu)。
CPU輔助子模塊的功能主要是提供CPU運(yùn)行時(shí)必須的底層軟件,主要包括中央處理器、寄存器的初始化配置、PSD支持文件與常規(guī)算法庫;通訊子模塊主要用來提供GPS、遙控及遙測等信息數(shù)據(jù);飛行狀態(tài)檢測子模塊可以檢測直升機(jī)在飛行過程中體現(xiàn)出的各種姿態(tài)信息;檢測及故障判斷子模塊要完成上電自檢測、飛控器運(yùn)行狀況監(jiān)控等功能。
軟件系統(tǒng)上電后,先進(jìn)行操作系統(tǒng)自身以及外圍設(shè)備初始化設(shè)置,然后建立系統(tǒng)欲實(shí)現(xiàn)的任務(wù),并賦予不同的優(yōu)先級,直升機(jī)的穩(wěn)定飛行必須實(shí)時(shí)采集系統(tǒng)傳感器的各項(xiàng)數(shù)據(jù),因此把信號采集任務(wù)設(shè)置為最高優(yōu)先級。采集到的數(shù)據(jù)通過任務(wù)之間的通信機(jī)制,傳遞給控制量計(jì)算任務(wù),任務(wù)根據(jù)收集到的數(shù)據(jù)執(zhí)行控制算法,計(jì)算出各個(gè)舵機(jī)的控制量,進(jìn)而實(shí)現(xiàn)無人直升機(jī)飛行狀態(tài)的控制。