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

В этой теме предполагается, что вы сгенерировали код структурированного текста из Simulink® модель. Если вы еще не сделали этого, см. «Генерация структурированного текста из окна модели».

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

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

  2. Откройте приложение PLC Coder .

  3. Нажмите Generate PLC Code.

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

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

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

  5. Исследуйте сгенерированный код структурированного текста. Код определяет FUNCTION_BLOCK S1 один раз.

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

  6. Для совместимых с МЭК 61131-3 целей, неперехода и выхода ssMethodType не используйте выходные переменные FUNCTION_BLOCK. Поэтому сгенерированный код структурированного текста для SS_INITIALIZE не содержит операторов назначения для выходов Y1 и Y2.

    Примечание

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