Derivative

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

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

  • Derivative block

Описание

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

dudt,

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

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

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

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

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

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

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

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

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

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

.

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

Y(z)u(z)=1z1Δt=z1Δtz.

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

Порты

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

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

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

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

Вывод

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

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

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

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

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

Параметры

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

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

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

Советы

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

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

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

Параметры блоков: CoefficientInTFapproximation
Ввод: вектор символов, строка
Значения: 'inf'
Значение по умолчанию: 'inf'

Характеристики блока

Типы данных

double

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

no

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

no

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

no

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

no

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

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