Примечание
Лестничная генерация схемы из графиков Stateflow® будет удалена в будущем релизе. Чтобы сгенерировать лестничные схемы, используйте модели Simulink® вместо этого. Чтобы создать модели Simulink, совместимые с лестничной генерацией логики, выполнить одно из следующих действий:
Используйте блоки из библиотеки PLC Ladder, чтобы создать модель, которая совместима с лестничной генерацией схемы. Чтобы открыть библиотеку PLC Ladder, введите plcladderlib
в командной строке MATLAB.
Импортируйте лестничную логику из файла L5X с plcimportladder
функция.
Чтобы сгенерировать лестничную логику из моделей Simulink, используйте эти функции: plcgeneratecode
и plcgeneraterunnertb
В этом примере показано, как подготовить вашу диаграмму Stateflow к Лестничной генерации кода Схемы. Если ваш график готов, можно сгенерировать Лестничный код Схемы из графика.
Для полного Лестничного рабочего процесса генерации кода Схемы смотрите Лестничный Рабочий процесс Генерации Схемы.
Используйте Stateflow, чтобы спроектировать машину состояний та модель PLC контроллеры. Ваша диаграмма Stateflow должна иметь эти свойства:
Вводы и выводы к графику должны быть булевской переменной. Они соответствуют терминалам ввода и вывода вашего PLC.
Каждое состояние в графике должно соответствовать выходу. Выход верен, если состояние активно.
Чтобы гарантировать, что каждое состояние в графике сопоставлено с выходом в диалоговом окне Properties каждого состояния, выбирают Create output for monitoring. Затем выберите Self activity
.
Условия перехода должны включить только Логические операции, такие как ~
, &
, и |
между входными параметрами.
Например, в следующем графике, transitionCondition1
, и transitionCondition2
булевы входные параметры к модели. State1
, State2
, и State3
соответствуйте булевым выходным параметрам из модели.
Некоторые совершенствовались, функции Stateflow не поддерживаются из-за свойственных ограничений в Лестничной семантике Схемы. Можно использовать функцию plccheckforladder
проверять, имеет ли график необходимые свойства. Можно также использовать функцию plcprepareforladder
изменить определенные свойства диаграммы так, чтобы график был готов к Лестничной генерации кода Схемы.
Можно начать генерировать Лестничный код Схемы из графика. Смотрите, что пример в Генерирует Лестничный Код Схемы Simulink PLC Coder от диаграммы Stateflow.
Если вы хотите сгенерировать испытательный стенд для валидации Лестничного кода Схемы, создайте тестовую обвязку для диаграммы Stateflow. Тестовая обвязка может состоять из нескольких тестов. Используя тестовую обвязку, Simulink PLC Coder™ может сгенерировать испытательные стенды для валидации Лестничного кода Схемы.
Можно вручную создать тестовую обвязку при помощи блока Signal Builder или автоматически сгенерировать тестовую обвязку при помощи Simulink Design Verifier™. Автоматически сгенерировать тестовую обвязку:
Щелкните правой кнопкой по графику или подсистеме, содержащей график. Выберите Design Verifier> Generate Tests for Subsystem.
После тестового создания выберите Create harness model.
Модель тестовой обвязки создается. Модель состоит из исходной подсистемы вместе с входными параметрами от блока Signal Builder. Блок состоит из нескольких тестов, так, чтобы состояния и переходы в вашей модели были покрыты, по крайней мере, однажды.
Можно также создать тесты при помощи других блоков из Библиотеки Simulink. Однако необходимо гарантировать, что входные параметры к графику являются булевской переменной.
Можно теперь сгенерировать Лестничный код Схемы из графика и подтвердить схему.
Чтобы сгенерировать Лестничный код Схемы только, используйте исходную диаграмму Stateflow.
Чтобы сгенерировать Лестничный код Схемы с испытательным стендом, используйте диаграмму Stateflow вместе с булевыми входными параметрами от тестов. Например, если вы создаете модель тестовой обвязки с Simulink Design Verifier, используйте модель тестовой обвязки для Лестничного кода Схемы и генерации испытательного стенда вместо исходного графика.
Смотрите генерируют лестничный код схемы Simulink PLC Coder от диаграммы Stateflow.