sdlsim

Ответ времени системы с обратной связью выборочных данных

Синтаксис

sdlsim(p,k,w,t,tf)
sdlsim(p,k,w,t,tf,x0,z0)
sdlsim(p,k,w,t,tf,x0,z0,int)
[vt,yt,ut,t] = sdlsim(p,k,w,t,tf)
[vt,yt,ut,t] = sdlsim(p,k,w,t,tf,x0,z0,int)

Описание

sdlsim(p,k,w,t,tf) строит ответ времени гибридной системы с обратной связью. lft(p,k), обеспечен непрерывным входным сигналом, описанным w и t (значения и времена, как в lsimP должна быть система LTI непрерывного времени и k должна быть система LTI дискретного времени с заданным шагом расчета (незаданный шаг расчета –1 не позволен). Итоговое время задано с tf.

sdlsim(p,k,w,t,tf,x0,z0) задает вектор начального состояния x0 из p, и z0 из k, в time t(1).

sdlsim(p,k,w,t,tf,x0,z0,int) задает размер этапа интеграции непрерывного времени int. sdlsim силы int = (k.Ts)/N int где N> 4 является целым числом. Если какой-либо из этих дополнительных аргументов не использован или передан как пустые матрицы, то значения по умолчанию используются. Значение по умолчанию для x0 и z0 нуль. Ненулевые начальные условия позволены для p (and/or k) только if p (и/или k) ss объект.

Если p и/или k массив LTI с сопоставимыми измерениями массива, затем симуляция времени выполняется pointwise через измерения массива.

[vt,yt,ut,t] = sdlsim(p,k,w,t,tf) вычисляет ответ непрерывного времени гибридной системы с обратной связью lft(p,k) обеспеченный непрерывным входным сигналом задан w и t (значения и времена, как в lsimP должна быть система непрерывного времени и k должно быть дискретное время, с заданным шагом расчета (незаданный шаг расчета –1 не позволен). Итоговое время задано с tf. Выходные параметры vt, yt и ut 2 1 массивы ячеек: в каждом первая запись является временным вектором, и вторая запись является значениями сигналов. Сохраненный этим способом, vt сигнала построен при помощи одной из следующих команд:

plot(vt{1},vt{2})
plot(vt{:}) 

Сигналы yt и ut соответственно вход к k и выход k.

Если p and/or k массивы LTI с сопоставимыми измерениями массива, затем симуляция времени выполняется pointwise через измерения массива. Выходные параметры 2 1 массивами ячеек измерения массива. Все ответы могут быть построены одновременно, например, plot(vt).

[vt,yt,ut,t] = sdlsim(p,k,w,t,tf,x0,z0,int) Дополнительными аргументами является int (размер этапа интеграции), x0 (начальное условие для p), и z0 (начальное условие для k). sdlsim силы int = (k.Ts)/N, где N> 4 является целым числом. Если какой-либо из этих аргументов не использован или передан как пустые матрицы, то значения по умолчанию используются. Значение по умолчанию для x0 и z0 нуль. Ненулевые начальные условия позволены для p (и/или k) только если p (и/или k) ss объект.

Примеры

свернуть все

Проиллюстрировать использование sdlsim, рассмотрите заявление дискретного контроллера к объекту с интегратором и около интегратора. Создаются непрерывный объект и дискретный контроллер. Эквивалент производить-и-содержать объекта формируется, и дискретная система с обратной связью вычисляется. Симуляция этого дает отклик системы в точках выборки. sdlsim затем используется, чтобы вычислить междемонстрационное поведение.

P = tf(1,[1, 1e-5,0]); 
T = 1.0/20; 
C = ss([-1.5 T/4; -2/T -.5],[ .5 2;1/T 1/T],... 
   [-1/T^2  -1.5/T], [1/T^2  0],T); 
Pd = c2d(P,T,'zoh');

Цифровая система с обратной связью теперь настраивается. Можно использовать sysic создать взаимосвязанную систему с обратной связью.

systemnames = 'Pd C'; 
inputvar = '[ref]'; 
outputvar = '[Pd]'; 
input_to_Pd = '[C]'; 
input_to_C = '[ref ; Pd]'; 
sysoutname = 'dclp'; 
cleanupsysic = 'yes'; 
sysic;

Используйте step симулировать цифровой переходной процесс.

[yd,td] = step(dclp,20*T);

Настройте непрерывное соединение и вычислите ответ выборочных данных с sdlsim.

M = [0,1;1,0;0,1]*blkdiag(1,P); 
t = [0:.01:1]'; 
u = ones(size(t)); 
y1 = sdlsim(M,C,u,t); 
plot(td,yd,'r*',y1{:},'b-') 
axis([0,1,0,1.5]) 
xlabel('Time: seconds') 
title('Step response: discrete (*) and continuous')

Вы видите эффект ненулевого начального условия в системе непрерывного времени. Отметьте, как исследование системы только в точках выборки недооценит амплитуду перерегулирования.

y2 = sdlsim(M,C,u,t,1,0,[0.25;0]); 
plot(td,yd,'r*',y1{:},'b-',y2{:},'g--') 
axis([0,1,0,1.5]) 
xlabel('Time: seconds') 
title('Step response: nonzero initial condition')

Наконец, можно исследовать эффект синусоидального воздействия на объекте непрерывного времени выход. Этот контроллер не спроектирован, чтобы отклонить такое воздействие, и система не содержит фильтры сглаживания. Симуляция эффекта фильтров сглаживания легко выполняется включением их в непрерывной структуре межсоединений.

M2 = [0,1,1;1,0,0;0,1,1]*blkdiag(1,1,P); 
t = [0:.001:1]'; 
dist = 0.1*sin(41*t); 
u = ones(size(t)); 
[y3,meas,act] = sdlsim(M2,C,[u dist],t,1); 
plot(y3{:},'-',t,dist,'b--',t,u,'g-.') 
xlabel('Time: seconds') 
title('Step response: disturbance (dashed) and  output (solid)')

Алгоритмы

sdlsim сверхдискретизировал непрерывное время, времена N частота дискретизации контроллера k.

Смотрите также

| | | | |

Представлено до R2006a