基于PC/104接口的ACM程控測試系統(tǒng)設(shè)計
在對飛機(jī)附件進(jìn)行維修時,可以通過模擬飛行時可能出現(xiàn)的不同情況的環(huán)境參數(shù),預(yù)檢測附件的可能工作狀態(tài),以期達(dá)到合格的維修要求。顯然,使用傳統(tǒng)的分散型單片機(jī)控制檢測儀表系統(tǒng)要消耗大量的人力物力,而且很難保證測試系統(tǒng)的精度,系統(tǒng)的可擴(kuò)展性也較差。隨著數(shù)字信號處理技術(shù)和微電子技術(shù)的發(fā)展,在一個較小的系統(tǒng)里完成多路數(shù)據(jù)參數(shù)的實時測量處理成為可能,因此,本文設(shè)計了一種分布式的數(shù)據(jù)測量檢測系統(tǒng),對各路參數(shù)進(jìn)行分布式檢測,統(tǒng)一傳回主控室上位機(jī)進(jìn)行集中分析處理,同時上位機(jī)可以發(fā)出相應(yīng)控制命令,通過控制多路閥門通道的開度組合,得到模擬的待測附件的飛行工作環(huán)境。
圖1 系統(tǒng)結(jié)構(gòu)功能框圖
程控測試系統(tǒng)的特點
本系統(tǒng)通過控制換熱器8路閥門的不同開度組合來模擬待測附件的工作環(huán)境參數(shù),在該模擬環(huán)境下完成各參數(shù)測量,得到檢測結(jié)果。測量參數(shù)的獲取通過溫度、壓力、位移等傳感器完成,本系統(tǒng)具有如下特點:
1.測量點為15路混合信號,即既有14路模擬信號,又有1路數(shù)字信號;
2.模擬信號既有慢變化的溫度、流量等待測信號,又有快變化的位移信號,測量時數(shù)據(jù)采集頻率不同;
3.各檢測點具有較強(qiáng)的相關(guān)性;
4.系統(tǒng)需要控制8路對象組合來實現(xiàn)不同環(huán)境參數(shù)的模擬,控制相對誤差須在1%左右;
5.被控對象以及待測試對象離主控室距離較遠(yuǎn),且測量控制工作現(xiàn)場噪聲很大,環(huán)境惡劣。
基于以上特點,本文設(shè)計的ACM程控檢測系統(tǒng)如圖1所示。
由圖1可知,系統(tǒng)主要由前端模擬信號調(diào)理電路、A/D數(shù)據(jù)采集和D/A轉(zhuǎn)換芯片、FPGA、嵌入式計算機(jī)、主控室計算機(jī)和閥門幾部分組成。前端測量數(shù)據(jù)的獲取包括各種信號傳感器和前置濾波整形處理電路。一路轉(zhuǎn)速傳感器數(shù)字脈沖信號經(jīng)施密特觸發(fā)器整型后直接送入FPGA進(jìn)行脈沖記數(shù),通過8MHz時鐘采樣,完成檢測過程;模擬信號需通過A/D變換。嵌入式計算機(jī)通過PC/104接口訪問雙口RAM,讀取采集數(shù)據(jù)和寫入控制命令信息,并通過以太網(wǎng)接口與主控室的上位機(jī)進(jìn)行檢測數(shù)據(jù)及控制命令信息的傳輸交互。
ACM程控測試系統(tǒng)設(shè)計
嵌入式計算機(jī)SBC-C26
完成數(shù)據(jù)傳輸前的預(yù)處理等功能由嵌入式計算機(jī)實現(xiàn),它具有功耗低、可靠性高、功能強(qiáng)大、性價比高等優(yōu)點。本設(shè)計中采用的嵌入式PC為集智達(dá)公司的SBC-C26。
圖2 FPGA電路接口示意圖
由于本系統(tǒng)對實時性要求較高、數(shù)據(jù)交換量大,結(jié)合軟件與硬件的復(fù)雜度考慮,采用內(nèi)存直接影象的方式進(jìn)行數(shù)據(jù)交換在PC/104進(jìn)行地址映射時,使用ADDR[0:19]作為地址線;/RE和/WE為存儲器讀寫信號,DATA[7:0]為雙向數(shù)據(jù)傳輸線。
FPGA芯片EP1K100QC208
FPGA集成度高、體積小、功耗低、工作頻率高,可以集采集控制、緩沖存儲、傳輸控制以及接口控制于一個芯片內(nèi),編程配置靈活而且比較容易移植,因此,本設(shè)計選用Altera的EP1K100QC208器件來完成。
EP1K100QC208具有147個用戶I/O引腳,內(nèi)嵌RAM資源為49152Bit,可編程邏輯資源為4992個,可滿足設(shè)計需求。而且該器件兼容5V電平驅(qū)動,輸出驅(qū)動電平為3.3V,所以PC/104總線讀寫控制信號可直接輸入FPGA而省去電平轉(zhuǎn)換芯片;對于需要電平轉(zhuǎn)換的雙向數(shù)據(jù)線,可用74HC245三態(tài)隔離芯片,通過控制74HC245的OE和DIR引腳來實現(xiàn)數(shù)據(jù)傳輸及驅(qū)動電平轉(zhuǎn)換;FPGA控制完成一次采集后,向嵌入式計算機(jī)發(fā)送的中斷信號通過TPS61032升壓DC-DC芯片連接到PC/104總線INT引腳,該芯片可實現(xiàn)3.3V到5V電平轉(zhuǎn)換。
系統(tǒng)關(guān)鍵電路設(shè)計
為了協(xié)調(diào)A/D采集、D/A控制與PC/104總線傳輸速度,保證數(shù)據(jù)傳輸?shù)目煽啃?,采用緩沖存儲電路設(shè)計,用FPGA內(nèi)嵌RAM資源設(shè)計成雙口RAM,以實現(xiàn)采集數(shù)據(jù)緩沖存儲。FPGA完成一次采集后向嵌入式計算機(jī)發(fā)中斷信號,通知嵌入式計算機(jī)讀取數(shù)據(jù),且FPGA通過查詢主控室計算機(jī)發(fā)送給嵌入式計算機(jī),再經(jīng)嵌入式計算機(jī)寫入FPGA寄存器的命令字控制D/A轉(zhuǎn)換、啟動和停止A/D采集以及控制雙口RAM的讀寫時序。由于控制閥需要4~20mA電流驅(qū)動,而D/A轉(zhuǎn)換芯片為0~5V電壓輸出,所以D/A轉(zhuǎn)換輸出控制信號需通過AD694芯片完成0~5V電壓到4~20mA電流信號的轉(zhuǎn)換。本系統(tǒng)硬件電路接口關(guān)鍵設(shè)計如圖2所示。
系統(tǒng)電路設(shè)計的FPGA實現(xiàn)
A/D采集控制及數(shù)據(jù)緩存電路設(shè)計
讀寫控制電路的作用是產(chǎn)生合適的控制脈沖,控制A/D轉(zhuǎn)換以及將轉(zhuǎn)換結(jié)果寫入雙口RAM。本設(shè)計選用的A/D轉(zhuǎn)換芯片為2片MAX1262,12位轉(zhuǎn)換精度,采用8通道單端模擬輸入方式,可實現(xiàn)14路模擬信號采集測量。FPGA通過發(fā)送寫脈沖和寫控制字完成控制啟動和通道選擇, A/D轉(zhuǎn)換結(jié)束狀態(tài)信號INT有效后發(fā)送讀信號,完成檢測結(jié)果的讀入,不同通道的數(shù)據(jù)采集頻率控制可通過寫入通道控制字來完成。當(dāng)讀入采集結(jié)果后就按低、高位字節(jié)順序?qū)懭腚p口RAM,雙口RAM通過直接例化Quartus軟件中的宏模塊實現(xiàn),其數(shù)據(jù)線位寬為8位。
D/A轉(zhuǎn)換控制電路設(shè)計
FPGA通過查詢命令寄存器值執(zhí)行相應(yīng)得D/A轉(zhuǎn)換,完成系統(tǒng)控制操作,得到相應(yīng)實現(xiàn)的模擬環(huán)境條件參數(shù)。由于需要8路D/A轉(zhuǎn)換,所以選用具有8通道的單片TLC5628實現(xiàn),其數(shù)據(jù)轉(zhuǎn)換精度為8位,0~5V模擬電壓輸出,可以滿足設(shè)計要求。該芯片數(shù)據(jù)接口為3線串行總線,轉(zhuǎn)換時在時鐘下降沿串行輸入3bit通道選擇、1bit范圍控制、8bit數(shù)據(jù)轉(zhuǎn)換位,通過啟動異步load控制信號完成D/A轉(zhuǎn)換功能。
PC/104總線接口設(shè)計
PC/104總線接口設(shè)計實際上是按照PC/104總線時序完成地址譯碼鎖存和數(shù)據(jù)線的數(shù)據(jù)雙向傳輸功能。按照PC/104總線存儲器讀寫時序進(jìn)行FPGA電路設(shè)計,經(jīng)驗證,完全能夠由SBC-C26經(jīng)該接口電路完成對FPGA內(nèi)部RAM或寄存器的正常讀寫功能。該接口電路利用Verilog語言描述,經(jīng)由Synplify Pro 綜合得到RTL網(wǎng)表。
整個系統(tǒng)控制電路采用FPGA進(jìn)行設(shè)計,共占用EP1K100器件近1000個邏輯單元,在精簡系統(tǒng)硬件的同時,為系統(tǒng)功能的擴(kuò)展提供了較大的靈活性,是一種比較理想的程控測試系統(tǒng)硬件設(shè)計解決方案。
結(jié)語
整個系統(tǒng)控制電路采用FPGA設(shè)計,精簡了系統(tǒng)硬件,采取A/D轉(zhuǎn)換芯片模擬電源由線性穩(wěn)壓模塊單獨提供、D/A轉(zhuǎn)換芯片數(shù)控端與FPGA經(jīng)光耦隔離和印制板表面鋪銅等抗干擾措施,保證和提高了系統(tǒng)數(shù)據(jù)測量的可靠性和精度;使用以太網(wǎng)通信方式,有效解決了遠(yuǎn)距離測量數(shù)據(jù)傳輸問題。