Когда система под проект содержит ссылочную модель, Fixed-Point Tool предлагает типы данных для объектов в модели-ссылке на основе диапазонов, собранных посредством симуляции или производного анализа области значений. Если система под проект содержит несколько образцы тех же ссылок на модель, Fixed-Point Tool использует объединение собранных областей значений для предложений типов данных.
Fixed-Point Tool журналов минимальное и максимальное значения симуляции только для образцов из модели ссылок, которые находятся в режиме normal mode. Он не регистрирует минимальное и максимальное значения симуляции для экземпляров модели-ссылки, которые находятся в режимах, отличных от Normal. Если ваша модель содержит несколько образцы модели-ссылки, а некоторые образцы находятся в режиме normal mode, а некоторые нет, инструмент регистрирует и отображает данные для тех, которые находятся в режиме normal mode.
Откройте ex_mdlref_controller
модель. В MATLAB® в командной строке введите:
addpath(fullfile(docroot,'toolbox','fixpoint','examples')); ex_mdlref_controller
В Apps галерее модели выберите Fixed-Point Tool.
Когда модель содержит модель-ссылку, на панели Model Hierarchy Инструмент с фиксированной точкой (Fixed-Point Tool) отображается подузл для образца модели-ссылки и узел для модели-ссылки. Для примера, ex_mdlref_controller
модель содержит блок Model, который ссылается на ex_controller
модель. На Fixed-Point Tool показаны обе модели в иерархии модели.
Если модель содержит несколько образцы модели-ссылки, инструмент отображает каждый образец модели-ссылки в этой модели и узел для модели-ссылки. Для примера в той же модели, если вы дублируете ссылочную модель таким образом, что ex_mdlref_controller
модель содержит два образцов модели-ссылки ex_controller
. В Fixed-Point Tool отображаются обе модели и оба образцов ссылочной модели в иерархии модели.
В Fixed-Point Tool, под New, выберите Iterative Fixed-Point Conversion
рабочий процесс.
В разделе System Under Design (SUD) выберите ex_controller
модель как система, которую вы хотите преобразовать в фиксированную точку.
В разделе Range Collection Mode выберите Simulation Ranges в качестве метода набора областей значений.
На панели инструментов нажмите кнопку Prepare. Этот Fixed-Point Tool проверяет систему под проект на совместимость с процессом преобразования и сообщает о любых проблемах, обнаруженных в модели. В этом примере инструмент сообщает, что модель готова к преобразованию.
Разверните стрелу кнопки Collect Ranges и выберите Double precision
. Нажмите кнопку Collect Ranges, чтобы начать симуляцию. Этот Fixed-Point Tool переопределяет типы данных в модели с удвоением и собирает минимальное и максимальное значения для каждого объекта в вашей модели, которые происходят во время симуляции. Инструмент с фиксированной точкой сохраняет эту информацию о диапазоне в прогоне под названием BaselineRun
.
Инструмент регистрирует и отображает результаты для каждого образца ссылочных моделей. Для примера вот результаты для первого образца ссылочных моделей ex_controller
.
Вот результаты для второго образца ex_controller
.
В узле модели-ссылки инструмент отображает объединение результатов для каждого экземпляра модели-ссылки.
Когда вы моделируете модель, которая содержит модели-ссылки, переопределение типа данных и настройки инструментирования с фиксированной точкой для модели верхнего уровня не управляют настройками для моделей-ссылок. Необходимо задать эти параметры отдельно для ссылочных моделей. Если настройки противоречивы, например, если установить значение переопределения типа данных моделей верхнего уровня в удвоенное, и в модели-ссылке использовать локальные настройки, а в модели-ссылке используются типы данных с фиксированной точкой, могут возникнуть проблемы с распространением типа данных.
Пользовательские настройки переопределения типов данных можно задать используя set_param.
Для получения примера смотрите Использование настроек переопределения пользовательского типа данных для Области значений Наборов.
Когда вы изменяете параметры инструментирование с фиксированной точкой и типа данных для любого образца модели-ссылки, настройки изменяются на всех образцах модели и на самой модели-ссылке.
В Convert разделе панели инструментов нажмите Settings. Задайте параметр Safety margin for simulation min/max (%) следующим 20
.
Нажмите 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 используются минимальное и максимальное значения, собранные во время моделирования, чтобы предложить масштабирование для каждого блока, так что точность максимизируется, в то время как полная область значений значений симуляции охватывается. Инструмент отображает предлагаемое масштабирование в электронной таблице.
Проверьте масштабирование, предлагаемое инструментом Fixed-Point Tool. Можно принять предложение по масштабированию для каждого блока путем установки соответствующего флажка Accept. По умолчанию Fixed-Point Tool принимает все предложения по масштабированию, которые отличаются от текущего масштабирования. В данном примере проверьте, что флажок Accept установлен для каждых блоков системы контроллеров.
Чтобы просмотреть дополнительные сведения о предложении, выберите результат и просмотрите панель Result Details.
В окне Fixed-Point Tool нажмите кнопку Apply Data Types.
Этот Fixed-Point Tool применяет предложения по масштабированию, принятые на предыдущем шаге.
В Verify разделе панели инструментов нажмите кнопку Simulate with Embedded Types.
Simulink® моделирует ex_mdlref_controller
модель с использованием нового применяемого масштабирования. После этого Fixed-Point Tool отображает информацию о блоках, которые регистрировали данные с фиксированной точкой.
Нажмите Compare Results. Данные моделирования Inspector строят графики выходов аналогового объекта для запусков с плавающей и фиксированной точками и различия между ними.