为了能够在2018年的TI杯电子设计竞赛中获得个好成绩,也为了多学些知识,我和我的团队选了2014年TI杯大学生电子设计竞赛的D 题来训练:带啸叫检测与抑制的音频功率放大器。

第一眼看到这个题目时,感觉难度似乎不大,前几问都是做个音频功率放大器,无非是指定了芯片,要求功率程序可调,这个挺容易实现的啊,用数字电位器就可以很方便的解决的啊。

后面啸叫的检测部分。了解到,啸叫是因为声场的作用,导致输出反馈进入输入,使得某一个频率的信号呈现增幅震荡,经喇叭放大形成了啸叫。既然是单频信号,就会有很多的方法可以检测到这个频率,比如:使用一个单限比较器,当出现啸叫时,单频信号幅度足够大,达到了比较器的阈值电平,就会被整形成方波,送入单片机就可以测出频率值。还可以使用数字的方法,将音频信号放大、抬高之后送给单片机的ADC单元、之后对采集到的离散的电压信号做傅里叶变换,这样就可以得到这一段信号的频谱,找出频谱中幅度最大的那个点,对应的频率就是啸叫频率。

得到频率后,显示出来。之后就是抑制了,我们计划了以下几种方案:首先就是使用专用的程控滤波芯片MAX262,软件设置滤波中心频率、Q值和滤波器类型,但现成的模块比较贵,康威科技做的一块就要188。然后想到了使用数字滤波的方法,这多省事,滤波电路都不用搭,而且ARM已经提供了FIR和IIR滤波的函数,只要调用就可以了。最后还有一种纯模拟的方法,就是移频电路,将信号的频谱搬移几个Hz,再与原信号相加,这样就可以破坏原始信号的相位特征,使得反馈回路建立不起来,从而抑制啸叫。测量输出功率使用有效值检测模块,方案大体就是这样,接下来就是在做的时候出了好多问题。


以下内容更新于2018/07/25日


大概一个月之前写的上面的内容,现在电赛已经做完了,有时间来完善一下了,但是当时好多的细节都已经有点不清晰了。

制作功放的时候,要求了使用TPA3112这个功放芯片,于是就淘了几片,设计电路是让一个队友来做的,他也是刚刚入门,就焊过几个放大器啊比较器之类的基础电路,自主设计还没怎么做过。我让他仔细看看数据手册,再在网上找一找有没有好的电路解决方案,最终选定了TI手册中给出的那个典型电路图:

根据这个电路图焊出了个洞洞板电路,加上了输入信号,但是输出信号的功率一直上不去,好像是到了5W的时候就没有波形了,然后重新上电才会再出来,看了看手册,应该是芯片的自我保护模式,但一直不知道为什么会进入自我保护模式,说的明明是可以达到25W的,然后我们加大了供电电压,不幸的是芯片一下子就烧了,特别的烫。

没办法,按照手册上说的,供电电压是可以达到26V的。我18V就把它烧了(至今仍然不知为什么),为了验证是不是电压太大把它烧了,我们又卖了几个芯片实验,又在网上查找论文,但所有的论文里面的电路都是一样的这一个典型电路,就像是所有的假芯片都被我买到了一样,所以……最后……终于发现不了什么原因,但为了可以使用,我们只能把供电电压限制在一个安全水平。

之后是啸叫的检测,考虑到了啸叫频率可能会有多个,而且为了不受到音频信号的干扰,我们没有使用比较器通过测方波频率的方法来检测啸叫频率,而是使用了AD采集4096个点,将信号做4096点的实数FFT运算,得到频谱,进而确定啸叫频率的。

得到了啸叫的频率,然后就是啸叫的抑制,我们首先是尝试了数字滤波方法,使用IIR滤波,单片机先采集一段信号,然后做个傅里叶变换测出来啸叫频率,然后使用对应的参数进行IIR滤波,这个参数是使用Matlab提前生成的,需要生成许多的数据,因为啸叫的频率在变化,只能先建立一个离线的很大的系数表,得到频率后就去查找,得到对应的系数数组,进行IIR滤波。我们使用的是NUCLEO-F767的板子,F7具有双精度的浮点运算单元,计算FFT啊或者IIR啊还是很快的,测试的时间是小于4个毫秒,但是问题是采集一段波形需要时间,FFT和IIR只能对一个数组里的数进行操作,不能动态的对数据进行处理,这就导致了很大的延迟,计算了一下,大概会有50ms的延时,播放音乐时已经可以分辨出了,而且不知为什么输出的声音信号有很大的噪声,特别不清晰。最终我们放弃了这个方法;

改成了使用程控滤波器MAX262,我们买了芯片,自己动手开始焊接,根据手册……结合康威科技……做了个电路,程序也写了写,发现效果还真的好,而且使用方便,直接软件修改中心频率和Q值就可以。

……吃了个饭……回来再测芯片就烧了,特别烫,不知道为啥,换了一个,加上电压,发现输出电流也不大,但是芯片发烫,很烫,又烧……这是怎么回事,一瞬间烧了两个芯片了……50多块钱啊。

不知为什么,然后自己比较了一下我的电路和别人的电路的区别,发现只有电源供应处,我比他少了两个二极管!!!难道真的是因为电压高,手册里写的±5V的供电范围啊,没办法,只好是又加上了两个二极管,发现终于不烧了,真开心

然后就基本没有什么特别难的地方的,有个有效值检测电路,我们也自己做了一个,用的是有效值检测芯片AD736,效果还可以。

整体调试还算顺利,可以抑制啸叫,效果不错,最后附上一张整个系统的照片:


2018/07/25/23:46

2014TI杯(D题)带啸叫检测与抑制的音频功率放大器相关推荐

  1. 基于FPGA的啸叫检测与抑制系统设计与实现verilog

    针对啸叫的问题,本文设计了一种基于移频算法的啸叫抑制器.采用高性能音频编解码芯片对音频信号采样,移频器对采样所得的音频信号进行移频,移频频率范围为0~8Hz,再用音频芯片输出,采用FFT算法计算出啸叫 ...

  2. 蓝桥杯真题2017-2021

    刷完近几年真题,感觉理解完之后,拿奖问题不大,本人这次获得2022年蓝桥杯javaB组省一,以下是历年javaB组省赛题目. 文章目录 2017年真题 一.购物单 二.纸牌三角形 三.承压计算 四.魔 ...

  3. Python小白的数学建模课-A2.2021年数维杯C题(运动会优化比赛模式探索)探讨

    关注收藏,国赛再会. 运动会优化比赛模式问题,是公平分配问题. 『Python小白的数学建模课 @ Youcans』带你从数模小白成为国赛达人. 2021第六届数维杯大学生数学建模 赛题已于5月27日 ...

  4. 【蓝桥杯真题】16天冲刺 Python

    距离比赛很快了,希望和我一起准备的PY党能更加熟练的掌握Python! 1.距离和(模拟赛填空题) 问题描述: 两个字母之间的距离定义为它们在字母表中位置的距离.例如 A和 C 的距离为 2,L 和  ...

  5. 蓝桥杯python省赛冲刺篇2——常用算法的详细解析及对应蓝桥杯真题:打表模拟法、递推递归法、枚举法、贪心算法、差分与前缀和

    注意:加了题目链接 目录 注意:加了题目链接 一.打表模拟法 介绍 1. 算式问题 题目描述 解析与代码演示 2. 求值 题目描述 解析与代码演示 3. 既约分数 题目描述 解析与代码演示 4. 天干 ...

  6. 2022华数杯B题论文思路分析+完整代码(水下机器人组装计划)

    大家可以看看官方的解析视频(这个视频只要是参赛选手就可以免费观看,不能看的朋友我考虑过几天出一个博客),此外,官方的标准答案我已经放在此篇博客的末尾了,大家自行参考. 2022华数杯B题官方解析视频& ...

  7. 2019蓝桥杯每周一题第二周之Mineweep(扫雷)

    2019蓝桥杯每周一题第二周之Mineweep(扫雷) 写在开头: 写这个题的时候真的是一次次的纠错,题不难,里面的逻辑关系有复杂,每一次都以为会运行正确了,结果又一个小地方出错,写了一上午还是有问题 ...

  8. 备战蓝桥杯-枚举、排序、模拟专项练习详解(含有多道蓝桥杯原题)

    枚举.模拟与排序 蓝桥杯所有专项练习 蓝桥杯原题: 连号区间数 小明这些天一直在思考这样一个奇怪而有趣的问题: 在 1∼N1∼N 的某个排列中有多少个连号区间呢? 这里所说的连号区间的定义是: 如果区 ...

  9. scratch编程 蓝桥杯编程题 红绿灯

    小恐龙以前做过一道蓝桥杯编程题,实在是想不起在哪里看到的了,真是该打.大意是模拟道路上的红绿灯效果,红灯停绿灯行: 如果哪位小可爱知道此题出处的话,不妨告知小恐龙一声. 我们来康康怎么编程的吧.首先导 ...

  10. 2022年全国研究生数学建模竞赛华为杯F题COVID-19疫情期间生活物资的科学管理问题求解全过程文档及程序

    2022年全国研究生数学建模竞赛华为杯 F题 COVID-19疫情期间生活物资的科学管理问题 原题再现:   一.背景介绍   进入2022年以来全国范围内陆续出现了多次较大规模疫情爆发事件[1-2] ...

最新文章

  1. (论坛答疑点滴)怎么在datagrid翻页的时候确认?
  2. 据说这是最受科研人员喜爱的春联
  3. List对象集合的遍历、对象赋值和向前台传递
  4. 《Objective-C 程序设计(第4版) 》图书信息
  5. Hyperledger Fabric的区块结构 交易结构
  6. Vue开源项目库汇总-转
  7. php 照片变成卡通照片,怎么把照片变成卡通人物 如何把照片变成卡通画 把照片变成卡通人物...
  8. luogu P4100 [HEOI2013]钙铁锌硒维生素
  9. FACIAL: Synthesizing Dynamic Talking Face with Implicit Attribute Learning(论文翻译)
  10. Java SSLSocket客户端认证配置
  11. 案例拆解:元气森林,这些企业微信裂变经验值得你学习
  12. 腾讯最难lua面试题答案及解析
  13. 读刘文鹏之《古代埃及史》
  14. 【华人学者风采】宋晓东 加州大学伯克利分校
  15. ic卡写卡 angus_使用Angus更快地构建Web应用程序
  16. JCreator 连接数据库
  17. 自已做了个hpgl格式文件plt查看器
  18. 五年之内,博士学历也会开始内卷了?
  19. Unity3D服务器端使用PhysX计算物理
  20. mysql has gone_导致“mysql has gone away”的两种情况

热门文章

  1. 德清租房软件测试,张家口商场附近出租房
  2. 计算机专业买哪一款华硕电脑好,华硕笔记本哪款好 如何挑选笔记本电脑
  3. 2019年信息系统项目管理师考试时间
  4. 问题解决_系统识别不了内存
  5. 【无标题】炒外汇是什么,为什么有人说炒外汇能发财
  6. SAP FICO 第二节 LSMW导入财务科目
  7. FPGA 之 SOPC 系列(五)Nios II 软件使用与程序开发 I
  8. 用html5制作古诗,古诗词书签制作
  9. iphone测试内存读取速度软件,iPhone7内存不同读写速度有差? 实测差距惊人!
  10. linux几种锁的分析与比较