tests/win32/test/plc.xml
author laurent
Wed, 16 Sep 2009 14:06:50 +0200
changeset 395 433fd448dd31
parent 266 530118da6c15
permissions -rw-r--r--
Integrate PLCOpenEditor into Beremiz frame
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://www.plcopen.org/xml/tc6.xsd"
         xmlns:xhtml="http://www.w3.org/1999/xhtml"
         xsi:schemaLocation="http://www.plcopen.org/xml/tc6.xsd http://www.plcopen.org/xml/tc6.xsd">
  <fileHeader companyName="LOLITECH"
              companyURL="www.lolitech.com"
              productName="BREMIZ"
              productVersion="1"
              productRelease="1"
              creationDateTime="2007-07-07 11:58:26"
              contentDescription="This tests as most as possible IEC standard library"/>
  <contentHeader name="STD_TEST"
                 modificationDateTime="2008-08-27 16:29:04">
    <coordinateInfo>
      <fbd>
        <scaling x="5" y="5"/>
      </fbd>
      <ld>
        <scaling x="5" y="5"/>
      </ld>
      <sfc>
        <scaling x="5" y="5"/>
      </sfc>
    </coordinateInfo>
  </contentHeader>
  <types>
    <dataTypes>
      <dataType name="MYTYPE">
        <baseType>
          <subrangeSigned>
            <range lower="0" upper="1000"/>
            <baseType>
              <INT/>
            </baseType>
          </subrangeSigned>
        </baseType>
      </dataType>
      <dataType name="MYTYPE2">
        <baseType>
          <enum>
            <values>
              <value name="OPEN"/>
              <value name="CLOSED"/>
            </values>
          </enum>
        </baseType>
        <initialValue>
          <simpleValue value="CLOSED"/>
        </initialValue>
      </dataType>
      <dataType name="MYTYPE3">
        <baseType>
          <array>
            <dimension lower="1" upper="8"/>
            <dimension lower="1" upper="8"/>
            <baseType>
              <derived name="MYTYPE5"/>
            </baseType>
          </array>
        </baseType>
        <initialValue>
          <arrayValue>
            <value repetitionValue="32">
              <simpleValue value="0"/>
            </value>
            <value repetitionValue="30">
              <simpleValue value="1"/>
            </value>
          </arrayValue>
        </initialValue>
      </dataType>
      <dataType name="MYTYPE4">
        <baseType>
          <subrangeUnsigned>
            <range lower="1" upper="100"/>
            <baseType>
              <UINT/>
            </baseType>
          </subrangeUnsigned>
        </baseType>
      </dataType>
      <dataType name="MYTYPE5">
        <baseType>
          <derived name="MYTYPE4"/>
        </baseType>
        <initialValue>
          <simpleValue value="10"/>
        </initialValue>
      </dataType>
    </dataTypes>
    <pous>
      <pou name="MAIN_TEST" pouType="program">
        <interface>
          <localVars>
            <variable name="DigitalOut" address="%QB0.0.16.25088.1">
              <type>
                <BYTE/>
              </type>
            </variable>
            <variable name="DigitalIn" address="%IB0.0.32.24576.1">
              <type>
                <BYTE/>
              </type>
            </variable>
            <variable name="AnalogOut1" address="%QW0.0.16.25617.1">
              <type>
                <derived name="MYTYPE"/>
              </type>
            </variable>
            <variable name="AnalogOut2" address="%QW0.0.16.25617.2">
              <type>
                <derived name="MYTYPE"/>
              </type>
            </variable>
            <variable name="AnalogOut3" address="%QW0.0.16.25617.3">
              <type>
                <INT/>
              </type>
            </variable>
            <variable name="AnalogIn1" address="%IW0.0.32.25601.1">
              <type>
                <INT/>
              </type>
            </variable>
            <variable name="AnalogIn2" address="%IW0.0.32.25601.2">
              <type>
                <INT/>
              </type>
            </variable>
          </localVars>
          <localVars>
            <variable name="Test">
              <type>
                <derived name="Bitwise_Block"/>
              </type>
            </variable>
            <variable name="Test2">
              <type>
                <derived name="Test_SFC"/>
              </type>
            </variable>
            <variable name="t1">
              <type>
                <derived name="TOF"/>
              </type>
            </variable>
            <variable name="latch">
              <type>
                <derived name="RS"/>
              </type>
            </variable>
            <variable name="t2">
              <type>
                <derived name="TOF"/>
              </type>
            </variable>
          </localVars>
        </interface>
        <body>
          <FBD>
            <comment localId="26" height="80" width="475">
              <position x="25" y="5"/>
              <content>
<![CDATA[Main program]]>
              </content>
            </comment>
            <inVariable localId="34" height="30" width="95">
              <position x="40" y="535"/>
              <connectionPointOut>
                <relPosition x="95" y="15"/>
              </connectionPointOut>
              <expression>DigitalIn</expression>
            </inVariable>
            <outVariable localId="36" height="30" width="100">
              <position x="915" y="450"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="39">
                  <position x="915" y="465"/>
                  <position x="885" y="465"/>
                  <position x="885" y="465"/>
                  <position x="925" y="465"/>
                  <position x="925" y="465"/>
                  <position x="865" y="465"/>
                </connection>
              </connectionPointIn>
              <expression>DigitalOut</expression>
            </outVariable>
            <block localId="37" width="107" height="60" typeName="GETBIT">
              <position x="195" y="520"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="34">
                      <position x="195" y="550"/>
                      <position x="135" y="550"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="38">
                      <position x="195" y="570"/>
                      <position x="165" y="570"/>
                      <position x="165" y="585"/>
                      <position x="105" y="585"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="107" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="38" height="30" width="65">
              <position x="40" y="570"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>UINT#0</expression>
            </inVariable>
            <block localId="39" width="120" height="80" typeName="SETBIT">
              <position x="745" y="435"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="95">
                      <position x="745" y="465"/>
                      <position x="695" y="465"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="INPUT_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="52" formalParameter="OUT_AND">
                      <position x="745" y="485"/>
                      <position x="569" y="485"/>
                      <position x="569" y="550"/>
                      <position x="513" y="550"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="96">
                      <position x="745" y="505"/>
                      <position x="690" y="505"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="40" height="30" width="100">
              <position x="25" y="155"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>DigitalOut</expression>
            </inVariable>
            <block localId="42" width="120" height="85" typeName="SETBIT">
              <position x="745" y="530"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="94">
                      <position x="745" y="560"/>
                      <position x="690" y="560"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="INPUT_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="52" formalParameter="OUT_OR">
                      <position x="745" y="580"/>
                      <position x="513" y="580"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="93">
                      <position x="745" y="600"/>
                      <position x="690" y="600"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="43" height="30" width="100">
              <position x="910" y="545"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="42">
                  <position x="910" y="560"/>
                  <position x="865" y="560"/>
                </connection>
              </connectionPointIn>
              <expression>DigitalOut</expression>
            </outVariable>
            <block localId="44" width="115" height="60" typeName="GETBIT">
              <position x="195" y="595"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="97">
                      <position x="195" y="625"/>
                      <position x="135" y="625"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="45">
                      <position x="195" y="645"/>
                      <position x="154" y="645"/>
                      <position x="154" y="660"/>
                      <position x="105" y="660"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="115" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="45" height="30" width="65">
              <position x="40" y="645"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>UINT#1</expression>
            </inVariable>
            <block localId="46" width="120" height="80" typeName="SETBIT">
              <position x="745" y="630"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="92">
                      <position x="745" y="660"/>
                      <position x="690" y="660"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="INPUT_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="52" formalParameter="OUT_XOR">
                      <position x="745" y="680"/>
                      <position x="555" y="680"/>
                      <position x="555" y="610"/>
                      <position x="513" y="610"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="49">
                      <position x="745" y="700"/>
                      <position x="690" y="700"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="47" height="30" width="105">
              <position x="910" y="645"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="46">
                  <position x="910" y="660"/>
                  <position x="865" y="660"/>
                </connection>
              </connectionPointIn>
              <expression>DigitalOut</expression>
            </outVariable>
            <inVariable localId="49" height="30" width="65">
              <position x="625" y="685"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>UINT#2</expression>
            </inVariable>
            <block localId="50" width="120" height="80" typeName="SETBIT">
              <position x="745" y="725"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="91">
                      <position x="745" y="755"/>
                      <position x="690" y="755"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="INPUT_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="52" formalParameter="OUT_SR">
                      <position x="745" y="775"/>
                      <position x="525" y="775"/>
                      <position x="525" y="640"/>
                      <position x="513" y="640"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="53">
                      <position x="745" y="795"/>
                      <position x="692" y="795"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="51" height="30" width="100">
              <position x="910" y="740"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="50">
                  <position x="910" y="755"/>
                  <position x="865" y="755"/>
                </connection>
              </connectionPointIn>
              <expression>DigitalOut</expression>
            </outVariable>
            <block localId="52" width="127" height="141" typeName="Bitwise_Block" instanceName="Test">
              <position x="386" y="515"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="35"/>
                    <connection refLocalId="37">
                      <position x="386" y="550"/>
                      <position x="302" y="550"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="65"/>
                    <connection refLocalId="44">
                      <position x="386" y="580"/>
                      <position x="365" y="580"/>
                      <position x="365" y="625"/>
                      <position x="310" y="625"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT_AND">
                  <connectionPointOut>
                    <relPosition x="127" y="35"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="OUT_OR">
                  <connectionPointOut>
                    <relPosition x="127" y="65"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="OUT_XOR">
                  <connectionPointOut>
                    <relPosition x="127" y="95"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="OUT_SR">
                  <connectionPointOut>
                    <relPosition x="127" y="125"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="53" height="30" width="67">
              <position x="625" y="780"/>
              <connectionPointOut>
                <relPosition x="67" y="15"/>
              </connectionPointOut>
              <expression>UINT#3</expression>
            </inVariable>
            <inVariable localId="59" height="30" width="100">
              <position x="45" y="910"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>AnalogOut1</expression>
            </inVariable>
            <outVariable localId="60" height="30" width="100">
              <position x="910" y="840"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="69" formalParameter="OUT1">
                  <position x="910" y="855"/>
                  <position x="610" y="855"/>
                </connection>
              </connectionPointIn>
              <expression>AnalogOut1</expression>
            </outVariable>
            <inVariable localId="64" height="30" width="95">
              <position x="45" y="980"/>
              <connectionPointOut>
                <relPosition x="95" y="15"/>
              </connectionPointOut>
              <expression>AnalogIn1</expression>
            </inVariable>
            <block localId="69" width="160" height="230" typeName="Test_SFC" instanceName="Test2">
              <position x="450" y="820"/>
              <inputVariables>
                <variable formalParameter="CNT1">
                  <connectionPointIn>
                    <relPosition x="0" y="35"/>
                    <connection refLocalId="37">
                      <position x="450" y="855"/>
                      <position x="340" y="855"/>
                      <position x="340" y="550"/>
                      <position x="302" y="550"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="CNT2">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="44">
                      <position x="450" y="890"/>
                      <position x="365" y="890"/>
                      <position x="365" y="625"/>
                      <position x="310" y="625"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="105"/>
                    <connection refLocalId="59">
                      <position x="450" y="925"/>
                      <position x="145" y="925"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="140"/>
                    <connection refLocalId="71">
                      <position x="450" y="960"/>
                      <position x="145" y="960"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="UPPER1">
                  <connectionPointIn>
                    <relPosition x="0" y="175"/>
                    <connection refLocalId="64">
                      <position x="450" y="995"/>
                      <position x="140" y="995"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="UPPER2">
                  <connectionPointIn>
                    <relPosition x="0" y="210"/>
                    <connection refLocalId="72">
                      <position x="450" y="1030"/>
                      <position x="140" y="1030"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT1">
                  <connectionPointOut>
                    <relPosition x="160" y="35"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="OUT2">
                  <connectionPointOut>
                    <relPosition x="160" y="70"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="70" height="30" width="100">
              <position x="910" y="875"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="69" formalParameter="OUT2">
                  <position x="910" y="890"/>
                  <position x="610" y="890"/>
                </connection>
              </connectionPointIn>
              <expression>AnalogOut2</expression>
            </outVariable>
            <inVariable localId="71" height="30" width="100">
              <position x="45" y="945"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>AnalogOut2</expression>
            </inVariable>
            <inVariable localId="72" height="35" width="95">
              <position x="45" y="1015"/>
              <connectionPointOut>
                <relPosition x="95" y="15"/>
              </connectionPointOut>
              <expression>AnalogIn2</expression>
            </inVariable>
            <block localId="73" width="120" height="80" typeName="SETBIT">
              <position x="745" y="140"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="40">
                      <position x="745" y="170"/>
                      <position x="125" y="170"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="INPUT_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="77" formalParameter="Q">
                      <position x="745" y="190"/>
                      <position x="526" y="190"/>
                      <position x="526" y="220"/>
                      <position x="507" y="220"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="74">
                      <position x="745" y="210"/>
                      <position x="540" y="210"/>
                      <position x="540" y="295"/>
                      <position x="95" y="295"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="74" height="30" width="65">
              <position x="30" y="280"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>UINT#7</expression>
            </inVariable>
            <block localId="75" width="120" height="60" typeName="GETBIT">
              <position x="170" y="190"/>
              <inputVariables>
                <variable formalParameter="INPUT_BYTE">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="40">
                      <position x="170" y="220"/>
                      <position x="150" y="220"/>
                      <position x="150" y="170"/>
                      <position x="125" y="170"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="NUM_BIT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="74">
                      <position x="170" y="240"/>
                      <position x="151" y="240"/>
                      <position x="151" y="295"/>
                      <position x="95" y="295"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="76" height="30" width="100">
              <position x="910" y="155"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="73">
                  <position x="910" y="170"/>
                  <position x="865" y="170"/>
                </connection>
              </connectionPointIn>
              <expression>DigitalOut</expression>
            </outVariable>
            <block localId="77" width="57" height="60" typeName="TP" instanceName="t1">
              <position x="450" y="190"/>
              <inputVariables>
                <variable formalParameter="IN" negated="true">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="85" formalParameter="Q">
                      <position x="450" y="220"/>
                      <position x="400" y="220"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="PT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="80">
                      <position x="450" y="240"/>
                      <position x="420" y="240"/>
                      <position x="420" y="270"/>
                      <position x="220" y="270"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="Q">
                  <connectionPointOut>
                    <relPosition x="57" y="30"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="ET">
                  <connectionPointOut>
                    <relPosition x="57" y="50"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="80" height="27" width="50">
              <position x="170" y="255"/>
              <connectionPointOut>
                <relPosition x="50" y="15"/>
              </connectionPointOut>
              <expression>T#1s</expression>
            </inVariable>
            <block localId="85" width="60" height="60" typeName="TOF" instanceName="t2">
              <position x="340" y="190"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="75">
                      <position x="340" y="220"/>
                      <position x="290" y="220"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="PT">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="80">
                      <position x="340" y="240"/>
                      <position x="296" y="240"/>
                      <position x="296" y="270"/>
                      <position x="220" y="270"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="Q">
                  <connectionPointOut>
                    <relPosition x="60" y="30"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="ET">
                  <connectionPointOut>
                    <relPosition x="60" y="50"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="86" height="30" width="100">
              <position x="910" y="330"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="90" formalParameter="OUT">
                  <position x="910" y="345"/>
                  <position x="865" y="345"/>
                </connection>
              </connectionPointIn>
              <expression>AnalogOut3</expression>
            </outVariable>
            <block localId="87" width="120" height="40" typeName="TIME_TO_REAL">
              <position x="455" y="315"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="77" formalParameter="ET">
                      <position x="455" y="345"/>
                      <position x="445" y="345"/>
                      <position x="445" y="275"/>
                      <position x="517" y="275"/>
                      <position x="517" y="240"/>
                      <position x="507" y="240"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <block localId="88" width="80" height="60" typeName="MUL">
              <position x="630" y="315"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="87" formalParameter="OUT">
                      <position x="630" y="345"/>
                      <position x="575" y="345"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="89">
                      <position x="630" y="365"/>
                      <position x="607" y="365"/>
                      <position x="607" y="400"/>
                      <position x="585" y="400"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="80" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="89" height="35" width="120">
              <position x="465" y="385"/>
              <connectionPointOut>
                <relPosition x="120" y="15"/>
              </connectionPointOut>
              <expression>REAL#10000.0</expression>
            </inVariable>
            <block localId="90" width="120" height="40" typeName="REAL_TO_INT">
              <position x="745" y="315"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="88" formalParameter="OUT">
                      <position x="745" y="345"/>
                      <position x="710" y="345"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="91" height="30" width="100">
              <position x="590" y="740"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>DigitalOut</expression>
            </inVariable>
            <inVariable localId="92" height="30" width="100">
              <position x="590" y="645"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>DigitalOut</expression>
            </inVariable>
            <inVariable localId="93" height="30" width="65">
              <position x="625" y="585"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>UINT#1</expression>
            </inVariable>
            <inVariable localId="94" height="30" width="100">
              <position x="590" y="545"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>DigitalOut</expression>
            </inVariable>
            <inVariable localId="95" height="30" width="100">
              <position x="595" y="450"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>DigitalOut</expression>
            </inVariable>
            <inVariable localId="96" height="30" width="95">
              <position x="595" y="490"/>
              <connectionPointOut>
                <relPosition x="95" y="15"/>
              </connectionPointOut>
              <expression>UINT#0</expression>
            </inVariable>
            <inVariable localId="97" height="30" width="95">
              <position x="40" y="610"/>
              <connectionPointOut>
                <relPosition x="95" y="15"/>
              </connectionPointOut>
              <expression>DigitalIn</expression>
            </inVariable>
            <comment localId="100" height="40" width="400">
              <position x="25" y="100"/>
              <content>
<![CDATA[A simple blinking output (2s period)]]>
              </content>
            </comment>
            <comment localId="102" height="40" width="430">
              <position x="580" y="255"/>
              <content>
<![CDATA[Output value of TP block as analog output #3]]>
              </content>
            </comment>
            <comment localId="103" height="65" width="420">
              <position x="25" y="425"/>
              <content>
<![CDATA[Map input and output of bitwise_block test to bits of DigitalIn and Digital out]]>
              </content>
            </comment>
            <comment localId="104" height="85" width="285">
              <position x="40" y="805"/>
              <content>
<![CDATA[Map AnalogIN #1 #2 and AnalogOUT #1 #2 to SFC test interface]]>
              </content>
            </comment>
          </FBD>
        </body>
      </pou>
      <pou name="GETBIT" pouType="function">
        <interface>
          <returnType>
            <BOOL/>
          </returnType>
          <inputVars>
            <variable name="INPUT_BYTE">
              <type>
                <BYTE/>
              </type>
            </variable>
            <variable name="NUM_BIT">
              <type>
                <USINT/>
              </type>
            </variable>
          </inputVars>
        </interface>
        <body>
          <FBD>
            <block localId="1" width="70" height="60" typeName="SHR">
              <position x="175" y="110"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="2">
                      <position x="175" y="140"/>
                      <position x="135" y="140"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="N">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="3">
                      <position x="175" y="160"/>
                      <position x="140" y="160"/>
                      <position x="140" y="180"/>
                      <position x="105" y="180"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="70" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="2" height="30" width="105">
              <position x="30" y="125"/>
              <connectionPointOut>
                <relPosition x="105" y="15"/>
              </connectionPointOut>
              <expression>INPUT_BYTE</expression>
            </inVariable>
            <inVariable localId="3" height="30" width="75">
              <position x="30" y="165"/>
              <connectionPointOut>
                <relPosition x="75" y="15"/>
              </connectionPointOut>
              <expression>NUM_BIT</expression>
            </inVariable>
            <outVariable localId="4" height="30" width="65">
              <position x="555" y="125"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="7" formalParameter="OUT">
                  <position x="555" y="140"/>
                  <position x="515" y="140"/>
                </connection>
              </connectionPointIn>
              <expression>GETBIT</expression>
            </outVariable>
            <block localId="5" width="85" height="60" typeName="AND">
              <position x="275" y="110"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="1" formalParameter="OUT">
                      <position x="275" y="140"/>
                      <position x="245" y="140"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="6">
                      <position x="275" y="160"/>
                      <position x="255" y="160"/>
                      <position x="255" y="195"/>
                      <position x="240" y="195"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="85" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="6" height="30" width="65">
              <position x="175" y="180"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>BYTE#1</expression>
            </inVariable>
            <block localId="7" width="120" height="40" typeName="BYTE_TO_BOOL">
              <position x="395" y="110"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="5" formalParameter="OUT">
                      <position x="395" y="140"/>
                      <position x="360" y="140"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <comment localId="8" height="70" width="545">
              <position x="30" y="20"/>
              <content>
<![CDATA[Function that return NUM_BIT'th bit value of INPUT_BYTE]]>
              </content>
            </comment>
          </FBD>
        </body>
      </pou>
      <pou name="SETBIT" pouType="function">
        <interface>
          <returnType>
            <BYTE/>
          </returnType>
          <inputVars>
            <variable name="INPUT_BYTE">
              <type>
                <BYTE/>
              </type>
            </variable>
            <variable name="INPUT_BIT">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="NUM_BIT">
              <type>
                <USINT/>
              </type>
            </variable>
          </inputVars>
        </interface>
        <body>
          <FBD>
            <inVariable localId="1" height="30" width="100">
              <position x="40" y="255"/>
              <connectionPointOut>
                <relPosition x="100" y="15"/>
              </connectionPointOut>
              <expression>INPUT_BYTE</expression>
            </inVariable>
            <inVariable localId="2" height="30" width="95">
              <position x="40" y="125"/>
              <connectionPointOut>
                <relPosition x="95" y="15"/>
              </connectionPointOut>
              <expression>INPUT_BIT</expression>
            </inVariable>
            <block localId="3" width="120" height="45" typeName="BOOL_TO_BYTE">
              <position x="165" y="110"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="2">
                      <position x="165" y="140"/>
                      <position x="135" y="140"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="120" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <block localId="4" width="70" height="60" typeName="SHL">
              <position x="335" y="110"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="3" formalParameter="OUT">
                      <position x="335" y="140"/>
                      <position x="285" y="140"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="N">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="5">
                      <position x="335" y="160"/>
                      <position x="130" y="160"/>
                      <position x="130" y="230"/>
                      <position x="115" y="230"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="70" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="5" height="30" width="75">
              <position x="40" y="215"/>
              <connectionPointOut>
                <relPosition x="75" y="15"/>
              </connectionPointOut>
              <expression>NUM_BIT</expression>
            </inVariable>
            <block localId="7" width="70" height="60" typeName="SHL">
              <position x="235" y="180"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="8">
                      <position x="235" y="210"/>
                      <position x="215" y="210"/>
                      <position x="220" y="210"/>
                      <position x="220" y="210"/>
                      <position x="220" y="210"/>
                      <position x="210" y="210"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="N">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="5">
                      <position x="235" y="230"/>
                      <position x="115" y="230"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="70" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="8" height="30" width="65">
              <position x="145" y="195"/>
              <connectionPointOut>
                <relPosition x="65" y="15"/>
              </connectionPointOut>
              <expression>BYTE#1</expression>
            </inVariable>
            <block localId="9" width="70" height="40" typeName="NOT">
              <position x="335" y="180"/>
              <inputVariables>
                <variable formalParameter="IN">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="7" formalParameter="OUT">
                      <position x="335" y="210"/>
                      <position x="305" y="210"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="70" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <block localId="10" width="80" height="60" typeName="AND">
              <position x="440" y="180"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="9" formalParameter="OUT">
                      <position x="440" y="210"/>
                      <position x="405" y="210"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="1">
                      <position x="440" y="230"/>
                      <position x="320" y="230"/>
                      <position x="320" y="270"/>
                      <position x="140" y="270"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="80" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <block localId="11" width="80" height="60" typeName="OR">
              <position x="565" y="110"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="4" formalParameter="OUT">
                      <position x="565" y="140"/>
                      <position x="405" y="140"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="10" formalParameter="OUT">
                      <position x="565" y="160"/>
                      <position x="545" y="160"/>
                      <position x="545" y="210"/>
                      <position x="520" y="210"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="80" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <outVariable localId="12" height="30" width="70">
              <position x="695" y="125"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="11" formalParameter="OUT">
                  <position x="695" y="140"/>
                  <position x="645" y="140"/>
                </connection>
              </connectionPointIn>
              <expression>SETBIT</expression>
            </outVariable>
            <comment localId="13" height="75" width="435">
              <position x="35" y="15"/>
              <content>
<![CDATA[Function that return INPUT_BYTE with NUM_BIT'th  bit set to INPUT_BIT value]]>
              </content>
            </comment>
          </FBD>
        </body>
      </pou>
      <pou name="Bitwise_Block" pouType="functionBlock">
        <interface>
          <inputVars>
            <variable name="IN1">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="IN2">
              <type>
                <BOOL/>
              </type>
            </variable>
          </inputVars>
          <outputVars>
            <variable name="OUT_AND">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="OUT_OR">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="OUT_XOR">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="OUT_SR">
              <type>
                <BOOL/>
              </type>
            </variable>
          </outputVars>
          <localVars>
            <variable name="SR1">
              <type>
                <derived name="SR"/>
              </type>
            </variable>
          </localVars>
        </interface>
        <body>
          <LD>
            <leftPowerRail localId="1" height="80" width="3">
              <position x="40" y="180"/>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="20"/>
              </connectionPointOut>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="55"/>
              </connectionPointOut>
            </leftPowerRail>
            <contact localId="2" height="15" width="25">
              <position x="90" y="190"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="1">
                  <position x="90" y="200"/>
                  <position x="43" y="200"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN1</variable>
            </contact>
            <contact localId="3" height="20" width="25">
              <position x="90" y="225"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="1">
                  <position x="90" y="235"/>
                  <position x="43" y="235"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN2</variable>
            </contact>
            <coil localId="4" height="20" width="25">
              <position x="225" y="190"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="2">
                  <position x="225" y="200"/>
                  <position x="115" y="200"/>
                </connection>
                <connection refLocalId="3">
                  <position x="225" y="200"/>
                  <position x="189" y="200"/>
                  <position x="189" y="235"/>
                  <position x="115" y="235"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>OUT_OR</variable>
            </coil>
            <rightPowerRail localId="5" height="40" width="3">
              <position x="350" y="180"/>
              <connectionPointIn>
                <relPosition x="0" y="20"/>
                <connection refLocalId="4">
                  <position x="350" y="200"/>
                  <position x="250" y="200"/>
                </connection>
              </connectionPointIn>
            </rightPowerRail>
            <leftPowerRail localId="6" height="40" width="3">
              <position x="40" y="315"/>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="20"/>
              </connectionPointOut>
            </leftPowerRail>
            <contact localId="7" height="20" width="25">
              <position x="100" y="325"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="6">
                  <position x="100" y="335"/>
                  <position x="43" y="335"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN1</variable>
            </contact>
            <contact localId="8" height="20" width="25">
              <position x="185" y="325"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="7">
                  <position x="185" y="335"/>
                  <position x="125" y="335"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN2</variable>
            </contact>
            <coil localId="9" height="20" width="25">
              <position x="275" y="325"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="8">
                  <position x="275" y="335"/>
                  <position x="210" y="335"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>OUT_AND</variable>
            </coil>
            <rightPowerRail localId="10" height="40" width="3">
              <position x="350" y="315"/>
              <connectionPointIn>
                <relPosition x="0" y="20"/>
                <connection refLocalId="9">
                  <position x="350" y="335"/>
                  <position x="300" y="335"/>
                </connection>
              </connectionPointIn>
            </rightPowerRail>
            <leftPowerRail localId="11" height="80" width="3">
              <position x="40" y="415"/>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="20"/>
              </connectionPointOut>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="60"/>
              </connectionPointOut>
            </leftPowerRail>
            <contact localId="12" height="20" width="25">
              <position x="100" y="425"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="11">
                  <position x="100" y="435"/>
                  <position x="43" y="435"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN1</variable>
            </contact>
            <contact localId="13" height="20" width="25" negated="true">
              <position x="100" y="465"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="11">
                  <position x="100" y="475"/>
                  <position x="43" y="475"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN1</variable>
            </contact>
            <contact localId="14" height="20" width="25" negated="true">
              <position x="190" y="425"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="12">
                  <position x="190" y="435"/>
                  <position x="125" y="435"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN2</variable>
            </contact>
            <contact localId="15" height="20" width="25">
              <position x="190" y="465"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="13">
                  <position x="190" y="475"/>
                  <position x="125" y="475"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN2</variable>
            </contact>
            <coil localId="16" height="20" width="30">
              <position x="295" y="425"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="14">
                  <position x="295" y="435"/>
                  <position x="215" y="435"/>
                </connection>
                <connection refLocalId="15">
                  <position x="295" y="435"/>
                  <position x="270" y="435"/>
                  <position x="270" y="475"/>
                  <position x="215" y="475"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="30" y="10"/>
              </connectionPointOut>
              <variable>OUT_XOR</variable>
            </coil>
            <rightPowerRail localId="17" height="40" width="3">
              <position x="350" y="415"/>
              <connectionPointIn>
                <relPosition x="0" y="20"/>
                <connection refLocalId="16">
                  <position x="350" y="435"/>
                  <position x="325" y="435"/>
                </connection>
              </connectionPointIn>
            </rightPowerRail>
            <leftPowerRail localId="18" height="80" width="3">
              <position x="40" y="550"/>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="20"/>
              </connectionPointOut>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="60"/>
              </connectionPointOut>
            </leftPowerRail>
            <contact localId="19" height="20" width="25">
              <position x="100" y="560"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="18">
                  <position x="100" y="570"/>
                  <position x="43" y="570"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN1</variable>
            </contact>
            <contact localId="21" height="20" width="25">
              <position x="100" y="600"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="18">
                  <position x="100" y="610"/>
                  <position x="43" y="610"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>IN2</variable>
            </contact>
            <block localId="22" width="60" height="100" typeName="SR" instanceName="SR1">
              <position x="170" y="530"/>
              <inputVariables>
                <variable formalParameter="S1">
                  <connectionPointIn>
                    <relPosition x="0" y="40"/>
                    <connection refLocalId="19">
                      <position x="170" y="570"/>
                      <position x="125" y="570"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="R">
                  <connectionPointIn>
                    <relPosition x="0" y="80"/>
                    <connection refLocalId="21">
                      <position x="170" y="610"/>
                      <position x="125" y="610"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="Q1">
                  <connectionPointOut>
                    <relPosition x="60" y="40"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <coil localId="24" height="20" width="25">
              <position x="295" y="560"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="22" formalParameter="Q1">
                  <position x="295" y="570"/>
                  <position x="230" y="570"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>OUT_SR</variable>
            </coil>
            <rightPowerRail localId="25" height="40" width="3">
              <position x="350" y="550"/>
              <connectionPointIn>
                <relPosition x="0" y="20"/>
                <connection refLocalId="24">
                  <position x="350" y="570"/>
                  <position x="320" y="570"/>
                </connection>
              </connectionPointIn>
            </rightPowerRail>
            <comment localId="26" height="85" width="385">
              <position x="25" y="35"/>
              <content>
<![CDATA[A LD function block that embeds some FB and check basic LD]]>
              </content>
            </comment>
          </LD>
        </body>
      </pou>
      <pou name="Test_SFC" pouType="functionBlock">
        <interface>
          <inputVars>
            <variable name="CNT1">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="CNT2">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="IN1">
              <type>
                <derived name="MYTYPE"/>
              </type>
            </variable>
            <variable name="IN2">
              <type>
                <derived name="MYTYPE"/>
              </type>
            </variable>
            <variable name="UPPER1">
              <type>
                <INT/>
              </type>
            </variable>
            <variable name="UPPER2">
              <type>
                <INT/>
              </type>
            </variable>
          </inputVars>
          <outputVars>
            <variable name="OUT1">
              <type>
                <derived name="MYTYPE"/>
              </type>
            </variable>
            <variable name="OUT2">
              <type>
                <derived name="MYTYPE"/>
              </type>
            </variable>
          </outputVars>
          <localVars>
            <variable name="TEST_ENUM">
              <type>
                <derived name="MYTYPE2"/>
              </type>
            </variable>
            <variable name="TEST_ARRAY">
              <type>
                <derived name="MYTYPE3"/>
              </type>
            </variable>
          </localVars>
        </interface>
        <actions>
          <action name="COUNT1">
            <body>
              <ST>
<![CDATA[
OUT1 := IN1 + 1;
TEST_ENUM := OPEN;
]]>
              </ST>
            </body>
          </action>
          <action name="COUNT2">
            <body>
              <ST>
<![CDATA[
OUT2 := IN2 + 1;
TEST_ARRAY[0,0] := TEST_ARRAY[0,1] + 50;
]]>
              </ST>
            </body>
          </action>
        </actions>
        <transitions>
          <transition name="REACH_UPPER1">
            <body>
              <ST>
<![CDATA[:= OUT1 >= UPPER1;]]>
              </ST>
            </body>
          </transition>
          <transition name="REACH_UPPER2">
            <body>
              <ST>
<![CDATA[:= OUT2 >= UPPER2;]]>
              </ST>
            </body>
          </transition>
        </transitions>
        <body>
          <SFC>
            <step localId="1" height="31" width="55" name="Start" initialStep="true">
              <position x="125" y="170"/>
              <connectionPointOut formalParameter="">
                <relPosition x="25" y="31"/>
              </connectionPointOut>
              <connectionPointOutAction formalParameter="">
                <relPosition x="55" y="15"/>
              </connectionPointOutAction>
            </step>
            <step localId="4" height="30" width="55" name="Step3">
              <position x="440" y="370"/>
              <connectionPointIn>
                <relPosition x="25" y="0"/>
                <connection refLocalId="22">
                  <position x="465" y="370"/>
                  <position x="465" y="348"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="25" y="30"/>
              </connectionPointOut>
              <connectionPointOutAction formalParameter="">
                <relPosition x="55" y="15"/>
              </connectionPointOutAction>
            </step>
            <jumpStep localId="5" height="13" width="20" targetName="Start">
              <position x="205" y="630"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="12">
                  <position x="215" y="630"/>
                  <position x="215" y="601"/>
                </connection>
              </connectionPointIn>
            </jumpStep>
            <transition localId="8" height="2" width="20">
              <position x="560" y="565"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="25">
                  <position x="570" y="565"/>
                  <position x="570" y="523"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="2"/>
              </connectionPointOut>
              <condition>
                <inline name="">
                  <ST>
<![CDATA[TRUE]]>
                  </ST>
                </inline>
              </condition>
            </transition>
            <actionBlock localId="9" height="30" width="84">
              <position x="325" y="375"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="13">
                  <position x="325" y="390"/>
                  <position x="300" y="390"/>
                </connection>
              </connectionPointIn>
              <action>
                <reference name="COUNT1"/>
              </action>
            </actionBlock>
            <actionBlock localId="10" height="30" width="105">
              <position x="520" y="370"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="4">
                  <position x="520" y="385"/>
                  <position x="495" y="385"/>
                </connection>
              </connectionPointIn>
              <action>
                <reference name="COUNT1"/>
              </action>
            </actionBlock>
            <selectionDivergence localId="11" height="1" width="530">
              <position x="45" y="230"/>
              <connectionPointIn>
                <relPosition x="105" y="0"/>
                <connection refLocalId="1">
                  <position x="150" y="230"/>
                  <position x="150" y="201"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="0" y="1"/>
              </connectionPointOut>
              <connectionPointOut formalParameter="">
                <relPosition x="225" y="1"/>
              </connectionPointOut>
              <connectionPointOut formalParameter="">
                <relPosition x="530" y="1"/>
              </connectionPointOut>
            </selectionDivergence>
            <selectionConvergence localId="12" height="1" width="525">
              <position x="45" y="600"/>
              <connectionPointIn>
                <relPosition x="0" y="0"/>
                <connection refLocalId="38">
                  <position x="45" y="600"/>
                  <position x="45" y="472"/>
                </connection>
              </connectionPointIn>
              <connectionPointIn>
                <relPosition x="225" y="0"/>
                <connection refLocalId="15">
                  <position x="270" y="600"/>
                  <position x="270" y="472"/>
                </connection>
              </connectionPointIn>
              <connectionPointIn>
                <relPosition x="525" y="0"/>
                <connection refLocalId="8">
                  <position x="570" y="600"/>
                  <position x="570" y="567"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="170" y="1"/>
              </connectionPointOut>
            </selectionConvergence>
            <step localId="13" height="30" width="55" name="Step1">
              <position x="245" y="375"/>
              <connectionPointIn>
                <relPosition x="25" y="0"/>
                <connection refLocalId="44">
                  <position x="270" y="375"/>
                  <position x="270" y="280"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="25" y="30"/>
              </connectionPointOut>
              <connectionPointOutAction formalParameter="">
                <relPosition x="55" y="15"/>
              </connectionPointOutAction>
            </step>
            <transition localId="15" height="2" width="20">
              <position x="260" y="470"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="13">
                  <position x="270" y="470"/>
                  <position x="270" y="405"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="2"/>
              </connectionPointOut>
              <condition>
                <reference name="REACH_UPPER1"/>
              </condition>
            </transition>
            <simultaneousDivergence localId="22" height="3" width="210">
              <position x="465" y="345"/>
              <connectionPointIn>
                <relPosition x="110" y="0"/>
                <connection refLocalId="45">
                  <position x="575" y="345"/>
                  <position x="575" y="280"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="0" y="3"/>
              </connectionPointOut>
              <connectionPointOut formalParameter="">
                <relPosition x="210" y="3"/>
              </connectionPointOut>
            </simultaneousDivergence>
            <transition localId="23" height="2" width="20">
              <position x="455" y="430"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="4">
                  <position x="465" y="430"/>
                  <position x="465" y="400"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="2"/>
              </connectionPointOut>
              <condition>
                <reference name="REACH_UPPER1"/>
              </condition>
            </transition>
            <step localId="24" height="27" width="55" name="WAIT1">
              <position x="440" y="465"/>
              <connectionPointIn>
                <relPosition x="25" y="0"/>
                <connection refLocalId="23">
                  <position x="465" y="465"/>
                  <position x="465" y="432"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="25" y="27"/>
              </connectionPointOut>
            </step>
            <simultaneousConvergence localId="25" height="3" width="210">
              <position x="465" y="520"/>
              <connectionPointIn>
                <relPosition x="0" y="0"/>
                <connection refLocalId="24">
                  <position x="465" y="520"/>
                  <position x="465" y="492"/>
                </connection>
              </connectionPointIn>
              <connectionPointIn>
                <relPosition x="210" y="0"/>
                <connection refLocalId="29">
                  <position x="675" y="520"/>
                  <position x="675" y="492"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="105" y="3"/>
              </connectionPointOut>
            </simultaneousConvergence>
            <step localId="26" height="30" width="55" name="Step4">
              <position x="650" y="370"/>
              <connectionPointIn>
                <relPosition x="25" y="0"/>
                <connection refLocalId="22">
                  <position x="675" y="370"/>
                  <position x="675" y="348"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="25" y="30"/>
              </connectionPointOut>
              <connectionPointOutAction formalParameter="">
                <relPosition x="55" y="15"/>
              </connectionPointOutAction>
            </step>
            <transition localId="28" height="2" width="20">
              <position x="665" y="430"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="26">
                  <position x="675" y="430"/>
                  <position x="675" y="400"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="2"/>
              </connectionPointOut>
              <condition>
                <reference name="REACH_UPPER2"/>
              </condition>
            </transition>
            <step localId="29" height="27" width="55" name="WAIT2">
              <position x="650" y="465"/>
              <connectionPointIn>
                <relPosition x="25" y="0"/>
                <connection refLocalId="28">
                  <position x="675" y="465"/>
                  <position x="675" y="432"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="25" y="27"/>
              </connectionPointOut>
            </step>
            <actionBlock localId="31" height="30" width="100">
              <position x="730" y="370"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="26">
                  <position x="730" y="385"/>
                  <position x="705" y="385"/>
                </connection>
              </connectionPointIn>
              <action>
                <reference name="COUNT2"/>
              </action>
            </actionBlock>
            <actionBlock localId="32" height="30" width="235">
              <position x="200" y="170"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="1">
                  <position x="200" y="185"/>
                  <position x="180" y="185"/>
                </connection>
              </connectionPointIn>
              <action>
                <inline>
                  <ST>
<![CDATA[OUT1 := 0;OUT2 := 0;]]>
                  </ST>
                </inline>
              </action>
            </actionBlock>
            <transition localId="33" height="2" width="20">
              <position x="35" y="325"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="11">
                  <position x="45" y="325"/>
                  <position x="45" y="231"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="2"/>
              </connectionPointOut>
              <condition>
                <inline name="">
                  <ST>
<![CDATA[CNT2 AND NOT CNT1]]>
                  </ST>
                </inline>
              </condition>
            </transition>
            <block localId="34" width="80" height="90" typeName="AND">
              <position x="435" y="240"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="35"/>
                    <connection refLocalId="35">
                      <position x="435" y="275"/>
                      <position x="410" y="275"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="39">
                      <position x="435" y="310"/>
                      <position x="410" y="310"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="80" y="35"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="35" height="30" width="50">
              <position x="360" y="260"/>
              <connectionPointOut>
                <relPosition x="50" y="15"/>
              </connectionPointOut>
              <expression>CNT1</expression>
            </inVariable>
            <step localId="36" height="27" width="60" name="Step2">
              <position x="15" y="375"/>
              <connectionPointIn>
                <relPosition x="30" y="0"/>
                <connection refLocalId="33">
                  <position x="45" y="375"/>
                  <position x="45" y="327"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut formalParameter="">
                <relPosition x="30" y="27"/>
              </connectionPointOut>
              <connectionPointOutAction formalParameter="">
                <relPosition x="60" y="15"/>
              </connectionPointOutAction>
            </step>
            <actionBlock localId="37" height="30" width="84">
              <position x="100" y="375"/>
              <connectionPointIn>
                <relPosition x="0" y="15"/>
                <connection refLocalId="36">
                  <position x="100" y="390"/>
                  <position x="75" y="390"/>
                </connection>
              </connectionPointIn>
              <action>
                <reference name="COUNT2"/>
              </action>
            </actionBlock>
            <transition localId="38" height="2" width="20">
              <position x="35" y="470"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="36">
                  <position x="45" y="470"/>
                  <position x="45" y="402"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="2"/>
              </connectionPointOut>
              <condition>
                <reference name="REACH_UPPER2"/>
              </condition>
            </transition>
            <inVariable localId="39" height="30" width="50">
              <position x="360" y="295"/>
              <connectionPointOut>
                <relPosition x="50" y="15"/>
              </connectionPointOut>
              <expression>CNT2</expression>
            </inVariable>
            <leftPowerRail localId="40" height="40" width="3">
              <position x="70" y="255"/>
              <connectionPointOut formalParameter="">
                <relPosition x="3" y="20"/>
              </connectionPointOut>
            </leftPowerRail>
            <contact localId="41" height="20" width="25">
              <position x="110" y="265"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="40">
                  <position x="110" y="275"/>
                  <position x="73" y="275"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>CNT1</variable>
            </contact>
            <contact localId="42" height="20" width="25" negated="true">
              <position x="190" y="265"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="41">
                  <position x="190" y="275"/>
                  <position x="135" y="275"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="25" y="10"/>
              </connectionPointOut>
              <variable>CNT2</variable>
            </contact>
            <transition localId="44" height="10" width="20">
              <position x="260" y="270"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="11">
                  <position x="270" y="270"/>
                  <position x="270" y="231"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="10"/>
              </connectionPointOut>
              <condition>
                <connection refLocalId="42">
                  <position x="260" y="275"/>
                  <position x="215" y="275"/>
                </connection>
              </condition>
            </transition>
            <transition localId="45" height="10" width="20">
              <position x="565" y="270"/>
              <connectionPointIn>
                <relPosition x="10" y="0"/>
                <connection refLocalId="11">
                  <position x="575" y="270"/>
                  <position x="575" y="231"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="10" y="10"/>
              </connectionPointOut>
              <condition>
                <connection refLocalId="34" formalParameter="OUT">
                  <position x="565" y="275"/>
                  <position x="515" y="275"/>
                </connection>
              </condition>
            </transition>
            <comment localId="46" height="120" width="785">
              <position x="15" y="25"/>
              <content>
<![CDATA[A SFC that make use of different kinds of divergences, and mix LD and FBD and inline transitions.
It is supposed to increment OUT1 and OUT2 according CNT1 and CNT2, and untill UPPER1 and UPPER2 limits are reached.]]>
              </content>
            </comment>
          </SFC>
        </body>
      </pou>
    </pous>
  </types>
  <instances>
    <configurations>
      <configuration name="STD_CONF">
        <resource name="STD_RESSOURCE">
          <task name="STD_TASK" interval="00:00:00.100000" priority="0">
            <pouInstance name="MAIN_INSTANCE" type="MAIN_TEST"/>
          </task>
        </resource>
      </configuration>
    </configurations>
  </instances>
</project>