Сгенерируйте лестничный код схемы от диаграммы Stateflow

Примечание

Лестничная генерация схемы из графиков Stateflow® будет удалена в будущем релизе. Чтобы сгенерировать лестничные схемы, используйте модели Simulink® вместо этого. Чтобы создать модели Simulink, совместимые с лестничной генерацией логики, выполнить одно из следующих действий:

  • Используйте блоки из библиотеки PLC Ladder, чтобы создать модель, которая совместима с лестничной генерацией схемы. Чтобы открыть библиотеку PLC Ladder, введите plcladderlib в командной строке MATLAB.

  • Импортируйте лестничную логику из файла L5X с plcimportladder функция.

Чтобы сгенерировать лестничную логику из моделей Simulink, используйте эти функции: plcgeneratecode и plcgeneraterunnertb

В этом примере показано, как к:

  • Сгенерируйте код от диаграммы Stateflow, которую можно просмотреть как Лестничную Схему в IDE.

  • Сгенерируйте испытательный стенд для валидации Лестничного кода Схемы в вашем IDE.

Для полного Лестничного рабочего процесса генерации кода Схемы смотрите Лестничный Рабочий процесс Генерации Схемы.

Диаграмма Stateflow и лестничная логическая схема

Рисунок показывает диаграмму Stateflow, которая реализует логику с тремя аспектами, логику решения для многих железнодорожных приложений сигнализации.

График состоит из пяти состояний: Init, Fault, Red, Yellow, и Green. На основе входа к графику могут произойти переходы к любому из этих состояний. Например, Red состояния становится активным в следующих сценариях:

  • Инициализация и включается: предыдущим состоянием является Init и условие Power_Up верно.

  • Исправление отказа: предыдущим состоянием является Fault и условие VLDHealthy & FaultRectified верно.

  • Переходы от других цветов: предыдущим состоянием является Green или Yellow, условия, которые позволяют переход к Red верны, и условия, которые позволяют переход к другому цвету или к Fault состояние является ложным.

  • Красное пребывание: предыдущим состоянием является Red и условия, которые позволяют переход к другому состоянию, являются ложными.

Рисунок показывает фрагмент Лестничного кода Схемы, сгенерированного из графика, когда просматривается в CODESYS 3.5 IDE. Лестничная Схема состоит из контактов (обычно открытый и обычно закрытый) и обмотки (нормальный, набор и сброс).

Можно сопоставить элементы исходной диаграммы Stateflow к этим обмоткам и контактам. Например, обмоточный Red_new соответствует обновлению Red состояния в диаграмме Stateflow. Для обмотки, чтобы получить степень, одно из следующего должно быть верным:

  • Инициализация и включается: обычно размыкают контакты Init и Power_Up должен быть закрыт.

  • Исправление отказа: обычно размыкают контакты Fault и T_1_1_trans должен быть закрыт. Контакт T_1_1_trans представляет условие перехода VLDHealthy & FaultRectified в графике.

  • Переходы от других цветов: обычно размыкают контакт Green должен быть закрыт и следующее должно быть верным:

    • Обычно размыкают контакт T_2_3_trans должен быть закрыт. Этот контакт соответствует условию графика, которое должно быть верно для перехода к Red состояние.

    • Обычно закрытые контакты T_2_1_trans и T_2_2_trans должен остаться закрытым. Эти контакты соответствуют условию графика, которое должно быть ложным для перехода к Red состояние. Если условия верны, открытые контакты и обмотка больше не получает степень.

  • Красное пребывание: обычно размыкают контакт Red должен быть закрыт, и обычно закрытые контакты T_4_1_trans и T_4_2_trans должен остаться закрытым. Эти контакты соответствуют условиям графика, которые должны быть ложными для Red состояние, чтобы продолжить быть активным. Если условия верны, открытые контакты и обмотка больше не получает степень.

Сгенерируйте лестничную схему из графика

Сгенерировать Лестничный код Схемы из модели plcdemo_ladder_three_aspect:

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

  2. Задайте целевой IDE, для которого можно сгенерировать Лестничный код Схемы.

    Щелкните правой кнопкой по графику и выберите PLC Code> Options. Задайте поддерживаемый IDE для опции Целевой IDE. Смотрите ИДЫ, Поддержанные для Лестничной Генерации кода Схемы.

  3. Щелкните правой кнопкой по графику и выберите PLC Code> Generate Ladder Logic for Chart.

Если генерация кода успешна в подпапке plcsrc из текущей рабочей папки вы видите файл ModelName.xml. Вы импортируете этот файл к своему IDE и просматриваете Лестничную Схему. Для CODESYS 3.5 IDE см. Лестничный Код Схемы Импорта к CODESYS 3.5 IDE и Подтвердите Схему.

Можно также использовать функциональный plcgenerateladder сгенерировать Лестничный код Схемы от диаграммы Stateflow.

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

Можно сгенерировать испытательный стенд, чтобы подтвердить сгенерированный Лестничный код Схемы. Вы импортируете код вместе с испытательным стендом в вашем IDE и подтверждаете Лестничную Схему против исходной диаграммы Stateflow с помощью испытательного стенда. Сгенерировать испытательный стенд наряду с Лестничным кодом Схемы:

  1. Щелкните правой кнопкой по графику и выберите PLC Code> Options. Выберите опцию, Генерируют Испытательный стенд для Подсистемы.

  2. Щелкните правой кнопкой по графику и выберите PLC Code> Generate Ladder Logic for Chart.

Испытательные стенды используют входные параметры для исходной диаграммы Stateflow. Поэтому можно создать тестовые обвязки для исходного графика и снова использовать их для валидации Лестничного кода Схемы.

Можно также использовать функциональный plcgenerateladder сгенерировать испытательные стенды.

После генерации Лестничного кода Схемы и испытательных стендов, можно импортировать их к IDE. Для CODESYS 3.5 IDE см. Лестничный Код Схемы Импорта к CODESYS 3.5 IDE и Подтвердите Схему.