基于FPGA的八通道超聲探傷系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:文中提出了一種基于FPGA的八通道超聲探傷系統(tǒng)設(shè)計(jì)方案。該系統(tǒng)利用低功耗可變?cè)鲆孢\(yùn)放和八通道ADC構(gòu)成高集成度的前端放大和數(shù)據(jù)采集模塊;采用FPGA和ARM作為數(shù)字信號(hào)處理的核心和人機(jī)交互的通道。為了滿足探傷系統(tǒng)實(shí)時(shí)、高速的要求,我們采用了硬件報(bào)警,缺陷回波峰值包絡(luò)存儲(chǔ)等關(guān)鍵技術(shù)。此外,該系統(tǒng)在小型化和數(shù)字化方面有顯著提高,為便攜式多通道超聲檢測系統(tǒng)設(shè)計(jì)奠定基礎(chǔ)。
關(guān)鍵詞:八通道;超聲探傷;硬件報(bào)警;FPGA
超聲波探傷是一種重要的無損檢測方法,在大型鍋爐、發(fā)電機(jī)組、鐵路橋梁和航空航天等各個(gè)工業(yè)部門都得到了廣泛的應(yīng)用,并成為保證工程質(zhì)量、確保設(shè)備安全的一種重要手段。
目前國內(nèi)研制的超聲探傷儀器大部分為便攜式單通道。這些儀器重量輕,使用方便,便于探傷人員攜帶使用。但單通道儀器同時(shí)具有掃查面積小,速度慢,誤判率高等缺陷,不利于掃描大型器件。而少數(shù)多通道儀器則都是基于PC機(jī)所研制的。這些儀器能夠快速掃描各種器件,但是同時(shí)具有體積大,價(jià)格高等缺點(diǎn),不利于多通道探傷儀的應(yīng)用和普及。
針對(duì)上述提到的一些問題,結(jié)合現(xiàn)代數(shù)字信號(hào)處理技術(shù)和微電子技術(shù),提出了一種基于嵌入式系統(tǒng)和FPGA的便攜式八通道超聲探傷系統(tǒng)的解決方案。該方案采用ARM9處理器作為主控芯片,利用大容量的FPGA進(jìn)行并行處理,能夠同時(shí)滿足便攜性和實(shí)時(shí)性兩大要求。并能通過以太網(wǎng)接口,將數(shù)據(jù)快速傳輸?shù)絇C機(jī)上,對(duì)信號(hào)進(jìn)行進(jìn)一步的處理。
1 八通道超聲探傷系統(tǒng)硬件設(shè)計(jì)
本系統(tǒng)的硬件總體框圖如圖1所示。系統(tǒng)主要包含前端發(fā)射接收電路、八通道模數(shù)轉(zhuǎn)換電路,F(xiàn)PGA數(shù)據(jù)處理與邏輯控制系統(tǒng)和ARM后處理模塊4個(gè)部分組成。
前端發(fā)射接收電路的主要作用為生成用于激發(fā)探頭陣元產(chǎn)生超聲波的高壓脈沖,接受回波,以及實(shí)現(xiàn)對(duì)回波信號(hào)進(jìn)行數(shù)控增益。ADC將采樣的模擬信號(hào)轉(zhuǎn)化成數(shù)字信號(hào)。FPGA模塊主要實(shí)現(xiàn)對(duì)數(shù)據(jù)的FIR濾波,非均勻壓縮,硬件報(bào)警,峰值包絡(luò)的存儲(chǔ),以及相關(guān)的控制邏輯。ARM后處理模塊主要實(shí)現(xiàn)波形顯示、通道切換、頻譜分析、參數(shù)預(yù)置、人機(jī)交互等功能和一些相關(guān)外設(shè)的驅(qū)動(dòng)。
1.1 前端發(fā)射接收電路
前端發(fā)射接收電路是實(shí)現(xiàn)八通道超聲設(shè)備主要性能指標(biāo)的關(guān)鍵。一般由探頭觸發(fā)電路,隔離網(wǎng)絡(luò),帶通濾波器,可變?cè)鲆娣糯笃?VGA)4部分級(jí)聯(lián)而成。
可變?cè)鲆娣糯笃鞑糠钟扇?jí)可變?cè)鲆鍭D8331級(jí)聯(lián)而成。AD8331是一款單通道、超低噪聲、線性dB可變?cè)鲆娣糯笃?VGA),針對(duì)超聲系統(tǒng)應(yīng)用進(jìn)行了優(yōu)化,可以用作低噪聲可變?cè)鲆嬖_@款器件內(nèi)置一個(gè)超低噪聲前置放大器(LNA)、一個(gè)48 dB增益范圍的VGA以及一個(gè)具有可調(diào)輸出限制功能的可選增益后置放大器。經(jīng)過三級(jí)級(jí)聯(lián)和調(diào)試以后能夠?qū)崿F(xiàn)0~120 dB的增益動(dòng)態(tài)范圍。
1.2 八通道數(shù)模轉(zhuǎn)換電路
本系統(tǒng)采用AD9212作為八通道模數(shù)轉(zhuǎn)換器。AD9212是ADI公司推出的一款八通道,10位采樣精度模數(shù)轉(zhuǎn)換器。該器件內(nèi)置采樣保持電路,低成本,低功耗,小尺寸,單片集成八個(gè)通道的AD電路,能夠極大的減少電路設(shè)計(jì)的工作量和所需的電路板的面積。與此同時(shí),AD9212采用串行LVDS數(shù)據(jù)輸出和DDR操作,既具有較高的數(shù)據(jù)輸出速率,又能減少所需的接口IO資源。
1.3 數(shù)據(jù)處理與邏輯控制模塊
在本系統(tǒng)中,數(shù)據(jù)處理與邏輯控制子系統(tǒng)承擔(dān)著實(shí)時(shí)處理八通道數(shù)據(jù),配置八個(gè)通道的參數(shù),以及操作總線與ARM進(jìn)行通信的任務(wù)。FP GA具有豐富的可編程資源,集成度高,實(shí)現(xiàn)靈活,能夠很好的滿足設(shè)計(jì)要求。
數(shù)據(jù)處理與邏輯控制子系統(tǒng)的結(jié)構(gòu)框圖如圖2所示,該子系統(tǒng)主要分成數(shù)據(jù)處理部分和邏輯控制部分。數(shù)據(jù)處理模塊實(shí)時(shí)處理數(shù)模轉(zhuǎn)換器傳輸來的數(shù)據(jù)流,邏輯控制模塊負(fù)責(zé)控制外設(shè)以及FPGA內(nèi)部各個(gè)模塊的時(shí)序。數(shù)據(jù)處理模塊包括DDR2串并轉(zhuǎn)換,將AD轉(zhuǎn)換器傳輸?shù)腄DR數(shù)據(jù)串行轉(zhuǎn)換成并行數(shù)據(jù)。并行數(shù)據(jù)經(jīng)過FIR濾波器,去除了模擬前端引入的噪聲,最后通過檢波和非均勻壓縮以后得到包絡(luò)數(shù)據(jù)。邏輯控制模塊主要實(shí)現(xiàn)發(fā)射的正負(fù)延時(shí)控制,增益的控制以及該子系統(tǒng)的狀態(tài)監(jiān)測和控制。
1.4 ARM后處理系統(tǒng)
ARM后處理系統(tǒng)的硬件結(jié)構(gòu)如圖3所示。ARM的高性能的處理能力和較強(qiáng)的內(nèi)存管理技術(shù)能有效完成數(shù)據(jù)的后處理,將探測結(jié)果多種顯示模式直觀的呈現(xiàn)出來。同時(shí)它還有豐富的片內(nèi)外圍設(shè)備接口,如網(wǎng)口,串口,USB接口,非常適合便攜式嵌入式系統(tǒng)的應(yīng)用,大大簡化了硬件的設(shè)計(jì)難度。
2 八通道超聲探傷系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)的應(yīng)用程序基于Qt/Embedded開發(fā),在軟件設(shè)計(jì)時(shí)采用了層次化、模塊化的思想。利用Qt中的信號(hào)與槽機(jī)制,以及C++面向?qū)ο蠓椒▽④浖饕譃槿缦履K:數(shù)據(jù)通信模塊(驅(qū)動(dòng)接口)、運(yùn)算處理模塊、界面模塊、主控模塊、參數(shù)預(yù)置模塊、數(shù)據(jù)管理模塊等。模塊之間可通過信號(hào)與槽通信。軟件框架如圖4所示。
3 八通道探傷系統(tǒng)設(shè)計(jì)中的關(guān)鍵技術(shù)
3.1 硬件報(bào)警技術(shù)
以往的單通道儀器多使用軟件報(bào)警技術(shù)。所謂軟件報(bào)警,就是采用軟件的方法進(jìn)行波形閘門比較和報(bào)警。其最大的優(yōu)點(diǎn)是閘門的設(shè)定比較靈活。其缺點(diǎn)是報(bào)警會(huì)產(chǎn)生滯后,報(bào)警響應(yīng)慢。一般在單通道低重復(fù)頻率條件下,處理器響應(yīng)速度尚可以接受;然而對(duì)于高重復(fù)頻率和多通道的情況,軟件報(bào)警將會(huì)占用處理器大量時(shí)間,造成報(bào)警滯后,無法滿足實(shí)際探傷的要求。因此,在將要研制的八通道儀器中,只能采用FPGA來實(shí)現(xiàn)八通道的實(shí)時(shí)報(bào)警。
硬件報(bào)警器主要分為2種:進(jìn)波(A門)報(bào)警和失波(B門)報(bào)警。當(dāng)缺陷回波的峰值超過A門時(shí),觸發(fā)進(jìn)波報(bào)警,指示工件中存在較大缺陷。當(dāng)回波信號(hào)的峰值移出B門時(shí),觸發(fā)失波報(bào)警,指示回波信號(hào)較弱,儀器工作異常。本文在FPGA中,使用狀態(tài)機(jī)實(shí)現(xiàn)2種報(bào)警器。進(jìn)波報(bào)警狀態(tài)機(jī)和失波報(bào)警狀態(tài)機(jī)如圖5所示。
3.2 缺陷回波峰值包絡(luò)的存儲(chǔ)技術(shù)
峰值包絡(luò)是指一定時(shí)間內(nèi),缺陷回波的峰值所形成的包絡(luò)。峰值包絡(luò)用來估計(jì)缺陷的狀況。記錄峰值包絡(luò)可以讓探傷人員對(duì)缺陷大小做詳細(xì)和準(zhǔn)確的計(jì)算。針對(duì)八通道超聲探傷系統(tǒng)通道多、數(shù)據(jù)量大的情況,采用了FPGA來對(duì)峰值包絡(luò)進(jìn)行實(shí)時(shí)記錄存儲(chǔ)。
具體工作流程如下:在報(bào)警狀態(tài)下,分別將回波信號(hào)存儲(chǔ)器和報(bào)警數(shù)據(jù)存儲(chǔ)器相同地址處的存儲(chǔ)值取出比較,如果前者大于后者,那么用回波信號(hào)存儲(chǔ)器的數(shù)據(jù)寫入報(bào)警數(shù)據(jù)存儲(chǔ)器對(duì)應(yīng)地址處,用新的數(shù)據(jù)刷新舊的數(shù)據(jù)。否則保持原來的存儲(chǔ)值不變。如此往復(fù)循環(huán),將新來的每一幀回波信號(hào)與報(bào)警數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)的峰值包絡(luò)進(jìn)行比較,直到報(bào)警結(jié)束就可以得到整個(gè)報(bào)警期間所有缺陷回波的峰值包絡(luò)。圖6為缺陷峰值包絡(luò)存儲(chǔ)框圖。
3.3 八通道實(shí)時(shí)數(shù)據(jù)傳輸
本系統(tǒng)中,F(xiàn)PGA同時(shí)處理八通道波形數(shù)據(jù),將要顯示的通道的實(shí)時(shí)數(shù)據(jù)傳送入FIFO中。ARM系統(tǒng)需要從FIFO中讀入波形數(shù)據(jù)并進(jìn)行實(shí)時(shí)的波形顯示,這對(duì)系統(tǒng)的實(shí)時(shí)性要求非常高。為了向應(yīng)用程序及時(shí)高效地傳遞實(shí)時(shí)數(shù)據(jù),我們采用了Linux的異步通知機(jī)制,該機(jī)制結(jié)合了應(yīng)用層的信號(hào)機(jī)制與驅(qū)動(dòng)層的中斷機(jī)制,從而實(shí)現(xiàn)了應(yīng)用層對(duì)設(shè)備的異步操作。
以重復(fù)頻率50 Hz為例,F(xiàn)PGA每隔20 ms發(fā)送一個(gè)中斷信號(hào)給ARM,ARM模塊接收到中斷后,在中斷處理程序中讀取FIFO數(shù)據(jù),并向應(yīng)用程序發(fā)送SIGIO信號(hào)。應(yīng)用程序接收到信號(hào)后,產(chǎn)生一個(gè)Qt事件,并將其掛入到Qt事件隊(duì)列中等待響應(yīng)。實(shí)際運(yùn)行表明,系統(tǒng)能夠穩(wěn)定地傳輸和實(shí)時(shí)顯示波形,該方案是可行的。
4 實(shí)驗(yàn)結(jié)果
在超聲波探傷過程中,通過將波形峰值與一條特定標(biāo)準(zhǔn)的曲線進(jìn)行比較,用戶便可以確定材料內(nèi)部有無缺陷和缺陷大小以及位置的情況。常用的曲線包括AVG曲線和DAC曲線。
直探頭情況下,通常使用AVG曲線。AVG曲線一般由設(shè)備自行測出。對(duì)于不同的孔徑,可以通過測量得出不同的孔徑曲線。本文所研發(fā)的八通道儀器可以同時(shí)測出8條AVG曲線,如圖7所示。圖中可以看到同時(shí)顯示的八條AVG曲線,同時(shí)顯示了第二通道的回波包絡(luò)波形。
5 結(jié)束語
文中提出了一種嵌入式八通道超聲波探傷儀系統(tǒng)的設(shè)計(jì)方案。一方面,系統(tǒng)完全采用數(shù)字化設(shè)計(jì),利用FPGA豐富的資源,提高系統(tǒng)處理并行數(shù)據(jù)的能力,完成了系統(tǒng)核心功能的實(shí)現(xiàn)。另一方面,嵌入式ARM后處理子系統(tǒng)以其豐富的外部接口,大大提高了硬件的集成度,同時(shí),Linux操作系統(tǒng)和QT/Embedded集成開發(fā)環(huán)境,方便今后軟件系統(tǒng)的維護(hù)、更新和升級(jí)。系統(tǒng)運(yùn)行和測試表明,該方案切實(shí)可行,能夠滿足八通道探傷系統(tǒng)的要求,具有廣闊的應(yīng)用前景。