Использовать предварительно рассчитанные значения индекса и дроби для ускорения аппроксимации N-мерной функции
Таблицы Simulink/Lookup
Блок интерполяции с использованием Prelookup наиболее эффективен при использовании с блоком Prelookup. Блок Prelookup вычисляет индекс и дробь интервала, которые определяют, как его входное значение u относится к набору данных точек останова. Для интерполяции n-мерной таблицы введите результирующие значения индекса и дроби в блок интерполяции с использованием Prelookup. Эти два блока имеют распределенные алгоритмы. При объединении они выполняют ту же операцию, что и интегрированный алгоритм в блоке n-D Lookup Table. Однако блоки Prelookup и Interpolation Using Prelookup обеспечивают большую гибкость, которая может обеспечить более эффективное моделирование и генерацию кода. Дополнительные сведения см. в разделе Эффективность производительности.
Для использования блока «Интерполяция с использованием Prelookup» необходимо указать набор значений табличных данных непосредственно в диалоговом окне или ввести значения в входной порт T. Как правило, эти значения таблицы соответствуют наборам данных точек останова, указанным в блоках Prelookup. Блок интерполяции с использованием Prelookup генерирует выходные данные путем поиска или оценки значений таблицы на основе значений индекса и доли интервала, подаваемых из блоков Prelookup. Метки для индекса и доли интервала отображаются как k и f на значке блока Интерполяция с использованием Prelookup.
| Когда входы для индекса и доли интервала... | Блок интерполяции с использованием Prelookup... |
|---|---|
| Сопоставление со значениями в наборах данных точек останова | Вывод значения таблицы на пересечении контрольных точек строки, столбца и более высокого размера |
| Не сопоставлять со значениями в наборах данных точек останова, но находиться в пределах диапазона | Интерполяция соответствующих значений таблицы с помощью выбранного метода интерполяции |
| Не сопоставлять со значениями в наборах данных точек останова и выйти за пределы диапазона | Экстраполяция выходного значения с помощью выбранного метода экстраполяции |
Параметр Number of sub-table selection dimensions можно использовать для указания того, что интерполяция выполняется только для подмножества данных таблицы. Чтобы активировать этот режим интерполяции, установите для этого параметра положительное целое число. Это значение определяет количество выбираемых измерений, начиная с высшего измерения табличных данных для алгоритма «столбец-мажор» по умолчанию. Поэтому значение должно быть меньше или равно числу измерений таблицы.
Для основных алгоритмов строк интерполяция начинается с первого или самого низкого измерения данных таблицы.
Для ненулевых значений поведение выбора субтаблицы оптимизируется для макета основной строки при выборе параметра Math and Data Types > Use algoriths optimized for row-major array layout configuration parameter.
Предположим, что в блоке Интерполяция с использованием Prelookup имеются 3-D данные таблицы. Это поведение относится к алгоритму «основной столбец».
| Количество выбранных измерений | Действие блока | Внешний вид блока |
|---|---|---|
| 0 | Интерполирует всю таблицу и не активирует выбор вложенных таблиц | Не изменяется |
| 1 | Интерполяция первых двух размеров и выбор третьего размера | Отображение входного порта с меткой s3 используется для выбора и интерполяции таблиц 2-D |
| 2 | Интерполяция первого размера и выбор второго и третьего размеров | Отображение двух портов ввода с метками s2 и s3 используется для выбора и интерполяции таблиц 1-D |
При выборе вложенной таблицы используется индексирование на основе нуля. Для примера интерполяции подмножества данных таблицы введите sldemo_bpcheck в командной строке MATLAB ®.
Для интерполяции 2-D или n-D без поддающегося выбора алгоритмы «столбец-большая» и «строка-большая» могут отличаться в порядке выходных вычислений, вызывая небольшие различия в числовых результатах.
k1 - Индекс, k, для первого измерения таблицыОтсчитываемый от нуля индекс, k, указание интервала, содержащего входные данные u для первого измерения таблицы.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
f1 - Фракция, f, для первого измерения таблицыФракция, f, представляющее нормализованное положение входа в интервале, k, для первого измерения таблицы.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
kn - Индекс, k, для n-й размер таблицыОтсчитываемый от нуля индекс, k, указание интервала, содержащего входные данные u для n-е измерение таблицы.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
fn - Фракция, f, для n-й размер таблицыФракция, f, представляющее нормализованное положение входа в интервале, k, для n-е измерение таблицы.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
kf1 - Вход, содержащий индекс k и дробь fbus objectВходы в порт kf1 содержат индекс k и дробь f указан как объект шины.
Чтобы включить этот порт, установите флажок Require index and fraction as a bus.
Количество доступных kf входные порты зависят от значения параметров Number of dimensions и Number of sub-table selection dimensions.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point | bus
kfn - Вход, содержащий индекс k и дробь fbus objectВходы в порт kfn содержат индекс k и дробь f для n-го размера входного сигнала, заданного как объект шины.
Чтобы включить этот порт, установите флажок Require index and fraction as a bus.
Количество доступных входных портов kf зависит от значения параметров Number of dimensions и Number of sub-table selection dimensions.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point | bus
sm - Выбор и интерполяция подмножества данных таблицыДля алгоритма «столбец-мажор» блок использует входы в sm, sm + 1,... Порт sn для выполнения выбора и интерполяции внутри подчиненных таблиц .m сопоставляется с измерением m таблицы. n равно числу размеров.
Для алгоритма основной строки блок использует входы в порт s1, s2,..., sm для выполнения выбора и интерполяции внутри субтаблиц. m сопоставляется с измерением m таблицы. m равняется количеству измерений выбора подкаталогов.
Чтобы включить этот порт, размеры выбора количества подкаталогов должны быть положительным целым числом, меньшим или равным числу измерений.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus
T - Табличные данныеЗначения данных таблицы, предоставляемые в качестве входных данных для порта T. Обычно эти значения таблицы соответствуют наборам данных точек останова, указанным в блоках Prelookup. Блок интерполяции с использованием Prelookup генерирует выходные данные путем просмотра или оценки значений таблицы на основе индекса (k) и дробь интервала (f) значения, подаваемые из блоков Prelookup.
Чтобы включить этот порт, установите для параметра Source значение Input port.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Port_1 - Аппроксимация N-мерной функцииАппроксимация N-мерной функции, вычисленная путем интерполяции (или экстраполяции) табличных данных с использованием значений из входного индекса, kи дробь, f.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
Number of dimensions - Количество измерений табличных данных2 (по умолчанию) | целое число от 1 до 30Укажите количество измерений, которые должны иметь данные таблицы. Число измерений определяет количество независимых переменных для таблицы.
| Чтобы указать... | Сделай это... |
|---|---|
|
1, 2, 3 или 4 |
Выберите значение из раскрывающегося списка. |
|
Большее количество табличных измерений |
Введите положительное целое число непосредственно в поле. Максимальное количество табличных размеров, поддерживаемых данным блоком, составляет 30. |
Параметр блока:
NumberOfTableDimensions |
| Текст: символьный вектор |
Значения:
'1' | '2' | '3' |'4' | ... | '30' |
По умолчанию:
'2' |
Require index and fraction as bus - Индексные и дробные входы могут быть объединены в шинеoff (по умолчанию) | onУстановите этот флажок, чтобы объединить входы индексов и дробей в шине.
Чтобы включить блок Prelookup для подачи входных данных в блок Interpolation Using Prelookup, установите:
Выбор вывода в Index and fraction as bus
Вывод в Bus: <object name>, где <object name> должно быть допустимым именем объекта шины, доступным для модели
Независимо от установки этого флажка, порт выбора всегда работает в режиме, отличном от bus.
Параметр блока:
RequireIndexFractionAsBus |
| Текст: символьный вектор |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Specification - Выбор способа ввода данных таблицыExplicit values (по умолчанию) | Lookup table objectУкажите, следует ли вводить данные таблицы напрямую или использовать объект таблицы подстановки. Если для этого параметра задано значение:
Explicit valuesпараметры «Источник» и «Значение» отображаются в диалоговом окне.
Lookup table object, параметр «Имя» отображается в диалоговом окне.
Параметр блока:
TableSpecification |
| Текст: символьный вектор |
Значения:
'Explicit values' | 'Lookup table object' |
По умолчанию:
'Explicit values' |
Source - Источник данных таблицыDialog (по умолчанию) | Input portУкажите, следует ли вводить данные таблицы в диалоговом окне или наследовать данные из входного порта. Если для параметра Источник задано значение:
Dialog, введите данные таблицы в текстовом поле в поле «Значение»
Input port, убедитесь, что восходящий сигнал подает данные таблицы на входной порт таблицы
Чтобы включить этот параметр, установите для параметра Спецификация значение Explicit values.
Параметр блока:
TableSource |
| Текст: символьный вектор |
Значения:
'Dialog' | 'Input port' |
По умолчанию:
'Dialog' |
Value - Укажите значения табличных данныхsqrt([1:11]' * [1:11]) (по умолчанию) | многомерный массив табличных данныхУкажите данные таблицы как N-D массив, где N - значение параметра Number of dimensions. Можно отредактировать блок-схему без указания матрицы правильных размеров, введя пустую матрицу ([]) или неопределенной переменной рабочей области в поле редактирования «Значение». Сведения о построении многомерных массивов в MATLAB см. в разделе Многомерные массивы.
Если для параметра «Источник» задано значение Input portубедитесь, что восходящий сигнал передает данные таблицы на входной порт T. Размер данных таблицы должен соответствовать числу измерений таблицы. Для этой опции блок наследует атрибуты таблицы от входного порта T.
Для редактирования таблиц подстановки с помощью редактора таблиц подстановки нажмите кнопку «Изменить» (см. раздел «Редактирование таблиц подстановки»).
Чтобы включить этот параметр и явно указать значения таблицы в диалоговом окне, необходимо задать для параметра Спецификация значение Explicit values и источник в Dialog.
Параметр блока:
Table |
| Текст: символьный вектор |
Значения:
scalar, vector, matrix, or N-D array |
По умолчанию:
'sqrt([1:11]' * [1:11])' |
Name - Наименование Simulink.LookupTable объектSimulink.LookupTable objectУкажите имя Simulink.LookupTable объект. Объект таблицы подстановки ссылается на объекты точек останова Simulink ®. Если Simulink.LookupTable объект не существует, нажмите кнопку действия
и выберите Создать. Соответствующие параметры нового объекта таблицы подстановки автоматически заполняются информацией о блоке.
Чтобы включить этот параметр, установите для параметра Спецификация значение Lookup table object.
Параметр блока:
LookupTableObject |
| Текст: символьный вектор |
Значение:
Simulink.LookupTable object |
По умолчанию:
'' |
Interpolation method - Выбрать Linear point-slope, Flat, Nearest, или Linear LagrangeLinear point-slope (по умолчанию) | Nearest | Flat | Linear LagrangeУкажите метод, используемый блоком для интерполяции данных таблицы. Можно выбрать Linear point-slope, Flat, Nearest, или Linear Lagrange. Дополнительные сведения см. в разделе Методы интерполяции.
Параметр блока:
InterpMethod |
| Текст: символьный вектор |
Значения:
'Flat' | 'Linear point-slope' | 'Nearest' | 'Linear Lagrange' |
По умолчанию:
'Linear point-slope' |
Extrapolation method - Метод обработки входных данных, выходящих за пределы диапазона набора данных точек остановаLinear (по умолчанию) | ClipУкажите метод, используемый блоком для экстраполяции значений для всех входных данных, которые выходят за пределы диапазона набора данных точек останова. Можно выбрать Clip или Linear. Дополнительные сведения см. в разделе Методы экстраполяции.
Если метод экстраполяции Linearзначение экстраполяции вычисляется на основе выбранного метода линейной интерполяции. Например, если метод интерполяции является методом линейного лагранжа, метод экстраполяции наследует уравнение линейного лагранжа для вычисления экстраполированного значения.
Чтобы включить параметр метода экстраполяции, задайте для метода интерполяции значение Linear.
Блок интерполяции с использованием Prelookup не поддерживает Linear экстраполяция, когда входные или выходные сигналы определяют целочисленные или фиксированные типы данных.
Параметр блока:
ExtrapMethod |
| Текст: символьный вектор |
Значения:
'Clip' | 'Linear' |
По умолчанию:
'Linear' |
Valid index input may reach last index - Разрешить входам доступ к последним элементам табличных данныхoff (по умолчанию) | onУкажите способ ввода блоков для индекса (k) и дробь интервала (f) получить доступ к последним элементам n-мерных табличных данных. Значения индекса основаны на нуле.
Этот флажок является релевантным, если входной индекс равен или больше последнего индекса таблицы для этого измерения. Из-за округления установка и снятие этого флажка может привести к различным результатам для последнего индекса между моделированием и генерацией кода.
| Флажок | Поведение блока |
|---|---|
|
|
Возвращает значение последнего элемента в измерении его таблицы, когда:
|
|
|
Возвращает значение последнего элемента в измерении его таблицы, когда:
|
Этот флажок отображается только в том случае, если:
Метод интерполяции: Linear point-slope или Linear Lagrange
Метод экстраполяции: Clip
Совет
При выборе параметра "Допустимый ввод индекса может достигать последнего индекса для блока интерполяции с использованием предварительного включения" необходимо также выбрать параметр "Использовать последнюю точку останова для ввода на уровне или выше верхнего предела для всех блоков предварительного включения, которые его подают. Это действие позволяет блокам использовать одно и то же соглашение об индексировании при обращении к последним элементам их наборов данных точек останова и таблиц.
Параметр блока:
ValidIndexMayReachLast |
| Текст: символьный вектор |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Diagnostic for out-of-range input - Блокировать действие, когда входной сигнал выходит за пределы диапазонаNone (по умолчанию) | Warning | ErrorУкажите, следует ли выводить предупреждение или ошибку, если входные данные выходят за пределы допустимого диапазона. Варианты включают в себя:
None - Нет ответа.
Warning - Вывод предупреждения и продолжение моделирования.
Error - завершение моделирования и отображение ошибки.
Параметр блока: DiagnosticForOutOfRangeInput |
| Текст: символьный вектор |
Значения: 'None' | 'Warning' | 'Error' |
По умолчанию: 'None' |
Number of sub-table selection dimensions - Количество размеров выходного вычислительного поднабора0 (по умолчанию) | положительное целое число, меньшее или равное числу табличных измеренийУкажите количество размеров вложенной таблицы, используемой блоком для вычисления выходных данных. Следуйте следующим правилам:
Чтобы включить выбор вложенных таблиц, введите положительное целое число.
Это целое число должно быть меньше или равно числу измерений таблицы.
Чтобы отключить выбор вложенных таблиц, введите 0 для интерполяции всей таблицы.
Для ненулевых значений поведение выбора субтаблицы оптимизируется для макета основной строки при выборе параметра Math and Data Types > Use algoriths optimized for row-major array layout configuration parameter.
Дополнительные сведения см. в разделе Как блок интерполирует подмножество табличных данных.
Параметр блока:
NumSelectionDims |
| Текст: символьный вектор |
Значения:
'0' | '1' | '2' | '3' | '4' | ... | Number of table dimensions |
По умолчанию:
'0' |
Remove protection against out-of-range index in generated code - Удалить код для проверки входов индекса за пределами диапазонаoff (по умолчанию) | on| Флажок | Результат | Когда использовать |
|---|---|---|
|
| Созданный код не включает условные операторы для проверки входов индекса за пределами диапазона. Когда вход |
Для эффективности кода |
|
|
Созданный код включает условные операторы для проверки входов индекса за пределами диапазона. |
Для критически важных для безопасности приложений |
Если введенные данные находятся вне диапазона, можно установить флажок Удалить защиту от индекса вне диапазона в сгенерированном коде для обеспечения эффективности кода. По умолчанию этот флажок снят. Для критически важных для безопасности приложений не устанавливайте этот флажок. Если необходимо установить флажок Удалить защиту от индекса вне диапазона в сгенерированном коде, сначала проверьте, что входные данные модели находятся в диапазоне. Например:
Снимите флажок Удалить защиту от индекса вне диапазона в сгенерированном коде.
Установите для входного параметра Diagnostic for out-of-range значение Error.
Моделирование модели в обычном режиме.
Если имеются ошибки вне диапазона, исправьте их, чтобы они находились в диапазоне, и запустите моделирование снова.
Если моделирование больше не создает ошибки ввода вне диапазона, установите флажок Удалить защиту от индекса вне диапазона в сгенерированном коде.
Примечание
При установке флажка Remove protection against exo-of-range index in generated code и вводе k или f находится вне диапазона, поведение не определено для сгенерированного кода.
В зависимости от приложения можно выполнить следующие проверки Model Advisor для проверки использования этого флажка.
По продукту > Embedded Coder > Определение блоков таблицы поиска, которые создают дорогостоящий код проверки за пределами диапазона
По продукту > Simulink Check > Modeling Standards > DO-178C/DO-331 Checks > Проверка использования блоков таблицы подстановки
Дополнительные сведения о модуле Model Advisor см. в разделе Выполнение проверок модуля Model Advisor.
Кроме того, чтобы определить, безопасно ли устанавливать этот флажок, если у вас есть лицензия Simulink Design Verifier™, попробуйте использовать проверку обнаружения нарушений диапазона ввода блоков (Simulink Design Verifier).
Этот флажок не влияет на созданный код, если одно из следующих значений имеет значение true:
Блок Prelookup подает значения индекса в блок интерполяции с использованием Prelookup.
Поскольку значения индекса из блока Prelookup всегда действительны, код проверки не требуется.
Тип данных ввода k ограничивает данные допустимыми значениями индекса.
Например, неподписанные целочисленные типы данных гарантируют неотрицательные значения индекса. Следовательно, неподписанные входные значения k не требуется код проверки для отрицательных значений.
Параметр блока:
RemoveProtectionIndex |
| Текст: символьный вектор |
Значения:
'off' | 'on' |
По умолчанию:
'off' |
Sample time - Укажите время выборки в качестве значения, отличного от -1-1 (по умолчанию) | скаляр | векторУкажите время выборки в качестве значения, отличного от -1. Дополнительные сведения см. в разделе Указание времени образца.
Этот параметр не отображается, если для него явно не задано значение, отличное от -1. Дополнительные сведения см. в разделе Блоки, для которых образец времени не рекомендуется.
Параметр блока:
SampleTime |
| Текст: символьный вектор |
| Значения: скаляр или вектор |
По умолчанию:
'-1' |
Table data - Тип данных значений таблицыInherit: Same as output (по умолчанию) | Inherit: Inherit from 'Table data' | double | single | int8 | uint8 | int16 | uint16 | int32 | uint32 | int64 | uint64 | fixdt(1,16) | fixdt(1,16,0) | fixdt(1,16,2^0,0) | <data type expression>Укажите тип данных таблицы. Можно установить для него значение:
Правило, наследующее тип данных, например: Inherit: Same as output
Имя встроенного типа данных, например: single
Имя объекта типа данных, например, Simulink.NumericType объект
Выражение, которое вычисляет тип данных, например: fixdt(1,16,0)
Нажмите кнопку Показать помощник по типам данных
, чтобы отобразить помощник по типам данных, который помогает задать тип данных таблицы.
Совет
Укажите тип данных таблицы, отличный от типа выходных данных для следующих случаев:
Меньшие требования к памяти для хранения табличных данных, использующих меньший тип, чем выходной сигнал
Совместное использование предписанных табличных данных между двумя блоками интерполяции с использованием Prelookup с различными типами выходных данных
Совместное использование пользовательских данных таблицы хранения в Simulink Coder™ сгенерированном коде для блоков с различными типами выходных данных
Параметр блока:
TableDataTypeStr |
| Текст: символьный вектор |
Значения:
'Inherit: Inherit from table data' | 'Inherit: Same as output' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
По умолчанию:
'Inherit: Same as input' |
Table minimum - Минимальное значение табличных данных[] (по умолчанию) | скалярУкажите минимальное значение для табличных данных как конечное, вещественное, двойное, скалярное. Значение по умолчанию: [] (не указано).
Параметр блока:
TableMin |
| Текст: символьный вектор |
| Значения: скаляр |
По умолчанию:
'[]' |
Table maximum - Максимальное значение табличных данных[] (по умолчанию) | скалярУкажите максимальное значение для табличных данных как конечное, вещественное, двойное, скалярное. Значение по умолчанию: [] (не указано).
Параметр блока:
TableMax |
| Текст: символьный вектор |
| Значения: скаляр |
По умолчанию:
'[]' |
Intermediate results - Тип данных промежуточных результатовInherit: Inherit via internal rule (по умолчанию) | Inherit: Same as output | double | single | int8 | uint8 | int16 | uint16 | int32 | uint32 | int64 | uint64 | fixdt(1,16) | fixdt(1,16,0) | fixdt(1,16,2^0,0) | <data type expression>Укажите тип данных промежуточных результатов. Можно установить для него значение:
Правило, наследующее тип данных, например: Inherit: Same as output
Имя встроенного типа данных, например: single
Имя объекта типа данных, например, Simulink.NumericType объект
Выражение, которое вычисляет тип данных, например: fixdt(1,16,0)
Нажмите кнопку Показать помощник по типам данных
, чтобы отобразить помощник по типам данных, который помогает задать атрибуты типов данных. Дополнительные сведения см. в разделе Определение типов данных с помощью помощника по типам данных.
Совет
Этот параметр используется для задания более высокой точности внутренних вычислений, чем для табличных или выходных данных.
Параметр блока:
IntermediateResultsDataTypeStr |
| Текст: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'Inherit: Same as output' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
По умолчанию:
'Inherit: Same as input' |
Output - Тип выходных данныхInherit: Inherit from 'Table data' (по умолчанию) | Inherit: Inherit via back propagation | double | single | int8 | uint8 | int16 | uint16 | int32 | uint32 | int64 | uint64 | fixdt(1,16) | fixdt(1,16,0) | fixdt(1,16,2^0,0) | <data type expression>Укажите тип выходных данных. Можно установить для него значение:
Правило, наследующее тип данных, например: Inherit: Inherit via back propagation
Имя встроенного типа данных, например: single
Имя объекта типа данных, например, Simulink.NumericType объект
Выражение, которое вычисляет тип данных, например: fixdt(1,16,0)
Нажмите кнопку Show data type assistant (Показать помощник по типам данных
) для отображения помощника по типам данных, который поможет задать тип выходных данных.
Для получения дополнительной информации см. раздел Типы данных управляющих сигналов.
Параметр блока:
OutDataTypeStr |
| Текст: символьный вектор |
Значения:
'Inherit: Inherit via back propagation' | 'Inherit: Inherit from table data' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
По умолчанию:
'Inherit: Inherit from table data' |
Output minimum - Минимальное значение, которое может вывести блок[] (по умолчанию) | скалярУкажите минимальное значение, которое блок должен выводить как конечный действительный скаляр. Значение по умолчанию: [] (не указано). Программное обеспечение Simulink использует это значение для выполнения следующих действий:
Проверка диапазона параметров (см. раздел Задание минимального и максимального значений для параметров блока).
Проверка диапазона моделирования (см. раздел Определение диапазонов сигналов).
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация кода, создаваемого на основе модели. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов моделирования, таких как SIL или внешний режим. Дополнительные сведения см. в разделе Оптимизация с использованием указанных минимального и максимального значений (встроенный кодер).
Параметр блока:
OutMin |
| Текст: символьный вектор |
| Значения: скаляр |
По умолчанию:
'[]' |
Output maximum - Максимальное значение, которое может вывести блок[] (по умолчанию) | скалярУкажите максимальное значение, которое блок должен выводить как конечный действительный скаляр. Значение по умолчанию: [] (не указано). Программное обеспечение Simulink использует это значение для выполнения следующих действий:
Проверка диапазона параметров (см. раздел Задание минимального и максимального значений для параметров блока).
Проверка диапазона моделирования (см. раздел Определение диапазонов сигналов).
Автоматическое масштабирование типов данных с фиксированной точкой.
Оптимизация кода, создаваемого на основе модели. Эта оптимизация может удалить алгоритмический код и повлиять на результаты некоторых режимов моделирования, таких как SIL или внешний режим. Дополнительные сведения см. в разделе Оптимизация с использованием указанных минимального и максимального значений (встроенный кодер).
Параметр блока:
OutMax |
| Текст: символьный вектор |
| Значения: скаляр |
По умолчанию:
'[]' |
Internal rule priority - Внутреннее правило для промежуточных расчетовSpeed (по умолчанию) | PrecisionУкажите внутреннее правило для промежуточных расчетов. Выбрать Speed для более быстрых вычислений. В этом случае может произойти потеря точности, обычно до 2 бит.
Параметр блока:
InternalRulePriority |
| Текст: символьный вектор |
Значения:
'Speed' | 'Precision' |
По умолчанию:
'Speed' |
Lock data type settings against changes by the fixed-point tools - Предотвращение переопределения типов данных инструментами с фиксированной точкойoff (по умолчанию) | onВыберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в этом блоке. Дополнительные сведения см. в разделе Блокировка параметров типа выходных данных (конструктор фиксированных точек).
Параметр блока: LockScale |
| Текст: символьный вектор |
Значения: 'off' | 'on' |
По умолчанию: 'off' |
Integer rounding mode - Режим округления для операций с фиксированной точкойFloor (по умолчанию) | Convergent | Ceiling | Nearest | Round | Simplest | ZeroУкажите режим округления для операций с фиксированной точкой. Дополнительные сведения см. в разделе Округление (конструктор фиксированных точек).
Параметры блока всегда округляются до ближайшего представимого значения. Для управления округлением параметра блока введите выражение с помощью функции округления MATLAB в поле маски.
Параметр блока:
RndMeth |
| Текст: символьный вектор |
Значения:
'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
По умолчанию:
'Floor' |
Saturate on integer overflow - Метод действия переполненияoff (по умолчанию) | onУкажите, будут ли переполнения насыщаться или переноситься.
| Действие | Объяснение | Влияние на переполнение | Пример |
|---|---|---|---|
|
Установите этот флажок ( |
Возможно переполнение модели, и требуется явная защита от насыщения в сгенерированном коде. |
Переполнения насыщаются минимальным или максимальным значением, которое может представлять тип данных. |
Максимальное значение, |
|
Не устанавливайте этот флажок ( |
Требуется оптимизировать эффективность созданного кода. Необходимо избегать чрезмерного указания того, как блок обрабатывает сигналы вне диапазона. Дополнительные сведения см. в разделе Устранение ошибок диапазона сигналов. |
Переполнение до соответствующего значения, представляемого типом данных. |
Максимальное значение, |
Если этот флажок установлен, насыщение применяется ко всем внутренним операциям блока, а не только к выводу или результату. Обычно процесс генерации кода может обнаруживать, когда переполнение невозможно. В этом случае генератор кода не создает код насыщения.
Параметр блока: SaturateOnIntegerOverflow |
| Текст: символьный вектор |
Значения:
'off' | 'on' |
По умолчанию: 'off' |
Типы данных |
|
Прямой проход |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулей |
|
Simulink PLC Coder™ имеет ограниченную поддержку блоков таблицы поиска. Кодер не поддерживает:
Количество размеров больше 2
Метод интерполяции кубического сплайна
Начать поиск по индексу с использованием предыдущего режима индексирования
Метод экстраполяции кубического сплайна
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.


