Пример применения Scilab(ТАУ)
.pdfПример использования ПО Scilab для решения различных задач теории автоматического управления
Предположим, что передаточная функция САУ имеет следующий вид:
W s = s 2
3 s3 4 s2 5 s 3
Ниже приводятся некоторые возможные варианты использования функций Scilab для решения различных задач, возникающих при анализе САУ, на примере этой конкретной системы.
1. Задание САУ
Задание передаточной функции:
-->W=poly([2 1],'s','c')/poly([3 5 4 3],'s','c')
W=
2 + s
---------------
23
3 + 5s + 4s + 3s
Задание непрерывной САУ по ее передаточной функции:
-->S=syslin('c',W)
S=
2 + s
---------------
23
3 + 5s + 4s + 3s
2. Нахождение временных характеристик
Построение графика переходной функции
-->plot(csim("step",0:0.1:20,S)) -->xgrid()
Построение графика импульсно-переходной функции
-->plot(csim("impulse",0:0.1:25,S))
3. Построение амплитудно-фазовой характеристики
-->nyquist(S,0.01,10)
4. Нахождение частотных характеристик
Построение ЛЧХ
для одной системы:
-->bode(S,0.01,100)
для двух систем (аналогично для АФХ и ЛАЧХ):
-->bode([S;S2],0.001,1000,['Система 1';'Система 2'])
Построение ЛАЧХ
-->gainplot(S,0.01,100)
© 2008 А.В. Нахабов
Построение АЧХ и ФЧХ
-->[frq,repf]=repfreq(S); -->[db,phi]=dbphi(repf); -->plot(frq,db)
-->plot(frq,phi)
5. Нахождение определителя матрицы (например, для критерия Гурвица)
-->det([4 3;3 5]) ans =
11.
6. Построение годографа Михайлова
Задание действительной и мнимой компонент в виде пользовательских функций
-->deff('u=re(w)','u=5-4*w^2') -->deff('u=im(w)','u=(6*w)-3*w^3')
Задание диапазона и построение графика
-->x=re(0:0.1:100); -->y=im(0:0.1:100); -->plot(x,y)
Отображение нулей и полюсов передаточной функции на вещественной оси (для следствия)
-->plot2d(roots(poly([5,0,-4],'w','c')),[0,0],style=-1) -->plot2d(roots(poly([0,6,0,-3],'w','c')),[0,0,0],style=-3)
7. Нахождение полюсов и нулей передаточной функции и их графическое представление
-->roots(denom(W))
ans = |
|
! - 0.8054824 |
! |
!- 0.2639255 + 1.0825135i !
!- 0.2639255 - 1.0825135i !
-->roots(numer(W)); -->plzr(S)
8. Определение запасов устойчивости с помощью логарифмического критерия
-->[gm,fr]=g_margin(S) fr =
0.2977516 gm =
14.807254
-->[pm,fr2]=p_margin(S) fr2 =
!0.1591549 !
!0.1648781 !
! |
pm |
= |
! |
- |
90. |
||
! |
- |
97.645873 ! |
© 2008 А.В. Нахабов