基于單片機(jī)的飛機(jī)航向控制顯示教學(xué)模型設(shè)計(jì)與實(shí)現(xiàn)
摘要:為增強(qiáng)飛行學(xué)員飛機(jī)航向控制理論直觀教學(xué)效果,采用MCS-51單片機(jī)作為系統(tǒng)CPU,完成了飛機(jī)航向控制系統(tǒng)仿真動(dòng)態(tài)模型平臺(tái)的設(shè)計(jì)。通過模擬飛機(jī)操縱機(jī)構(gòu)控制,直接利用匯編語言即可實(shí)現(xiàn)儀表顯示功能。試驗(yàn)結(jié)果表明,系統(tǒng)響應(yīng)速度快,控制顯示功能直觀,課堂教學(xué)效果好。
關(guān)鍵詞:飛機(jī)航向;方向舵;余度設(shè)計(jì);故障監(jiān)控
0 引言
直觀教學(xué)是增強(qiáng)飛行學(xué)員理論聯(lián)系實(shí)際的有效手段,伴隨著多媒體技術(shù)的發(fā)展,如何提升傳統(tǒng)教學(xué)模型不可替代的演示功能,成為制約教學(xué)質(zhì)量的關(guān)鍵。
傳統(tǒng)教學(xué)模型存在數(shù)量多、結(jié)構(gòu)簡單、功能單一的缺點(diǎn),但是其演示功能強(qiáng),學(xué)員可以動(dòng)手操作的優(yōu)點(diǎn)是現(xiàn)代多媒體教學(xué)方式無法替代的。飛機(jī)航向控制顯示系統(tǒng)是利用MCS-51單片機(jī)控制功能,將系統(tǒng)內(nèi)多個(gè)模型綜合,采用機(jī)電控制方式實(shí)現(xiàn)系統(tǒng)多功能教學(xué)和學(xué)員操作功能。一方面可以提高教學(xué)效果,同時(shí)還可以增強(qiáng)教員解決教學(xué)問題的動(dòng)手能力,為將來從事相關(guān)科學(xué)研究打下堅(jiān)實(shí)的基礎(chǔ)。
1 系統(tǒng)功能要求
飛機(jī)航向控制顯示系統(tǒng)為多功能教學(xué)系統(tǒng),本文只探討其中飛機(jī)航向控制及其相關(guān)顯示部分功能設(shè)計(jì)與實(shí)現(xiàn)。仿真模型仿照飛機(jī)座艙安裝方向舵。通過微動(dòng)電門,單片機(jī)可接受方向舵三個(gè)位置信號(hào);方向舵中立位置時(shí),飛機(jī)航向不變化;向左蹬舵時(shí),飛機(jī)左轉(zhuǎn)彎;向右蹬舵時(shí),飛機(jī)右轉(zhuǎn)彎。飛機(jī)改變航向時(shí),要求飛機(jī)航向改變方向燈光和座艙顯示儀表板上的指示燈相應(yīng)地發(fā)出提示信號(hào)。打開開機(jī)電門時(shí),所有信號(hào)燈都應(yīng)閃爍。待機(jī)時(shí),2個(gè)待機(jī)燈發(fā)出不閃爍的信號(hào)。表1為飛機(jī)航向控制顯示系統(tǒng)真值表。
在飛機(jī)航向控制顯示系統(tǒng)中,設(shè)定打開開機(jī)電門時(shí),信號(hào)燈以高頻(約30 Hz)頻率閃爍,提示使用人員準(zhǔn)備操作。飛機(jī)航向改變或開機(jī)狀態(tài)下,信號(hào)燈和座艙顯示儀表板指示燈的閃爍頻率為1 Hz(低頻信號(hào))。
根據(jù)飛機(jī)航向變化信號(hào)顯示控制系統(tǒng)的功能,可以用數(shù)字邏輯電路來實(shí)現(xiàn),如圖1所示。系統(tǒng)中還應(yīng)有高低頻信號(hào)發(fā)生電路和輸出驅(qū)動(dòng)電路。用數(shù)字邏輯電路來實(shí)現(xiàn)系統(tǒng)功能的缺點(diǎn)是:一旦系統(tǒng)的功能有所改動(dòng),電路也要隨之變動(dòng),靈活性較差;增加功能,實(shí)現(xiàn)難度大。
2 系統(tǒng)硬件
為適應(yīng)其他功能需要,飛機(jī)航向控制顯示系統(tǒng)采用28 V直流供電,所以除單片機(jī)外,其他電路采用28 V電源。單片機(jī)內(nèi)部定時(shí)器產(chǎn)生閃爍頻率信號(hào)。圖2是采用單片機(jī)的飛機(jī)航向顯示控制系統(tǒng)的基本電路。
在單片機(jī)系統(tǒng)中,可以利用其較強(qiáng)的控制功能,實(shí)現(xiàn)故障監(jiān)控和余度設(shè)計(jì),提高系統(tǒng)的可靠性。例如飛機(jī)航向控制顯示系統(tǒng)模型教學(xué)使用頻率高、時(shí)間長,顯示器件易損耗,設(shè)計(jì)采用標(biāo)準(zhǔn)的雙信號(hào)燈并聯(lián),以增加系統(tǒng)的冗余度,在一個(gè)信號(hào)燈出故障時(shí),系統(tǒng)仍能正常工作。即使采用了余度技術(shù),信號(hào)燈也全部失靈,或因發(fā)生線路上的故障而不能正常工作。因此還希望系統(tǒng)具有故障監(jiān)控功能,一旦發(fā)現(xiàn)故障,能自動(dòng)報(bào)警。
圖3是這類故障監(jiān)控方案的電路,它利用T0做檢測輸入,只增加1個(gè)晶體管和幾個(gè)電阻。假定其中一個(gè)信號(hào)燈是受控?cái)嚅_的(輸出口線送高電平),而其余信號(hào)燈皆受控接通。這時(shí)晶體管Q7的6個(gè)輸入端中有5個(gè)是低電平。與受控?cái)嚅_的信號(hào)燈相應(yīng)的那個(gè)輸入端的電平則取決于這一路線路的狀態(tài),若28 V電源經(jīng)過信號(hào)燈、連接器、控制線和印制板都是導(dǎo)通的,這一路驅(qū)動(dòng)晶體管也沒有發(fā)生基極與地短路的現(xiàn)象,則該輸入端應(yīng)保持高電平,使Q7導(dǎo)通,測試口T0是低電平。若這時(shí)T0是高電平,說明相應(yīng)的線路出了故障。
現(xiàn)在讓單片機(jī)發(fā)出控制使所有信號(hào)燈都接通,則Q7應(yīng)截止,測試口T0應(yīng)呈高電平。如果這時(shí)存在控制線與28 V電源短路或驅(qū)動(dòng)晶體管斷路等故障,則Q7仍導(dǎo)通,T0呈低電平,表示線路中存在著另一類故障。這種故障監(jiān)控功能可以通過軟件來實(shí)現(xiàn)。
3 系統(tǒng)軟件
系統(tǒng)軟件用MCS-51系統(tǒng)布爾處理機(jī)機(jī)器指令子集匯編語言編寫。編寫程序按照系統(tǒng)功能分為三部分:第一部分是輸入、輸出口線說明和變量定義;第二部分是背景程序(主程序);第三部分是中斷服務(wù)程序。
飛機(jī)航向控制顯示系統(tǒng)軟件程序如下:
3.1 口線說明和變量定義
程序清單中第1行至第16行是說明和定義部分。在圖中和圖中輸入輸出口線已初步擬定好。但在程序中不直接采用P1.0,P1.1等這類的口線名稱,而是采用了符號(hào)地址,即用戶自定義的有助記意義的名稱。對于一些字節(jié)變量或布爾變量也采用了助記名。這樣做給程序設(shè)計(jì)帶來了方便,提高了程序的可讀性和可維護(hù)性,一旦要改變具體的引腳或變量單元(或位),只要在說明和定義部分略作修改,而不必把程序中所有有關(guān)的部分都一一修改。
在原理設(shè)計(jì)階段,諸如引腳功能的確定,通常是帶主觀性的。在印制電路板設(shè)計(jì)階段可能發(fā)現(xiàn)適當(dāng)變化一下引腳的功能,會(huì)給電路板設(shè)計(jì)帶來極大的方便。在不采用符號(hào)地址的程序設(shè)計(jì)中,這種少量的硬件變動(dòng)可能會(huì)造成大量的軟件修改量。雷同的情況還可能在其他設(shè)計(jì)階段中發(fā)生。因此,盡可能采用符號(hào)地址。
3.2 背景程序(主程序)
程序清單中第18行和第26行至第34行是背景程序。這一段程序的框圖如圖4所示。
系統(tǒng)中利用定時(shí)器/計(jì)數(shù)器0和一個(gè)軟件計(jì)數(shù)器SUB_DIV來產(chǎn)生為時(shí)1 s的定時(shí)信號(hào),以實(shí)現(xiàn)低頻(1Hz)閃爍功能。
對于TH0置初值16,即F0H,使定時(shí)器0每隔4 096 μs(采用12 MHz晶體,計(jì)數(shù)頻率為1 MHz)溢出中斷一次。每次中斷后,重置TH0,并使用軟件計(jì)數(shù)器SUB_DIV的值減1。SUB_DIV的初值為244,當(dāng)此值減為0時(shí),歷經(jīng)的時(shí)間為:
244×4 096×10-6=0.999 424 s
3.3 中斷服務(wù)程序
定時(shí)器0溢出中斷服務(wù)程序是整個(gè)程序的實(shí)際主體部分其框圖如圖5所示。
現(xiàn)對中斷服務(wù)程序做幾點(diǎn)說明:
(1)故障監(jiān)控測試過程可參見對圖3的說明。發(fā)現(xiàn)故障時(shí)。轉(zhuǎn)而執(zhí)行一跳指令CPL S_FALL,S_FALL是P2.3引腳的符號(hào)地址。若故障一直存在,則P2.3的狀態(tài)每隔1 s轉(zhuǎn)換一次。若在此引腳處接一個(gè)指示燈(硬件圖中未給出),則告警時(shí)指示燈以0.5 Hz的頻率閃爍。
(2)關(guān)于低頻振蕩信號(hào)(1 Hz)的產(chǎn)生
SUB_DIV的初值為244(11110100B),由244變到0,歷經(jīng)0.999 424 s,其中SUB_DIV.7為1的時(shí)間約占117/244 s,為0的時(shí)間約占127/244 s,故從SUB_DIV.7(LO_FREQ)獲得的就是占空比接近50%(47.95%)的低頻(1 Hz)信號(hào)。
(3)關(guān)于高頻振蕩信號(hào)(30 Hz)的產(chǎn)生
由第66行至第70行5條指令形成占空比為62.5%的30 Hz高頻信號(hào)。軟件計(jì)數(shù)器SUB_DIV的值,由244(11110100B)變?yōu)?時(shí),SUB_DIV的低3位可以構(gòu)成8種狀態(tài),如表2的左半部所示。在0.999 424 s中這8種狀態(tài)的重復(fù)次數(shù)=11110B=30。故把低3位的狀態(tài)以某種方式組合起來,就可以形成一定占空比30 Hz的高頻信號(hào)。
表2的右半部分表示不同占空比的信號(hào)作用下,在每個(gè)周期的8個(gè)狀態(tài)時(shí)刻中信號(hào)燈通斷情況。在50%占空比下信號(hào)燈的光不夠亮,故本系統(tǒng)采用62.5%的占空比。上述幾條指令的執(zhí)行結(jié)果使PARK=1(模型待機(jī))的狀態(tài)下DIM=SUB_DIV.20R(SUB_DIV.1AND SUB_DIV.0),由表2可以看出,在8個(gè)狀態(tài)時(shí)刻中,前3個(gè)狀態(tài)信號(hào)燈斷開(DIM=0),后5個(gè)狀態(tài)信號(hào)燈接通(DIM=1),形成占空比為62.5%的30 Hz高頻信號(hào)。
調(diào)節(jié)閃爍信號(hào)的亮度可以靠對SUB_DIV的低3位進(jìn)行不同的邏輯操作來實(shí)現(xiàn),例如SUB_DIV.1 ORSUB_DIV.2的結(jié)果得占空比75%;SUB_D IV.0 ORSUB_DIV.1 OR SUB_DIV.2的結(jié)果得占空比為87.5%等。但要注意,在這8個(gè)狀態(tài)時(shí)刻中,信號(hào)燈只能通斷各一次,否則閃爍頻率就變了。
(4)關(guān)于各種信號(hào)的形成
由第102行至第113行是程序的基本部分,它們根據(jù)系統(tǒng)的輸入狀態(tài)(各開關(guān)的位置)來計(jì)算送給指示燈的信號(hào)。這一段程序用布爾處理機(jī)完全實(shí)現(xiàn)了圖1所示的邏輯功能。
4 結(jié)論
采用單片機(jī)實(shí)現(xiàn)飛機(jī)航向控制顯示系統(tǒng)模型控制,具有系統(tǒng)響應(yīng)速度快,控制顯示功能直觀,課堂教學(xué)效果好的特點(diǎn)。經(jīng)過近2年教學(xué)使用和跟蹤調(diào)查,飛行學(xué)員在學(xué)科考試該部分內(nèi)容掌握非常好,后期飛行訓(xùn)練階段相關(guān)內(nèi)容與飛行實(shí)際結(jié)合效果反映較好。目前按照學(xué)科組劃分,對其他相關(guān)飛機(jī)系統(tǒng)模型進(jìn)行功能組合,以MCS-51單片機(jī)開發(fā)系統(tǒng)為基礎(chǔ),開展相關(guān)系統(tǒng)教學(xué)模型的設(shè)計(jì),并與多媒體技術(shù)交聯(lián),實(shí)現(xiàn)學(xué)科專修室建設(shè)。