當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于NiosII的便攜式超聲波流量計設(shè)計

摘要:介紹了便攜式超聲波流量計的工作原理和系統(tǒng)硬件結(jié)構(gòu),分析了系統(tǒng)收發(fā)電路各個模塊的設(shè)計,著重介紹了基于FPGA軟核NioslI的便攜式超聲波流量計的數(shù)字電路部分設(shè)計。試驗結(jié)果表明,系統(tǒng)工作穩(wěn)定,能夠滿足測量精度要求,并且減小了便攜式超聲波流量計的體積,降低了產(chǎn)品成本。
關(guān)鍵詞:便攜式超聲波流量計;SOPC;NioslI

引言
    超聲波流量計是隨著IC技術(shù)迅速發(fā)展而開始得到實際應(yīng)用的一種非接觸式儀表。它是一種利用聲學(xué)原理工作的新型流量測量儀表。與傳統(tǒng)流量計(如孔板、渦輪流量計等)相比,它具有測量準(zhǔn)確度幾乎不受介質(zhì)溫度、壓力影響等優(yōu)點,尤其是在大管徑流量測量方面,其優(yōu)越性更加明顯,因此得到了越來越廣泛的應(yīng)用。
    近年來,隨著Altera公司32位軟核CPU NiosII的推出,基于FPGA的SOPC(System On a Programmable Chip)技術(shù)發(fā)展越來越快。SOPC是可編程系統(tǒng),具有靈活的設(shè)計方式,并且可裁剪,可擴充,可升級,同時具備軟硬件在線系統(tǒng)可編程的功能。SOPC兼具PLD和FPGA的優(yōu)點,它的特點包括:至少包含一個嵌入式處理器內(nèi)核;具有小容量片內(nèi)高速RAM資源;有足夠的片上可編程邏輯資源;有處理器調(diào)試接口和FPGA編程接口;可能包含部分可編程模擬電路;單芯片,低功耗,微封裝。正是基于這些優(yōu)點,基于NiosII的SOPC得到了越來越廣泛的應(yīng)用。
    本文就是基于超聲波以及SOPC這兩項技術(shù)來設(shè)計便攜式的超聲波流量計,充分發(fā)揮這兩項技術(shù)的優(yōu)點,實現(xiàn)對液體、氣體的高精度測量。

1 工作原理及系統(tǒng)組成
    本系統(tǒng)利用時差法進行流速測量:安裝于被測容器頂部的收發(fā)一體的超聲波換能器(A或B)通過空氣向被測物體發(fā)射一束超聲波,該聲波經(jīng)被測物體反射后,回波被換能器(B或A)接收并被轉(zhuǎn)換為電信號。原理圖如圖1所示。


    這樣,在已知安裝角度θ和管徑D的條件下,測量A到B的傳播時間tAB以及從B到A的傳播時間tBA,通過計算可得
   
    這種算法只需測出tAB與tBA就可以得到流速V,而通過對流速進行積分運算就可以進一步算得流量,這就是時差法測量流速的基本原理。
    整個便攜式超聲波流量計系統(tǒng)組成如圖2所示。系統(tǒng)由脈沖發(fā)射電路、回波接收電路、信號處理電路和CPU控制電路組成。脈沖發(fā)射電路是輸出一定超聲波頻率的脈沖激勵信號經(jīng)功率放大和升壓后驅(qū)動超聲波換能器發(fā)射超聲波;回波接收電路即是接收回波信號;信號處理電路用于對回波信號進行放大、帶通濾波、自動增益控制、電壓比較等處理;CPU控制電路控制發(fā)射信號、控制模擬開關(guān)、捕獲計時、數(shù)據(jù)處理及與外部設(shè)備通信。

2 模擬電路部分設(shè)計
2.1 超聲波前端驅(qū)動電路
    如圖2所示,超聲波換能器驅(qū)動電路產(chǎn)生一個具有特定頻率、脈沖寬度和輸出功率的電脈沖去激勵超聲波換能器,進而產(chǎn)生超聲波向外發(fā)射。對于超聲波換能器,超聲波換能器驅(qū)動電路提供的功率越大,超聲波換能器將電能轉(zhuǎn)換為聲能的效果越好,所以超聲波換能器驅(qū)動電壓應(yīng)該越大越好,但需要注意驅(qū)動電壓壓值不能超過換能器壓降極限。本系統(tǒng)應(yīng)用晶體管組成推挽式電路結(jié)合場效應(yīng)管電路來實現(xiàn)功率放大。

[!--empirenews.page--]
    系統(tǒng)超聲波換能器驅(qū)動信號是由微處理器產(chǎn)生的,微處理器產(chǎn)生一個200 kHz的矩形脈沖信號,經(jīng)光耦隔離后進入功率放大電路。根據(jù)換能器的特點,該矩形脈沖信號占空比為2%。超聲波換能器激勵信號如圖3所示。


2.2 超聲波信號處理電路
    超聲發(fā)射換能器發(fā)射的超聲波信號,經(jīng)過管壁和流體,衰減比較大,因此超聲波接收換能器接收的信號比較微弱,通常只為幾十mV數(shù)量級,這時放大器的噪聲對測量精度的影響也比較大。同時,由于超聲波流量計中使用的超聲波頻率較高,所以要求運算放大的增益帶寬積足夠高,因此該級電路采用低噪聲高速運算放大器。本系統(tǒng)中選用MAX410作為放大器。
    在超聲波流量計工作的過程中,由于振動、流動及工業(yè)現(xiàn)場的管道噪聲和變頻設(shè)備的電噪聲等電子干擾,會引起周期性的噪聲信號出現(xiàn),并導(dǎo)致在相關(guān)圖上出現(xiàn)周期性波峰。當(dāng)其疊加到流動噪聲的相關(guān)曲線上,會使真實的渡越時間對應(yīng)的波峰不明顯,甚至被其他的波峰掩蓋,無法得到正確的測量結(jié)果。通過低噪聲高速運算放大器對信號進行放大后還需要對信號進行濾波。本系統(tǒng)中的濾波電路為帶通濾波。系統(tǒng)中換能器發(fā)射接收的超聲波中心頻率為200 kHz,所以需要設(shè)計一個中心頻率為200 kHz的帶通濾波器,它可以使200 kHz的超聲波信號順利地通過,而阻止或衰減非200 kHz的超聲波信號及其他干擾信號。
    另外,超聲波信號在管道中傳輸時,由于各個聲道長度不同,傳感器特性存在差異,氣體介質(zhì)不同以及測量時氣體流速的變化,導(dǎo)致每次測量時傳感器接收信號的幅度也不同。為了后端進行高精度的計時,需要自動增益控制對接收信號的大小進行調(diào)節(jié),使接收信號有一個穩(wěn)定的幅度,從而滿足系統(tǒng)測量高精度的要求。

3 數(shù)字電路設(shè)計部分
3.1 概述
    本系統(tǒng)數(shù)字電路設(shè)計部分的核心是FPGA。在本系統(tǒng)中FPGA主要實現(xiàn)兩部分功能:一是實現(xiàn)高精度計時,為準(zhǔn)確測量流速提供保證;二是通過構(gòu)建軟核CPUNioslI來實現(xiàn)對整個系統(tǒng)的控制。本系統(tǒng)選用Altera公司Cyclone II系列的EP2C8Q208C8N芯片。
    關(guān)于計時這里不再贅述,主要就是通過MEGA WIZARD調(diào)用PLL模塊實現(xiàn)倍頻到200 MHz然后供給計數(shù)器模塊來計數(shù),計數(shù)結(jié)果通過移位寄存器來上傳給CPU,再通過CPU處理后傳給上位機。
    NiosII是32位RISC嵌入式處理器,它是Altera公司的第二代FPGA嵌入式處理器,其性能超過200DMIPS,在Altera FPGA中實現(xiàn)僅需35美分。特別是,NioslI系列支持使用專用指令。專用指令是用戶增加的硬件模塊,它增加了算術(shù)邏輯單元(ALU)。用戶能為系統(tǒng)中使用的每個NiosII處理器創(chuàng)建多達256個專用指令,這使得設(shè)計者能夠細致地調(diào)整系統(tǒng)硬件以滿足性能目標(biāo)。NiosII系列支持60多個外設(shè)選項,開發(fā)者能夠選擇合適的外設(shè),獲得最合適的處理器、外設(shè)和接口組合,而不必支付根本不使用的硅片功能?;谄淝度胧降奶攸c以及其成本,NiosII特別適用于便攜式儀表方面的應(yīng)用。
3.2 SOPC的硬件構(gòu)建
    通過Quartus中的SOPC Builder來構(gòu)建SOPC系統(tǒng)。首先要添加一個CPU。為了節(jié)省片上資源,選用經(jīng)濟型的CPU,外部晶振是50 MHz。程序運行內(nèi)存直接選用0n-Chip Memory,因為EP2C8Q208C8N片上的RAM空間大概有20 KB左右,通過優(yōu)化,片上內(nèi)存完全能夠滿足程序的需要,這樣就不必添加外接的SDRAM芯片,減少了PCB板的面積,大大降低了成本。代碼優(yōu)化方法是通過NioslI IDE里面的System Library Proper-ties來設(shè)置:依次選中Program Never Exit,Small C Library,Reduced Device Drivers,Lightweight Device Drivers API,取消選中
Support C++并設(shè)定Optimize Size為-0s級,這樣就可以有效的縮減程序代碼。
    另外,為了向上位機傳遞測試數(shù)據(jù),需要添加UART。這里添加的UART只是一個協(xié)議,與上位機實現(xiàn)通信,還需要在外圍添加電平轉(zhuǎn)換芯片MAX232以實現(xiàn)與上位機的正常通信。
    為保證系統(tǒng)正常運行,添加內(nèi)部定時器實現(xiàn)看門狗功能,另外需要添加的就是一些PIO接口。能夠產(chǎn)生中斷的PIO口注意要分給一定的中斷號。CPU的Reset Vectot。地址和Exception Vector地址都設(shè)為On-Chip Memory,并讓系統(tǒng)自動分配基地址以及中斷。點擊Generate生成整個SOPC,圖4即為整個SOPC的構(gòu)成圖。


3.3 用Niosll IDE編寫整個系統(tǒng)的控制程序
    NiosII IDE(Integrated Development Environment,集成開發(fā)環(huán)境)提供了完整的C/C++軟件開發(fā)套件,包括編輯器、項目管理器和構(gòu)建工具、調(diào)試器和兼容CFI(Common Flash Interface)的Flash編程器。調(diào)試器連接多種目標(biāo)系統(tǒng),包括FPGA硬件(通過JTAG電纜)、NioslI指令集仿真器和Modelsim-Altera軟件,因而能夠提供最靈活的調(diào)試方案。
    為了方便用戶編程,NiosII為用戶提供了設(shè)備驅(qū)動程序,也就是硬件驅(qū)動層數(shù)據(jù)庫HAL。軟件編寫人員只要利用HAL提供的各種函數(shù)就能編寫應(yīng)用程序,從而方便地與底層硬件進行通信,而無需關(guān)心底層硬件的實現(xiàn)細節(jié)。HAL系統(tǒng)庫可在IDE創(chuàng)建一個新工程時,由系統(tǒng)自動生成。[!--empirenews.page--]
    NioslI IDE完全支持C/C++,本系統(tǒng)采用的編程語言是標(biāo)準(zhǔn)C。添加必要的頭文件,編寫各個中斷服務(wù)程序以及子程序,就可以實現(xiàn)整個超聲波流量計的控制。
    仿真NiosII設(shè)計包括3種方式:“NiosII IDE Debugger+Signal Tap II+物理板”的軟硬件聯(lián)調(diào)方式,“NiosII IDE Debugger+指令集仿真器ISS”的軟件調(diào)試方式(ISS可對部分組件建模),使用Modelsim-Altera進行的RTL級的功能仿真方式(可以調(diào)試處理器及其外設(shè)之間的交互情況)。Debug的方式可以通過IDE里面的RunDebug As進行選擇。NiosII IDE也可以進行設(shè)置斷點,單步調(diào)試,觀察變量,內(nèi)存以及表達式的值等操作,在此不一一贅述。Debug之后還需要建立工程,若整個系統(tǒng)無錯,可以生成一個ELF文件,只有完整建立起來的系統(tǒng)才可以下載到FPGA的板上運行。具體實現(xiàn)方式是通過NiosII IDE里面的Project-Build Project來建立工程,結(jié)果會提示程序代碼總共占用了多少代碼,剩余多少的RAM空間,以及錯誤和警告提示。根據(jù)錯誤警告提示修改代碼,直至無錯完整地建立工程,這樣NiosIIIDE里面的工作就全部完成了。通過FPGA下載線將程序下載到FPGA板上,整個系統(tǒng)就可以完整地運行。

4 實驗結(jié)果及分析
    將程序正確下載到FPGA板上,硬件正確連接,接上超聲波探頭,進行實驗。實驗結(jié)果表明,本系統(tǒng)可以準(zhǔn)確地實現(xiàn)對整個系統(tǒng)的控制,經(jīng)過信號處理的超聲波信號清晰穩(wěn)定,實驗結(jié)果能夠滿足系統(tǒng)的精度要求,效果良好。圖5即為實驗現(xiàn)場接收到的超聲波信號。圖6為比較電壓的信號圖。

    圖5中下方是經(jīng)過濾波之后的超聲波的發(fā)射和接收信號。可以看到信號清晰穩(wěn)定。上方的信號是經(jīng)過自動增益控制之后的超聲波回波信號,通過自動增益控制之后的接收信號可以穩(wěn)定在一定的幅度之內(nèi),保證了系統(tǒng)對高精度計時的要求。
     圖6中下方也是濾波之后的超聲波發(fā)射和接收信號。上方的信號為電壓比較器所產(chǎn)生的計時停止信號。當(dāng)通過自動增益控制之后的接收信號達到電壓比較器的參考電壓時,電壓比較器便會產(chǎn)生一個計時停止信號,并發(fā)送給FPGA,這樣計時停止,便準(zhǔn)確地測量了超聲波的傳播
時間。
    實驗結(jié)果表明,本系統(tǒng)可以準(zhǔn)確地實現(xiàn)對整個系統(tǒng)的控制,經(jīng)過信號處理的超聲波信號清晰穩(wěn)定,實驗結(jié)果能夠滿足系統(tǒng)的精度要求,效果良好。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉