ACS频率特性的研究
在这个例子中,我们来看看Engee环境研究ACS频率特性的可能性。
结构转换
ACS模型是一种包括典型动态链路块的结构方案。 使用这些链路的传递函数找到ACS的传递函数。
当串联连接时,链节的传递函数等于它们的传递函数的乘积。:
一组并联连接的链路的传递函数等于它们的传递函数之和:
如果链路具有传递函数 它被反馈所复盖,其中有一个链接 ,则闭环传递函数 它由公式确定:
分母中的加号或减号分别对应负反馈和正反馈。
考虑库函数 ControlSystems.jl,允许您对电路进行结构转换。
Pkg.add(["ControlSystems"])
#Подключим библиотеку для работы с САУ
using ControlSystems
#Зададим передаточные функции
W1 = tf([1],[0.5, 1]);
W2 = tf([1],[1, 1]);
对于传递函数的顺序乘法,有一个函数ControlSystemsBase.series.
#Последовательное перемножение систем
series(W1,W2)
一组并行链路的传递函数可以使用函数ControlSystemsBase.parallel.
#Параллельное соединение звеньев
parallel(W1,W2)
要确定由反馈复盖的链接组成的轮廓的传递函数,有一个函数ControlSystemsBase.feedback.
#Если звено охвачено единичной обратной связью, вторым аргументом указывается 1
W3 = feedback(W1,1)
#Если обратная связь проходит через звено W2
W4 = feedback(W1,W2)
display([W3,W4])
默认情况下,使用函数时 ControlSystemsBase.feedback 形成负反馈连接。 但是,您可以通过传递-1作为第二个参数来指定关系应该是正的。
#Звено охвачено единичной положительной обратной связью
feedback(W1, -1)
ACS频率特性的获取与研究
让我们设置下图所示的ACS的传递函数。
#Зададим параметры САУ
Ku = 10;
Tu = 0.001;
Km = 3;
Tm = 0.1;
Te = 0.02;
Kp = 0.01;
#Задаем передаточные функции звеньев САУ
W_1 = Ku*tf([1],[Tu, 1]);
W_2 = Km*tf([1],[Tm*Te, 1, 1]);
W_3 = Kp*tf([1],[1, 0]);
display([W_1, W_2, W_3])
链接按顺序排列,因此我们使用已经熟悉的ControlSystemsBase.series.
#Получаем передаточную функцию разомкнутой системы
W = series(W_1, W_2)
W = series(W, W_3)
让我们绘制AFCH和LAPCH图表。
#Получение АФЧХ
w = -100:0.1:100
nyquistplot(W,w,title="АФЧХ",label="W")
我们还将构建一个开环频率响应,显示振幅和相位的稳定性储备。 为此,请使用函数ControlSystemsBase.marginplot.
#Определим запасы устойчивости по амплитуде и по фазе
marginplot(W,label="W")
可持续性股票显示在图表的名称中。 幅度裕度为1111.76db,相位裕度为73.89度。 LFCH以18.26rad/s的频率交叉180度,截止频率为0.29rad/s。您还可以将光标悬停在图形上,查看任何选定点的幅度、相位和频率值。
结论
在这个例子中,我们熟悉了用于研究ACS频率特性的Engee功能。 我们还学习了如何使用库函数转换框图。 ContolSystems.jl. 要了解有关绘制频率特性的更多信息,请参阅绘制函数。