活学活用 LTspice 进行电路设计 — 了解蒙特卡罗分析法

文章来源
Macnica Engineer

活学活用 LTspice 进行电路设计 — 了解蒙特卡罗分析法

在上篇《活学活用 LTspice 进行电路设计 — 用 .ic .save 命令加速模拟》中,我们介绍了 .ic 和 .save 命令用法,本文将介绍如何使用蒙特卡罗分析法。

什么是蒙特卡罗分析法?

蒙特卡罗分析法又称统计模拟法、随机抽样技术,是一种随机模拟方法。通过使用随机数 (或更常见的伪随机数) 对元件公差产生随机组合,从而检查电路的操作变化。因此可以预测电路的成品率,验证符合设计规范的元件值。它又被称为容差分析技术,容差分析技术是⼀种预测电路性能参数稳定性的方法。其主要研究电路组成部分参数偏差,在规定的使用条件范围内,对电路性能容差的影响。

使用 Monte Carlo 函数确认电阻变化

用 SPICE 进行蒙特卡罗分析时,一般会给出伪随机数 (函数) 作为元件误差,并使参数发生变动。然而在 LTspice 中没有自动进行蒙特卡罗分析的菜单,需要指定函数和 Step 命令组合使用,以下用 Monte Carlo (蒙特卡罗) 函数来讲解。Monte Carlo (x, y) 函数从 x*(1+y) 和 x*(1-y) 值之间生成均匀分布的随机数,确认电阻变化的操作步骤如下:

第一步:为电阻值指定函数,在本示例中,电阻 1kΩ (标称误差 5%) 设定为 {mc (1k, tol)};
第二步:使用 Step 命令,从 0~999 重复 1000 次,运行仿真模拟,如下图 (图1) 所示:

图1 用 mc 函数随机生成电阻1k±5% (ohm)
图1 用 Monte Carlo 函数随机生成电阻1k±5% (ohm)

仿真模拟结果如下图 (图2) 所示,可以确认电阻两端产生的电压变化为电阻的变化。纵轴为电阻产生的电压值,横轴为步进次数。

图2 电阻偏差结果 (1000个样本)
图2 电阻偏差结果 (1000个样本) 

第三步:将上图 (图2) 中的图表数据导入 Excel,绘制成柱状图,如下图 (图3) 所示。可以看出电阻器中产生的电压 (电阻) 的变化呈均匀分布状态。

图3 电压 (电阻) 变化柱状图
图3 电压 (电阻) 变化柱状图

研究滤波器的截止频率

蒙特卡罗分析法的优势在于能够确认多个元件常数是如何相互关联。以下使用电阻和电容器这两个元件制作一个 RC 过滤器,并检查截止频率的变化。所用电阻值为 1k±0.5% (ohm),电容器为 0.01u±20% (F),因此将电阻 R1 的常数设为 {mc (1k, 0.05)},C1 的常数设为 {mc (0.01u, 0.1)}。接着使用 Step 命令,将重复次数设置为 0~999,总计 1000 次。运行仿真模拟,如下图 (图4) 所示:

图4 RC 滤波电路 (使用mc函数将误差添加到R和C)
图4 RC 滤波电路 (使用 Monte Carlo 函数将误差添加到 R 和 C)

 仿真模拟结果 (AC特性) 如下图 (图5) 所示,增益 (纵轴) 的 -3dB 点为截止频率。

图5 滤波器的 AC 特性结果 (1000个样本)
图5 滤波器的 AC 特性结果 (1000个样本)

由于仅用上图 (图5) 中的结果,可能较难完全理解,所以辅助 .meas 命令计算了截止频率 (-3db) 点,无误差时的截止频率为 Fc=1/(2*π*R*C)=15.915kHz (约16kHz)。用 Excel 将结果的变化做成柱状图,如下图 (图6) 所示。

此次模拟中加上同样分布的随机数,并将电阻和电容器相乘。截止频率的最小值 (约12.6kHz) 和最大值 (约20.6kHz) 本应呈正态分布的形式,但由于电阻和电容器的变化是有差异的,电容的误差甚至达到了 20%,而且 1000 个总样本数还是较少,因此可以看出以下柱状图与理想状态的图存在一定的差异。 

图6 截止频率柱状图
图6 截止频率柱状图

总结

本文介绍了如何在 LTspice 中进行蒙特卡罗分析,通过设置变量并对其进行模拟,可以了解电路的行为和对整个系统的影响程度。但还需要另外研究给出的函数是均匀分布的随机数,还是应该使用其他随机数的函数。ADI LTspice 仿真软件还有其它多样功能,在后续的系列文章也会为大家逐一解析。欲了解更多技术细节和 LTspice 相关操作,您可以点击下方「联系我们」,提交您的需求,我们澳门人巴黎人1797公司愿意为您提供更详细的技术解答。

 

相关阅读

《使用 LTspice 进行运放自激振荡电路调试》

《活学活用 LTspice 进行电路设计系列合集》

 

更多信息: