В этом примере показано, как импортировать лестничную схему из .L5X
файл, созданный при помощи Rockwell Automation® IDE, такие как RSLogix™ 9 5000 и Studio 5000 в Simulink® окружение. Операция импорта выполняется с помощью plcimportladder
функция.
Рисунок показывает лестничную схему с простым таймером. Лестничная схема состоит из четырех ступеней с контактами (Switch_A
, Light1
, Motor_timer.DN
), катушки (Light1
, Light2
, Motor
), и TON
функцию таймера.
The simple_timer.L5X
файл был создан с использованием среды IDE RSLogix 5000. Фрагмент .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
файл. Файл можно проверить, скомпилировав его в Rockwell Automation IDE.
Если файл действителен, скопируйте .L5X
файл в папку с разрешениями на чтение и запись. Можно также создать отдельную папку для хранения всех импортированных файлов вместе с исходной лестничной схемой .L5X
файл.
Используйте plcimportladder
функция для импорта лестницы в Simulink. В данном примере программа Name
лестницы MainProgram
и MainRoutineName
является MainRoutine
.
>> plcimportladder('simple_timer.L5X')
Лестничная схема импортируется в pwd\simple_timer.slx
Модель Simulink. Информация о состоянии лестничных элементов хранится в памяти хранилища данных и обновляется моделью во время симуляции. The plcout\simple_timer_value.m
вызывается файл на этапе предварительной загрузки модели Simulink. Этот файл устанавливает начальные значения таймера в Motor_timer
память хранилища данных.
The simple_timer.slx
Модель Simulink состоит из контроллера лестничной схемы в качестве верхнего модуля.
Этот контроллер имеет Main Task
и Controller Tags
. The Main Task
состоит из Main Program
.
The Main Program
содержит реализацию Simulink simple_timer.L5X
Лестничная схема. Звон лестницы выполняется сверху вниз и слева направо.
Можно использовать блок Signal Builder для создания тестовых воздействий для Switch_A
и проверьте операцию импортированной лестницы. Можно также сгенерировать код лестничной схемы ПЛК или код С для подсистемы верхнего уровня. Если требуется отредактировать импортированную лестницу, блоки Simulink находятся в шаблоне Ladder Diagram Library
. Чтобы открыть библиотеку, введите:
plcladderlib
Если ваша лестничная схема имеет комментарии, связанные с звоном, эти комментарии также импортируются в Simulink. В окружение Simulink комментарии соединяются с соответствующим звеном. Для примера в лестничной схеме для простого таймера есть комментарий Switch ON Delay
. После импорта лестничной схемы в Simulink, комментарий также импортируется, как показано на Rung 3
импортированной модели Simulink.
Точно так же, когда вы генерируете код Лестничной схемы из модели Simulink, содержащей комментарий к звону, комментарий также генерируется в (L5X)
лестничный файл. Если ваша модель Simulink имеет несколько комментариев, связанных с звоном, в сгенерированной лестничной схеме эти комментарии объединяются в один комментарий с каждым отдельным комментарием, появляющимся в отдельной линии.
Если у вас есть L5X
файл, содержащий AOI со смешанными упорядоченными аргументами, этот порядок сохраняется во время импорта и экспорта файлов.
plccleartypes
| plcgeneratecode
| plcgeneraterunnertb
| plcimportladder
| plcladderlib
| plcladderoption
| plcloadtypes