摘 要: 介紹了一種應(yīng)用于無人機的微型渦輪噴氣式發(fā)動機數(shù)字控制系統(tǒng)" title="控制系統(tǒng)">控制系統(tǒng)的設(shè)計與實現(xiàn),。該系統(tǒng)基于C8051F021單片機和MicroStar嵌入式實時操作系統(tǒng),,實現(xiàn)了小型渦噴發(fā)動機自動點火、啟動,、推力控制與穩(wěn)定,、超溫超速保護、系統(tǒng)自檢,、冷卻等功能,。該系統(tǒng)具有體積小、重量輕,、功能全的特點,。
關(guān)鍵詞: C8051F021 MicroStar RTOS 渦噴發(fā)動機 PID
與活塞發(fā)動機相比,渦輪噴氣發(fā)動機(以下簡稱渦噴發(fā)動機)在推重比方面的優(yōu)勢無可爭議,。如果將之微型化,,將使小型無人飛行器獲取較高的速度和載荷能力。因此,,研制微型渦噴發(fā)動機在軍用和民用領(lǐng)域都有深遠(yuǎn)的意義,。目前,美,、德,、丹麥等國家都有相當(dāng)成熟的微型渦噴發(fā)動機產(chǎn)品,已成功應(yīng)用到航模和無人機上。但在國內(nèi),,無論是發(fā)動機本身還是其控制系統(tǒng),,都屬于較新領(lǐng)域[1]。
本文針對國產(chǎn)某系統(tǒng)發(fā)動機,,設(shè)計了基于C8051F021和MicroStar RTOS的微型渦噴發(fā)動機通用控制系統(tǒng),。它以處理器為核心,集傳感器,、伺服機構(gòu),、人機接口" title="人機接口">人機接口為一體、體積小,、重量輕,,提供了與主控系統(tǒng)的指令接口和與地面測試設(shè)備的檢測接口,功能完善,。
微型渦噴發(fā)動機計算機控制系統(tǒng)的整體結(jié)構(gòu)如圖1所示,。
控制器接收遙控接收機(或主控計算機)發(fā)出的PCM(Pulse Coding Modulation,脈沖編碼調(diào)制)形式的推力和起停指令,,驅(qū)動油泵,、油閥、點火器等伺服機構(gòu),,實時測量發(fā)動機的溫度和轉(zhuǎn)速,,完成自動點火、加速,、減速,、轉(zhuǎn)速穩(wěn)定、超溫超速保護等控制功能,,并將狀態(tài)參數(shù)通過RS232總線實時發(fā)送到PC機,。通過手持終端,可修改系統(tǒng)參數(shù),。
為便于系統(tǒng)調(diào)試和測試發(fā)動機性能,,還開發(fā)了運行于Windows平臺的實時檢測軟件ECU1.0(Engine Control Unit, Version1.0)。
1 硬件設(shè)計
C8051F021單片機是美國Cygnal公司推出的一款高性能8位SOC單片機,。主要有以下優(yōu)點:
(1)采用了流水線技術(shù),峰值處理速度可達(dá)25MIPS,遠(yuǎn)遠(yuǎn)高于其它51單片機,。
(2)具有12位8通道逐次比較式ADC,數(shù)據(jù)轉(zhuǎn)換速率可達(dá)100ksps。
(3)具有4K字節(jié)的片上RAM和64K字節(jié)的Flash程序存儲器,。在本應(yīng)用系統(tǒng)中,無需擴展存儲器,。
(4)可提供五路可編程的PWM控制信號,。
(5)豐富的定時器資源,,具有五個硬件定時器。
(6)提供I2C總線控制模塊和兩個UART口,。
(7)片內(nèi)FLASH支持IAP(在應(yīng)用可編程),。因此,,不常修改的數(shù)據(jù)如配置參數(shù),、查詢表等可直接存放于片內(nèi)的FLASH內(nèi),,而不需外擴非易失性存儲體,。
C8051F021單片機具有豐富的片上硬件資源及高運算速度,,對本控制系統(tǒng),幾乎不需擴展即可滿足控制系統(tǒng)對硬件資源的需求并有較大裕量,。圖2為系統(tǒng)硬件結(jié)構(gòu)圖,。
1.1 轉(zhuǎn)速測量模塊
發(fā)動機的轉(zhuǎn)速采用紅外對管來測量。發(fā)動機的軸上鉆有一通孔,,安裝時使發(fā)送-接收管的連線通過該孔。發(fā)動機每轉(zhuǎn)一周,,紅外接收管會導(dǎo)通兩次,。由于通、斷狀態(tài)是漸變的,,再加上普通紅外管開關(guān)速度較低,在發(fā)動機高速運轉(zhuǎn)(可達(dá)120000RPM)時,,接收管輸出的脈沖信號幅值很小,,而且上升沿/下降沿較為平緩,單片機無法準(zhǔn)確識別,,必須加以整形。整形電路如圖3所示,。
信號通過電容C6耦合至運放AR1的同相輸入端,,(以2.5V為參考點)進行高倍數(shù)放大,,以保證即使在高轉(zhuǎn)速下,脈沖的峰-峰幅值也接近5V供電電壓,。運放AR3用于實現(xiàn)回滯比較器,,提高抗干擾能力,其輸出信號至單片機T4EX腳,。利用定時器4的邊沿捕捉功能可方便地測出相鄰脈沖間的時間間隔,,從而換算出速度,。
1.2 溫度測量模塊
發(fā)動機體內(nèi)的溫度是發(fā)動機安全,、可靠工作的重要指標(biāo)。由于發(fā)動機較小,,考慮到裝配的方便,以尾噴管的溫度表征發(fā)動機的工作溫度。
試驗表明,,尾噴管的溫度最高可達(dá)900℃。出于測溫" title="測溫">測溫范圍、成本等方面的考慮,選用鎳鉻-鎳硅(Ni,Cr,Si)熱電偶作為測溫元件,。鎳鉻-鎳硅熱電偶具有良好的線性度,測溫范圍為0~1000℃,。由于發(fā)動機對溫度測量精度的要求并不苛刻,,采用熱敏電阻進行溫度補償。
1.3 PWM驅(qū)動模塊
系統(tǒng)中氣閥和點火器,、啟動電機和油泵電機等伺服機構(gòu)采用PWM方式控制,。啟動電機,、齒輪泵的工作電流較大,可達(dá)14A,。宜選用過流大且導(dǎo)通電阻小的MOS管或壓降小的肖特基二極管。本系統(tǒng)選用過流為120A,、導(dǎo)通電阻7.5mΩ的MOS管。但試驗表明,MOS管工作溫度仍然較高,,故采用兩片并聯(lián)驅(qū)動方式,。一路PWM控制單元的原理圖如圖4所示。
電阻R6的主要作用是當(dāng)無控制輸入信號時(如線路故障,、單片機復(fù)位過程中),MOS管保持關(guān)閉,,伺服機構(gòu)不動作,。MOS管開通時,通過Q4對MOS管輸入電容快速充電,;關(guān)斷時,MOS管的輸入電容通過D3和Q3快速放電,。采用上述具有較高開關(guān)速度的電路,可有效減少MOS管的發(fā)熱量,。
1.4 系統(tǒng)通訊總線
I2C總線成本低廉,,連線簡單,,并有一定的抗干擾能力,,同時可連結(jié)多個器件,故選用I2C總線作為系統(tǒng)通訊總線,。手持終端,、信號燈均通過I2C總線與系統(tǒng)板連接,并由串轉(zhuǎn)并芯片PCF8574驅(qū)動,。
2 系統(tǒng)軟件
本系統(tǒng)主要完成發(fā)動機控制任務(wù)與人機接口任務(wù),。直接采用處理器開發(fā)軟件時,,由于時間上的并存,,這兩個任務(wù)處理將嚴(yán)重耦合,。此外,,與人機接口相關(guān)的函數(shù)調(diào)用必須設(shè)計為非阻塞模式,否則,,當(dāng)出現(xiàn)諸如I2C總線等故障時,,控制流程無法繼續(xù)向下執(zhí)行。
RTOS能合理地分配處理器資源,,使多個任務(wù)在宏觀上達(dá)到并行運行的效果,,可大大降低任務(wù)間的耦合,提高系統(tǒng)的可靠性,。即使某個任務(wù)長時間被阻塞,,也不會影響到其它任務(wù)。因此,,采用RTOS進行軟件開發(fā)更為簡單和可靠,。本系統(tǒng)采用MicroStar RTOS V1.0[3]。MicroStar RTOS是針對中低檔單片機而設(shè)計的嵌入式實時操作系統(tǒng)內(nèi)核,。它同時支持按時間片輪轉(zhuǎn),、按優(yōu)先級搶占、二者結(jié)合共三種調(diào)度策略,,具有完善的任務(wù)管理功能可提供定時、延時服務(wù),,支持消息,、信號(Signal)通訊機制,支持臨界代碼段保護,,提供二進制,、計數(shù)型信號量(Semaphore)同步對象等,支持Bottom-half中斷管理機制,。
本控制器選用按優(yōu)先級搶占調(diào)度策略,,系統(tǒng)時鐘周期設(shè)定為2ms。共創(chuàng)建了三個用戶任務(wù):人機接口主任務(wù),、控制任務(wù)以及與PC機通訊任務(wù),。
2.1 MicroStar RTOS在51單片機上的移植
由于51單片機內(nèi)核上的原因,為了代碼優(yōu)化,,Keil C51編譯器采用一些獨特的方法,,與ANSI C編譯器相比,有較大的差異,。因而相對于其它硬件平臺,,在51單片機上移植MicroStar RTOS時修改較多,主要包括以下幾類:
(1)Keil C51不僅有數(shù)據(jù)類型,,還有存儲類型,,因此為系統(tǒng)變量添加了存儲類型修飾符。
(2)默認(rèn)情況下Keil C51對未能在寄存器中分配的臨時變量采用靜態(tài)分配策略,許多系統(tǒng)函數(shù)因此而不可重入,,必須對這些函數(shù)添加reentrant函數(shù)來強迫編譯器在模擬棧中分配臨時變量,。
(3)除了硬件堆棧外,Keil C51編譯器在軟件上實現(xiàn)了模擬棧,,因此在堆棧保護中需加入對模擬棧的保護,。
(4)修改 os_cpu.h 文件中的INITIAL_ STACK任務(wù)堆棧初始化宏、改寫os_Schedule調(diào)度函數(shù)等,。這一點與其它平臺無異,。
2.2 人機接口主任務(wù)
人機接口主任務(wù)主要負(fù)責(zé)系統(tǒng)自檢、鍵盤掃描,、液晶顯示,、指令解析等,其流程圖如圖5所示,。
主任務(wù)有測試和正常兩種運行模式,。在開機按特定鍵或系統(tǒng)自檢失敗時,將進入測試模式。測試模式中擁有系統(tǒng)參數(shù)設(shè)定,、脈寬指令學(xué)習(xí),、測試各路伺服機構(gòu)的權(quán)限,但不具備運行發(fā)動機的權(quán)限,。正常模式下僅具備運行發(fā)動機的權(quán)限,,但不能修改任何參數(shù),以降低對系統(tǒng)參數(shù)意外改寫的風(fēng)險,。在激活控制任務(wù)之前,,主任務(wù)將進行包括程序代碼校驗、配置參數(shù)校驗,、溫度傳感器檢查等的軟硬件模塊檢查,。這些措施均能提高系統(tǒng)的可靠性。
MicroStar RTOS提供周期性定時服務(wù),。主任務(wù)通過os_SetTimer設(shè)定一個50ms的鍵盤掃描定時器、一個100ms的LCD顯示刷新定時器,。當(dāng)定時時間到時,定時器會給任務(wù)發(fā)送消息,。調(diào)用os_GetMessage獲取消息后,調(diào)用鍵盤處理函數(shù)和顯示函數(shù)來分別處理與之對應(yīng)的消息,。
2.3 控制任務(wù)
一次完整的發(fā)動機運行可分為如圖6所示的幾個階段??刂迫蝿?wù)按這些階段循環(huán)進行,,任一階段內(nèi)出現(xiàn)異常狀況,任務(wù)都進入停車狀態(tài),。具體階段為:
(1)待命階段,。發(fā)動機的狀態(tài)滿足運行要求,,等待以PCM碼方式輸入的啟動命令,。規(guī)定以大車指令對應(yīng)的脈寬為啟動命令。
(2)點火階段,。電機轉(zhuǎn)速在設(shè)定的上下限內(nèi)波動,,助燃丁烷氣閥打開,向發(fā)動機體內(nèi)注入易燃?xì)?,同時開啟點火器對氣體加熱,當(dāng)氣體點燃使尾噴管溫度升高到設(shè)定值時,,認(rèn)為點火成功,。
(3)著車階段,。油泵開始工作,,供油量逐漸增大,,點火器,、氣閥、啟動電機先后關(guān)閉,,發(fā)動機轉(zhuǎn)速開始加速,。當(dāng)轉(zhuǎn)速和溫度均超過設(shè)定值時,認(rèn)為著車成功,。
(4)熱車階段。發(fā)動機成功著車之后,,不宜立即投入工作,,需在慢車(怠速)狀態(tài)下持續(xù)運行一段時間。
(5)正常運行階段,。PID控制算法投入運行,。
(6)停車階段,。油泵停止運行,啟動電機會根據(jù)溫度間歇性地開啟,,在有利于發(fā)動機散熱的條件下,,盡可能地節(jié)省電能,。
3 控制律設(shè)計
按控制內(nèi)容劃分,,微型渦噴發(fā)動機的控制項目分為以下幾類:
(1)過程控制。使發(fā)動機迅速,、穩(wěn)定,、可靠地完成過渡工作狀態(tài),包括啟動控制,、加速控制、減速控制,。啟動控制保證發(fā)動機正常點火和順利啟動,。加速控制的目的是在發(fā)動機不超溫的前提下,,改變供油量,,使加速時間盡可能縮短,。減速控制使收油門時減油不致過猛,,防止燃燒室貧油熄火,。
(2)推力控制,。目的是給發(fā)動機提供所需的推力。飛行器空中飛行時發(fā)動機推力不易直接測量,,但發(fā)動機轉(zhuǎn)速能夠表征發(fā)動機的推力,,故通過轉(zhuǎn)速控制" title="轉(zhuǎn)速控制">轉(zhuǎn)速控制實現(xiàn)推力控制,。
(3)安全控制。目的是保證發(fā)動機安全,、可靠地工作,。包括超溫保護、超速保護,、電池電壓欠壓保護等,。
3.1 啟動控制
啟動時間越短越好,,因而發(fā)動機增速要快。簡單地提高供油量雖然可以提高發(fā)動機的增速,,但容易因過度“富油”而超溫,。“富油”現(xiàn)象是指當(dāng)供油量增速過快時,,由于發(fā)動機的慣性大于油泵的慣性,,使發(fā)動機轉(zhuǎn)速增量相對落后,吸入空氣相對油量不足,,以致燃油燃燒不充分,,嚴(yán)重時,發(fā)動機體內(nèi)的溫度會急劇上升,,尾氣中會出現(xiàn)火苗,,這種現(xiàn)象對發(fā)動機極為有害。為減輕“富油”現(xiàn)象,,在著車過程控制中引入溫度和升溫速度反饋,。當(dāng)溫度超過警戒值或者升溫速度超過警戒值時,供油量將停止增加,。
3.2 轉(zhuǎn)速控制
轉(zhuǎn)速控制采用工程上常用的位置式數(shù)字PID控制算法,。對本系統(tǒng)而言,控制量為油泵的PWM占空比" title="占空比">占空比,。占空比為負(fù)值是沒有物理意義的,,需在PID的輸出之上加入工作點,使輸出在工作點上下調(diào)整,。轉(zhuǎn)速控制框圖如圖7所示,。
其中,F(xiàn)(N0)為工作點產(chǎn)生函數(shù),,表示指令轉(zhuǎn)速N對應(yīng)的占空比參考值,,即工作點,通過試驗來獲取,,軟件實現(xiàn)時采用查表法和線性插值法,。限幅環(huán)節(jié)保證油泵占空比既不會小于怠速時的占空比,以避免熄火,;也不會大于設(shè)定的最大值,,以避免過速危險。油門加速度限幅環(huán)節(jié)一方面限制了加油速度,,防止因加油過快而超溫;另一方面限制了收油速度,,防止因收油過快而貧油熄火,。油門加速度限幅簡單地實現(xiàn)了加速控制和減速控制,。
由于油泵占空比與發(fā)動機轉(zhuǎn)速間的非線性關(guān)系(如圖8所示),采用了分段PID方法,,即不同階段采用不同的PID參數(shù),。單就Kp而言,由圖可看出:在低轉(zhuǎn)速段,,曲線的斜率較陡,,轉(zhuǎn)速對占空比的變化敏感,Kp取值較小,,避免了超調(diào)過大和振蕩,;而在高轉(zhuǎn)速段,曲線上升非常平緩,,Kp取較大值,,以提高響應(yīng)速度。同樣地,,為取得較好的性能,,Ki、Kd在不同的轉(zhuǎn)速段也應(yīng)取不同的值,。在本系統(tǒng)中共分為三段,。
4 系統(tǒng)測試
本系統(tǒng)已進行了多次臺架試驗。試驗中,,被控對象選用國產(chǎn)500牛推力的某型渦噴發(fā)動機,,原始數(shù)據(jù)利用運行于PC機平臺上的ECU V1.0通過串行口獲得。
4.1 檢測軟件ECU V1.0
為便于系統(tǒng)調(diào)試和測試,,自行開發(fā)了軟件ECU V1.0,。它能將發(fā)動機各種參數(shù)實時記錄下來,以曲線方式動態(tài)地顯示出來,,以便分析各個參量間的相關(guān)性,,并具有發(fā)送控制命令、報警等輔助功能,。圖8,、圖9均由該軟件生成。
4.2 測試結(jié)果
試驗表明,,在控制系統(tǒng)的作用下,,發(fā)動機能很好地跟蹤轉(zhuǎn)速遙控指令。圖9給出一次由18000RPM至 23000RPM的推桿操作中指令和轉(zhuǎn)速的曲線,圖中虛線為指令,,實線為速度,,兩條曲線基本吻合。
微型渦噴發(fā)動機控制系統(tǒng)在我國還是一個較新的領(lǐng)域,,筆者在此方面作了較為深入的探索,。試驗中控制系統(tǒng)能可靠穩(wěn)定地工作,,達(dá)到了工程樣機的水平。
參考文獻(xiàn)
1 羅爾斯-羅伊斯公司. 噴氣發(fā)動機中文版. 羅爾斯-羅伊斯公司技術(shù)出版物部,,1992
2 高金源. 計算機控制系統(tǒng). 北京:北京航空航天大學(xué)出版社,,2001
3 鄭玉全. 微型搶占式實時操作系統(tǒng)的設(shè)計與實現(xiàn). 單片機與嵌入式系統(tǒng),2004(1)
4 王幸之.單片機應(yīng)用系統(tǒng)抗干擾技術(shù).北京: 北京航空航天大學(xué)出版社,,2000
5 吳琪華. 航空發(fā)動機自動控制. 西安:西北工業(yè)大學(xué)出版社,,1985