Эта тема принимает, что вы сгенерировали код Структурированного текста из модели Simulink®. Если вы еще не сделали так, смотрите, Генерируют Структурированный текст от Окна модели.
Пример в этой теме показывает сгенерированный код для IDE Версии 2.3 CoDeSys. Сгенерированный код для других платформ IDE выглядит по-другому.
Откройте plcdemo_reusable_subsystem
модель.
Щелкните правой кнопкой по блоку Subsystem и выберите PLC Code> Generate Code for Subsystem.
Программное обеспечение Simulink PLC Coder™ генерирует код Структурированного текста и помещает его в
.current_folder
/plcsrc/plcdemo_reusable_subsystem.exp
Если у вас нет plcdemo_reusable_subsystem.exp
файл, открытый, открытый это в редакторе MATLAB®.
Следующая фигура иллюстрирует отображение сгенерированного кода к компонентам Структурированного текста для допускающей повторное использование Подсистемы Simulink. Эта диаграмма содержит копию иерархической подсистемы, ReusableSubsystem. Эта подсистема содержит две идентичных подсистемы, S1 и S2. Эта настройка включает повторное использование кода между этими двумя экземплярами (ищите ReusableSubsystem
представьте в виде строки в коде).
Исследуйте сгенерированный код Структурированного текста. Код задает FUNCTION_BLOCK S1
однажды.
Ищите две переменные экземпляра, которые соответствуют этим двум экземплярам, объявленным в родительском FUNCTION_BLOCK ReusableSubsystem
(i0_S1: S1
и i1_S1: S1
). Код вызывает эти два экземпляра отдельно путем передачи в различных входных параметрах. Код вызывает выходные параметры на семантику выполнения Simulink.
Для IEC 61131-3 совместимых цели, нешаг и выход ssMethodType
не используйте выходные переменные FUNCTION_BLOCK
. Поэтому сгенерированный код Структурированного текста для SS_INITIALIZE
не содержит операторы присваивания для выходных параметров Y1
и Y2
.
Эта оптимизация применима только к IEC 61131-3 совместимых цели.