Преобразуйте модель из непрерывной в дискретное время
дискретизирует динамическую модель динамической системы в непрерывном времени
syscsysd = c2d(sysc,Ts) использование удержания нулевого порядка на входах и шага расчета Ts.
Дискретизируйте следующую передаточную функцию в непрерывном времени:
Эта система имеет вход задержку 0,3 с. Дискретизируйте систему с помощью треугольника ( задержки первого порядка), приближения с шагом расчета Ts = 0,1 с.
H = tf([1 -1],[1 4 5],'InputDelay', 0.3); Hd = c2d(H,0.1,'foh');
Сравнение переходных характеристик непрерывных и дискретизированных систем.
step(H,'-',Hd,'--')

Дискретизируйте следующие задержанные передаточной функции, используя удержание нулевого порядка на входе и 10-Hz частоту дискретизации.
h = tf(10,[1 3 10],'IODelay',0.25);
hd = c2d(h,0.1)hd =
0.01187 z^2 + 0.06408 z + 0.009721
z^(-3) * ----------------------------------
z^2 - 1.655 z + 0.7408
Sample time: 0.1 seconds
Discrete-time transfer function.
В этом примере дискретизированная модель hd имеет задержку в три периода дискретизации. Алгоритм дискретизации поглощает остаточную полупериодическую задержку в коэффициенты hd.
Сравните переходные характеристики моделей непрерывного времени и дискретизированных моделей.
step(h,'--',hd,'-')

Создайте модель пространства состояний в непрерывном времени с двумя состояниями и входа задержкой.
sys = ss(tf([1,2],[1,4,2])); sys.InputDelay = 2.7
sys =
A =
x1 x2
x1 -4 -2
x2 1 0
B =
u1
x1 2
x2 0
C =
x1 x2
y1 0.5 1
D =
u1
y1 0
Input delays (seconds): 2.7
Continuous-time state-space model.
Дискретизируйте модель с помощью метода дискретизации Тастина и фильтра Thiran, чтобы смоделировать дробные задержки. Шага расчета Ts = 1 секунду.
opt = c2dOptions('Method','tustin','FractDelayApproxOrder',3); sysd1 = c2d(sys,1,opt)
sysd1 =
A =
x1 x2 x3 x4 x5
x1 -0.4286 -0.5714 -0.00265 0.06954 2.286
x2 0.2857 0.7143 -0.001325 0.03477 1.143
x3 0 0 -0.2432 0.1449 -0.1153
x4 0 0 0.25 0 0
x5 0 0 0 0.125 0
B =
u1
x1 0.002058
x2 0.001029
x3 8
x4 0
x5 0
C =
x1 x2 x3 x4 x5
y1 0.2857 0.7143 -0.001325 0.03477 1.143
D =
u1
y1 0.001029
Sample time: 1 seconds
Discrete-time state-space model.
Дискретизированная модель теперь содержит три дополнительных состояния x3, x4, и x5 соответствующий триановому фильтру третьего порядка. Поскольку временная задержка, разделенная на шаг расчета, составляет 2,7, фильтр Thiran третьего порядка ('FractDelayApproxOrder' = 3) может аппроксимировать всю временную задержку.
Оцените передаточную функцию в непрерывном времени и дискретизируйте ее.
load iddata1 sys1c = tfest(z1,2); sys1d = c2d(sys1c,0.1,'zoh');
Оцените передаточную функцию второго порядка в дискретном времени.
sys2d = tfest(z1,2,'Ts',0.1);Сравните ответ дискретизированной модели передаточной функции в непрерывном времени, sys1d, и непосредственно оцененная модель дискретного времени, sys2d.
compare(z1,sys1d,sys2d)

Две системы практически идентичны.
Дискретизируйте идентифицированную модель пространства состояний, чтобы создать предиктор ее отклика на один шаг вперед.
Создайте модель пространства состояний, идентифицированную в непрерывном времени, используя данные оценки.
load iddata2
sysc = ssest(z2,4);Спрогнозируйте предсказанный ответ на 1 шаг вперед sysc.
predict(sysc,z2)

Дискретизируйте модель.
sysd = c2d(sysc,0.1,'zoh');Создайте модель предиктора из дискретизированной модели, sysd.
[A,B,C,D,K] = idssdata(sysd); Predictor = ss(A-K*C,[K B-K*D],C,[0 D],0.1);
Predictor является моделью с двумя входами, которая использует измеренные выходные и входные сигналы ([z1.y z1.u]) для вычисления 1-шагового предсказанного отклика sysc.
Симулируйте модель предиктора, чтобы получить тот же ответ, что и predict команда.
lsim(Predictor,[z2.y,z2.u])

Симуляция модели предиктора дает тот же ответ, что и predict(sysc,z2).
sysc - Динамическая система в непрерывном времениМодель в непрерывном времени, заданная как динамическая системная модель, такая как tf, ss, или zpk. sysc не может быть моделью данных частотной характеристики. sysc может быть системой SISO или MIMO, за исключением того, что 'matched' метод дискретизации поддерживает только системы SISO.
sysc может иметь вход/выход или внутренние задержки времени; однако, 'matched', 'impulse', и 'least-squares' методы не поддерживают модели пространства состояний с внутренними временными задержками.
Следующие идентифицированные линейные системы не могут быть дискретизированы непосредственно:
idgrey модели, чьи FunctionType является 'c'. Преобразовать в idss сначала модель.
idproc модели. Преобразовать в idtf или idpoly сначала модель.
Ts - Шаг расчетаШаг расчета, заданная как положительная скалярная величина, которая представляет период выборки полученной системы дискретного времени. Ts находится в TimeUnit, который является sysc.TimeUnit свойство.
method - Метод дискретизации'zoh' (по умолчанию) | 'foh' | 'impulse' | 'tustin' | 'matched' | 'least-squares'Метод дискретизации, заданный как одно из следующих значений:
'zoh' - Удержание нулевого порядка (по умолчанию). Принимает, что входы управления являются кусочно-постоянными во шаг расчета Ts.
'foh' - треугольное приближение (модифицированное удержание первого порядка). Предполагает, что входы управления являются кусочно-линейными за шаг расчета Ts.
'impulse' - Импульсная инвариантная дискретизация
'tustin' - Билинейный (Тастин) метод. Чтобы задать этот метод с подготовкой частоты (ранее известной как 'prewarp' метод), используйте PrewarpFrequency опция c2dOptions.
'matched' - Метод соответствия нулевого полюса
'least-squares' - Метод наименьших квадратов
'damped' - Демпфированное приближение Тастина на основе TRBDF2 формула только для разреженных моделей.
Для получения информации об алгоритмах для каждого метода преобразования, смотрите Непрерывно-Дискретные Методы Преобразования.
opts - Опции дискретизацииc2dOptions объектОпции дискретизации, заданные как c2dOptions объект. Для примера задайте предварительную частоту, порядок фильтра Thiran или метод дискретизации как опцию.
sysd - Модель в дискретном времениМодель в дискретном времени, возвращенная как динамическая системная модель того же типа, что и входная система sysc.
Когда sysc является идентифицированной (IDLTI) моделью, sysd:
Включает как измеренные, так и шумовые компоненты sysc. Инновации отклонения λ идентифицированной модели в непрерывном времени sysc, хранится в его NoiseVarianceсвойство, интерпретируется как интенсивность спектральной плотности шумового спектра. Отклонение шума в sysd таким образом, λ/Ts.
Не включает предполагаемую ковариацию параметра sysc. Если вы хотите перевести ковариацию при дискретизации модели, используйте translatecov.
G - Отображение непрерывных начальных условий модели пространства состояний на вектор начального состояния в дискретном времениОтображение начальных условий в непрерывном времени x 0 и u 0 модели пространства состояний sysc к вектору начального состояния x [0] в дискретном времени, возвращенному в виде матрицы. Отображение начальных условий к вектору начального состояния выглядит следующим образом :
Для моделей пространства состояний с задержками во времени, c2d заполняет матрицу G с нулями для учета дополнительных состояний, введенных путем дискретизации этих задержек. Смотрите Непрерывно-Дискретные Методы Преобразования для обсуждения задержек моделирования в дискретизированных системах.
c2dOptions | Преобразуйте скорость модели | d2c | d2d | thiran | translatecov (System Identification Toolbox)
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.