1. 声波基础:频率、波长、振幅、相位、声速与介质的关系
各位同学,咱们今天正式开讲。声学这东西,说白了就是研究声音怎么产生、怎么传播、怎么被我们听到。你想想看,我们每天说话、听音乐、打电话,背后全是这些基础物理量在起作用。我做了十几年音频Codec,回头一看,最核心的其实还是今天要讲的这几个概念。
1.1 声音的本质是什么?
声音是一种机械波。它需要介质才能传播。空气、水、金属,都行。真空中声音传不了,这个大家应该都知道。
我刚开始做音频驱动时,有个坑印象特别深。当时调试一个麦克风阵列,死活收不到信号。查了半天,发现是麦克风的防尘网被胶膜封死了。声音根本传不过去。嗯,这其实就说明了声音传播需要介质这个基本道理。
核心概念:声波是介质质点振动的传播形式。质点本身并不随波迁移,只是在平衡位置附近来回振动。
1.2 频率与波长——声音的"身份证"
频率和波长,这两个是绑在一起的。频率决定音调,波长决定声音在空间中的"尺寸"。
频率(f):单位是赫兹(Hz)。人耳能听到的范围大概是20Hz到20kHz。低于20Hz叫次声波,高于20kHz叫超声波。Codec芯片处理的音频信号,通常就是在这个范围内。
波长(λ):单位是米(m)。一个完整波形的空间长度。频率越高,波长越短;频率越低,波长越长。
它们的关系很简单:
λ = c / f
其中c是声速,f是频率。这个公式你记牢了,后面做声学设计、麦克风阵列布局、扬声器分频点选择,全都要用到。
| 频率范围 | 典型波长(空气中,20°C) | 应用场景 |
|---|---|---|
| 20 Hz | 约 17.15 m | 次声波、低频振动 |
| 1 kHz | 约 0.343 m | 语音信号中心频率 |
| 20 kHz | 约 1.715 cm | 超声波、高频音频 |
实战经验:做Codec的ADC/DAC设计时,采样率必须大于信号最高频率的两倍(奈奎斯特定理)。比如你要处理20kHz的音频,采样率至少得40kHz。CD标准的44.1kHz就是这么来的。
1.3 振幅——声音的"力气"
振幅决定了声音的响度。振幅越大,声音越响。但这里有个容易混淆的地方:振幅和声压级(SPL)不是一回事。
振幅是物理量,单位可以是米(质点位移)、帕斯卡(声压)。而声压级是人对响度的主观感受,单位是分贝(dB)。
我记得有一次,客户反馈说Codec输出音量太小。我查了寄存器,增益设置没问题。后来发现是扬声器的阻抗匹配出了问题,导致实际振幅远小于预期。所以,振幅不光看电信号,还要看负载。
注意:振幅过大可能导致信号削波(clipping)。在数字域,超过0dBFS的信号会被截断,产生失真。做Codec驱动时,一定要留好headroom,通常建议-3dB到-6dB。
1.4 相位——声音的"时间差"
相位这个概念,很多人觉得抽象。其实说白了,就是波形在时间轴上的位置。单位是度(°)或弧度(rad)。
两个同频率的声波,相位差为0°时,叠加后振幅加倍(相长干涉)。相位差为180°时,叠加后相互抵消(相消干涉)。
这个在Codec应用中太重要了。比如降噪耳机,就是利用反相声波来抵消环境噪声。我做ANC(主动降噪)算法时,相位控制精度直接决定了降噪效果。差个几度,效果就大打折扣。
关键点:相位差是相对值,不是绝对值。我们关心的是两个信号之间的相位关系,而不是单个信号的绝对相位。
1.5 声速与介质的关系
声速不是固定的。它取决于介质的性质和温度。空气中,声速大约是343 m/s(20°C时)。水中约1500 m/s。钢铁中能到5000 m/s以上。
为什么?因为介质的弹性模量和密度决定了声速。弹性越好、密度越小,声速越快。
温度对声速的影响也很明显:
c = 331.3 × √(1 + T/273.15)
其中T是摄氏温度。温度每升高1°C,声速大约增加0.6 m/s。
| 介质 | 声速(m/s) | 温度条件 |
|---|---|---|
| 空气 | 343 | 20°C |
| 水 | 1482 | 20°C |
| 钢 | ~5100 | 室温 |
| 混凝土 | ~3700 | 室温 |
避坑指南:我曾经在调试一个远场语音识别系统时,忽略了温度对声速的影响。结果麦克风阵列的波束成形算法在冬天和夏天效果差异很大。后来加了温度补偿,问题才解决。所以,做声学系统设计,一定要考虑环境变化。
1.6 知识体系总览
下面这张图,把今天讲的核心概念串起来了。你可以看到,频率、波长、振幅、相位、声速这五个量,通过介质和传播过程紧密关联。
1.7 这些概念在Codec中怎么用?
讲完理论,咱们得落地。这些声学基础,在Codec硬件和驱动开发中,处处都是。
- 采样率选择:根据信号最高频率,确定采样率。语音8kHz,音乐44.1kHz或48kHz。
- 滤波器设计:低通、高通、带通滤波器的截止频率,就是基于频率和波长关系来定的。
- 麦克风阵列:阵元间距通常取半波长,避免空间混叠。比如8kHz语音,波长约4.3cm,间距就取2.15cm左右。
- 降噪算法:相位匹配精度直接影响降噪深度。ANC耳机里,反馈麦克风和扬声器的相位延迟必须精确补偿。
- 增益控制:振幅对应数字信号的幅度。AGC(自动增益控制)就是动态调整振幅,防止削波或信号过弱。
总结一句话:频率、波长、振幅、相位、声速,这五个量是声学世界的"基本粒子"。你搞懂了它们,后面学Codec的PCM接口、I2S时序、数字滤波器、降噪算法,都会轻松很多。
好了,这一章就到这里。记住,理论是死的,但应用是活的。下次你调试Codec时,遇到奇怪的问题,不妨回头想想这些基础概念——说不定答案就在里面。