exponenta event banner

Использование отслеживания в функциональных блоках MATLAB

Степень прослеживаемости в функциональных блоках MATLAB

Как и другие блоки Simulink ®, функциональные блоки MATLAB поддерживают двунаправленную прослеживаемость, но расширяют навигацию до строк исходного кода. Таким образом, можно перемещаться между строкой сгенерированного кода и соответствующей строкой исходного кода. В других блоках Simulink можно перемещаться между строкой созданного кода и соответствующим ему объектом.

Кроме того, можно включить исходный код в качестве комментариев в созданный код. При выборе исходного кода MATLAB в качестве параметра комментариев исходный код MATLAB ® появляется сразу после связанного тега отслеживания. Дополнительные сведения см. в разделе Включение кода MATLAB в качестве комментариев в созданный код.

Сведения о том, как отслеживаемость работает в блоках Simulink, см. в разделе Проверка сгенерированного кода с помощью трассировки кода (встроенный кодер).

Требования к отслеживаемости

Чтобы включить комментарии отслеживания в коде, необходимо иметь лицензию на ПО Embedded Coder ®. Эти комментарии появляются только в коде, создаваемом для встроенной системы реального времени (ERT) цель.

Примечание

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

Учебное пособие «Использование отслеживания в функциональном блоке MATLAB»

В этом примере показана трассировка между исходным кодом и сгенерированным кодом в функциональном блоке MATLAB в eml_fire модель. Выполните следующие действия.

  1. Напечатать eml_fire по запросу MATLAB.

  2. В окне Модель Simulink на вкладке Моделирование (Modeling) щелкните Параметры модели (Model Settings).

  3. На панели Создание кода перейдите в раздел Выбор цели и введите ert.tlc для системного целевого файла. Затем нажмите Apply.Traceability комментарии отображаются гиперссылками в созданном коде только для встроенного реального времени (ert) цели.

  4. На панели «Создание кода» > «Отчет» выберите параметр «Создать отчет о создании кода» (Simulink Coder), если он еще не выбран.

    Это действие автоматически выбирает параметры Открыть отчет автоматически (Simulink Coder), Код к модели (Embedded Coder) и Модель к коду (Embedded Coder).

  5. Убедитесь, что включены параметры Code-to-model и Model-to-code.

  6. На панели «Создание кода» > «Комментарии» выберите исходный код MATLAB в качестве параметров комментариев (Simulink Coder) и комментариев объектов Stateflow (Simulink Coder). Эти параметры управляют различными частями комментария отслеживания. Дополнительные сведения см. в разделе Расположение комментариев в сгенерированном коде.

  7. Перейдите на панель «Создание кода» > «Интерфейс». В разделе Программная среда выберите параметр непрерывного времени. Затем нажмите кнопку Применить. Поскольку эта примерная модель содержит блок с непрерывным временем выборки, перед созданием кода необходимо выполнить этот шаг.

  8. В окне модели нажмите клавиши CTRL + B.

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

  9. Щелкните значок eml_fire.c гиперссылка в отчете.

  10. Прокрутите код вниз, чтобы увидеть комментарии отслеживания, которые отображаются в виде ссылок внутри /*...*/ скобки, как в этом примере.

  11. Щелкните значок <S2>:1:19 гиперссылка в этом комментарии об отслеживании:

    /* '<S2>:1:19' */

    Строка 19 функции в исходном коде выделяется в редакторе функциональных блоков MATLAB.

  12. Можно отслеживать строку в функции MATLAB по строкам сгенерированного кода. Например, щелкните правой кнопкой мыши по строке 21 функции и выберите в контекстном меню «Создание кода» > «Переход к коду».

    Местоположение кода для строки 21 выделяется в eml_fire.c.

  13. Можно отследить строку сгенерированного кода до строки исходного кода в функции MATLAB, используя гиперссылки номера строки в сгенерированном коде.

Связанные примеры

Подробнее