前言:想要寫出一篇引人入勝的文章?我們特意為您整理了談超聲波檢測設(shè)備軟件系統(tǒng)范文,希望能給你帶來靈感和參考,敬請(qǐng)閱讀。
摘要:超聲波無損檢測被廣泛應(yīng)用在工業(yè)、軍事、航空航天等各個(gè)領(lǐng)域,隨著電路數(shù)字化的發(fā)展,其精確度與可靠程度也有了很大的提高。本文依據(jù)超聲波檢測原理,以Python語言為基礎(chǔ),對(duì)超聲波無損檢測設(shè)備進(jìn)行設(shè)計(jì),實(shí)現(xiàn)對(duì)回波信號(hào)的快速響應(yīng)、數(shù)據(jù)的即時(shí)存儲(chǔ)等功能。
關(guān)鍵詞:超聲波;無損檢測;Pyhon
1引言
井控管匯是油田系統(tǒng)的重要組成部分,而焊縫的可靠性直接影響著管匯的整體使用壽命。所以在設(shè)備出廠前,都要對(duì)焊縫的質(zhì)量進(jìn)行檢測,超聲波無損檢測,是最適合大型管匯的檢測方法。但目前使用中的大多數(shù)超聲波檢測設(shè)備,存在著數(shù)據(jù)存儲(chǔ)困難、圖形反饋不及時(shí)、顯示精度不夠等缺陷。本文進(jìn)行了超聲波檢測設(shè)備系統(tǒng)的設(shè)計(jì),實(shí)現(xiàn)對(duì)回波信號(hào)的快速響應(yīng),數(shù)據(jù)的即時(shí)存儲(chǔ)。相對(duì)于原有設(shè)備,完善后設(shè)備的反饋延時(shí)更短,定位更準(zhǔn)確。
2系統(tǒng)整體設(shè)計(jì)思路
系統(tǒng)包括三個(gè)部分。第一部分為超聲波的收發(fā)電路,保證系統(tǒng)具有穩(wěn)定的發(fā)射信號(hào)并對(duì)接收到的信號(hào)進(jìn)行放大處理。第二部分是信號(hào)處理部分,將硬件系統(tǒng)中的模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),通過串行通信設(shè)備將數(shù)據(jù)傳輸給上位機(jī)[1]。第三部分為軟件數(shù)據(jù)處理部分,通過程序設(shè)計(jì)與編寫,實(shí)現(xiàn)超聲波波形的快速精確顯示、數(shù)據(jù)存儲(chǔ)等功能[2]。
3系統(tǒng)的軟件設(shè)計(jì)
近年來,Python語言的發(fā)展勢頭強(qiáng)勁,其以簡潔、兼容性等優(yōu)勢被大家推崇備至,已經(jīng)居于前三大編程語言并有著廣泛的發(fā)展空間。本文使用PyCharm進(jìn)行語言編寫。PyCharm是一種PythonIDE,帶有調(diào)試、Project管理、代碼跳轉(zhuǎn)、只能提示等多種幫助用戶高效Python語言開發(fā)的工具。后期還可以通過PyCharm遠(yuǎn)程連接樹莓派,直接在電腦上對(duì)樹莓派進(jìn)行語言編寫和調(diào)試。
3.1系統(tǒng)準(zhǔn)備
建立虛擬環(huán)境,并安裝Numpy、Scipy、Pandas、matplotlib、pyqtgraph等庫。虛擬環(huán)境的好處是在虛擬環(huán)境內(nèi)進(jìn)行的任何操作都不會(huì)影響到Python的安裝環(huán)境,只對(duì)應(yīng)用虛擬環(huán)境的工程起作用[3]。
3.2軟件方案流程
軟件設(shè)計(jì)的流程思路為:系統(tǒng)啟動(dòng)后進(jìn)行初始化;之后進(jìn)行端口檢測,查看有無可用端口,查到可用端口后,自動(dòng)檢測端口并進(jìn)行連接;連接成功后開始收集端口接收到的數(shù)據(jù)并進(jìn)行數(shù)據(jù)處理;之后在顯示界面實(shí)現(xiàn)交互顯示并進(jìn)行數(shù)據(jù)存儲(chǔ),如果接收不到數(shù)據(jù),循環(huán)10次后退出。
3.3具體功能實(shí)現(xiàn)
Pyserial封裝了串口通訊模塊,支持Linux、Windows、BSD(可能支持所有支持POSIX的),支持Jython(Java)和IconPython(.NETandMono).pyserial模塊對(duì)串口的訪問。應(yīng)用Pyqtgraph庫來生成顯示界面與坐標(biāo)軸。Pyqtgraph庫的數(shù)據(jù)可視化界面還支持交互縮放,大多數(shù)情況下2D界面支持鼠標(biāo)滾輪縮放以及左右鍵的操作,如拖動(dòng)、平移等[4]。運(yùn)用Tkinter與Pyqtgraph相結(jié)合的方法來進(jìn)行顯示界面的制定。Tkinter是Python進(jìn)行窗口視窗設(shè)計(jì)的模塊。作為Python特定的GUI界面,Tkinter可以實(shí)現(xiàn)一個(gè)直觀的多功能窗口界面。Tkinter庫主要的優(yōu)點(diǎn):一是Tkinter是Python自帶的庫,無需額外安裝,隨時(shí)使用;二是它的使用非常簡單,作為一個(gè)Python開發(fā)中的界面工具,簡潔明了。
3.4系統(tǒng)性能測試
調(diào)試中,選用虛擬串口軟件對(duì)軟件系統(tǒng)進(jìn)行調(diào)試。使用虛擬串口軟件對(duì)上位機(jī)增加兩個(gè)虛擬串口,一個(gè)作為發(fā)送數(shù)據(jù)端口,另一個(gè)作為接收數(shù)據(jù)端口。因?yàn)閷?shí)驗(yàn)中的AD轉(zhuǎn)換芯片的頻率為65MHz,所以數(shù)據(jù)發(fā)送的間隔設(shè)置為1/65M秒約為15ns[5]。運(yùn)行程序,發(fā)送端口接收到接收端口發(fā)來的連接成功提示,表示串口連接成功,開始向接收端口發(fā)送數(shù)據(jù)。數(shù)據(jù)來自對(duì)一塊30mm厚鋼板檢測得到的回波數(shù)據(jù),探頭的中心頻率為5MHz[6]。從界面顯示可以清晰看到底面回波波形,如圖3所示。
4結(jié)語
本文以超聲波檢測理論為基礎(chǔ),確定本文設(shè)計(jì)采用反射式檢測法,研究了一種基于Python的超聲波無損檢測系統(tǒng)。設(shè)計(jì)了系統(tǒng)的軟件部分,通過程序設(shè)計(jì)與編寫,實(shí)現(xiàn)了自動(dòng)檢測連接串口并接收數(shù)據(jù),以及超聲波波形的快速精確顯示、數(shù)據(jù)存儲(chǔ)等功能,為后續(xù)對(duì)超聲波檢測設(shè)備的研究提供了基礎(chǔ)與參考。
參考文獻(xiàn)
[1]張大山.基于雙探頭檢測系統(tǒng)的超聲波無損探傷設(shè)計(jì)[碩士學(xué)位論文].內(nèi)蒙古大學(xué),內(nèi)蒙古,2016
[2]唐權(quán)龍.油氣管管匯角焊縫檢測評(píng)價(jià)的研究[碩士學(xué)位論文].西安石油大學(xué),西安,2014
[3]王偉.井控管匯超聲波檢測技術(shù)及安全評(píng)價(jià)研究[碩士學(xué)位論文].中國石油大學(xué),青島,2014
[4]張永虎.高壓管匯沖蝕缺陷的超聲波檢測[碩士學(xué)位論文].西安石油大學(xué),西安,2015
[5]劉疆輝.油井高壓管匯的焊接.金屬加工(熱加工),2016(14):48-51
[6]劉曉楠.焊縫缺陷的超聲檢測與定位系統(tǒng)研究[碩士學(xué)位論文].哈爾濱工業(yè)大學(xué),哈爾濱,2015
作者:高超 蘇建華 趙亞麗 單位:承德石油高等??茖W(xué)校工業(yè)技術(shù)中心