《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 主動噪聲控制平臺的FPGA實現
主動噪聲控制平臺的FPGA實現
2018年電子技術應用第2期
王佳飛1,關 添1,姜宇程1,楊藝辰2
1.清華大學深圳研究生院 生物醫學工程研究中心,廣東 深圳518055;2.南昌大學 瑪麗女王學院,江西 南昌330031
摘要: 基于FPGA搭建了針對汽車的主動噪聲控制平臺,此平臺可以正確實時地采集汽車的轉速、振動加速度以及噪聲,同時為相關的降噪算法實現提供了硬件平臺。與傳統的基于串行處理的采集系統相比,該平臺可以嚴格地保證多路信號的時間同步性,同時其可擴展性可以讓使用者方便地根據自己所需要的功能來增加通道數目,無需增加額外的處理器。FPGA的可編程性可以保證降噪算法的充分驗證與設計。整個平臺的搭建為主動降噪的繼續研究提供了有力的基礎。
中圖分類號: O422.8
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.173025
中文引用格式: 王佳飛,關添,姜宇程,等. 主動噪聲控制平臺的FPGA實現[J].電子技術應用,2018,44(2):59-61,65.
英文引用格式: Wang Jiafei,Guan Tian,Jiang Yucheng,et al. Realization of active noise control platform based on FPGA[J]. Application of Electronic Technique,2018,44(2):59-61,65.

Realization of active noise control platform based on FPGA
Wang Jiafei1,Guan Tian1,Jiang Yucheng1,Yang Yichen2
1.Research Center of Biomedical Engineering,Graduated School at Shenzhen,Tsinghua University,Shenzhen 518055,China; 2.Queen Mary College,Nanchang University,Nanchang 330031,China
Abstract: In this paper, an active noise control platform for the vehicle is built based on FPGA. The platform can correctly collect the speed, vibration acceleration and noise of the vehicle in real time, and provide a hardware platform for the related noise reduction algorithm. Compared with the traditional serial processing based acquisition system, the platform can strictly guarantee the time synchronization of multiple signals, and its scalability allows users to easily increase the number of channels according to their own needs, and no additional processor is required. FPGA programmability can guarantee the full verification and design of noise reduction algorithm. The construction of the whole platform provides a strong foundation for the continuous research of active noise reduction.
Key words : active noise control;data collection;FPGA;SDRAM;FIFO

0 引言

    隨著工業現代化的發展,噪聲的影響越來越受到人們的關注。噪聲的控制主要分為被動噪聲控制與主動噪聲控制。對于低頻噪聲來說,被動降噪技術的抑制效果不理想,且伴隨著材料用量大、成本高的問題,實用性較差。此時主動噪聲控制(Active Noise Control,ANC)技術具有顯著的優勢[1]。同時,由于往復運動裝置或者旋轉裝置所產生的窄帶噪聲的能量集中分布于特定的頻帶,其頻率數值為離散數值,往往可以通過非聲學傳感器采集得到,進而避免了聲反饋問題,更適合于采用主動控制的方法[2]

    目前工程上針對非聲學信號的采集主要是基于多個串行處理的單一傳感器,當多路傳感器同時工作時不能保證數據采集的同步性,這就導致在后續進行數據的處理與計算時會產生錯誤。在一些工程實現中,為避免這個問題,提出在多路傳感器后加一臺信號同步調節器的解決方案,但這會使得整個系統復雜且操作麻煩。

    針對上述問題,本文搭建了一個基于FPGA的主動噪聲控制平臺。該平臺能夠實時正確地采集信號,滿足多通道信號的同步性,同時也方便根據所需功能擴展通道,整個平臺也操作簡單。

1 主動噪聲控制平臺設計

    主動噪聲控制平臺由傳感-作動系統與降噪算法模塊構成[3],傳感-作動系統由相關傳感器及FPGA中對應的數據處理模塊、數據儲存模塊構成,負責參考信號(與初級信號相關的各種形式的信號,如振動、轉速信號)的采集以及次級聲信號的產生,降噪算法模塊由硬件語言搭成,主要是對參考信號進行分析從而產生次級聲信號。

    車內噪聲主要是發動機噪聲、進排氣噪聲與傳動系的噪聲。研究表明[4],發動機振動引起的低頻噪聲是車內噪聲的主要成分,同時發動機振動噪聲以及其他傳動系引起的噪聲與發動機振動以及車身各點振動成正比,噪聲的主頻率也與發動機的轉速成正比。基于此,本文在該平臺上通過采集汽車的轉速與發動機的振動加速度等這些非聲學信號來構建車內噪聲的參考信號,繼而產生次級聲信號,以此來避免聲反饋問題。

    主動噪聲控制平臺如圖1所示。其中,MPU6065芯片負責振動信號的采集,GCAN-600模塊負責轉速信號的采集,在由非聲學信號產生噪聲參考信號的過程中,需要初級噪聲信號的參與以及相關的算法,因此需要WM8731芯片以及音頻輸入輸出模塊來完成初級聲信號的采集與次級聲信號的輸出,同時SDRAM芯片將采集到的數據存儲起來,從而研究相關的算法。

ck6-t1.gif

2 傳感-作動系統的實現

2.1 振動加速度的采集

    振動加速度的采集所用的芯片是MPU6065芯片,芯片與FPGA之間通過UART協議進行信號傳輸。采樣頻率是100 Hz。

    該芯片可采集多種物理信號(如加速度、角速度、角度等),不同的信號有不同的數據包格式與檢驗位,每個數據包包括10個數據位與1個檢驗位,FPGA檢測到這個正確的包頭之后,將前面10個數暫存起來與檢驗位進行比較,正確則進行數據處理,錯誤則返回初始狀態等待下一幀正確數據到來。

2.2 轉速的采集

    汽車轉速的采集是基于GCAN-600模塊,該模塊可支持所有標準CAN總線物理層及ISO 15765汽車OBD接口診斷協議,可將汽車電控系統的各項傳感器數值自動轉換為串口格式的數據,給模塊輸入相對應的AT指令讀取所需要的數據,并通過UART協議將數據輸出[5]。采樣率為200 Hz。

    發動機轉速信號對應的指令為ATPID=012,以ASCII碼形式傳輸,接收到的每幀數據是指令PID012=XXXX對應的ASCII碼。完成一個收發周期表示采集到一次轉速,連續不斷地對轉速信號采集意味著上述收發周期需要不斷地循環。但接收到的每一幀數據并沒有結束標志位,同時由于轉速的位數不確定(3位數或4位數),導致上述循環沒法自動進行,需要借助標識符。

    使用UART協議接收數據時,每當一個數接收完畢時,就在該數的末尾產生一個標識符rx_done。用邏輯分析儀對接收到的數據信號進行分析發現,每幀數據中兩個rx_done的時間間隔為T1(與UART協議選擇的波特率相關),上一幀末尾rx_done與下一幀起始rx_done的時間間隔為T2(與采樣率相關),且T2>>T1。由此設計一個計時器,每次檢測到rx_done信號,計時器開始計時,若是在T1+Δt(Δt<<T1)內檢測到下一個rx_done信號,表明該幀數據還沒有結束;若沒有檢測到標志信號,則表明該數已是最后一個數,產生該幀數據傳輸結束標識符done。檢測到done信號后,FPGA再次給模塊發送指令ATPID=012,如此循環,即可不間斷地獲取轉速信號。

2.3 音頻的輸入輸出

    音頻信號的采集及輸出所采用的芯片是低功耗的音頻編解碼芯片WM8731。音頻傳輸模塊是連接FPGA與音頻編解碼芯片WM8731的接口模塊,它需要實現兩個功能[6]:第一個功能是向WM8731芯片發送配置參數的命令,使芯片在系統所需要的模式下工作;第二個功能是在參數配置完成后,控制麥克風采集音頻數據。

    FPGA通過I2C協議向芯片傳輸配置參數,配置完成后,FPGA與芯片進行音頻數據傳輸。在音頻的采集過程中涉及幾個參數:BCLK為音頻數據傳輸(包括發送和接收)過程中的位時鐘線,ADCLRC和DACLRC分別為芯片發送和接收音頻數據的幀時鐘線,ADCDAT和DACDAT分別為發送和接收音頻數據的信號線。

    由非聲學信號生成參考信號后,該參考信號經過降噪算法模塊后產生次級聲信號。

    在初級聲信號的采集與次級聲信號的輸出過程中都遵循I2S模式。即音頻數據有效位的傳輸開始于ADCLRC或DACLRC信號發生跳變后BCLK信號的第二個上升沿,并且音頻數據是從最高位開始傳輸的。當芯片工作在從模式下時,BCLK信號是由FPGA控制器生成的。

2.4 數據存儲

    采集到的信號需要通過一個以狀態機為主體的SDRAM控制器來控制信號實時地存入SDRANM芯片中。

    由于SDRAM存儲數據是由起始位置開始按給定的存儲長度進行順序存儲的,3種信號需要實時存入。同時信號之間不能相互影響或覆蓋,這就需要在SDRAM中給3種信號分配好位置區間。每種信號有自己不同的起始位置,在進行存儲的過程中,SDRAM是按順序存儲的,存儲地址是逐次加1,當存儲地址進行多位變動時,存儲數據會遺失或者出錯[7],故針對多路信號存入SDRAM時,需要對多路信號整體進行一個順序控制。另外,由于數據在存入SDRAM的過程中存在跨時域的操作,因此平臺中還需要搭建異步FIFO模塊。

    FIFO是一種先進先出的數據緩存器,沒有外部讀寫地址線,只能順序地寫入、讀出數據,其數據地址由內部讀寫指針自動加1完成。異步FIFO在讀寫兩部分分別采用不同的時鐘[8]。本文中,SDRAM工作頻率是27 MHz,加速度、轉速、音頻的采集模塊工作的頻率是50 MHz,數據需要跨時域傳輸。另外在多路信號存入SDRAM過程中也需要借助異步FIFO進行順序控制:當一種信號在存儲時,其他信號先暫存在FIFO中,待上一類信號存完產生標志后,再存入下一類信號。即多路信號是同時采集,先后存儲。

3 結果分析

    整個采集系統是在DE2-115開發板上搭建的,所選用的FPGA是Cyclone IV EP4CE115F29芯片,為了驗證所搭建采集系統的正確性,在用該系統對汽車進行數據采集的同時,也分別利用錄音器采集音頻信號;加速度傳感系統采集相同位置的振動加速度;轉速傳感系統采集發動機轉速。用此參考系統采集的信號來驗證所搭建平臺對信號采集的正確性與實時性。

    在實驗過程中,3個單一信號的傳感系統同時按下各自的開始按鈕進行信號的采集,總共采集時間為5 s,大約1 s后,按下所搭建平臺的開始按鈕,3種信號同時采集,采集3 s后停止。這樣所搭建平臺采集的信號是3個參考傳感系統采集信號的子信號,將兩個系統采集到的3種信號做互相關,得到的相關系數與子信號的起點時間如圖2所示。從圖2可以發現,轉速信號起始時間t1=1.1 s,與自搭建系統采集信號的相關系數為1;振動加速度信號起始時間t1=0.91 s,與自搭建系統采集信號的相關系數為0.98;音頻信號起始時間t1=1.34 s,與自搭建系統采集信號的相關系數為0.94(對于音頻信號,由于各自系統的拾音器不同,造成采集到音頻信號的幅值的數量級不同,為了更方便地比較,對兩個系統采集到的信號均進行歸一化處理)。根據相關系數的定義可得,兩個系統采集到的3段信號可認為對應相等[9],將子信號的起始時間對應到參考信號中,3種信號的時域圖如圖3所示,這也證明了自搭建平臺采集的轉速信號的實時正確性。

ck6-t2.gif

ck6-t3.gif

    通過圖2的橫向對比可看出,自搭建平臺采集的3種信號對應于3個獨立參考系統中起始的時間t1、t2、t3互不相等,這也證明對于多路信號的采集,多個采集系統同時工作時不能保證采集數據的嚴格同步性,還需要專門的儀器進行信號的同步調整[10]。而自搭建的平臺,對于多路信號的操作都是由同一個按鈕進行,可以嚴格地保證數據的同步性,這樣可以得到任意時刻汽車的多種參數。

4 結論

    本文基于FPGA搭建了針對汽車主動降噪的平臺,該平臺的作動-傳感系統可以有效地采集汽車運行中的轉速、振動加速度、噪聲信號。同時該平臺也是主動降噪算法實現的硬件系統,是后續主動降噪研究的重要基礎。

    數據在存入SDRAM前,需要先暫存在FIFO中,導致存入的數據量與FIFO的容量相關,后續可以利用Nios II來對多通道信號進行存儲順序的控制,就可以極大擴充數據存儲的容量,但開發周期較長。

    綜合而言,該平臺具有以下優點:

    (1)平臺可以正確并且實時采集到參考信號。這為在主動降噪過程中產生次級聲信號的實現打下了很好的基礎。

    (2)平臺對采集的多通道信號有嚴格的時間同步性,即能保證對多路信號的同時操作,這也是其他的基于串行處理器所搭建系統所不能達到的優點[10]

    (3)FPGA的可編程性可以使平臺按需增加功能,方便擴展通道數目,而不必增加其他的芯片或者處理器。

    (4)使用硬件語言來編程各種邏輯功能模塊(如控制模塊、降噪算法模塊),可以反復地編程、查錯、再編程,這樣就可以對平臺進行充分的設計開發與驗證。

參考文獻

[1] 張式杰.汽車噪聲分析與降噪措施及噪聲測量方法[J].汽車實用技術,2011(2):55-60.

[2] KUO S M,MORGAN D.Active noise control systems:algorithms and DSP implementations[M].John Wiley & Sons,Inc.,1996.

[3] 陳克安,馬遠良.自適應有源噪聲控制——原理、算法及實現[M].西安:西北工業大學出版社,2004.

[4] 劉宗巍.基于發動機轉速的車內噪聲自適應主動控制系統研究[D].長春:吉林大學,2004.

[5] 廣成科技.GCAN-600用戶手冊[EB/OL].(2016-03-20)[2017-06-03].www.gcgd.net/UploadFiles/pic201682914942458.pdf.

[6] 占楊林,劉紅.基于FPGA和WM8731的音頻編解碼系統的設計與實現[C].全國青年通信學術會議,2009.

[7] 周昆正.基于FPGA的SDRAM控制器設計[J].現代電子技術,2003(13):63-65.

[8] 異步FIFO的FPGA的實現[EB/OL].[2017-06-03].http://www.cnblogs.com/BitArt/archive/2013/04/10/3010073.html.

[9] 胡廣書.數字信號處理(理論、算法與實現)(第三版)[M].北京:清華大學出版社,2004.

[10] 計煒梁,凌強,朱學俊,等.基于DSP的主動降噪系統設計與實現[J].微型機與應用,2015,34(24):32-34.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 欧美成人全部费免网站 | 伊人网综合在线观看 | 在线观看国产精品日本不卡网 | 色综合天天综合网国产成人 | 成年视频xxxxx在线入口 | 黑人巨大videos极度另类 | 最近免费2019中文字幕大全 | 男人使劲桶女人下面动态图片 | 亚洲人成图片小说网站 | 黄色网址视频在线观看 | 日本三级理论片 | 777久久 | 可以看的黑人性较视频 | 三级网站日本 | 日韩在线欧美在线 | 精品久久久久久亚洲 | 成人深夜福利在线播放不卡 | 特级黄色片视频 | 国产亚洲欧美视频 | h片在线观看视频 | 97色女 | 成人在线免费 | 免费观看国产精品 | 天天操天天艹 | 国产精品香蕉一区二区三区 | 999成人精品视频在线 | 综合久久久久久 | 欧美在线你懂的 | 日韩亚洲人成在线 | 色黄在线观看 | 在线播放黄色片 | 免费在线观看黄网站 | 国产黄大片在线观 | 国产成人久久精品麻豆二区 | 波多野结衣在线观看3人 | 天堂在线视频精品 | 午夜寂寞影院视频在线观看 | 欧美日韩性高爱潮视频 | 一个人看www免费视频 | 168黄色网| 日韩国产欧美视频 |