本文首发于微信公众号「声学号角」

之前的文章有提到不同的扬声器低频失真的数值仿真方法。可以利用comsol等多物理场有限元仿真软件进行耦合求解,计算量比较大。

matlab耦合simulink建模进行非线性仿真。

【扬声器系统设计与仿真】扬声器失真仿真

简化后,进行迭代解析求解的方法

一种新的扬声器单元低频非线性模型的迭代求解法

那篇文章采用matlab耦合simulink建模,是因为比较直观,容易修改而已,直接用matlab也是一样。为求尽可能准确,采用的是单频点的正弦信号作为激励,而且有matlab和simulink相互传递数据的过程,所以求解时间会略长。

这篇文章尝试使用不同激励信号进行扬声器低频失真的数值仿真。仿真工具matab。使用的求解方法是经典四阶龙格库塔法。 计算比上面的方法快了很多。  其实就是网上扒了现成的四阶龙格库塔法的matlab实现方法,然后再把方程改成扬声器的二阶非线性微分方程就行了。

输入电压激励信号可以选择:单点扫频,连续对数扫频,白噪,粉噪,脉冲信号,multitone等等。电压幅值尽可能大,以激发扬声器较大失真。

单点扫频——

输入Bl(x)

输入Kms(x)

输入Le(x)

得到:

三种Q值Qms/Qes/Qts和位移的关系

输入单频点正弦电压信号的时域和频域曲线

音圈位移的时域和频域曲线

音圈速度的时域和频域曲线

音圈加速度时域和频域曲线

声压时域和频域曲线

音圈电流的时域和频域曲线

洛伦兹力的时域和频域曲线

位移和位移谐波曲线

位移谐波百分比

声压级曲线和二到五次谐波失真曲线

二到五次谐波失真百分比

连续对数扫频——

白噪——

白噪激励电压信号输入频域和时域

检查输入噪声信号是否符合高斯正态分布

粉噪——

将白噪进行滤波就得到粉噪。下图蓝色是白噪,红色是粉噪。

脉冲信号——

Multitone——