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
Для просмотра документации необходимо авторизоваться на сайте