blob: a29bbc6677d23db18a72cce58483f2f0b74b0d24 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE FBType SYSTEM "http://www.holobloc.com/xml/LibraryElement.dtd">
<FBType Comment="Tamplate for a simple Basic Function Block Type" Name="BlinkKoordinator">
<Identification Standard="61499-2"/>
<VersionInfo Author="4DIAC-IDE" Date="2018-01-15" Organization="4DIAC-Consortium" Version="0.0"/>
<VersionInfo Author="AZ" Date="2016-05-26" Organization="fortiss GmbH" Version="1.0"/>
<InterfaceList>
<EventInputs>
<Event Comment="" Name="Start" Type="Event">
<With Var="onOffTime"/>
</Event>
<Event Comment="" Name="Stop" Type="Event"/>
<Event Comment="" Name="Reset" Type="Event"/>
</EventInputs>
<EventOutputs>
<Event Comment="" Name="startRed" Type="Event"/>
<Event Comment="" Name="stopRed" Type="Event"/>
<Event Comment="" Name="startYellow" Type="Event"/>
<Event Comment="" Name="stopYellow" Type="Event"/>
<Event Comment="" Name="startGreen" Type="Event"/>
<Event Comment="" Name="stopGreen" Type="Event"/>
<Event Comment="" Name="startBlue" Type="Event"/>
<Event Comment="" Name="stopBlue" Type="Event"/>
</EventOutputs>
<InputVars>
<VarDeclaration Comment="" Name="onOffTime" Type="TIME"/>
</InputVars>
<OutputVars/>
<Plugs>
<AdapterDeclaration Comment="" Name="Timer" Type="ATimeOut"/>
</Plugs>
</InterfaceList>
<BasicFB>
<ECC>
<ECState Comment="Initial State" Name="START" x="475.0" y="1125.0"/>
<ECState Comment="" Name="LightsOn" x="2095.0" y="765.0">
<ECAction Output="Timer.STOP"/>
<ECAction Output="startRed"/>
<ECAction Output="startYellow"/>
<ECAction Output="startGreen"/>
<ECAction Output="startBlue"/>
<ECAction Algorithm="startLongWaiting" Output="Timer.START"/>
</ECState>
<ECState Comment="" Name="LightsOff" x="3800.0" y="780.0">
<ECAction Output="Timer.STOP"/>
<ECAction Output="stopRed"/>
<ECAction Output="stopYellow"/>
<ECAction Output="stopGreen"/>
<ECAction Output="stopBlue"/>
<ECAction Algorithm="startLongWaiting" Output="Timer.START"/>
</ECState>
<ECState Comment="" Name="Reset" x="2400.0" y="2000.0">
<ECAction Output="stopRed"/>
<ECAction Output="stopYellow"/>
<ECAction Output="stopGreen"/>
<ECAction Output="stopBlue"/>
</ECState>
<ECTransition Comment="" Condition="Start" Destination="LightsOn" Source="START" x="1600.0" y="1140.0"/>
<ECTransition Comment="" Condition="Timer.TimeOut" Destination="LightsOff" Source="LightsOn" x="3070.0" y="320.0"/>
<ECTransition Comment="" Condition="Stop" Destination="START" Source="LightsOn" x="1280.0" y="660.0"/>
<ECTransition Comment="" Condition="Stop" Destination="START" Source="LightsOff" x="350.0" y="-60.0"/>
<ECTransition Comment="" Condition="Timer.TimeOut" Destination="LightsOn" Source="LightsOff" x="3130.0" y="-230.0"/>
<ECTransition Comment="" Condition="Reset" Destination="Reset" Source="START" x="1550.0" y="1555.0"/>
<ECTransition Comment="" Condition="1" Destination="START" Source="Reset" x="480.0" y="1700.0"/>
<ECTransition Comment="" Condition="Reset" Destination="Reset" Source="LightsOn" x="2290.0" y="1440.0"/>
<ECTransition Comment="" Condition="Reset" Destination="Reset" Source="LightsOff" x="3805.0" y="1715.0"/>
</ECC>
<Algorithm Comment="set long waiting time" Name="startLongWaiting">
<ST Text="Timer.DT := onOffTime;"/>
</Algorithm>
</BasicFB>
</FBType>