tests/wxHMI/plc.xml
author Andrey Skvortsov <andrej.skvortzov@gmail.com>
Thu, 09 Mar 2017 15:35:19 +0300
changeset 1657 3a98027ff372
parent 1465 9011e2ceea85
child 1691 9a42f12a973e
permissions -rw-r--r--
apply constraints to names for tasks and task instances in resource configuration

The same rules as for IEC identifiers are applied.
- no non-lating characters, ...
- no IEC keywords
- check for duplicate names in resource configuration

closes #19
<?xml version='1.0' encoding='utf-8'?>
<project xmlns="http://www.plcopen.org/xml/tc6_0201" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xhtml="http://www.w3.org/1999/xhtml" xsi:schemaLocation="http://www.plcopen.org/xml/tc6_0201">
  <fileHeader companyName="Unknown" productName="Unnamed" productVersion="1" creationDateTime="2012-09-12T23:30:19"/>
  <contentHeader name="Unnamed" modificationDateTime="2015-07-01T22:17:12">
    <coordinateInfo>
      <pageSize x="1050" y="1485"/>
      <fbd>
        <scaling x="5" y="5"/>
      </fbd>
      <ld>
        <scaling x="0" y="0"/>
      </ld>
      <sfc>
        <scaling x="0" y="0"/>
      </sfc>
    </coordinateInfo>
  </contentHeader>
  <types>
    <dataTypes/>
    <pous>
      <pou name="main" pouType="program">
        <interface>
          <externalVars>
            <variable name="Power_ON">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="Power_OFF">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="power">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="DrawTest">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="DrawLogo">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="DrawEscher">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="Detect_Circle">
              <type>
                <BOOL/>
              </type>
            </variable>
          </externalVars>
          <localVars>
            <variable name="RS0">
              <type>
                <derived name="RS"/>
              </type>
            </variable>
          </localVars>
          <externalVars>
            <variable name="ZaxisPos">
              <type>
                <INT/>
              </type>
            </variable>
          </externalVars>
        </interface>
        <body>
          <FBD>
            <inVariable localId="286" executionOrderId="0" height="25" width="65" negated="false">
              <position x="230" y="205"/>
              <connectionPointOut>
                <relPosition x="65" y="10"/>
              </connectionPointOut>
              <expression>Power_ON</expression>
            </inVariable>
            <block localId="287" typeName="RS" instanceName="RS0" executionOrderId="0" height="65" width="45">
              <position x="395" y="190"/>
              <inputVariables>
                <variable formalParameter="S">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="286">
                      <position x="395" y="220"/>
                      <position x="315" y="220"/>
                      <position x="315" y="215"/>
                      <position x="295" y="215"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="R1">
                  <connectionPointIn>
                    <relPosition x="0" y="55"/>
                    <connection refLocalId="288">
                      <position x="395" y="245"/>
                      <position x="320" y="245"/>
                      <position x="320" y="260"/>
                      <position x="310" y="260"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="Q1">
                  <connectionPointOut>
                    <relPosition x="45" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="288" executionOrderId="0" height="25" width="70" negated="false">
              <position x="240" y="250"/>
              <connectionPointOut>
                <relPosition x="70" y="10"/>
              </connectionPointOut>
              <expression>Power_OFF</expression>
            </inVariable>
            <outVariable localId="289" executionOrderId="0" height="25" width="45" negated="false">
              <position x="510" y="220"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="287" formalParameter="Q1">
                  <position x="510" y="230"/>
                  <position x="475" y="230"/>
                  <position x="475" y="220"/>
                  <position x="440" y="220"/>
                </connection>
              </connectionPointIn>
              <expression>power</expression>
            </outVariable>
            <inVariable localId="290" executionOrderId="0" height="25" width="60" negated="false">
              <position x="75" y="55"/>
              <connectionPointOut>
                <relPosition x="60" y="10"/>
              </connectionPointOut>
              <expression>DrawTest</expression>
            </inVariable>
            <block localId="292" typeName="ADD" executionOrderId="0" height="65" width="60">
              <position x="350" y="50"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="291">
                      <position x="350" y="80"/>
                      <position x="340" y="80"/>
                      <position x="340" y="25"/>
                      <position x="530" y="25"/>
                      <position x="530" y="45"/>
                      <position x="520" y="45"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="55"/>
                    <connection refLocalId="293" formalParameter="OUT">
                      <position x="350" y="105"/>
                      <position x="287" y="105"/>
                      <position x="287" y="65"/>
                      <position x="225" y="65"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="60" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inOutVariable localId="291" executionOrderId="0" height="25" width="55" negatedOut="false" negatedIn="false">
              <position x="465" y="35"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="292" formalParameter="OUT">
                  <position x="465" y="45"/>
                  <position x="437" y="45"/>
                  <position x="437" y="80"/>
                  <position x="410" y="80"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="55" y="10"/>
              </connectionPointOut>
              <expression>ZaxisPos</expression>
            </inOutVariable>
            <block localId="293" typeName="SEL" executionOrderId="0" height="85" width="60">
              <position x="165" y="35"/>
              <inputVariables>
                <variable formalParameter="G">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="290">
                      <position x="165" y="65"/>
                      <position x="135" y="65"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN0">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="295">
                      <position x="165" y="85"/>
                      <position x="135" y="85"/>
                      <position x="135" y="90"/>
                      <position x="105" y="90"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="294">
                      <position x="165" y="105"/>
                      <position x="135" y="105"/>
                      <position x="135" y="115"/>
                      <position x="105" y="115"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="60" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="294" executionOrderId="0" height="25" width="20" negated="false">
              <position x="85" y="105"/>
              <connectionPointOut>
                <relPosition x="20" y="10"/>
              </connectionPointOut>
              <expression>1</expression>
            </inVariable>
            <inVariable localId="295" executionOrderId="0" height="25" width="20" negated="false">
              <position x="85" y="80"/>
              <connectionPointOut>
                <relPosition x="20" y="10"/>
              </connectionPointOut>
              <expression>0</expression>
            </inVariable>
          </FBD>
        </body>
        <documentation>
          <xhtml:p><![CDATA[]]></xhtml:p>
        </documentation>
      </pou>
      <pou name="ReadGUIdata" pouType="program">
        <interface>
          <localVars>
            <variable name="tmp">
              <type>
                <INT/>
              </type>
            </variable>
          </localVars>
          <externalVars>
            <variable name="power">
              <type>
                <BOOL/>
              </type>
            </variable>
            <variable name="XaxisPos">
              <type>
                <INT/>
              </type>
            </variable>
            <variable name="YaxisPos">
              <type>
                <INT/>
              </type>
            </variable>
            <variable name="ZaxisPos">
              <type>
                <INT/>
              </type>
            </variable>
            <variable name="TaxisPos">
              <type>
                <INT/>
              </type>
            </variable>
          </externalVars>
          <localVars>
            <variable name="python_poll0">
              <type>
                <derived name="python_poll"/>
              </type>
            </variable>
          </localVars>
        </interface>
        <body>
          <FBD>
            <outVariable localId="211" executionOrderId="0" height="25" width="60" negated="false">
              <position x="565" y="195"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="215">
                  <position x="565" y="205"/>
                  <position x="370" y="205"/>
                  <position x="370" y="195"/>
                  <position x="330" y="195"/>
                </connection>
              </connectionPointIn>
              <expression>XaxisPos</expression>
            </outVariable>
            <block localId="213" typeName="ADD" executionOrderId="0" height="65" width="60">
              <position x="220" y="295"/>
              <inputVariables>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="212">
                      <position x="220" y="325"/>
                      <position x="210" y="325"/>
                      <position x="210" y="270"/>
                      <position x="380" y="270"/>
                      <position x="380" y="325"/>
                      <position x="365" y="325"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN2">
                  <connectionPointIn>
                    <relPosition x="0" y="55"/>
                    <connection refLocalId="217" formalParameter="OUT">
                      <position x="220" y="350"/>
                      <position x="180" y="350"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="60" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inOutVariable localId="212" executionOrderId="0" height="25" width="30" negatedOut="false" negatedIn="false">
              <position x="335" y="315"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="213" formalParameter="OUT">
                  <position x="335" y="325"/>
                  <position x="280" y="325"/>
                </connection>
              </connectionPointIn>
              <connectionPointOut>
                <relPosition x="30" y="10"/>
              </connectionPointOut>
              <expression>tmp</expression>
            </inOutVariable>
            <inVariable localId="214" executionOrderId="0" height="25" width="20" negated="false">
              <position x="65" y="385"/>
              <connectionPointOut>
                <relPosition x="20" y="10"/>
              </connectionPointOut>
              <expression>1</expression>
            </inVariable>
            <inVariable localId="215" executionOrderId="0" height="25" width="30" negated="false">
              <position x="300" y="185"/>
              <connectionPointOut>
                <relPosition x="30" y="10"/>
              </connectionPointOut>
              <expression>tmp</expression>
            </inVariable>
            <outVariable localId="216" executionOrderId="0" height="25" width="60" negated="false">
              <position x="540" y="310"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="215">
                  <position x="540" y="320"/>
                  <position x="435" y="320"/>
                  <position x="435" y="195"/>
                  <position x="330" y="195"/>
                </connection>
              </connectionPointIn>
              <expression>YaxisPos</expression>
            </outVariable>
            <block localId="217" typeName="SEL" executionOrderId="0" height="85" width="60">
              <position x="120" y="320"/>
              <inputVariables>
                <variable formalParameter="G">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="219">
                      <position x="120" y="350"/>
                      <position x="97" y="350"/>
                      <position x="97" y="345"/>
                      <position x="85" y="345"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN0">
                  <connectionPointIn>
                    <relPosition x="0" y="50"/>
                    <connection refLocalId="218">
                      <position x="120" y="370"/>
                      <position x="85" y="370"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="IN1">
                  <connectionPointIn>
                    <relPosition x="0" y="70"/>
                    <connection refLocalId="214">
                      <position x="120" y="390"/>
                      <position x="102" y="390"/>
                      <position x="102" y="395"/>
                      <position x="85" y="395"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="OUT">
                  <connectionPointOut>
                    <relPosition x="60" y="30"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="218" executionOrderId="0" height="25" width="20" negated="false">
              <position x="65" y="360"/>
              <connectionPointOut>
                <relPosition x="20" y="10"/>
              </connectionPointOut>
              <expression>0</expression>
            </inVariable>
            <inVariable localId="219" executionOrderId="0" height="25" width="45" negated="false">
              <position x="40" y="335"/>
              <connectionPointOut>
                <relPosition x="45" y="10"/>
              </connectionPointOut>
              <expression>power</expression>
            </inVariable>
            <block localId="220" typeName="python_poll" instanceName="python_poll0" executionOrderId="0" height="65" width="85">
              <position x="640" y="370"/>
              <inputVariables>
                <variable formalParameter="TRIG">
                  <connectionPointIn>
                    <relPosition x="0" y="30"/>
                    <connection refLocalId="221">
                      <position x="640" y="400"/>
                      <position x="595" y="400"/>
                    </connection>
                  </connectionPointIn>
                </variable>
                <variable formalParameter="CODE">
                  <connectionPointIn>
                    <relPosition x="0" y="55"/>
                    <connection refLocalId="222">
                      <position x="640" y="425"/>
                      <position x="590" y="425"/>
                    </connection>
                  </connectionPointIn>
                </variable>
              </inputVariables>
              <inOutVariables/>
              <outputVariables>
                <variable formalParameter="ACK">
                  <connectionPointOut>
                    <relPosition x="85" y="30"/>
                  </connectionPointOut>
                </variable>
                <variable formalParameter="RESULT">
                  <connectionPointOut>
                    <relPosition x="85" y="55"/>
                  </connectionPointOut>
                </variable>
              </outputVariables>
            </block>
            <inVariable localId="221" executionOrderId="0" height="25" width="75" negated="false">
              <position x="520" y="390"/>
              <connectionPointOut>
                <relPosition x="75" y="10"/>
              </connectionPointOut>
              <expression>BOOL#TRUE</expression>
            </inVariable>
            <inVariable localId="222" executionOrderId="0" height="25" width="135" negated="false">
              <position x="455" y="415"/>
              <connectionPointOut>
                <relPosition x="135" y="10"/>
              </connectionPointOut>
              <expression>'wxglade_hmi.UpdPos()'</expression>
            </inVariable>
          </FBD>
        </body>
        <documentation>
          <xhtml:p><![CDATA[]]></xhtml:p>
        </documentation>
      </pou>
      <pou name="Declarations" pouType="program">
        <interface>
          <localVars>
            <variable name="LocalVar0">
              <type>
                <DINT/>
              </type>
            </variable>
            <variable name="LocalVar1">
              <type>
                <DINT/>
              </type>
            </variable>
          </localVars>
        </interface>
        <body>
          <FBD>
            <inVariable localId="127" executionOrderId="0" height="25" width="60" negated="false">
              <position x="235" y="205"/>
              <connectionPointOut>
                <relPosition x="60" y="10"/>
              </connectionPointOut>
              <expression>LocalVar0</expression>
            </inVariable>
            <outVariable localId="128" executionOrderId="0" height="25" width="60" negated="false">
              <position x="450" y="190"/>
              <connectionPointIn>
                <relPosition x="0" y="10"/>
                <connection refLocalId="127">
                  <position x="450" y="200"/>
                  <position x="372" y="200"/>
                  <position x="372" y="215"/>
                  <position x="295" y="215"/>
                </connection>
              </connectionPointIn>
              <expression>LocalVar1</expression>
            </outVariable>
          </FBD>
        </body>
        <documentation>
          <xhtml:p><![CDATA[]]></xhtml:p>
        </documentation>
      </pou>
    </pous>
  </types>
  <instances>
    <configurations>
      <configuration name="config">
        <resource name="resource1">
          <task name="InitOneShot" priority="0" single="Initialize">
            <pouInstance name="Initializer" typeName="Declarations"/>
          </task>
          <task name="ControlTask" priority="0" interval="T#2ms">
            <pouInstance name="MainInstance" typeName="main"/>
          </task>
          <task name="GUIupdate" priority="0" interval="T#200ms">
            <pouInstance name="PosReader" typeName="ReadGUIdata"/>
          </task>
          <globalVars>
            <variable name="Initialize">
              <type>
                <BOOL/>
              </type>
              <initialValue>
                <simpleValue value="TRUE"/>
              </initialValue>
            </variable>
            <variable name="power">
              <type>
                <BOOL/>
              </type>
              <initialValue>
                <simpleValue value="TRUE"/>
              </initialValue>
            </variable>
          </globalVars>
        </resource>
      </configuration>
    </configurations>
  </instances>
</project>