В этом примере показано, как улучшить систему, используя оба d2d и upsample команды и сравнение результатов обоих команд с исходной системой.
Увеличение дискретизации системы может быть полезно, например, когда необходимо реализовать цифровой контроллер с более высокой скоростью, чем вы изначально проектировали его.
Создайте систему в дискретном времени
со шаг расчета 0,3 с.
G = tf([1,0.4],[1,-0.7],0.3);
Повторно отобразите систему на 0.1 с, используя d2d.
G_d2d = d2d(G,0.1)
G_d2d = z - 0.4769 ---------- z - 0.8879 Sample time: 0.1 seconds Discrete-time transfer function.
По умолчанию d2d использует метод нуля order-hold (ZOH), чтобы повторно отобразить систему. Повторно дискретизированная система имеет тот же порядок, что и G.
Повторно отобразите систему на отметке 0,1 с, используя upsample.
G_up = upsample(G,3)
G_up = z^3 + 0.4 --------- z^3 - 0.7 Sample time: 0.1 seconds Discrete-time transfer function.
Второй вход, 3, говорит upsample для повторной выборки G во шаге расчета в три раза быстрее, чем во шаге расчета G. Этот вход в upsample должно быть целым числом.
G_up имеет в три раза больше полюсов и нулей, чем G.
Сравните переходные характеристики исходной модели G с повторно дискретизированными моделями G_d2d и G_up.
step(G,'-r',G_d2d,':g',G_up,'--b') legend('G','d2d','upsample','Location','SouthEast')

Переходная характеристика повышенной дискретизации модели G_up точно совпадает с переходной характеристикой исходной модели G. Реакция повторно дискретизированной модели G_d2d соответствует только на каждой третьей выборке.
Сравните частотную характеристику исходной модели с повторно дискретизированными моделями.
bode(G,'-r',G_d2d,':g',G_up,'--b') legend('G','d2d','upsample','Location','SouthWest')

В частотный диапазон также модель G_up созданный с помощью upsample команда соответствует исходной модели точно до частоты Найквиста исходной модели.
Использование upsample обеспечивает лучшее соответствие, чем d2d как во временной, так и в частотной областях. Однако upsample увеличивает порядок модели, что может быть нежелательно. Кроме того, upsample доступен только там, где исходный шаг расчета является целым числом, кратным новому шагу расчета.
d2d | d2dOptions | upsample