0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

主动噪声控制平台的FPGA实现

SwM2_ChinaAET 来源:未知 作者:邓佳佳 2018-03-05 10:34 次阅读

前言

随着工业现代化的发展,噪声的影响越来越受到人们的关注。噪声的控制主要分为被动噪声控制与主动噪声控制。对于低频噪声来说,被动降噪技术的抑制效果不理想,且伴随着材料用量大、成本高的问题,实用性较差。此时主动噪声控制技术具有显著的优势。同时,由于往复运动装置或者旋转装置所产生的窄带噪声的能量集中分布于特定的频带,其频率数值为离散数值,往往可以通过非声学传感器采集得到,进而避免了声反馈问题,更适合于采用主动控制的方法。

目前工程上针对非声学信号的采集主要是基于多个串行处理的单一传感器,当多路传感器同时工作时不能保证数据采集的同步性,这就导致在后续进行数据的处理与计算时会产生错误。在一些工程实现中,为避免这个问题,提出在多路传感器后加一台信号同步调节器的解决方案,但这会使得整个系统复杂且操作麻烦。

针对上述问题,本文搭建了一个基于FPGA的主动噪声控制平台。该平台能够实时正确地采集信号,满足多通道信号的同步性,同时也方便根据所需功能扩展通道,整个平台也操作简单。

1 主动噪声控制平台设计

主动噪声控制平台由传感-作动系统与降噪算法模块构成[3],传感-作动系统由相关传感器及FPGA中对应的数据处理模块、数据储存模块构成,负责参考信号(与初级信号相关的各种形式的信号,如振动、转速信号)的采集以及次级声信号的产生,降噪算法模块由硬件语言搭成,主要是对参考信号进行分析从而产生次级声信号。

车内噪声主要是发动机噪声、进排气噪声与传动系的噪声。研究表明[4],发动机振动引起的低频噪声是车内噪声的主要成分,同时发动机振动噪声以及其他传动系引起的噪声与发动机振动以及车身各点振动成正比,噪声的主频率也与发动机的转速成正比。基于此,本文在该平台上通过采集汽车的转速与发动机的振动加速度等这些非声学信号来构建车内噪声的参考信号,继而产生次级声信号,以此来避免声反馈问题。

主动噪声控制平台如图1所示。其中,MPU6065芯片负责振动信号的采集,GCAN-600模块负责转速信号的采集,在由非声学信号产生噪声参考信号的过程中,需要初级噪声信号的参与以及相关的算法,因此需要WM8731芯片以及音频输入输出模块来完成初级声信号的采集与次级声信号的输出,同时SDRAM芯片将采集到的数据存储起来,从而研究相关的算法。

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<

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所示,这也证明了自搭建平台采集的转速信号的实时正确性。

通过图2的横向对比可看出,自搭建平台采集的3种信号对应于3个独立参考系统中起始的时间t1、t2、t3互不相等,这也证明对于多路信号的采集,多个采集系统同时工作时不能保证采集数据的严格同步性,还需要专门的仪器进行信号的同步调整[10]。而自搭建的平台,对于多路信号的操作都是由同一个按钮进行,可以严格地保证数据的同步性,这样可以得到任意时刻汽车的多种参数。

4 结论

本文基于FPGA搭建了针对汽车主动降噪的平台,该平台的作动-传感系统可以有效地采集汽车运行中的转速、振动加速度、噪声信号。同时该平台也是主动降噪算法实现的硬件系统,是后续主动降噪研究的重要基础。

数据在存入SDRAM前,需要先暂存在FIFO中,导致存入的数据量与FIFO的容量相关,后续可以利用Nios II来对多通道信号进行存储顺序的控制,就可以极大扩充数据存储的容量,但开发周期较长。

综合而言,该平台具有以下优点:

(1)平台可以正确并且实时采集到参考信号。这为在主动降噪过程中产生次级声信号的实现打下了很好的基础。

(2)平台对采集的多通道信号有严格的时间同步性,即能保证对多路信号的同时操作,这也是其他的基于串行处理器所搭建系统所不能达到的优点[10]。

(3)FPGA的可编程性可以使平台按需增加功能,方便扩展通道数目,而不必增加其他的芯片或者处理器。

(4)使用硬件语言来编程各种逻辑功能模块(如控制模块、降噪算法模块),可以反复地编程、查错、再编程,这样就可以对平台进行充分的设计开发与验证。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1590

    文章

    21136

    浏览量

    591879

原文标题:【学术论文】主动噪声控制平台的FPGA实现

文章出处:【微信号:ChinaAET,微信公众号:电子技术应用ChinaAET】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    汽车打气泵噪声处理优化方案【其利天下汽车打气泵方案开发】

    通过巧妙而有效的内部结构设计以及科学合理的消声措施,我们有望打造一款噪声更为收敛的打气泵。在科技不断进步的未来,若无需过多考虑成本,主动声学降噪技术可能成为实现打气泵完美噪声控制的理想
    的头像 发表于 02-10 22:03 728次阅读
    汽车打气泵<b class='flag-5'>噪声</b>处理优化方案【其利天下汽车打气泵方案开发】

    发动机主动控制悬置的结构特点与发展过程

    摘要:发动机主动控制悬置是解决提高环保性能、降低燃耗要求与降低汽车振动噪声、满足发动机高水平振动控制的要求之间冲突的重要途径。本文主要就发动机主动
    的头像 发表于 12-11 16:56 187次阅读

    ADSP21469和AD1939突然不发声是什么原因?

    你好!噪声控制,采用ADSP21469的example中C-Talk 48k ,96K. 我的问题是:在process_AD1939_samples( int sig_int)中写的300 Hz单频
    发表于 11-28 06:08

    基于ARM9平台FPGA的1553B总线测试系统的设计与实现

    电子发烧友网站提供《基于ARM9平台FPGA的1553B总线测试系统的设计与实现.pdf》资料免费下载
    发表于 11-08 10:10 0次下载
    基于ARM9<b class='flag-5'>平台</b>和<b class='flag-5'>FPGA</b>的1553B总线测试系统的设计与<b class='flag-5'>实现</b>

    基于FPGA的直接序列扩频和差错控制码编码系统的实现

    电子发烧友网站提供《基于FPGA的直接序列扩频和差错控制码编码系统的实现.pdf》资料免费下载
    发表于 11-06 15:57 0次下载
    基于<b class='flag-5'>FPGA</b>的直接序列扩频和差错<b class='flag-5'>控制</b>码编码系统的<b class='flag-5'>实现</b>

    FH8332车载前装ISP图像处理芯片已通过AEC-Q100 Grade 2认证

    FH8332是一款高性能低功耗车载前装图像处理芯片,支持RGB bayer和RGBIR格式输入,支持3帧合成HDR,内置多级去噪处理模块,具有优秀的噪声控制能力。
    的头像 发表于 10-31 09:30 448次阅读

    基于FPGA与PCI总线的实时控制计算机的设计与实现

    电子发烧友网站提供《基于FPGA与PCI总线的实时控制计算机的设计与实现.pdf》资料免费下载
    发表于 10-25 11:04 0次下载
    基于<b class='flag-5'>FPGA</b>与PCI总线的实时<b class='flag-5'>控制</b>计算机的设计与<b class='flag-5'>实现</b>

    步进电机控制器的FPGA实现

    电子发烧友网站提供《步进电机控制器的FPGA实现.pdf》资料免费下载
    发表于 10-07 16:29 1次下载
    步进电机<b class='flag-5'>控制</b>器的<b class='flag-5'>FPGA</b>的<b class='flag-5'>实现</b>

    电子系统中的噪声抑制与衰减技术

    内容简介随着电路在通信、计算机、自动化以及其他方面的广泛应用,电磁干扰已经成为电路设计师所要面对的一个重要问题。包括电路中噪声抑制技术实践应用的方方面面。涵盖了两种基本的噪声控制方法:屏蔽和接地
    发表于 09-25 08:13

    如何计算噪声的功率谱密度?

    噪声进行详细分析,包括对其频谱分布的估计。而功率谱密度,是一种广泛采用的对信号和噪声频谱特性进行量化的方法,应用于信号处理、通信、噪声控制等众多领域。本文将介绍如何计算噪声的功率谱密
    的头像 发表于 09-19 16:49 3746次阅读

    一种基于FPGA实现的800G信号处理平台设计

    一种基于FPGA 实现的800G信号处理平台
    发表于 07-31 10:23 368次阅读
    一种基于<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>的800G信号处理<b class='flag-5'>平台</b>设计

    FPGA实现PID控制算法

    相信大家对于PID控制算法,都不感到陌生了,平衡车就是靠它平衡起来的,还有飞控的平衡算法也是它,以及FOC中的闭环控制中也是用的它,它不仅简单,而且易于理解。那么本篇文章将简要介绍一下算法的原理,然后带大家使用FPGA
    的头像 发表于 05-19 16:40 1006次阅读
    <b class='flag-5'>FPGA</b><b class='flag-5'>实现</b>PID<b class='flag-5'>控制</b>算法

    用555制作的声控延时电路

    在电工日常工作中,经常会碰到555时基电路,也会尝试用555设计一些小电路,这里分享一个基于555制作的声控延时电路,实现用声音控制延时通断,一起来了解下。
    的头像 发表于 04-27 16:39 1518次阅读
    用555制作的<b class='flag-5'>声控</b>延时电路

    GC1262R/S单线圈无刷直流电机的电机驱动器

    模式、风扇转速计、 锁保护、自动重启、TSD、OCP 和噪声控制模 式,噪声控制模式根据不同的要求,利用 SQ 脚的电阻优化低噪声性能,可以实现 BLDC 风扇电机低
    发表于 04-17 10:58 0次下载

    多台FPGA原型验证平台系统如何实现自由互连

    FPGA原型验证平台系统灵活性主要体现在其外部连接表现形式,由单片FPGA平台或者2片的FPGA,抑或是4片的
    发表于 04-11 09:50 438次阅读