[Project] Added a simple plc runtime for tests
This commit is contained in:
parent
124e93e828
commit
4e4ed5aa0f
|
@ -0,0 +1,34 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Privilege>
|
||||
<Container>
|
||||
<Parameters>
|
||||
<Parameter name="secretKey" value="CHANGE-ME"/>
|
||||
<Parameter name="secretSalt" value="CHANGE-ME"/>
|
||||
<Parameter name="persistSessions" value="true"/>
|
||||
<Parameter name="autoPersistOnUserChangesData" value="true"/>
|
||||
<Parameter name="privilegeConflictResolution" value="MERGE"/>
|
||||
<Parameter name="allowSessionRefresh" value="true"/>
|
||||
</Parameters>
|
||||
<EncryptionHandler class="li.strolch.privilege.handler.DefaultEncryptionHandler">
|
||||
<Parameters>
|
||||
<Parameter name="hashAlgorithm" value="PBKDF2WithHmacSHA512"/>
|
||||
<Parameter name="hashIterations" value="10000"/>
|
||||
<Parameter name="hashKeyLength" value="256"/>
|
||||
</Parameters>
|
||||
</EncryptionHandler>
|
||||
<PersistenceHandler class="li.strolch.privilege.handler.XmlPersistenceHandler">
|
||||
<Parameters>
|
||||
<Parameter name="usersXmlFile" value="PrivilegeUsers.xml"/>
|
||||
<Parameter name="rolesXmlFile" value="PrivilegeRoles.xml"/>
|
||||
</Parameters>
|
||||
</PersistenceHandler>
|
||||
<UserChallengeHandler class="li.strolch.privilege.handler.MailUserChallengeHandler" />
|
||||
</Container>
|
||||
<Policies>
|
||||
<Policy name="DefaultPrivilege" class="li.strolch.privilege.policy.DefaultPrivilege"/>
|
||||
<Policy name="ModelPrivilege" class="li.strolch.runtime.privilege.ModelPrivilege"/>
|
||||
<Policy name="RoleAccessPrivilege" class="li.strolch.privilege.policy.RoleAccessPrivilege"/>
|
||||
<Policy name="UserAccessPrivilege" class="li.strolch.privilege.policy.UserAccessPrivilege"/>
|
||||
<Policy name="UserSessionAccessPrivilege" class="li.strolch.privilege.policy.UsernameFromCertificatePrivilege"/>
|
||||
</Policies>
|
||||
</Privilege>
|
|
@ -0,0 +1,196 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Roles>
|
||||
|
||||
<!--
|
||||
Internal
|
||||
-->
|
||||
<Role name="ModelAccessor">
|
||||
<Privilege name="GetOrder" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="AddOrder" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="AddActivity" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="UpdateResource" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="UpdateActivity" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="GetActivity" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RemoveActivity" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="GetResource" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RemoveResource" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="AddResource" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="UpdateOrder" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RemoveOrder" policy="ModelPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<Role name="StrolchAdmin">
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.handler.operationslog.OperationsLog" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.search.StrolchSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.report.ReportSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.job.StrolchJob" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.job.StrolchJobsHandler" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<Role name="UserPrivileges">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege"/>
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege"/>
|
||||
</Role>
|
||||
<Role name="PrivilegeAdmin">
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeUpdateUserRolesService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserPasswordService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeSetUserLocaleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeRemoveRoleFromUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.users.PrivilegeAddRoleToUserService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeUpdateRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemoveRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeRemovePrivilegeFromRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddRoleService</Allow>
|
||||
<Allow>li.strolch.service.privilege.roles.PrivilegeAddOrReplacePrivilegeOnRoleService</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="InvalidateSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserPassword" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="RequirePasswordChange" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserLocale" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAction" policy="DefaultPrivilege">
|
||||
<Allow>Reload</Allow>
|
||||
<Allow>GetPolicies</Allow>
|
||||
<Allow>Persist</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>PersistSessions</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeSetUserState" policy="UserAccessPrivilege">
|
||||
<Deny>SYSTEM</Deny>
|
||||
<Allow>DISABLED</Allow>
|
||||
<Allow>ENABLED</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRoleToUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="GetSession" policy="UserSessionAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveRoleFromUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAddRole" policy="RoleAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
<Role name="agent">
|
||||
<Privilege name="PrivilegeAddUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeRemoveUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.search.StrolchSearch" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.privilege.handler.SystemAction" policy="DefaultPrivilege">
|
||||
<Allow>li.strolch.runtime.privilege.StrolchSystemAction</Allow>
|
||||
<Allow>li.strolch.runtime.privilege.StrolchSystemActionWithResult</Allow>
|
||||
<Allow>li.strolch.persistence.postgresql.PostgreSqlSchemaInitializer</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeAction" policy="DefaultPrivilege">
|
||||
<Allow>Persist</Allow>
|
||||
<Allow>GetCertificates</Allow>
|
||||
<Allow>PersistSessions</Allow>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeGetUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.model.query.StrolchQuery" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="li.strolch.service.api.Service" policy="DefaultPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
<Privilege name="PrivilegeModifyUser" policy="UserAccessPrivilege">
|
||||
<AllAllowed>true</AllAllowed>
|
||||
</Privilege>
|
||||
</Role>
|
||||
|
||||
</Roles>
|
|
@ -0,0 +1,25 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<Users>
|
||||
<!-- password: admin -->
|
||||
<User password="$PBKDF2WithHmacSHA512,10000,256$83c5d3697a69497ed4d999cde98a6a2c586114435cab5a80327734b3a032766b$c9185893044f5421f28c2a6def129e072186c7d73b78ec4ec60c1044c97546fe" userId="U10" username="admin">
|
||||
<Firstname>Admin</Firstname>
|
||||
<Lastname>Admin</Lastname>
|
||||
<State>ENABLED</State>
|
||||
<Locale>en-GB</Locale>
|
||||
<Roles>
|
||||
<Role>ModelAccessor</Role>
|
||||
<Role>PrivilegeAdmin</Role>
|
||||
<Role>StrolchAdmin</Role>
|
||||
<Role>UserPrivileges</Role>
|
||||
</Roles>
|
||||
</User>
|
||||
<User userId="S01" username="agent">
|
||||
<State>SYSTEM</State>
|
||||
<Locale>en</Locale>
|
||||
<Roles>
|
||||
<Role>ModelAccessor</Role>
|
||||
<Role>PrivilegeAdmin</Role>
|
||||
<Role>agent</Role>
|
||||
</Roles>
|
||||
</User>
|
||||
</Users>
|
|
@ -0,0 +1,180 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchConfiguration>
|
||||
<env id="global">
|
||||
<Runtime>
|
||||
<applicationName>Strolch PLC</applicationName>
|
||||
<Properties>
|
||||
<locale>en</locale>
|
||||
<verbose>true</verbose>
|
||||
<timezone>Europe/Zurich</timezone>
|
||||
</Properties>
|
||||
</Runtime>
|
||||
|
||||
<Component>
|
||||
<name>PrivilegeHandler</name>
|
||||
<api>li.strolch.runtime.privilege.PrivilegeHandler</api>
|
||||
<impl>li.strolch.runtime.privilege.DefaultStrolchPrivilegeHandler</impl>
|
||||
<Properties>
|
||||
<privilegeConfigFile>PrivilegeConfig.xml</privilegeConfigFile>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component>
|
||||
<name>PersistenceHandler</name>
|
||||
<api>li.strolch.persistence.api.PersistenceHandler</api>
|
||||
<impl>li.strolch.persistence.xml.XmlPersistenceHandler</impl>
|
||||
<Properties>
|
||||
<dbStorePath>dbStore</dbStorePath>
|
||||
<allowDataInitOnEmptyDb>true</allowDataInitOnEmptyDb>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component>
|
||||
<name>RealmHandler</name>
|
||||
<api>li.strolch.agent.api.RealmHandler</api>
|
||||
<impl>li.strolch.agent.impl.DefaultRealmHandler</impl>
|
||||
<depends>PrivilegeHandler</depends>
|
||||
<depends>PersistenceHandler</depends>
|
||||
<Properties>
|
||||
<realms>defaultRealm</realms>
|
||||
<dataStoreMode>CACHED</dataStoreMode>
|
||||
<dataStoreFile>defaultModel.xml</dataStoreFile>
|
||||
<enableObserverUpdates>true</enableObserverUpdates>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>EnumHandler</name>
|
||||
<api>li.strolch.runtime.query.enums.EnumHandler</api>
|
||||
<impl>li.strolch.runtime.query.enums.DefaultEnumHandler</impl>
|
||||
<depends>RealmHandler</depends>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>ServiceHandler</name>
|
||||
<api>li.strolch.service.api.ServiceHandler</api>
|
||||
<impl>li.strolch.service.api.DefaultServiceHandler</impl>
|
||||
<depends>RealmHandler</depends>
|
||||
<depends>PrivilegeHandler</depends>
|
||||
<Properties>
|
||||
<verbose>true</verbose>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>PolicyHandler</name>
|
||||
<api>li.strolch.policy.PolicyHandler</api>
|
||||
<impl>li.strolch.policy.DefaultPolicyHandler</impl>
|
||||
<Properties>
|
||||
<readPolicyFile>true</readPolicyFile>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>MigrationsHandler</name>
|
||||
<api>li.strolch.migrations.MigrationsHandler</api>
|
||||
<impl>li.strolch.migrations.MigrationsHandler</impl>
|
||||
<depends>RealmHandler</depends>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>OperationsLog</name>
|
||||
<api>li.strolch.handler.operationslog.OperationsLog</api>
|
||||
<impl>li.strolch.handler.operationslog.OperationsLog</impl>
|
||||
<depends>RealmHandler</depends>
|
||||
<Properties>
|
||||
<maxMessages>200</maxMessages>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>StrolchJobsHandler</name>
|
||||
<api>li.strolch.job.StrolchJobsHandler</api>
|
||||
<impl>li.strolch.job.StrolchJobsHandler</impl>
|
||||
<depends>RealmHandler</depends>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>SessionHandler</name>
|
||||
<api>li.strolch.rest.StrolchSessionHandler</api>
|
||||
<impl>li.strolch.rest.DefaultStrolchSessionHandler</impl>
|
||||
<depends>PrivilegeHandler</depends>
|
||||
<Properties>
|
||||
<session.ttl.minutes>30</session.ttl.minutes>
|
||||
<session.maxKeepAlive.minutes>10080</session.maxKeepAlive.minutes>
|
||||
<session.reload>true</session.reload>
|
||||
</Properties>
|
||||
</Component>
|
||||
<Component>
|
||||
<name>RestfulHandler</name>
|
||||
<api>li.strolch.rest.RestfulStrolchComponent</api>
|
||||
<impl>li.strolch.rest.RestfulStrolchComponent</impl>
|
||||
<depends>SessionHandler</depends>
|
||||
<Properties>
|
||||
<secureCookie>false</secureCookie>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>PlcHandler</name>
|
||||
<api>li.strolch.plc.core.PlcHandler</api>
|
||||
<impl>li.strolch.plc.core.DefaultPlcHandler</impl>
|
||||
<depends>RealmHandler</depends>
|
||||
<Properties>
|
||||
<plcClass>li.strolch.plc.core.hw.DefaultPlc</plcClass>
|
||||
<plcId>strolch-plc-01</plcId>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>PlcServiceInitializer</name>
|
||||
<api>li.strolch.plc.core.PlcServiceInitializer</api>
|
||||
<impl>li.strolch.plc.core.NoPlcServiceInitializer</impl>
|
||||
<depends>PlcHandler</depends>
|
||||
<Properties>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>PostInitializer</name>
|
||||
<api>li.strolch.agent.api.PostInitializer</api>
|
||||
<impl>li.strolch.plc.core.PlcPostInitializer</impl>
|
||||
<depends>StrolchJobsHandler</depends>
|
||||
<depends>PlcServiceInitializer</depends>
|
||||
<Properties>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>ExecutionHandler</name>
|
||||
<api>li.strolch.execution.ExecutionHandler</api>
|
||||
<impl>li.strolch.execution.EventBasedExecutionHandler</impl>
|
||||
<depends>PostInitializer</depends>
|
||||
<Properties>
|
||||
<restartExecution>true</restartExecution>
|
||||
</Properties>
|
||||
</Component>
|
||||
|
||||
<Component>
|
||||
<name>PlcGwClientHandler</name>
|
||||
<api>li.strolch.plc.gw.client.PlcGwClientHandler</api>
|
||||
<impl>li.strolch.plc.gw.client.PlcGwClientHandler</impl>
|
||||
<depends>PlcHandler</depends>
|
||||
<depends>PlcServiceInitializer</depends>
|
||||
<Properties>
|
||||
<plcId>strolch-plc-01</plcId>
|
||||
<gwUsername>strolch-plc-01</gwUsername>
|
||||
<gwPassword>CHANGE-ME</gwPassword>
|
||||
<gwConnectToServer>false</gwConnectToServer>
|
||||
<gwServerUrl>ws://192.168.1.40/websocket/strolch/plc</gwServerUrl>
|
||||
</Properties>
|
||||
</Component>
|
||||
</env>
|
||||
|
||||
<env id="test">
|
||||
|
||||
</env>
|
||||
|
||||
<env id="prod">
|
||||
|
||||
</env>
|
||||
|
||||
</StrolchConfiguration>
|
|
@ -0,0 +1,3 @@
|
|||
<StrolchPolicies>
|
||||
|
||||
</StrolchPolicies>
|
|
@ -0,0 +1,25 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration>
|
||||
|
||||
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
|
||||
<file>/opt/strolch/plc/temp/plc.log</file>
|
||||
<append>true</append>
|
||||
<immediateFlush>true</immediateFlush>
|
||||
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
|
||||
<fileNamePattern>/opt/strolch/plc/temp/plc-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
|
||||
<maxFileSize>10MB</maxFileSize>
|
||||
<maxHistory>30</maxHistory>
|
||||
<totalSizeCap>2GB</totalSizeCap>
|
||||
</rollingPolicy>
|
||||
<encoder>
|
||||
<pattern>%d [%thread] %-5level %class{36}:%line %method - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<root level="info">
|
||||
<appender-ref ref="FILE" />
|
||||
</root>
|
||||
|
||||
</configuration>
|
||||
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
# README for Address mappings
|
||||
Use the following Google Sheet to easily define the address mappings:
|
||||
|
||||
https://docs.google.com/spreadsheets/d/10fgTfR3FZCVbQ5bbh0xB1u8rLIaw2KEyO45VMv7y5ho/edit?usp=sharing
|
||||
|
||||
Download the sheet `strolch-plc-example`
|
||||
|
||||
And then run `li.strolch.plc.core.util.PlcAddressGeneratorTest` to generate the Plc address mappings.
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
|
||||
<IncludeFile file="plc-templates.xml"/>
|
||||
<IncludeFile file="plc-state.xml"/>
|
||||
|
||||
<IncludeFile file="strolch-plc-example.xml"/>
|
||||
<IncludeFile file="strolch-plc-example-connections.xml"/>
|
||||
|
||||
<!--
|
||||
PLC to store connection state to server
|
||||
-->
|
||||
<Resource Id="strolch-plc-01" Name="PLC" Type="Plc">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="connectionState" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="connectionStateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
</StrolchModel>
|
|
@ -1,21 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<StrolchModel xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd">
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
|
||||
<!--
|
||||
PLC to store connection state to server
|
||||
-->
|
||||
<Resource Id="plc-01" Name="PLC" Type="Plc">
|
||||
<Resource Id="configuration" Name="Configuration" Type="Configuration">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="connectionState" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="connectionStateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="verbose" Name="Verbose Override" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
PLC State
|
||||
-->
|
||||
<Resource Id="plcLogicalDevice" Name="PLC" Type="PlcLogicalDevice">
|
||||
<Resource Id="plc" Name="PLC" Type="PlcLogicalDevice">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="group" Name="Group" Type="String" Value="99 Startup"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="999999"/>
|
||||
|
@ -39,30 +35,33 @@
|
|||
</Resource>
|
||||
<Resource Id="addrPlcStarted" Name="PLC - Started" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="VirtualBoolean.plcStarted"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="raspiBcmGpioOutput.4"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="Started"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="10"/>
|
||||
<Parameter Id="remote" Name="remote" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="telPlcStarted" Name="PLC - Started" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="VirtualBoolean.plcStarted"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="raspiBcmGpioOutput.4"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="Started"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="10"/>
|
||||
<Parameter Id="remote" Name="remote" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="telPlcStopped" Name="PLC - Stopped" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="VirtualBoolean.plcStarted"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="raspiBcmGpioOutput.4"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="Stopped"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="20"/>
|
||||
<Parameter Id="remote" Name="remote" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
|
@ -0,0 +1,131 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
|
||||
<!--
|
||||
Barcode reader connection, currently place holder with RandomString
|
||||
-->
|
||||
<Resource Id="dataLogicScanner" Name="DataLogic Scanner Connection" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.connections.DataLogicScannerConnection"/>
|
||||
<Parameter Id="address" Name="Scanner IP Address" Type="String" Value="192.168.1.249:51236"/>
|
||||
<Parameter Id="readTimeout" Name="Read Timeout (s)" Type="Integer" Value="60"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
Raspberry GPIO BCM Address connection
|
||||
-->
|
||||
<Resource Id="raspiBcmGpioOutput" Name="Raspi BCM GPIO Output" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.gpio.RaspiBcmGpioOutputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="bcmOutputPins" Name="BCM Output Pins" Type="IntegerList" Value="4"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="raspiBcmGpioInput" Name="Raspi BCM GPIO Input" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.gpio.RaspiBcmGpioInputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="bcmInputPins" Name="BCM Input Pins" Type="IntegerList" Value="17"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
I2C input connections
|
||||
-->
|
||||
<Resource Id="i2cInput.dev01" Name="PCF8574 Input 0x38" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574InputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x38"/>
|
||||
<Parameter Id="verbose" Name="Verbose" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="interruptPinPullResistance" Name="Raspi Interrupt PinPullResistance" Type="String" Value="PULL_UP"/>
|
||||
<Parameter Id="interruptChangeState" Name="Raspi Interrupt Change State" Type="String" Value="LOW"/>
|
||||
<Parameter Id="interruptBcmPinAddress" Name="Raspi BCM Interrupt Pin" Type="Integer" Value="9"/>
|
||||
<Parameter Id="enableInterruptFix" Name="Enable Interrupt Fix" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="i2cInput.dev02" Name="PCF8574 Input 0x39" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574InputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x39"/>
|
||||
<Parameter Id="verbose" Name="Verbose" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="interruptPinPullResistance" Name="Raspi Interrupt PinPullResistance" Type="String" Value="PULL_UP"/>
|
||||
<Parameter Id="interruptChangeState" Name="Raspi Interrupt Change State" Type="String" Value="LOW"/>
|
||||
<Parameter Id="interruptBcmPinAddress" Name="Raspi BCM Interrupt Pin" Type="Integer" Value="10"/>
|
||||
<Parameter Id="enableInterruptFix" Name="Enable Interrupt Fix" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="i2cInput.dev03" Name="PCF8574 Input 0x3a" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574InputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x3a"/>
|
||||
<Parameter Id="verbose" Name="Verbose" Type="Boolean" Value="false"/>
|
||||
<!-- we don't invert dev03 -->
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="interruptPinPullResistance" Name="Raspi Interrupt PinPullResistance" Type="String" Value="PULL_UP"/>
|
||||
<Parameter Id="interruptChangeState" Name="Raspi Interrupt Change State" Type="String" Value="LOW"/>
|
||||
<Parameter Id="interruptBcmPinAddress" Name="Raspi BCM Interrupt Pin" Type="Integer" Value="24"/>
|
||||
<Parameter Id="enableInterruptFix" Name="Enable Interrupt Fix" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
I2C output connections
|
||||
-->
|
||||
<Resource Id="i2cOutput.dev01" Name="PCF8574 Output 0x20" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574OutputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x20"/>
|
||||
<Parameter Id="verbose" Name="Verbose" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="i2cOutput.dev02" Name="PCF8574 Output 0x21" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574OutputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x21"/>
|
||||
<Parameter Id="verbose" Name="Verbose" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="simulated" Name="Simulated" Type="Boolean" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
</StrolchModel>
|
|
@ -0,0 +1,59 @@
|
|||
Description,Type,SubType,Device,Pin,Resource,Action1,Action2,Connection,DeviceId,Inverted,Value,Remote
|
||||
Mode,Group,,,,,,,,Mode,,,
|
||||
Automatic Mode,Virtual,Boolean,,,AutomaticMode,On,Off,VirtualBoolean.AutomaticMode,,,,TRUE
|
||||
Stop All Actors,Virtual,Boolean,,,StopAllActors,Now,,VirtualBoolean.StopAllActors,,,,TRUE
|
||||
Sector 1,Group,,,,,,,,Conveyor01,,,
|
||||
Motor Conveyor B1.1,Output,DevPin0,1,1,Sector01,Motor1On,Motor1Off,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B1.1 ,Input,DevPin0,1,1,Sector01,Motor1Fault,,i2cInput.dev01,,,,
|
||||
Motor Conveyor B1.2,Output,DevPin0,1,2,Sector01,Motor2On,Motor2Off,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B1.2,Input,DevPin0,1,2,Sector01,Motor2Fault,,i2cInput.dev01,,,,
|
||||
Start Button Conveyor 1,Input,DevPin0,1,8,Sector01,StartButton,,i2cInput.dev01,,TRUE,,
|
||||
Light Barrier Conveyor 1,Input,DevPin0,2,1,Sector01,BoxDetected,,i2cInput.dev02,,,,
|
||||
Emergency Stop Sector 1,Input,DevPin0,3,2,Sector01,EmergencyStop,,i2cInput.dev03,,,,TRUE
|
||||
Sector 2,,,,,,,,,Conveyor03,,,
|
||||
Motor Conveyor B2.1,Output,DevPin0,1,3,Sector02,Motor1On,Motor1Off,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B2.1 ,Input,DevPin0,1,3,Sector02,Motor1Fault,,i2cInput.dev01,,,,
|
||||
Motor Conveyor B2.2,Output,DevPin0,1,4,Sector02,Motor2On,Motor2Off,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B2.2,Input,DevPin0,1,4,Sector02,Motor2Fault,,i2cInput.dev01,,,,
|
||||
Light Barrier Conveyor 2,Input,DevPin0,2,2,Sector02,BoxDetectedStart,,i2cInput.dev02,,,,
|
||||
Light Barrier Conveyor End 2,Input,DevPin0,2,3,Sector02,BoxDetectedEnd,,i2cInput.dev02,,,,
|
||||
Sector 3 Fill Station,Group,,,,,,,,BoxFillStation,,,
|
||||
Request Next Container,Virtual,Boolean,-,,FillStation,NextContainer,NextContainerDone,VirtualBoolean.NextContainer,,,,TRUE
|
||||
Release Current Container,Virtual,Boolean,-,,FillStation,ReleaseContainer,ReleaseContainerDone,VirtualBoolean.ReleaseContainer,,,,TRUE
|
||||
Current Container,Virtual,String,-,,FillStation,CurrentContainer,,VirtualString.CurrentContainer,,,,TRUE
|
||||
Motor Conveyor B3,Output,DevPin0,1,5,FillStation,MotorOn,MotorOff,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B3,Input,DevPin0,1,5,FillStation,MotorFault,,i2cInput.dev01,,,,
|
||||
Entry Stopper Open Valve,Output,DevPin0,2,1,FillStation,EntryOpen,EntryClose,i2cOutput.dev02,,,,
|
||||
Entry Stopper Opened,Input,DevPin0,3,4,FillStation,EntryClosed,,i2cInput.dev03,,TRUE,,TRUE
|
||||
Entry Stopper Closed,Input,DevPin0,3,5,FillStation,EntryOpened,,i2cInput.dev03,,TRUE,,TRUE
|
||||
Light Barrier Fill Station Occupied,Input,DevPin0,2,4,FillStation,Occupied,,i2cInput.dev02,,,,TRUE
|
||||
Fill Station Barcode Reader,DataLogicScanner,,-,,DataLogicScanner,,,dataLogicScanner,,,,
|
||||
Exit Stopper Open Valve,Output,DevPin0,2,2,FillStation,ExitOpen,ExitClose,i2cOutput.dev02,,,,
|
||||
Exit Stopper Opened,Input,DevPin0,3,6,FillStation,ExitClosed,,i2cInput.dev03,,TRUE,,TRUE
|
||||
Exit Stopper Closed,Input,DevPin0,3,7,FillStation,ExitOpened,,i2cInput.dev03,,TRUE,,TRUE
|
||||
Emergency Stop Sector 3,Input,DevPin0,3,3,FillStation,EmergencyStop,,i2cInput.dev03,,,,TRUE
|
||||
Signallampe,Group,,,,,,,,Alarm,,,
|
||||
Signal Horn,Output,DevPin0,2,3,Alarm,Horn,,i2cOutput.dev02,,,,
|
||||
Signal Warning,Output,DevPin0,2,4,Alarm,Warning,,i2cOutput.dev02,,,,
|
||||
Signal Operation,Output,DevPin0,2,5,Alarm,Operational,,i2cOutput.dev02,,,,
|
||||
Sector 4,Group,,,,,,,,Conveyor05,,,
|
||||
Motor Conveyor B4.1,Output,DevPin0,1,6,Sector04,Motor1On,Motor1Off,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B4.1 ,Input,DevPin0,1,6,Sector04,Motor1Fault,,i2cInput.dev01,,,,
|
||||
Motor Conveyor B4.2,Output,DevPin0,1,7,Sector04,Motor2On,Motor2Off,i2cOutput.dev01,,,,
|
||||
Signal Motor Fault Conveyor B4.2,Input,DevPin0,1,7,Sector04,Motor2Fault,,i2cInput.dev01,,,,
|
||||
Light Barrier Conveyor 4,Input,DevPin0,2,5,Sector04,BoxDetected,,i2cInput.dev02,,,,
|
||||
Control Cabinet,Group,,,,,,,,Cabinet,,,
|
||||
Power Supply Control 5V,Input,DevPin0,2,6,Cabinet,Power5V,,i2cInput.dev02,,TRUE,,
|
||||
Power Supply Drives 24V,Input,DevPin0,2,7,Cabinet,Power24VMotors,,i2cInput.dev02,,TRUE,,
|
||||
Power Supply Sensor / Actors 24V,Input,DevPin0,2,8,Cabinet,Power24VSensors,,i2cInput.dev02,,TRUE,,
|
||||
Security Relay Operational,Input,DevPin0,3,1,SecurityRelay,Operational,,i2cInput.dev03,,TRUE,,TRUE
|
||||
Security Relay Acknowledge,Output,DevPin0,1,8,SecurityRelay,Reset,,i2cOutput.dev01,,,,
|
||||
Configuration,Group,,,,,,,,Configuration,,,
|
||||
Transfer time Sector 1.1,Virtual,Integer,-,,Sector01,TransferDuration1,,VirtualInteger.Sector01TransferDuration1,,,30,
|
||||
Transfer time Sector 1.2,Virtual,Integer,-,,Sector01,TransferDuration2,,VirtualInteger.Sector01TransferDuration2,,,30,
|
||||
Transfer time Sector 2.1,Virtual,Integer,-,,Sector02,TransferDuration1,,VirtualInteger.Sector02TransferDuration1,,,30,
|
||||
Transfer time Sector 2.2,Virtual,Integer,-,,Sector02,TransferDuration2,,VirtualInteger.Sector02TransferDuration2,,,30,
|
||||
Transfer time Fill Station,Virtual,Integer,-,,FillStation,TransferDuration,,VirtualInteger.FillStationTransferDuration,,,10,
|
||||
Barcode scan duration,Virtual,Integer,-,,DataLogicScanner,ScanDuration,,VirtualInteger.DataLogicScannerScanDuration,,,4,
|
||||
Transfer time Sector 4.1,Virtual,Integer,-,,Sector04,TransferDuration1,,VirtualInteger.Sector04TransferDuration1,,,30,
|
||||
Transfer time Sector 4.2,Virtual,Integer,-,,Sector04,TransferDuration2,,VirtualInteger.Sector04TransferDuration2,,,30,
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,75 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
|
||||
<IncludeFile file="plc-templates.xml"/>
|
||||
|
||||
<IncludeFile file="strolch-plc-example.xml"/>
|
||||
<IncludeFile file="strolch-plc-example-connections.xml"/>
|
||||
|
||||
<!--
|
||||
PLC to store connection state to server
|
||||
-->
|
||||
<Resource Id="mfs-soh-plc01" Name="PLC" Type="Plc">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="connectionState" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="connectionStateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
PLC State
|
||||
-->
|
||||
<Resource Id="plc" Name="PLC" Type="PlcLogicalDevice">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="group" Name="Group" Type="String" Value="99 Startup"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="999999"/>
|
||||
</ParameterBag>
|
||||
<ParameterBag Id="relations" Name="Relations" Type="Relations">
|
||||
<Parameter Id="addresses" Name="Addresses" Type="StringList" Interpretation="Resource-Ref" Uom="PlcAddress"
|
||||
Value="addrPlcStarted, addrPlcConnected"/>
|
||||
<Parameter Id="telegrams" Name="Telegrams" Type="StringList" Interpretation="Resource-Ref" Uom="PlcTelegram"
|
||||
Value="telPlcStarted, telPlcStopped"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="addrPlcConnected" Name="PLC - Connected" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="VirtualString.plcServerConnected"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="ServerConnected"/>
|
||||
<Parameter Id="valueType" Name="Value Type" Type="String" Interpretation="Interpretation" Uom="PlcValueType" Value="String"/>
|
||||
<Parameter Id="value" Name="Value" Type="String" Value="false"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="5"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="addrPlcStarted" Name="PLC - Started" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="raspiBcmGpioOutput.27"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="Started"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="10"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="telPlcStarted" Name="PLC - Started" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="raspiBcmGpioOutput.27"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="Started"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="10"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="telPlcStopped" Name="PLC - Stopped" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Value="raspiBcmGpioOutput.27"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Value="PLC"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Value="Stopped"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Value="20"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
</StrolchModel>
|
|
@ -1,77 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="https://strolch.li/xsd/StrolchModel-1.6.xsd"
|
||||
xsi:schemaLocation="https://strolch.li/xsd/StrolchModel-1.6.xsd StrolchModel-1.6.xsd">
|
||||
|
||||
<!--
|
||||
Barcode reader connection, currently place holder with RandomString
|
||||
-->
|
||||
<Resource Id="dataLogicScanner" Name="DataLogic Scanner Connection" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.connections.DataLogicScannerConnection"/>
|
||||
<Parameter Id="address" Name="Scanner IP Address" Type="String" Value="192.168.1.249:51236"/>
|
||||
<Parameter Id="readTimeout" Name="Read Timeout (s)" Type="Integer" Value="60"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
Raspberry GPIO BCM Address connection
|
||||
-->
|
||||
<Resource Id="raspiBcmGpioOutput" Name="Raspi BCM GPIO Output" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.gpio.RaspiBcmGpioOutputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
<Parameter Id="bcmOutputPins" Name="BCM Output Pins" Type="IntegerList" Value="27"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="raspiBcmGpioInput" Name="Raspi BCM GPIO Input" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.gpio.RaspiBcmGpioInputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="bcmInputPins" Name="BCM Input Pins" Type="IntegerList" Value="4"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
I2C input connections
|
||||
-->
|
||||
<Resource Id="i2cInput.dev01" Name="PCF8574 Input 0x38" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574InputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x38"/>
|
||||
<Parameter Id="verbose" Name="Verbose" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="true"/>
|
||||
<Parameter Id="interruptPinPullResistance" Name="Raspi Interrupt PinPullResistance" Type="String" Value="PULL_DOWN"/>
|
||||
<Parameter Id="interruptChangeState" Name="Raspi Interrupt Change State" Type="String" Value="HIGH"/>
|
||||
<Parameter Id="interruptBcmPinAddress" Name="Raspi BCM Interrupt Pin" Type="Integer" Value="17"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
<!--
|
||||
I2C output connections
|
||||
-->
|
||||
<Resource Id="i2cOutput.dev01" Name="PCF8574 Output 0x21" Type="PlcConnection">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="className" Name="Connection Class" Type="String" Value="li.strolch.plc.core.hw.i2c.PCF8574OutputConnection"/>
|
||||
<Parameter Id="state" Name="Connection State" Type="String" Interpretation="Enumeration" Uom="ConnectionState" Value="Disconnected"/>
|
||||
<Parameter Id="stateMsg" Name="Connection State Msg" Type="String" Interpretation="Enumeration" Uom="ConnectionState"
|
||||
Value=""/>
|
||||
<Parameter Id="i2cBus" Name="I2C Bus" Type="Integer" Value="1"/>
|
||||
<Parameter Id="addresses" Name="Addresses" Type="IntegerList" Value="0x21"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
|
||||
</StrolchModel>
|
|
@ -1,11 +0,0 @@
|
|||
Description,Type,SubType,Device,Pin,Resource,Action1,Action2,Connection,DeviceId
|
||||
Material Flow,Group,,,,,,,,MaterialFlow
|
||||
Conveyor 1,Input,DevPin0,1,1,Conveyor01,Occupied,,i2cInput.dev01,
|
||||
Conveyor 2,Input,DevPin0,1,2,Conveyor02,Occupied,,i2cInput.dev01,
|
||||
Conveyor 3,Input,DevPin0,1,3,Conveyor03,Occupied,,i2cInput.dev01,
|
||||
Conveyor 4,Input,DevPin0,1,4,Conveyor04,Occupied,,i2cInput.dev01,
|
||||
Conveyor 1,Output,DevPin0,1,1,Conveyor01,MotorOn,MotorOff,i2cOutput.dev01,
|
||||
Conveyor 2,Output,DevPin0,1,2,Conveyor02,MotorOn,MotorOff,i2cOutput.dev01,
|
||||
Conveyor 3,Output,DevPin0,1,3,Conveyor03,MotorOn,MotorOff,i2cOutput.dev01,
|
||||
Conveyor 4,Output,DevPin0,1,4,Conveyor04,MotorOn,MotorOff,i2cOutput.dev01,
|
||||
DataLogicScanner,DataLogicScanner,,,,Conveyor03,,,dataLogicScanner,
|
|
|
@ -1,224 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<StrolchModel>
|
||||
<Resource Id="D_MaterialFlow" Name="MaterialFlow" Type="PlcLogicalDevice">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Material Flow"/>
|
||||
<Parameter Id="group" Name="Group" Type="String" Index="20" Value="01 Material Flow"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="30" Value="10"/>
|
||||
</ParameterBag>
|
||||
<ParameterBag Id="relations" Name="Relations" Type="Relations">
|
||||
<Parameter Id="addresses" Name="Addresses" Type="StringList" Interpretation="Resource-Ref" Uom="PlcAddress" Index="10" Value="A_Conveyor01-Occupied, A_Conveyor02-Occupied, A_Conveyor03-Occupied, A_Conveyor04-Occupied, A_Conveyor01-MotorOn, A_Conveyor02-MotorOn, A_Conveyor03-MotorOn, A_Conveyor04-MotorOn, A_Conveyor03-Barcode, A_Conveyor03-On"/>
|
||||
<Parameter Id="telegrams" Name="Telegrams" Type="StringList" Interpretation="Resource-Ref" Uom="PlcTelegram" Index="20" Value="T_Conveyor01-MotorOn, T_Conveyor01-MotorOff, T_Conveyor02-MotorOn, T_Conveyor02-MotorOff, T_Conveyor03-MotorOn, T_Conveyor03-MotorOff, T_Conveyor04-MotorOn, T_Conveyor04-MotorOff, T_Conveyor03-On, T_Conveyor03-Off"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor01-Occupied" Name="Conveyor01 - Occupied" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 1"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cInput.dev01.0.0"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor01"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="Occupied"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="10"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor02-Occupied" Name="Conveyor02 - Occupied" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 2"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cInput.dev01.0.1"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor02"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="Occupied"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="20"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor03-Occupied" Name="Conveyor03 - Occupied" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 3"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cInput.dev01.0.2"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="Occupied"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="30"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor04-Occupied" Name="Conveyor04 - Occupied" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 4"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cInput.dev01.0.3"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor04"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="Occupied"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="40"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor01-MotorOn" Name="Conveyor01 - MotorOn" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 1"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.0"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor01"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="10"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor01-MotorOff" Name="Conveyor01 - MotorOff" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 1"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.0"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor01"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOff"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="20"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor01-MotorOn" Name="Conveyor01 - MotorOn" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 1"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.0"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor01"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="50"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor02-MotorOn" Name="Conveyor02 - MotorOn" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 2"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.1"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor02"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="30"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor02-MotorOff" Name="Conveyor02 - MotorOff" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 2"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.1"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor02"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOff"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="40"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor02-MotorOn" Name="Conveyor02 - MotorOn" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 2"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.1"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor02"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="60"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor03-MotorOn" Name="Conveyor03 - MotorOn" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 3"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.2"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="50"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor03-MotorOff" Name="Conveyor03 - MotorOff" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 3"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.2"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOff"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="60"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor03-MotorOn" Name="Conveyor03 - MotorOn" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 3"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.2"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="70"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor04-MotorOn" Name="Conveyor04 - MotorOn" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 4"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.3"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor04"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="70"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor04-MotorOff" Name="Conveyor04 - MotorOff" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 4"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.3"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor04"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOff"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="80"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor04-MotorOn" Name="Conveyor04 - MotorOn" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="Conveyor 4"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="i2cOutput.dev01.0.3"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor04"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="MotorOn"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="80"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor03-Barcode" Name="Conveyor03 - Barcode" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="DataLogicScanner"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="dataLogicScanner.barcode"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="Barcode"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="90"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="String" Index="100" Value=""/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="A_Conveyor03-On" Name="Conveyor03 - On" Type="PlcAddress">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="DataLogicScanner"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="dataLogicScanner.trigger"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="On"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="100"/>
|
||||
<Parameter Id="inverted" Name="Inverted" Type="Boolean" Index="40" Value="false"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor03-On" Name="Conveyor03 - On" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="DataLogicScanner"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="dataLogicScanner.trigger"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="On"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="90"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="true"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
<Resource Id="T_Conveyor03-Off" Name="Conveyor03 - Off" Type="PlcTelegram">
|
||||
<ParameterBag Id="parameters" Name="Parameters" Type="Parameters">
|
||||
<Parameter Id="description" Name="Description" Type="String" Index="5" Value="DataLogicScanner"/>
|
||||
<Parameter Id="address" Name="HW Address" Type="String" Interpretation="PlcConnection" Index="10" Value="dataLogicScanner.trigger"/>
|
||||
<Parameter Id="resource" Name="Resource ID for PlcAddress" Type="String" Index="20" Value="Conveyor03"/>
|
||||
<Parameter Id="action" Name="Action ID for PlcAddress" Type="String" Index="30" Value="Off"/>
|
||||
<Parameter Id="index" Name="Index" Type="Integer" Index="40" Value="100"/>
|
||||
<Parameter Id="value" Name="Value" Type="Boolean" Index="100" Value="false"/>
|
||||
</ParameterBag>
|
||||
</Resource>
|
||||
</StrolchModel>
|
|
@ -1,5 +0,0 @@
|
|||
Description,Type,SubType,Device,Pin,Resource,Action1,Action2,Connection,DeviceId
|
||||
Material Flow,Group,,,,,,,,MaterialFlow
|
||||
Conveyor 1,Input,Pin,,4,Conveyor,Occupied,,raspiBcmGpioInput
|
||||
Conveyor 1,Input,Pin,,17,Conveyor,BoxDetected,,raspiBcmGpioInput
|
||||
Conveyor 1,Output,Pin,,18,Conveyor,MotorOn,MotorOff,raspiBcmGpioOutput
|
|
|
@ -0,0 +1,2 @@
|
|||
*.dat
|
||||
*.tmp
|
Loading…
Reference in New Issue