陳治伃,張榮鎮(zhèn),王曉樂,梁 辰,蘇海濤
(桂林電子科技大學(xué) 電子工程與自動(dòng)化學(xué)院,廣西 桂林 541004)
近年來(lái),鋰電電動(dòng)扳手廣泛應(yīng)用于建筑、工業(yè)制造等行業(yè)[1]。電動(dòng)扳手在制造完成出廠前需進(jìn)行零件缺損檢測(cè),傳統(tǒng)檢測(cè)??柯牅y(cè)人員對(duì)電動(dòng)扳手運(yùn)行時(shí)的聲音進(jìn)行人耳聽音來(lái)進(jìn)行評(píng)判,工作效率低且評(píng)判標(biāo)準(zhǔn)難以統(tǒng)一。借鑒人類聽覺系統(tǒng)優(yōu)異的信號(hào)分析、處理與識(shí)別能力,基于聽覺模型的聲學(xué)檢測(cè)正在取代傳統(tǒng)的人工檢測(cè)[2],成為新型的電動(dòng)扳手零件檢測(cè)方法。聲學(xué)檢測(cè)不僅可以有效規(guī)避人工受經(jīng)驗(yàn)、技術(shù)、身體與情緒狀況影響的弊端,而且極大降低檢測(cè)所需的人工成本。為實(shí)現(xiàn)基于聽覺模型的聲學(xué)檢測(cè),本文針對(duì)電動(dòng)扳手零件缺損檢測(cè)設(shè)計(jì)了一套自動(dòng)聲學(xué)采集系統(tǒng),可以實(shí)現(xiàn)對(duì)電動(dòng)扳手工作聲音的非接觸式、自動(dòng)化采集,為之后的聲學(xué)分析打下扎實(shí)基礎(chǔ),大大提升了檢測(cè)效率。
自動(dòng)聲學(xué)采集系統(tǒng)主要包括機(jī)械結(jié)構(gòu)框架、下位機(jī)和上位機(jī)。機(jī)械結(jié)構(gòu)框架固定硬件設(shè)備,為實(shí)現(xiàn)電動(dòng)扳手的自動(dòng)啟停提供機(jī)械保障;下位機(jī)采用STM32控制推桿實(shí)現(xiàn)電動(dòng)扳手的自動(dòng)啟停操作;上位機(jī)采用LabVIEW[3-5]編程,通過USB接口控制下位機(jī)工作,采用聲卡采集麥克風(fēng)信號(hào)。整體系統(tǒng)組成框圖如圖1所示。
圖1 整體系統(tǒng)組成框圖Fig.1 Block diagram of the overall system composition
機(jī)械結(jié)構(gòu)框架主要包括總體支架、工具底座、推桿電機(jī)、觸板與模擬開關(guān),為電動(dòng)扳手提供一個(gè)穩(wěn)定的被測(cè)環(huán)境??傮w支架負(fù)責(zé)各個(gè)器件間的連接,工具底座用于固定被測(cè)的電動(dòng)扳手。推桿電機(jī)正轉(zhuǎn)用于啟動(dòng)電動(dòng)扳手,反轉(zhuǎn)用于停止電動(dòng)扳手。模擬開關(guān)用以輸出標(biāo)識(shí)信號(hào),當(dāng)觸板未碰到模擬開關(guān)時(shí),代表推桿并未到達(dá)電動(dòng)扳手開關(guān)處;當(dāng)觸板碰到模擬開關(guān)時(shí),代表推桿已經(jīng)推至電動(dòng)扳手開關(guān)處,電動(dòng)扳手開始工作。機(jī)械結(jié)構(gòu)示意圖、機(jī)械結(jié)構(gòu)實(shí)物圖如圖2所示。結(jié)構(gòu)中,各固定處均設(shè)有海綿軟墊,減少結(jié)構(gòu)框架與電動(dòng)扳手間的振動(dòng)耦合。
圖2 機(jī)械結(jié)構(gòu)框架Fig.2 Mechanical structure frame
硬件電路主要包括下位機(jī)主控電路、推桿電機(jī)驅(qū)動(dòng)電路、模擬開關(guān)調(diào)理電路和聲音采集調(diào)理電路。主控電路采用STM32通過USB接口接收上位機(jī)的控制命令,實(shí)現(xiàn)推桿電機(jī)控制和模擬開關(guān)信號(hào)檢測(cè),從而控制電動(dòng)扳手的啟停動(dòng)作。推桿電機(jī)采用直流電機(jī),驅(qū)動(dòng)電路實(shí)現(xiàn)電機(jī)正反轉(zhuǎn);模擬開關(guān)調(diào)理電路采用去抖電路實(shí)現(xiàn)信號(hào)去抖;聲音采集使用CRY333傳聲器,通過供電電路和運(yùn)放電路對(duì)傳聲器輸出信號(hào)進(jìn)行放大調(diào)理,送至計(jì)算機(jī)聲卡進(jìn)行采集。
下位機(jī)主控電路采用STM32F103VBT6[6]作為主控芯片。該芯片是32位的ARM微控制器,內(nèi)部集成有USB模塊,如此簡(jiǎn)化了硬件設(shè)計(jì),外圍僅需配置幾個(gè)分立元件即可完成USB接口的硬件設(shè)計(jì)。同時(shí)該芯片具有豐富的I/O管腳,采用這些管腳可以直接控制推桿電機(jī)驅(qū)動(dòng)電路和讀取模擬開關(guān)的輸出信號(hào)。另外,芯片內(nèi)部集成有多個(gè)定時(shí)器模塊,可以直接用于電動(dòng)扳手運(yùn)行時(shí)間的設(shè)置。主控芯片強(qiáng)大的集成性,使得硬件電路得以進(jìn)行非常簡(jiǎn)化的設(shè)計(jì)。
推桿電機(jī)驅(qū)動(dòng)電路中,使用兩個(gè)5V通用繼電器實(shí)現(xiàn)。推桿電機(jī)屬于直流電機(jī),控制電機(jī)是否通電,可以實(shí)現(xiàn)電機(jī)的啟動(dòng)和停止;控制電機(jī)通電的正負(fù)極性,可以實(shí)現(xiàn)電機(jī)的正轉(zhuǎn)和反轉(zhuǎn)。電機(jī)的兩個(gè)接線端分別連接兩個(gè)繼電器的COM公共端,電機(jī)供電電源的正極接兩個(gè)繼電器的NO常開端,供電電源的負(fù)極接兩個(gè)繼電器的NC常閉端。如此,當(dāng)兩個(gè)繼電器均處于斷開不工作狀態(tài)時(shí),電機(jī)不工作,推桿不運(yùn)動(dòng);當(dāng)其中一個(gè)繼電器處于工作狀態(tài)時(shí),電機(jī)通電,推桿運(yùn)行。此時(shí),當(dāng)兩個(gè)繼電器狀態(tài)相反時(shí),電機(jī)通電極性相反,推桿運(yùn)行方向即相反。如此實(shí)現(xiàn)了推桿電機(jī)啟停、正反轉(zhuǎn)工作的控制。繼電器接受STM32的控制,二者中間通過光耦進(jìn)行物理隔離,如此可避免繼電器的反向電動(dòng)勢(shì)對(duì)其它電路的干擾,使得硬件電路的穩(wěn)定性更好。
模擬開關(guān)調(diào)理電路中,使用簡(jiǎn)單的RC濾波電路進(jìn)行信號(hào)調(diào)理,同時(shí)使用反相器進(jìn)一步濾除掉輸出信號(hào)在變化瞬間的振蕩干擾,提高電路的抗干擾性能。信號(hào)在輸入STM32之前使用光耦進(jìn)行物理隔離,進(jìn)一步避免干擾竄入到其它電路,使得硬件電路在穩(wěn)定性的性能上表現(xiàn)更出色,以適應(yīng)工業(yè)現(xiàn)場(chǎng)的使用。
聲音采集中,使用CRY333傳聲器[7]進(jìn)行聲信號(hào)到電信號(hào)的轉(zhuǎn)換。CRY333傳聲器是專為工業(yè)現(xiàn)場(chǎng)聲信號(hào)傳感所設(shè)計(jì)的。CRY333是自由場(chǎng)型的電容傳聲器,靈敏度為50mV/Pa,頻率響應(yīng)范圍是10Hz~20kHz,動(dòng)態(tài)范圍(基準(zhǔn)20uPa)是15dB~130dB,動(dòng)態(tài)范圍上限(基準(zhǔn)20uPa)為≥138dB,等效噪聲(基準(zhǔn)20uPa)為15dBA(250Hz),溫度系數(shù)為0.012dB/℃。良好的傳聲器性能保證了電動(dòng)扳手運(yùn)行時(shí)聲信號(hào)的準(zhǔn)確獲取,為后續(xù)信號(hào)處理提供高質(zhì)量的數(shù)據(jù)來(lái)源。
CRY333傳聲器的調(diào)理電路中,使用恒流二極管為其提供穩(wěn)定的電流,采用2個(gè)2mA的恒流二極管并聯(lián),二極管正端接12V電源,二極管負(fù)端接傳聲器的信號(hào)端接口,如此為傳聲器的正常工作提供電能。信號(hào)端接口通過電容進(jìn)行交流信號(hào)耦合,從而輸出傳聲器所傳感得到的聲信號(hào)。由于傳聲器輸出信號(hào)微弱,所以采用了放大電路對(duì)信號(hào)進(jìn)行了放大。放大電路采用OPA1688[8],該芯片是TI公司提供的低失真、高驅(qū)動(dòng)軌到軌輸出音頻運(yùn)算放大器,適用于聲信號(hào)帶寬的放大。專用音頻信號(hào)運(yùn)算放大器的選擇保證了微弱信號(hào)的低失真調(diào)理,最大程度保持了數(shù)據(jù)來(lái)源的真實(shí)性。
除此之外,還設(shè)計(jì)了電源電路為各個(gè)模塊進(jìn)行供電。其中電動(dòng)推桿需要24V供電,CRY333傳聲器需要12V供電,模擬開關(guān)需要12V供電,繼電器需要5V供電,STM32需要3.3V供電,其他電路也需要5V和3.3V供電。為此,整個(gè)硬件電路采用24V DC供電,經(jīng)過LM2596進(jìn)行調(diào)壓輸出12V DC,12V DC經(jīng)過LM2596-5V轉(zhuǎn)換為5V DC電壓,之后經(jīng)過AMS1117-3.3電源芯片轉(zhuǎn)換為3.3V電壓。如此實(shí)現(xiàn)了電源電路的設(shè)計(jì),保證了各個(gè)模塊的正常供電,為硬件在工業(yè)現(xiàn)場(chǎng)使用打下基礎(chǔ)。
軟件設(shè)計(jì)由上位機(jī)軟件與下位機(jī)軟件組成。上位機(jī)通過LabVIEW編程,操作人員按下采集按鈕后,上位機(jī)發(fā)送開始測(cè)試命令給下位機(jī),同時(shí)控制計(jì)算機(jī)聲卡進(jìn)行聲音采集,當(dāng)上位機(jī)收到下位機(jī)電動(dòng)扳手停止?fàn)顟B(tài)后,結(jié)束聲音采集。采集過程中,上位機(jī)檢測(cè)下位機(jī)發(fā)送的電動(dòng)扳手啟動(dòng)狀態(tài)。若上位機(jī)未收到該狀態(tài),則停止工作并進(jìn)行報(bào)警。上位機(jī)界面同時(shí)具有波形顯示和本地保存功能。在上位機(jī)軟件的LabVIEW代碼設(shè)計(jì)過程中,采用模塊化思想實(shí)現(xiàn)設(shè)計(jì)。將整個(gè)軟件分為了通信模塊、聲卡采集模塊、數(shù)據(jù)分析模塊和人機(jī)交互模塊。
通信模塊設(shè)計(jì)中,采用NI公司所提供的VISA控件實(shí)現(xiàn)USB通信。在本系統(tǒng)中,上下位機(jī)的USB通信屬于USB HID設(shè)備類[9]。其中上位機(jī)對(duì)下位機(jī)進(jìn)行數(shù)據(jù)寫入時(shí),采用VISA寫入控件即可完成。當(dāng)上位機(jī)讀取下位機(jī)數(shù)據(jù)時(shí),需采用USB中斷事件控件進(jìn)行讀取。
聲卡采集模塊中,首先使用配置聲音輸入控件對(duì)聲卡采集進(jìn)行配置。其中采用96kHz采樣率對(duì)信號(hào)進(jìn)行采樣,通道選擇左右雙聲道,數(shù)據(jù)選擇32位格式,采用有限長(zhǎng)采樣模式,另外設(shè)備ID需要先使用LabVIEW查看計(jì)算機(jī)內(nèi)聲卡的ID號(hào),才能確定所選擇聲卡對(duì)應(yīng)的ID填入控件的輸入端[10]。接下來(lái)采用讀取聲音輸入控件對(duì)信號(hào)進(jìn)行讀取,讀取的數(shù)據(jù)長(zhǎng)度可根據(jù)采集時(shí)長(zhǎng)與采樣率的乘積計(jì)算得到。讀取完成后,使用聲音輸入清零控件釋放所選擇的資源,避免程序?qū)Y源長(zhǎng)期占用所引起的錯(cuò)誤。最后,使用簡(jiǎn)易錯(cuò)誤處理器對(duì)有可能的錯(cuò)誤進(jìn)行處理。
數(shù)據(jù)分析模塊中,對(duì)聲卡采集到的數(shù)據(jù)進(jìn)行處理。上述聲卡采集模塊輸出的數(shù)據(jù)類型為波形數(shù)組。在數(shù)據(jù)分析模塊中,首先使用索引數(shù)組控件對(duì)波形數(shù)組進(jìn)行索引,從而分別得到左右聲道的數(shù)據(jù),讀取得到的數(shù)據(jù)需要轉(zhuǎn)換為聲壓值。轉(zhuǎn)換過程中,首先需要明確聲卡采集通道的量化系數(shù),采用通用信號(hào)發(fā)生器產(chǎn)生一個(gè)標(biāo)準(zhǔn)的1kHz、100mV信號(hào),直接接入聲卡,采集后查看信號(hào)幅值,從而得到量化系數(shù)。聲卡采集得到的數(shù)據(jù)除以量化系數(shù)從而得到信號(hào)的電壓值,該電壓值需要除以傳聲器調(diào)理電路的放大倍數(shù)從而得到傳聲器所輸出信號(hào)的信號(hào)電壓值,該電壓值再除以傳聲器的靈敏度即可將信號(hào)的單位轉(zhuǎn)換為聲壓?jiǎn)挝唬≒a)。轉(zhuǎn)換后,通過波形圖控件將時(shí)域數(shù)據(jù)進(jìn)行顯示。軟件中還采用了傅里葉變換的方法查看信號(hào)的頻譜,此過程中使用LabVIEW的FFT控件實(shí)現(xiàn)數(shù)據(jù)從時(shí)域到頻域的轉(zhuǎn)換[11]。值得注意的是,波形數(shù)據(jù)類型可通過獲取波形成分控件獲取數(shù)據(jù)的初始采樣時(shí)間,時(shí)間分辨率和對(duì)應(yīng)的信號(hào)數(shù)據(jù)。在此將信號(hào)數(shù)據(jù)送入FFT控件進(jìn)行轉(zhuǎn)換,轉(zhuǎn)換得到的結(jié)果需要對(duì)其求絕對(duì)值獲得幅度譜,另外僅需取轉(zhuǎn)換數(shù)據(jù)的前一半部分即可得到傅里葉變換的全景頻譜。
人機(jī)交互模塊中,主要完成開始采集控制、報(bào)警處理、結(jié)束采集控制和文件保存。開始采集控制中,采用布爾輸入控件拾取操作人員的按鍵動(dòng)作。當(dāng)用戶按下開始采集按鍵后,上位機(jī)通過通信模塊發(fā)送數(shù)據(jù)幀到下位機(jī)。同時(shí)根據(jù)下位機(jī)所發(fā)送的狀態(tài)幀識(shí)別下位機(jī)狀態(tài),若下位機(jī)控制失敗,返回失敗的狀態(tài)幀后進(jìn)行報(bào)警處理;當(dāng)下位機(jī)定時(shí)完成且退回推桿返回結(jié)束采集的狀態(tài)幀后,上位機(jī)停止聲卡采集。采用路徑輸入控件實(shí)現(xiàn)操作人員保存數(shù)據(jù)的路徑設(shè)置,當(dāng)采集完成后將數(shù)據(jù)按照用戶所設(shè)置的路徑進(jìn)行保存。
同時(shí)值得注意的是,在上位機(jī)的采集數(shù)據(jù)的格式中,聲卡采集后輸出的數(shù)據(jù)格式為波形數(shù)組格式,最后數(shù)據(jù)保存到用戶目錄下采用的是wav格式。在此使用了LabVIEW的簡(jiǎn)易寫入聲音文件控件,實(shí)現(xiàn)數(shù)據(jù)格式的轉(zhuǎn)換和文件寫入[12]。由于LabVIEW提供了豐富的控件,使得上位機(jī)的編程得以快速完成,同時(shí)模塊化的設(shè)計(jì)使得代碼更加易于維護(hù)。
下位機(jī)軟件上電初始化后,下位機(jī)等待控制命令,接收到開始測(cè)試命令后控制推桿并檢測(cè)模擬開關(guān)狀態(tài)。當(dāng)檢測(cè)到電動(dòng)扳手啟動(dòng)后,發(fā)送電動(dòng)扳手啟動(dòng)狀態(tài)至上位機(jī),定時(shí)器延時(shí)一定時(shí)長(zhǎng)后,控制推桿使電動(dòng)扳手停止工作,并發(fā)送電動(dòng)扳手停止?fàn)顟B(tài)給上位機(jī)。
下位機(jī)編程中采用keil集成開發(fā)環(huán)境,由于ST公司提供了基本的函數(shù)庫(kù),所以可很好地縮短開發(fā)周期。下位機(jī)程序分為初始化模塊、通信模塊、檢測(cè)及控制模塊和定時(shí)模塊。初始化模塊中,先對(duì)所使用的各個(gè)外設(shè)進(jìn)行初始化。初始化通過后,程序才能進(jìn)行正常運(yùn)行狀態(tài);通信模塊實(shí)現(xiàn)USB HID設(shè)備的通信;檢測(cè)及控制模塊僅需對(duì)I/O進(jìn)行讀寫即可完成電動(dòng)推桿的控制和模擬開關(guān)狀態(tài)的讀取;定時(shí)模塊中,設(shè)置定時(shí)器完成采集時(shí)長(zhǎng)的設(shè)置。其中,采集時(shí)長(zhǎng)已根據(jù)用戶要求進(jìn)行了固化。電動(dòng)扳手在出廠檢測(cè)中,由機(jī)器進(jìn)行檢測(cè)僅需采集若干秒運(yùn)行的聲信號(hào)即可完成零件缺損的檢測(cè),比人工聽測(cè)時(shí)間縮短了一大部分,從而提高了出廠檢測(cè)效率。
現(xiàn)場(chǎng)測(cè)試后,上位機(jī)測(cè)量結(jié)果如圖3所示。在上位機(jī)中可正常顯示所測(cè)量得到的電動(dòng)扳手運(yùn)行聲音波形,通過傅里葉變換可以得到該波形所對(duì)應(yīng)的頻譜信息,且可根據(jù)用戶選擇的路徑保存到對(duì)應(yīng)的文件中,實(shí)現(xiàn)了電動(dòng)扳手的自動(dòng)聲信號(hào)采集。
圖3 系統(tǒng)現(xiàn)場(chǎng)測(cè)試上位機(jī)界面Fig.3 System on-site test host computer interface
本文通過對(duì)機(jī)械結(jié)構(gòu)框架、下位機(jī)和上位機(jī)的聯(lián)合設(shè)計(jì)完成了對(duì)電動(dòng)扳手工作聲音自動(dòng)采集,為進(jìn)一步地聲學(xué)分析提供數(shù)據(jù)支撐。所設(shè)計(jì)的系統(tǒng)可以應(yīng)用于電動(dòng)扳手生產(chǎn)企業(yè)的批量檢測(cè)中,能有效提高檢測(cè)效率,降低檢測(cè)成本,具有良好的應(yīng)用前景。