Задайте типы данных Используя ассистент типа данных

Ассистент Типа данных является интерактивным графическим инструментом, который упрощает задачу определения типов данных для блоков и объектов данных. Ассистент появляется на блоке и объектных диалоговых окнах, смежных с параметрами, которые обеспечивают управление типом данных, такое как параметр типа Выходных данных. Например, это появляется на панели Атрибутов Сигнала диалогового окна блока Constant, показанного здесь.

Можно выборочно показать или скрыть Ассистент Типа данных путем нажатия применимой кнопки:

  • Нажмите ассистент типа данных Show кнопка, чтобы отобразить ассистент.

  • Нажмите ассистент типа данных Hide кнопка, чтобы скрыть видимый ассистент.

Используйте Ассистент Типа данных, чтобы задать тип данных можно следующим образом:

  1. В поле Mode выберите категорию типа данных, который вы хотите задать. В целом опции включают следующее:

    РежимОписание

    Inherit

    Наследование управляет для типов данных

    Встроенный

    Встроенные типы данных

    Fixed point

    Типы данных фиксированной точки

    Enumerated

    Перечислимые типы данных

    Bus object

    Соедините шиной типы данных Object

    Выражение

    Выражения, которые оценивают к типам данных

    Ассистент изменяется динамически, чтобы отобразить различные варианты, которые соответствуют выбранному режиму. Например, установка Mode к Expression заставляет диалоговое окно блока Constant появляться можно следующим образом.

  2. В поле, которое является справа от поля Mode, выберите или введите тип данных.

    Например, предположите, что вы определяете переменный myDataType как псевдоним для типа данных single. Вы создаете экземпляр класса Simulink.AliasType и устанавливаете его свойство BaseType путем ввода следующих команд:

    myDataType = Simulink.AliasType
    myDataType.BaseType = 'single'

    Можно использовать этот объект типа данных задать тип выходных данных блока Constant. Введите имя псевдонима типа данных, myDataType, как значение выражения в ассистенте.

  3. Нажмите кнопку OK или Apply, чтобы применить ваши изменения.

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

Для получения дополнительной информации о типах данных, что можно задать использование Ассистента Типа данных, смотрите Ввод Допустимых Значений Типа данных. Для получения дополнительной информации об определении типов данных фиксированной точки, смотрите, Задают Типы данных Фиксированной точки с Ассистентом Типа данных (Fixed-Point Designer).

Определение типа данных фиксированной точки

Когда Режимом помощника Типа данных является Fixed point, Ассистент Типа данных поля отображений для определения информации о вашем типе данных фиксированной точки. Для детального обсуждения о данных фиксированной точки смотрите Основы Фиксированной точки в MATLAB (Fixed-Point Designer). Например, следующие данные показывают диалоговое окно Block Parameters для блока Gain с выбранной вкладкой Signal Attributes и заданный тип данных фиксированной точки.

Если Масштабированием является Slope and bias, а не Binary point, Ассистент Типа данных отображает поле Slope и Поле подмагничивания, а не Дробное поле длины:

Можно использовать Ассистент Типа данных, чтобы установить эти свойства фиксированной точки:

Со знаком

Задайте, хотите ли вы, чтобы данными фиксированной точки был Signed или Unsigned. Данные со знаком могут представлять положительные и отрицательные величины, но данные без знака представляют положительные значения только. Настройкой по умолчанию является Signed.

Размер слова

Задайте диаметр долота слова, которое будет содержать квантованное целое число. Большие размеры слова представляют большие значения с большей точностью, чем небольшие размеры слова. Размер слова может быть любым целым числом между 0 и 32. Диаметр долота по умолчанию равняется 16.

Масштабирование

Задайте метод для масштабирования ваших данных фиксированной точки, чтобы избежать условий переполнения и минимизировать ошибки квантования. Метод по умолчанию является масштабированием Binary point. Можно выбрать один из двух масштабирующихся режимов:

Масштабирование режимаОписание
Binary point

Если вы выбираете этот режим, Ассистент Типа данных отображает поле Fraction Length, которое задает местоположение двоичной точки.

Двоичные точки могут быть положительными или отрицательными целыми числами. Положительное целое число перемещает двоичную точку, оставленную самого правого бита той суммой. Например, запись 2 наборов двоичная точка перед вторым битом справа. Отрицательное целое число перемещает двоичную точку дальнейшее право самого правого бита той суммой, как в этом примере:

Двоичная точка по умолчанию 0.

Slope and bias

Если вы выбираете этот режим, Ассистент Типа данных отображает поля для ввода Наклона и Смещения.

Наклон может быть любым положительным вещественным числом, и наклон по умолчанию 1.0. Смещение может быть любым вещественным числом, и смещение по умолчанию 0.0. Можно ввести наклон и сместить как выражения, которые содержат параметры, которые вы задаете в рабочей области MATLAB®.

Примечание

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

Для получения дополнительной информации о масштабировании фиксированной точки, смотрите Масштабирующийся (Fixed-Point Designer).

Переопределение типа данных

Когда Режимом является Built in или Fixed point, можно использовать опцию переопределения Типа данных, чтобы задать, хотите ли вы, чтобы этот тип данных наследовал или проигнорировал установку переопределения типа данных, заданную для ее контекста, то есть, для блока, объекта Simulink.Signal или графика Stateflow® в Simulink®, который использует сигнал. Поведением по умолчанию является Inherit.

Режим переопределения типа данныхОписание
Inherit (значение по умолчанию)

Наследовал переопределение типа данных, сходящее с его контекста, то есть, от блока, объекта Simulink.Signal или диаграммы Stateflow в Simulink, который использует сигнал.

'off'

Игнорирует установку переопределения типа данных его контекста и использует тип данных фиксированной точки, заданный для сигнала.

Способность выключить переопределение типа данных для отдельного типа данных обеспечивает большее управление типами данных в вашей модели, когда вы применяете переопределение типа данных. Например, можно использовать эту опцию, чтобы гарантировать, чтобы типы данных удовлетворили требования нисходящих блоков независимо от установки переопределения типа данных.

Вычислите масштабирование Лучшей Точности

Нажмите эту кнопку, чтобы вычислить значения лучшей точности и для Binary point and Slope and bias масштабирование, на основе заданных минимальных и для максимальных значений. Simulink отображает масштабирующиеся значения в поле Fraction Length или Наклоне и Полях подмагничивания. Для получения дополнительной информации смотрите Постоянное Масштабирование для Лучшей Точности (Fixed-Point Designer).

Показ деталей фиксированной точки

Когда вы задаете тип данных фиксированной точки, можно использовать подпанель деталей Фиксированной точки, чтобы видеть информацию о типе данных фиксированной точки, который в настоящее время отображается в Ассистенте Типа данных. Чтобы видеть подпанель, кликните по расширителю, следующему за деталями Фиксированной точки в Ассистенте Типа данных. Подпанель деталей Фиксированной точки появляется в нижней части Ассистента Типа данных:

Строки маркировали Output minimum, и Output maximum показывают те же значения, которые появляются в соответствующем Выходном минимуме и Выходных полях максимума выше Ассистента Типа данных. Имена этих полей могут отличаться от показанных. Например, блочный параметр фиксированной точки показал бы минимум Параметра и максимум Параметра, и соответствующие строки деталей Фиксированной точки были бы маркированы соответственно. Смотрите Диапазоны сигнала и Задайте Минимальные и Максимальные значения для Блочных Параметров для получения дополнительной информации.

Строки маркировали Representable minimum, Representable maximum, и Precision всегда появляется. Эти строки показывают минимальное значение, максимальное значение и точность, которая может быть представлена типом данных фиксированной точки, в настоящее время отображаемым в Ассистенте Типа данных. Для получения информации об этих трех количествах смотрите Основы Фиксированной точки в MATLAB (Fixed-Point Designer).

Значения, отображенные подпанелью деталей Фиксированной точки, автоматически не обновляют, если вы нажимаете Calculate Best-Precision Scaling или изменяете пределы области значений, значения, которые задают тип данных фиксированной точки или что-либо в другом месте в модели. Чтобы обновить значения, показанные в подпанели деталей Фиксированной точки, нажмите Refresh Details. Ассистент Типа данных затем обновляет или повторно вычисляет все значения и отображает результаты.

Нажатие на Refresh Details ничего не изменяет в модели, это только изменяет отображение. Нажмите ОК или Применяйтесь, чтобы осуществить отображенные значения. Если значение поля не может быть известно без первой компиляции модели, подпанель деталей Фиксированной точки показывает значение как Unknown.

Если какие-либо ошибки происходят, когда вы нажимаете Refresh Details, подпанель деталей Фиксированной точки показывает флаг ошибки слева от применимой строки и описание ошибки справа. Например, следующие данные показывают две ошибки:

Строка маркировала Output minimum, показывает ошибке Cannot evaluate, потому что, оценивая выражение MySymbol, заданный в Выходном поле минимума, не возвращал соответствующее числовое значение. Когда выражение не оценивает успешно, подпанель деталей Фиксированной точки отображает неоцененное выражение (обрезающий до 10 символов при необходимости, чтобы оставить свободное место) вместо недоступного значения.

Чтобы исправить ошибку в этом случае, необходимо было бы задать MySymbol в доступной рабочей области, чтобы обеспечить соответствующее числовое значение. После того, как вы нажали Refresh Details, значение MySymbol появится вместо его неоцененного текста, и ошибочный индикатор и описание ошибки исчезли бы.

Чтобы исправить ошибку, показанную для Output maximum, необходимо было бы уменьшить Выходной максимум, увеличить Размер слова или длину Части уменьшения (или некоторая комбинация этих изменений) достаточно, чтобы позволить типу данных фиксированной точки представлять максимальное значение, которое это могло иметь.

Другие значения, относящиеся к конкретному блоку, могут также появиться в подпанели деталей Фиксированной точки. Например, на вкладке Attributes блока-сигнала Интегратора Дискретного времени, подпанель может выглядеть так:

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

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

Заблокируйте установку типа выходных данных против изменений Fixed-Point Tool

Установите этот флажок, чтобы предотвратить замену текущего типа данных с типом, который выбирает Советник по вопросам Fixed-Point Tool или Фиксированной точки. Для получения инструкций по автомасштабированию данных фиксированной точки смотрите Масштабирующийся (Fixed-Point Designer).

Задайте перечислимый тип данных

Можно задать перечислимый тип данных путем выбора опции Enum: <class name> и задать перечислимый объект.

В Ассистенте Типа данных можно использовать параметр Режима, чтобы задать шину как объект данных для блока. Выберите опцию Enumerated и задайте перечислимый объект.

Для получения дополнительной информации о перечислимых типах данных, смотрите Типы данных.

Задайте тип данных Object шины

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

В Ассистенте Типа данных можно использовать параметр Режима, чтобы задать шину как объект данных для блока. Выберите опцию Bus и задайте объект шины.

Можно задать объект шины как тип данных для объектов данных, таких как Simulink.Signal, Simulink.Parameter и Simulink.BusElement. В Образцовом Проводнике, в диалоговом окне Properties для объекта данных, в параметре Типа данных, выбирают опцию Bus: <object name> и задают объект шины. Можно также использовать опцию Expression, чтобы задать объект шины.

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

Смотрите также

|

Похожие темы

Была ли эта тема полезной?