Вычисление производной в дискретном времени
Simulink/Дискретный
Блок Discrete Derivative вычисляет опционально масштабированную производную по дискретному времени следующим образом
где
и являются блочным входом и выходом на текущем временном шаге, соответственно.
- блок вход на предыдущем временном шаге.
является необязательным масштабным коэффициентом, заданным с помощью параметра Gain value.
- дискретный размер шага симуляции, который должен быть фиксирован.
Примечание
Не используйте этот блок в подсистемах с непериодическим триггером (для примера, непериодических подсистем вызова функций). Это строение приводит к неточным результатам.
Port_1
- Входной сигналВходной сигнал, заданный как скаляр, вектор или матрица.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
Port_1
- Масштабированная производная по дискретному времениОпционально масштабированная производная в дискретном времени, заданная в виде скаляра, вектора или матрицы. Для получения дополнительной информации о том, как блок вычисляет производную в дискретном времени, см. Описание. Тип данных выходного сигнала задается параметром Output data type.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
Gain value
- Масштабный коэффициент1.0
(по умолчанию) | скаляромМасштабный коэффициент, примененный к вычисленной производной, заданный как действительное скалярное значение.
Параметры блоков:
gainval
|
Тип: Вектор символов |
Значения: скаляр |
По умолчанию:
'1.0'
|
Initial condition for previous weighted input K*u/Ts
- Начальное условие0.0
(по умолчанию) | скаляромНачальное условие для предыдущего масштабированного входа, заданное как скаляр.
Параметры блоков:
ICPrevScaledInput
|
Тип: Вектор символов |
Значения: скаляр |
По умолчанию:
'0.0'
|
Input processing
- Задайте обработку на основе выборок или фреймовElements as channels (sample based)
(по умолчанию) | Columns as channels (frame based)
Укажите, выполняет ли блок обработку на основе выборок или фреймов:
Columns as channels (frame based)
- Обрабатывайте каждый столбец входа как отдельный канал (обработка на основе фрейма).
Примечание
Для обработки на основе фрейма требуется лицензия DSP System Toolbox™.
Для получения дополнительной информации смотрите Концепции на основе выборок и фреймов (DSP System Toolbox).
Elements as channels (sample based)
- Обработайте каждый элемент входа как отдельный канал (основанная на выборке обработка).
Используйте Input processing, чтобы определить, выполняет ли блок обработку на основе выборок или фреймов. Блок принимает основанные на кадрах сигналы для входа u
. Все другие входные сигналы должны быть основаны на дискретизации.
Входной сигнал u | Режим обработки входных параметров | Блок работает? |
---|---|---|
Основанный на выборке | Основанный на выборке | Да |
Основанный на системах координат | Нет, вызывает ошибку | |
Основанный на выборке | Основанный на системах координат | Да |
Основанный на системах координат | Да |
Для получения дополнительной информации об этих двух режимах обработки смотрите Концепции на основе выборок и фреймов (DSP System Toolbox).
Параметры блоков: InputProcessing |
Тип: Вектор символов |
Значения: 'Columns as channels (frame based)' | 'Elements as channels (sample based)' |
По умолчанию: 'Elements as channels (sample based)' |
Output minimum
- Минимальное выходное значение для проверки области значений[]
(по умолчанию) | скаляромБолее низкое значение выходной области значений, который Simulink® проверки.
Simulink использует минимум для выполнения:
Проверка области значений параметров (см. «Задание минимальных и максимальных значений для параметров блоков») для некоторых блоков.
Проверка области значений симуляции (см. «Задание диапазонов сигнала» и «Включение проверки области значений симуляции»).
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация кода, который вы генерируете из модели. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов симуляции, таких как SIL или режим external mode. Для получения дополнительной информации смотрите Оптимизировать используя указанные минимальное и максимальное значения (Embedded Coder).
Примечание
Output minimum не насыщает или не зажимает фактический выходной сигнал. Вместо этого используйте блок Saturation.
Параметры блоков: OutMin |
Тип: Вектор символов |
Значения: '[ ]' | скаляр |
По умолчанию: '[ ]' |
Output maximum
- Максимальное выходное значение для проверки области значений[]
(по умолчанию) | скаляромВерхнее значение выходной области значений, который Simulink проверяет.
Simulink использует максимальное значение для выполнения:
Проверка области значений параметров (см. «Задание минимальных и максимальных значений для параметров блоков») для некоторых блоков.
Проверка области значений симуляции (см. «Задание диапазонов сигнала» и «Включение проверки области значений симуляции»).
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация кода, который вы генерируете из модели. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов симуляции, таких как SIL или режим external mode. Для получения дополнительной информации смотрите Оптимизировать используя указанные минимальное и максимальное значения (Embedded Coder).
Примечание
Output maximum не насыщает или не зажимает фактический выходной сигнал. Вместо этого используйте блок Saturation.
Параметры блоков: OutMax |
Тип: Вектор символов |
Значения: '[ ]' | скаляр |
По умолчанию: '[ ]' |
Output data type
- Тип выходных данныхInherit: Inherit via internal rule
(по умолчанию) | Inherit: Inherit via back propagation
| double
| single
| int8
| uint8
| int16
| uint16
| int32
| uint32
| int64
| uint64
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
Задайте тип выходных данных. Вы можете установить его на:
Правило, которое наследует тип данных, например Inherit: Inherit via back propagation
Имя встроенного типа данных, например single
Имя объекта типа данных, например, Simulink.NumericType
объект
Выражение, которое вычисляется как тип данных, например fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, которая помогает вам задать атрибуты type данных. Для получения дополнительной информации смотрите Задать типы данных Используя Data Type Assistant.
Параметры блоков:
OutDataTypeStr
|
Тип: Вектор символов |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Inherit via back propagation' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' |
По умолчанию:
'Inherit: Inherit via internal rule'
|
Lock output data type setting against changes by the fixed-point tools
- Предотвратите переопределение типа выходных данных инструментами с фиксированной точкойoff
(по умолчанию) | on
Выберите этот параметр, чтобы предотвратить переопределение инструментами с фиксированной точкой типа данных Output, заданного на блоке. Для получения дополнительной информации смотрите Использование настройки типа выходных данных блокировки (Fixed-Point Designer).
Параметры блоков:
LockScale
|
Тип: Вектор символов |
Значения:
'off' | 'on'
|
По умолчанию:
'off'
|
Integer rounding mode
- Режим округления для операций с фиксированной точкойFloor
(по умолчанию) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
Задайте режим округления для операций с фиксированной точкой. Для получения дополнительной информации см. раздел Округление (Fixed-Point Designer).
Параметры блоков всегда округлятся до ближайшего представимого значения. Чтобы контролировать округление параметров блоков, введите выражение с помощью MATLAB® функция округления в поле маски.
Параметры блоков:
RndMeth
|
Тип: Вектор символов |
Значения:
'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
По умолчанию:
'Floor'
|
Saturate to max or min when overflows occur
- Метод действия переполненияoff
(по умолчанию) | on
Когда вы устанавливаете этот флажок, переполнения насыщаются до максимального или минимального значения, которое может представлять тип данных. В противном случае переполнения переносятся.
Когда вы устанавливаете этот флажок, насыщение применяется к каждой внутренней операции на блоке, а не только к выходу или результату. В целом процесс генерации кода может обнаружить, когда переполнение невозможно. В этом случае генератор кода не производит код насыщения.
Параметры блоков:
DoSatur
|
Тип: Вектор символов |
Значения:
'off' | 'on'
|
По умолчанию:
'off'
|
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Зависит от абсолютного времени при использовании в иерархии триггируемой подсистемы.
Сгенерированный код опирается на memcpy
или memset
функции (string.h
) при определенные обстоятельства.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.