Структура сгенерированного кода для допускающих повторное использование подсистем

Эта тема принимает, что вы сгенерировали код Структурированного текста из модели Simulink®. Если вы еще не сделали так, смотрите, Генерируют Структурированный текст от Окна модели.

Пример в этой теме показывает сгенерированный код для IDE Версии 2.3 CoDeSys. Сгенерированный код для других платформ IDE выглядит по-другому.

  1. Откройте модель plcdemo_reusable_subsystem.

  2. Щелкните правой кнопкой по блоку Subsystem и выберите PLC Code> Generate Code for Subsystem.

    Программное обеспечение Simulink PLC Coder™ генерирует код Структурированного текста и помещает его в current_folder/plcsrc/plcdemo_reusable_subsystem.exp.

  3. Если вы не имеете файла plcdemo_reusable_subsystem.exp открытым, открываете его в редакторе MATLAB®.

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

  4. Исследуйте сгенерированный код Структурированного текста. Код задает FUNCTION_BLOCK S1 однажды.

    Ищите две переменные экземпляра, которые соответствуют этим двум экземплярам, объявленным в родительском FUNCTION_BLOCK ReusableSubsystem (i0_S1: S1 и i1_S1: S1). Код вызывает эти два экземпляра отдельно путем передачи в различных входных параметрах. Код вызывает выходные параметры на семантику выполнения Simulink.

  5. Для IEC 61131-3 совместимых цели, нешаг и вывод ssMethodType не используют выходные переменные FUNCTION_BLOCK. Поэтому сгенерированный код Структурированного текста для SS_INITIALIZE не содержит операторы присваивания для выходных параметров Y1 и Y2.

    Примечание

    Эта оптимизация применима только к IEC 61131-3 совместимых цели.