《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于Intel 8254的運(yùn)動平臺數(shù)/模轉(zhuǎn)換電路設(shè)計
基于Intel 8254的運(yùn)動平臺數(shù)/模轉(zhuǎn)換電路設(shè)計
現(xiàn)代電子技術(shù)
盧 穎,王勇亮,侯士豪,孫方義
摘要: 提出了一種新型的運(yùn)動平臺數(shù)/模轉(zhuǎn)換(D/A)電路。利用可鳊程定時/計數(shù)器8254具有可編程單次脈沖、對主頻進(jìn)行分頻等特點(diǎn),設(shè)計了一種數(shù)/模轉(zhuǎn)換電路。實(shí)際應(yīng)用表明,這種數(shù)/模轉(zhuǎn)換電路簡單實(shí)用,工作穩(wěn)定,且成本低、抗干擾能力較強(qiáng)、實(shí)時性好,已經(jīng)成功地應(yīng)用于某型飛行模擬器三自由度運(yùn)動平臺控制系統(tǒng)中。該電路還可推廣應(yīng)用于飛行模擬器的儀表控制系統(tǒng)、操縱負(fù)荷仿真系統(tǒng)的數(shù)/模轉(zhuǎn)換電路中。
Abstract:
Key words :

摘要:提出了一種新型的運(yùn)動平臺數(shù)/模轉(zhuǎn)換(D/A)電路。利用可鳊程定時/計數(shù)器8254具有可編程單次脈沖、對主頻進(jìn)行分頻等特點(diǎn),設(shè)計了一種數(shù)/模轉(zhuǎn)換電路。實(shí)際應(yīng)用表明,這種數(shù)/模轉(zhuǎn)換電路簡單實(shí)用,工作穩(wěn)定,且成本低、抗干擾能力較強(qiáng)、實(shí)時性好,已經(jīng)成功地應(yīng)用于某型飛行模擬器三自由度運(yùn)動平臺控制系統(tǒng)中。該電路還可推廣應(yīng)用于飛行模擬器的儀表控制系統(tǒng)、操縱負(fù)荷仿真系統(tǒng)的數(shù)/模轉(zhuǎn)換電路中。
關(guān)鍵詞:運(yùn)動平臺;可編程定時/計數(shù)器8254;數(shù)/模轉(zhuǎn)換電路;可編程單次脈沖

0 引言
    飛行模擬器的運(yùn)動平臺主要是用來向飛行員提供飛機(jī)運(yùn)動的動感信息,使飛行人員感覺與在被模擬的真實(shí)運(yùn)動飛機(jī)上、在同樣環(huán)境和任務(wù)下的動感相一致。運(yùn)動平臺系統(tǒng)一般由機(jī)械系統(tǒng)、液壓系統(tǒng)、控制系統(tǒng)組成。數(shù)/模轉(zhuǎn)換電路是控制系統(tǒng)的的核心,它要把經(jīng)運(yùn)動平臺算法解算出的各液壓缸伸縮量的數(shù)字信號轉(zhuǎn)換成模擬量信號,然后經(jīng)濾波放大、電液伺服閥后,由電液伺服閥驅(qū)動各液壓缸運(yùn)動,進(jìn)而驅(qū)動運(yùn)動平臺仿真飛機(jī)飛行時的各種姿態(tài)及地面滑跑、著陸及放起落架時的振動等。
    數(shù)/模轉(zhuǎn)換電路一般使用專門的D/A轉(zhuǎn)換器,D/A轉(zhuǎn)換器的種類比較多,如有權(quán)電阻網(wǎng)絡(luò)型、倒T型電阻網(wǎng)絡(luò)型、權(quán)電流型、開關(guān)數(shù)型、權(quán)電容網(wǎng)絡(luò)型、串行輸入型等,本文利用Intel 8254設(shè)計了一種簡單實(shí)用的數(shù)模轉(zhuǎn)換(D/A)電路,并應(yīng)用于飛行模擬器三自由度運(yùn)動平臺控制系統(tǒng)中。

1 運(yùn)動平臺控制系統(tǒng)組成
    三自由度運(yùn)動平臺控制系統(tǒng)硬件由平臺控制計算機(jī)、接口系統(tǒng)、濾波功放板、看門狗電路和液壓伺服系統(tǒng)組成,接口系統(tǒng)包括D/A,A/D轉(zhuǎn)換電路(見圖1)。通過主計算機(jī)接收到飛行方程解算出的與控制平臺有關(guān)的各種信息,由平臺控制計算機(jī)進(jìn)行處理,經(jīng)數(shù)/模轉(zhuǎn)換(D/A)、濾波、功放成為伺服閥控制指令,驅(qū)動液壓缸平滑、穩(wěn)定的伸縮,實(shí)時產(chǎn)生和被模擬的飛機(jī)相似的過載、姿態(tài)、振動等運(yùn)動信息。液壓缸的伸長量經(jīng)位移傳感器送給比較放大器,形成硬件閉環(huán)控制,位移信號經(jīng)模/數(shù)轉(zhuǎn)換(A/D),送給平臺控制計算機(jī),用來對平臺極限位置的限制。同時,由看門狗電路實(shí)時監(jiān)視控制電路的工作情況,確保運(yùn)動平臺的安全??刂葡到y(tǒng)硬件電路的核心為自行研制的D/A轉(zhuǎn)換電路及看門狗電路。

a.jpg



2 D/A轉(zhuǎn)換電路
    三自由度運(yùn)動平臺數(shù)/模轉(zhuǎn)換電路主要由74LS138譯碼器、可編程定時器/計數(shù)器芯片8254、8位數(shù)據(jù)緩存器74LS245等組成,核心元件是可編程定時器/計數(shù)器芯片8254。
2.1 8254簡介
    可編程定時器/計數(shù)器是為方便計算機(jī)系統(tǒng)的設(shè)計和應(yīng)用而研制的,定時值及其范圍可以很容易地由軟件來控制和改變,能夠滿足各種不同的定時和計數(shù)要求,因此得到廣泛應(yīng)用。8254是Intel公司生產(chǎn)的通用定時/計數(shù)器,是在8253的基礎(chǔ)上稍加改進(jìn)而推出的改進(jìn)型產(chǎn)品,兩者硬件組成和引腳完全相同。
    8254是24腳雙列直插式芯片,用+5 V電源供電。芯片內(nèi)有3個相互獨(dú)立的16位定時/計數(shù)器。主要管腳如圖2所示。

b.jpg


    數(shù)據(jù)線D0~D7與CPU的數(shù)據(jù)總線相連接,是雙向三態(tài)的數(shù)據(jù)線,用于與CPU交換信息。讀信號RD是一個低電平有效的由CPU發(fā)來的控制信號,RD信號通知8254,CPU要讀8254中的某個通道的計數(shù)值或狀態(tài)字,也就是說由RD來讀取8254中的某個計數(shù)器的相關(guān)內(nèi)容;WR是一個低電平有效的由CPU發(fā)來的控制信號,CPU通過此信號向8254發(fā)送控制字和計數(shù)值;片選信號CS是一個低電平有效的信號,CPU用此信號來選擇8254。在芯片不被選中的情況下,讀信號和寫信號沒有意義,也不起作用;地址線A1,A0一般接到系統(tǒng)地址總線的A1,A0上,它們的功能是編碼選擇3個通道和1個控制寄存器,其端口編碼略,CS,RD,WR,A1和A0組合起來才能對寄存器進(jìn)行選擇和操作。
    CLK0~CLK2是3個通道的外部時鐘脈沖收入線,是8254作計數(shù)器或定時器的計數(shù)脈沖;GATE0~GATE2是3個通道的門控信號輸入線,高電平有效,用于啟動或禁止通道工作的外部信號;OUT0~OUT2是3個通道的計數(shù)為0/定時時間到脈沖輸出線,輸出波形取決于8254通道的工作方式。
    8254的每一個計數(shù)器都有6種工作方式。不同的工作方式下,計數(shù)過程的啟動方式不同,OUT端的輸出波形不同,自動重復(fù)功能、GATE的控制作用以及更新計數(shù)初值對計數(shù)過程的影響也不完全相同。同一芯片中的3個計數(shù)器,可以分別編程選擇不同的工作方式。三自由度運(yùn)動平臺數(shù)/模轉(zhuǎn)換電路中的計數(shù)器使用了方式1和方式2。
2.1.1 工作方式1
    8254工作方式1——可編程單次脈沖,是一種硬件啟動計數(shù)工作方式,不能自動重復(fù)但通過GATE的正跳變可使計數(shù)過程重新開始。在寫入方式1的控制字后,OUT成為高電平,在寫入計數(shù)初值后,要等GATE信號出現(xiàn)正跳變時才能開始計數(shù)。在下一個CLK脈沖到來后,OUT變低,將計數(shù)初值送入計數(shù)器并開始減1計數(shù),直到計數(shù)器減到0后OUT變?yōu)楦唠娖健?br />     計數(shù)過程一旦啟動,GATE即使變成低電平也不會使計數(shù)中止。計數(shù)完成后若GATE再來一個正跳變,計數(shù)過程又重復(fù)1次。也就是說對應(yīng)GATE的每一個正跳變,計數(shù)器都輸出1個寬度為N*TCLK(其中N為計數(shù)初值,TCLK為CLK信號的周期)的負(fù)脈沖,因此稱這種方式為可編程單次脈沖方式,計數(shù)初值N=3的工作波形圖如圖3所示。

c.jpg


    在計數(shù)過程啟動之后計數(shù)完成之前,若GAFE又發(fā)生正跳變,則計數(shù)器又從初值開始重新計數(shù),OUT端仍為低電平,兩次的計數(shù)過程合在一起使OUT輸出的負(fù)脈沖加寬了。
    在方式1計數(shù)過程中若寫入新的計數(shù)初值,也只是寫入到計數(shù)初值寄存器中,并不馬上影響當(dāng)前計數(shù)過程,同樣要等到下一個GATE正跳變啟動信號,計數(shù)器才接收新初值重新計數(shù)。
2.1.2 工作方式2
    8254工作方式2——分頻工作方式,既可以用軟件啟動(GATE=1時寫入計數(shù)初值后啟動),也可以用硬件啟動(GATE=0時寫入計數(shù)初值后并不立即開始計數(shù),等GATE由低變高時啟動計數(shù))。方式2一旦啟動,計數(shù)器就可以自動重復(fù)地工作。
    方式2工作波形圖如圖4所示,寫入控制字后,OUT信號變?yōu)楦唠娖?,若計?shù)初值N=3,啟動計數(shù)后,以CLK信號的頻率進(jìn)行減1計數(shù)。當(dāng)減到1時,OUT輸出寬度為一個CLK時鐘周期的負(fù)脈沖,OUT恢復(fù)成高電平后,計數(shù)器又重新開始計數(shù)。可以看出,OUT輸出信號的頻率為CLK信號頻率的1/N,即N次分頻,故稱這種工作方式為分頻工作方式。

d.jpg


    方式2需要GATE信號保持高電平。當(dāng)GATE變?yōu)榈碗娖綍r,停止計數(shù)。GATE由低變高后,計數(shù)初值又重新裝入減1計數(shù)器中開始計數(shù)。
    方式2在計數(shù)過程中若寫入新的計數(shù)初值,并不影響當(dāng)前的計數(shù)過程。在本次計數(shù)結(jié)束后,才以新的計數(shù)初值開始新的分頻工作方式。
2.2 D/A轉(zhuǎn)換原理
    采用1片74LS138譯碼器、2片可編程定時器/計數(shù)器芯片8254、1片8位數(shù)據(jù)緩存器74LS245組成D/A變換電路,如圖5所示。

d.jpg


    74LS138譯碼器略。其中1片8254(U2的計數(shù)器2)的計數(shù)器工作在方式2,對時鐘信號進(jìn)行分頻,輸出信號OUT為一寬度為一個時鐘周期的負(fù)脈沖,作為另外5個計數(shù)器的門控啟動信號,啟動8254開始進(jìn)行D/A變換。其余5個計數(shù)器工作在方式1,在門控信號GATE上跳后的下一時鐘的下降沿處開始計數(shù),輸出OUT將變低,直到計數(shù)器的值減少到零時輸出將變高。給定的計數(shù)值越小,輸出OUT“高”保持越長,平均電壓越大;給定的計數(shù)值越大,輸出OUT“高”保持越短,平均電壓越小,如輸出OUT的“高”和“低”相同,則輸出平均電壓為2.5 V,如輸出OUT全為“高”,則輸出平均電壓為5 V,如輸出OUT全為“低”,則輸出平均電壓為0 V,這樣利用調(diào)制脈寬的方法就實(shí)現(xiàn)了D/A變換。
    8254輸出的5路電壓信號經(jīng)8位數(shù)據(jù)緩存器74LS245輸出。其中OUT0,OUT1,OUT2作為三路控制信號送給3個電液伺服閥,由電液伺服閥驅(qū)動各液壓缸運(yùn)動,進(jìn)而驅(qū)動運(yùn)動平臺仿真飛機(jī)飛行時的升降、傾斜、俯仰等位姿。OUT3和OUT4這2路電壓信號作為備份,維修時使用。

3 軟件實(shí)現(xiàn)
    8254的內(nèi)部功能通過系統(tǒng)軟件編程來確定,系統(tǒng)通過接口傳送所要求的工作方式和數(shù)值來初始化計數(shù)器,每個計數(shù)器都是獨(dú)立地通過一個命令數(shù)據(jù)來編程,D/A轉(zhuǎn)換程序流程圖如圖6所示。

f.jpg


    程序的設(shè)計思想是首先為8254進(jìn)行端口地址分配,以便CPU對硬件進(jìn)行訪問并對8254賦初值。開始計數(shù)時每隔一段時間(ms)對計數(shù)器進(jìn)行1次讀數(shù),并將當(dāng)前所得計數(shù)值與上一計數(shù)時間所得計數(shù)值相減,將得到的計數(shù)差值進(jìn)行累加,最終所得值即為8254讀入的脈沖方波個數(shù)。將此脈沖方波輸出,就實(shí)現(xiàn)了D/A轉(zhuǎn)換,得到系統(tǒng)所需要的模擬電壓值。
    8254控制字由D7~D0組成,D7D6選擇計數(shù)器0,1,2或鎖存計數(shù)器;D5D4選擇操作類型,如先讀/寫低8位,后讀/寫高8位等;D3D4D1選擇計數(shù)工作方式,有6種工作方式,如方式1為001、方式2為010等;D0位選擇計數(shù)器的數(shù)制,該系統(tǒng)采用二進(jìn)制,D0=0,而計數(shù)初值取256,即十六進(jìn)制的FF。

4 結(jié)語
    基于Intel 8254的運(yùn)動平臺數(shù)/模轉(zhuǎn)換電路簡單實(shí)用,實(shí)時性好,已經(jīng)應(yīng)用于我單位研制的某型飛機(jī)飛行模擬器的三自由度運(yùn)動平臺控制系統(tǒng)、儀表控制系統(tǒng)、操縱負(fù)荷仿真系統(tǒng)等的數(shù)/模轉(zhuǎn)換電路中。該電路還可推廣應(yīng)用于工業(yè)控制系統(tǒng)中的數(shù)模轉(zhuǎn)換電路中。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。