Weighted Sample Time

Поддержите вычисления, включающие шаг расчета

  • Библиотека:
  • Simulink / Атрибуты Сигнала

Описание

Блок Weighted Sample Time выводит взвешенный шаг расчета или взвешенную частоту дискретизации. Поскольку блок Weighted Sample Time является реализацией Weighted Sample Time Math, можно также добавить, вычесть, умножить или разделить входной сигнал, u, взвешенным шагом расчета, Ts. Если входной сигнал непрерывен, Ts шаг расчета модели Simulink®. В противном случае, Ts шаг расчета дискретного входного сигнала. Если входной сигнал является постоянным, Simulink присваивает конечный шаг расчета блоку на основе его возможности соединения и контекста.

Вы задаете математическую операцию параметром Operation. Блок может вывести только взвешенный шаг расчета (Ts Only) или взвешенная частота дискретизации (1/Ts Only).

Войдите взвешивание включают параметр Weight value. Если вес, w, 1, то значение не появляется в уравнении на значке блока.

Совет

Можно использовать Weighted Sample Time и блоки Weighted Sample Time Math, чтобы извлечь шаг расчета из Сигнала Simulink. Для этого установите параметр Operation на Ts и Weight value к 1.0. В этой настройке блок выводит шаг расчета входного сигнала.

Блок вычисляет свой выход, использующий правила приоритета для операторов MATLAB®. См. Приоритет операторов (MATLAB) для получения информации. Например, если параметр Operation задает +, блок вычисляет выход с помощью этого уравнения:

u + (Ts * w)

Однако, если параметр Operation задает /, блок вычисляет выход с помощью этого уравнения:

(u / Ts) / w

Порты

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

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

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

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Вывод

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

Выведите взвешенный шаг расчета или частоту дискретизации входного сигнала, или выведите входной сигнал, настроенный взвешенным шагом расчета, Ts. Если входной сигнал непрерывен, Ts шаг расчета модели Simulink. В противном случае, Ts шаг расчета дискретного входного сигнала. Когда входной сигнал является постоянным, Simulink присваивает конечный шаг расчета блоку на основе его возможности соединения и контекста.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point

Параметры

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

Основной

Задайте операцию, чтобы использовать в корректировке входного сигнала. Можно выбрать: +, -, *, /, Ts Only, или 1/Ts Only.

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

Параметры блоков: TsamMathOp
Ввод: символьный вектор
Значения: '+' | '-' | '*' | '/' | 'Ts Only' | '1/Ts Only'
Значение по умолчанию: 'Ts Only'

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

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

Параметры блоков: weightValue
Ввод: символьный вектор
Значения: скаляр с действительным знаком
Значение по умолчанию: '1.0'

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

Результат (Ts * w)Тип выходных данных двух режимовБлокируйте выполнение
Степень 2, или целочисленное значение То же самое, когда Output data type является Inherit: Inherit via internal rule Одинаково эффективный в обоих режимах
Не степень 2 и не целочисленное значениеОтличающийсяБолее эффективный для оффлайнового режима масштабирования

Примечание

Когда параметр Implement using не отображается, значение по умолчанию операций к онлайновым вычислениям.

Зависимости

Чтобы включить этот параметр, установите Operation на * или /.

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

Параметры блоков: TsampMathImp
Ввод: символьный вектор
Значения: 'Online Calculations' | 'Offline Scaling Adjustment'
Значение по умолчанию: 'Online Calculations'

Атрибуты сигнала

Задайте тип данных для выхода.

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

Параметры блоков: OutDataTypeStr
Ввод: символьный вектор
Значения: 'Inherit: Inherit via internal rule | 'Inherit: Inherit via back propagation' | '<data type expression>'
Значение по умолчанию: 'Inherit: Inherit via internal rule'

Задайте округляющийся режим для операций фиксированной точки. Для получения дополнительной информации смотрите Округление (Fixed-Point Designer).

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

Зависимости

Чтобы включить этот параметр, установите Operation на +, -, *, или /. Если вы устанавливаете параметр Operation на * или /, необходимо также установить Implement using на Online Calculations.

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

Параметры блоков: RndMeth
Ввод: символьный вектор
Значения: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero'
Значение по умолчанию: 'Floor'

Задайте, насыщает ли переполнение или переносится.

ДействиеОбъяснениеПовлияйте на переполнениеПример

Установите этот флажок (on).

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

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

Максимальное значение, что int8 (8-битное целое число со знаком) тип данных может представлять, 127. Любой результат блочной операции, больше, чем это максимальное значение, вызывает переполнение 8-битного целого числа. С установленным флажком блок выход насыщает в 127. Точно так же блок выход насыщает в минимальном выходном значении-128.

Не устанавливайте этот флажок (off).

Вы хотите оптимизировать КПД своего сгенерированного кода.

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

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

Максимальное значение, что int8 (8-битное целое число со знаком) тип данных может представлять, 127. Любой результат блочной операции, больше, чем это максимальное значение, вызывает переполнение 8-битного целого числа. Со снятым флажком программное обеспечение интерпретирует вызывающее переполнение значение как int8, который может привести к непреднамеренному результату. Например, результат блока 130 (двоичный файл 1000 0010) выраженный как int8,-126.

Когда вы устанавливаете этот флажок, насыщение применяется к каждой внутренней операции на блоке, не только выходу или результату. Обычно, процесс генерации кода может обнаружить, когда переполнение не возможно. В этом случае генератор кода не производит код насыщения.

Зависимости

Чтобы включить этот параметр, установите Operation на +, -, *, или /. Если вы устанавливаете параметр Operation на * или /, необходимо также установить Implement using на Online Calculations.

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

Параметры блоков: SaturateOnIntegerOverflow
Ввод: символьный вектор
Значения: 'off' | 'on'
Значение по умолчанию: 'off'

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

Типы данных

Boolean | double | fixed point | integer | single

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

yes

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

no

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

no

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

no

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

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Преобразование фиксированной точки
Спроектируйте и симулируйте системы фиксированной точки с помощью Fixed-Point Designer™.

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