基于586-Engine的無人機(jī)飛行控制器設(shè)計(jì)
引言
在無人機(jī)飛行控制系統(tǒng)中,飛行控制器是其核心部件,它負(fù)責(zé)飛行控制系統(tǒng)信號的采集、控制律的解算、飛機(jī)的姿態(tài)和速度,以及與地面設(shè)備的通訊等工作。
隨著無人機(jī)越來越廣泛的應(yīng)用,它所完成的任務(wù)也越來越復(fù)雜,對無人機(jī)的機(jī)動(dòng)性要求也越來越高,這就要求無人機(jī)的控制核心向高集成度和小型化方向發(fā)展。
本文以586-Engine嵌入式芯片為核心,設(shè)計(jì)了某型無人機(jī)的飛行控制器,詳細(xì)介紹了系統(tǒng)的硬件結(jié)構(gòu)和相應(yīng)的軟件流程,并給出了仿真實(shí)驗(yàn)結(jié)果。
586-Engine嵌入式芯片的性能特點(diǎn)
586-Engine是TERN公司的基于AMDElanSC520處理器的微控制模塊,具有高可靠性、結(jié)構(gòu)緊湊以及低功耗等特點(diǎn),它同時(shí)具有功能強(qiáng)大的調(diào)試軟件。586-Engine的主要參數(shù)指標(biāo)如下:
(1)CPU為32位AMDElanSC520,主頻為133MHz;
(2)具有高性能的浮點(diǎn)運(yùn)算單元,支持正弦、正切、對數(shù)等復(fù)雜運(yùn)算,非常適合需要復(fù)雜運(yùn)算的應(yīng)用。
(3)配置512KB的,512KB的,114字節(jié)內(nèi)部RAM;
(4)支持15個(gè)外部中斷。共有7個(gè)器,包括一個(gè)可編程內(nèi)部器,提供3個(gè)16位內(nèi)部器和3個(gè)16位GP定時(shí)器,再加上一個(gè)軟件定時(shí)器。這些定時(shí)器支持外部事件的計(jì)時(shí)和計(jì)數(shù)。軟件定時(shí)器提供微秒級的硬件時(shí)間基準(zhǔn)。
(5)提供32路可編程I/O,2個(gè)。共有19路12位A/D輸入,包括11路ADC串行輸入和8路并行ADC,轉(zhuǎn)換頻率為300kHz;6路D/A輸出,包括2個(gè)串行輸出DAC和4個(gè)輸出并行12位DAC,轉(zhuǎn)換頻率為200kHz。
(6)工作溫度為-40℃~80℃,尺寸為91.4mm×58.4mm×7.6mm。
飛行控制器硬件設(shè)計(jì)
該型無人機(jī)是為海軍野戰(zhàn)部隊(duì)提供通訊中繼用途的中型輪式無人機(jī),其飛行控制器是一個(gè)單獨(dú)裝箱的小型航空機(jī)載電子設(shè)備,由DC/DC直流電源變換板、計(jì)算機(jī)主機(jī)板、模擬量通道板、量通道板和舵機(jī)控制板組成,全部模板通過母板上的總線方式連接,以減小尺寸,提高集成度。飛行控制器硬件結(jié)構(gòu)如圖1所示,實(shí)物圖如圖2所示。
下面詳細(xì)介紹飛行控制器的數(shù)據(jù)采集、信息傳輸、控制量輸出等問題。
(1)串口擴(kuò)展
由圖1可知,該飛行控制器需要與、磁航向計(jì)和無線電高度表等進(jìn)行通訊,共需5個(gè)串口。而586-Engine主板只提供2個(gè)串口,分別供地面檢測和測控電臺使用,因此需要進(jìn)行串口擴(kuò)展。串口擴(kuò)展電路如圖3所示。
串口擴(kuò)展電路中采用四通道并-串轉(zhuǎn)換器件,將8位并行數(shù)據(jù)轉(zhuǎn)換成4路串行輸出,外加和電平轉(zhuǎn)換芯片,擴(kuò)展了2個(gè)串口和2個(gè)串口,可滿足飛行控制器的硬件需求。
(2)D/A轉(zhuǎn)換
此型無人機(jī)采用模擬舵機(jī),共需6路D/A通道產(chǎn)生PWM信號來驅(qū)動(dòng)舵機(jī)。586-Engine主板總共提供8路D/A,其中4路12位并行D/A(DA7625)分別控制升降舵機(jī)、左右副翼舵機(jī)和方向舵機(jī),2路12位串行D/A()控制前輪舵機(jī)和油門舵機(jī)。由于DA7625的輸出電壓范圍為0~2.5V,輸出電壓范圍為0~4.096V,而舵機(jī)工作電壓為-10~10V,因此需要對信號進(jìn)行放大和電平平移。D/A電平平移電路如圖4所示。
由圖可知,D/A電平轉(zhuǎn)換原理是在運(yùn)放輸入端采用加法電路,將輸入信號與基準(zhǔn)電平比例相加,得到適合采樣的電壓范圍。輸入電平與輸出電平的關(guān)系為。
(3)A/D采集
586-Engine主板上自帶的19路12位的A/D接口完全滿足飛控系統(tǒng)通道數(shù)和轉(zhuǎn)換精度的要求,這些A/D接口分別采集氣壓高度表的數(shù)據(jù),無人機(jī)機(jī)載電壓、發(fā)動(dòng)機(jī)轉(zhuǎn)速和溫度、油門開度等。這些信號發(fā)往地面測控計(jì)算機(jī),為操作人員對無人機(jī)工作狀態(tài)進(jìn)行監(jiān)控提供了基礎(chǔ)。
(4)I/O控制
586-Engine主板上提供了32個(gè)16位可編程數(shù)字I/O口,用于采集發(fā)動(dòng)機(jī)啟動(dòng)信號、傘艙打開信號等,并輸出量信號控制其它設(shè)備,控制無人機(jī)起飛與回收過程。
(5)
飛行控制器的電路給飛行控制器提供干凈穩(wěn)定的供電電壓,用來保證飛行控制器正常工作。電路的設(shè)計(jì)好壞直接影響飛行控制器運(yùn)行的穩(wěn)定性和可靠性。該型無人機(jī)由于對尺寸有一定的要求,同時(shí)考慮到可靠性與成本,因此在設(shè)計(jì)時(shí)選用了成熟的標(biāo)準(zhǔn),外接少量器件即可工作。飛行控制器供電模塊電路如圖5所示。
其中,采用24T05D12作為供電電路的主芯片,提供的功率為30W,輸入電壓范圍為18V~36V,具有三路電源輸出:+5V和±12V,為機(jī)載和舵機(jī)進(jìn)行供電。