Помощник по типам данных представляет собой интерактивный графический инструмент, упрощающий задачу задания типов данных для блоков и объектов данных. Помощник отображается в диалоговых окнах блоков и объектов рядом с параметрами, обеспечивающими управление типами данных, такими как параметр Тип выходных данных. Например, он отображается на панели Атрибуты сигнала (Signal Attributes) диалогового окна Блок константы (Constant block), показанного здесь.

Можно выборочно показать или скрыть помощник по типам данных, нажав соответствующую кнопку:
Нажмите кнопку Show data type assistant
для отображения помощника.
Нажмите кнопку Скрыть помощник по типу данных
, чтобы скрыть видимого помощника.
Используйте помощник по типам данных, чтобы указать тип данных следующим образом:
В поле Режим выберите категорию типа данных, который требуется указать. В общем случае возможны следующие варианты:
| Способ | Описание |
|---|---|
| Правила наследования для типов данных |
| Встроенные типы данных |
| Типы данных с фиксированной точкой |
| Перечислимые типы данных |
| Типы данных объекта шины |
| Выражения, вычисляемые по типам данных |
Помощник динамически изменяется для отображения различных параметров, соответствующих выбранному режиму. Например, установка для параметра «Режим» значения Expression диалоговое окно «Блок константы» отображается следующим образом.

В поле справа от поля Режим выберите или введите тип данных.
Например, предположим, что вы обозначаете переменную myDataType как псевдоним для single тип данных. Создается экземпляр Simulink.AliasType класс и установить его BaseType путем ввода следующих команд:
myDataType = Simulink.AliasType
myDataType.BaseType = 'single'Этот объект типа данных можно использовать для указания типа выходных данных блока константы. Введите имя псевдонима типа данных, myDataType, как значение выражения в помощнике.

Нажмите кнопку ОК или Применить, чтобы применить изменения.
Помощник использует указанный тип данных для заполнения связанного параметра типа данных в диалоговом окне блока или объекта. В следующем примере параметр Output data type блока Constant указывает выражение, введенное с помощью ассистента.

Дополнительные сведения о типах данных, которые можно указать с помощью помощника по типам данных, см. в разделе Ввод допустимых значений типов данных. Дополнительные сведения об указании типов данных с фиксированными точками см. в разделе Указание типов данных с фиксированными точками с помощью помощника по типам данных (Конструктор фиксированных точек).
При использовании режима помощника по типу данных Fixed pointПомощник по типам данных отображает поля для указания информации о типе данных с фиксированной точкой. Например, на следующем рисунке показано диалоговое окно «Параметры блока» для блока усиления с выбранной вкладкой «Атрибуты сигнала» и указанным типом данных с фиксированной точкой.

Если масштабирование равно Slope and bias вместо Binary point, помощник по типу данных отображает поля «Наклон» и «Смещение», а не поле «Длина фракции»:

Помощник по типам данных можно использовать для установки следующих свойств фиксированных точек:
Укажите, должны ли данные с фиксированной точкой быть Signed или Unsigned. Подписанные данные могут представлять положительные и отрицательные значения, но неподписанные данные представляют только положительные значения. Значение по умолчанию: Signed.
Укажите битовый размер слова, которое будет содержать квантованное целое число. Большие размеры слов представляют большие значения с большей точностью, чем малые размеры слов. Длина слова может быть любым целым числом от 0 до 128. Размер бита по умолчанию - 16.
Укажите метод масштабирования данных с фиксированной точкой, чтобы избежать условий переполнения и минимизировать ошибки квантования. Метод по умолчанию: Binary point масштабирование. Можно выбрать один из двух режимов масштабирования:
| Режим масштабирования | Описание |
|---|---|
Binary point | При выборе этого режима помощник по типам данных отображает поле «Длина дроби», в котором указывается местоположение двоичной точки. Двоичные точки могут быть положительными или отрицательными целыми числами. Положительное целое число перемещает двоичную точку влево от самого правого бита на эту величину. Например, запись 2 задает двоичную точку перед вторым битом справа. Отрицательное целое число перемещает двоичную точку дальше вправо от самого правого бита на эту величину, как в этом примере:
Двоичная точка по умолчанию равна 0. |
Slope and bias | При выборе этого режима в помощнике по типам данных отображаются поля для ввода значений уклона и смещения. Уклон может быть любым положительным вещественным числом, а наклон по умолчанию равен 1,0. Смещение может быть любым действительным числом, а смещение по умолчанию равно 0,0. Можно ввести уклон и смещение в виде выражений, содержащих параметры, определенные в рабочем пространстве MATLAB ®. |
Примечание
По возможности используйте двоичное масштабирование для упрощения реализации данных с фиксированной точкой в сгенерированном коде. Операции с данными с фиксированной точкой с использованием двоично-точечного масштабирования выполняются с простыми битовыми сдвигами и устраняют дорогостоящие реализации кода, которые требуются для отдельных значений наклона и смещения.
Дополнительные сведения о масштабировании с фиксированной точкой см. в разделе Масштабирование (Конструктор с фиксированной точкой).
Когда установлен режим Built in или Fixed point, можно использовать параметр Переопределение типа данных, чтобы указать, должен ли этот тип данных наследовать или игнорировать параметр переопределения типа данных, заданный для его контекста, то есть для блока, Simulink.Signal объект или диаграмма Stateflow ® в Simulink ®, использующая сигнал. Поведение по умолчанию: Inherit.
| Режим переопределения типа данных | Описание |
|---|---|
Inherit (по умолчанию) |
Наследует параметр переопределения типа данных из своего контекста, то есть из блока, |
Off |
Игнорирует настройку переопределения типа данных для его контекста и использует тип данных с фиксированной точкой, указанный для сигнала. |
Возможность отключения переопределения типов данных для отдельного типа данных обеспечивает больший контроль над типами данных в модели при применении переопределения типов данных. Например, этот параметр можно использовать для обеспечения соответствия типов данных требованиям нижестоящих блоков независимо от параметра переопределения типов данных.
Нажмите эту кнопку, чтобы вычислить значения наилучшей точности для обоих Binary point и Slope and bias масштабирование на основе указанных минимального и максимального значений. Simulink отображает значения масштабирования в поле «Длина фракции» или в полях «Уклон» и «Смещение». Дополнительные сведения см. в разделе Постоянное масштабирование для лучшей точности (конструктор фиксированных точек).
При указании типа данных с фиксированной точкой можно воспользоваться подпанелью «Сведения о фиксированной точке» для просмотра информации о типе данных с фиксированной точкой, который в настоящее время отображается в помощнике по типам данных. Для просмотра подпанели щелкните на расширителе рядом с пунктом Fixed-point details в помощнике по типам данных. В нижней части ассистента по типам данных появится подпанель «Сведения о фиксированных точках»:

Строки с меткой Output minimum и Output maximum отображение тех же значений, которые отображаются в соответствующих полях Output minimum и Output maximum над помощником по типам данных. Имена этих полей могут отличаться от указанных. Например, параметр блока с фиксированной точкой будет отображать минимальное значение параметра и максимальное значение параметра, а соответствующие строки подробных данных с фиксированной точкой будут помечены соответствующим образом. Дополнительные сведения см. в разделах Определение диапазонов сигналов и Указание минимальных и максимальных значений для параметров блока.
Строки с меткой Representable minimum, Representable maximum, и Precision всегда появляется. Эти строки показывают минимальное значение, максимальное значение и точность, которые могут быть представлены типом данных с фиксированной точкой, отображаемым в настоящее время в помощнике по типам данных.
Значения, отображаемые подпанелью Сведения о фиксированной точке (Fixed-point details), не обновляются автоматически, если щелкнуть Рассчитать наиболее точное масштабирование (Calculate Best-Precision Scaling) или изменить пределы диапазона, значения, определяющие тип данных с фиксированной точкой, или что-либо другое в модели. Чтобы обновить значения, показанные в подпанели Сведения о фиксированной точке (Fixed-point details), щелкните Обновить сведения (Refresh Details). Затем помощник по типам данных обновляет или пересчитывает все значения и отображает результаты.
Нажатие кнопки Обновить подробности (Refresh Details) ничего не меняет в модели, а только изменяет отображение. Нажмите кнопку ОК или Применить, чтобы ввести отображаемые значения в действие. Если значение поля не может быть известно без предварительной компиляции модели, в подпанели Сведения о фиксированной точке (Fixed-point details) значение отображается как Unknown.
Если при нажатии кнопки «Обновить сведения» возникают ошибки, в подокне «Сведения о фиксированных точках» слева от соответствующей строки отображается флаг ошибки, а справа - описание ошибки. Например, на следующем рисунке показаны две ошибки:

Строка с меткой Output minimum показывает ошибку Cannot evaluate потому что оценка выражения MySymbol, указанное в поле Output minimum, не вернуло соответствующее числовое значение. Если выражение не вычисляется успешно, в подпанели Сведения о фиксированной точке (Fixed-point details) отображается неоцененное выражение (усечение до 10 символов, если необходимо сохранить место) вместо недоступного значения.
Для исправления ошибки в этом случае необходимо определить MySymbol в доступной рабочей области для предоставления соответствующего числового значения. После нажатия кнопки «Обновить сведения» значение MySymbol появится вместо его неоцененного текста, и индикатор ошибки и описание ошибки исчезнут.
Исправление ошибки, указанной для Output maximum, необходимо уменьшить максимальное значение вывода, увеличить длину Word или уменьшить длину дроби (или некоторую комбинацию этих изменений) в достаточной степени, чтобы тип данных с фиксированной точкой представлял максимальное значение, которое он мог иметь.
Другие значения, относящиеся к определенному блоку, также могут отображаться в подпанели «Сведения о фиксированных точках». Например, на вкладке Signal Attributes блока интегратора дискретного времени подпанель может выглядеть следующим образом:

Значения верхнего предела насыщения и нижнего предела насыщения затемнены. Этот вид указывает на то, что соответствующие параметры в настоящее время не используются блоком. Затемненные значения можно игнорировать.
Чтобы сохранить пространство, начальное условие отображает наименьшее значение и наибольшее значение в векторе или матрице, используя многоточие для представления других значений. Основное определение вектора или матрицы не изменяется.
Установите этот флажок, чтобы предотвратить замену текущего типа данных типом, выбранным инструментом Fixed-Point Tool или помощником Fixed-Point. Инструкции по автоматическому масштабированию данных с фиксированной точкой см. в разделе Масштабирование (Конструктор с фиксированной точкой).
Можно указать перечисляемый тип данных, выбрав Enum: <class name> и укажите перечисляемый объект.
В помощнике по типам данных можно использовать параметр Mode для указания шины в качестве объекта данных для блока. Выберите Enumerated и укажите перечисляемый объект.

Дополнительные сведения о перечисленных типах данных см. в разделе Типы данных.
Блоки, перечисленные в разделе «Типы данных для сигналов шины», поддерживают указание объекта шины в качестве типа данных. Для этих блоков в параметре «Тип данных» выберите Bus: <object name> и укажите объект шины. Вы не можете использовать Expression для указания объекта шины в качестве типа данных для блока.
В помощнике по типам данных можно использовать параметр Mode для указания шины в качестве объекта данных для блока. Выберите Bus и укажите объект шины.

Можно указать объект шины в качестве типа данных для таких объектов данных, как Simulink.Signal, Simulink.Parameter, и Simulink.BusElement. В обозревателе моделей в диалоговом окне Свойства (Properties) для объекта данных в параметре Тип данных (Data type) выберите Bus: <object name> и укажите объект шины. Вы также можете использовать Expression для задания объекта шины.
Дополнительные сведения об указании типа данных объекта шины см. в разделе Задание свойств шины с помощью Simulink.Bus Object Data Types.