Пользовательские инструкции для моделей лестниц можно создать с помощью блока Custom Instruction. Можно хранить эти блоки, содержащие пользовательские инструкции, в пользовательской библиотеке с именем plcuserlib.slx
. Можно также импортировать, моделировать и экспортировать инструкции лестницы с помощью пользовательских блоков.
Чтобы создать пользовательскую инструкцию, используйте блок Custom Instruction, добавленный в Simulink® PLC Coder™ библиотека лестниц.
Чтобы открыть библиотеку лестниц, в MATLAB® в командной строке введите:
plcladderlib
Библиотека лестниц открывает все блоки, необходимые для создания лестничной схемы в Simulink.
Чтобы создать новую библиотеку Simulink, на вкладке Library нажмите New > Library. На начальной странице Simulink выберите Blank Library и нажмите Create Library.
Перетащите блок Custom Instruction из многозвенной библиотеки в новую библиотеку, которую вы создали.
Чтобы создать собственную логическую модель лестницы, дважды кликните Custom Instruction блок, чтобы увидеть параметры блоков. Используйте меню Help, чтобы просмотреть их описания.
В Instruction Name текстовом поле дайте имя вашей инструкции. Задайте входы и выходы, необходимые для вашего блока команд. Нажмите Apply, а затем нажмите OK.
Чтобы заглянуть внутрь маски, щелкните на блоке Custom Instruction. Блоки внутри маски позволяют команде симулировать с другими инструкциями лестницы ПЛК. Определяемая пользователем логика включена в блок Instruction_Enable.
Сохраните библиотеку следующим plcuserlib.slx
. Можно добавить несколько блоков инструкций к этой библиотеке.
Этот пример показывает, как вычислить квадратный корень входного сигнала с помощью блока Custom Instruction.
Чтобы открыть начальную страницу Simulink, на вкладке Home MATLAB, нажмите Simulink.
Выберите Blank Library и нажмите Create Library.
Сохраните библиотеку следующим plcuserlib.slx
в папку по пути MATLAB.
Чтобы открыть библиотеку лестниц ПЛК, в командной строке MATLAB, введите:
plcladderlib
Перетащите блок Custom Instruction из plcladderlib
в определенную пользователем библиотеку plcuserlib.slx
.
Дважды кликните Custom Instruction блок, чтобы открыть Параметры блоков.
Задайте Instruction Name следующим SQR
. Проверяйте, что Number of Inputs 1
и Input Types задается как массив ячеек разрешенных типов данных. Точно так же проверяйте, что Number of Outputs 1
и Output Types задается как массив ячеек разрешенных типов данных. Нажмите OK.
Щелкните в блоке SQR и дважды щелкните подсистему Instruction_Enable.
Внутри подсистемы Instruction_Enable добавьте блок Sqrt из библиотеки Simulink/Math Operations Library. Дважды кликните этот блок и выберите signedSqrt
из Main > Function, а затем нажмите OK.
Соедините вход и выходные порты с входом и выходными портами блока Sqrt помощью блоков Data Type Conversion.
Перейдите к верхнему уровню библиотеки. Щелкните Lock Links и Unlock Library на вкладке Library, а затем сохраните библиотеку. Теперь Simulink PLC Coder может использовать команду SQR, когда plcuserlib.slx
находится в пути MATLAB. Можно перетащить эту инструкцию в модели из созданной и сохраненной библиотеки.
Чтобы проверить, определил ли Simulink PLC Coder вновь созданную инструкцию, в командной строке MATLAB введите:
plcladderinstructions
Пример на изображении показывает использование команды SQR внутри блока Add-On Instruction.
Блок Custom Instruction не поддерживает инструкции:
С типом данных array
и struct
(композитный) как аргументы.
Которые требуют внутреннего хранения данных (состояний).
Custom Instruction | plcimportladder
| plcladderinstructions
| plcladderlib