梁 瑋,高天德
(西北工業(yè)大學(xué) 航海學(xué)院,西安 710072)
隨著工業(yè)化的快速發(fā)展,工業(yè)生產(chǎn)中對(duì)自動(dòng)化的要求越來(lái)越高。在工業(yè)生產(chǎn)中,有些原材料,中間產(chǎn)品及最終成品的物質(zhì)性質(zhì)是固體狀態(tài)(如煤炭、水泥、塑料顆粒、飼料、燃燒廢料、糧食等各種粉狀、塊狀、顆粒狀的物料),在存儲(chǔ)、轉(zhuǎn)運(yùn)等過(guò)程中對(duì)這類物料的料位難以測(cè)量。但是及時(shí)準(zhǔn)確的測(cè)量料倉(cāng)中的物料料位對(duì)自動(dòng)化生產(chǎn)中的生產(chǎn)效率、安全生產(chǎn)和科學(xué)調(diào)度具有重要的意義。
火力發(fā)電廠在作業(yè)過(guò)程中,產(chǎn)生的燃燒廢料需要進(jìn)行二次加工等操作,因此需要進(jìn)行存儲(chǔ),料倉(cāng)要進(jìn)出料。為了提高工作效率和安全生產(chǎn),需要對(duì)廢料倉(cāng)里的廢料料位進(jìn)行測(cè)量。由于工況比較惡劣,廢料溫度高,料倉(cāng)表面溫度很高,以往的測(cè)量液位的方法在這種工況下完全不能使用,如浮子式,壓差式等。由于技術(shù)難度大裝置成本高固態(tài)物料的料位計(jì)沒(méi)有液位測(cè)量經(jīng)驗(yàn)豐富,很多工況下沒(méi)有找到比較理想的解決方案。但由于工業(yè)自動(dòng)化的高速發(fā)展,對(duì)固體物料的料位測(cè)量需求越來(lái)越迫切[1]。
以往的料位測(cè)量技術(shù)總會(huì)因?yàn)楣腆w物料中粉塵大,揚(yáng)塵嚴(yán)重,進(jìn)料時(shí)易產(chǎn)生虛假回波造成誤報(bào),造成可靠性降低。或是由于物料的黏性或濕度較大,物料的顆粒度較大等原因造成探頭被物料黏著或者被沖擊損壞,造成誤報(bào)。亦或是因?yàn)槭軠囟群推渌饨绛h(huán)境影響,介電常數(shù)的變化,造成誤報(bào)??煽啃暂^高的無(wú)源核輻射料位計(jì)的價(jià)格昂貴,也很難得到較好普及。
總結(jié)以往的料位測(cè)量技術(shù),由于與被測(cè)物料或被測(cè)物料上方介質(zhì)接觸導(dǎo)致可靠性降低,為解決火力發(fā)電廠[2]廢料倉(cāng)的物料料位測(cè)量問(wèn)題,設(shè)計(jì)基于振動(dòng)的固態(tài)物料[3-6]料位計(jì)模塊。這是一種不與物料或其上方介質(zhì)接觸的,對(duì)介電常數(shù)和密度穩(wěn)定性沒(méi)有要求的,沒(méi)有放射污染的,一種環(huán)保、安全、性價(jià)比高的料位測(cè)量技術(shù)。
振動(dòng)的物體在振動(dòng)時(shí)會(huì)遭到各種阻力的作用,阻尼的作用使得振動(dòng)的物體機(jī)械能被以波的形式將轉(zhuǎn)換成其他形式能的機(jī)械能向外傳播消耗掉,使振動(dòng)的振幅不斷減小,最終停止振動(dòng)。當(dāng)物體的振動(dòng)幅度到達(dá)最大值時(shí)的頻率為共振頻率,當(dāng)料倉(cāng)中的物料量不同,對(duì)料倉(cāng)外部進(jìn)行激振時(shí),料倉(cāng)的共振頻率不同。通過(guò)采集大量的不同料位下的振動(dòng)信號(hào),對(duì)采集到的振動(dòng)信號(hào)進(jìn)行頻譜分析發(fā)現(xiàn)不同料位的振動(dòng)峰值對(duì)應(yīng)的頻率不同。將每一次振動(dòng)的信號(hào)進(jìn)行傅里葉變化,取出峰值點(diǎn)及其對(duì)應(yīng)的頻率與料位信息發(fā)現(xiàn)同樣料位高度對(duì)應(yīng)的峰值和頻率是固定的,由此得到了頻譜峰值測(cè)量法。
頻譜峰值測(cè)量法:在料倉(cāng)壁上等間距布放加速度傳感器,使用激振器在擊振點(diǎn)擊振,將采集到的三路傳感器信號(hào)進(jìn)行采集,將采集到的振動(dòng)信號(hào)進(jìn)行頻譜處理,取得頻譜峰值及對(duì)應(yīng)頻率,以三路傳感器采集的振動(dòng)信號(hào)的頻譜峰值點(diǎn)和對(duì)應(yīng)頻率為特征量,進(jìn)行最小二乘學(xué)習(xí),得到料位信息和頻譜峰值的關(guān)系式。關(guān)系式參數(shù)如圖1所示。

圖1 峰值頻譜料位參數(shù)

相位差測(cè)量法:當(dāng)波在不同介質(zhì)中傳播時(shí),波的波長(zhǎng)發(fā)生改變,波長(zhǎng)改變引起相位差發(fā)生改變。相位差測(cè)量法根據(jù)不同介質(zhì)中相位差不同推導(dǎo)出料位位置公式。y=xΦ+Φ滿PB+Φ空PA,x為A、B或B、C之間的距離,Φ滿為料位滿的時(shí)候A、B或B、C之間的相位差,Φ空為料位空的時(shí)候A、B或B、C之間的相位差,Φ為物料位于兩傳感器之間時(shí)兩點(diǎn)之間的相位差。P為傳感器位置。
在工廠作業(yè)時(shí),將加速度傳感器等間距布放在料倉(cāng)壁,以一定的時(shí)間間隔通過(guò)加速度傳感器采集振動(dòng)信號(hào),傳感器通過(guò)信號(hào)線將振動(dòng)信號(hào)傳給單片機(jī),傳感器與單片機(jī)使用IIC通信協(xié)議進(jìn)行通信。單片機(jī)進(jìn)行料位信息的計(jì)算后輸出料位信息。料位信息采用標(biāo)準(zhǔn)工業(yè)電流環(huán)和兩個(gè)料位開(kāi)關(guān)表示,料位高低對(duì)應(yīng)電流高低,料位開(kāi)關(guān)表示極值情況下的料位。系統(tǒng)安裝示意圖如圖2所示。

圖2 系統(tǒng)安裝示意圖
通過(guò)實(shí)驗(yàn)對(duì)比,系統(tǒng)最終采用頻譜峰值測(cè)量法,頻譜峰值測(cè)量法誤差小,易實(shí)現(xiàn),原理簡(jiǎn)單。為保證系統(tǒng)的料位計(jì)算的準(zhǔn)確性,通過(guò)采集大量樣本數(shù)據(jù),擬合特征量與料位信息的關(guān)系曲線。料位測(cè)量由信號(hào)采集、料位計(jì)算、料位信息輸出3個(gè)大模塊完成。采集到振動(dòng)信號(hào)后,傳輸?shù)綄?xiě)好料位計(jì)算算法程序的料位計(jì)算模塊,料位計(jì)算模塊將計(jì)算好的料位信息傳給料位信息輸出模塊輸出料位信息,從而完成料位的測(cè)量。
系統(tǒng)由主控芯片、電源模塊、料位開(kāi)關(guān)、料位顯示模塊和傳感器模塊組成。其中主控芯片選用STM32F103ZET6,主控芯片主要完成料位的計(jì)算以及輸出料位信息。料位計(jì)算方法采用比較穩(wěn)定的頻譜峰值測(cè)量法。單片機(jī)求出料位特征量后代入Matlab提前擬合好的料位計(jì)算公式。單片機(jī)輸出不同占空比的PWM波表示不同料位的料位信息。傳感器負(fù)責(zé)完成信號(hào)采集并上傳至單片機(jī)。XTR116和兩路料位開(kāi)關(guān)負(fù)責(zé)料位信息的輸出表示,PWM波經(jīng)過(guò)濾波隔離放大后輸出給XTR116電壓轉(zhuǎn)電流模塊,XTR116輸出4~20 mA的標(biāo)準(zhǔn)工業(yè)電流環(huán)表示料位信息。當(dāng)料位在兩個(gè)極端料位時(shí),料位開(kāi)關(guān)打開(kāi)。系統(tǒng)框圖如圖3所示。

圖3 系統(tǒng)框圖
STM32F103ZET6是基于ARM Cortex-M3內(nèi)核的微處理器,帶有DSP和浮點(diǎn)運(yùn)算,CPU頻率72 MHz,且外設(shè)豐富,且有豐富完善的固件庫(kù),對(duì)功耗的控制很好,有睡眠、停機(jī)和待機(jī)等模式工作時(shí)可以使系統(tǒng)功耗降低。該芯片運(yùn)行頻率72 MHz、帶有512 kflash。5個(gè)USART接口、2個(gè)IIC接口、112個(gè)快速I/O端口、1個(gè)SDIO接口,12通道DMA控制器。多達(dá)11個(gè)定時(shí)器,4個(gè)16位定時(shí)器,每個(gè)定時(shí)器有多達(dá)4個(gè)用于輸入捕獲/輸出比較/PWM或脈沖計(jì)數(shù)的通道和增量編碼器輸入。改變計(jì)數(shù)值就可以改變PWM波的占空比。滿足系統(tǒng)使用不同占空比的PWM波來(lái)表示料位信息的需求??焖買/O口的數(shù)量足夠用于三路軟件模擬IIC的需求,足夠完成采集振動(dòng)信號(hào)的任務(wù)以及兩路料位開(kāi)關(guān)的控制。串口可以實(shí)現(xiàn)與PC端的通信,方便硬件調(diào)試時(shí)將調(diào)試信息打印至PC端。SDIO口可以掛載SD卡滿足前期數(shù)據(jù)采集存儲(chǔ)的需求。單片機(jī)的存儲(chǔ)和計(jì)算能力滿足對(duì)振動(dòng)信號(hào)進(jìn)行FFT及料位計(jì)算的需求。單片機(jī)的內(nèi)部架構(gòu)如圖4所示,單片機(jī)的最小系統(tǒng)如圖5所示。

圖4 STM32F103ZET6內(nèi)部結(jié)構(gòu)

圖5 單片機(jī)最小系統(tǒng)
傳感器模塊的作用是將料倉(cāng)壁上的振動(dòng)信號(hào)采集并傳到主控芯片。我們選擇了Analog Devices公司生產(chǎn)的ADXL345加速度傳感器,這款傳感器能測(cè)量運(yùn)動(dòng)或者沖擊導(dǎo)致的動(dòng)態(tài)加速度,量程最大可達(dá)±16 g,分辨率高最高達(dá)13位,輸出數(shù)據(jù)速率最高達(dá)3 200 Hz,測(cè)量模式下功耗低至23 μA,尺寸僅為3 mm×5 mm×1 mm,電壓工作范圍為2.0 V至3.6 V,可以通過(guò)I2C和SPI數(shù)字接口進(jìn)行訪問(wèn)。這個(gè)傳感器滿足了系統(tǒng)的功能需求,因?yàn)閭鞲衅鬏敵龅氖菙?shù)字量,因此系統(tǒng)可以減少ADC部分的設(shè)計(jì),減小了PCB板的空間壓力,工作電壓也可以使用3.3 V與單片機(jī)匹配減少電壓軌道。信號(hào)采集電路如圖6所示。

圖6 傳感器模塊電路
料位信息輸出電路的作用是將主控芯片計(jì)算好的料位信息輸出,料位信息輸出電路主要由濾波、隔離、電壓轉(zhuǎn)電流電路組成。主控芯片將料位信息以PWM波的方式輸出,PWM經(jīng)過(guò)濾波電路轉(zhuǎn)換成直流電壓,通過(guò)光耦隔離電路后輸入電壓轉(zhuǎn)電流電路以電流的形式輸出料位信息。前端采用三階低通濾波器將輸出的PWM波濾成直流電壓,濾波器截止頻率使用公式:f=1/π2(RC)計(jì)算,信號(hào)從濾波器輸出后,經(jīng)過(guò)一個(gè)跟隨放大器對(duì)前后級(jí)阻抗進(jìn)行隔離,再用一個(gè)放大器將電壓信號(hào)轉(zhuǎn)換為電流信號(hào),信號(hào)經(jīng)過(guò)一個(gè)光耦隔離將前后級(jí)隔離,光耦隔離芯片的輸出信號(hào),經(jīng)過(guò)放大器轉(zhuǎn)換成電壓信號(hào)輸入至電壓轉(zhuǎn)電流芯片,電壓轉(zhuǎn)電流芯片輸出4~20 mA電流表示料位信息。
料位信息輸出模塊所使用的放大器都選用ADI公司的AD8626運(yùn)算放大器,該芯片為單通道放大器具有超低失調(diào)、漂移和偏置電流特性。適用于本系統(tǒng)的設(shè)計(jì)。光耦隔離電路選用Avago公司的高線性光耦隔離HCNR201芯片,該芯片實(shí)現(xiàn)了主控系統(tǒng)與電壓轉(zhuǎn)電流模塊電路的隔離。電壓轉(zhuǎn)電流模塊選用TI公司的XTR116U芯片,該芯片可以實(shí)現(xiàn)在整個(gè)工業(yè)電流環(huán)內(nèi)發(fā)送4~20 mA的模擬信號(hào),有精確的電流定標(biāo)和輸出電流限制功能。芯片滿足系統(tǒng)的工況要求。料位信息輸出電路如圖7所示。

圖7 料位信息輸出電路
系統(tǒng)設(shè)計(jì)有兩路料位開(kāi)關(guān),通過(guò)單片機(jī)控制繼電器的通斷完成料位開(kāi)關(guān)的功能。系統(tǒng)使用SI2302N溝道場(chǎng)效應(yīng)管對(duì)ATQ2繼電器進(jìn)行驅(qū)動(dòng),IO控制場(chǎng)效應(yīng)管的通斷,在繼電器線圈連接一個(gè)反向二極管用于吸收線圈的沖擊電流。當(dāng)IO口輸出低電平時(shí)線圈不上電,繼電器的2、3引腳處于閉合狀態(tài),料位開(kāi)關(guān)處于關(guān)閉狀態(tài),當(dāng)IO口輸出高電平時(shí)線圈上電,繼電器引腳3,4處于閉合狀態(tài),料位開(kāi)關(guān)處于開(kāi)啟狀態(tài),料位開(kāi)關(guān)電路如圖8所示。

圖8 料位開(kāi)關(guān)
系統(tǒng)在工廠作業(yè)時(shí)需要長(zhǎng)時(shí)間運(yùn)行,因此為了降低功耗,需要對(duì)模塊的供電電路進(jìn)行優(yōu)化。通信模塊的供電方案如圖9所示。

圖9 模塊供電方案
由于系統(tǒng)只需要3個(gè)電壓軌道,即5 V、3.3 V、24 V。其中3.3 V用于給單片機(jī)和傳感器供電,5 V用于給于繼電器供電和系統(tǒng)供電,24 V用于給電壓轉(zhuǎn)電流芯片外部供電,5 V的電源通過(guò)適配器外接。3.3 V電壓需要使用一個(gè)5 V轉(zhuǎn)3.3 V的電源芯片,系統(tǒng)使用的是REG1117-3.3,REG1117-3.3是一款低壓差線性穩(wěn)壓器,輸出電壓紋波小,效率高。傳統(tǒng)的線性穩(wěn)壓器要求輸入輸出的壓差至少在2~3 V,而5 V到3.3 V之間的壓差僅為1.7 V,因此采用了LDO穩(wěn)壓器。5 V轉(zhuǎn)24 V也需要一個(gè)轉(zhuǎn)換芯片,系統(tǒng)采用的是B0524LS-1WR2 DC-DC電源芯片。設(shè)計(jì)電源電路時(shí),需要設(shè)計(jì)電源濾波電路,在REG1117-3.3輸入輸出端分別并聯(lián)一個(gè)大電容用于低頻濾波,分別并聯(lián)兩個(gè)小電容用于高頻率波,使輸出更平滑的穩(wěn)定電壓。
系統(tǒng)軟件初始化后休眠等待定時(shí)器中斷到來(lái)喚醒系統(tǒng),發(fā)送信號(hào)采集指令給傳感器,傳感器采集振動(dòng)信號(hào)并傳到處理芯片,將采集到的一定長(zhǎng)度的振動(dòng)信號(hào)帶入訓(xùn)練好的料位計(jì)算公式,取得料位信息。判斷料位是否滿或空,如果料位滿或者空則控制打開(kāi)對(duì)應(yīng)的料位開(kāi)關(guān),如果料位未滿,則輸出料位信息。輸出料位信息后系統(tǒng)繼續(xù)休眠直至下一次定時(shí)器中斷觸發(fā)喚醒系統(tǒng)。程序流程如圖10所示。

圖10 程序流程
由于單片機(jī)上的IIC接口只有兩個(gè),因此我們使用單片機(jī)的IO口軟件模擬了三路IIC接口用于與ADXL345進(jìn)行通信。ADXL345作為從設(shè)備通過(guò)IIC接口進(jìn)行通信,對(duì)寄存器進(jìn)行寫(xiě)操作,將數(shù)據(jù)傳輸?shù)絊TM32中。系統(tǒng)初始化完成后進(jìn)入休眠模式,等待定時(shí)器喚醒,當(dāng)定時(shí)器中斷喚醒系統(tǒng)時(shí),發(fā)送傳感器片選使能信號(hào),開(kāi)啟振動(dòng)信號(hào)采集。存儲(chǔ)一定長(zhǎng)度的信號(hào)存放在處理器芯片內(nèi)存中。
單片機(jī)將采集到的振動(dòng)信號(hào)做FFT變化,取出頻譜峰值及對(duì)應(yīng)頻率,將特征值帶入訓(xùn)練好的料位計(jì)算公式,計(jì)算出料位。料位輸出采用PWM波的形式輸出,利用定時(shí)器控制脈寬寬度,用不同占空比的PWM波來(lái)表示不同的料位。將定時(shí)器設(shè)置為遞增計(jì)數(shù)PWM模式,當(dāng)計(jì)數(shù)值小于CCRX時(shí)PWM波為低電平,當(dāng)數(shù)值超過(guò)CCRX時(shí)定時(shí)器輸出為高電平。當(dāng)計(jì)數(shù)值到達(dá)自動(dòng)重裝載值時(shí),發(fā)生上溢,計(jì)數(shù)器清零,重新計(jì)數(shù),重復(fù)上述過(guò)程??刂戚敵霾煌衔粫r(shí),只需控制CCRX值即可,需要改變PWM波的頻率時(shí)改變ARR。配置好定時(shí)器之后,只需改變CRRX的值就可有改變輸出電壓,通過(guò)電壓的改變來(lái)改變輸出電流,以此表達(dá)料位信息。
為了驗(yàn)證料位測(cè)量系統(tǒng)的性能,對(duì)系統(tǒng)的測(cè)量模型和各個(gè)硬件模塊及軟件模塊進(jìn)行測(cè)試。
料位測(cè)量實(shí)驗(yàn)是整個(gè)系統(tǒng)開(kāi)發(fā)最關(guān)鍵的部分,料位測(cè)量模型建立的實(shí)驗(yàn)是整個(gè)系統(tǒng)開(kāi)發(fā)的核心,只有模型建立成功,才能對(duì)料位進(jìn)行測(cè)量,在模型成功建立的條件下,才能對(duì)硬件架構(gòu)進(jìn)行設(shè)計(jì),才能對(duì)軟件架構(gòu)進(jìn)行設(shè)計(jì)。
料位測(cè)量實(shí)驗(yàn)在本系統(tǒng)的開(kāi)發(fā)中較為曲折,歷時(shí)也是最長(zhǎng)的。模型建立主要是使用matlab軟件進(jìn)行的,主要是對(duì)振動(dòng)信號(hào)反應(yīng)料位特征的特征量的尋找。前期的實(shí)驗(yàn)主要是用料倉(cāng)模型進(jìn)行的,采用的是通過(guò)NI公司的4432采集卡用模擬量加速度傳感器將振動(dòng)信號(hào)采集回來(lái),傳感器將振動(dòng)信號(hào)以電壓的方式輸出。采集信號(hào)時(shí)需要用LABVIEW編寫(xiě)信號(hào)采集的上位機(jī)程序,將采集的信號(hào)寫(xiě)成TXT文件,然后導(dǎo)入matlab進(jìn)行分析。LABVIEW采集的信號(hào)波形如圖11所示,料倉(cāng)模型如圖12所示。

圖11 振動(dòng)信號(hào)波形

圖12 料倉(cāng)模型
因?yàn)閷?duì)振動(dòng)信號(hào)在不規(guī)則剛體中穿越不同介質(zhì)時(shí)的傳播特性掌握不是很好,因此在特征量的尋找中有很大的困難,只能建立不同料位不同激振點(diǎn)的實(shí)驗(yàn)條件下,從信號(hào)的時(shí)域、頻域、相位、互譜及互譜相位等參量去進(jìn)行分析,去觀察這些參量隨料位的變化。找出有關(guān)料位的特征量。
首先是從時(shí)域去觀察,在不同料位情況,不同的激振點(diǎn)的條件下,對(duì)信號(hào)進(jìn)行采集觀察。首先是本著節(jié)約的原則采用一路傳感器進(jìn)行撿振,將不同料位下不同激振點(diǎn)的振動(dòng)信號(hào)采集回來(lái)進(jìn)行特征量的提取。從時(shí)域上看不同料位情況下,信號(hào)的衰減速度不同。同一料位下不同激振點(diǎn)振動(dòng)信號(hào)的噪聲不同,激振點(diǎn)越高,噪聲越大。但是經(jīng)過(guò)觀察在時(shí)域上不能得到反應(yīng)料位的特征量,因此轉(zhuǎn)到頻域去對(duì)信號(hào)進(jìn)行分析,首先需要去除直流信號(hào)的0頻干擾,對(duì)信號(hào)頻譜進(jìn)行觀察圖形發(fā)現(xiàn)也沒(méi)有明顯的特征量,如波峰、相位的規(guī)律性變化等。
采用多路傳感器進(jìn)行對(duì)比查看,編寫(xiě)好多通道采集的上位機(jī)程序進(jìn)行三通道傳感器信號(hào)的采集,首先將3個(gè)傳感器等間距貼于料倉(cāng)模型的外側(cè),振動(dòng)方式是連續(xù)擊打料倉(cāng)模型的倉(cāng)壁,采集不同料位不同激振點(diǎn)三路傳感器的信號(hào)。將采回來(lái)的數(shù)據(jù)進(jìn)行頻譜分析,從波形來(lái)看頻譜的峰值點(diǎn)不明顯且不同高度的料位的頻譜波形差異不是很大,無(wú)法從圖像上對(duì)各通道的頻譜進(jìn)行比對(duì)尋求相關(guān)參量表示料位。從每通道的相位譜圖像來(lái)看,也未發(fā)現(xiàn)特征比較明顯的參量,且相位譜的圖像顯得有些雜亂無(wú)章。但是從工人的經(jīng)驗(yàn)得到想法,頻率的峰值點(diǎn)應(yīng)該會(huì)有與料位相關(guān)的特征量。因此改變研究策略,從頻譜峰值的數(shù)值入手,尋求與料位相關(guān)的線性變化。將采集的不同料位高度的信號(hào)進(jìn)行頻域變換,將每個(gè)高度的頻率峰值點(diǎn)提取出來(lái)觀察。發(fā)現(xiàn)不同的料位高度,傳感器頻譜峰值點(diǎn)和所對(duì)應(yīng)的頻率與料位高度的變化是有關(guān)系的,當(dāng)料位高度增長(zhǎng)時(shí),頻譜峰值點(diǎn)對(duì)應(yīng)的頻率降低,且不同位置的傳感器頻譜峰值點(diǎn)對(duì)應(yīng)的頻率不同。在不同的激振點(diǎn)雖然噪聲不同但是頻譜的變化規(guī)律是相同的。然后將連續(xù)的振動(dòng)信號(hào)切割出每一次的振動(dòng)波形,進(jìn)行同樣的處理,與連續(xù)激振的規(guī)律是相同的。出于設(shè)備安裝方便,后續(xù)的實(shí)驗(yàn)都是將激振點(diǎn)設(shè)置于料倉(cāng)下方。得到料位高度和頻譜峰值點(diǎn)變化的規(guī)律后,對(duì)料位的零平面進(jìn)行標(biāo)定,采集百組數(shù)據(jù)進(jìn)行線性回歸擬合檢測(cè)料位與頻譜峰值點(diǎn)的線性度。
從標(biāo)定好的料位零點(diǎn)開(kāi)始以5 cm的步進(jìn)值在料倉(cāng)的底部進(jìn)行激振,每次激振等待振動(dòng)信號(hào)衰減結(jié)束后再進(jìn)行下一次激振,一個(gè)料位高度激振20下,采集料位從0 cm到45 cm的振動(dòng)信號(hào),編寫(xiě)matlab信號(hào)處理函數(shù),設(shè)置判決門限,計(jì)算滑動(dòng)窗的信號(hào)能量,滑動(dòng)窗的后一時(shí)刻和前一時(shí)刻做對(duì)比,取比值波峰的最小值作為判決門限,當(dāng)比值達(dá)到設(shè)置的判決門限值時(shí),則檢測(cè)到振動(dòng)信號(hào)的起始時(shí)刻,將每段振動(dòng)信號(hào)切割,對(duì)信號(hào)做頻域變換,將三路傳感器采集到的振動(dòng)信號(hào)的頻譜峰值及其對(duì)應(yīng)頻率采集出來(lái)。
擬合方法,以三路傳感器采集的振動(dòng)信號(hào)的峰值點(diǎn)和對(duì)應(yīng)的頻率為變量與料位高度為被預(yù)測(cè)值進(jìn)行線性回歸擬合,得到料位與三路傳感器采集的振動(dòng)信號(hào)的頻譜峰值點(diǎn)和對(duì)應(yīng)頻率的線性關(guān)系,由于數(shù)據(jù)量不足夠大,沒(méi)有對(duì)數(shù)據(jù)進(jìn)行聚類預(yù)處理,料位的預(yù)測(cè)值與真實(shí)值誤差在2 cm之內(nèi)。
確定了振動(dòng)信號(hào)和料位的線性關(guān)系,對(duì)測(cè)量系統(tǒng)正式進(jìn)行建模,于零料位平面開(kāi)始,以2 cm的步進(jìn)值進(jìn)行料位遞增,在每個(gè)料位平面每個(gè)傳感器采集120個(gè)振動(dòng)信號(hào),采取總共1 200個(gè)振動(dòng)信號(hào),其中100個(gè)振動(dòng)信號(hào)用于對(duì)預(yù)測(cè)值的比對(duì),求取誤差。我們對(duì)每個(gè)振動(dòng)信號(hào)的頻譜峰值點(diǎn)及其頻率進(jìn)行信號(hào)預(yù)處理,以頻譜峰值對(duì)應(yīng)的頻率為特征,對(duì)數(shù)據(jù)進(jìn)行聚類,去除錯(cuò)誤信號(hào)。最后用剩余的1 000組信號(hào)進(jìn)行線性回歸擬合,得到料位與頻譜峰值點(diǎn)和頻率的關(guān)系。然后用100組信號(hào)進(jìn)行模型的誤差估計(jì),最后誤差最多1 cm多數(shù)情況下料位測(cè)量預(yù)測(cè)值與真實(shí)值相等,由此完成了測(cè)量模型的確定。擬合參數(shù)如圖1所示。
系統(tǒng)電源的工作效果好壞直接影響到整個(gè)系統(tǒng)的工作效果,首先對(duì)硬件的電源部分進(jìn)行測(cè)試,看看輸出電壓是否符合系統(tǒng)要求。對(duì)系統(tǒng)的各個(gè)電源引腳進(jìn)行測(cè)試,確保各部分電路能供好電。首先是對(duì)電源輸出的5 V電壓進(jìn)行查看,然后是對(duì)LDO線性穩(wěn)壓電壓電源輸出進(jìn)行測(cè)試。然后對(duì)IO口輸出電壓進(jìn)行測(cè)試。如表1所示。

表1 各部分電壓
對(duì)主機(jī)的信號(hào)采集程序進(jìn)行測(cè)試,主要測(cè)試系統(tǒng)的串口、定時(shí)器、傳感器程序。將串口與PC端連接,通過(guò)串口調(diào)試助手將采集到的振動(dòng)信號(hào)打印到PC端,通過(guò)串口調(diào)試助手判斷傳感器采集回來(lái)的信號(hào)是否正確。我們需要單獨(dú)調(diào)試好串口、定時(shí)器及主控芯片與傳感器的通信程序。啟動(dòng)定時(shí)器,每隔1 ms采集一下傳感器信號(hào)并打印至PC端。測(cè)試結(jié)果如圖14所示。

圖14 采集程序測(cè)試
接著調(diào)試料位計(jì)算及料位輸出模塊的程序,針對(duì)不同料位測(cè)試輸出的料位信息。測(cè)試結(jié)果基本符合系統(tǒng)預(yù)期指標(biāo)。如表2~3所示。

表2 測(cè)試結(jié)果
為了解決工廠在作業(yè)時(shí)固態(tài)物料料倉(cāng)的料位檢測(cè)問(wèn)題,設(shè)計(jì)了一種基于振動(dòng)的固態(tài)物料料位計(jì)模塊。通過(guò)加速度傳感器進(jìn)行振動(dòng)信號(hào)的采集,使用單片機(jī)對(duì)采集到的振動(dòng)信號(hào)進(jìn)行處理,計(jì)算出料倉(cāng)的物料信息,實(shí)現(xiàn)對(duì)固態(tài)物料的料倉(cāng)進(jìn)行料位檢測(cè)的功能。系統(tǒng)在不工作時(shí)處于休眠狀態(tài),通過(guò)定時(shí)器中斷喚醒。采用STM32F103ZET6作為主控芯片,通過(guò)頻譜峰值實(shí)現(xiàn)料倉(cāng)料位的計(jì)算。通過(guò)單片機(jī)內(nèi)部的定時(shí)器和IO口實(shí)現(xiàn)振動(dòng)信號(hào)的采集和料位信息的輸出。結(jié)果表明基于振動(dòng)的固態(tài)物料料位測(cè)量模塊設(shè)計(jì)簡(jiǎn)單,成本和功耗低,誤差在2cm以內(nèi),誤差率較低,在作業(yè)工況較差,在工廠需要測(cè)量固態(tài)物料料位的工作環(huán)境中具有較好的前景[7-28]。

表3 料位誤差 cm