Недостаточная информация о области значений проекта

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

  1. Откройте 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.

  2. Из Simulink® Apps вкладке выберите Fixed-Point Tool.

  3. В Fixed-Point Tool, под New потока операций, выберите Iterative Fixed-Point Conversion.

  4. В Fixed-Point Tool под System Under Design (SUD) выберите ex_derived_min_max_4 как систему, которую необходимо преобразовать.

  5. В разделе Range Collection Mode выберите Derived ranges.

  6. Нажмите кнопку Collect Ranges.

    В Fixed-Point Tool отображаются производные минимальное и максимальное значения для блоков в модели. Анализ области значений не может вывести максимальное значение для блока Inport, In1. Инструмент подсвечивает этот результат.

  7. Чтобы исправить проблему, задайте проект максимальное значение для In1:

    1. В модели дважды кликните блок Inport, In1.

    2. В диалоговом окне параметров блоков выберите вкладку Signal Attributes.

    3. На этой вкладке установите Maximum равным 1 и нажмите OK. Для обновления схемы нажмите (Ctrl + D).

      Модель отображает обновленное максимальное значение в аннотации блока для In1, [-1..1].

  8. Очистите ранее собранные области значений и повторите анализ области значений.

    1. В Fixed-Point Tool, под New потока операций, выберите Range Collection.

      Изменение рабочих процессов очищает данные области значений, собранные во время активного рабочего процесса.

    2. Вернитесь к Iterative Fixed-Point Conversion рабочий процесс.

    3. Выберите Derived ranges в качестве режима набора областей значений.

    4. Нажмите кнопку Collect Ranges еще раз, чтобы повторить анализ области значений.

    Теперь анализ области значений может вывести области значений для блоков Inport и Gain.

    БлокПроизводная область значенийПричина

    <reservedrangesplaceholder1> <reservedrangesplaceholder0>

    [-1..1]

    Использует заданную область значений проекта на блоке.

    Gain

    [-1.5..1.5]

    Диапазон проектирования, заданный на блоке Gain, [-1.5..1.5]. Производная область значений на входе блока [-1..1] (производная область значений на выходе In1). Поэтому, потому что коэффициент усиления 2, производная область значений на выходе блока Gain является пересечением распространяемой области значений, [-2..2]и проект области значений, [-1.5..1.5].

    <reservedrangesplaceholder1> <reservedrangesplaceholder0>

    [-1.5..1.5]

    То же самое Gain что выход блока, потому что локально заданный область значений проекта на Outport блоке отсутствует.

Похожие темы