Engee 文档
Notebook

测量 RL 电路的瞬态时间

在本示例中,组装了一个发生瞬态的 RL 电路和一个测量瞬态时间的子系统。

模型描述

$t=0$ 时,电流源Controlled Current Source (blockControlledCurrent) 接收到振幅为 6V 的阶跃信号。电路中开始出现瞬态过程,我们将通过传感器Current Sensor 来了解这一过程。

我们关注的是传感器输出端数值进入 5%精度管的时刻,即信号超过0.95 * 6 V 值的时刻。

image.png

一组块SwitchDelay 负责存储从模型运行开始到信号超过阈值的模拟时间信息(块Clock )。之后,块SwitchDelay 的输出值将被冻结。我们可以在图表面板中看到以微秒为单位的表格形式显示。

image.png

在电子管达到 95% 的精确度之前,瞬态时间应约为$3 \tau$ 秒,其中$\tau = \frac{L}{R}$ (时间常数)。在我们的例子中,时间常数为 1 微秒,这与观测到的瞬态持续时间 2.995 微秒相符。

运行模型

让我们使用软件控制工具运行模型RL_circuit_transition_time

In [ ]:
# Загрузим модель, если она еще не открыта на холсте
if "RL_circuit_transition_time"  getfield.(engee.get_all_models(), :name)
    engee.load( "$(@__DIR__)/RL_circuit_transition_time.engee");
end

model_data = engee.run( "RL_circuit_transition_time" );

绘制图表:

In [ ]:
iL = model_data["Il"].value

plot( model_data["Il"].time, iL, xlabel="Время, с", label="Ток через катушку, A", lw=2 )
vline!( [model_data["t_finish_us"].value[end] ./ 1e6], label="Длительность переходного процесса" )
hline!( [0.95 .* (iL[end] - iL[1])], linecolor=3, ls=:dash, label="Порог ± 5%" )
hline!( [1.05 .* (iL[end] - iL[1])], linecolor=3, ls=:dash, label=:none )
Out[0]:

我们可以看到,模型非常准确地测量了瞬态的持续时间,因为在图中红线标出的点上,测量过程在 ± 5% 精度范围内。

结论

我们很容易就建立了一个研究 RL 电路瞬态的模型,并在几个附加模块的帮助下,获得了瞬态持续时间作为模型中的另一个信号,可以将其可视化或用于优化。

示例中使用的块