exponenta event banner

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 (значения и время, как в lsim). p должна быть системой постоянного времени LTI, и k должна быть дискретно-временной системой LTI с заданным временем выборки (неопределенное время выборки -1 не допускается). Конечное время указывается с помощью tf.

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

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

Если p и/или k - массив LTI с согласованными размерами массива, затем моделирование времени выполняется точечно по всем размерам массива.

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

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

Сигналы yt и ut являются соответственно входными данными для k и выпуск k.

Если p и/или k массивы LTI с согласованными размерами массива, затем моделирование времени выполняется точечно по размерам массива. Выходами являются массивы ячеек размера 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');

Использовать connect для построения взаимосвязанной системы обратной связи.

C.InputName = {'ref','y'};
C.OutputName = 'u';
Pd.Inputname = 'u';
Pd.OutputName = 'y';
dclp = connect(C,Pd,'ref','y');

Использовать 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')

Figure contains an axes. The axes with title Step response: discrete (*) and continuous contains 2 objects of type line.

Эффект ненулевого начального условия можно увидеть в системе непрерывного времени. Обратите внимание, что проверка системы только в точках выборки приведет к занижению амплитуды превышения.

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')

Figure contains an axes. The axes with title Step response: nonzero initial condition contains 3 objects of type line.

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

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)')

Figure contains an axes. The axes with title Step response: disturbance (dashed) and output (solid) contains 3 objects of type line.

Алгоритмы

sdlsim избыточная выборка непрерывного времени, в N раз превышающая частоту дискретизации контроллера k.

См. также

| | | | |

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