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

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

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

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

  2. В Model Data Editor выберите вкладку Parameters.

  3. В поле фильтра введите IntGain. Model Data Editor показывает строку, которая соответствует параметру Gain и строке, которая соответствует переменной рабочей области.

  4. В столбце Source нажмите IntGain. Тот блок Gain кажется подсвеченным в диаграмме модели.

  5. В столбце Name кликните по переменной intGain рабочего пространства модели.

  6. Преобразуйте переменную рабочего пространства модели в объект параметра. В столбце Storage Class выберите Convert to parameter object. Установка Storage Class изменяется на Model default, который указывает, что объект параметра препятствует тому, чтобы оптимизация генерации кода устранила устройство хранения данных для переменной. С этой установкой объект использует класс памяти, заданный в редакторе Отображений Кода как значение по умолчанию данных для категории Local parameters.

  7. Сохраните модель и регенерируйте код.

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

  8. В Представлении кода:

    • Ищите intGain.

    • В rtwdemo_roll.c установите свой курсор на меню замещающего знака по P в подсвеченном коде P.intGain. В редакторе моделей заметьте, что Представление кода подсвечивает блок, соответствующий сгенерированному коду.

    • Чтобы видеть определение объекта параметра для intGain в rtwdemo_roll_data.c, кликните по коду определения в диалоговом окне.

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

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