基于FPGA的應(yīng)力應(yīng)變信號監(jiān)測系統(tǒng)的研究設(shè)計
摘要:文中介紹了一種基于FPGA的多通道應(yīng)力應(yīng)變信號監(jiān)測系統(tǒng)的設(shè)計方案,該系統(tǒng)的研究為一些大型建筑結(jié)構(gòu)由于年代久遠(yuǎn)而需要維護(hù)、維修提供客觀依據(jù),主要闡述了前端信號采集電路硬件以及FPGA上各個控制模塊的設(shè)計,系統(tǒng)可以通過NiosⅡ軟核修改FPGA中的各項采樣參數(shù),如采樣率、采樣通道數(shù)、起始通道等,來實現(xiàn)對不同對象的應(yīng)變情況進(jìn)行實時監(jiān)測,模擬實驗表明系統(tǒng)運行穩(wěn)定可靠,采集精度高,具有很高的實用價值。
關(guān)鍵詞:FPGA;數(shù)據(jù)采集;應(yīng)力應(yīng)變;NiosⅡ
應(yīng)力應(yīng)變是一個物體受力后機構(gòu)的變化情況,應(yīng)變就是受力后產(chǎn)生的形變率,通過對應(yīng)變進(jìn)行檢測,就可以知道物體的受力情況和形變情況。
1 設(shè)計思路
本文設(shè)計的應(yīng)力應(yīng)變檢測系統(tǒng)可以實現(xiàn)數(shù)據(jù)的采集、處理和存儲功能。整個系統(tǒng)主要由Altera公司的FPGA芯片CycloneII 2C35F672C6,MAX公司的ADC芯片MAX197,DAC 0832以及信號調(diào)理電路等外圍電路組成。系統(tǒng)硬件簡圖如圖1所示。NiosⅡ軟核輸出控制信號,控制FPGA。當(dāng)NiosⅡ軟核啟動FPGA開始數(shù)據(jù)采集后,F(xiàn)PGA通過MAX197控制模塊輸出通道地址給ADC芯片MAX197,F(xiàn)PCA控制DAC芯片輸出模擬量對這一通道的輸入量進(jìn)行粗調(diào)零。然后由FPGA控制ADC芯片MAX197進(jìn)行模數(shù)轉(zhuǎn)換。將轉(zhuǎn)換得到的12位數(shù)字量輸送給FPGA。在FPGA內(nèi)部將12位數(shù)據(jù)進(jìn)行細(xì)調(diào)零等相應(yīng)的數(shù)據(jù)處理,然后加上4位標(biāo)明通道的數(shù)據(jù)送入FIFO中。當(dāng)FIFO達(dá)到半滿時,NiosⅡ軟核將數(shù)據(jù)讀出進(jìn)行相應(yīng)的處理,這時候整個數(shù)據(jù)采集的過程完成,如果數(shù)據(jù)出現(xiàn)異常,將異常數(shù)據(jù)通過數(shù)據(jù)發(fā)送單元(DTU)發(fā)送至監(jiān)測中心,系統(tǒng)總體框圖如圖1所示。
2 信號調(diào)理電路的設(shè)計
信號調(diào)理電路主要由供電電源模塊、應(yīng)變電橋穩(wěn)壓模塊、電阻應(yīng)變橋式電路、前置放大電路、二級放大及濾波電路組成,框圖如圖2所示。電源模塊提供可靠穩(wěn)定的電壓;應(yīng)變橋式電路作為信號轉(zhuǎn)換電路,把力信號變換成電壓信號;前置放大主要由高精度儀用運算放大器AD620為核心,對輸入信號進(jìn)行前置放大并對噪聲進(jìn)行有效抑制,二級放大濾波電路作為后級放大電路同時進(jìn)行低通濾波,防止高頻信號的干擾。
3 A/D轉(zhuǎn)換器的選擇及電路連接
A/D轉(zhuǎn)換器是數(shù)據(jù)采集系統(tǒng)的核心器件,它的技術(shù)指標(biāo)有采樣通道數(shù)目、輸入范同、輸入方式、采樣率、分辨率、精度、編碼寬度等,其中采樣率、分辨率、精度是A/D轉(zhuǎn)換器的3個重要指標(biāo),直接影響數(shù)據(jù)采集系統(tǒng)的精度。
3.1 采樣率的選擇
采樣率是指在單位時間內(nèi)采集系統(tǒng)對模擬信號的采集次數(shù)。一個高采樣率可以再給定時間下采集更多數(shù)據(jù),因此能更好的反映原始信號,但也并不是采樣率越高越好,如果采樣率太高,當(dāng)然會得到完美的信號,但同時也會得到大量無用的數(shù)據(jù),這將浪費寶貴的存儲空間,但如果采樣率太低,雖然節(jié)省存儲空間,將會得到一個無用的采集結(jié)果:波形看似正確,實際上是完全錯誤的。
3.2 分辨率的選擇
分辨率是指A/D轉(zhuǎn)換器所能分辨模擬輸入信號的最小變化量,它代表了數(shù)字值上的最低有效位1(LSB),也稱為編碼寬度。分辨率是由A/D轉(zhuǎn)換器的位數(shù)決定的,位數(shù)越大,分辨率就越高,信號范圍被分割成的區(qū)間數(shù)目就越多,輸入信號的細(xì)分程度就越高,因此能探測到的電壓變量就越小,這對于提高像FFT這樣的數(shù)學(xué)分析計算非常重要,但同時也意味著更高的成本。A/D轉(zhuǎn)換器的位數(shù)常用的有8位、12位、14位、16位,甚至還有24位的。
過高的分辨率除了成本高,也會帶來其他的問題:比如為獲得一個穩(wěn)定的信號,A/D轉(zhuǎn)換需要更多的時間也就是說,分辨率越高,A/D采樣越慢。
3.3 精度的選擇
精度反映了測量與實際信號值的接近程度,用%來表示,例如,一個具有0.1%系統(tǒng)精度的數(shù)據(jù)采集系統(tǒng),測量一個理想的10V的電壓源。測量結(jié)果帶有0.1%的誤差,它可能顯示高至10.01V或低至9.99V的測量值。顯然精度越高,數(shù)據(jù)質(zhì)量也就越高,測量結(jié)果也就越加可信。
綜合上面幾個因素考慮,本系統(tǒng)的A/D轉(zhuǎn)換器選用MAX197,MAX197芯片是美國MAXIM公司近年的新產(chǎn)品,是多量程(±10V,±5V,0~10V,0~5V)、8通道、12位高精度的A/D轉(zhuǎn)換器。它采用逐次逼近工作方式,有標(biāo)準(zhǔn)的微機接口。三態(tài)數(shù)據(jù)I/O口用做8位數(shù)據(jù)總線,數(shù)據(jù)總線的時序與絕大多數(shù)通用的微處理器兼容。全部邏輯輸入和輸出與TTL/CMOS電平兼容。新型A/D轉(zhuǎn)換器芯片MAX197與一般A/D轉(zhuǎn)換器芯片相比,具有極好的性價比,僅需單一+5V供電,且外圍電路簡單,可簡化電路設(shè)計。
MAX197工作時,參考電壓可以由片內(nèi)提供或片外輸入,視實際需要而定,當(dāng)使用片內(nèi)參考電壓時,可在REFADJ端和REF端分別獲得精度為±1.5%的參考電壓2.5V和4.096V。當(dāng)使用外部參考電壓時,參考電壓可以分為從REF或REFADJ輸入當(dāng)從REF輸入時,只要把REFADJ和VDD相連,并在輸入端REF和地之間加接一個4.7μF旁路電容;當(dāng)從REFADJ輸入時,只要REF端通過4.7μF電容旁路到地,并在輸入端與地之間接一個0.01μF旁路電容,這種輸入方式可以省掉外接緩沖放大器,MAX197的電路接法如圖3所示。
4 基于FPGA的控制模塊的設(shè)計:
本設(shè)計利用SOPC技術(shù)存FPGA內(nèi)部集成Nios II嵌入式處理器作為控制模塊,可以像單片機一樣用C語言對其進(jìn)行編程開發(fā),易于實現(xiàn)復(fù)雜功能,而且使用Nios II開發(fā)時可以根據(jù)實際情況選擇所需的PIO和外設(shè)數(shù)量,定制出所需的系統(tǒng),避免資源浪費,降低系統(tǒng)功耗。
4.1 Nios II軟核的搭建
首先需要添加的是CPU,NiosII軟核為用戶提供了三種具有不同功能的CPU配置。本系統(tǒng)選擇Nios II/f類型,對系統(tǒng)所需CPU的性能和邏輯資源的占用率進(jìn)行了平衡。
4.2 建立鎖相環(huán)PLL模塊
搭建好軟核之后還需要建立一個鎖相環(huán),對時鐘進(jìn)行倍頻.由于前期所用的開發(fā)板上是20MHz的有源品振,需要將其倍頻到100MHz以滿足之前搭建的軟核的時鐘,還需要為SDRAM提供100MHz的時鐘,在Quartus II9.0中用HDL語言設(shè)計生成的A/D控制模塊如圖4所示。
4.2 A/D轉(zhuǎn)換器MAX197的控制模塊設(shè)計
MAX197控制模塊主要用來產(chǎn)生MAX197的控制信號,控制MAX197 A/D轉(zhuǎn)換芯片完成模數(shù)轉(zhuǎn)換,并將轉(zhuǎn)換的結(jié)果存入異步FIFO,存Quartus
II9.0中用HDL語言設(shè)計生成的A/D控制模塊如圖5所示。
模塊部分程序參考如下:
4.3 D/A轉(zhuǎn)換器0832控制模塊
FPGA控制DA芯片,使DAC0832的輸出與ADC芯片MAX197的輸入模擬電壓相加,抵消輸入的零點,產(chǎn)生0—4.096V有效輸出送到ADC芯片MAX197輸入端進(jìn)行模數(shù)轉(zhuǎn)換,控制模塊如圖6所示。
4.4 雙端口異步FIFO緩存模塊
由于軟核處理器和FIFO的時鐘不同,處理器讀速度遠(yuǎn)遠(yuǎn)大于FPGA采集數(shù)據(jù)的速度,因此設(shè)計用FIFO在處理器和FPGA間的跨時鐘域數(shù)據(jù)傳輸中起緩存的作用。在Quartus II9.0中用Altera提供的免費FIFO核設(shè)計生成的FIFO緩存模塊如圖7所示。
5 數(shù)據(jù)傳輸模塊設(shè)計
數(shù)據(jù)是通過無線的方式進(jìn)行數(shù)據(jù)傳輸如圖8所示,通過CDMA網(wǎng)絡(luò)傳輸,工作量小,且方便維護(hù),成本也低,可以通過CDMA網(wǎng)絡(luò)實現(xiàn)數(shù)據(jù)的實時傳輸。
監(jiān)控中心采用查詢方式接收/發(fā)送數(shù)據(jù),數(shù)字信號處理模塊采用中斷方式接收數(shù)據(jù)。查詢方式發(fā)送數(shù)據(jù)。在監(jiān)控中心向數(shù)字信號處理模塊發(fā)送數(shù)據(jù)時,先把數(shù)據(jù)發(fā)送到管理模塊,管理模塊再將數(shù)據(jù)發(fā)送到數(shù)字信號處理模塊,當(dāng)數(shù)據(jù)發(fā)送結(jié)束時,比較數(shù)字信號處理模塊的模塊編號和監(jiān)控中心發(fā)送的模塊編號是否匹配,如果匹配則接收數(shù)據(jù)并存入數(shù)據(jù)庫,并實時顯示,監(jiān)控中心的數(shù)據(jù)顯示模塊主要顯示監(jiān)測點,以及對應(yīng)的應(yīng)變值、溫度值和應(yīng)變、溫度的最大值和最小值。并將數(shù)據(jù)保存起來然后通過對數(shù)據(jù)的分析處理,對系統(tǒng)的結(jié)構(gòu)安全狀況做出評估。
6 結(jié)束語
本設(shè)計將FPGA (現(xiàn)場可編程門陣列)引入應(yīng)力應(yīng)變檢測系統(tǒng)的設(shè)計。FPGA的時鐘頻率高、內(nèi)部延時小、以FPGA內(nèi)部的強大邏輯功能代替復(fù)雜的外圍電路來控制數(shù)據(jù)采集模塊組,既保證了數(shù)據(jù)采集模塊實時、同步采樣,又簡化了硬件電路,增強了系統(tǒng)的抗干擾能力,具有很高的實用價值。