Zero order hold simulink что это

Zero order hold simulink что это

И.В.Черных. «Simulink: Инструмент моделирования динамических систем»

9. Библиотека блоков Simulink

9.4. Discrete – дискретные блоки

9.4.1. Блок единичной дискретной задержки Unit Delay

Выполняет задержку входного сигнала на один шаг модельного времени.

Входной сигнал блока может быть как скалярным, так и векторным. При векторном входном сигнале задержка выполняется для каждого элемента вектора. Блок поддерживает работу с комплексными и действительными сигналами.

На рис. 9.4.1 показан пример использования блока для задержки дискретного сигнала на один временной шаг, равный 0.1с.

Zero order hold simulink что это. Image1966. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1966. картинка Zero order hold simulink что это. картинка Image1966

Рис. 9.4.1. Пример использования блока Unit Delay

9.4.2. Блок экстраполятора нулевого порядка Zero-Order Hold

Блок выполняет дискретизацию входного сигнала по времени.

Sample time – Величина шага дискретизации по времени.

Блок фиксирует значение входного сигнала в начале интервала квантования и поддерживает на выходе это значение до окончания интервала квантования. Затем выходной сигнал изменяется скачком до величины входного сигнала на следующем шаге квантования.

На рис. 9.4.2 показан пример использования блока Zero-Order Hold для формирования дискретного сигнала.

Zero order hold simulink что это. Image1967. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1967. картинка Zero order hold simulink что это. картинка Image1967

Рис. 9.4.2. Пример формирования дискретного сигнала с помощью блока Zero-Order Hold

Zero order hold simulink что это. Image1968. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1968. картинка Zero order hold simulink что это. картинка Image1968

Рис. 9.4.3. Использование блока Zero-Order Hold для согласования работы дискретных блоков.

9.4.3. Блок экстраполятора первого порядка First-Order Hold

Блок задает линейное изменение выходного сигнала на каждом такте дискретизации, в соответствии с крутизной входного сигнала на предыдущем интервале дискретизации.

Sample time – Величина шага дискретизации по времени.

Пример экстраполяции синусоидального сигнала этим блоком показан на рис. 9.4.4.

Zero order hold simulink что это. Image1969. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1969. картинка Zero order hold simulink что это. картинка Image1969

Рис. 9.4.4. Использование блока First-Order Hold

9.4.4. Блок дискретного интегратора Discrete-Time Integrator

Блок используется для выполнения операции интегрирования в дискретных системах.

Метод использует аппроксимацию T/(z-1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
y(k) = y(k–1) + T*u(k–1),
y
– выходной сигнал интегратора,
u – входной сигнал интегратора,
T – шаг дискретизации,
k – номер шага моделирования.

Метод использует аппроксимацию T*z/(z–1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
y(k) = y(k–1) + T*u(k).

Метод использует аппроксимацию T/2*(z+1)/(z–1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
x(k) = y(k–1) + T/2 * u(k–1).

Остальные параметры дискретного интегратора те же, что и у блока аналогового интегратора Integrator (библиотека Continuous).

На рис. 9.4.5 показан пример демонстрирующий все три способа численного интегрирования блока Discrete-Time Integrator. Как видно из рисунка изображение блока меняется в зависимости от выбранного метода интегрирования.

Zero order hold simulink что это. Image1970. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1970. картинка Zero order hold simulink что это. картинка Image1970

Рис. 9.4.5. Выполнение интегрирования блоками Discrete-Time Integrator, реализующими разные численные методы.

9.4.5. Дискретная передаточная функция Discrete Transfer Fсn

Блок Discrete Transfer Fcn задает дискретную передаточную функцию в виде отношения полиномов:

Zero order hold simulink что это. Image1971. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1971. картинка Zero order hold simulink что это. картинка Image1971,

m+1 и n+1 – количество коэффициентов числителя и знаменателя, соответственно.
num вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.

Порядок числителя не должен превышать порядок знаменателя.

Входной сигнал блока должен быть скалярным. В том случае, если коэффициенты числителя заданы вектором, то выходной сигнал блока будет скалярным (также как и входной сигнал). На рис. 9.4.6 показан пример использования блока Discrete Transfer Fcn. В примере рассчитывается реакция на единичное ступенчатое воздействие дискретного аналога колебательного звена: Zero order hold simulink что это. Image1972. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1972. картинка Zero order hold simulink что это. картинка Image1972.

Шаг дискретизации выбран равным 0.5 с.

Zero order hold simulink что это. Image1973. Zero order hold simulink что это фото. Zero order hold simulink что это-Image1973. картинка Zero order hold simulink что это. картинка Image1973

Рис. 9.4.6. Использование блока Discrete Transfer Fcn

9.4.6. Блок дискретной передаточной функции Discrete Zero-Pole

Блок Discrete Zero-Pole определяет дискретную передаточную функцию с заданными полюсами и нулями:

Zero order hold simulink что это. Image6619. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6619. картинка Zero order hold simulink что это. картинка Image6619,

Z – вектор или матрица нулей передаточной функции,
P – вектор полюсов передаточной функции,
K – коэффициент передаточной функции, или вектор коэффициентов, если нули передаточной функции заданы матрицей. При этом размерность вектора K определяется числом строк матрицы нулей.

Количество нулей не должно превышать число полюсов передаточной функции.

В том случае, если нули передаточной функции заданы матрицей, то блок Discrete Zero-Pole моделирует векторную передаточную функцию.

Нули или полюса могут быть заданы комплексными числами. В этом случае нули или полюса должны быть заданы комплексно-сопряженными парами полюсов или нулей, соответственно.

Начальные условия при использовании блока Discrete Zero-Pole полагаются нулевыми.

На рис. 9.4.7 показан пример использования блока Discrete Zero-Pole. С помощью рассматриваемого блока моделируется дискретный аналог передаточной функции

Zero order hold simulink что это. Image6620. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6620. картинка Zero order hold simulink что это. картинка Image6620.

Шаг дискретизации выбран равным 0.5 с.

Zero order hold simulink что это. Image6621. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6621. картинка Zero order hold simulink что это. картинка Image6621

Рис. 9.4.7. Использование блока Discrete Zero-Pole.

9.4.7. Блок дискретного фильтра Discrete Filter

Блок дискретного фильтра Discrete Filter задает дискретную передаточную функцию от обратного аргумента (1/z):

Zero order hold simulink что это. Image6622. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6622. картинка Zero order hold simulink что это. картинка Image6622,

m+1 и n+1 – количество коэффициентов числителя и знаменателя, соответственно.
num вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.

На рис. 9.4.8 показан пример использования блока Discrete Filter. С помощью рассматриваемого блока моделируется дискретный аналог передаточной функции:

Zero order hold simulink что это. Image6623. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6623. картинка Zero order hold simulink что это. картинка Image6623.

Шаг дискретизации выбран равным 0.5 с.

Zero order hold simulink что это. Image6624. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6624. картинка Zero order hold simulink что это. картинка Image6624

Рис. 9.4.8. Использование блока Discrete Filter.

9.4.8. Блок модели динамического объекта Discrete State-Space

Блок создает динамический объект, описываемый уравнениями в пространстве состояний:

Zero order hold simulink что это. Image6625. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6625. картинка Zero order hold simulink что это. картинка Image6625,

x – вектор состояния,

u – вектор входных воздействий,

y – вектор выходных сигналов,

n – номер шага моделирования.

Размерность матриц показана на рис. 9.4.9 (n – количество переменных состояния, m – число входных сигналов, r – число выходных сигналов).

Zero order hold simulink что это. Image6586. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6586. картинка Zero order hold simulink что это. картинка Image6586

Рис. 9.4.9. Размерность матриц блока Discrete State-Space

На рис. 9.4.10 показан пример моделирования динамического объекта с помощью блока Discrete State-Space. Матрицы блока имеют следующие значения:

Zero order hold simulink что это. Image6626. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6626. картинка Zero order hold simulink что это. картинка Image6626

Zero order hold simulink что это. Image6627. Zero order hold simulink что это фото. Zero order hold simulink что это-Image6627. картинка Zero order hold simulink что это. картинка Image6627

Рис. 9.4.10. Пример использования блока Discrete State-Space.

Источник

Моделирование дискретных сигналов в Simulink

Zero order hold simulink что это. dark fb.4725bc4eebdb65ca23e89e212ea8a0ea. Zero order hold simulink что это фото. Zero order hold simulink что это-dark fb.4725bc4eebdb65ca23e89e212ea8a0ea. картинка Zero order hold simulink что это. картинка dark fb.4725bc4eebdb65ca23e89e212ea8a0ea Zero order hold simulink что это. dark vk.71a586ff1b2903f7f61b0a284beb079f. Zero order hold simulink что это фото. Zero order hold simulink что это-dark vk.71a586ff1b2903f7f61b0a284beb079f. картинка Zero order hold simulink что это. картинка dark vk.71a586ff1b2903f7f61b0a284beb079f Zero order hold simulink что это. dark twitter.51e15b08a51bdf794f88684782916cc0. Zero order hold simulink что это фото. Zero order hold simulink что это-dark twitter.51e15b08a51bdf794f88684782916cc0. картинка Zero order hold simulink что это. картинка dark twitter.51e15b08a51bdf794f88684782916cc0 Zero order hold simulink что это. dark odnoklas.810a90026299a2be30475bf15c20af5b. Zero order hold simulink что это фото. Zero order hold simulink что это-dark odnoklas.810a90026299a2be30475bf15c20af5b. картинка Zero order hold simulink что это. картинка dark odnoklas.810a90026299a2be30475bf15c20af5b

Zero order hold simulink что это. caret left.c509a6ae019403bf80f96bff00cd87cd. Zero order hold simulink что это фото. Zero order hold simulink что это-caret left.c509a6ae019403bf80f96bff00cd87cd. картинка Zero order hold simulink что это. картинка caret left.c509a6ae019403bf80f96bff00cd87cd

Zero order hold simulink что это. caret right.6696d877b5de329b9afe170140b9f935. Zero order hold simulink что это фото. Zero order hold simulink что это-caret right.6696d877b5de329b9afe170140b9f935. картинка Zero order hold simulink что это. картинка caret right.6696d877b5de329b9afe170140b9f935

Генерирование сигналов в Simulink, естественно, имеет свои особенности. Рассмотрим их.

Возьмем из библиотеки блоков Simulink два блока: Sine Wave (из раздела Sources) и Scope (из раздела Sinks). Соединив их, получим простую схему (рис.4).

Zero order hold simulink что это. image010. Zero order hold simulink что это фото. Zero order hold simulink что это-image010. картинка Zero order hold simulink что это. картинка image010

Рис.4. Схема генерации и отображения синусоидального сигнала

Затем двойным щелчком по блоку осциллоскопа (осциллографа) активизируем окно, имитирующее экран осциллоскопа, и запустим модель (кнопка Start simulation). В результате получим изображение отрезка синусоиды (рис.5).

Zero order hold simulink что это. image012. Zero order hold simulink что это фото. Zero order hold simulink что это-image012. картинка Zero order hold simulink что это. картинка image012

Рис.5. Отображение отрезка синусоиды на экране осциллоскопа

Как видим, генерировать гармонический сигнал в среде Simulink даже проще, чем в среде MATLAB. Однако это первое впечатление весьма обманчиво. Действительно, ведь важно еще уметь управлять параметрами гармонического сигнала. То, что амплитуда гармонического сигнала оказалась равной единице – нам просто «повезло». Действительно, по умолчанию амплитуда генерируемого сигнала принята равной единице. Однако частотой, начальной фазой и длительностью сигнала мы пока не управляем.

Дважды щелкнем по блоку Sine Wave – в результате появится окно настроек параметров (рис.6). Щелкнув по кнопке Help, получим инструкцию по данному блоку, сущность которой сводится вкратце к тому, что в данном блоке выполняется операция

Zero order hold simulink что это. image014. Zero order hold simulink что это фото. Zero order hold simulink что это-image014. картинка Zero order hold simulink что это. картинка image014

Из приведенной формулы и надписей на рис.6 становится понятным смысл четырех переменных: амплитуды, угловой частоты, начальной фазы и постоянной составляющей. Остается пока зашифрованным смысл переменной «время».

Останавливаясь на этом важном вопросе, отметим различие понятий «время» и «модельное время». Так, генерирование отрезка сигнала длительностью 1 с (модельное время) может длиться значительно, чем более короткий промежуток времени, например, 0.1 с (реальное время). Скорость генерирования зависит от объема вычислений, быстродействия компьютера, от выбранного «решателя», т.е. алгоритма моделирования и т.д. Кстати, вполне возможен обратный эффект – для сложного алгоритма процедура моделирования отрезка сигнала длительностью 0.1 с может растянуться на несколько секунд.

Сигнал может генерироваться двух типов: непрерывный time-based и дискретный sample-based. Соответственно, для моделирования работы непрерывных систем рекомендуют использовать непрерывный тип time-based, а для моделирования работы дискретных систем – дискретный тип sample-based.

Если установлен тип time-based, тогда параметр Sample time может принимать значения:

– 0 (по умолчанию) – блок работает в непрерывном режиме;

– > 0 – блок работает в дискретном режиме;

Как указывается в Help, работа в непрерывном режиме может приводить к большим погрешностям генерации на больших промежутках модельного времени.

Zero order hold simulink что это. image016. Zero order hold simulink что это фото. Zero order hold simulink что это-image016. картинка Zero order hold simulink что это. картинка image016

Рис.6. Окно настроек параметров блока Sine Wave

Работа в дискретном режиме заставляет блок вести себя так, как если бы к выходу непрерывного генератора был присоединен блок Zero-Order Hold(из раздела Discrete). Действительно, собрав две схемы (рис.7) и задав в обоих случаях значение параметра Sample time, равное 0.5 (окно настройки блока Zero-Order Hold показано на рис.8), получаем идентичные результаты (рис.9).

Zero order hold simulink что это. image018. Zero order hold simulink что это фото. Zero order hold simulink что это-image018. картинка Zero order hold simulink что это. картинка image018

Рис.7. Вставка в схему генерации и отображения синусоидального сигнала

блокаZero-Order Hold

Zero order hold simulink что это. image020. Zero order hold simulink что это фото. Zero order hold simulink что это-image020. картинка Zero order hold simulink что это. картинка image020

Рис.8. Окно настройки блока Zero-Order Hold

Zero order hold simulink что это. image022. Zero order hold simulink что это фото. Zero order hold simulink что это-image022. картинка Zero order hold simulink что это. картинка image022

Рис.9. Идентичность результата работы схем показанных на рис. 7

Таким образом, блок Zero-Order Hold можно трактовать как «дискретизатор», т.е. часть аналого-цифрового преобразователя (АЦП), ответственную за дискретизацию сигнала. Иногда блок Zero-Order Hold именуют АЦП. По нашему мнению, это не корректно, поскольку дискретизированный сигнал в «подлинном» АЦП подвергается еще и квантованию по уровню. В блоке Zero-Order Hold, однако, квантование не производится.

Несколько замечаний о способах построения графиков. Помимо блока Scope, график можно построить и с помощью блока X-Y-Graf, на верхний вход X которого нужно подать последовательность моментов времени с помощью блока Clock (часы), а на нижний вход Y – значения генерируемого сигнала (рис.10).

Zero order hold simulink что это. image024. Zero order hold simulink что это фото. Zero order hold simulink что это-image024. картинка Zero order hold simulink что это. картинка image024

Рис.10. Применение для построения графиков блока X-Y-Graf

В результате предварительно настроенный (в соответствующем окне настройки задаются граничные значения аргумента и функции, а также указывается значение параметра Sample time) графопостроитель выдаст показанный на рис.11 график, если для блока X-Y-Graf задано Sample time=-1(т.е. период дискретизации наследуется).

Zero order hold simulink что это. 640 1. Zero order hold simulink что это фото. Zero order hold simulink что это-640 1. картинка Zero order hold simulink что это. картинка 640 1

Zero order hold simulink что это. image026. Zero order hold simulink что это фото. Zero order hold simulink что это-image026. картинка Zero order hold simulink что это. картинка image026

Рис.11. Отображение синусоиды блоком X-Y-Graf

График будет несколько иным (рис.12), если для блока X-Y-Graf задано Sample time=0.5.

Zero order hold simulink что это. image028. Zero order hold simulink что это фото. Zero order hold simulink что это-image028. картинка Zero order hold simulink что это. картинка image028

Рис.12. Отображение синусоиды блоком X-Y-Graf, Sample time=0.5

Еще об одном способе построения графиков. Массивы отсчетов моментов времени и соответствующих значений сигнала можно с помощью блока To Workspace экспортировать из среды Simulink в среду MATLAB (рис.13).

Zero order hold simulink что это. image030. Zero order hold simulink что это фото. Zero order hold simulink что это-image030. картинка Zero order hold simulink что это. картинка image030

Рис.13. Применение блока To Workspace

При этом, как показывает практика, лучше всего задать формат array для экспортируемых данных (рис.14).

Zero order hold simulink что это. image032. Zero order hold simulink что это фото. Zero order hold simulink что это-image032. картинка Zero order hold simulink что это. картинка image032

Рис.14. Задание форматаarrayдля блока To Workspace

Дальнейшее построение графика в среде MATLAB с помощью команды plot(x,y) не представляет никакого труда (рис.15).

Zero order hold simulink что это. image034. Zero order hold simulink что это фото. Zero order hold simulink что это-image034. картинка Zero order hold simulink что это. картинка image034

Рис.15. Построение графика данных, экспортированных

с помощью блока To Workspace

Подытожим полученные результаты.

Сигнал типа time-based при работе блока генерации в режиме непрерывного времени имеет вид гладкой функции времени, а в режиме дискретного времени – вид ступенчатого сигнала, такого, как если бы к выходу генератора плавного сигнала был подсоединен блок Zero-Order Hold, являющийся дискретизатором типа «отсчет-хранение».

Иными словами, задавая режим дискретного времени, мы уходим от необходимости в использовании блока Zero-Order Hold.

А теперь сгенерируем в Simulink отрезок дискретного гармонического сигнала с темы же параметрами, что были заданы в MATLAB: амплитуда 1, частота 100 Гц, частота дискретизации 1000 Гц, начальная фаза π/2, количество отсчетов 20.

Собираем снова схему из генератора и осциллоскопа. В окне-маске настройки генератора производим указание нужных числовых значений параметров, задаем тип time-based и присваиваем значение Sample time = 0.001 (рис.16).

Zero order hold simulink что это. image036. Zero order hold simulink что это фото. Zero order hold simulink что это-image036. картинка Zero order hold simulink что это. картинка image036

Рис.16. Окно настройки генератора

После запуска модели получаем на экране осциллоскопа совсем не ту картину, которую ожидали (рис.17).

Zero order hold simulink что это. image038. Zero order hold simulink что это фото. Zero order hold simulink что это-image038. картинка Zero order hold simulink что это. картинка image038

Рис.17. Результат осциллоскопа

Причина проста – нужно еще настроить параметры моделирования: задать начало и конец модельного времени (в нашем случае это 0 и 0.02 с, соответственно), а также выбрать алгоритм моделирования (тип «решателя»). На рис.18 показано окно настроек параметров моделирования, активизирующееся при выборе позиции меню Simulation/Simulation parameters. Зачастую эти параметры настраиваются автоматически, но для выделения отдельных частей функции знание их необходимо.

Zero order hold simulink что это. image040. Zero order hold simulink что это фото. Zero order hold simulink что это-image040. картинка Zero order hold simulink что это. картинка image040

Рис.18. Окно настроек параметров моделирования

Кроме того, настроим параметры осциллоскопа, щелкнув по кнопке Parameters на окне Scope (рис.19 а,б).

Zero order hold simulink что это. image042. Zero order hold simulink что это фото. Zero order hold simulink что это-image042. картинка Zero order hold simulink что это. картинка image042Zero order hold simulink что это. image044. Zero order hold simulink что это фото. Zero order hold simulink что это-image044. картинка Zero order hold simulink что это. картинка image044

Рис.19. Настройка параметров осциллоскопа:

а) настройка вкладки General; б) настройка вкладки Data history

После запуска модели на экране осциллоскопа появится изображение (рис.20).

Zero order hold simulink что это. image046. Zero order hold simulink что это фото. Zero order hold simulink что это-image046. картинка Zero order hold simulink что это. картинка image046

Рис.20. Результат осциллоскопа после проведенных настроек

Поскольку параметры осциллоскопа были заданы так, чтобы в рабочее пространство выводился двумерный массив ScopeDataзначений аргумента и функции, с помощью команд

можно построить график сгенерированной функции средствами MATLAB (рис.21).

Zero order hold simulink что это. image048. Zero order hold simulink что это фото. Zero order hold simulink что это-image048. картинка Zero order hold simulink что это. картинка image048

Рис.21. График сгенерированной функции средствами MATLAB

Сравнивая рис.21 и рис.2, замечаем лишь одно отличие – при моделировании в Simulink сгенерирована 21 точка, тогда как в MATLAB генерировалось 20 точек. Причина различия проста: на интервале модельного времени Zero order hold simulink что это. image050. Zero order hold simulink что это фото. Zero order hold simulink что это-image050. картинка Zero order hold simulink что это. картинка image050при частоте дискретизации Fs находится TFs+1 моментов времени, для которых будет сгенерирован сигнал. Очевидно, это обстоятельство легко учесть, добившись полного совпадения результатов моделирования в средах MATLAB и Simulink.

Источник

Zero-Order Hold

Implement zero-order hold sample period

HDL Coder / Discrete

Description

The Zero-Order Hold block holds its input for the sample period you specify. If the input is a vector, the block holds all elements of the vector for the same sample period.

Do not use the Zero-Order Hold block to create a fast-to-slow transition between blocks operating at different sample rates. Instead, use the Rate Transition block.

Bus Support

The Zero-Order Hold block is a bus-capable block. The input can be a virtual or nonvirtual bus signal. No block-specific restrictions exist. All signals in a nonvirtual bus input to a Zero-Order Hold block must have the same sample time, even if the elements of the associated bus object specify inherited sample times. You can use a Rate Transition block to change the sample time of an individual signal, or of all signals in a bus. See Modify Sample Times for Nonvirtual Buses and Bus-Capable Blocks for more information.

You can use an array of buses as an input signal to a Zero-Order Hold block. For details about defining and using an array of buses, see Group Nonvirtual Buses in Arrays of Buses.

Comparison with Similar Blocks

This table shows recommended usage for each block.

BlockPurpose of the BlockReference Examples
Unit DelayImplement a delay using a discrete sample time that you specify. The block accepts and outputs signals with a discrete sample time.
MemoryImplement a delay by one major integration time step. Ideally, the block accepts continuous (or fixed in minor time step) signals and outputs a signal that is fixed in minor time step.

Building a Clutch Lock-Up Model (Friction Mode Logic/Lockup FSM subsystem)

Источник

Документация

Сигнал задержки один период расчета

HDL Coder / Дискретный

Описание

Примечание

Сравнение с подобными блоками

Эта таблица показывает рекомендуемое использование для каждого блока.

БлокЦель блокаСправочные примеры
Unit DelayРеализуйте задержку с помощью дискретного шага расчета, который вы задаете. Блок принимает и выходные сигналы с дискретным шагом расчета.
ПамятьРеализуйте задержку одним главным временным шагом интегрирования. Идеально, блок принимает непрерывный (или зафиксированный в незначительном временном шаге) сигналы и выводит сигнал, который фиксируется в незначительном временном шаге.

Создавание Модели Тупика Муфты (Режим трения подсистема FSM Logic/Lockup)

Zero-Order HoldПреобразуйте входной сигнал со временем непрерывной выборки к выходному сигналу с дискретным шагом расчета.

Каждый блок имеет следующие возможности.

ВозможностьПамятьUnit DelayНулевой порядок содержит
Спецификация начального условияДаДаНет, потому что блок выход во время t = 0 должен совпадать с входным значением.
Спецификация шага расчетаНет, потому что блок может только наследовать шаг расчета от ведущего блока или решателя, используемого для целой модели.ДаДа
Поддержка основанных на системе координат сигналовНетДаДа
Поддержка логгирования состоянияНетДаНет

Представьте поддержку в виде строки

Блок Unit Delay может принять и тип данных выводимой строки, только если блок сконфигурирован для длины задержки 0 или 1 или для прямого сквозного соединения.

Источник

9.2.1. Осциллограф Scope

Строит графики исследуемых сигналов в функции времени. Позволяет наблюдать за изменениями сигналов в процессе моделирования.

Изображение блока и окно для просмотра графиков показаны на рис. 9.2.1.

Zero order hold simulink что это. Image383. Zero order hold simulink что это фото. Zero order hold simulink что это-Image383. картинка Zero order hold simulink что это. картинка Image383

Рис. 9.2.1. Осциллограф Scope

Для того, чтобы открыть окно просмотра сигналов необходимо выполнить двойной щелчок левой клавишей “мыши” на изображении блока. Это можно сделать на любом этапе расчета (как до начала расчета, так и после него, а также во время расчета). В том случае, если на вход блока поступает векторный сигнал, то кривая для каждого элемента вектора строится отдельным цветом.

Настройка окна осциллографа выполняется с помощью панелей инструментов (рис.9.2.2).

Zero order hold simulink что это. Image384. Zero order hold simulink что это фото. Zero order hold simulink что это-Image384. картинка Zero order hold simulink что это. картинка Image384

Рис. 9.2.2. Панель инструментов блока Scope

Панель инструментов содержит 11 кнопок:

Print – печать содержимого окна осциллографа.

Parameters – доступ к окну настройки параметров.

Zoom – увеличение масштаба по обеим осям.

Zoom X-axis – увеличение масштаба по горизонтальной оси.

Zoom Y-axis – увеличение масштаба по вертикальной оси.

Autoscale – автоматическая установка масштабов по обеим осям.

Save current axes settings – сохранение текущих настроек окна.

Restore saved axes settings – установка ранее сохраненных настроек окна.

Floating scope – перевод осциллографа в “ свободный” режим.

Изменение масштабов отображаемых графиков можно выполнять несколькими способами:

1. Нажать соответствующую кнопку (Zero order hold simulink что это. Image385. Zero order hold simulink что это фото. Zero order hold simulink что это-Image385. картинка Zero order hold simulink что это. картинка Image385, Zero order hold simulink что это. Image386. Zero order hold simulink что это фото. Zero order hold simulink что это-Image386. картинка Zero order hold simulink что это. картинка Image386или Zero order hold simulink что это. Image387. Zero order hold simulink что это фото. Zero order hold simulink что это-Image387. картинка Zero order hold simulink что это. картинка Image387) и щелкнуть один раз левой клавишей “мыши” в нужном месте графика. Произойдет 2,5 кратное увеличение масштаба.

2. Нажать соответствующую кнопку (Zero order hold simulink что это. Image385. Zero order hold simulink что это фото. Zero order hold simulink что это-Image385. картинка Zero order hold simulink что это. картинка Image385, Zero order hold simulink что это. Image386. Zero order hold simulink что это фото. Zero order hold simulink что это-Image386. картинка Zero order hold simulink что это. картинка Image386или Zero order hold simulink что это. Image387. Zero order hold simulink что это фото. Zero order hold simulink что это-Image387. картинка Zero order hold simulink что это. картинка Image387) и, нажав левую клавишу “мыши”, с помощью динамической рамки или отрезка указать область графика для увеличенного изображения. Рис. 9.2.3 поясняет этот процесс.

Zero order hold simulink что это. Image388. Zero order hold simulink что это фото. Zero order hold simulink что это-Image388. картинка Zero order hold simulink что это. картинка Image388

Рис. 9.2.3. Увеличение масштаба графика.

3. Щелкнуть правой клавишей “мыши” в окне графиков и, выбрать команду Axes properties… в контекстном меню. Откроется окно свойств графика, в котором с помощью параметров Y-min и Y-max можно указать предельные значения вертикальной оси. В этом же окне можно указать заголовок графика (Title ), заменив выражение % в строке ввода. Окно свойств показано на рис. 9.2.4.

Zero order hold simulink что это. Image389. Zero order hold simulink что это фото. Zero order hold simulink что это-Image389. картинка Zero order hold simulink что это. картинка Image389

Рис. 9.2.4. Окно свойств графика.

General – общие параметры.

Вкладка общих параметров показана на рис. рис. 9.2.5.

Zero order hold simulink что это. Image391. Zero order hold simulink что это фото. Zero order hold simulink что это-Image391. картинка Zero order hold simulink что это. картинка Image391

На вкладке General задаются следующие параметры:

1. Number of axes — число входов (систем координат) осциллографа. При изменении этого параметра на изображении блока появляются дополнительные входные порты.

3. Tick labels — вывод/скрытие осей и меток осей. Может принимать три значения (выбираются из списка):

all – подписи для всех осей,

none – отсутствие всех осей и подписей к ним,

bottom axis only – подписи горизонтальной оси только для нижнего графика.

4. Sampling — установка параметров вывода графиков в окне. Задает режим вывода расчетных точек на экран. При выборе Decimation кратность вывода устанавливается числом, задающим шаг выводимых расчетных точек. На рис. 9.2.6 и 9.2.7. показаны графики синусоидальных сигналов рассчитанных с фиксированным шагом 0.1 с. На рис. 9.2.6 в окне блока Scope выводится каждая расчетная точка (параметр Decimation равен 1 ). На рис. 9.2.7 показан вывод каждого второго значения (параметр Decimation равен 2 ). Маркерами на графиках отмечены расчетные точки.

Zero order hold simulink что это. Image392. Zero order hold simulink что это фото. Zero order hold simulink что это-Image392. картинка Zero order hold simulink что это. картинка Image392

Рис. 9.2.6. Отображение синусоидального сигнала (Decimation = 1 ).

Zero order hold simulink что это. Image393. Zero order hold simulink что это фото. Zero order hold simulink что это-Image393. картинка Zero order hold simulink что это. картинка Image393

Рис. 9.2.7. Отображение синусоидального сигнала (Decimation = 2 ).

Zero order hold simulink что это. Image394. Zero order hold simulink что это фото. Zero order hold simulink что это-Image394. картинка Zero order hold simulink что это. картинка Image394

Рис. 9.2.8. Отображение синусоидального сигнала (Sample time = 0.1 ).

5. floating scope – перевод осциллографа в “ свободный” режим (при установленном флажке).

На вкладке Data history (рис. 9.2.9)задаются следующие параметры:

1. Limit data points to last – максимальное количество отображаемых расчетных точек графика. При превышении этого числа начальная часть графика обрезается. В том случае, если флажок параметра Limit data points to last не установлен, то Simulink автоматически увеличит значение этого параметра для отображения всех расчетных точек.

Structure with time – структура с дополнительным полем “время”.

Zero order hold simulink что это. Image395. Zero order hold simulink что это фото. Zero order hold simulink что это-Image395. картинка Zero order hold simulink что это. картинка Image395

9.2.2. Осциллограф Floating Scope

Zero order hold simulink что это. Image396. Zero order hold simulink что это фото. Zero order hold simulink что это-Image396. картинка Zero order hold simulink что это. картинка Image396

В этом режиме блок осциллографа не имеет входов, а выбор отображаемого сигнала осуществляется с помощью инструмента Zero order hold simulink что это. Image397. Zero order hold simulink что это фото. Zero order hold simulink что это-Image397. картинка Zero order hold simulink что это. картинка Image397( Signal selection ) панели инструментов. Для выбора сигналов необходимо выполнить следующие действия:

1. Выделить систему координат, в которой будет отображаться график. Это достигается с помощью одиночного щелчка левой клавишей “мыши” внутри нужной системы. Выбранная система координат будет подсвечена по периметру синим цветом.

2. С помощью инструмента Zero order hold simulink что это. Image397. Zero order hold simulink что это фото. Zero order hold simulink что это-Image397. картинка Zero order hold simulink что это. картинка Image397открыть окно диалога Signal Selector (рис. 9.2.11).

3. Отметить флажком имена блоков, сигналы с выхода которых требуется исследовать.

После выполнения расчета в окне блока Floating Scope будут отображены выбранные сигналы.

Zero order hold simulink что это. Image398. Zero order hold simulink что это фото. Zero order hold simulink что это-Image398. картинка Zero order hold simulink что это. картинка Image398

Рис. 9.2.11. Окно диалога Signal Selector

9.2.3. Графопостроитель ХУ Graph

Строит график одного сигнала в функции другого (график вида Y(X) ).

x-max – Максимальное значение сигнала по оси X

y-max – Максимальное значение сигнала по оси Y

Sample time – шаг модельного времени.

Блок имеет два входа. Верхний вход предназначен для подачи сигнала, который является аргументом (X ), нижний – для подачи значений функции (Y ).

На рис.9.2.12, в качестве примера использования графопостроителя, показано построение фазовой траектории колебательного звена.

Zero order hold simulink что это. Image399. Zero order hold simulink что это фото. Zero order hold simulink что это-Image399. картинка Zero order hold simulink что это. картинка Image399

Zero order hold simulink что это. Image400. Zero order hold simulink что это фото. Zero order hold simulink что это-Image400. картинка Zero order hold simulink что это. картинка Image400

Рис. 9.2.13. Пример использования блока ХУ Graph для отображения временных зависимостей.

9.2.4. Цифровой дисплей Display

Отображает значение сигнала в виде числа.

Format – формат отображения данных. Параметр Format может принимать следующие значения:

short – 5 значащих десятичных цифр.

long – 15 значащих десятичных цифр.

short_e – 5 значащих десятичных цифр и 3 символа степени десяти.

long_e – 15 значащих десятичных цифр и 3 символа степени десяти.

bank – » денежный » формат. Формат с фиксированной точкой и двумя десятичными цифрами в дробной части числа.

Decimation – кратность отображения входного сигнала. При Decimation = 1 отображается каждое значение входного сигнала, при Decimation = 2 отображается каждое второе значение, при Decimation = 3 – каждое третье значение и т.д.

Sample time – шаг модельного времени. Определяет дискретность отображения данных.

Floating display (флажок)– перевод блока в “ свободный ” режим. В данном режиме входной порт блока отсутствует, а выбор сигнала для отображения выполняется щелчком левой клавиши “мыши” на соответствующей лини связи. В этом режиме для параметра расчета Signal storage reuse должно быть установлено значение off (вкладка Advanced в окне диалога Simulation parameters… ).

Zero order hold simulink что это. Image311. Zero order hold simulink что это фото. Zero order hold simulink что это-Image311. картинка Zero order hold simulink что это. картинка Image311

Рис. 9.2.14. Применение блока Display с использованием различных вариантов параметра Format.

Блок Display может использоваться для отображения не только скалярных сигналов, но также векторных, матричных и комплексных. Рис. 2.9.15 иллюстрирует это. Если все отображаемые значения не могут поместиться в окне блока, в правом нижнем углу блока появляется символ Zero order hold simulink что это. Image401. Zero order hold simulink что это фото. Zero order hold simulink что это-Image401. картинка Zero order hold simulink что это. картинка Image401, указывающий на необходимость увеличить размеры блока (см. блок Display4 на рис. 2.9.15).

Zero order hold simulink что это. Image312. Zero order hold simulink что это фото. Zero order hold simulink что это-Image312. картинка Zero order hold simulink что это. картинка Image312

Рис. 9.2.15 Применение блока Display для отображения векторных, матричных и комплексных сигналов.

9.2.5. Блок остановки моделирования Stop Simulation

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

Zero order hold simulink что это. Image313. Zero order hold simulink что это фото. Zero order hold simulink что это-Image313. картинка Zero order hold simulink что это. картинка Image313

Рис. 9.2.16. Применение блока Stop Simulation

9.2.6. Блок сохранения данных в файле То File

Блок записывает данные, поступающие на его вход, в файл.

Variable name – имя переменной, содержащей записываемые данные.

Decimation – кратность записи в файл входного сигнала. При Decimation = 1 записывается каждое значение входного сигнала, при Decimation = 2 записывается каждое второе значение, при Decimation = 3 – каждое третье значение и т.д.

Sample time – шаг модельного времени. Определяет дискретность записи данных.

Данные в файле сохраняются в виде матрицы:

Zero order hold simulink что это. Image308. Zero order hold simulink что это фото. Zero order hold simulink что это-Image308. картинка Zero order hold simulink что это. картинка Image308.

Значения времени записываются в первой строке матрицы, а в остальных строках будут находиться значения сигналов, соответствующих данным моментам времени.

Zero order hold simulink что это. Image314. Zero order hold simulink что это фото. Zero order hold simulink что это-Image314. картинка Zero order hold simulink что это. картинка Image314

Рис. 9.2.17. Применение блока To File

9.2.7. Блок сохранения данных в рабочей области То Workspace

Variable name – имя переменной, содержащей записываемые данные.

Decimation – кратность записи данных в рабочую область.

Sample time – шаг модельного времени. Определяет дискретность записи данных.

Save format – формат сохранения данных. Может принимать значения:

Matrix – матрица. Данные сохраняются как массив, в котором число строк определяется числом расчетных точек по времени, а число столбцов – размерностью вектора подаваемого на вход блока. Если на вход подается скалярный сигнал, то матрица будет содержать лишь один столбец.

Structure with Time – структура с дополнительным полем (время). Для данного формата, в отличие от предыдущего, поле time заполняется значениями времени.

Для считывания данных сохраненных в рабочей области MATLAB можно использовать блок From Workspace (библиотека Sources ).

Zero order hold simulink что это. Image315. Zero order hold simulink что это фото. Zero order hold simulink что это-Image315. картинка Zero order hold simulink что это. картинка Image315

Рис. 9.2.18. Применение блока To Workspace

9.2.8. Концевой приемник Terminator

Блок используется для подачи сигнала с неиспользуемого выхода другого блока.

Zero order hold simulink что это. Image316. Zero order hold simulink что это фото. Zero order hold simulink что это-Image316. картинка Zero order hold simulink что это. картинка Image316

Рис. 9.2.19. Применение блока Terminator

9.2.9. Блок выходного порта Outport

Создает выходной порт для подсистемы или для модели верхнего уровня иерархии.

Port number – номер порта.

Output when disabled – вид сигнала на выходе подсистемы, в случае если подсистема выключена. Используется для управляемых подсистем. Может принимать значения (выбираются из списка):

held – выходной сигнал подсистемы равен последнему рассчитанному значению.

9.2.9.1. Использование блока Outport в подсистемах

Блоки Outport подсистемы являются ее выходами. Сигнал, подаваемый в блок Outport внутри подсистемы, передается в модель (или подсистему) верхнего уровня. Название выходного порта будет показано на изображении подсистемы как метка порта.

При создании подсистем и добавлении блока Outport в подсистему Simulink использует следующие правила:

Если какой либо блок Outport удаляется, то остальные порты переименовываются таким образом, чтобы последовательность номеров портов была непрерывной.

Если в последовательности номеров портов имеется разрыв, то при выполнении моделирования Simulink выдаст сообщение об ошибке и остановит расчет. В этом случае необходимо вручную переименовать порты таким образом, чтобы последовательность номеров портов не нарушалась.

На рис. 9.2.19 показана модель, использующая подсистему и схема этой подсистемы.

Zero order hold simulink что это. Image402. Zero order hold simulink что это фото. Zero order hold simulink что это-Image402. картинка Zero order hold simulink что это. картинка Image402

Рис. 9.2.19. Использование блока Outport в подсистеме

Zero order hold simulink что это. Image403. Zero order hold simulink что это фото. Zero order hold simulink что это-Image403. картинка Zero order hold simulink что это. картинка Image403

Рис. 9.2.20. Управляемая подсистема с различными настройками выходных портов.

Выходной порт в системе верхнего уровня используется в двух случаях:

Для обеспечения связи функций анализа с выходами модели.

Zero order hold simulink что это. Image317. Zero order hold simulink что это фото. Zero order hold simulink что это-Image317. картинка Zero order hold simulink что это. картинка Image317

9.3. Continuous – аналоговые блоки

9.3.1. Блок вычисления производной Derivative

Выполняет численное дифференцирование входного сигнала.

Для вычисления производной используется приближенная формула Эйлера:

Zero order hold simulink что это. Image318. Zero order hold simulink что это фото. Zero order hold simulink что это-Image318. картинка Zero order hold simulink что это. картинка Image318,

где Zero order hold simulink что это. Image404. Zero order hold simulink что это фото. Zero order hold simulink что это-Image404. картинка Zero order hold simulink что это. картинка Image404u – величина изменения входного сигнала за время Zero order hold simulink что это. Image404. Zero order hold simulink что это фото. Zero order hold simulink что это-Image404. картинка Zero order hold simulink что это. картинка Image404t,

Zero order hold simulink что это. Image404. Zero order hold simulink что это фото. Zero order hold simulink что это-Image404. картинка Zero order hold simulink что это. картинка Image404t – текущее значение шага модельного времени.

Значение входного сигнала блока до начала расчета считается равным нулю. Начальное значение выходного сигнала также полагается равным нулю.

Точность вычисления производной существенно зависит от величины установленного шага расчета. Выбор меньшего шага расчета улучшает точность вычисления производной.

На рис. 9.3.1 показан пример использования дифференцирующего блока для вычисления производной прямоугольного сигнала. В рассматриваемом примере, для повышения наглядности, шаг расчета выбран достаточно большим.

Zero order hold simulink что это. Image405. Zero order hold simulink что это фото. Zero order hold simulink что это-Image405. картинка Zero order hold simulink что это. картинка Image405

Рис.9.3.1. Использование блока Derivative для дифференцирования сигнала.

Данный блок используется для дифференцирования аналоговых сигналов. При дифференцировании дискретного сигнала с помощью блока Derivative его выходной сигнал будет представлять собой последовательность импульсов соответствующих моментам времени скачкообразного изменения дискретного сигнала.

9.3.2. Интегрирующий блок lntegrator

Выполняет интегрирование входного сигнала.

External reset – Внешний сброс. Тип внешнего управляющего сигнала, обеспечивающего сброс интегратора к начальному состоянию. Выбирается из списка:

none – нет (сброс не выполняется),

either – нарастающий либо спадающий сигнал,

level – не нулевой сигнал (сброс выполняется если сигнал на управляющем входе становится не равным нулю);

В том случае, если выбран какой-либо (но не none ), тип управляющего сигнала, то на изображении блока появляется дополнительный управляющий вход. Рядом с дополнительным входом будет показано условное обозначение управляющего сигнала.

Initial condition source — Источник начального значения выходного сигнала. Выбирается из списка:

Initial condition — Начальное условие. Установка начального значения выходного сигнала интегратора. Параметр доступен, если выбран внутренний источник начального значения выходного сигнала.

Limit output (флажок) — Использование ограничения выходного сигнала.

Show saturation port — управляет отображением порта, выводящего сигнал, свидетельствующий о выходе интегратора на ограничение. Выходной сигнал данного порта может принимать следующие значения:

Show state port (флажок) — Отобразить/скрыть порт состояния блока. Данный порт используется в том случае, если выходной сигнал интегратора требуется подать в качестве сигнала обратной связи этого же интегратора. На пример, при установке начальных условий через внешний порт или при сбросе интегратора через порт сброса. Выходной сигнал с этого порта может использоваться также для организации взаимодействия с управляемой подсистемой.

Absolute tolerance — Абсолютная погрешность.

На рис. 9.3.2 показан пример работы интегратора при подаче на его вход ступенчатого сигнала. Начальное условие принято равным нулю.

Zero order hold simulink что это. Image407. Zero order hold simulink что это фото. Zero order hold simulink что это-Image407. картинка Zero order hold simulink что это. картинка Image407

Рис. 9.3.2. Интегрирование ступенчатого сигнала.

Zero order hold simulink что это. Image408. Zero order hold simulink что это фото. Zero order hold simulink что это-Image408. картинка Zero order hold simulink что это. картинка Image408

Рис. 9.3.3. Интегрирование ступенчатого сигнала с установкой начального значения выходного сигнала.

Zero order hold simulink что это. Image409. Zero order hold simulink что это фото. Zero order hold simulink что это-Image409. картинка Zero order hold simulink что это. картинка Image409

Рис. 9.3.4. Генератор пилообразного сигнала на основе интегратора.

Следующая схема (рис. 9.3.5) использует установку начального значения интегратора с помощью его выходного сигнала. В первый момент времени начальное значение выходного сигнала интегратора с помощью блока IC ( Initial Condition ) устанавливается равным нулю. По достижении выходным сигналом значения равного 1 блок Relational Operator подает сигнал сброса выходного сигнала интегратора на начальный уровень, при этом сигналом, задающим начальный уровень, оказывается инвертированный выходной сигнал интегратора (т.е. -1 ). Далее цикл работы схемы повторяется. В отличие от предыдущей схемы выходным сигналом генератора является двуполярный сигнал.

Zero order hold simulink что это. Image410. Zero order hold simulink что это фото. Zero order hold simulink что это-Image410. картинка Zero order hold simulink что это. картинка Image410

Рис. 9.3.5. Генератор двуполярного пилообразного сигнала

на основе интегратора.

9.3.3. Блок Memory

Выполняет задержку входного сигнала на один временной такт.

Initial condition – начальное значение выходного сигнала.

Inherit sample time (флажок) – Наследовать шаг модельного времени. Если этот флажок установлен, то блок Memory использует шаг модельного времени (Sample time ) такой же, как и в предшествующем блоке.

На рис. 9.3.6 показан пример использования блока Memory для задержки дискретного сигнала на один временной такт.

Zero order hold simulink что это. Image411. Zero order hold simulink что это фото. Zero order hold simulink что это-Image411. картинка Zero order hold simulink что это. картинка Image411

Рис. 9.3.6. Применение блока для задержки сигнала на один временной такт

9.3.4. Блок фиксированной задержки сигнала Transport Delay

Обеспечивает задержку входного сигнала на заданное время.

Time Delay — Время задержки сигнала (не отрицательное значение).

Initial input — Начальное значение выходного сигнала.

Buffer size — Размер памяти, выделяемой для хранения задержанного сигнала. Задается в байтах числом, кратным 8 (по умолчанию 1024 ).

Pade order (for linearization) — Порядок ряда Паде, используемого при аппроксимации выходного сигнала. Задается целым положительным числом.

В том случае, если начального значения объема памяти буфера не хватит для хранения задержанного сигнала, Simulink автоматически выделит дополнительную память. После завершения моделирования в командном окне MATLAB появится сообщение с указанием нужного размера буфера.

На рис. 9.3.7 показан пример использования блока Transport Delay для задержки прямоугольного сигнала на 0.5 с.

Zero order hold simulink что это. Image412. Zero order hold simulink что это фото. Zero order hold simulink что это-Image412. картинка Zero order hold simulink что это. картинка Image412

Рис. 9.3.7. Пример использования блока Transport Delay для задержки сигнала.

9.3.5. Блок управляемой задержки сигнала Variable Transport Delay

Выполняет задержку входного сигнала, заданную величиной сигнала управления.

Maximum delay — Максимальное значение времени задержки сигнала (не отрицательное значение).

Initial input — Начальное значение выходного сигнала.

Buffer size — Размер памяти, выделяемой для хранения задержанного сигнала. Задается в байтах числом, кратным 8 (по умолчанию 1024 ).

Pade order (for linearization) — Порядок ряда Паде, используемого при аппроксимации выходного сигнала. Задается целым положительным числом.

Zero order hold simulink что это. Image413. Zero order hold simulink что это фото. Zero order hold simulink что это-Image413. картинка Zero order hold simulink что это. картинка Image413

9.3.6. Блок передаточной функции Transfer Fcn

Блок передаточной характеристики Transfer Fcn задает передаточную функцию в виде отношения полиномов:

Zero order hold simulink что это. Image414. Zero order hold simulink что это фото. Zero order hold simulink что это-Image414. картинка Zero order hold simulink что это. картинка Image414,

nn и nd – порядок числителя и знаменателя передаточной функции,
num – вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.

Numerator — вектор или матрица коэффициентов полинома числителя

Absolute tolerance — Абсолютная погрешность.

Порядок числителя не должен превышать порядок знаменателя.

Zero order hold simulink что это. Image415. Zero order hold simulink что это фото. Zero order hold simulink что это-Image415. картинка Zero order hold simulink что это. картинка Image415

Рис. 9.3.8. Пример моделирования колебательного звена.

Если коэффициенты числителя заданы матрицей, то блок Transfer Fcn моделирует векторную передаточную функцию, которую можно интерпретировать как несколько передаточных функций имеющих одинаковые полиномы знаменателя, но разные полиномы числителя. При этом выходной сигнал блока является векторным и количество строк матрицы числителя задает размерность выходного сигнала.

На рис. 9.3.9 показан пример блока Transfer Fcn задающий векторную передаточную функцию. Там же показана модель полностью аналогичная рассматриваемой по своим свойствам, но состоящая из отдельных блоков Transfer Fcn.

Zero order hold simulink что это. Image416. Zero order hold simulink что это фото. Zero order hold simulink что это-Image416. картинка Zero order hold simulink что это. картинка Image416

Рис. 9.3.9. Пример моделирования векторной передаточной функции и ее аналог.

9.3.7. Блок передаточной функции Zero-Pole

Блок Zero-Pole определяет передаточную функцию с заданными полюсами и нулями:

Zero order hold simulink что это. Image417. Zero order hold simulink что это фото. Zero order hold simulink что это-Image417. картинка Zero order hold simulink что это. картинка Image417,

Z – вектор или матрица нулей передаточной функции (корней полинома числителя),
P – вектор полюсов передаточной функции (корней полинома знаменателя),
K – коэффициент передаточной функции, или вектор коэффициентов, если нули передаточной функции заданы матрицей. При этом размерность вектора K определяется числом строк матрицы нулей.

Zeros – Вектор или матрица нулей.

Poles – Вектор полюсов.

Gain – Скалярный или векторный коэффициент передаточной функции.

Absolute tolerance — Абсолютная погрешность.

Количество нулей не должно превышать число полюсов передаточной функции.

В том случае, если нули передаточной функции заданы матрицей, то блок Zero-Pole моделирует векторную передаточную функцию.

Нули или полюса могут быть заданы комплексными числами. В этом случае нули или полюса должны быть заданы комплексно-сопряженными парами полюсов или нулей, соответственно.

Начальные условия при использовании блока Zero-Pole полагаются нулевыми.

Zero order hold simulink что это. Image418. Zero order hold simulink что это фото. Zero order hold simulink что это-Image418. картинка Zero order hold simulink что это. картинка Image418

9.3.8. Блок модели динамического объекта State-Space

Блок создает динамический объект, описываемый уравнениями в пространстве состояний:

Zero order hold simulink что это. Image419. Zero order hold simulink что это фото. Zero order hold simulink что это-Image419. картинка Zero order hold simulink что это. картинка Image419,

Размерность матриц показана на рис. 9.3.11 (n – количество переменных состояния, m – число входных сигналов, r – число выходных сигналов).

Zero order hold simulink что это. Image319. Zero order hold simulink что это фото. Zero order hold simulink что это-Image319. картинка Zero order hold simulink что это. картинка Image319

Рис. 9.3.11. Размерность матриц блока State-Space

Initial condition – Вектор начальных условий.

Absolute tolerance — Абсолютная погрешность.

Zero order hold simulink что это. Image320. Zero order hold simulink что это фото. Zero order hold simulink что это-Image320. картинка Zero order hold simulink что это. картинка Image320

Zero order hold simulink что это. Image420. Zero order hold simulink что это фото. Zero order hold simulink что это-Image420. картинка Zero order hold simulink что это. картинка Image420

9.4. Discrete – дискретные блоки

9.4.1. Блок единичной дискретной задержки Unit Delay

Выполняет задержку входного сигнала на один шаг модельного времени.

Initial condition – Начальное значение для выходного сигнала.

Sample time – Шаг модельного времени.

Входной сигнал блока может быть как скалярным, так и векторным. При векторном входном сигнале задержка выполняется для каждого элемента вектора. Блок поддерживает работу с комплексными и действительными сигналами.

На рис. 9.4.1 показан пример использования блока для задержки дискретного сигнала на один временной шаг, равный 0.1с.

Zero order hold simulink что это. Image421. Zero order hold simulink что это фото. Zero order hold simulink что это-Image421. картинка Zero order hold simulink что это. картинка Image421

Рис. 9.4.1. Пример использования блока Unit Delay

9.4.2. Блок экстраполятора нулевого порядка Zero-Order Hold

Блок выполняет дискретизацию входного сигнала по времени.

Sample time – Величина шага дискретизации по времени.

Блок фиксирует значение входного сигнала в начале интервала квантования и поддерживает на выходе это значение до окончания интервала квантования. Затем выходной сигнал изменяется скачком до величины входного сигнала на следующем шаге квантования.

На рис. 9.4.2 показан пример использования блока Zero-Order Hold для формирования дискретного сигнала.

Zero order hold simulink что это. Image422. Zero order hold simulink что это фото. Zero order hold simulink что это-Image422. картинка Zero order hold simulink что это. картинка Image422

Рис. 9.4.2. Пример формирования дискретного сигнала с помощью блока Zero-Order Hold

Zero order hold simulink что это. Image423. Zero order hold simulink что это фото. Zero order hold simulink что это-Image423. картинка Zero order hold simulink что это. картинка Image423

Рис. 9.4.3. Использование блока Zero-Order Hold для согласования работы дискретных блоков.

9.4.3. Блок экстраполятора первого порядка First-Order Hold

Блок задает линейное изменение выходного сигнала на каждом такте дискретизации, в соответствии с крутизной входного сигнала на предыдущем интервале дискретизации.

Sample time – Величина шага дискретизации по времени.

Пример экстраполяции синусоидального сигнала этим блоком показан на рис. 9.4.4.

Zero order hold simulink что это. Image424. Zero order hold simulink что это фото. Zero order hold simulink что это-Image424. картинка Zero order hold simulink что это. картинка Image424

Рис. 9.4.4. Использование блока First-Order Hold

9.4.4. Блок дискретного интегратора Discrete-Time Integrator

Блок используется для выполнения операции интегрирования в дискретных системах.

Integration method – Метод численного интегрирования:

Метод использует аппроксимацию T/(z-1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
y(k) = y(k–1) + T*u(k–1),
y – выходной сигнал интегратора,
u – входной сигнал интегратора,
T – шаг дискретизации,
k – номер шага моделирования.

Backward Euler – Обратный метод Эйлера.

Метод использует аппроксимацию T*z/(z–1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
y(k) = y(k–1) + T*u(k).

Trapeziodal – Метод трапеций.

Метод использует аппроксимацию T/2*(z+1)/(z–1) передаточной функции 1/s. Выходной сигнал блока рассчитывается по выражению:
x(k) = y(k–1) + T/2 * u(k–1).

Sample time — Шаг дискретизации по времени.

Остальные параметры дискретного интегратора те же, что и у блока аналогового интегратора Integrator (библиотека Continuous ).

Zero order hold simulink что это. Image425. Zero order hold simulink что это фото. Zero order hold simulink что это-Image425. картинка Zero order hold simulink что это. картинка Image425

9.4.5. Дискретная передаточная функция Discrete Transfer Fсn

Блок Discrete Transfer Fcn задает дискретную передаточную функцию в виде отношения полиномов:

Zero order hold simulink что это. Image426. Zero order hold simulink что это фото. Zero order hold simulink что это-Image426. картинка Zero order hold simulink что это. картинка Image426,

m+1 и n+1 – количество коэффициентов числителя и знаменателя, соответственно.
num – вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.

Numerator — Вектор или матрица коэффициентов числителя

Denominator – Вектор коэффициентов знаменателя

Sample time — Шаг дискретизации по времени.

Порядок числителя не должен превышать порядок знаменателя.

Zero order hold simulink что это. Image321. Zero order hold simulink что это фото. Zero order hold simulink что это-Image321. картинка Zero order hold simulink что это. картинка Image321.

Шаг дискретизации выбран равным 0.5 с.

Zero order hold simulink что это. Image427. Zero order hold simulink что это фото. Zero order hold simulink что это-Image427. картинка Zero order hold simulink что это. картинка Image427

Рис. 9.4.6. Использование блока Discrete Transfer Fcn

9.4.6. Блок дискретной передаточной функции Discrete Zero-Pole

Блок Discrete Zero-Pole определяет дискретную передаточную функцию с заданными полюсами и нулями:

Zero order hold simulink что это. Image428. Zero order hold simulink что это фото. Zero order hold simulink что это-Image428. картинка Zero order hold simulink что это. картинка Image428,

Z – вектор или матрица нулей передаточной функции,
P – вектор полюсов передаточной функции,
K – коэффициент передаточной функции, или вектор коэффициентов, если нули передаточной функции заданы матрицей. При этом размерность вектора K определяется числом строк матрицы нулей.

Zeros – Вектор или матрица нулей.

Poles – Вектор полюсов.

Gain – Скалярный или векторный коэффициент передаточной функции.

Sample time — Шаг дискретизации по времени.

Количество нулей не должно превышать число полюсов передаточной функции.

В том случае, если нули передаточной функции заданы матрицей, то блок Discrete Zero-Pole моделирует векторную передаточную функцию.

Нули или полюса могут быть заданы комплексными числами. В этом случае нули или полюса должны быть заданы комплексно-сопряженными парами полюсов или нулей, соответственно.

Начальные условия при использовании блока Discrete Zero-Pole полагаются нулевыми.

Zero order hold simulink что это. Image322. Zero order hold simulink что это фото. Zero order hold simulink что это-Image322. картинка Zero order hold simulink что это. картинка Image322.

Шаг дискретизации выбран равным 0.5 с.

Zero order hold simulink что это. Image429. Zero order hold simulink что это фото. Zero order hold simulink что это-Image429. картинка Zero order hold simulink что это. картинка Image429

9.4.7. Блок дискретного фильтра Discrete Filter

Блок дискретного фильтра Discrete Filter задает дискретную передаточную функцию от обратного аргумента (1/z ):

Zero order hold simulink что это. Image323. Zero order hold simulink что это фото. Zero order hold simulink что это-Image323. картинка Zero order hold simulink что это. картинка Image323,

m+1 и n+1 – количество коэффициентов числителя и знаменателя, соответственно.
num – вектор или матрица коэффициентов числителя,
den – вектор коэффициентов знаменателя.

Numerator — Вектор или матрица коэффициентов числителя

Denominator –Вектор коэффициентов знаменателя

Sample time — Шаг дискретизации по времени.

Zero order hold simulink что это. Image324. Zero order hold simulink что это фото. Zero order hold simulink что это-Image324. картинка Zero order hold simulink что это. картинка Image324.

Шаг дискретизации выбран равным 0.5 с.

Zero order hold simulink что это. Image430. Zero order hold simulink что это фото. Zero order hold simulink что это-Image430. картинка Zero order hold simulink что это. картинка Image430

9.4.8. Блок модели динамического объекта Discrete State-Space

Блок создает динамический объект, описываемый уравнениями в пространстве состояний:

Zero order hold simulink что это. Image431. Zero order hold simulink что это фото. Zero order hold simulink что это-Image431. картинка Zero order hold simulink что это. картинка Image431,

x – вектор состояния,

u – вектор входных воздействий,

y – вектор выходных сигналов,

n – номер шага моделирования.

Размерность матриц показана на рис. 9.4.9 (n – количество переменных состояния, m – число входных сигналов, r – число выходных сигналов).

Zero order hold simulink что это. Image319. Zero order hold simulink что это фото. Zero order hold simulink что это-Image319. картинка Zero order hold simulink что это. картинка Image319

Рис. 9.4.9. Размерность матриц блока Discrete State-Space

Initial condition – Вектор начальных условий.

Sample time — Шаг дискретизации по времени.

Zero order hold simulink что это. Image325. Zero order hold simulink что это фото. Zero order hold simulink что это-Image325. картинка Zero order hold simulink что это. картинка Image325, Zero order hold simulink что это. Image326. Zero order hold simulink что это фото. Zero order hold simulink что это-Image326. картинка Zero order hold simulink что это. картинка Image326, Zero order hold simulink что это. Image327. Zero order hold simulink что это фото. Zero order hold simulink что это-Image327. картинка Zero order hold simulink что это. картинка Image327, Zero order hold simulink что это. Image328. Zero order hold simulink что это фото. Zero order hold simulink что это-Image328. картинка Zero order hold simulink что это. картинка Image328.

Zero order hold simulink что это. Image432. Zero order hold simulink что это фото. Zero order hold simulink что это-Image432. картинка Zero order hold simulink что это. картинка Image432

9.5.1. Блок ограничения Saturation

Выполняет ограничение величины сигнала.

Выходной сигнал блока равен входному если его величина не выходит за порог ограничения. По достижении входным сигналом уровня ограничения выходной сигнал блока перестает изменяться и остается равным порогу. На рис. 9.5.1 показан пример использования блока для ограничения синусоидального сигнала. На рисунке приводятся временные диаграммы сигналов и зависимость выходного сигнала блока от входного.

Zero order hold simulink что это. Image433. Zero order hold simulink что это фото. Zero order hold simulink что это-Image433. картинка Zero order hold simulink что это. картинка Image433

Рис. 9.5.1. Пример использования блока Saturation

9.5.2. Блок с зоной нечувствительности Dead Zone

Реализует нелинейную зависимость типа «зона нечувствительности (мертвая зона)».

Выходной сигнал блока вычисляется в соответствии со следующим алгоритмом:

Если величина входного сигнала находится в пределах зоны нечувствительности, то выходной сигнал блока равен нулю.

Если входной сигнал больше или равен верхнему входному порогу зоны нечувствительности, то выходной сигнал равен входному минус величина порога.

Если входной сигнал меньше или равен нижнему входному порогу зоны нечувствительности, то выходной сигнал равен входному минус величина порога.

На рис. 9.5.2 показан пример использования блока Dead Zone

Zero order hold simulink что это. Image434. Zero order hold simulink что это фото. Zero order hold simulink что это-Image434. картинка Zero order hold simulink что это. картинка Image434

Рис. 9.5.2. Пример использования блока Dead Zone

9.5.3. Релейный блок Relay

Реализует релейную нелинейность.

Zero order hold simulink что это. Image435. Zero order hold simulink что это фото. Zero order hold simulink что это-Image435. картинка Zero order hold simulink что это. картинка Image435

Рис. 9.5.3. Пример использования блока Relay

9.5.4. Блок ограничения скорости изменения сигнала Rate Limiter

Блок обеспечивает ограничение скорости изменения сигнала (первой производной).

Вычисление производной сигнала выполняется по выражению:

Zero order hold simulink что это. Image436. Zero order hold simulink что это фото. Zero order hold simulink что это-Image436. картинка Zero order hold simulink что это. картинка Image436,

Вычисленное значение производной сравнивается со значениями уровней ограничения скорости Rising slew rate и Falling slew rate. Если значение производной больше, чем значение параметра Rising slew rate, то выходной сигнал блока вычисляется по выражению:

Zero order hold simulink что это. Image437. Zero order hold simulink что это фото. Zero order hold simulink что это-Image437. картинка Zero order hold simulink что это. картинка Image437,

Если значение производной меньше, чем значение параметра Falling slew rate, то выходной сигнал блока вычисляется по выражению:

Zero order hold simulink что это. Image438. Zero order hold simulink что это фото. Zero order hold simulink что это-Image438. картинка Zero order hold simulink что это. картинка Image438,

Если значение производной лежит в пределах между нижним и верхним уровнями ограничения, то выходной сигнал блока равен входному:

Zero order hold simulink что это. Image439. Zero order hold simulink что это фото. Zero order hold simulink что это-Image439. картинка Zero order hold simulink что это. картинка Image439.

На рис. 9.5.4 показан пример использования блока Rate Limiter, при подаче на его вход прямоугольного периодического сигнала.

Zero order hold simulink что это. Image440. Zero order hold simulink что это фото. Zero order hold simulink что это-Image440. картинка Zero order hold simulink что это. картинка Image440

Рис. 9.5.4. Пример использования блока Rate Limiter

9.5.5. Блок квантования по уровню Quantizer

Блок обеспечивает квантование входного сигнала с одинаковым шагом по уровню.

На рис. 9.5.5 показан пример использования блока Quantizer, выполняющего квантование по уровню синусоидального сигнала. Шаг квантования задан равным 0.5.

Zero order hold simulink что это. Image441. Zero order hold simulink что это фото. Zero order hold simulink что это-Image441. картинка Zero order hold simulink что это. картинка Image441

Рис. 9.5.5. Пример использования блока Quantizer

9.5.6. Блок сухого и вязкого трения Coulomb and Viscous Friction

Моделирует эффекты сухого и вязкого трения.

Coulomb friction value (Offset)– Величина сухого трения.

Coefficient of viscous friction (Gain) – Коэффициент вязкого трения.

Блок реализует нелинейную характеристику, соответствующую выражению:

Zero order hold simulink что это. Image442. Zero order hold simulink что это фото. Zero order hold simulink что это-Image442. картинка Zero order hold simulink что это. картинка Image442,

Zero order hold simulink что это. Image443. Zero order hold simulink что это фото. Zero order hold simulink что это-Image443. картинка Zero order hold simulink что это. картинка Image443

Рис. 9.5.6. Пример использования блока Coulomb and Viscous Friction

9.5.7. Блок люфта Backlash

Моделирует нелинейность типа “люфт”.

Deaband width – Ширина люфта.

Initial output – Начальное значение выходного сигнала.

Zero order hold simulink что это. Image444. Zero order hold simulink что это фото. Zero order hold simulink что это-Image444. картинка Zero order hold simulink что это. картинка Image444

Рис. 9.5.7. Пример использования блока Backlash

9.5.8. Блок переключателя Switch

Выполняет переключение входных сигналов по сигналу управления.

Threshold – Порог управляющего сигнала.

Zero order hold simulink что это. Image445. Zero order hold simulink что это фото. Zero order hold simulink что это-Image445. картинка Zero order hold simulink что это. картинка Image445

Рис. 9.5.8. Применение переключателя Switch

9.5.9. Блок многовходового переключателя Multiport Switch

Выполняет переключение входных сигналов по сигналу управления, задающему номер активного входного порта.

Number of inputs – Количество входов.

Блок многовходового переключателя Multiport Switch, пропускает на выход сигнал с того входного порта, номер которого равен текущему значению управляющего сигнала. Если управляющий сигнал не является сигналом целого типа, то блок Multiport Switch производит отбрасывание дробной части числа, при этом в командном окне Matlab появляется предупреждающее сообщение.

Zero order hold simulink что это. Image446. Zero order hold simulink что это фото. Zero order hold simulink что это-Image446. картинка Zero order hold simulink что это. картинка Image446

Рис. 9.5.9. Применение переключателя Multiport Switch.

На рис. 9.5.10 показан пример использования блока Multiport Switch при векторном сигнале. Временные диаграммы работы для данного примера совпадают с рассмотренными в предыдущем примере.

Zero order hold simulink что это. Image447. Zero order hold simulink что это фото. Zero order hold simulink что это-Image447. картинка Zero order hold simulink что это. картинка Image447

Рис. 9.5.10. Применение переключателя Multiport Switch при векторном входном сигнале.

9.5.10. Блок ручного переключателя Manual Switch

Выполняет переключение входных сигналов по команде пользователя.

Командой на переключение является двойной щелчок левой клавишей “мыши” на изображении блока. При этом изображение блока изменяется, показывая, какой входной сигнал в данный момент проходит на выход блока. Переключение блока можно выполнять как до начала моделирования, так и в процессе расчета.

Zero order hold simulink что это. Image448. Zero order hold simulink что это фото. Zero order hold simulink что это-Image448. картинка Zero order hold simulink что это. картинка Image448

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *