Моделирование и симуляция лестничных схем в Simulink

Лестничная функция моделирования Simulink® PLC Coder™ позволяет вам создать Лестничные схемы в окружение Simulink в качестве модели. После создания Лестничной схемы можно моделировать и генерировать код для моделей Лестничной схемы из окружения Simulink.

  1. Чтобы создать лестничную схему, откройте библиотеку Simulink PLC Coder Ladder. В MATLAB® в командной строке введите:

    plcladderlib

    Откроется библиотека Лестница, содержащая все блоки, необходимые для создания лестничной схемы в Simulink.

  2. Создайте пустую модель Simulink. Можно перетащить соответствующие блоки из библиотеки, чтобы создать свою логическую модель лестницы в Simulink. Для каждого блока можно дважды кликнуть блок, чтобы увидеть параметры блоков и использовать help меню для просмотра его описания. Для получения дополнительной информации о инструкциях по лестницам, реализуемых этими блоками, см. Справочное руководство по общим инструкциям контроллеров LOGIX 5000.

  3. Библиотека лестниц Simulink PLC Coder содержит логический блок лестницы верхнего уровня, такой как PLCControllerSuite, PLC Controller, Task, Ladder Diagram Program, Ladder diagram Subroutine, Ladder Diagram Function Block (AOI) и AOI Runner. Все эти блоки являются организационными блоками (контейнерами лестничной схемы), которые не могут быть на ступенях лестничной схемы. Помимо этих организационных блоков, другие блоки из библиотеки не могут быть логическим блоком лестницы верхнего уровня для симуляции.

    • PLCControllerSuite можете держать теги контроллера, которые видны для всех логических блоков лестницы в этом контроллере, а также могут содержать Task блок.

    • PLCController позволяет вам создавать логику лестницы непосредственно. Все теги в лестничной схеме уровня контроллера являются тегами контроллера (глобальные переменные или символы ввода-вывода)

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

      Примечание

      Генерация кода для пустых блоков Task не поддерживается. Если блок Task пуст, программа не выдает предупреждений или ошибок во время генерации кода, но сгенерированный код производит ошибки в IDE Rockwell.

    • Ladder Diagram Program позволяет создавать логику лестницы непосредственно. Лестничная схема уровня программы может иметь переменные возможности программы, а также может получить доступ к тегам контроллера, если они определены.

    • Ladder Diagram Subroutine позволяет вам создать и определить именованную стандартную программу многозвенной цепи. Можно отредактировать логику, реализованную стандартной подпрограммой, нажав на Routine Logic кнопка в меню параметров блоков этого блока.

    • Ladder Diagram Function Block (AOI) позволяет вам создать функциональный блок Лестничная схема. Можно отредактировать параметры и спецификации этого блока с помощью различных опций, доступных в меню параметров блоков этого блока.

    • AOI Runner специальный программный блок, который может содержать только один Функциональный блок лестничной схемы (AOI: дополнение инструкция), предназначенный для тестирования AOI (генерация и верификация испытательного стенда).

  4. Перетащите блок PLCControllerSuite в пустую модель, созданную вами на предыдущем шаге. Можно дважды кликнуть каждый организационный модуль, чтобы перейти к логике лестницы нижнего уровня и создать лестничную схему. Показана пустая логическая семантика лестницы.

  5. Используйте блоки XIC и Motor из библиотеки, чтобы создать простую лестничную схему. Используйте Add Rungs или Add 1 Rung кнопки в логике лестницы семантично, чтобы добавить новый звон. Все добавленные блоки должны находиться на звене. Используйте блок Junction для объединения звеньев ветвей.

  6. Дважды кликните каждый новый блок, добавленный к звону, и укажите теги. В лестничных схемах теги (переменные) используются для представления всех входов, выходов и внутренней памяти. Тег может быть именем переменной или выражением типа:

    • Имя переменной: Start, Stop, Switch

    • Доступ к битам: MyInt.0, MyInt.31

    • Элемент массива: A [1], B [2,3], C [idx], D [i, j]. Использование скобок для индексации не разрешено в выражении тега. Для примера A (2) незаконно.

    • Структура: A.B, C.D, E.F.G

    • Смесь: A [1] .B [i, j] .C [3] .D

    • Выражения: A [3] .B > C.D; A [3] + B [4] .C

  7. Теги могут иметь такие атрибуты, как Data Type, Initial Value, и size. Чтобы изменить атрибуты тега, откройте таблицу Program Variables в блоке Ladder Diagram Program. Можно удалить неиспользованные переменные в таблице переменных, выбрав опцию Delete. Чтобы изменения вступили в эффект, необходимо выбрать Apply. Перейдите к блоку уровня контроллера и дважды щелкните по таблице Controller Tags, чтобы задать атрибуты глобальной переменной и символа ввода-вывода.

  8. Чтобы добавить комментарии прогона к модели в Simulink, создайте связную аннотацию (см Motor Control Logic на изображении) к клеммному блоку rung. Дополнительные сведения о соединителях аннотаций см. в разделе «Связывание аннотаций с блоками и зонами».

  9. Обновите логическую модель лестницы, чтобы отразить изменения. Теперь вы создали простую модель лестницы в Simulink.

Моделируйте AOI- Предварительного скана Стандартной программы

  1. Дважды кликните Function Block (AOI) внутри родительского программного модуля.

  2. Установите флажок Allow Prescan Routine и нажмите кнопку Apply.

  3. Нажмите кнопку Prescan Routine.

  4. Добавьте логику к лестничной Prescan Routine.

Примечание

Если Function Block (AOI) находится на верхнем уровне модели лестничной схемы, а не внутри родительского программного модуля, опция Allow Prescan Routine не активируется.

Симуляция модели лестницы

Чтобы выполнить симуляцию лестничной схемы в Simulink, вы должны подключить соответствующие входные и выходные блоки к модели лестницы.

  1. Используйте plcladderoption функция включения Animation. В командной строке MATLAB введите:

    plcladderoption('simpleController','Animation','on')

  2. Соедините входные и выходные порты с блоком PLCControllerSuite, чтобы предоставить входы для симуляции и считать выходы. Необходимо изменить атрибуты тегов switch и motor. Чтобы изменить атрибуты тега, откройте таблицу Program Variables в блоке Ladder Diagram Program и установите их в значения, показанные.

  3. Перейдите к блоку уровня контроллера и дважды щелкните по таблице Controller Tags, чтобы задать атрибуты глобальной переменной и символа ввода-вывода.

  4. Теперь программное обеспечение добавляет входные и выходные порты к блоку PLCControllerSuite. Можно использовать блоки Simulink, чтобы добавить входы в модель лестницы. Например, можно использовать блок Constant, чтобы добавить логические входы для имитации поведения switch.

  5. Переход к Ladder Diagram Program блоку модели лестницы и Step Forward через симуляцию. Программа использует предоставленные входы, запускает поведенческую симуляцию и анимирует лестничные звенья и блоки на основе состояния выполнения.

  6. Можно продолжить шаг вперед или запустить непрерывную симуляцию до конца.

См. также

| | | | | |

Похожие темы