張 強
(中煤科工集團重慶研究院有限公司,重慶 400037)
目前,我國用于煤礦井下噪聲監(jiān)測的儀器較少,對煤礦噪聲危害的調(diào)查多集中在煤炭生產(chǎn)的地面企業(yè)[1]。本文設計了基于STM32芯片的煤礦用噪聲聲級傳感器,移植了μCOS-Ⅲ嵌入式實時操作系統(tǒng),提高了系統(tǒng)數(shù)據(jù)處理速度,并設計了噪聲信號處理電路,實現(xiàn)了噪聲的精確測量,同時增加了通訊功能,可與煤礦安全監(jiān)控系統(tǒng)聯(lián)網(wǎng),使其能實時在線監(jiān)測煤礦井下噪聲。
噪聲傳感器的工作原理圖如圖1所示,采用電容傳聲器接收外部聲信號,將聲壓信號轉(zhuǎn)換成電信號,再進行信號處理后送入到STM32中進行分析運算,然后得到噪聲值,并把噪聲值上傳至監(jiān)控系統(tǒng)。
圖1 噪聲傳感器工作原理圖
傳感器的硬件原理圖如圖2所示,傳聲器的聲壓信號經(jīng)過前置放大器放大后,送入噪聲頻率計權選擇電路,選擇其中有效信號,再送入信號處理電路,進行信號放大降噪處理,然后送入A/D轉(zhuǎn)換器轉(zhuǎn)換為處理器可識別的信號,最后送入STM32處理器進行分析運算,最終得出噪聲值。傳感器的硬件電路還包括顯示電路、紅外遙控電路、數(shù)據(jù)通訊電路等。
圖2 傳感器硬件原理框圖
由于傳聲器的聲壓信號非常微弱,需經(jīng)過前置放大電路[2],再送入后級處理電路。前置放大電路先經(jīng)過EMI濾波后,濾除所需頻率以外的信號,再經(jīng)過三級積分器進行采樣,然后采用斬波穩(wěn)定技術將信號和失調(diào)電壓調(diào)制到所需頻段。
聲級計中的頻率計權網(wǎng)絡有A、B、C 3種標準計權網(wǎng)絡。本文選用A計權網(wǎng)絡,它是模擬人耳聽覺的一種噪聲信號處理方式,對信號進行頻率計權,并經(jīng)過一定的衰減,使信號能夠滿足A/D轉(zhuǎn)換要求。
A/D轉(zhuǎn)換電路主要用于將處理過的信號變?yōu)镾TM32可識別的信號。傳感器的A/D轉(zhuǎn)換電路主芯片采用MAX197A,它是12位8通道A/D轉(zhuǎn)換芯片,具有12位的分辨率,精度高,可同時采樣8路信號輸入,轉(zhuǎn)換時間快,采樣速率高。
數(shù)據(jù)通訊是傳感器的主要功能之一,用于上傳傳感器的數(shù)據(jù)。數(shù)據(jù)通訊采用光耦芯片實現(xiàn)光電隔離,采用隔離電源模塊隔離,使核心處理單元與外部信號實現(xiàn)物理上的隔離,以增強數(shù)據(jù)通訊的抗干擾能力[3]。
在RS485通訊中,通過收發(fā)驅(qū)動器與串行總線掛接,實現(xiàn)與多設備的連接,如果出現(xiàn)核心單元意外“死機”,可能會出現(xiàn)“搶占”串行總線情況,致使整個串行網(wǎng)絡“死鎖”。在設計通訊電路時,通過“看門狗”電路來實現(xiàn)對“死機”的總線解鎖,其結構如圖3所示。核心單元“死機”時,不再提供“喂狗”信號,“看門狗”電路輸出低電平信號,使RS485收發(fā)驅(qū)動器處于接收狀態(tài),釋放出總線,避免“死鎖”情況的出現(xiàn)。
圖3 RS485總線防“死鎖”電路原理圖
采用SD7218A作為顯示電路核心控制芯片,SD7218A是智能顯示驅(qū)動芯片,內(nèi)部含有譯碼器,可直接接收16進制碼,主控芯片通過兩線串行接口向SD7218A發(fā)送控制指令自動完成讀鍵、譯碼以及顯示等操作。它還具有多種控制指令,通過與主控芯片的通信實現(xiàn)相應的功能。同時可通過兩線串行接口級聯(lián),最多可級聯(lián)8片,驅(qū)動64位數(shù)碼管。
紅外遙控接收電路采用HS0038作為IC接收芯片,BL9149為紅外遙控接收譯碼電路芯片,作為紅外接收部分的核心,與選擇的BL9148遙控發(fā)射IC相對應,接收遙控編碼脈沖,實現(xiàn)對裝置參數(shù)的設定以及運行狀態(tài)的查看等功能。
BL9149是用于紅外遙控接收器的CMOS大規(guī)模集成電路,其中RxIN端為接收信號輸入端,紅外接收芯片HS0038接收到的遙控信號經(jīng)過濾波放大后由此端輸入;HP1 ~HP5為連續(xù)信號輸出端,當有遙控按鍵接收時,對應引腳由低電平變?yōu)楦唠娖?,直到接收信號結束為止;振蕩引腳端到地之間通過并聯(lián)電阻和電容來產(chǎn)生振蕩,激勵芯片開始工作。
STM32可移植μCOS-Ⅲ嵌入式系統(tǒng),系統(tǒng)的軟件采用C語言編寫,C語言簡潔緊湊、靈活方便、語法限制低,而且適用范圍大、適用于多種操作系統(tǒng),C語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便地調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結構化,并且采用C語言編寫的程序能夠很容易地在不同類型的處理器之間進行移植。
傳感器的總體軟件流程圖如圖4所示,系統(tǒng)開始運行時,首先讀取傳感器工作所需的系統(tǒng)參數(shù),然后開始采樣并進行A/D轉(zhuǎn)換,在采樣過程中,始終檢測是否有地面監(jiān)控中心下發(fā)的命令,若有則先執(zhí)行中斷服務程序;若沒有則檢測是否有按鍵遙控修改設備參數(shù)命令。檢測完成后,對A/D轉(zhuǎn)換的數(shù)據(jù)進行數(shù)字濾波,然后計算噪聲值并顯示。
圖4 傳感器軟件流程圖
分站的中斷服務程序主要用于傳感器與地面監(jiān)控中心的數(shù)據(jù)傳輸,其流程圖如圖5所示,進入中斷后,先接收地面監(jiān)控中心下發(fā)的通信命令并解析,然后將傳感器檢測到的噪聲值發(fā)送給地面監(jiān)控中心。
圖5 中斷服務程序流程圖
按鍵服務程序主要用于分站系統(tǒng)參數(shù)修改,其流程圖如圖6所示,參數(shù)修改經(jīng)紅外遙控鍵盤通過編碼電路發(fā)出信號,再由系統(tǒng)中相應的解碼電路對電路進行解碼后送到ARM芯片中進行處理,修改完成后將參數(shù)存儲起來并應用于程序中。
圖6 按鍵服務程序流程圖
為驗證傳感器的測量精度,在實驗室搭建測試系統(tǒng),采用1級聲級計與傳感器做對比,將傳感器和1級聲級計放于距發(fā)聲源相同距離的位置,調(diào)節(jié)發(fā)聲源,改變其發(fā)出的噪聲值,同時記錄傳感器和1級聲級計的測量值,然后分析傳感器與1級聲級計的相對誤差。部分實驗數(shù)據(jù)見表1。從表1可以看出,與1級聲級計相比,傳感器的最大測量誤差為2.03%,精度較高。
設計了基于STM32的煤礦用噪聲聲級傳感器,介紹了傳感器的測量原理,傳聲器接收的噪聲信號經(jīng)前置放大、頻率計權、信號處理后,再通過A/D轉(zhuǎn)換電路送入STM32中進行檢測,同時采用RS485方式實現(xiàn)傳感器與監(jiān)控分站的數(shù)據(jù)通信。通過與1級聲級計的對比,傳感器的最大測量誤差為2.03%,測量精度較高,實現(xiàn)了煤礦井下噪聲的精確測量。同時可以將噪聲值上傳至地面監(jiān)控中心,實現(xiàn)對煤礦井下噪聲的在線監(jiān)控。
表1 傳感器精度實驗表