Вычислите индекс и часть для блока Interpolation Using Prelookup
Simulink / Интерполяционные таблицы
HDL Coder / Интерполяционные таблицы
Блок Prelookup вычисляет индекс и часть интервала, которые задают, как ее входное значение u
относится к набору данных точки останова. Кладка блоков Перед поиском лучше всего с блоком Interpolation Using Prelookup. Питайте получившийся индекс и дробные значения в блок Interpolation Using Prelookup, чтобы интерполировать n-мерную таблицу. Эти два блока распределили алгоритмы. Когда объединено вместе, они выполняют ту же операцию как интегрированный алгоритм в n-D блоке Lookup Table. Однако Предварительный поиск и Интерполяция Используя блоки Перед поиском предлагают большую гибкость и более эффективную симуляцию и генерацию кода, чем n-D блок Lookup Table. Для получения дополнительной информации смотрите Эффективность Производительности.
Чтобы использовать блок Prelookup, необходимо задать набор значений точки останова. Вы выбираете, задать ли значения точки останова непосредственно на диалоговом окне или путем питания значений входной порт bp
путем установки параметра Source на Dialog
или Input port
. Как правило, этот набор данных точки останова соответствует одной размерности табличных данных в блоке Interpolation Using Prelookup. Блок Prelookup генерирует пару выходных параметров для каждого входного значения u
путем вычисления:
Индекс элемента набора точки останова, который меньше чем или равен u
и формирует интервал, содержащий u
Часть интервала в области значений 0 ≤ f <1, представляя нормированное положение u
на интервале точки останова между индексом и следующим индексным значением для входа в области значений
Например, если набором данных точки останова является [0 5 10 20 50 100]
и входное значение, u
равняется 55, индекс равняется 4, и дробное значение 0.1. Метки для индекса и части интервала появляются как k и f на значке блока Prelookup. Индексное значение является базирующимся нулем.
Часть интервала может быть отрицательной или больше, чем 1
для входа из области значений. Смотрите параметры блоков Extrapolation method для получения дополнительной информации.
Port_1
— Входной сигнал, u
Блок Prelookup принимает сигналы с действительным знаком любого типа числовых данных, что Simulink® поддерживает, кроме булевской переменной. Блок Prelookup поддерживает типы данных с фиксированной точкой для данных о точке останова и сигналов.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| fixed point
| bus
k
Индекс интервала, содержащего вход, u
Основанный на нуле индекс, k, является целым числом с действительным знаком, которое задает интервал, содержащий вход, u
.
Чтобы включить этот порт, установите Output selection на Index and fraction
или Index only
.
Типы данных: int8
| int16
| int32
| uint8
| uint16
| uint32
| fixed point
f
Часть, представляющая нормированное положение входа, u
, в интервале, kЧасть, f, представляет нормированное положение входа, u
, в интервале k.
Чтобы включить этот порт, установите Output selection на Index and fraction
.
Типы данных: single
| double
| int8
| int16
| int32
| uint8
| uint16
| uint32
| fixed point
Port_2
— Соедините шиной содержащий индекс, k, и часть, fВыводя индекс, k и дробный f, когда объект шины может помочь упростить модель.
Чтобы включить этот порт, установите Output selection на Index and fraction as bus
.
Типы данных: bus
Specification
— Выберите, как ввести данные о точке остановаExplicit values
(значение по умолчанию) | Even spacing
| Breakpoint object
Если вы устанавливаете этот параметр на:
Explicit values
, Source и параметры Value видимы на диалоговом окне.
Even spacing
, First point, Spacing и параметры Number of points видимы на диалоговом окне.
Breakpoint object
, параметр Name видим на диалоговом окне.
Параметры блоков:
BreakpointsSpecification |
Ввод: символьный вектор |
Значения:
'Explicit values' | 'Even spacing' | 'Breakpoint object' |
Значение по умолчанию:
'Explicit values' |
Source
— Задайте источник данных о точке остановаDialog
(значение по умолчанию) | Input port
Если вы устанавливаете Source на:
Dialog
, задайте данные о точке останова под Value.
Input port
, проверьте, что восходящий сигнал снабжает данными о точке останова к входному порту bp
. Каждый набор данных точки останова должен быть строго монотонно увеличивающимся вектором, который содержит два или больше элемента. Для этой опции ваш блок наследовал атрибуты точки останова от входного порта bp
.
Чтобы включить этот параметр, установите Specification на Explicit values
.
Параметры блоков:
BreakpointsDataSource |
Ввод: символьный вектор |
Значения:
'Dialog' | 'Input port' |
Значение по умолчанию:
'Dialog' |
Значение
Установите точки останова значения данных[10:10:110]
(значение по умолчанию)Явным образом задайте данные о точке останова. Каждый набор данных точки останова должен быть строго монотонно увеличивающимся вектором, который содержит два или больше элемента. Для этой опции вы задаете дополнительные атрибуты точки останова на панели Data Types.
Чтобы открыть Редактор Интерполяционной таблицы, нажмите Edit (см. Интерполяционные таблицы Редактирования).
Когда вы устанавливаете Specification на Explicit values
и Source к Input port
, проверяете, что восходящий сигнал снабжает данными о точке останова к входному порту bp
. Каждый набор данных точки останова должен быть строго монотонно увеличивающимся вектором, который содержит два или больше элемента. Для этой опции ваш блок наследовал атрибуты точки останова (включая тип данных) от входного порта bp
.
Чтобы включить этот параметр, установите Specification на Explicit values
и Source к Dialog
.
Параметры блоков:
BreakpointsData |
Ввод: символьный вектор |
Значения:
'[10:10:110]' |
Значение по умолчанию:
'[10:10:110]' |
First point
— Сначала укажите в равномерно расположенных с интервалами данных о точке останова10
(значение по умолчанию) | real-valued scalar
Чтобы включить этот параметр, установите Specification на Even spacing
.
Параметры блоков:
BreakpointsFirstPoint |
Ввод: символьный вектор |
Значения:
'10' |
Значение по умолчанию:
'10' |
Spacing
— Разрядка между равномерно расположенными с интервалами точками останова10
(значение по умолчанию) | real-valued, positive scalar
Чтобы включить этот параметр, установите Specification на Even spacing
.
Параметры блоков:
BreakpointsSpacing |
Ввод: символьный вектор |
Значения:
'10' |
Значение по умолчанию:
'10' |
Number of points
— Количество равномерно расположенных с интервалами точек11
(значение по умолчанию) | real-valued, positive scalar
Чтобы включить этот параметр, установите Specification на Even spacing
.
Параметры блоков:
BreakpointsNumPoints |
Ввод: символьный вектор |
Значения:
'11' |
Значение по умолчанию:
'11' |
Имя
Имя объекта Simulink.Breakpoint
no default
| Simulink.Breakpoint
Задайте имя объекта Simulink.Breakpoint
. Точка останова ссылки на объект объекты точки останова Simulink. Если объект Simulink.Breakpoint
не существует, кликните по кнопке действий и выберите Create. Соответствующие параметры нового объекта точки останова автоматически заполняются с информацией о блоке.
Чтобы включить этот параметр, установите Specification на Breakpoint object
.
Параметры блоков:
BreakpointObject |
Ввод: символьный вектор |
Значения:
объект Simulink.Breakpoint |
Значение по умолчанию:
'' |
Output selection
— Задайте сигналы блок выходные параметрыIndex and fraction
(значение по умолчанию) | Index and fraction as bus
| Index only
Если вы хотите, чтобы блок вывел индекс и часть интервала, можно задать, сигнализирует ли блок выходной человек или сигнал шины, который включает обоих индекс и дробные сигналы.
Index only
выходные параметры только индекс, без части. Типовые приложения для этой опции включают:
Питание Прямой Интерполяционной таблицы (n-D) блок, без интерполяции на интервале
Питание портов выбора подтабличного выбора для блока Interpolation Using Prelookup
Выполнение нелинейной квантизации
Index and fraction
выводит индекс и часть, когда человек предупреждает.
Index and fraction as bus
выводит сигнал шины, который включает индекс и дробные сигналы. Используя шину для этих сигналов:
Упрощает модель путем связывания этих двух связанных сигналов
Создает контрольную точку структура DpResult
для библиотеки AUTOSAR 4.0
Для библиотеки AUTOSAR 4.0, избегает создания дополнительных копий во время генерации кода, когда Предварительный поиск и Интерполяция Используя блоки Перед поиском находятся в отдельных моделях
Выбор Index and fraction as bus
отображает параметр Output в панели Data Types и устанавливает параметр Output на Inherit: auto
. Измените это значение по умолчанию, чтобы задать пользовательский объект шины. Для получения дополнительной информации об определении объекта шины, см. описание параметра Output.
Параметры блоков:
OutputSelection |
Значения:
'Index and fraction' | 'Index and fraction as bus' | 'Index only' |
Ввод: символьный вектор |
Значение по умолчанию:
'Index and fraction' |
Index search method
— Метод для поиска данных о точке остановаEvenly spaced points
(значение по умолчанию) | Linear search
| Binary search
Каждый метод поиска имеет преимущества скорости в различных ситуациях:
Для равномерно расположенных с интервалами наборов точки останова (например, 10, 20, 30, и так далее), вы достигаете оптимальной скорости путем выбора Evenly spaced points
, чтобы вычислить табличные индексы. Этот алгоритм использует только первые две точки останова набора, чтобы определить смещение и интервал остающихся точек.
Для неравномерно расположенных с интервалами наборов точки останова следуйте этим инструкциям:
Если входные значения для u
значительно не отличаются между временными шагами, выбор Linear search
with Begin index search using previous index result производит лучшую производительность.
Если входные значения для скачка u
больше чем один или два табличных интервала на временной шаг, выбор Binary search
производят лучшую производительность.
Субоптимальный выбор метода поиска по индексу может вести, чтобы замедлить производительность моделей, которые полагаются в большой степени на интерполяционные таблицы.
Сгенерированный код хранит только первую точку останова, интервал и количество точек останова когда:
Данные о точке останова не являются настраиваемыми.
Методом поиска по индексу является Evenly spaced points
.
Begin index search using previous index result
— Запустите поиск с помощью индекса, найденного на предыдущем временном шагеoff
(значение по умолчанию) | on
Для входных значений u
, которые медленно изменяются относительно размера интервала, включая эту опцию, может улучшать производительность. В противном случае линейные методы поискового и двоичного поиска могут занять больше времени, специально для больших наборов точки останова.
Параметры блоков:
IndexSearchMethod |
Значения:
'Binary search' | 'Evenly spaced points' | 'Linear search' |
Ввод: символьный вектор |
Значение по умолчанию:
'Binary search' |
ExtrapolationMethod
Метод для обработки входных значений из области значенийClip
(значение по умолчанию) | Linear
Опции включают:
Clip
Вход блока | Блокируйте Выходные параметры |
---|---|
Меньше, чем первая точка останова |
|
Больше, чем последняя точка останова |
|
Предположим, что областью значений является [1 2 3]
, и вы выбираете эту опцию. Если u
является 0.5
, индексом является 0
, и частью интервала является 0
. Если u
является 3.5
, индексом является 1
, и частью интервала является 1
.
Linear
Вход блока | Блокируйте Выходные параметры |
---|---|
Меньше, чем первая точка останова |
|
Больше, чем последняя точка останова |
|
Предположим, что областью значений является [1 2 3]
, и вы выбираете эту опцию. Если u
является 0.5
, индексом является 0
, и частью интервала является -0.5
. Если u
является 3.5
, индексом является 1
, и частью интервала является 1.5
.
Блок Prelookup поддерживает линейную экстраполяцию только, когда все следующие условия верны:
Вход u
, данные о точке останова и дробный вывод используют типы данных с плавающей точкой.
Индекс использует встроенный целочисленный тип данных.
Параметры блоков:
ExtrapMethod |
Ввод: символьный вектор |
Значения:
'Clip' | 'Linear' |
Значение по умолчанию:
'Clip' |
Use last breakpoint for input at or above upper limit
— Метод обработки входных параметров в или выше верхнего пределаoff
(значение по умолчанию) | on
Задайте, как индексировать входные значения u
, которые больше, чем или равны последней точке останова. Индексное значение является базирующимся нулем. Когда введенный равняется последней точке останова, блок выходные параметры отличаются можно следующим образом.
Флажок | Блокируйте Выходные параметры |
---|---|
Выбрал ( |
|
Очищенный ( |
|
Когда вы выбираете Use last breakpoint for input at or above upper limit для блока Prelookup, необходимо также выбрать Valid index input may reach last index для блока Interpolation Using Prelookup, с которым это соединяется. Это действие позволяет блокам использовать то же соглашение индексации при доступе к последним элементам их точки останова и табличных наборов данных.
Этот флажок видим только когда:
Output only the index очищен
Extrapolation method является Clip
Однако, когда Output only the index выбран, и Extrapolation method является Clip
, блок ведет себя, как будто этот флажок устанавливается, даже при том, что это невидимо.
Параметры блоков:
UseLastBreakpoint |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
Diagnostic for out-of-range input
— Блокируйте действие, когда введенный будет вне области значенийNone
(значение по умолчанию) | Warning
| Error
Опции включают:
'none'
Не произведите ответ.
Предупреждение
Выведите предупреждение и продолжите симуляцию.
Ошибка
Отключите симуляцию и отобразите ошибку.
Параметры блоков:
DiagnosticForOutOfRangeInput |
Ввод: символьный вектор |
Значения:
'None' | 'Warning' | 'Error' |
Значение по умолчанию:
'None' |
Remove protection against out-of-range input in generated code
— Удалите код, который проверяет на входные параметры точки останова из области значенийOff
(значение по умолчанию) | On
Флажок | Результат | Когда использовать |
---|---|---|
| Сгенерированный код не включает условные операторы, чтобы проверять на входные параметры точки останова из области значений. Когда вход | Для эффективности кода |
| Сгенерированный код включает условные операторы, чтобы проверять на входные параметры точки останова из области значений. | Для важных приложений безопасности |
Если ваш вход не из области значений, можно установить флажок Remove protection against out-of-range index in generated code для эффективности кода. По умолчанию этот флажок снимается. Для важных приложений безопасности не устанавливайте этот флажок. Если вы хотите установить флажок Remove protection against out-of-range index in generated code, сначала проверяйте, что ваши образцовые входные параметры находятся в области значений. Например:
Снимите флажок Remove protection against out-of-range index in generated code.
Установите параметр Diagnostic for out-of-range input на Error
.
Моделируйте модель в режиме normal mode.
Если существуют ошибки из области значений, фиксируют их, чтобы быть в области значений и запустить симуляцию снова.
Когда симуляция больше не сгенерирует из области значений входные ошибки, установите флажок Remove protection against out-of-range index in generated code.
Когда вы устанавливаете флажок Remove protection against out-of-range index in generated code, и вход k
или f
из области значений, поведение не определено для сгенерированного кода и симуляций с помощью режима Accelerator.
В зависимости от вашего приложения можно осуществить следующие проверки Model Advisor, чтобы проверить использование этого флажка:
By Product> Embedded Coder> Identify lookup table blocks that generate expensive out-of-range checking code
By Product> Simulink Check> Modeling Standards> DO-178C/DO-331 Checks> Check usage of lookup table blocks
Для получения дополнительной информации о Model Advisor, смотрите Осуществленные Образцовые Проверки.
Параметры блоков:
RemoveProtectionInput |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
'SampleTime'
Задайте шаг расчета как значение кроме -1
-1
(значение по умолчанию) | скалярЗадайте шаг расчета как значение кроме-1. Для получения дополнительной информации см. Настройку времени выборки.
Этот параметр не видим, если он явным образом не установлен в значение кроме -1
. Чтобы узнать больше, смотрите Блоки, для Которых Не Рекомендуется Шаг расчета.
Параметры блоков:
SampleTime |
Ввод: символьный вектор |
Значения: скаляр |
Значение по умолчанию:
'-1' |
Breakpoint
— Установите точки останова тип данныхInherit: Same as input
(значение по умолчанию) | Inherit: Inherit from 'Breakpoint data'
| double
| single
| int8
| uint8
| int16
| uint16
| int32
| uint32
| fixdt(1,16)
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| Enum: <class name>
| <data type expression>
Задайте тип данных точки останова. Можно установить его на:
Правило, которое наследовало тип данных, например, Inherit: Same as input
Имя встроенного типа данных, например, single
Имя класса типа данных, например, перечислимого класса типа данных
Выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Задайте тип данных точки останова, отличающийся от типа данных входа u
для этих случаев:
Более низкие требования к памяти для того, чтобы хранить данные о точке останова, которые используют меньший тип, чем входной сигнал u
Совместное использование предмасштабированных данных о точке останова между двумя блоками Перед поиском с различными типами данных для входа u
Совместное использование пользовательского устройства хранения данных устанавливает точки останова данные в сгенерированном коде для блоков с различными типами данных для входа u
Перечислимые данные:
Точки останова поддерживают неупорядоченные перечисленные данные. В результате линейные поисковые запросы также не упорядочены, который предлагает гибкость, но может повлиять на производительность. Поиск начинается с первого элемента в точке останова.
Если флажок Begin index search using previous index result устанавливается, необходимо использовать упорядоченные монотонно увеличивающиеся данные. Это упорядоченное расположение улучшает производительность.
Для перечислимых данных Extrapolation method должен быть Clip
.
Поскольку частью является 1
или 0
, выберите Output selection> Index only.
Если вы используете индекс только выходная установка выбора с блоком Interpolation Using Prelookup, рассматриваете использование параметра Number of sub-table selection dimensions.
Это ограничения для использования перечислимых данных с этим блоком:
Блок не поддерживает из области значений введенный для перечислимых данных. Когда определение перечислило данные, включайте целый набор перечисления в набор данных точки останова. Например, используйте функцию enumeration
.
Когда источник данных точек останова установлен в Inport port
, тип данных перечисления должен иметь 0
как значение по умолчанию. Например, для этого класса перечисления, значением по умолчанию GEAR1
должен быть 0
.
classdef(Enumeration) Gears < Simulink.IntEnumType enumeration GEAR1(1), GEAR2(2), GEAR3(4), GEAR4(8), SPORTS(16), REVERSE(32), NEUTRAL(0) end end
Чтобы включить этот параметр, установите данные о точках останова Source на Dialog
.
Когда вы устанавливаете Source на Input port
, блок наследовал все атрибуты точки останова (тип данных, минимум и максимум) от входного порта bp
.
Параметры блоков:
BreakpointDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Same as input' | 'Inherit: Inherit from 'Breakpoint data'' | 'double' | 'single' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'fixdt(1,16)' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)'|'<data type expression>' |
Значение по умолчанию:
'Inherit: Same as input' |
Index
— Индексируйте тип данныхuint32
(значение по умолчанию) | int8
| uint8
| int16
| uint16
| int32
| uint32
| fixdt(1,16)
| <data type expression>
Задайте тип данных, который может индексировать все элементы в наборе данных точки останова. Вы можете:
Выберите встроенный целочисленный тип данных из списка.
Задайте целочисленный тип данных с помощью представления фиксированной точки.
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Параметры блоков:
IndexDataTypeStr |
Ввод: символьный вектор |
Значения: |
'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'fixdt(1,16)' | '<data type expression>' |
Значение по умолчанию:
'uint32' |
Fraction
— Дробный тип данныхInherit: Inherit via internal rule
(значение по умолчанию) | double
| single
| fixdt(1,16,0)
| <data type expression>
Задайте тип данных части интервала. Вы можете:
Выберите встроенный тип данных из списка.
Задайте наследование типа данных через внутреннее правило.
Задайте тип данных с фиксированной точкой с помощью [Наклонное Смещение] или единственное двоичной точкой представление масштабирования.
Если вы используете [Наклонное Смещение] представление, масштабирование должно быть тривиальным — то есть, наклоном является 1
, и смещением является 0
.
Если вы используете единственное двоичной точкой представление, фиксированная экспонента степени двойки должна быть меньше чем или равна нулю.
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Этот параметр отображается только, когда вы устанавливаете Output selection на вкладке Main к Index and fraction
.
Параметры блоков:
FractionDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: Inherit via internal rule' | 'double' | 'single' | 'fixdt(1,16,0)' | '<data type expression>' |
Значение по умолчанию:
'Inherit: Inherit via internal rule' |
Вывод
Тип выходных данныхInherit: auto
(значение по умолчанию) | bus: <object name>
Чтобы вывести виртуальную шину, используйте установку Inherit: auto
. Получившаяся виртуальная шина содержит два элемента, индекс и дробные сигналы.
Чтобы вывести и задать невиртуальную шину, используйте шаблон Bus: <object name>
. Замените <object name>
на имя объекта шины, который содержит индекс и дробные сигналы.
Объект шины должен содержать два элемента. Первый элемент соответствует индексному сигналу и второму к дробному сигналу.
Индекс и дробные сигналы элемента шины не могут быть сигналами шины.
Тип данных и сложность элементов шины должны соответствовать тем же ограничениям, которые применяются к индексу и дробным сигналам, если вы устанавливаете Output selection на Index and fraction
.
Чтобы создать объект шины с индексом и дробными элементами шины, используйте код MATLAB®, подобный этому, настраивая имя объекта шины и имена и типы данных элементов шины.
% Bus object: kfBus elems(1) = Simulink.BusElement; elems(1).Name = 'Index'; elems(1).DataType = 'int8'; elems(2) = Simulink.BusElement; elems(2).Name = 'Fraction'; elems(2).DataType = 'double'; kfBus = Simulink.Bus; kfBus.Elements = elems; clear elems;
Также можно использовать Редактор Шины, чтобы создать или изменить объект шины использовать с блоком Prelookup.
Если вы питаете выходной сигнал шины от этого блока до блока Interpolation Using Prelookup, устанавливаете флажок Require index and fraction as bus в том блоке.
Используйте опцию переопределения типа данных Fixed-Point Tool, чтобы заменить объекты шины с новыми объектами шины что типы данных с фиксированной точкой замены с типами данных с плавающей точкой.
Замененные объекты шины, используемые с блоком Prelookup, могут вызвать ошибку, потому что блок не принимает типы данных с плавающей точкой для первого элемента в шине.
Если вы сталкиваетесь с этой проблемой, используйте кнопку Fix, чтобы переопределить первоначальную шину, возражают и защищают его от того, чтобы быть замененным. Например, предположите, что вы задаете первый элемент объекта шины быть int32
.
myBus.Elements(1).DataType
int32
Нажатие кнопки Fix переопределяет первый элемент шины:
myBus.Elements(1).DataType = 'fixdt(''int32'',''DataTypeOverride'',''Off'')'
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить атрибуты типа данных. Для получения дополнительной информации смотрите, Задают Типы данных Используя Ассистент Типа данных.
Этот параметр отображается только, когда вы устанавливаете Output selection на вкладке Main к Index and fraction as bus
.
Параметры блоков:
OutputBusDataTypeStr |
Ввод: символьный вектор |
Значения:
'Inherit: auto' | 'Bus: <object name>' | '<data type expression>' |
Значение по умолчанию:
'Inherit: auto' |
Breakpoint Minimum
— Данные о точке останова минимального значения могут иметь[]
(значение по умолчанию) | скалярЗадайте минимальное значение, которое могут иметь данные о точке останова. Значением по умолчанию является (незаданный) []
.
Чтобы включить этот параметр, установите данные о точках останова Source на Dialog
на вкладке Main.
Параметры блоков:
BreakpointMin |
Ввод: символьный вектор |
Значение: скаляр |
Значение по умолчанию:
'[]' |
Breakpoint Maximum
— Данные о точке останова максимального значения могут иметь[]
(значение по умолчанию) | скалярЗадайте максимальное значение, которое могут иметь данные о точке останова. Значением по умолчанию является (незаданный) []
.
Чтобы включить этот параметр, установите данные о точках останова Source на Dialog
на вкладке Main.
Параметры блоков:
BreakpointMax |
Ввод: символьный вектор |
Значение: скаляр |
Значение по умолчанию:
'[]' |
Lock output data type setting against changes by the fixed-point tools
— Препятствуйте тому, чтобы Fixed-Point Tool заменили тип Выходных данныхoff
(значение по умолчанию) | on
Выберите этот параметр, чтобы препятствовать тому, чтобы Fixed-Point Tool заменили тип данных Output, который вы задаете на блоке. Для получения дополнительной информации смотрите, что Тип Выходных данных Блокировки Использования Устанавливает (Fixed-Point Designer).
Параметры блоков:
LockScale |
Ввод: символьный вектор |
Значения:
'off' | 'on' |
Значение по умолчанию:
'off' |
Integer rounding mode
— Rounding для операций фиксированной точкиFloor
(значение по умолчанию) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
Задайте округляющийся режим для операций фиксированной точки. Для получения дополнительной информации смотрите Округление (Fixed-Point Designer).
Параметры блоков всегда вокруг к самому близкому представимому значению. Чтобы управлять округлением параметров блоков, введите выражение с помощью MATLAB, округляющего функцию в поле маски.
Параметры блоков:
RndMeth |
Ввод: символьный вектор |
Значения:
'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
Значение по умолчанию:
'Floor' |
Типы данных |
|
Прямое сквозное соединение |
|
Многомерные сигналы |
|
Сигналы переменного размера |
|
Обнаружение пересечения нулем |
|
Моделируйте блок Prelookup с перечисляемыми значениями.
Предположим, что у вас есть блок Prelookup с перечислимым классом как заданный:
classdef(Enumeration) Gears < Simulink.IntEnumType enumeration GEAR1(1), GEAR2(2), GEAR3(4), GEAR4(8), SPORTS(16), REVERSE(-1), NEUTRAL(0) end end
Блок Prelookup имеет эти настройки:
Значением Breakpoints data является enumeration('Gears')
.
Output selection является Index only
.
Для неупорядоченного поиска, набор Index search method к Linear search
и снимают флажок Begin index search using previous index result.
Extrapolation method является Clip
.
Интерполяция с помощью блока Prelookup имеет эти настройки:
Number of dimensions к 1
.
Значением Table data является [5 10 20 40 80 -5 0]
.
Interpolation method является Flat
.
Number of sub-table selection dimensions является 1
.
Симуляция производит векторный [10 -5 80]
, которые соответствуют GEAR2
, REVERSE
и SPORTS
.
Для получения дополнительной информации о генерации HDL-кода, смотрите Предварительный поиск.
Simulink PLC Coder ограничил поддержку блоков интерполяционной таблицы. Кодер не поддерживает:
Количество размерностей, больше, чем 2
Метод интерполяции кубическим сплайном
Начните поиск по индексу с помощью предыдущего режима индексации
Кубический метод экстраполяции сплайна
Интерполяция Используя предварительный поиск | Simulink.Breakpoint
| Интерполяционная таблица n-D
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.