硬件实现声音信号压缩 | 您所在的位置:网站首页 › 音频衰减电路制作 › 硬件实现声音信号压缩 |
01 信号压缩 一、为什么进行信号压缩? 对声音信号进行压缩,并不是对信号整体进行衰减, 而只是对于其中幅度超过某些阈值的部分进行衰减。 这样就可以防止由人耳朵的“遮蔽”效应,使得小的音乐信号无法听清。 经过压缩之后,音乐中各种乐器动态范围比较接近,听起来音乐的层次更加丰富。 下图所示信号压缩四个主要参数。 上面是输入待压缩音频信号。 下面是压缩后输出音频信号。 虚线表示信号压缩的阈值,所有超过这个阈值的信号 在输出中它们都被进行了压缩。 不过它们幅值仍然超过了阈值。 为什么呢?是因为规定了压缩的比率 。即对超过阈值信号进行多大比率的压缩。 通过修改这个比率,可以改变信号超出阈值后所剩余的幅值。 调整比率滑块上下移动,可以看到输出信号最大幅度的变化。当比率趋于无穷大时,输出信号就被阈值严格限制。如果比率趋于1比1,则信号实际上没有被压缩。 ![]() ![]() 下面讨论一下使用硬件电路实现信号压缩的方法。 首先需要一个能够控制输入信号幅度的电路,它根据输入的控制电压改变输出信号的幅度。 第二部分电路用于检测输出信号的幅度。 由于信号是一个快速变化信号,不能够直接使用信号的瞬态幅值代表信号的变化范围。 电路第三部分是对比输出信号幅值与给定阈值电压,给出信号超出阈值的大小。 最后将幅度比较输出信号连接到第一个电路控制信号输入端口,用于控制输出信号的幅度。 这就形成了一个反馈控制电路系统。 通过这种反馈硬件电路, 完成对输入信号进行幅值压缩。 下面从音量控制电路开始分别介绍这三个硬件电路实现方案。 实现音量控制电路的一种方法为VCA控制电路, 即电压控制放大倍数电路。 这里给出了利用二极管实现的VCA的电路。 电路核心功能是由这六个串联的二极管 以及输入100k欧姆电阻完成的。 根据电路设计,施加在串联二极管上下两端的电压极性相反,幅度相等。 输入信号通过100k电阻输入到二极管中间, 如果它的幅值没有超过二极管上下两端控制的导通电压, 输出信号与输入信号相等。 如果二极管上下偏置电压使得二极管导通,那么它的中间节点的电压就维持在0V附近, 输出信号的幅值就变为0V。 这是因为通过100k欧姆信号电流非常微弱,远小于流过二极管的电流。所以输出信号就由二极管中点电压决定。 因此越多的电流流过二极管,输出信号的幅度就越小。 ![]() ![]() ![]() 下面讨论一下信号幅度检测电路。 它输出反映信号外包络线的幅值信号。 对于一个声音信号, 似乎它的上下幅度比较容易确定。 信号中心为0V,信号在0V上下波动。 如果确定任意时刻的幅度, 似乎只要将信号最大值求出即可。 但是如何将信号沿是时间轴拉宽,可以看到信号出现上下剧烈的波动。 因此为了需要获得信号的峰值,需要使用二极管峰值检波电路。 二极管峰值检波电路原理很简单,当输入信号超过二极管导通电压时, 输出信号便会给滤波电容充电,直到与输入信号峰值相同。 当输入信号降低, 二极管截止。电容上的电压便会通过电阻放电,进而输出电压也降低了。 二极管峰值检波电路输出信号就会随着输入信号的幅度变化而变化。 ![]() 这里展示了利用理想二极管检波电路给出的结果。 可以看到小信号对应的幅值非常不错了。 对于幅度检波电路先介绍到这里。 阈值比较电路是判断输入信号的幅度是否高于给定的阈值电压, 并给出高出电压的大小。 这个功能可以通过一个简单的减法电路来实现。 比如输入5V信号,设定阈值为4V, 那么它的输出信号就应该为1V。 输出正电压,表示信号幅度超过阈值电压。 输出负电压则表示信号幅度小于阈值。 它的绝对值则表示两者之差。 这是一个标准的减法运放电路。 通过一个电位器设定压缩阈值电压。 通过上面串联20k电路,可以限定阈值电压最高为6V。 这是在面包板上搭建电路的测试信号, 其中蓝色波形就是阈值比较电路输出信号。 它的幅值大于0, 表示信号幅度超过了设定电压阈值。 小于0, 表示信号幅度小于设定的阈值电压。 下面将三个电路按照电路框图连接起来,就形成了最终的电路。 这里给出了信号压缩电路的完整电路图。 如果输入信号的幅度不超过阈值电压,那么串联二极管基本上就截止, 输出信号幅度基本上没有改变。 这是整个电路测试结果。 蓝色信号为输入阈值电压。 随着它降低,输出信号的幅值也降低。 可以看到信号的输出峰值和阈值之间存在一个恒定的差值。 这个恒定的差值还是来自于二极管导通电压的影响。 只有当输入电压和阈值电压的差值超过了二极管的导通电压,输出电压才能够最终稳定在 一个固定的值。 为了解决这个问题,可以借鉴峰值检波电路中理想检波器的方案。 在控制电压跟随器电路中,将三个相同的二极管串联施加在反馈电路中。 这样就可以在输入电压刚刚超过0V时,输出电压就可以让三个二极管导通了,从而克服了二极管导通电压所带来的影响。 使用三个而不是六个二极管,是因为下面的运放反相放大器还提供了相同负电压施加在串联二极管下端。 为了避免输入电压小于零时造成跟随放大器输出饱和负电压, 对三个二极管反向并联一个二极管,可以使得控制电压不小于-0.7V。 测试改进后的电路,可以看到输出信号峰值与设定阈值电压基本上相同了。 通过在CV信号前增加一个电压衰减电路,可以控制压缩比率。 电路中通过一个电位器来对CV信号进行衰减。 实际测试可以看到,当电位器调整之后,可以改变信号超过阈值的比例大小。 当电位器调整到0,实际上电路就不在进行压缩了。 通过对峰值检波电路中电阻阻值的改变,可以调整压缩电路释放时间参数。 通过实际测试可以看到检波电路的时间常数对于信号幅度检波衰减速度的影响,从而影响到整个压缩电路释放时间参数。 在检波电路中增加一个串联电阻,可以改变启动时间参数。 将增加的电阻放在运放反馈回路中,可以使得启动时间更加精确。 启动时间与设定电位器 呈现线性关系。 通过实际电路测试,验证了电路的功能。 这里给出了整个音频压缩硬件电路原理图。 搭建实际电路测试可以验证它可以对多种输入信号工作良好。 增加一个开关,可以根据实际音乐特性确定是否进行信号压缩。 ※ 总 结 ※ 本文讨论了对于音频信号进行压缩硬件实现的方案。 设计并优化了电路设计。 通过实际测试验证了电路的有效性。 ● 相关图表链接: 图1.1.1 信号没有被压缩之前的波形图1.1.2 信号被压缩后的波形图1.2.1 信号压缩的参数图1.3.1 信号压缩硬件电路图1.4.1 音量控制电路图1.4.2 VCA电路的测试效果图1.5.1 峰值检波电路图1.5.2 普通二极管检波电路输出信号图1.6.1 阈值比较电路图1.6.2 阈值电压检测电路图1.6.3 面包板测试电路输出信号图1.3.9 完整的信号压缩电路图图1.3.10 电路测试结果图1.3.11 音量控制电路的改进图1.3.12 电路改进后的输出信号图1.4.1 电路中增加压缩比率电位器图1.4.2 改变启动时间和释放时间电路图1.4.3 音频信号压缩电路 |
CopyRight 2018-2019 实验室设备网 版权所有 |