Engee 文档
Notebook

基于噪声的运算放大器仿真

此示例演示了电路中噪声建模的方法之一。 该电路是截止频率为10MHz的放大器,其中噪声效应由带宽有限的运算放大器单元(带限运算放大器)产生。 电压源Vn设定等效频谱噪声密度为20 .

模型图:

op_amp_with_noise--1743430398910.png

定义加载和运行模型的函数:

In [ ]:
function start_model_engee()
    try
        engee.close("op_amp_with_noise", force=true) # закрытие модели 
        catch err # в случае, если нет модели, которую нужно закрыть и engee.close() не выполняется, то будет выполнена её загрузка после catch
            m = engee.load("$(@__DIR__)/op_amp_with_noise.engee") # загрузка модели
        end;

    try
        engee.run(m, verbose=true) # запуск модели
        catch err # в случае, если модель не загружена и engee.run() не выполняется, то будут выполнены две нижние строки после catch
            m = engee.load("$(@__DIR__)/op_amp_with_noise.engee") # загрузка модели
            engee.run(m, verbose=true) # запуск модели
        end
end
Out[0]:
start_model_engee (generic function with 1 method)

运行模拟

In [ ]:
start_model_engee();
Building...
Progress 0%
Progress 5%
Progress 10%
Progress 15%
Progress 20%
Progress 25%
Progress 30%
Progress 35%
Progress 40%
Progress 45%
Progress 50%
Progress 55%
Progress 61%
Progress 66%
Progress 71%
Progress 76%
Progress 81%
Progress 86%
Progress 91%
Progress 96%
Progress 100%

将仿真数据写入变量:

In [ ]:
t = simout["op_amp_with_noise/SysOutput_1"].time[:]
amp_voltage = simout["op_amp_with_noise/SysOutput_1"].value[:]
Out[0]:
WorkspaceArray{Float64}("op_amp_with_noise/SysOutput_1").value

数据可视化

In [ ]:
using Plots

放大器上的电压图:

In [ ]:
plot(t, amp_voltage, linewidth=2, title="Напряжение на усилителе", xlabel="Время, с", ylabel="Напряжение, В", lc=2)
Out[0]:

放大器的频率响应:

![newplot (65).png](attachment:newplot (65).png)