Библиотека ddesign sci для Scilab


Download 246.92 Kb.
bet4/4
Sana15.09.2023
Hajmi246.92 Kb.
#1678615
1   2   3   4
Bog'liq
Kod opisanie

Пример использования


P = syslin( 'c', 0.1, 10*%s^2+%s );
Fw = syslin( 'c', 0.5, 1 )
rho = 1
sys = [-P*Fw 0 -P
0 0 rho
-P*Fw -Fm -P];
[Copt,H2norm,Wss] = h2reg ( sys );
Copt = ss2tf( Copt )
disp( H2norm, "H2norm = ")
W = ss2tf( Wss )
Copt =
0.05 + 0.428s
-------------------------
2
0.0770 + 0.405s + s
H2norm =
0.0449
W =
column 1
2
- 0.000385 - 0.00202s - 0.005s
----------------------------------------
2 3 4
0.0005 + 0.0120s + 0.117s + 0.505s + s
- 0.00025 - 0.00214s
----------------------------------------
2 3 4
0.0005 + 0.0120s + 0.117s + 0.505s + s
column 2
0.00005 + 0.0004281s
----------------------------------------
2 3 4
0.0005 + 0.0120s + 0.117s + 0.505s + s
2 3
- 0.0005s - 0.00928s - 0.0428s
----------------------------------------
2 3 4
0.0005 + 0.0120s + 0.117s + 0.505s + s
Fx = syslin( 'd', 0.2, %z-0.8 );
Fn = syslin( 'd', 0.6, %z-0.2 );
sys = [-Fx 0 1;
Fx Fn 0];
[Copt,H2norm,W] = h2reg ( sys )
Copt = ss2tf( Copt )
W = ss2tf( W )
Copt =
- 0.0354 + 0.177z
---------------
- 0.694 + z
H2norm =
0.272
W =
- 0.164 0.106
------------- -------------
- 0.694 + z - 0.694 + z

mindeadbeat


[C,E] = mindeadbeat ( D, R )
[C,E] = mindeadbeat ( D, R, alpha )
проектирование дискретного регулятора с минимальным временем переходного процесса

Параметры


D
дискретная модель объекта управления – рациональная функция от переменной 
R
изображение входного сигнала – рациональная функция от переменной 
alpha
сдвиг области устойчивости: если это значение задано, все корни, для которых Re(1/) > –, относятся к неустойчивой части

Результаты


С
передаточная функция регулятора от переменной 
E
изображение сигнала ошибки от переменной 

Пример использования


P = syslin( "c", 0.1, %s*(10*%s+1) );
T = 1;
D = ss2tf ( dscr(P,T) );
Dzeta = horner( D, 1/%z );
R = syslin( "d", %z, %z-1 );
Rzeta = horner( R, 1/%z );
[Czeta,Ezeta] = mindeadbeat(Dzeta, Rzeta)
C = horner( Czeta, 1/%z )
Czeta =
- 1 + 0.9048374z
----------------------
- 0.0048374 - 0.0046788z
Ezeta =
1
C =
0.9048374 - z
---------------------
- 0.0046788 - 0.0048374z

separzeta


[Fs,Fu] = separzeta ( S )
правильная сепарация рациональной функции от переменной 

Параметры


S
скалярная рациональная функция от переменной 

Результаты


Fs
устойчивая рациональная функция, все её полюса находятся вне единичного круга
Fu
строго правильная неустойчивая рациональная функция, все её полюса находятся внутри единичного круга, степенно числителя строго меньше степени знаменателя

Пример использования


n = %z^2 + 0.5*%z - 0.1
d = (%z + 1.9)*(%z - 0.5)
S = syslin( "d", n, d )
[Fs,Fu] = separzeta( S )
Fs =
0.8333333 + z
-------------
1.9 + z
Fu =
0.1666667
---------
- 0.5 + z

sfactor


Fs = sfactor ( S )
спектральная факторизация спектральной плотности от переменной s или z

Параметры


S
скалярная спектральная плотность, для непрерывных ситсем должно выполняться равенство S(s) = S(–s), для дискретных – S(z) = S(z–1)

Результаты


Fs
устойчивая рациональная функция, для непрерывных систем все её полюса находятся в левой полуплоскости, для дискретных – вне единичного круга

Пример использования


Sn = syslin( "c", -144, %s^2-225 );
Fs = sfactor ( S )
Fs =
12
------
15 + s


S = syslin( "d", -0.36*%z, ..
0.2*%z^2 - 1.04*%z + 0.2 );
Fs = sfactor ( S )
Fs =
0.6z
------
- 0.2 + z

sfactorzeta


Fs = sfactorzeta ( S )
спектральная факторизация спектральной плотности от переменной 

Параметры


S
скалярная спектральная плотность от переменной , такая что S() = S(–1)

Результаты


Fs
устойчивая рациональная функция, все её полюса находятся вне единичного круга

Пример использования


S = syslin( "d", -0.36*%z, ..
0.2*%z^2 - 1.04*%z + 0.2 );
Fs = sfactorzeta ( S )
Fs =
0.6
-------
1 - 0.2z

showstep


[y,t] = showstep ( sys, Tfinal )
показать переходную характеристику непрерывной или дискретной системы

Параметры


sys
модель линейной стационарной системы в пространстве состояний или передаточная функция
Tfinal
время моделирования; если не задано, то вычисляется автоматически

Результаты


y
значения выхода системы
t
значения соответствующих моментов времени

Пример использования


F = syslin( "c", 1, %s+1 );
showstep( F );

D = syslin( "d", 0.5, 0.5, 1, 0 );
showstep( D );

D = syslin( "d", 0.5, 0.5, 1, 0 );
showstep( D, 5 );

step


[y,t] = step ( sys, Tfinal )
вычисление переходной характеристики непрерывной или дискретной системы

Параметры


sys
модель линейной стационарной системы в пространстве состояний или передаточная функция
Tfinal
время моделирования; если не задано, то вычисляется автоматически

Результаты


y
значения выхода системы
t
значения соответствующих моментов времени

Пример использования


F = syslin( "c", 1, %s+1 );
[y, t] = step( F )
y =
0.
0.0588061
0.1141540
...
0.9973664
0.9975212
t =
0.
0.0606061
0.1212121
...
5.9393939
6.


D = syslin( "d", 0.5, 0.5, 1, 0 );
[yd, td] = step( D )
y =
0.
0.5
0.75
...
0.9995117
0.9997559
t =
0.
1.
2.
...
11.
12.


D = syslin( "d", 0.5, 0.5, 1, 0 );
[yd, td] = step( D, 5 )
y =
0.
0.5
0.75
0.875
0.9375
0.96875
t =
0.
1.
2.
3.
4.
5.

tf


sys = tf ( S )
sys = tf ( n, d )
sys = tf ( n, d, type )
построение модели в форме передаточной функции

Параметры


S
модель непрерывной или дискретной системы в пространства состояний
n
числитель передаточной функции
d
знаменатель передаточной функции
type
тип модели: "c" для непрерывных систем и "d" для дискретных систем; если тип не указан, предполагается, что type = "c"

Результаты


sys
модель системы в форме передаточной функции

Пример использования


A = [-1 0;1 -2];
S = syslin( "c", A, [1;0], [1 1], 0 );
T = tf( S )
T =
3 + s
---------
2
2 + 3s + s


F = tf( %s+1, %s*(10*%s + 1) )
F =
1 + s
-------
2
s + 10s
G = tf( %z, %z*(10*%z + 1) )
G =
z
-------
2
z + 10z


Xs = tf( [1 0], [10 1 0] )
Xs =
s
-------
2
s + 10s


Xd = tf( [1 0], [10 1 0], "d" )
Xd =
z
-------
2
z + 10z


ss


sys = ss ( T )
sys = ss ( A, B, C, D )
sys = ss ( A, B, C, D, type )
построение модели в пространстве состояний

Параметры


T
модель непрерывной или дискретной системы в виде передаточной функции
A, B, C, D
матрицы модели в пространстве состояний
type
тип модели: "c" для непрерывных систем и "d" для дискретных систем; если тип не указан, предполагается, что type = "c"

Результаты


sys
модель системы в пространстве состояний

Пример использования


A = [-1 0;1 -2];
Sc = ss( A, [1;0], [1 1], 0 );
ssprint( Sc )
. |-1 0 | | 1 |
x = | 1 -2 |x + | 0 |u
y = | 1 1 |x


Sd = ss( A, [1;0], [1 1], 0, "d" );
ssprint( Sd )
+ |-1 0 | | 1 |
x = | 1 -2 |x + | 0 |u
y = | 1 1 |x


F = syslin( "c", 1, %s*(%s+1) );
SF = ss( F );
ssprint( SF )
. | 0 1 | | 0 |
x = | 0 -1 |x + | 1 |u


y = | 1 0 |x


D = syslin( "c", %z+0.2, %z*(%z-0.8) );
SD = ss( D );
ssprint( SD )
. | 0.962 -0.192 | |-1.074 |
x = | 0.808 -0.162 |x + | 0.215 |u
y = |-0.931 0 |x


dioph
[x,y,err] = dioph ( a, b, c )
решение диофантова полиномиального уравнения
a*x + b*y = c

Параметры


a, b, b
полиномы от одной переменной

Результаты


x, y
полиномы, такие что a*x + b*y = c
полином x имеет наименьшую возможную степень ( deg(b))
err
ошибка: норма полинома a*x + b*y – c

Пример использования


A = [-1 0;1 -2];
Sc = ss( A, [1;0], [1 1], 0 );
ssprint( Sc )
. |-1 0 | | 1 |

z2zeta


sysz = z2zeta ( sys )
замена переменной в передаточной функции z   = z–1

Параметры


sys
модель дискретной системы в формате передаточной функции или константа

Результаты


sysz
модель дискретной системы в формате передаточной функции, в которой выполнена замена переменной z   = z–1; знаменатель передаточной функции приведённый (его старший коэффициент равен 1)

Пример использования


exec("ddesign.sci");
F = syslin( "d", %z - 0.8, 3*%z - 1 )
Fzeta = z2zeta ( F )
Fzeta =
- 10 + 8z
-------
- 30 + z
Download 246.92 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling