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