Этот пример показывает, что, если анализ не может вывести информацию о области значений из-за недостаточной информации о области значений проектирования, можно исправить проблему, предоставив дополнительные минимальные и максимальные значения входного проекта.
Откройте ex_derived_min_max_4
модель. В MATLAB® в командной строке введите:
addpath(fullfile(docroot,'toolbox','fixpoint','examples')) ex_derived_min_max_4
Модель отображает заданные минимальное и максимальное значения проекта для блоков в модели.
Блок Inport In1
имеет проект минимальное, но не заданное максимальное значение, как показано аннотацией [-1..]
.
Блок Gain имеет проект области значений [-1.5..1.5]
.
Блок Outport Out1
не имеет проекта области значений заданной.
Совет
Чтобы отобразить области значений проекта в модели, на вкладке Debug, выберите Information Overlays > Signal Data Ranges.
Из Simulink® Apps вкладке выберите Fixed-Point Tool.
В Fixed-Point Tool, под New потока операций, выберите Iterative Fixed-Point Conversion
.
В Fixed-Point Tool под System Under Design (SUD) выберите ex_derived_min_max_4
как систему, которую необходимо преобразовать.
В разделе Range Collection Mode выберите Derived ranges.
Нажмите кнопку Collect Ranges.
В Fixed-Point Tool отображаются производные минимальное и максимальное значения для блоков в модели. Анализ области значений не может вывести максимальное значение для блока Inport, In1
. Инструмент подсвечивает этот результат.
Чтобы исправить проблему, задайте проект максимальное значение для In1
:
В модели дважды кликните блок Inport, In1
.
В диалоговом окне параметров блоков выберите вкладку Signal Attributes.
На этой вкладке установите Maximum равным 1
и нажмите OK. Для обновления схемы нажмите (Ctrl + D).
Модель отображает обновленное максимальное значение в аннотации блока для In1
, [-1..1]
.
Очистите ранее собранные области значений и повторите анализ области значений.
В Fixed-Point Tool, под New потока операций, выберите Range Collection
.
Изменение рабочих процессов очищает данные области значений, собранные во время активного рабочего процесса.
Вернитесь к Iterative Fixed-Point Conversion
рабочий процесс.
Выберите Derived ranges в качестве режима набора областей значений.
Нажмите кнопку Collect Ranges еще раз, чтобы повторить анализ области значений.
Теперь анализ области значений может вывести области значений для блоков Inport и Gain.
Блок | Производная область значений | Причина |
---|---|---|
<reservedrangesplaceholder1> <reservedrangesplaceholder0>
| [-1..1] | Использует заданную область значений проекта на блоке. |
Gain | [-1.5..1.5] | Диапазон проектирования, заданный на блоке Gain, |
<reservedrangesplaceholder1> <reservedrangesplaceholder0>
| [-1.5..1.5] | То же самое Gain что выход блока, потому что локально заданный область значений проекта на Outport блоке отсутствует. |