雷竞技注册
技术文章

如何使用LTSPICE执行瞬态分析和噪声源模拟

5月23日2019年经过斯蒂芬科利

了解多种方法来模拟噪声源 - 用于瞬态和噪声分析 - 在LTSPICE中。

了解多种方法来模拟噪声源 - 用于瞬态和噪声分析 - 在LTSPICE中。

在上一篇文章中,我们讨论了一些例子LTSPICE中的噪声。现在,让我们讨论如何使用瞬态分析使用噪声分析和时域在频域中构建噪声源。我们将通过模拟LTSPICE中的电路噪声来执行此操作。

本文假设“在”中存在的瞬态和噪声分析选项“仿真 - >编辑仿真命令“菜单和电路元件中噪声的一些了解,例如电阻器。

仿真1:频域中噪声分析源

在噪声分析中,LTSPICE使用它在电路元件中找到的所有噪声源,例如电阻器,晶体管和OP-AMPS。这对于许多分析任务而言,但有时是一个单独的独立噪声源是有用的。例如,噪声源可以是传感器的一部分。没有标准信号源可用于噪声分析。对于那种大胆的陈述,我加了“我知道并被记录在内!“如果您知道内置LTSPICE的人,请在文章末尾的评论部分中告知我们。

我们从一个新的特殊数字开始:60.328×1018.。别担心,它不会在测试中。这是LTSPICE思考将产生1.000001 v / hz的电阻的值1/2热噪声。如果在电阻的热噪声计算中使用大量有效图,则可以获得相同的号码,即,$$ \ sqrt {4k_ {b} tr} $$。这里描述的源的关键是使用电阻作为白色噪声发生器。

电阻产生的电压噪声是对电压相关电压源的输入。在LTSPICE组件库中,此部分是“E”。这里的“E”源使用值1来生成输出1 V / Hz的源1/2。将值更改为0.001,产生1 mV / Hz1/2等等。将具有相同值的另一电阻器应用于电压相关电流源的输入(库中的“G”)以产生电流噪声。

LTSPICE中的“无声”功能

以下是关于此电路的详细信息。R102在有用于将电流噪声转换为用于绘制的电压。使用真实负载时应删除。

R102被分配了未记录的组件属性“无噪声”,其告诉LTSPICE忽略电阻作为噪声源。此功能非常有用,因为不必从测量中减去电阻的额外噪声。

使用通过按住控制键并右键单击电阻器主体,使用所提出的组件属性编辑器添加无噪声属性。将“无噪成”单词添加为额外的值。双击可见字段以使其显示为原理图上的额外值。

我称当前输出“Cnoise”而不是“Inoise”,以避免LTSPICE使用的“Inoise”作为特殊标签。V100和V101是噪声仿真所需的输入源。

模拟2:在时域中使用随机函数

现在我们转移到时域和瞬态分析。在时域中,我们需要生产“模糊“波形我们呼叫噪音。这里显示的来源产生了一个近似“白色”噪音。我们将在LTSPICE中的伪随机函数中进行“深度潜水”并详细探索它们。

内置LTSPICE是任意行为电压或电流源。它们被称为“B”功能,我们将使用库中的“BV”。电流是“Bi”。B源使用功能来指定输出。LTSPICE中有三个功能,它会产生“嘈杂”或用作这些来源的输入的“嘈杂”或随机数。

这三个函数是rand(),workor()和white()。它们产生具有不同特性的伪随机数。

该图显示了反相放大器重复三次。每个实例都使用三个函数之一。时域图显示了输出的差异。兰特()是顶部情节。输出不平滑,看起来不像我们想要的“模糊”波形。中间图是随机的()。随机()平滑输出,但请注意DC偏移量。底部绘图是白色()。输出有点顺畅,没有DC偏移量。

警告!三种源产生相关输出。换句话说,他们一起移动。在精确的噪声模拟中,所有来源都是独立的或不相关的。内部随机数生成器正在产生类似的输出,可能是因为所有函数都基于同一时间变量。如果您需要多个不相关的噪声源,则PWL源(下面描述)可能会更好。

仿真包括.Measure指令,其将波形的RMS和峰值值打印到Spice错误日志。以下是此运行的结果。

WHRMS:RMS(v(粉红色))= 0.238969从0到0.1 rdmrms:rms(v(volorout)+0.5)= 0.247377从0到0.1 rdrms:rms(v(randout)+0.5)= 0.27391从0到0.1 WHPP:PP(v(WhiteOUT))= 0.97515从0到0.1 RDMPP:PP(V(随机))= 0.975855从0到0.1 RDPP:PP(v(RANDOUT))= 0.975857从0到0.1

“wh--”是白色()。“rdm--”是随机的()。“rd--”是兰德()。峰值峰值应接近1伏。峰峰与RMS的比率应为4至6,这对于白噪声是典型的。请注意,偏移量删除rand()和randul()。

通过使函数通过内部“时间”变量乘以比例因子来控制源的高频截止。没有记录很多这些东西。实验!这是两个绘制尺度因子,1,000和10,000的地块。

让我们更详细地查看输出。以下是图中的前几毫秒,数据点突出显示。

有时随机()和white()被描述为“低通滤波”版本的rand()。这些详细的情节表明这不是这种情况。此外,White()不仅仅是随机()的偏移版本。这是两个功能的差异,偏移减去了偏差。差异很大。

仿真3:在时域中使用PWL

另一个时间域技术使用PWL(分段线性)源。使用文本文件中的时间电压对列表指定波形的片段。以下是我使用电子表格和RND()函数创建的1,000个点文件的开头。RND()的输出被-0.5偏移到居中左右0.大多数电子表格程序应接受“= RND()-0.5”。

0.001 0.002 0.2054203753 0.4484326853 0.1923825948 0.003 0.004 0.005 0.01742015759 0.006 -0.1907726361 -0.1055641709 0.4320814403 0.007 0.008 0.009 0.08668131624 0.010 -0.02411717432 0.011 0.006584482657 -0.1113930451

LTSPICE使用白色空间分隔符。我用了一个标签。将文件放在与原理图相同的目录中,并在为源设置PWL函数时在“PWL文件”框中输入文件名。例如,我使用过“random_data.txt.“。

以下是此运行的峰值峰值和RMS测量。

txtdatarms:rms(v(fileout))= 0.23475从0到1 txdatapp:pp(v(fileout))= 0.998355从0到1

运行的数据可以以与输入文件相同的格式导出到文本文件。看 ”文件 - >将数据导出为文本“。这是此运行导出文件的开头。LTSPICE添加了Time = 0的条目,该条目不在输入文件中。在比较输入和输出文件时,可以看到OP-AMP反转和其他电路效果。

时间v(FILEOUT)0.0000000000000000000-001 1.00000000000000000-001 -2.023313E-001 2.000000000000000-001 2.00000000000000000-001 2.00000000000000000-003-4.453379E-001

奖金提示:导出到.wav音频文件

LTSPICE可以将绘图数据导出到.wav音频文件。将此指令置于上面的原理图中,并仅生产一秒的声音,只有工程师可以爱。

.wavewarn_data.wav 16 44.1k v(fileout)

你也制作了一个.csv.至 。文件转换器。自由!

结论

该物品呈现了几种方法来模拟“白色”噪声源,并讨论了一些局限性。还有其他创造性的方法可以为LTSPICE制造噪声源。例如,有些人使用半导体器件创建1 /ƒ噪声。如果您想分享一个,请评论以下。

相关文章

1条评论