Производная

Выведите производную времени входного параметра

  • Библиотека:
  • Simulink / Непрерывный

Описание

Блок Derivative аппроксимирует производную входного сигнала u относительно времени симуляции t. Вы получаете приближение

dudt,

путем вычисления числового различия Δu/Δt, то, где Δu является изменением во входном значении и Δt, является изменением вовремя начиная с предыдущего моделирования (главный) временной шаг.

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

Точное отношение между вводом и выводом этого блока:

y (t) = ΔuΔt=u (t) −u (Tprevious)t−Tprevious|t> Tprevious,

где t является текущим временем симуляции, и Tprevious является временем прошлого выходного раза моделирования. Последний совпадает со временем последнего главного временного шага.

Блок Derivative вывод может быть чувствителен к динамике целой модели. Точность выходного сигнала зависит от размера временных шагов, взятых в моделировании. Меньшие шаги допускают более сглаженную и более точную выходную кривую от этого блока. Однако различающийся с блоками, которые имеют непрерывные состояния, решатель не делает меньшие шаги, когда входной параметр к этому блоку изменяется быстро. В зависимости от динамики ведущего сигнала и модели, выходной сигнал этого блока может содержать неожиданные колебания. Эти колебания происходят, в основном, из-за ведущего вывода сигнала и размера шага решателя.

Из-за этой чувствительности структурируйте свои модели, чтобы использовать интеграторы (такие как блоки Интегратора) вместо Производных блоков. Блоки интегратора имеют состояния, которые позволяют решателям настраивать размер шага и улучшать точность моделирования. Смотрите Модель Схемы для примера выбора математической модели лучшей формы, чтобы избегать использования Производных блоков в ваших моделях.

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

Если входной параметр к этому блоку является дискретным сигналом, непрерывная производная входного параметра показывает импульс, когда значение входного параметра изменяется. В противном случае это 0. Также можно задать дискретную производную дискретного сигнала с помощью различия последних двух значений сигнала:

y (k) =1Δt (u (k) −u (k−1))

.

Принятие z-преобразования этого уравнения результаты:

Y (z) u (z) =1−z−1Δt=z−1Δt⋅z.

Блок Discrete Derivative моделирует это поведение. Используйте этот блок вместо блока Derivative, чтобы аппроксимировать производную дискретного времени дискретного сигнала.

Порты

Входной параметр

развернуть все

Сигнал, который будет дифференцироваться, заданный как действительный скаляр или вектор.

Типы данных: double

Вывод

развернуть все

Производная времени входного сигнала, заданного как действительный скаляр или вектор. Входной сигнал дифференцируется относительно времени как:

y (t) = ΔuΔt=u (t) −u (Tprevious)t−Tprevious|t> Tprevious,

где t является текущим временем симуляции, и Tprevious является временем прошлого выходного раза моделирования. Последний совпадает со временем последнего главного временного шага.

Типы данных: double

Параметры

развернуть все

Точная линеаризация блока Derivative является трудной, потому что динамическое уравнение для блока является y=u˙, который вы не можете представлять как система пространства состояний. Однако можно аппроксимировать линеаризацию путем добавления полюса к блоку Derivative, чтобы создать передаточную функцию s / (c∗s+1). Сложение полюса фильтрует сигнал прежде, чем дифференцировать его, который удаляет эффект шума.

Значение по умолчанию inf соответствует линеаризации 0.

Советы

  • Как лучшая практика, измените значение c к 1fb, где fb является сопряженной частотой фильтра.

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

Программируемое использование

Блочный параметр: CoefficientInTFapproximation
Ввод: вектор символа, строка
Значения: Inf
Значение по умолчанию: Inf

Блокируйте характеристики

Типы данных

'double'

Прямое сквозное соединение

No

Многомерные сигналы

No

Сигналы переменного размера

No

Обнаружение пересечения нулем

No

Расширенные возможности

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

Была ли эта тема полезной?