plcgenerateladder

(Был удален) Сгенерировать код лестничной схемы из диаграммы Stateflow

plcgenerateladder будет удален в будущем релизе. Для получения дополнительной информации см. раздел Вопросов совместимости.

Описание

plcgenerateladder(chartPath) генерирует код из Stateflow® график (Stateflow), которую можно импортировать в IDE, такую как CODESYS 3.5, и просмотреть как лестничную схему.

plcgenerateladder(chartPath,Name,Value) использует дополнительные опции, заданные одним или несколькими Name,Value аргументы в виде пар. Например, можно создать модель валидации или испытательный стенд для сравнения сгенерированного кода лестничной схемы с исходной диаграммой Stateflow.

Входные параметры

свернуть все

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

Диаграмма Stateflow должна иметь следующие свойства:

  • Входы и выходы к графику должны быть булевыми. Эти входы и выходы соответствуют входным и выходным клеммам вашего ПЛК.

  • Каждое состояние графика должно соответствовать выходам графика.

  • Выражения, управляющие переходом между состояниями, должны включать только логические операции между входами.

Например, на следующем графике c1, c2, c3, и c4 являются логическими входами в модель. A1, A2, A3, и A4 являются логическими выходами из модели.

Некоторые расширенные функции Stateflow не поддерживаются из-за присущих им ограничений в семантике логики лестниц. Полный список неподдерживаемых функций.

Пример: gcb, 'ThreeAspectAutoSignal/Subsystem/AutoSignalChart'

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'GenerateTestBench','on','PLC_OutputDir','laddereqn' генерирует испытательный стенд в дополнение к лестничной схеме и помещает сгенерированные файлы в подпапку laddereqn текущей рабочей папки.

Укажите, нужно ли генерировать испытательный стенд.

Можно импортировать код лестничной схемы и испытательный стенд вместе в целевую среду IDE, такую как CODESYS 3.5. В среде IDE можно проверить соответствие многозвенной схемы испытательного стенда.

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

  • Если эта опция не включена, каждый выход является катушкой, которая представляет состояние на графике.

    Следующий рисунок показывает выход схемы при импорте в IDE CODESYS 3.5. Катушка выхода представляет состояние A1 на графике. Когда состояние активно, катушка получает степень.

  • Если вы включите эту опцию, каждый выход является катушкой, которая представляет состояние графика. Выход также связан с катушками сброса, которые представляют другие состояния. Когда конкретное состояние активно, обмотка сброса отключает силу других состояний.

    Следующий рисунок показывает выход в лестничной схеме при просмотре в IDE CODESYS 3.5. Катушка выхода представляет состояние A1. Чтобы избежать одновременной активации нескольких состояний, сигнал, который включает катушку, также включает катушки сброса, сопоставленные с другими состояниями A2, A3, и A4.

Укажите, должна ли быть сгенерирована модель валидации. Можно использовать модель валидации, чтобы сравнить сгенерированный код Лестничной схемы с исходной диаграммой Stateflow.

Модель валидации имеет два блока Subsystem:

  • Первый блок имеет исходную диаграмму Stateflow.

  • Второй блок имеет код лестничной схемы в MATLAB Function блоке.

Когда вы моделируете эту модель валидации, для всех входов, программное обеспечение проверяет выход второго блока на соответствие первому блоку. Если выход второго блока Subsystem не совпадает с первым, симуляция прекращает работать.

Путь относительно текущей папки, заданный как вектор символов. Сгенерированные коды помещаются в эту подпапку. Если вы не задаете значение, подпапка plcsrc используется.

Выход папки не должно совпадать с именем текущей папки. Для образца, если вы не задаете выхода папку, plcsrc используется. Если текущая папка также plcsrc, возникает ошибка.

Пример: 'out\plccode'

Вопросы совместимости

расширить все

Не рекомендуемый запуск в R2019a

Введенный в R2016b