楊 歡,苗長(zhǎng)云,白 華
(天津工業(yè)大學(xué)電子與信息工程學(xué)院,天津 300387)
?
超聲檢測(cè)多軸運(yùn)動(dòng)控制器及其上位機(jī)軟件設(shè)計(jì)
楊 歡,苗長(zhǎng)云,白 華
(天津工業(yè)大學(xué)電子與信息工程學(xué)院,天津 300387)
為了實(shí)現(xiàn)對(duì)大型物體缺陷部位進(jìn)行遠(yuǎn)程自動(dòng)超聲檢測(cè)的目的,文中提出了一種基于以太網(wǎng)的超聲檢測(cè)多軸運(yùn)動(dòng)控制器的設(shè)計(jì)方案;采用以ARM9為內(nèi)核的 S3C2440主控芯片設(shè)計(jì)了多軸運(yùn)動(dòng)控制器的硬件電路,并移植了Linux操作系統(tǒng),在此基礎(chǔ)上運(yùn)用C語(yǔ)言編寫(xiě)了其軟件部分;利用LabVIEW軟件編寫(xiě)了具有遠(yuǎn)程通信功能的上位機(jī)控制界面;采用UDP通信協(xié)議實(shí)現(xiàn)了多軸運(yùn)動(dòng)控制器與上位機(jī)間的以太網(wǎng)通信,并進(jìn)行了實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果表明該多軸運(yùn)動(dòng)控制器能夠?qū)崿F(xiàn)對(duì)超聲探頭運(yùn)動(dòng)的遠(yuǎn)程自動(dòng)控制,提高檢測(cè)效率,具有重要的應(yīng)用價(jià)值。
超聲檢測(cè);多軸運(yùn)動(dòng)控制器;Linux系統(tǒng);LabVIEW;以太網(wǎng);遠(yuǎn)程自動(dòng)化
超聲檢測(cè)方法因其檢測(cè)材質(zhì)種類多、定位準(zhǔn)確、穿透能力強(qiáng)、對(duì)人體無(wú)危害和對(duì)環(huán)境沒(méi)有污染等優(yōu)點(diǎn),得到人們的重視和廣泛應(yīng)用[1]。以往的超聲檢測(cè)主要采用手動(dòng)檢測(cè)方式,即依據(jù)專業(yè)的檢測(cè)人員憑借經(jīng)驗(yàn)來(lái)移動(dòng)檢測(cè)探頭對(duì)被測(cè)物體進(jìn)行檢測(cè),故此人為因素對(duì)檢測(cè)的精確程度影響很大,且此種方法檢測(cè)效率低、成本高、容易發(fā)生誤檢和漏檢,不適用于遠(yuǎn)程自動(dòng)檢測(cè)。當(dāng)前超聲檢測(cè)技術(shù)正逐步向數(shù)字化、自動(dòng)化以及智能化方向發(fā)展,美國(guó)、德國(guó)等工業(yè)發(fā)達(dá)國(guó)家現(xiàn)已研制出大型物體自動(dòng)超聲檢測(cè)系統(tǒng),但我國(guó)對(duì)大型物體自動(dòng)超聲檢測(cè)技術(shù)的研究還很少[2]。
本文設(shè)計(jì)了一款基于以太網(wǎng)的超聲檢測(cè)多軸運(yùn)動(dòng)控制器,采用以ARM9為內(nèi)核的S3C2440主控芯片設(shè)計(jì)了多軸運(yùn)動(dòng)控制器的硬件電路,基于Linux操作系統(tǒng)平臺(tái)利用C語(yǔ)言編寫(xiě)了以太網(wǎng)驅(qū)動(dòng)程序以及運(yùn)動(dòng)控制軟件部分,利用LabVIEW軟件編寫(xiě)了上位機(jī)軟件,采用UDP協(xié)議實(shí)現(xiàn)了多軸運(yùn)動(dòng)控制器與上位機(jī)的以太網(wǎng)通信,實(shí)現(xiàn)了對(duì)超聲探頭運(yùn)動(dòng)的遠(yuǎn)程自動(dòng)控制,提高了超聲檢測(cè)效率,具有重要的應(yīng)用價(jià)值。目前該項(xiàng)目已處于試驗(yàn)的最后階段。
本文設(shè)計(jì)的基于以太網(wǎng)的超聲檢測(cè)多軸運(yùn)動(dòng)控制系統(tǒng)是在復(fù)雜的多軸運(yùn)動(dòng)控制技術(shù)之上結(jié)合了遠(yuǎn)程通信技術(shù),以此來(lái)實(shí)現(xiàn)超聲檢測(cè)的遠(yuǎn)程自動(dòng)控制。此系統(tǒng)主要由上位機(jī)、多軸運(yùn)動(dòng)控制器、步進(jìn)電機(jī)驅(qū)動(dòng)器、步進(jìn)電機(jī)、機(jī)械執(zhí)行裝置、限位開(kāi)關(guān)和超聲探頭等組成,其組成框圖如圖1所示。
圖1 基于以太網(wǎng)的自動(dòng)超聲檢測(cè)多軸運(yùn)動(dòng)控制系統(tǒng)組成框圖
由上位機(jī)LabVIEW控制系統(tǒng)為多軸運(yùn)動(dòng)控制器發(fā)送運(yùn)動(dòng)指令,并由多軸運(yùn)動(dòng)控制器將運(yùn)動(dòng)信號(hào)拆分為步進(jìn)信號(hào)和方向信號(hào),再將這兩種電機(jī)控制信號(hào)發(fā)送給步進(jìn)電機(jī)驅(qū)動(dòng)器,步進(jìn)電機(jī)驅(qū)動(dòng)器將其轉(zhuǎn)化為角位移發(fā)送給步進(jìn)電機(jī),使步進(jìn)電機(jī)轉(zhuǎn)動(dòng)相應(yīng)個(gè)步距角,以達(dá)到使步進(jìn)電機(jī)按指令運(yùn)動(dòng)的目的。步進(jìn)電機(jī)上安裝有機(jī)械執(zhí)行裝置,用以固定超聲探頭,機(jī)械執(zhí)行裝置上安有限位開(kāi)關(guān),以此控制電機(jī)的運(yùn)動(dòng)范圍,當(dāng)電機(jī)運(yùn)動(dòng)到限位開(kāi)關(guān)的位置時(shí),限位開(kāi)關(guān)發(fā)出限位信號(hào)到多軸運(yùn)動(dòng)控制器,運(yùn)動(dòng)控制器便停止發(fā)出使電機(jī)運(yùn)動(dòng)的脈沖信號(hào)。
在進(jìn)行自動(dòng)超聲檢測(cè)時(shí),Z軸方向機(jī)械執(zhí)行機(jī)構(gòu)上固定的超聲檢測(cè)探頭能夠在被檢測(cè)物體的表面按照上位機(jī)運(yùn)動(dòng)控制算法設(shè)計(jì)的運(yùn)動(dòng)軌跡進(jìn)行連續(xù)檢測(cè),并實(shí)時(shí)向PC機(jī)返回探頭的位置信息,并將數(shù)據(jù)采集卡采集的超聲信號(hào)與探頭返回的位置信息建立起對(duì)應(yīng)關(guān)系,最終通過(guò)上位機(jī)的圖像處理系統(tǒng)形成超聲檢測(cè)圖像,以此來(lái)實(shí)現(xiàn)物體的超聲檢測(cè)。
多軸運(yùn)動(dòng)控制器可以通過(guò)遠(yuǎn)程以太網(wǎng)通信的方式接收上位機(jī)的控制信號(hào),向步進(jìn)電機(jī)驅(qū)動(dòng)器發(fā)送脈沖信號(hào)和方向信號(hào)以完成對(duì)電機(jī)的運(yùn)動(dòng)控制。采用ARM9處理器S3C2440搭建硬件平臺(tái),外圍配有DM9000A以太網(wǎng)通信芯片使硬件平臺(tái)具備遠(yuǎn)程通信的功能。在Linux操作平臺(tái)上進(jìn)行控制系統(tǒng)軟件功能設(shè)計(jì),并采用UDP通信協(xié)議實(shí)現(xiàn)上位機(jī)與運(yùn)動(dòng)控制器之間的遠(yuǎn)程通信[3]。
2.1 多軸運(yùn)動(dòng)控制器硬件電路設(shè)計(jì)
本文采用ARM9處理器S3C2440設(shè)計(jì)了系統(tǒng)中運(yùn)動(dòng)控制器的硬件電路部分,并采用DM9000A網(wǎng)絡(luò)接口控制器設(shè)計(jì)了運(yùn)動(dòng)控制器的以太網(wǎng)接口。運(yùn)動(dòng)控制器硬件整體框圖如圖2所示。
圖2 多軸運(yùn)動(dòng)控制器硬件框圖
運(yùn)動(dòng)控制器選用ARM9處理器作為運(yùn)動(dòng)控制器的核心芯片可以方便地嵌套Linux操作系統(tǒng),在操作系統(tǒng)之上實(shí)現(xiàn)運(yùn)動(dòng)控制器的插補(bǔ)等多軸運(yùn)動(dòng)控制算法。選用DM9000A以太網(wǎng)控制芯片實(shí)現(xiàn)上位機(jī)LabVIEW與運(yùn)動(dòng)控制器之間的遠(yuǎn)程通信,進(jìn)而實(shí)現(xiàn)超聲檢測(cè)的遠(yuǎn)程自動(dòng)控制。為了解決步進(jìn)電機(jī)驅(qū)動(dòng)器與主控芯片信號(hào)匹配的問(wèn)題,本文采用光耦器件設(shè)計(jì)了電壓轉(zhuǎn)換模塊,負(fù)責(zé)把主控芯片輸出的3.3 V電壓信號(hào)轉(zhuǎn)換至5 V電壓信號(hào)后輸入到步進(jìn)電機(jī)驅(qū)動(dòng)器中,同時(shí)負(fù)責(zé)把限位開(kāi)關(guān)發(fā)出的24 V限位信號(hào)轉(zhuǎn)換至3.3 V輸入到主控芯片中。此外,外圍電路中還搭載了用于存儲(chǔ)數(shù)據(jù)的擴(kuò)展存儲(chǔ)器、以及用于調(diào)試的JTAG接口電路和RS232串口電路。
2.2 多軸運(yùn)動(dòng)控制器軟件設(shè)計(jì)
本課題所用的限位開(kāi)關(guān)為位置可調(diào)的限位開(kāi)關(guān),每個(gè)軸有2個(gè)限位開(kāi)關(guān),在每次超聲檢測(cè)前,把每個(gè)限位開(kāi)關(guān)調(diào)節(jié)到被測(cè)工件的邊緣處,從而使探頭移動(dòng)的范圍即為工件所在范圍。故此設(shè)計(jì)運(yùn)動(dòng)控制器的軟件時(shí)便可將限位開(kāi)關(guān)做為邊界條件,以此來(lái)設(shè)計(jì)探頭的運(yùn)動(dòng)范圍。其運(yùn)動(dòng)控制流程:首先系統(tǒng)初始化,通過(guò)上微機(jī)控制界面人工控制探頭到被測(cè)工件的起點(diǎn),然后X軸正向運(yùn)動(dòng)到X軸限位開(kāi)關(guān)處,Y軸正向運(yùn)動(dòng)一個(gè)探頭直徑的長(zhǎng)度,X軸再反向運(yùn)動(dòng)到X軸另一側(cè)的限位開(kāi)關(guān)處,之后Y軸繼續(xù)正向運(yùn)動(dòng)一個(gè)探頭直徑的長(zhǎng)度,如此往復(fù)運(yùn)動(dòng)直至探頭到達(dá)Y軸的限位開(kāi)關(guān)處,檢測(cè)結(jié)束,探頭復(fù)位。運(yùn)動(dòng)控制軟件流程圖如圖3所示。
圖3 運(yùn)動(dòng)控制軟件流程圖
基于以太網(wǎng)的自動(dòng)超聲檢測(cè)多軸運(yùn)動(dòng)控制系統(tǒng)的上位機(jī)軟件是以LabVIEW開(kāi)發(fā)平臺(tái)為基礎(chǔ),使用圖形G語(yǔ)言進(jìn)行編寫(xiě)的,主要包括多軸運(yùn)動(dòng)控制軟件和以太網(wǎng)通信軟件。LabVIEW是一款上位機(jī)軟件,其主要應(yīng)用于儀器控制、數(shù)據(jù)采集和數(shù)據(jù)分析等領(lǐng)域,具有良好的人機(jī)交互界面[4]。LabVIEW軟件中有專門的UDP通信函數(shù)提供給用戶使用,用戶無(wú)需過(guò)多考慮網(wǎng)絡(luò)的底層實(shí)現(xiàn),就可以直接調(diào)用UDP模塊中已經(jīng)發(fā)布的VI來(lái)完成通信軟件的編寫(xiě),因此編程者不必了解UDP的細(xì)節(jié),而采用較少的代碼就可以完成通信任務(wù),以便快速的編寫(xiě)出具有遠(yuǎn)程通信功能的上位機(jī)控制軟件[5]。上位機(jī)LabVIEW軟件的遠(yuǎn)程通信模塊、運(yùn)動(dòng)控制模塊以及數(shù)據(jù)處理模塊相互協(xié)調(diào)配合,共同構(gòu)成了超聲檢測(cè)多軸運(yùn)動(dòng)控制系統(tǒng)的上位機(jī)軟件。
3.1 運(yùn)動(dòng)控制軟件設(shè)計(jì)
運(yùn)動(dòng)控制系統(tǒng)軟件部分主要由運(yùn)動(dòng)方式選擇、探頭位置坐標(biāo)、運(yùn)動(dòng)控制等模塊組成,可完成對(duì)系統(tǒng)運(yùn)動(dòng)方式的選擇,運(yùn)動(dòng)參數(shù)、控制指令的設(shè)定以及探頭位置信息讀取等工作。運(yùn)動(dòng)方式選擇模塊可根據(jù)實(shí)際需要完成相對(duì)運(yùn)動(dòng)或是絕對(duì)運(yùn)動(dòng)兩種運(yùn)動(dòng)方式的選擇,并會(huì)依照選擇的既定運(yùn)動(dòng)模式將X、Y、Z三軸的相應(yīng)運(yùn)動(dòng)位置坐標(biāo)輸出在相應(yīng)顯示欄中,以便進(jìn)行進(jìn)一步的參數(shù)核對(duì)以及設(shè)定;運(yùn)動(dòng)控制模塊可依照檢測(cè)規(guī)則實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)運(yùn)動(dòng)過(guò)程的控制,包括:設(shè)定相對(duì)原點(diǎn)、運(yùn)行、復(fù)位、以及退出等相關(guān)操作。相對(duì)原點(diǎn)設(shè)定可以將探頭任意當(dāng)前位置設(shè)為新的原點(diǎn),并以原點(diǎn)作為下一個(gè)運(yùn)動(dòng)的起始點(diǎn),即為探頭位置坐標(biāo)的相對(duì)零點(diǎn),并將此刻相對(duì)原點(diǎn)的絕對(duì)位置坐標(biāo)值在文本框中顯示出來(lái)。運(yùn)動(dòng)控制系統(tǒng)軟件流程圖如圖4所示。
圖4 運(yùn)動(dòng)控制系統(tǒng)軟件流程圖
3.2 以太網(wǎng)通信軟件設(shè)計(jì)
以太網(wǎng)通信模塊采用無(wú)連接的UDP通信協(xié)議,通過(guò)定義多軸運(yùn)動(dòng)控制器與上位機(jī)LabVIEW的以太網(wǎng)通信協(xié)議,實(shí)現(xiàn)下位機(jī)與上位機(jī)之間的遠(yuǎn)程通信。具體設(shè)計(jì)如下:首先使用“UDP Open Connection”打開(kāi)UDP鏈接,使用“UDP Write”節(jié)點(diǎn)向服務(wù)器端相應(yīng)的端口發(fā)送命令信息,然后使用“UDP Read”節(jié)點(diǎn)讀取服務(wù)器端發(fā)送來(lái)的有效回波數(shù)據(jù),用于后期處理,最后應(yīng)用“UDP Close Connection”節(jié)點(diǎn)關(guān)閉連接[6]。以太網(wǎng)通信模塊的程序框圖如圖5所示。
圖5 以太網(wǎng)通信程序流程圖
實(shí)驗(yàn)平臺(tái)由步進(jìn)電機(jī)及其驅(qū)動(dòng)器、上位機(jī)控制軟件和自主研發(fā)的多軸運(yùn)動(dòng)控制器構(gòu)成。在上位機(jī)的用戶控制界面中,首先輸入以太網(wǎng)的IP地址并選擇運(yùn)動(dòng)方式,然后根據(jù)用戶的檢測(cè)需求設(shè)定運(yùn)動(dòng)速度和運(yùn)動(dòng)距離,點(diǎn)擊運(yùn)行后探頭即按所設(shè)定運(yùn)行。探頭運(yùn)動(dòng)過(guò)程中還可以選擇設(shè)定當(dāng)前位置為原點(diǎn),探頭即按照新的原點(diǎn)重新開(kāi)始運(yùn)動(dòng)。同時(shí),在探頭運(yùn)動(dòng)時(shí)會(huì)實(shí)時(shí)顯示探頭當(dāng)前所在位置坐標(biāo)。
模擬開(kāi)關(guān)發(fā)送選通超聲探頭信號(hào)并發(fā)送脈沖信號(hào)激勵(lì)超聲探頭發(fā)射超聲波,F(xiàn)PGA控制A/D轉(zhuǎn)換電路對(duì)超聲回波信號(hào)進(jìn)行轉(zhuǎn)換,并將數(shù)據(jù)存入雙口RAM,存儲(chǔ)完成后向ARM發(fā)送信號(hào),ARM接收到采集完成信號(hào)將數(shù)據(jù)通過(guò)以太網(wǎng)向上位機(jī)發(fā)送。上位機(jī)的LabVIEW用戶控制界面如圖6所示。
圖6 LabVIEW人機(jī)交互界面
本文采用“上位機(jī)LabVIEW+多軸運(yùn)動(dòng)控制器”的設(shè)計(jì)方案,利用LabVIEW編寫(xiě)基于以太網(wǎng)的超聲檢測(cè)多軸運(yùn)動(dòng)控制系統(tǒng)上位機(jī)軟件,實(shí)現(xiàn)了上位機(jī)對(duì)超聲檢測(cè)控制信號(hào)的處理以及超聲檢測(cè)遠(yuǎn)程控制自動(dòng)化。多軸運(yùn)動(dòng)控制器軟件部分是基于嵌入式Linux操作系統(tǒng)上完成的,硬件外圍電路搭載DM9000A以太網(wǎng)控制芯片并采用UDP通信協(xié)議建立了上位機(jī)與下位機(jī)的遠(yuǎn)程通信。本系統(tǒng)實(shí)現(xiàn)了自動(dòng)超聲檢測(cè)系統(tǒng)的遠(yuǎn)程運(yùn)動(dòng)控制,避免了手動(dòng)檢測(cè)中人為因素對(duì)檢測(cè)精確度的影響,提高了超聲檢測(cè)的效率、精度、連續(xù)性以及可靠性。不足之處在于沒(méi)有實(shí)現(xiàn)全自動(dòng)化,部分運(yùn)動(dòng)控制功能仍需手動(dòng)控制,在今后的研究中將繼續(xù)開(kāi)發(fā)合適的解決方案,進(jìn)一步優(yōu)化此運(yùn)動(dòng)控制系統(tǒng)。
[1] 祝建禮,徐志農(nóng),楊辰龍.基于PMAC卡的超聲檢測(cè)運(yùn)動(dòng)控制系統(tǒng).控制與檢測(cè),2006,22(6):57-58.
[2] 王淑芳.基于虛擬儀器技術(shù)的多軸步進(jìn)電機(jī)控制系統(tǒng).微計(jì)算機(jī)信息,2006,10(22):97-99.
[3] 常春國(guó),徐運(yùn)濤,戴振華.Linux與Windows間以太網(wǎng)通信的研究.網(wǎng)絡(luò)與通信,2008,28(1):55-57.
[4] 高瑞,苗長(zhǎng)云,王中偉.基于LabVIEW的多軸運(yùn)動(dòng)控制系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā).天津工業(yè)大學(xué)學(xué)報(bào),2008,18(27):58-61.
[5] 韋宏利,史媛,溫軍會(huì).基于PMAC與LabVIEW的多軸運(yùn)動(dòng)控制系統(tǒng)的開(kāi)發(fā).西安工業(yè)大學(xué)學(xué)報(bào),2012,32(2):112-118.
[6] 王以民,苗長(zhǎng)云,白華.大型鍛件多路超聲檢測(cè)系統(tǒng)的研制.天津工業(yè)大學(xué)學(xué)報(bào),2014,33(2):48-52.
歡迎訂閱 郵發(fā)代號(hào):8-145 月刊 8元/期
《管道技術(shù)與設(shè)備》雜志
主要刊載內(nèi)容:
設(shè)計(jì)與研究 控制與測(cè)量 管件與設(shè)備
施工與焊接 腐蝕與防護(hù) 分析與探索
訂閱:沈陽(yáng)市大東區(qū)北海街242號(hào)(110043)
電話:024-88718619
網(wǎng)址:www.52gdw.com
E-mail:info@52gdw.com
Ultrasonic Testing Multi-Axis Motion Controller and Its PC Software Design
YANG Huan,MIAO Chang-yun,BAI Hua
( School of Electronics and Information Engineering,Tianjin Polytechnic,Tianjin 300387,China)
In order to achieve the purpose of remote automatic ultrasonic testing to the defective parts of the large objects,we designed a multi-axis motion controller for ultrasonic detection based on Ethernet.We adopt S3C2440 master control chip with the ARM9 kernel to design the multi-axis motion controller’s hardware circuit,transplanted Linux operating system and used C language to write its software.LabVIEW software was used to write the PC control interface with remote communication function,and UDP protocol was used to write the Ethernet communication software,which can communicate between the multi-axis motion controller and the PC.Then we conducted the related experiment to prove it.The experiment results show that this multi-axis motion controller can realize remote automatic control to ultrasonic probe and improve the detection efficiency and has high application value.
ultrasonic detection;multi-axis motion controller;Linux system;LabVIEW;Ethernet;remote automation
國(guó)家自然科學(xué)基金項(xiàng)目(51274150)
2014-09-11 收修改稿日期:2015-03-14
TB553
A
1002-1841(2015)07-0045-03
楊歡 (1989—),碩士研究生,主要研究方向?yàn)榍度胧健?E-mail:yanghuan0531@126.com 苗長(zhǎng)云(1962—),教授,博士生導(dǎo)師,主要研究方向?yàn)樾畔⑴c通信工程。E-mail:miaochangyun@tjpu.edu.cn