Преобразуйте модель, на которую ссылаются, в фиксированную точку

Когда система в соответствии с проектом содержит модель, на которую ссылаются, Fixed-Point Tool предлагает типы данных для объектов в основанном на модели, на которое ссылаются, на областях значений, собранных посредством симуляции или выведенного анализа области значений. Если система в соответствии с проектом содержит несколько экземпляров той же модели, на которую ссылаются, Fixed-Point Tool использует объединение собранных областей значений для предложений по типу данных.

Fixed-Point Tool регистрирует симуляцию минимальные и максимальные значения только для экземпляров модели, на которую ссылаются, которые находятся в режиме normal mode. Это не регистрирует симуляцию минимальные и максимальные значения для экземпляров модели, на которую ссылаются, которые находятся в нережимах normal mode. Если ваша модель содержит несколько экземпляров модели, на которую ссылаются, и некоторые - экземпляры, находятся в режиме normal mode, и некоторые не, журналы инструмента и данные об отображениях для тех, которые находятся в режиме normal mode.

Откройте ex_mdlref_controller модель. В MATLAB® командная строка, введите:

addpath(fullfile(docroot,'toolbox','fixpoint','examples'));
ex_mdlref_controller

В галерее Apps модели выберите Fixed-Point Tool.

Когда модель содержит модель, на которую ссылаются, Fixed-Point Tool, панель Model Hierarchy отображает подузел для экземпляра модели, на которую ссылаются, и узел для модели, на которую ссылаются. Например, ex_mdlref_controller модель содержит блок Model, это ссылается на ex_controller модель. Fixed-Point Tool показывает обе модели в иерархии модели.

Если модель содержит несколько экземпляров модели, на которую ссылаются, инструмент отображает каждый экземпляр модели, на которую ссылаются, в этой модели и узле для модели, на которую ссылаются. Например, в той же модели, если вы копируете модель, на которую ссылаются, таким образом что ex_mdlref_controller модель содержит два экземпляра модели ex_controller, на которую ссылаются,. Fixed-Point Tool отображает обе модели и оба экземпляра модели, на которую ссылаются, в иерархии модели.

Просмотр областей значений симуляции для моделей, на которые ссылаются,

  1. В Fixed-Point Tool, под New, выбирают Iterative Fixed-Point Conversion рабочий процесс.

  2. Под System Under Design (SUD) выберите ex_controller модель как система вы хотите преобразовать в фиксированную точку.

  3. Под Range Collection Mode выберите Simulation Ranges как метод сбора области значений.

  4. В панели инструментов нажмите Prepare. Fixed-Point Tool проверяет систему в соответствии с проектом для совместимости с процессом преобразования и сообщает о любых проблемах, найденных в модели. В этом примере инструмент сообщает, что модель готова к преобразованию.

  5. Расширьте стрелу кнопки Collect Ranges и выберите Double precision. Нажмите кнопку Collect Ranges, чтобы запустить симуляцию. Fixed-Point Tool заменяет типы данных в модели с, удваивает и собирает минимальные и максимальные значения для каждого объекта в вашей модели, которые происходят во время симуляции. Fixed-Point Tool хранит эту информацию области значений в запуске, названном BaselineRun.

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

Вот результаты для второго экземпляра ex_controller.

В узле модели, на который ссылаются инструмент отображает объединение результатов для каждого экземпляра модели, на которую ссылаются.

Инструментирование фиксированной точки и настройки переопределения типа данных

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

Можно задать использование настроек переопределения пользовательского типа данных set_param. Для примера смотрите Настройки Переопределения Пользовательского типа данных Использования для Набора Области значений.

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

Предложите типы данных для модели, на которую ссылаются,

  1. В разделе Convert панели инструментов нажмите Settings. Задайте параметр Safety margin for simulation min/max (%) как 20.

  2. Нажмите Propose Data Types.

    Поскольку никакой минимум проекта и максимальная информация не предоставляются, минимум симуляции и максимальные данные, которые были собраны во время запущенной симуляции, используются, чтобы предложить типы данных. Значение параметров Safety margin for simulation min/max (%) умножает “необработанные” значения симуляции на коэффициент 1,2. Установка параметра Safety margin for simulation min/max (%) на значение, больше, чем 1 уменьшение вероятность, что переполнение произойдет, когда типы данных с фиксированной точкой будут использоваться.

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

    Fixed-Point Tool анализирует масштабирование всех блоков фиксированной точки, параметр Lock output data type setting against changes by the fixed-point tools которых не выбран.

    Fixed-Point Tool использует минимальные и максимальные значения, собранные в процессе моделирования, чтобы предложить масштабирование для каждого блока, таким образом, что точность максимизируется, в то время как полный спектр значений симуляции заполнен. Инструмент отображает предложенное масштабирование в электронной таблице.

  3. Рассмотрите масштабирование, которое предлагает Fixed-Point Tool. Можно принять решение принять масштабирующееся предложение по каждому блоку путем установки соответствующего флажка Accept. По умолчанию Fixed-Point Tool принимает все предложения по масштабированию, которые отличаются от текущего масштабирования. В данном примере проверьте, что флажок Accept устанавливается для каждого из блоков системы Контроллера.

    Чтобы просмотреть больше информации о предложении, выберите результат и просмотрите панель Result Details.

  4. В Fixed-Point Tool нажмите кнопку Apply Data Types.

    Fixed-Point Tool применяет масштабирующиеся предложения, что вы приняли на предыдущем шаге.

  5. В разделе Verify панели инструментов нажмите кнопку Simulate with Embedded Types.

    Simulink® симулирует ex_mdlref_controller модель с помощью нового масштабирования, которое вы применили. Позже, Fixed-Point Tool отображает информацию о блоках, которые регистрировали данные фиксированной точки.

  6. Нажмите Compare Results. Инспектор Данных моделирования строит Analog Plant выход для запусков и фиксированной точки с плавающей точкой и различия между ними.

Похожие темы