В этом примере показано, как импортировать Лестничную Схему из .L5X
файл, созданный с помощью Роквелла Automation® IDEs, такого как RSLogix™9 5000 и Studio 5000 в среду Simulink®. Операция импорта выполняется с помощью plcimportladder
функция.
Рисунок показывает Лестничную Схему с простым таймером. Лестничная Схема состоит из четырех ступенек с контактами (Switch_A
, Light1
, Motor_timer.DN
), обмотки (Light1
, Light2
, Motor
), и TON
таймерная функция.
simple_timer.L5X
файл был создан с помощью RSLogix 5000 IDE. Отрывок .L5X
файл показывают.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <RSLogix5000Content SchemaRevision="1.0" SoftwareRevision="30.00" TargetName="simple_timer" TargetType="Controller" ContainsContext="false" Owner="Arun Mathew Iype, MathWorks" ExportDate="Mon Nov 12 16:35:28 2018" ExportOptions="NoRawData L5KData DecoratedData ForceProtectedEncoding AllProjDocTrans"> <Controller Use="Target" Name="simple_timer" ProcessorType="Emulate 5570" MajorRev="30" MinorRev="11" TimeSlice="20" ShareUnusedTimeSlice="1" ProjectCreationDate="Mon Nov 12 16:33:36 2018" LastModifiedDate="Mon Nov 12 16:33:43 2018" SFCExecutionControl="CurrentActive" SFCRestartPosition="MostRecent" SFCLastScan="DontScan" ProjectSN="16#0000_0000" MatchProjectToController="false" CanUseRPIFromProducer="false" InhibitAutomaticFirmwareUpdate="0" PassThroughConfiguration="EnabledWithAppend" DownloadProjectDocumentationAndExtendedProperties="true" DownloadProjectCustomProperties="true" ReportMinorOverflow="false"> <RedundancyInfo Enabled="false" KeepTestEditsOnSwitchOver="false" IOMemoryPadPercentage="90" DataTablePadPercentage="50"/> <Security Code="0" ChangesToDetect="16#ffff_ffff_ffff_ffff"/> <SafetyInfo/> <DataTypes/> <Modules> <Module Name="Local" CatalogNumber="Emulate 5570" Vendor="1" ProductType="14" ProductCode="53" Major="30" Minor="11" ParentModule="Local" ParentModPortId="1" Inhibited="false" MajorFault="true"> <EKey State="ExactMatch"/> <Ports> <Port Id="1" Address="0" Type="ICP" Upstream="false"> <Bus Size="10"/> </Port> </Ports> </Module> </Modules> <AddOnInstructionDefinitions/> <Tags/> <Programs> <Program Name="MainProgram" TestEdits="false" MainRoutineName="MainRoutine" Disabled="false" UseAsFolder="false"> ... <Tags>
Прежде, чем импортировать .L5X
файл в Simulink:
Проверьте, что Лестничным файлом Схемы является допустимый .L5X
файл. Файл может быть проверен путем компиляции его в IDE Rockwell Automation.
Если файл допустим, скопируйте .L5X
файл в директорию с чтением и полномочия записи. Можно также создать отдельную папку, чтобы хранить все импортированные файлы наряду с исходной Лестничной Схемой .L5X
файл.
Используйте plcimportladder
функционируйте, чтобы импортировать лестничную структуру в Simulink. В данном примере программа Name
из лестничной структуры MainProgram
и MainRoutineName
MainRoutine
.
>> plcimportladder('simple_timer.L5X')
Лестничная Схема импортируется в pwd\simple_timer.slx
Модель Simulink. Информация состояния лестничных элементов хранится в памяти хранилища данных и обновленный моделью в процессе моделирования. plcout\simple_timer_value.m
файл называется во время этапа предварительной нагрузки модели Simulink. Этот файл устанавливает начальные значения таймера в Motor_timer
память хранилища данных.
simple_timer.slx
Модель Simulink состоит из Лестничного Контроллера Схемы как главный модуль.
У этого контроллера есть Main Task
и Controller Tags
. Main Task
состоит из Main Program
.
Main Program
содержит реализацию Simulink simple_timer.L5X
Лестничная Схема. Лестничная структура, которой звонят, выполняется сверху донизу и слева направо.
Можно использовать блок Signal Builder, чтобы создать тестовые воздействия для Switch_A
и проверьте операцию импортированной лестничной структуры. Можно также сгенерировать Лестничный код Схемы PLC или код С для подсистемы верхнего уровня. Если вы хотите отредактировать импортированную лестничную структуру, блоки Simulink находятся в шаблоне Ladder Diagram Library
. Открыть библиотеку, введите:
plcladderlib
При импорте .L5X
файл, который содержит непрерывную задачу, импортированная модель Simulink, имеет шаг расчета -1
. Для периодических задач шаг расчета является значением, заданным в .L5X
файл. Задачи события не поддержаны.
Simulink PLC Coder™ не может выполнить тот же приказ инициализации, заданный в Prescan
режим. Вы не должны считывать данные из переменных, которые инициализируются Prescan
режим, когда это приведет к различному поведению в симуляции модели когда по сравнению с выполнением в IDE. Следующие инструкции затронуты этим ограничением; OTE, ONS, OSF, OSR, CTD, CTU, TON, TOF, RTO, JSR, AOI и FBC
Если вы, Лестничная реализация Схемы имеет несколько AOI или экземпляры стандартной подпрограммы с тем же именем, программное обеспечение, не проверяете, относятся ли эти экземпляры к той же реализации. Рекомендуется использовать различные имена, если эти структуры содержат различную функциональность.
plccleartypes
| plcgeneratecode
| plcgeneraterunnertb
| plcimportladder
| plcladderlib
| plcladderoption
| plcloadtypes