劉坤香+張海峰+喻亞萍
摘要:提出一種基于STM32的智能噪聲監(jiān)測儀的設計方案。采用意法半導體STM32作處理器,用數(shù)字算法簡化了大量模擬電路,可顯示環(huán)境噪聲的聲級,并增加了報警功能和上位機通信功能。
關鍵詞:噪聲監(jiān)測儀;A計權網(wǎng)絡;數(shù)字算法;STM32;
一、引言
噪聲污染是當今三大污染之一,所以環(huán)境噪聲監(jiān)測就顯得十分重要。目前市場上的噪聲計價格昂貴,因此設計了一種多功能的噪聲監(jiān)測儀。它由噪聲信號采集及放大、AD轉換、A計權算法、數(shù)據(jù)顯示、上位機通信等模塊構成,其中對A計權網(wǎng)絡可模擬人耳對噪聲的反應。結果表明,該噪聲計具有便攜、電路簡單及靈敏度高等特點,能滿足一般環(huán)境監(jiān)測的要求。
二、硬件設計
傳聲器是將聲音信號轉換成為電信號的能量轉換器件,本設計采用小型駐極體傳聲器,體積小,靈敏度高。傳聲器后接放大電路。
MCU的選擇方面,選擇STM32F103ZET6。STM32F103ZET6工作頻率最高可以達到72MHz,同時具有512K的片內Flash和64K的片內SRAM,在本設計中可以更好地滿足對所采集的聲音數(shù)據(jù)以及數(shù)據(jù)處理的存儲要求; 此外,STM32F103ZET6還具有3個模數(shù)轉換器,ADC是STM32眾多外設中功能最為復雜的外設之一,它具有12位的分辨率、支持單次和連續(xù)轉換模式、雙ADC模式、支持常規(guī)轉換期間進行DMA請求、短至12.5個時鐘周期的轉換時間。在本設計中,采用它自身的ADC模塊進行AD轉換來達到降低成本、減少ADC芯片數(shù)量的目的。
三、軟件設計
編程采用C語言,軟件的開發(fā)環(huán)境是Keil MDK5,MDK5是ARM公司最新推出的針對各種嵌入式處理器的軟件開發(fā)工具。完成的主要功能是:完成STM32F103ZET6對GPIO、DMA、ADC、的配置,實現(xiàn)對所采集的聲音信號進行AD轉換;對AD轉換數(shù)值進行FFT、A計權等數(shù)據(jù)處理;實現(xiàn)鍵盤掃描功能和報警功能;通過對液晶顯示屏的通信控制有效完成顯示任務;完成對串行通信口的設置,實現(xiàn)將采集的數(shù)據(jù)傳輸?shù)絇C機。
STM32F103ZET6內置的ADC是一個12位逐次逼近型模擬數(shù)字轉換器,多達18個通道,可以測量16個外部和2個內部信號源,本設計采用單次轉換模式,由軟件觸發(fā)。設計時,配置PLL為72MHz并作為主時鐘,配置PCLK2為PLL的2分頻,并配置ADC時鐘為PCLK2的4分頻,因為人耳能聽到的聲音頻率在20HZ—20KHZ之間,根據(jù)奈奎斯特抽樣定理,AD的采樣頻率應大于40KHZ,此處設為44800HZ。同時配置ADC的DMA通道,傳輸方向為外設到存儲器。
在STM32官方提供的DSP庫中,有開源并且支持256、512、1024點的FFT函數(shù)庫,該函數(shù)有三個參數(shù),第一個參數(shù)是輸出數(shù)組,數(shù)據(jù)長度為32位,高十六位存儲數(shù)據(jù)虛部,低十六位存儲數(shù)據(jù)實部;第二個參數(shù)是輸入數(shù)組,同樣是32位,高十六位存儲采樣數(shù)據(jù)實部,低十六位存儲采樣數(shù)據(jù)虛部(這里把低十六位設為0);第三個參數(shù)是轉換點數(shù)。該函數(shù)可直接調用,運算速度快。
四、總結
本設計在傳統(tǒng)噪聲監(jiān)測儀的基礎上,提高了系統(tǒng)穩(wěn)定性和精度,減少了模擬電路處理部分,降低了成本,并且增加了實時報警、上位機通信等功能,成為新一代的智能噪聲監(jiān)測儀。本文介紹了智能噪聲監(jiān)測儀的整體設計方案和部分功能的初始化代碼,該設計不僅可以使聲級計算更準確、性能更穩(wěn)定,還能夠通過編程擴展功能,適合將來用于宿舍等環(huán)境噪聲要求較高的地方,實現(xiàn)統(tǒng)一化監(jiān)測。未來的噪聲監(jiān)測儀將向小型化、數(shù)字化、多功能化發(fā)展,本設計必將符合今后時代的發(fā)展要求。
參考文獻:
[1]衛(wèi)鵬,趙立宏,王玉林,基于STM32的智能聲級計的設計,《儀表技術》2012年第12期
[2]張登攀,高志強,噪聲1_3倍頻程計權聲級算法,《河南理工大學學報》第32卷第6期
[2]吳步寧,馬慶衛(wèi),智能化多功能聲級計,《檢測技術》,1994,04,008