exponenta event banner

Настройка параметра модели в качестве глобальной переменной для настройки во время выполнения

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

В BasicRollMode подсистема модели rtwdemo_rollнастройте параметр управления PID для отображения в коде в качестве глобальной переменной, значение которой можно настроить.

  1. Откройте окно BasicRollMode подсистема.

  2. Откройте Редактор данных модели (Model Data Editor). На вкладке Моделирование (Modeling) щелкните Редактор данных модели (Model Data Editor).

  3. В Редакторе данных модели (Model Data Editor) выберите вкладку Параметры (Parameters).

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

  5. В столбце «Источник» нажмите IntGain. Этот блок усиления выделяется на схеме модели.

  6. В столбце «Значение» рядом с intGainнажмите кнопку действия (кнопка с тремя вертикальными точками) и выберите «Исследовать».

  7. Преобразование переменной рабочего пространства модели в объект параметра. В обозревателе моделей щелкните правой кнопкой мыши intGain и выбрать Convert to parameter object.

  8. В диалоговом окне на вкладке Создание кода щелкните Настроить в приложении Coder.

  9. В редакторе сопоставлений кодов на вкладке «Параметры» измените значение параметра «Класс хранилища» для intGain кому Model default, что указывает на то, что объект параметра не позволяет оптимизации генерации кода исключить хранение для переменной. С помощью этого параметра объект использует класс хранения, указанный в редакторе сопоставлений кодов, в качестве данных по умолчанию для параметров категории Model.

  10. Сохраните модель и восстановите код.

    Сверните окно отчета о создании кода для исследования позже в этом учебном пособии.

  11. В представлении «Код»:

    • Поиск intGain.

    • В rtwdemo_roll.c, наведите курсор на многоточие P в выделенном коде P.intGain. Обратите внимание, что в редакторе модели вид «Код» выделяет блок, соответствующий сгенерированному коду.

    • Просмотр определения объекта параметра для intGain в rtwdemo_roll_data.cщелкните код определения в диалоговом окне.

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

Затем используйте модель тестового электрического жгута и программное моделирование в цикле (SIL) для сравнения результатов моделирования модели и сгенерированного кода.