• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    超聲相控陣檢測成像系統(tǒng)軟件設(shè)計

    2018-11-28 08:27:04楊艷
    無損檢測 2018年11期
    關(guān)鍵詞:驅(qū)動程序掃查相控陣

    ,, , , ,,楊艷

    (1.江蘇省特種設(shè)備安全監(jiān)督檢驗研究院,南京 210036;2.南京航空航天大學(xué) 自動化學(xué)院,南京 211100)

    超聲相控陣技術(shù)的原理與概念源自相控陣雷達,該技術(shù)的核心在于若干壓電晶片組合而成的相控陣陣列探頭[1]。其通過控制探頭中每個陣元被激發(fā)的時間,達到超聲波的相控發(fā)射;通過各陣元回波信號的延時疊加,達到相控接收。由此,實現(xiàn)對超聲波束的偏轉(zhuǎn)和聚焦,可完成被檢對象探測區(qū)的范圍掃查及聚焦成像。

    超聲相控陣技術(shù)繼承了傳統(tǒng)超聲檢測的長處,具有探測范圍可調(diào)、檢測角度靈活、檢測效率高、檢測效果好、檢測結(jié)果可視等突出優(yōu)點[2]。

    近年來,無損檢測領(lǐng)域不斷融合當下熱門技術(shù),結(jié)合人工智能、信息融合、自適應(yīng)技術(shù)、相關(guān)技術(shù)等新思想,以精準客觀的數(shù)據(jù)代替了人力勞動。在此趨勢下,超聲相控陣檢測成像技術(shù)的相關(guān)性能也得到不斷提升,并穩(wěn)步向智能化、自動化、多功能化等方向前進[3]。

    1 超聲相控陣檢測原理

    超聲相控陣檢測時,為了得到預(yù)期焦點位置與不同入射角的超聲波束,需要通過電子技術(shù)控制陣列換能器采用一定的時間延遲發(fā)射超聲脈沖。按照該延遲規(guī)則產(chǎn)生的超聲波束,具有人為預(yù)設(shè)的確定相位,且所有陣元在被檢元件中產(chǎn)生的聲場相干疊加。根據(jù)實際情況改變延遲時間或激勵序列,可得到不同的入射角度以及焦點位置,以滿足各種檢測的需求[4]。圖1為相控陣發(fā)射原理示意。

    圖1 相控陣發(fā)射原理示意

    圖2為相控陣接收原理示意,該過程為相控陣發(fā)射的逆過程。

    圖2 相控陣接收原理示意

    2 軟件設(shè)計

    超聲相控陣檢測成像系統(tǒng)的硬件部分基于嵌入式平臺,采用FPGA(現(xiàn)場可編程門陣列)與ARM(先進精簡指令集計算機處理機)結(jié)合的架構(gòu)。其中,F(xiàn)PGA選用Cyclone VI系列EP4CE15F17C8N,實現(xiàn)系統(tǒng)前端發(fā)射與接收電路的控制,ARM選用三星公司蜂鳥系列的S5PV210,負責(zé)控制整個系統(tǒng)的運行以及與FPGA通信,并下發(fā)配置參數(shù)、接收回傳數(shù)據(jù)、顯示檢測成像結(jié)果等。

    系統(tǒng)工作時,由用戶人工設(shè)置一系列檢測參數(shù),隨后ARM處理器根據(jù)相應(yīng)的聚焦法則,計算激勵每一個探頭陣元所需要的發(fā)射延時,并通過通信總線傳輸給FPGA,由FPGA負責(zé)后續(xù)的脈沖激勵等工作。一輪檢測之后,反射回多路超聲波束,由前端電路對其進行采集接收,并交由FPGA完成一系列數(shù)據(jù)處理,得到各路檢測回波信號,通過通信總線將其傳輸至ARM處理器,進而完成更進一步的處理或成像。

    軟件系統(tǒng)的設(shè)計分為驅(qū)動層及應(yīng)用層兩部分,驅(qū)動層為Linux內(nèi)核的重要組成部分,是底層硬件與上層軟件之間的接口;應(yīng)用層作為用戶與系統(tǒng)之間的交互中介,包括人機界面的顯示與回波數(shù)據(jù)的處理、成像等。

    2.1 驅(qū)動程序設(shè)計

    Linux內(nèi)核源碼中,包含了70%以上的設(shè)備驅(qū)動程序[5]。驅(qū)動程序?qū)⒂布O(shè)備的具體結(jié)構(gòu)進行屏蔽,對其進行了一種抽象,使設(shè)備在系統(tǒng)中以文件的形式存在。虛擬文件系統(tǒng)(VFS)中,淡化了設(shè)備與文件的區(qū)別,將所有的硬件操作看成是對普通文件的操作。

    在系統(tǒng)中,硬件設(shè)備與操作系統(tǒng)內(nèi)核以設(shè)備驅(qū)動程序作為中間接口,操作系統(tǒng)內(nèi)核與用戶應(yīng)用程序以系統(tǒng)調(diào)用作為中間接口,用戶從應(yīng)用程序的角度看硬件設(shè)備僅如同普通文件一般的設(shè)備文件,通過如打開(open)、讀取(read)、寫入(write)或是關(guān)閉(close)等系統(tǒng)調(diào)用,即可操作設(shè)備。

    驅(qū)動程序的設(shè)計中,涉及到以下兩個關(guān)鍵問題。

    (1) 配置參數(shù)的下發(fā)

    系統(tǒng)涉及到兩種方式的掃查,其中:A掃只有一維數(shù)據(jù),只需要通過配置參數(shù)計算一次延時;而S掃相當于進行多次不同偏轉(zhuǎn)角度的A掃,在各項檢測參數(shù)配置后,對應(yīng)每一次A掃,需要重新計算延遲時間。

    設(shè)置S掃驅(qū)動層工作流程(見圖3),每次進行一個角度的掃查,由軟件計算所需的控制數(shù)據(jù),下發(fā)給FPGA并啟動一線數(shù)據(jù)的檢測。聲束返回后,通過中斷配合DMA(直接內(nèi)存存取)方式將數(shù)據(jù)進行回傳,結(jié)束后,重復(fù)此過程進行下一個角度的掃查,直至達到檢測參數(shù)的配置。

    圖3 S掃驅(qū)動層工作流程

    (2) 檢測數(shù)據(jù)回傳

    結(jié)合中斷方式,設(shè)計FPGA與ARM通信,編寫Linux下相應(yīng)的中斷程序。系統(tǒng)中有兩種中斷,二者中斷入口的跳轉(zhuǎn)方式不同。對于中斷服務(wù)程序的入口地址,由軟件提供的為非向量中斷,由硬件提供的為向量中斷。文中使用S5PV210處理器,提供向量中斷。

    Linux下的設(shè)備驅(qū)動中,中斷設(shè)計的基本流程為設(shè)置中斷、申請中斷、進入中斷服務(wù)程序,并最終在結(jié)束后釋放中斷。

    中斷申請函數(shù)的返回值通常有3種情況,成功為0,中斷被占用為EBUSY,而處理函數(shù)指針為空或中斷號無效為INVAL。

    相控陣超聲檢測時,經(jīng)過前端處理的多路超聲回波信號被送入FPGA中的M9K存儲器,存儲器接收到所配置深度的數(shù)據(jù)后,向ARM處理器發(fā)出中斷申請,通知其讀取FPGA中存儲的數(shù)據(jù)。ARM處理器響應(yīng)中斷后,通過相應(yīng)的中斷處理程序進行FPGA M9K中數(shù)據(jù)的讀取。為了使處理器能夠盡快響應(yīng)各中斷,以處理更多事件,在中斷處理程序中,優(yōu)先清除S5PV210中的各中斷相關(guān)寄存器的相應(yīng)位。

    在中斷后,使用DMA方式進行FPGA與ARM之間的數(shù)據(jù)傳輸,在數(shù)據(jù)量較多的情況下,快速完成交互,不影響CPU(中央處理器)的工作。S5PV210采用PL330 DMA控制器,提供24通道,支持內(nèi)存與內(nèi)存、外設(shè)與內(nèi)存間的相互通信,使用時需要指定通道號。該控制器基于PrimeCell技術(shù)標準,提供高性能總線接口。

    圖4 DMA傳輸?shù)能浖渲昧鞒?/p>

    由于FPGA掛載于ARM的SROM Bank5,處于S5PV210處理器的內(nèi)存空間,對于DMA控制器而言,二者之間的數(shù)據(jù)交互屬于內(nèi)存-內(nèi)存模式。在該模式下,可以通過程序主動發(fā)起DMA數(shù)據(jù)傳輸,而無需依賴控制器進行申請。DMA傳輸?shù)能浖渲昧鞒倘鐖D4所示。

    在DMA相關(guān)的驅(qū)動程序中,先進行必要的初始化工作,配置相應(yīng)寄存器,包括該傳輸方式下的源地址寄存器、傳輸方向以及目標地址寄存器等[6]。在FPGA完成前端回波數(shù)據(jù)的處理并存儲進M9K后,申請IRQ_DMA0中斷服務(wù)程序,對DMA中斷請求進行響應(yīng)。中斷請求由應(yīng)用程序響應(yīng),之后啟動DMA,讀取目標地址中的數(shù)據(jù)至源地址。

    2.2 應(yīng)用程序設(shè)計

    系統(tǒng)的應(yīng)用層采用Qt/Embedded(嵌入式系統(tǒng)的圖形界面開發(fā)工具)進行開發(fā),其功能設(shè)計主要分為6個模塊:主控部分、數(shù)據(jù)管理、數(shù)據(jù)通信、數(shù)據(jù)處理、界面顯示以及參數(shù)設(shè)置等。模塊間的相互關(guān)系如圖5所示。

    圖5 模塊間的相互關(guān)系

    主控模塊作為應(yīng)用層的核心,對內(nèi)協(xié)調(diào)各模塊工作,對外接收用戶信息,掌控著程序的整體運行;數(shù)據(jù)管理模塊主要進行成像或配置數(shù)據(jù)的存儲;界面顯示為人機交互的部分,內(nèi)含窗口以及各功能部件,通過Qt提供的事件與信號/槽機制和其他模塊進行交互;參數(shù)設(shè)置模塊根據(jù)用戶配置進行發(fā)射延時量的計算;數(shù)據(jù)通信模塊與驅(qū)動層溝通,提供數(shù)據(jù)讀寫接口;數(shù)據(jù)處理模塊負責(zé)對前端回波數(shù)據(jù)進行成像顯示前所需要采取的一系列操作。

    應(yīng)用程序設(shè)計的關(guān)鍵在于成像顯示部分,對于檢測系統(tǒng)的S掃成像,涉及以下問題。

    (1) 坐標變換

    S掃在極坐標系中按角度增量進行掃查,而顯示界面則以直角坐標系繪制圖形,兩者之間需要軟件處理來進行相應(yīng)轉(zhuǎn)換。通過數(shù)字掃描變換(DSC)進行坐標變換,其流程如圖6所示。

    成像時,獲取顯示器像素在平面D中的坐標(xD,yD),將其在平面S中投影并獲得(xS,yS),對照極坐標系,找出該點在平面P中的位置,通過平面P中的數(shù)據(jù)計算其像素,此數(shù)值即為最終顯示的像素。

    設(shè)(m,n)為待顯示像素,該像素在D、S、P平面的坐標分別為(x,y)、(u,v)、(R,θ),則三者之間的關(guān)系如式(1)所示。其中,Δx,Δy為x軸及y軸在顯示平面中各自方向的數(shù)字量化單位長度。

    (1)

    圖6 數(shù)字掃描變換流程

    (2) 插值處理

    對于最終成像的點,坐標變換之后,也許并不在S掃的原始掃描線上,也不在各采樣點所處的深度,從而需要進行插值處理,以避免顯示結(jié)果與實際存在過多偏差。采用雙線性插值的方法得到所顯示點對應(yīng)的像素值,其原理如圖7所示,通過距離該點最近的4個點來進行計算。

    圖7 雙線性插值原理示意

    設(shè)P為極坐標系中對應(yīng)于顯示平面(xD,yD)的點,Pi,j、Pi,j+1、Pi+1,j、Pi+1,j+1是原始數(shù)據(jù)點中與該點最近的4個坐標點。則P的像素值如式(2)所示

    (2)

    式中:Δθ為S掃的角度步進;Δθ′為P與Pi,j間的夾角;ΔR為一線掃描中兩相鄰點之間的距離;ΔR′為梯度距離。

    將極坐標進行數(shù)字量化處理,則對于該坐標系中的點(R,θ)有

    (3)

    式中:i′與j′不一定為整數(shù);I為掃描線數(shù)。

    令int()代表取整,并設(shè)i=int(i′),j=int(j′),i′=i+di,j′=j+dj,則式(2)可轉(zhuǎn)化為

    Pi,j=(1-di)(1-dj)Pi,j+dj·(1-di)Pi,j+1+

    di·(1-dj)Pi+1,j+di·djPi+1,j+1

    (4)

    (3) 色彩映射

    數(shù)字圖像有多種色彩顯示方式,其中最簡單的即為二值圖像,以0和1分別表示黑白兩色。該類顯示只有兩種顏色,難以分辨圖像細節(jié),成像效果較差?;叶葓D像在黑白之間增加了許多亮度級別,以0和255對應(yīng)黑白兩色,并在其中通過254個數(shù)值擴展了漸變的灰度。但此顯示方法的色彩區(qū)分度不高,不適于進行超聲成像。

    采用彩色圖像對S掃結(jié)果進行顯示,將回波信號的幅值映射為紅綠藍(RGB)三色分量,以顏色來區(qū)分幅值大小,在相應(yīng)缺陷處得到較為明顯直觀的成像。在Qt中建立顏色表,通過向量容器進行色值的存儲。

    設(shè)置256種顏色,以0~255分別表示。幅值代表顏色,其由小至大變化表示顏色的漸變。相應(yīng)色表通過數(shù)組color[256]進行存儲。將插值處理后的像素幅值進行色彩映射,設(shè)像素插值的幅值及最大幅值分別為a和amax,則該像素點所對應(yīng)的顏色值為

    (5)

    式中:└┘為向下取整。

    3 試驗過程

    選用鋁制材料的標準試塊IIW-V1(見圖8)進行系統(tǒng)測試,對距離上表面50 mm與60 mm的孔進行成像測試。

    對采集到的數(shù)據(jù)進行二維成像。設(shè)置-20°~20°掃查范圍,步進為1°,采集多條A掃數(shù)據(jù)以進行S掃成像。對采集到的回波數(shù)據(jù)進行坐標變換、插值及色彩映射一系列處理,得到如圖9所示成像結(jié)果。對照圖8,S掃呈現(xiàn)了試塊IIW-V1在50 mm與60 mm處的兩個缺陷。

    圖8 IIW-V1試塊外觀

    圖9 S掃成像結(jié)果

    4 結(jié)語

    系統(tǒng)基于Linux與Qt/Embedded,采用模塊化思想,結(jié)合Linux的實時性與Qt的豐富資源,設(shè)計了超聲相控陣檢測成像系統(tǒng)的軟件部分,包括驅(qū)動程序與應(yīng)用程序。對系統(tǒng)進行測試,結(jié)果表明系統(tǒng)運行正常,顯示界面的檢測成像結(jié)果正確。

    猜你喜歡
    驅(qū)動程序掃查相控陣
    核電廠輔助管道相控陣超聲檢測裝置研制
    鋼板超聲波自動掃查方式對探傷覆蓋率的影響
    相控陣超聲技術(shù)在PE管電熔焊接檢測的應(yīng)用
    煤氣與熱力(2021年3期)2021-06-09 06:16:16
    相控陣超聲波檢測技術(shù)認證
    化工管理(2021年7期)2021-05-13 00:45:20
    TOFD檢測中初始掃查面盲區(qū)高度確定方法分析
    一種相控陣雷達的通訊處理器設(shè)計
    電子制作(2019年24期)2019-02-23 13:22:16
    相控陣雷達研究現(xiàn)狀與發(fā)展趨勢
    電子測試(2018年15期)2018-09-26 06:01:46
    基于RCC-M標準的對接焊縫超聲波掃查工藝及其分析
    無損檢測(2016年8期)2016-08-30 03:01:04
    驅(qū)動程序更新與推薦
    驅(qū)動程序更新與推薦
    乐平市| 客服| 高密市| 正定县| 绥宁县| 屯门区| 安徽省| 邢台县| 滨海县| 南郑县| 通许县| 永吉县| 高密市| 青龙| 普兰县| 蕉岭县| 南川市| 关岭| 玛多县| 惠来县| 梓潼县| 天峻县| 新巴尔虎右旗| 涞源县| 南和县| 阿勒泰市| 射阳县| 获嘉县| 元江| 大名县| 清涧县| 陆良县| 离岛区| 台前县| 宁海县| 台南市| 苏尼特右旗| 潼关县| 遂宁市| 若尔盖县| 方城县|