摘 要: 隨著超聲探傷技術(shù)的發(fā)展,探傷數(shù)據(jù)處理的高速化和網(wǎng)絡(luò)化已成為一種趨勢。介紹了一種超聲探傷回波信號處理的方法,采用Altera公司的Cyclone IV系列FPGA與以太網(wǎng)硬件協(xié)議棧芯片W5300,并結(jié)合高速數(shù)據(jù)壓縮器,設(shè)計了一種基于以太網(wǎng)的多通道高速數(shù)據(jù)處理電路。給出了數(shù)據(jù)壓縮器的設(shè)計原理及網(wǎng)絡(luò)數(shù)據(jù)傳輸模塊的設(shè)計方法,闡明了系統(tǒng)各模塊的工作方式,并給出測試結(jié)果,實現(xiàn)了一種高速、高穩(wěn)定性的數(shù)據(jù)處理電路。
關(guān)鍵詞: 超聲探傷;數(shù)據(jù)壓縮;FPGA;W5300;以太網(wǎng)
鋼板表面?zhèn)臋z測是超聲波探傷領(lǐng)域的一個重要應(yīng)用,隨著探傷技術(shù)的發(fā)展,對于數(shù)據(jù)的實時性要求越來越高,且由于以太網(wǎng)數(shù)據(jù)傳輸具有成本低、傳輸距離遠的特點,因此網(wǎng)絡(luò)化數(shù)據(jù)傳輸也是一個重要的研究方向。
對鋼板表面進行探傷時,鋼板上方的一排超聲探頭分別向鋼板發(fā)射超聲波并接收回波,該回波信號經(jīng)A/D轉(zhuǎn)換后送入到數(shù)據(jù)處理模塊進行處理。由于數(shù)據(jù)量非常大,需對其進行數(shù)據(jù)壓縮,壓縮后的數(shù)據(jù)再送入網(wǎng)口進行傳輸。本文首先利用FPGA設(shè)計數(shù)據(jù)壓縮器電路,再將壓縮后的數(shù)據(jù)送入網(wǎng)絡(luò)數(shù)據(jù)傳輸模塊的輸入端,通過FPGA設(shè)計邏輯電路控制硬件協(xié)議棧芯片W5300[1]實現(xiàn)高速數(shù)據(jù)傳輸,最終達到實時探傷的目的。該方法實現(xiàn)較容易,集成度高,穩(wěn)定性好,可進行廣泛應(yīng)用。
1 系統(tǒng)構(gòu)成
該系統(tǒng)由數(shù)據(jù)壓縮器電路、網(wǎng)絡(luò)數(shù)據(jù)傳輸模塊、有限狀態(tài)機和W5300網(wǎng)絡(luò)通信電路組成。系統(tǒng)原理框圖如圖1所示。
首先進行系統(tǒng)的初始化,對數(shù)據(jù)壓縮器的初始值和W5300的工作方式進行配置。再將經(jīng)A/D變換后的探傷初始數(shù)據(jù)送入到數(shù)據(jù)壓縮器中壓縮,以預設(shè)數(shù)量的數(shù)據(jù)為一組,經(jīng)過壓縮后將數(shù)據(jù)送入FIFO電路中,等待網(wǎng)絡(luò)數(shù)據(jù)傳輸模塊調(diào)用。當系統(tǒng)檢測到FIFO中有數(shù)據(jù)時,利用有限狀態(tài)機控制網(wǎng)絡(luò)數(shù)據(jù)傳輸模塊和W5300,通過以太網(wǎng)發(fā)送壓縮后的探傷數(shù)據(jù)至上位機,進而實現(xiàn)高速數(shù)據(jù)傳輸。
2 系統(tǒng)原理分析
2.1 數(shù)據(jù)壓縮器
超聲探頭一般工作在2 MHz~5 MHz,經(jīng)A/D采樣后的數(shù)據(jù)量會非常大,而上位機接口繪制曲線的刷新次數(shù)在25次/s以上即可清晰顯示波形圖像[2],因此需對采樣的數(shù)據(jù)進行壓縮,從而加快數(shù)據(jù)處理的速度,減少資源的占用。
數(shù)據(jù)壓縮器的原理框圖如圖2所示。初始時,對較大數(shù)寄存器和較小數(shù)寄存器賦初值,分別為00H和FFH。將當前采樣來的數(shù)據(jù)分別放入較大數(shù)比較器和較小數(shù)比較器,并與寄存器中的數(shù)據(jù)進行比較,若該數(shù)據(jù)大于較大數(shù)或小于較小數(shù),則將該數(shù)存入對應(yīng)的寄存器中并替換原來的數(shù)據(jù),否則寄存器中數(shù)據(jù)不變。與此同時,計數(shù)器對數(shù)據(jù)量進行計數(shù),若計數(shù)值滿足預先設(shè)定的數(shù)據(jù)量,則將計數(shù)器中的值送入到對應(yīng)的FIFO中等待下一步處理。
FIFO數(shù)據(jù)讀取電路首先檢測FIFO當前狀態(tài),若其中有數(shù)據(jù),則進行讀取,并將該數(shù)據(jù)送入FPGA內(nèi)部配置的寄存器中等待發(fā)送。
網(wǎng)絡(luò)配置及時序電路負責對W5300進行初始化設(shè)置和讀、寫時序的設(shè)計。該芯片內(nèi)部集成10/100 Mb/s以太網(wǎng)控制器、MAC和TCP/IP協(xié)議棧,支持8個獨立端口同時連接,通信速率最高可達80 Mb/s[4]。本系統(tǒng)中,需拉高BIT16EN引腳設(shè)置W5300工作在16位數(shù)據(jù)總線模式,將TEST_MODE[3:0]和OP_MODE[2:0]接地,使用內(nèi)部PHY,并配置為全功能自動握手方式[5]。為提高數(shù)據(jù)傳輸?shù)乃俣龋渲孟鄳?yīng)寄存器使W5300以DMA方式工作在UDP模式下。讀、寫部分通過Verilog語言編寫相應(yīng)代碼,搭建純硬件數(shù)據(jù)處理電路,等待狀態(tài)機調(diào)用。
有限狀態(tài)機負責對芯片的復位、初始化和數(shù)據(jù)的讀寫進行控制,采用兩段式構(gòu)成。由于W5300需單獨復位后方能正常工作[6],系統(tǒng)上電后由FPGA自動發(fā)送復位脈沖至W5300。復位完畢后進行初始化,初始化完畢后判斷當前FIFO狀態(tài),待FIFO中存在數(shù)據(jù)時執(zhí)行讀操作和寫操作,再將數(shù)據(jù)發(fā)送到上位機,完成網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)倪^程。之后返回初始化后的狀態(tài),等待下一個數(shù)據(jù)。有限狀態(tài)機的狀態(tài)轉(zhuǎn)移圖如圖4所示。
利用FPGA和W5300搭建純硬件網(wǎng)絡(luò)通信電路,能夠?qū)⒋罅繑?shù)據(jù)通過以太網(wǎng)進行高速傳輸,方便對生產(chǎn)過程進行遠程控制和實時監(jiān)測。結(jié)合數(shù)據(jù)壓縮器,能夠在數(shù)據(jù)量較大時,依據(jù)實際需要選取一定數(shù)量的、具有代表性的數(shù)據(jù)進行發(fā)送,提高了數(shù)據(jù)傳輸?shù)男剩⒐?jié)約資源。該方案開發(fā)周期短,成本低廉,易于維護,有著較高的穩(wěn)定性和可靠性,且配置較為靈活,實用價值較高,可用于數(shù)據(jù)量較大的高速超聲探傷領(lǐng)域中。
參考文獻
[1] 宋飛,馮旭哲.基于硬件協(xié)議棧芯片的高速以太網(wǎng)接口設(shè)計[J].工業(yè)儀表與自動化裝置,2012(4):57-59.
[2] 傅元, 王晶淼, 錢驍.數(shù)字化超聲探傷儀數(shù)據(jù)壓縮器設(shè)計[J].沈陽工業(yè)大學學報,2003,8(25):310-312.
[3] 章文娟,王中宇,周維虎,等.基于DSP的激光跟蹤儀數(shù)據(jù)通信及處理模塊設(shè)計[J].微型機與應(yīng)用,2011,30(17):54-56.
[4] 白佳俊,孟祥勇,張德平,等.基于W5300和FPGA的實時數(shù)據(jù)采集系統(tǒng)設(shè)計[J].電子技術(shù)應(yīng)用,2013,39(4):19-21.
[5] 喬立巖, 梁宇, 趙浩然,等.基于W5300的以太網(wǎng)接口設(shè)計[J].電子測量技術(shù),2012,7(35):129-132.
[6] WIZnet. W5300 datasheet[Z].2010.