tests/wxHMI/plc.xml
changeset 1691 9a42f12a973e
parent 1465 9011e2ceea85
child 2346 ac16bad593cf
equal deleted inserted replaced
1690:cfac9d1c3571 1691:9a42f12a973e
     1 <?xml version='1.0' encoding='utf-8'?>
     1 <?xml version='1.0' encoding='utf-8'?>
     2 <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">
     2 <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">
     3   <fileHeader companyName="Unknown" productName="Unnamed" productVersion="1" creationDateTime="2012-09-12T23:30:19"/>
     3   <fileHeader companyName="Unknown" productName="Beremiz" productVersion="1" creationDateTime="2012-09-12T23:30:19"/>
     4   <contentHeader name="Unnamed" modificationDateTime="2015-07-01T22:17:12">
     4   <contentHeader name="extended wxHMI example" modificationDateTime="2017-06-06T13:13:18">
     5     <coordinateInfo>
     5     <coordinateInfo>
     6       <pageSize x="1050" y="1485"/>
     6       <pageSize x="1050" y="1485"/>
     7       <fbd>
     7       <fbd>
     8         <scaling x="5" y="5"/>
     8         <scaling x="5" y="5"/>
     9       </fbd>
     9       </fbd>
    29             <variable name="Power_OFF">
    29             <variable name="Power_OFF">
    30               <type>
    30               <type>
    31                 <BOOL/>
    31                 <BOOL/>
    32               </type>
    32               </type>
    33             </variable>
    33             </variable>
    34             <variable name="power">
       
    35               <type>
       
    36                 <BOOL/>
       
    37               </type>
       
    38             </variable>
       
    39             <variable name="DrawTest">
       
    40               <type>
       
    41                 <BOOL/>
       
    42               </type>
       
    43             </variable>
       
    44             <variable name="DrawLogo">
       
    45               <type>
       
    46                 <BOOL/>
       
    47               </type>
       
    48             </variable>
       
    49             <variable name="DrawEscher">
       
    50               <type>
       
    51                 <BOOL/>
       
    52               </type>
       
    53             </variable>
       
    54             <variable name="Detect_Circle">
       
    55               <type>
       
    56                 <BOOL/>
       
    57               </type>
       
    58             </variable>
       
    59           </externalVars>
    34           </externalVars>
    60           <localVars>
    35           <localVars>
    61             <variable name="RS0">
    36             <variable name="power">
    62               <type>
    37               <type>
    63                 <derived name="RS"/>
    38                 <BOOL/>
    64               </type>
    39               </type>
    65             </variable>
    40             </variable>
    66           </localVars>
    41           </localVars>
    67           <externalVars>
    42           <externalVars>
       
    43             <variable name="DrawTest">
       
    44               <type>
       
    45                 <BOOL/>
       
    46               </type>
       
    47             </variable>
       
    48             <variable name="DrawTestBtn">
       
    49               <type>
       
    50                 <BOOL/>
       
    51               </type>
       
    52             </variable>
       
    53             <variable name="DrawLogo">
       
    54               <type>
       
    55                 <BOOL/>
       
    56               </type>
       
    57             </variable>
       
    58             <variable name="XaxisPos">
       
    59               <type>
       
    60                 <INT/>
       
    61               </type>
       
    62             </variable>
       
    63             <variable name="YaxisPos">
       
    64               <type>
       
    65                 <INT/>
       
    66               </type>
       
    67             </variable>
    68             <variable name="ZaxisPos">
    68             <variable name="ZaxisPos">
    69               <type>
    69               <type>
    70                 <INT/>
    70                 <INT/>
    71               </type>
    71               </type>
    72             </variable>
    72             </variable>
       
    73             <variable name="TaxisPos">
       
    74               <type>
       
    75                 <INT/>
       
    76               </type>
       
    77             </variable>
    73           </externalVars>
    78           </externalVars>
       
    79           <localVars>
       
    80             <variable name="PowerCtrl">
       
    81               <type>
       
    82                 <derived name="RS"/>
       
    83               </type>
       
    84             </variable>
       
    85             <variable name="Xaxis">
       
    86               <type>
       
    87                 <derived name="axis"/>
       
    88               </type>
       
    89             </variable>
       
    90           </localVars>
       
    91           <externalVars>
       
    92             <variable name="XAxisMinus">
       
    93               <type>
       
    94                 <BOOL/>
       
    95               </type>
       
    96             </variable>
       
    97             <variable name="XAxisPlus">
       
    98               <type>
       
    99                 <BOOL/>
       
   100               </type>
       
   101             </variable>
       
   102             <variable name="YAxisPlus">
       
   103               <type>
       
   104                 <BOOL/>
       
   105               </type>
       
   106             </variable>
       
   107             <variable name="YAxisMinus">
       
   108               <type>
       
   109                 <BOOL/>
       
   110               </type>
       
   111             </variable>
       
   112             <variable name="ZAxisPlus">
       
   113               <type>
       
   114                 <BOOL/>
       
   115               </type>
       
   116             </variable>
       
   117             <variable name="ZAxisMinus">
       
   118               <type>
       
   119                 <BOOL/>
       
   120               </type>
       
   121             </variable>
       
   122             <variable name="TAxisPlus">
       
   123               <type>
       
   124                 <BOOL/>
       
   125               </type>
       
   126             </variable>
       
   127             <variable name="TAxisMinus">
       
   128               <type>
       
   129                 <BOOL/>
       
   130               </type>
       
   131             </variable>
       
   132           </externalVars>
       
   133           <localVars>
       
   134             <variable name="Yaxis">
       
   135               <type>
       
   136                 <derived name="axis"/>
       
   137               </type>
       
   138             </variable>
       
   139             <variable name="Taxis">
       
   140               <type>
       
   141                 <derived name="axis"/>
       
   142               </type>
       
   143             </variable>
       
   144             <variable name="Zaxis">
       
   145               <type>
       
   146                 <derived name="axis"/>
       
   147               </type>
       
   148             </variable>
       
   149             <variable name="DrawTestDo">
       
   150               <type>
       
   151                 <derived name="RS"/>
       
   152               </type>
       
   153             </variable>
       
   154             <variable name="DrawLogoDo">
       
   155               <type>
       
   156                 <derived name="RS"/>
       
   157               </type>
       
   158             </variable>
       
   159           </localVars>
    74         </interface>
   160         </interface>
    75         <body>
   161         <body>
    76           <FBD>
   162           <FBD>
    77             <inVariable localId="286" executionOrderId="0" height="25" width="65" negated="false">
   163             <comment localId="296" height="330" width="655">
    78               <position x="230" y="205"/>
   164               <position x="390" y="10"/>
    79               <connectionPointOut>
   165               <content>
    80                 <relPosition x="65" y="10"/>
   166                 <xhtml:p><![CDATA[Example shows 
       
   167 - how to use wxGlade extension to create user interface and dynamically extend it using Python, 
       
   168 - how to respond to user actions in PLC program and 
       
   169 - how to use several PLC tasks to handle process of different speeds.
       
   170 
       
   171 Program has two tasks:
       
   172 1. Slow task that communicates with user interface created in wxGlade and updates axes state.
       
   173 2. Main task that drives virtual axes.
       
   174 
       
   175 When power is on, user can control axes.
       
   176 "Draw Logo" buttons starts X, Y, Z axes. "Draw Test" buttons  starts Z and T axes. 
       
   177 User can adjust position of axes using manual keys.
       
   178 
       
   179 
       
   180 Happy hacking!]]></xhtml:p>
       
   181               </content>
       
   182             </comment>
       
   183             <inVariable localId="288" executionOrderId="0" height="30" width="85" negated="false">
       
   184               <position x="35" y="190"/>
       
   185               <connectionPointOut>
       
   186                 <relPosition x="85" y="15"/>
       
   187               </connectionPointOut>
       
   188               <expression>Power_OFF</expression>
       
   189             </inVariable>
       
   190             <inVariable localId="286" executionOrderId="0" height="30" width="85" negated="false">
       
   191               <position x="35" y="155"/>
       
   192               <connectionPointOut>
       
   193                 <relPosition x="85" y="15"/>
    81               </connectionPointOut>
   194               </connectionPointOut>
    82               <expression>Power_ON</expression>
   195               <expression>Power_ON</expression>
    83             </inVariable>
   196             </inVariable>
    84             <block localId="287" typeName="RS" instanceName="RS0" executionOrderId="0" height="65" width="45">
   197             <block localId="287" typeName="RS" instanceName="PowerCtrl" executionOrderId="0" height="95" width="55">
    85               <position x="395" y="190"/>
   198               <position x="190" y="130"/>
    86               <inputVariables>
   199               <inputVariables>
    87                 <variable formalParameter="S">
   200                 <variable formalParameter="S">
    88                   <connectionPointIn>
   201                   <connectionPointIn>
    89                     <relPosition x="0" y="30"/>
   202                     <relPosition x="0" y="40"/>
    90                     <connection refLocalId="286">
   203                     <connection refLocalId="286">
    91                       <position x="395" y="220"/>
   204                       <position x="190" y="170"/>
    92                       <position x="315" y="220"/>
   205                       <position x="120" y="170"/>
    93                       <position x="315" y="215"/>
       
    94                       <position x="295" y="215"/>
       
    95                     </connection>
   206                     </connection>
    96                   </connectionPointIn>
   207                   </connectionPointIn>
    97                 </variable>
   208                 </variable>
    98                 <variable formalParameter="R1">
   209                 <variable formalParameter="R1">
    99                   <connectionPointIn>
   210                   <connectionPointIn>
   100                     <relPosition x="0" y="55"/>
   211                     <relPosition x="0" y="75"/>
   101                     <connection refLocalId="288">
   212                     <connection refLocalId="288">
   102                       <position x="395" y="245"/>
   213                       <position x="190" y="205"/>
   103                       <position x="320" y="245"/>
   214                       <position x="120" y="205"/>
   104                       <position x="320" y="260"/>
       
   105                       <position x="310" y="260"/>
       
   106                     </connection>
   215                     </connection>
   107                   </connectionPointIn>
   216                   </connectionPointIn>
   108                 </variable>
   217                 </variable>
   109               </inputVariables>
   218               </inputVariables>
   110               <inOutVariables/>
   219               <inOutVariables/>
   111               <outputVariables>
   220               <outputVariables>
   112                 <variable formalParameter="Q1">
   221                 <variable formalParameter="Q1">
   113                   <connectionPointOut>
   222                   <connectionPointOut>
   114                     <relPosition x="45" y="30"/>
   223                     <relPosition x="55" y="40"/>
   115                   </connectionPointOut>
   224                   </connectionPointOut>
   116                 </variable>
   225                 </variable>
   117               </outputVariables>
   226               </outputVariables>
   118             </block>
   227             </block>
   119             <inVariable localId="288" executionOrderId="0" height="25" width="70" negated="false">
   228             <outVariable localId="289" executionOrderId="0" height="30" width="50" negated="false">
   120               <position x="240" y="250"/>
   229               <position x="290" y="155"/>
   121               <connectionPointOut>
       
   122                 <relPosition x="70" y="10"/>
       
   123               </connectionPointOut>
       
   124               <expression>Power_OFF</expression>
       
   125             </inVariable>
       
   126             <outVariable localId="289" executionOrderId="0" height="25" width="45" negated="false">
       
   127               <position x="510" y="220"/>
       
   128               <connectionPointIn>
   230               <connectionPointIn>
   129                 <relPosition x="0" y="10"/>
   231                 <relPosition x="0" y="15"/>
   130                 <connection refLocalId="287" formalParameter="Q1">
   232                 <connection refLocalId="287" formalParameter="Q1">
   131                   <position x="510" y="230"/>
   233                   <position x="290" y="170"/>
   132                   <position x="475" y="230"/>
   234                   <position x="241" y="170"/>
   133                   <position x="475" y="220"/>
       
   134                   <position x="440" y="220"/>
       
   135                 </connection>
   235                 </connection>
   136               </connectionPointIn>
   236               </connectionPointIn>
   137               <expression>power</expression>
   237               <expression>power</expression>
   138             </outVariable>
   238             </outVariable>
   139             <inVariable localId="290" executionOrderId="0" height="25" width="60" negated="false">
   239             <block localId="297" typeName="axis" instanceName="Xaxis" executionOrderId="0" height="160" width="100">
   140               <position x="75" y="55"/>
   240               <position x="300" y="770"/>
   141               <connectionPointOut>
   241               <inputVariables>
   142                 <relPosition x="60" y="10"/>
   242                 <variable formalParameter="Power">
   143               </connectionPointOut>
   243                   <connectionPointIn>
   144               <expression>DrawTest</expression>
   244                     <relPosition x="0" y="45"/>
   145             </inVariable>
   245                     <connection refLocalId="1">
   146             <block localId="292" typeName="ADD" executionOrderId="0" height="65" width="60">
   246                       <position x="300" y="815"/>
   147               <position x="350" y="50"/>
   247                       <position x="265" y="815"/>
   148               <inputVariables>
   248                       <position x="265" y="755"/>
   149                 <variable formalParameter="IN1">
   249                       <position x="255" y="755"/>
   150                   <connectionPointIn>
   250                     </connection>
   151                     <relPosition x="0" y="30"/>
   251                   </connectionPointIn>
   152                     <connection refLocalId="291">
   252                 </variable>
   153                       <position x="350" y="80"/>
   253                 <variable formalParameter="Up">
   154                       <position x="340" y="80"/>
   254                   <connectionPointIn>
   155                       <position x="340" y="25"/>
   255                     <relPosition x="0" y="90"/>
   156                       <position x="530" y="25"/>
   256                     <connection refLocalId="301" formalParameter="OUT">
   157                       <position x="530" y="45"/>
   257                       <position x="300" y="860"/>
   158                       <position x="520" y="45"/>
   258                       <position x="277" y="860"/>
   159                     </connection>
   259                       <position x="277" y="835"/>
   160                   </connectionPointIn>
   260                       <position x="255" y="835"/>
   161                 </variable>
   261                     </connection>
   162                 <variable formalParameter="IN2">
   262                   </connectionPointIn>
   163                   <connectionPointIn>
   263                 </variable>
   164                     <relPosition x="0" y="55"/>
   264                 <variable formalParameter="Down">
   165                     <connection refLocalId="293" formalParameter="OUT">
   265                   <connectionPointIn>
   166                       <position x="350" y="105"/>
   266                     <relPosition x="0" y="135"/>
   167                       <position x="287" y="105"/>
   267                     <connection refLocalId="299">
   168                       <position x="287" y="65"/>
   268                       <position x="300" y="905"/>
   169                       <position x="225" y="65"/>
   269                       <position x="110" y="905"/>
   170                     </connection>
   270                     </connection>
   171                   </connectionPointIn>
   271                   </connectionPointIn>
   172                 </variable>
   272                 </variable>
   173               </inputVariables>
   273               </inputVariables>
   174               <inOutVariables/>
   274               <inOutVariables/>
   175               <outputVariables>
   275               <outputVariables>
   176                 <variable formalParameter="OUT">
   276                 <variable formalParameter="Out">
   177                   <connectionPointOut>
   277                   <connectionPointOut>
   178                     <relPosition x="60" y="30"/>
   278                     <relPosition x="100" y="45"/>
   179                   </connectionPointOut>
   279                   </connectionPointOut>
   180                 </variable>
   280                 </variable>
   181               </outputVariables>
   281               </outputVariables>
   182             </block>
   282             </block>
   183             <inOutVariable localId="291" executionOrderId="0" height="25" width="55" negatedOut="false" negatedIn="false">
   283             <outVariable localId="298" executionOrderId="0" height="35" width="70" negated="false">
   184               <position x="465" y="35"/>
   284               <position x="435" y="800"/>
   185               <connectionPointIn>
   285               <connectionPointIn>
   186                 <relPosition x="0" y="10"/>
   286                 <relPosition x="0" y="15"/>
   187                 <connection refLocalId="292" formalParameter="OUT">
   287                 <connection refLocalId="297" formalParameter="Out">
   188                   <position x="465" y="45"/>
   288                   <position x="435" y="815"/>
   189                   <position x="437" y="45"/>
   289                   <position x="375" y="815"/>
   190                   <position x="437" y="80"/>
   290                   <position x="375" y="815"/>
   191                   <position x="410" y="80"/>
   291                   <position x="400" y="815"/>
   192                 </connection>
   292                 </connection>
   193               </connectionPointIn>
   293               </connectionPointIn>
   194               <connectionPointOut>
   294               <expression>XaxisPos</expression>
   195                 <relPosition x="55" y="10"/>
   295             </outVariable>
   196               </connectionPointOut>
   296             <inVariable localId="1" executionOrderId="0" height="30" width="50" negated="false">
       
   297               <position x="205" y="740"/>
       
   298               <connectionPointOut>
       
   299                 <relPosition x="50" y="15"/>
       
   300               </connectionPointOut>
       
   301               <expression>power</expression>
       
   302             </inVariable>
       
   303             <inVariable localId="299" executionOrderId="0" height="35" width="85" negated="false">
       
   304               <position x="25" y="890"/>
       
   305               <connectionPointOut>
       
   306                 <relPosition x="85" y="15"/>
       
   307               </connectionPointOut>
       
   308               <expression>XAxisMinus</expression>
       
   309             </inVariable>
       
   310             <inVariable localId="300" executionOrderId="0" height="35" width="85" negated="false">
       
   311               <position x="25" y="845"/>
       
   312               <connectionPointOut>
       
   313                 <relPosition x="85" y="15"/>
       
   314               </connectionPointOut>
       
   315               <expression>XAxisPlus</expression>
       
   316             </inVariable>
       
   317             <block localId="301" typeName="OR" executionOrderId="0" height="65" width="70">
       
   318               <position x="185" y="805"/>
       
   319               <inputVariables>
       
   320                 <variable formalParameter="IN1">
       
   321                   <connectionPointIn>
       
   322                     <relPosition x="0" y="30"/>
       
   323                     <connection refLocalId="2">
       
   324                       <position x="185" y="835"/>
       
   325                       <position x="162" y="835"/>
       
   326                       <position x="162" y="805"/>
       
   327                       <position x="140" y="805"/>
       
   328                     </connection>
       
   329                   </connectionPointIn>
       
   330                 </variable>
       
   331                 <variable formalParameter="IN2">
       
   332                   <connectionPointIn>
       
   333                     <relPosition x="0" y="55"/>
       
   334                     <connection refLocalId="300">
       
   335                       <position x="185" y="860"/>
       
   336                       <position x="110" y="860"/>
       
   337                     </connection>
       
   338                   </connectionPointIn>
       
   339                 </variable>
       
   340               </inputVariables>
       
   341               <inOutVariables/>
       
   342               <outputVariables>
       
   343                 <variable formalParameter="OUT">
       
   344                   <connectionPointOut>
       
   345                     <relPosition x="70" y="30"/>
       
   346                   </connectionPointOut>
       
   347                 </variable>
       
   348               </outputVariables>
       
   349             </block>
       
   350             <inVariable localId="2" executionOrderId="0" height="35" width="115" negated="false">
       
   351               <position x="25" y="790"/>
       
   352               <connectionPointOut>
       
   353                 <relPosition x="115" y="15"/>
       
   354               </connectionPointOut>
       
   355               <expression>DrawTestDo.Q1</expression>
       
   356             </inVariable>
       
   357             <inVariable localId="3" executionOrderId="0" height="35" width="115" negated="false">
       
   358               <position x="560" y="785"/>
       
   359               <connectionPointOut>
       
   360                 <relPosition x="115" y="15"/>
       
   361               </connectionPointOut>
       
   362               <expression>DrawTestDo.Q1</expression>
       
   363             </inVariable>
       
   364             <inVariable localId="4" executionOrderId="0" height="30" width="50" negated="false">
       
   365               <position x="735" y="735"/>
       
   366               <connectionPointOut>
       
   367                 <relPosition x="50" y="15"/>
       
   368               </connectionPointOut>
       
   369               <expression>power</expression>
       
   370             </inVariable>
       
   371             <block localId="5" typeName="axis" instanceName="Yaxis" executionOrderId="0" height="160" width="100">
       
   372               <position x="830" y="765"/>
       
   373               <inputVariables>
       
   374                 <variable formalParameter="Power">
       
   375                   <connectionPointIn>
       
   376                     <relPosition x="0" y="45"/>
       
   377                     <connection refLocalId="4">
       
   378                       <position x="830" y="810"/>
       
   379                       <position x="815" y="810"/>
       
   380                       <position x="815" y="750"/>
       
   381                       <position x="785" y="750"/>
       
   382                     </connection>
       
   383                   </connectionPointIn>
       
   384                 </variable>
       
   385                 <variable formalParameter="Up">
       
   386                   <connectionPointIn>
       
   387                     <relPosition x="0" y="90"/>
       
   388                     <connection refLocalId="9" formalParameter="OUT">
       
   389                       <position x="830" y="855"/>
       
   390                       <position x="807" y="855"/>
       
   391                       <position x="807" y="830"/>
       
   392                       <position x="785" y="830"/>
       
   393                     </connection>
       
   394                   </connectionPointIn>
       
   395                 </variable>
       
   396                 <variable formalParameter="Down">
       
   397                   <connectionPointIn>
       
   398                     <relPosition x="0" y="135"/>
       
   399                     <connection refLocalId="7">
       
   400                       <position x="830" y="900"/>
       
   401                       <position x="645" y="900"/>
       
   402                     </connection>
       
   403                   </connectionPointIn>
       
   404                 </variable>
       
   405               </inputVariables>
       
   406               <inOutVariables/>
       
   407               <outputVariables>
       
   408                 <variable formalParameter="Out">
       
   409                   <connectionPointOut>
       
   410                     <relPosition x="100" y="45"/>
       
   411                   </connectionPointOut>
       
   412                 </variable>
       
   413               </outputVariables>
       
   414             </block>
       
   415             <outVariable localId="6" executionOrderId="0" height="35" width="70" negated="false">
       
   416               <position x="955" y="795"/>
       
   417               <connectionPointIn>
       
   418                 <relPosition x="0" y="15"/>
       
   419                 <connection refLocalId="5" formalParameter="Out">
       
   420                   <position x="955" y="810"/>
       
   421                   <position x="930" y="810"/>
       
   422                 </connection>
       
   423               </connectionPointIn>
       
   424               <expression>YaxisPos</expression>
       
   425             </outVariable>
       
   426             <inVariable localId="7" executionOrderId="0" height="35" width="85" negated="false">
       
   427               <position x="560" y="885"/>
       
   428               <connectionPointOut>
       
   429                 <relPosition x="85" y="15"/>
       
   430               </connectionPointOut>
       
   431               <expression>YAxisMinus</expression>
       
   432             </inVariable>
       
   433             <inVariable localId="8" executionOrderId="0" height="35" width="85" negated="false">
       
   434               <position x="560" y="840"/>
       
   435               <connectionPointOut>
       
   436                 <relPosition x="85" y="15"/>
       
   437               </connectionPointOut>
       
   438               <expression>YAxisPlus</expression>
       
   439             </inVariable>
       
   440             <block localId="9" typeName="OR" executionOrderId="0" height="65" width="70">
       
   441               <position x="715" y="800"/>
       
   442               <inputVariables>
       
   443                 <variable formalParameter="IN1">
       
   444                   <connectionPointIn>
       
   445                     <relPosition x="0" y="30"/>
       
   446                     <connection refLocalId="3">
       
   447                       <position x="715" y="830"/>
       
   448                       <position x="657" y="830"/>
       
   449                       <position x="657" y="800"/>
       
   450                       <position x="645" y="800"/>
       
   451                     </connection>
       
   452                   </connectionPointIn>
       
   453                 </variable>
       
   454                 <variable formalParameter="IN2">
       
   455                   <connectionPointIn>
       
   456                     <relPosition x="0" y="55"/>
       
   457                     <connection refLocalId="8">
       
   458                       <position x="715" y="855"/>
       
   459                       <position x="645" y="855"/>
       
   460                     </connection>
       
   461                   </connectionPointIn>
       
   462                 </variable>
       
   463               </inputVariables>
       
   464               <inOutVariables/>
       
   465               <outputVariables>
       
   466                 <variable formalParameter="OUT">
       
   467                   <connectionPointOut>
       
   468                     <relPosition x="70" y="30"/>
       
   469                   </connectionPointOut>
       
   470                 </variable>
       
   471               </outputVariables>
       
   472             </block>
       
   473             <inVariable localId="10" executionOrderId="0" height="35" width="115" negated="false">
       
   474               <position x="25" y="1045"/>
       
   475               <connectionPointOut>
       
   476                 <relPosition x="115" y="15"/>
       
   477               </connectionPointOut>
       
   478               <expression>DrawTestDo.Q1</expression>
       
   479             </inVariable>
       
   480             <inVariable localId="11" executionOrderId="0" height="35" width="115" negated="false">
       
   481               <position x="560" y="1025"/>
       
   482               <connectionPointOut>
       
   483                 <relPosition x="115" y="15"/>
       
   484               </connectionPointOut>
       
   485               <expression>DrawLogoDo.Q1</expression>
       
   486             </inVariable>
       
   487             <inVariable localId="12" executionOrderId="0" height="30" width="50" negated="false">
       
   488               <position x="740" y="975"/>
       
   489               <connectionPointOut>
       
   490                 <relPosition x="50" y="15"/>
       
   491               </connectionPointOut>
       
   492               <expression>power</expression>
       
   493             </inVariable>
       
   494             <block localId="13" typeName="axis" instanceName="Taxis" executionOrderId="0" height="160" width="100">
       
   495               <position x="835" y="1005"/>
       
   496               <inputVariables>
       
   497                 <variable formalParameter="Power">
       
   498                   <connectionPointIn>
       
   499                     <relPosition x="0" y="45"/>
       
   500                     <connection refLocalId="12">
       
   501                       <position x="835" y="1050"/>
       
   502                       <position x="820" y="1050"/>
       
   503                       <position x="820" y="990"/>
       
   504                       <position x="790" y="990"/>
       
   505                     </connection>
       
   506                   </connectionPointIn>
       
   507                 </variable>
       
   508                 <variable formalParameter="Up">
       
   509                   <connectionPointIn>
       
   510                     <relPosition x="0" y="90"/>
       
   511                     <connection refLocalId="22" formalParameter="OUT">
       
   512                       <position x="835" y="1095"/>
       
   513                       <position x="812" y="1095"/>
       
   514                       <position x="812" y="1070"/>
       
   515                       <position x="790" y="1070"/>
       
   516                     </connection>
       
   517                   </connectionPointIn>
       
   518                 </variable>
       
   519                 <variable formalParameter="Down">
       
   520                   <connectionPointIn>
       
   521                     <relPosition x="0" y="135"/>
       
   522                     <connection refLocalId="23">
       
   523                       <position x="835" y="1140"/>
       
   524                       <position x="645" y="1140"/>
       
   525                     </connection>
       
   526                   </connectionPointIn>
       
   527                 </variable>
       
   528               </inputVariables>
       
   529               <inOutVariables/>
       
   530               <outputVariables>
       
   531                 <variable formalParameter="Out">
       
   532                   <connectionPointOut>
       
   533                     <relPosition x="100" y="45"/>
       
   534                   </connectionPointOut>
       
   535                 </variable>
       
   536               </outputVariables>
       
   537             </block>
       
   538             <outVariable localId="14" executionOrderId="0" height="35" width="70" negated="false">
       
   539               <position x="960" y="1035"/>
       
   540               <connectionPointIn>
       
   541                 <relPosition x="0" y="15"/>
       
   542                 <connection refLocalId="13" formalParameter="Out">
       
   543                   <position x="960" y="1050"/>
       
   544                   <position x="935" y="1050"/>
       
   545                 </connection>
       
   546               </connectionPointIn>
       
   547               <expression>TaxisPos</expression>
       
   548             </outVariable>
       
   549             <inVariable localId="15" executionOrderId="0" height="30" width="50" negated="false">
       
   550               <position x="200" y="980"/>
       
   551               <connectionPointOut>
       
   552                 <relPosition x="50" y="15"/>
       
   553               </connectionPointOut>
       
   554               <expression>power</expression>
       
   555             </inVariable>
       
   556             <inVariable localId="16" executionOrderId="0" height="35" width="85" negated="false">
       
   557               <position x="560" y="1080"/>
       
   558               <connectionPointOut>
       
   559                 <relPosition x="85" y="15"/>
       
   560               </connectionPointOut>
       
   561               <expression>TAxisPlus</expression>
       
   562             </inVariable>
       
   563             <block localId="17" typeName="axis" instanceName="Zaxis" executionOrderId="0" height="160" width="100">
       
   564               <position x="300" y="1010"/>
       
   565               <inputVariables>
       
   566                 <variable formalParameter="Power">
       
   567                   <connectionPointIn>
       
   568                     <relPosition x="0" y="45"/>
       
   569                     <connection refLocalId="15">
       
   570                       <position x="300" y="1055"/>
       
   571                       <position x="285" y="1055"/>
       
   572                       <position x="285" y="995"/>
       
   573                       <position x="250" y="995"/>
       
   574                     </connection>
       
   575                   </connectionPointIn>
       
   576                 </variable>
       
   577                 <variable formalParameter="Up">
       
   578                   <connectionPointIn>
       
   579                     <relPosition x="0" y="90"/>
       
   580                     <connection refLocalId="21" formalParameter="OUT">
       
   581                       <position x="300" y="1100"/>
       
   582                       <position x="280" y="1100"/>
       
   583                       <position x="280" y="1055"/>
       
   584                       <position x="270" y="1055"/>
       
   585                     </connection>
       
   586                   </connectionPointIn>
       
   587                 </variable>
       
   588                 <variable formalParameter="Down">
       
   589                   <connectionPointIn>
       
   590                     <relPosition x="0" y="135"/>
       
   591                     <connection refLocalId="19">
       
   592                       <position x="300" y="1145"/>
       
   593                       <position x="110" y="1145"/>
       
   594                     </connection>
       
   595                   </connectionPointIn>
       
   596                 </variable>
       
   597               </inputVariables>
       
   598               <inOutVariables/>
       
   599               <outputVariables>
       
   600                 <variable formalParameter="Out">
       
   601                   <connectionPointOut>
       
   602                     <relPosition x="100" y="45"/>
       
   603                   </connectionPointOut>
       
   604                 </variable>
       
   605               </outputVariables>
       
   606             </block>
       
   607             <outVariable localId="18" executionOrderId="0" height="35" width="70" negated="false">
       
   608               <position x="435" y="1040"/>
       
   609               <connectionPointIn>
       
   610                 <relPosition x="0" y="15"/>
       
   611                 <connection refLocalId="17" formalParameter="Out">
       
   612                   <position x="435" y="1055"/>
       
   613                   <position x="400" y="1055"/>
       
   614                 </connection>
       
   615               </connectionPointIn>
   197               <expression>ZaxisPos</expression>
   616               <expression>ZaxisPos</expression>
   198             </inOutVariable>
   617             </outVariable>
   199             <block localId="293" typeName="SEL" executionOrderId="0" height="85" width="60">
   618             <inVariable localId="19" executionOrderId="0" height="35" width="85" negated="false">
   200               <position x="165" y="35"/>
   619               <position x="25" y="1130"/>
   201               <inputVariables>
   620               <connectionPointOut>
   202                 <variable formalParameter="G">
   621                 <relPosition x="85" y="15"/>
       
   622               </connectionPointOut>
       
   623               <expression>ZAxisMinus</expression>
       
   624             </inVariable>
       
   625             <inVariable localId="20" executionOrderId="0" height="35" width="85" negated="false">
       
   626               <position x="25" y="1090"/>
       
   627               <connectionPointOut>
       
   628                 <relPosition x="85" y="15"/>
       
   629               </connectionPointOut>
       
   630               <expression>ZAxisPlus</expression>
       
   631             </inVariable>
       
   632             <block localId="21" typeName="OR" executionOrderId="0" height="100" width="70">
       
   633               <position x="200" y="1020"/>
       
   634               <inputVariables>
       
   635                 <variable formalParameter="IN1">
       
   636                   <connectionPointIn>
       
   637                     <relPosition x="0" y="35"/>
       
   638                     <connection refLocalId="24">
       
   639                       <position x="200" y="1055"/>
       
   640                       <position x="170" y="1055"/>
       
   641                       <position x="170" y="1015"/>
       
   642                       <position x="140" y="1015"/>
       
   643                     </connection>
       
   644                   </connectionPointIn>
       
   645                 </variable>
       
   646                 <variable formalParameter="IN2">
       
   647                   <connectionPointIn>
       
   648                     <relPosition x="0" y="60"/>
       
   649                     <connection refLocalId="10">
       
   650                       <position x="200" y="1080"/>
       
   651                       <position x="150" y="1080"/>
       
   652                       <position x="150" y="1060"/>
       
   653                       <position x="140" y="1060"/>
       
   654                     </connection>
       
   655                   </connectionPointIn>
       
   656                 </variable>
       
   657                 <variable formalParameter="IN3">
       
   658                   <connectionPointIn>
       
   659                     <relPosition x="0" y="85"/>
       
   660                     <connection refLocalId="20">
       
   661                       <position x="200" y="1105"/>
       
   662                       <position x="110" y="1105"/>
       
   663                     </connection>
       
   664                   </connectionPointIn>
       
   665                 </variable>
       
   666               </inputVariables>
       
   667               <inOutVariables/>
       
   668               <outputVariables>
       
   669                 <variable formalParameter="OUT">
       
   670                   <connectionPointOut>
       
   671                     <relPosition x="70" y="35"/>
       
   672                   </connectionPointOut>
       
   673                 </variable>
       
   674               </outputVariables>
       
   675             </block>
       
   676             <block localId="22" typeName="OR" executionOrderId="0" height="65" width="70">
       
   677               <position x="720" y="1040"/>
       
   678               <inputVariables>
       
   679                 <variable formalParameter="IN1">
   203                   <connectionPointIn>
   680                   <connectionPointIn>
   204                     <relPosition x="0" y="30"/>
   681                     <relPosition x="0" y="30"/>
   205                     <connection refLocalId="290">
   682                     <connection refLocalId="11">
   206                       <position x="165" y="65"/>
   683                       <position x="720" y="1070"/>
   207                       <position x="135" y="65"/>
   684                       <position x="657" y="1070"/>
   208                     </connection>
   685                       <position x="657" y="1040"/>
   209                   </connectionPointIn>
   686                       <position x="645" y="1040"/>
   210                 </variable>
   687                     </connection>
   211                 <variable formalParameter="IN0">
   688                   </connectionPointIn>
   212                   <connectionPointIn>
   689                 </variable>
   213                     <relPosition x="0" y="50"/>
   690                 <variable formalParameter="IN2">
   214                     <connection refLocalId="295">
   691                   <connectionPointIn>
   215                       <position x="165" y="85"/>
   692                     <relPosition x="0" y="55"/>
   216                       <position x="135" y="85"/>
   693                     <connection refLocalId="16">
   217                       <position x="135" y="90"/>
   694                       <position x="720" y="1095"/>
   218                       <position x="105" y="90"/>
   695                       <position x="645" y="1095"/>
   219                     </connection>
   696                     </connection>
   220                   </connectionPointIn>
   697                   </connectionPointIn>
   221                 </variable>
   698                 </variable>
       
   699               </inputVariables>
       
   700               <inOutVariables/>
       
   701               <outputVariables>
       
   702                 <variable formalParameter="OUT">
       
   703                   <connectionPointOut>
       
   704                     <relPosition x="70" y="30"/>
       
   705                   </connectionPointOut>
       
   706                 </variable>
       
   707               </outputVariables>
       
   708             </block>
       
   709             <inVariable localId="23" executionOrderId="0" height="35" width="85" negated="false">
       
   710               <position x="560" y="1125"/>
       
   711               <connectionPointOut>
       
   712                 <relPosition x="85" y="15"/>
       
   713               </connectionPointOut>
       
   714               <expression>TAxisMinus</expression>
       
   715             </inVariable>
       
   716             <inVariable localId="24" executionOrderId="0" height="35" width="115" negated="false">
       
   717               <position x="25" y="1000"/>
       
   718               <connectionPointOut>
       
   719                 <relPosition x="115" y="15"/>
       
   720               </connectionPointOut>
       
   721               <expression>DrawLogoDo.Q1</expression>
       
   722             </inVariable>
       
   723             <inVariable localId="25" executionOrderId="0" height="30" width="85" negated="false">
       
   724               <position x="40" y="450"/>
       
   725               <connectionPointOut>
       
   726                 <relPosition x="85" y="15"/>
       
   727               </connectionPointOut>
       
   728               <expression>DrawTest</expression>
       
   729             </inVariable>
       
   730             <block localId="26" typeName="RS" instanceName="DrawTestDo" executionOrderId="0" height="115" width="55">
       
   731               <position x="280" y="445"/>
       
   732               <inputVariables>
       
   733                 <variable formalParameter="S">
       
   734                   <connectionPointIn>
       
   735                     <relPosition x="0" y="45"/>
       
   736                     <connection refLocalId="28" formalParameter="OUT">
       
   737                       <position x="280" y="490"/>
       
   738                       <position x="255" y="490"/>
       
   739                       <position x="255" y="465"/>
       
   740                       <position x="230" y="465"/>
       
   741                     </connection>
       
   742                   </connectionPointIn>
       
   743                 </variable>
       
   744                 <variable formalParameter="R1">
       
   745                   <connectionPointIn>
       
   746                     <relPosition x="0" y="90"/>
       
   747                     <connection refLocalId="33" formalParameter="OUT">
       
   748                       <position x="280" y="535"/>
       
   749                       <position x="255" y="535"/>
       
   750                       <position x="255" y="560"/>
       
   751                       <position x="230" y="560"/>
       
   752                     </connection>
       
   753                   </connectionPointIn>
       
   754                 </variable>
       
   755               </inputVariables>
       
   756               <inOutVariables/>
       
   757               <outputVariables>
       
   758                 <variable formalParameter="Q1">
       
   759                   <connectionPointOut>
       
   760                     <relPosition x="55" y="45"/>
       
   761                   </connectionPointOut>
       
   762                 </variable>
       
   763               </outputVariables>
       
   764             </block>
       
   765             <inVariable localId="27" executionOrderId="0" height="30" width="85" negated="false">
       
   766               <position x="40" y="545"/>
       
   767               <connectionPointOut>
       
   768                 <relPosition x="85" y="15"/>
       
   769               </connectionPointOut>
       
   770               <expression>Power_OFF</expression>
       
   771             </inVariable>
       
   772             <block localId="28" typeName="OR" executionOrderId="0" height="85" width="70">
       
   773               <position x="160" y="430"/>
       
   774               <inputVariables>
   222                 <variable formalParameter="IN1">
   775                 <variable formalParameter="IN1">
   223                   <connectionPointIn>
   776                   <connectionPointIn>
       
   777                     <relPosition x="0" y="35"/>
       
   778                     <connection refLocalId="25">
       
   779                       <position x="160" y="465"/>
       
   780                       <position x="125" y="465"/>
       
   781                     </connection>
       
   782                   </connectionPointIn>
       
   783                 </variable>
       
   784                 <variable formalParameter="IN2">
       
   785                   <connectionPointIn>
   224                     <relPosition x="0" y="70"/>
   786                     <relPosition x="0" y="70"/>
   225                     <connection refLocalId="294">
   787                     <connection refLocalId="29">
   226                       <position x="165" y="105"/>
   788                       <position x="160" y="500"/>
   227                       <position x="135" y="105"/>
   789                       <position x="135" y="500"/>
   228                       <position x="135" y="115"/>
       
   229                       <position x="105" y="115"/>
       
   230                     </connection>
   790                     </connection>
   231                   </connectionPointIn>
   791                   </connectionPointIn>
   232                 </variable>
   792                 </variable>
   233               </inputVariables>
   793               </inputVariables>
   234               <inOutVariables/>
   794               <inOutVariables/>
   235               <outputVariables>
   795               <outputVariables>
   236                 <variable formalParameter="OUT">
   796                 <variable formalParameter="OUT">
   237                   <connectionPointOut>
   797                   <connectionPointOut>
   238                     <relPosition x="60" y="30"/>
   798                     <relPosition x="70" y="35"/>
   239                   </connectionPointOut>
   799                   </connectionPointOut>
   240                 </variable>
   800                 </variable>
   241               </outputVariables>
   801               </outputVariables>
   242             </block>
   802             </block>
   243             <inVariable localId="294" executionOrderId="0" height="25" width="20" negated="false">
   803             <inVariable localId="29" executionOrderId="0" height="30" width="95" negated="false">
   244               <position x="85" y="105"/>
   804               <position x="40" y="485"/>
   245               <connectionPointOut>
   805               <connectionPointOut>
   246                 <relPosition x="20" y="10"/>
   806                 <relPosition x="95" y="15"/>
   247               </connectionPointOut>
   807               </connectionPointOut>
   248               <expression>1</expression>
   808               <expression>DrawTestBtn</expression>
   249             </inVariable>
   809             </inVariable>
   250             <inVariable localId="295" executionOrderId="0" height="25" width="20" negated="false">
   810             <block localId="33" typeName="OR" executionOrderId="0" height="85" width="70">
   251               <position x="85" y="80"/>
   811               <position x="160" y="525"/>
   252               <connectionPointOut>
   812               <inputVariables>
   253                 <relPosition x="20" y="10"/>
   813                 <variable formalParameter="IN1">
   254               </connectionPointOut>
   814                   <connectionPointIn>
   255               <expression>0</expression>
   815                     <relPosition x="0" y="35"/>
   256             </inVariable>
   816                     <connection refLocalId="27">
       
   817                       <position x="160" y="560"/>
       
   818                       <position x="125" y="560"/>
       
   819                     </connection>
       
   820                   </connectionPointIn>
       
   821                 </variable>
       
   822                 <variable formalParameter="IN2">
       
   823                   <connectionPointIn>
       
   824                     <relPosition x="0" y="70"/>
       
   825                     <connection refLocalId="35">
       
   826                       <position x="160" y="595"/>
       
   827                       <position x="125" y="595"/>
       
   828                     </connection>
       
   829                   </connectionPointIn>
       
   830                 </variable>
       
   831               </inputVariables>
       
   832               <inOutVariables/>
       
   833               <outputVariables>
       
   834                 <variable formalParameter="OUT">
       
   835                   <connectionPointOut>
       
   836                     <relPosition x="70" y="35"/>
       
   837                   </connectionPointOut>
       
   838                 </variable>
       
   839               </outputVariables>
       
   840             </block>
       
   841             <inVariable localId="35" executionOrderId="0" height="30" width="85" negated="false">
       
   842               <position x="40" y="580"/>
       
   843               <connectionPointOut>
       
   844                 <relPosition x="85" y="15"/>
       
   845               </connectionPointOut>
       
   846               <expression>DrawLogo</expression>
       
   847             </inVariable>
       
   848             <comment localId="36" height="45" width="215">
       
   849               <position x="20" y="670"/>
       
   850               <content>
       
   851                 <xhtml:p><![CDATA[Control virtual axes.]]></xhtml:p>
       
   852               </content>
       
   853             </comment>
       
   854             <inVariable localId="30" executionOrderId="0" height="30" width="85" negated="false">
       
   855               <position x="510" y="475"/>
       
   856               <connectionPointOut>
       
   857                 <relPosition x="85" y="15"/>
       
   858               </connectionPointOut>
       
   859               <expression>DrawLogo</expression>
       
   860             </inVariable>
       
   861             <block localId="31" typeName="RS" instanceName="DrawLogoDo" executionOrderId="0" height="115" width="55">
       
   862               <position x="740" y="445"/>
       
   863               <inputVariables>
       
   864                 <variable formalParameter="S">
       
   865                   <connectionPointIn>
       
   866                     <relPosition x="0" y="45"/>
       
   867                     <connection refLocalId="30">
       
   868                       <position x="740" y="490"/>
       
   869                       <position x="595" y="490"/>
       
   870                     </connection>
       
   871                   </connectionPointIn>
       
   872                 </variable>
       
   873                 <variable formalParameter="R1">
       
   874                   <connectionPointIn>
       
   875                     <relPosition x="0" y="90"/>
       
   876                     <connection refLocalId="39" formalParameter="OUT">
       
   877                       <position x="740" y="535"/>
       
   878                       <position x="715" y="535"/>
       
   879                       <position x="715" y="560"/>
       
   880                       <position x="690" y="560"/>
       
   881                     </connection>
       
   882                   </connectionPointIn>
       
   883                 </variable>
       
   884               </inputVariables>
       
   885               <inOutVariables/>
       
   886               <outputVariables>
       
   887                 <variable formalParameter="Q1">
       
   888                   <connectionPointOut>
       
   889                     <relPosition x="55" y="45"/>
       
   890                   </connectionPointOut>
       
   891                 </variable>
       
   892               </outputVariables>
       
   893             </block>
       
   894             <inVariable localId="32" executionOrderId="0" height="30" width="85" negated="false">
       
   895               <position x="500" y="545"/>
       
   896               <connectionPointOut>
       
   897                 <relPosition x="85" y="15"/>
       
   898               </connectionPointOut>
       
   899               <expression>Power_OFF</expression>
       
   900             </inVariable>
       
   901             <inVariable localId="38" executionOrderId="0" height="30" width="85" negated="false">
       
   902               <position x="500" y="580"/>
       
   903               <connectionPointOut>
       
   904                 <relPosition x="85" y="15"/>
       
   905               </connectionPointOut>
       
   906               <expression>DrawTest</expression>
       
   907             </inVariable>
       
   908             <block localId="39" typeName="OR" executionOrderId="0" height="85" width="70">
       
   909               <position x="620" y="525"/>
       
   910               <inputVariables>
       
   911                 <variable formalParameter="IN1">
       
   912                   <connectionPointIn>
       
   913                     <relPosition x="0" y="35"/>
       
   914                     <connection refLocalId="32">
       
   915                       <position x="620" y="560"/>
       
   916                       <position x="585" y="560"/>
       
   917                     </connection>
       
   918                   </connectionPointIn>
       
   919                 </variable>
       
   920                 <variable formalParameter="IN2">
       
   921                   <connectionPointIn>
       
   922                     <relPosition x="0" y="70"/>
       
   923                     <connection refLocalId="38">
       
   924                       <position x="620" y="595"/>
       
   925                       <position x="585" y="595"/>
       
   926                     </connection>
       
   927                   </connectionPointIn>
       
   928                 </variable>
       
   929               </inputVariables>
       
   930               <inOutVariables/>
       
   931               <outputVariables>
       
   932                 <variable formalParameter="OUT">
       
   933                   <connectionPointOut>
       
   934                     <relPosition x="70" y="35"/>
       
   935                   </connectionPointOut>
       
   936                 </variable>
       
   937               </outputVariables>
       
   938             </block>
       
   939             <comment localId="34" height="45" width="365">
       
   940               <position x="15" y="55"/>
       
   941               <content>
       
   942                 <xhtml:p><![CDATA[Turn on/off power, Power on enables axes control.]]></xhtml:p>
       
   943               </content>
       
   944             </comment>
       
   945             <comment localId="37" height="45" width="550">
       
   946               <position x="35" y="360"/>
       
   947               <content>
       
   948                 <xhtml:p><![CDATA[Only one mode can be selected at any time ("Draw Logo" or "Draw Test").]]></xhtml:p>
       
   949               </content>
       
   950             </comment>
   257           </FBD>
   951           </FBD>
   258         </body>
   952         </body>
   259         <documentation>
   953         <documentation>
   260           <xhtml:p><![CDATA[]]></xhtml:p>
   954           <xhtml:p><![CDATA[]]></xhtml:p>
   261         </documentation>
   955         </documentation>
   262       </pou>
   956       </pou>
   263       <pou name="ReadGUIdata" pouType="program">
   957       <pou name="ReadGUIdata" pouType="program">
   264         <interface>
   958         <interface>
   265           <localVars>
   959           <localVars>
   266             <variable name="tmp">
       
   267               <type>
       
   268                 <INT/>
       
   269               </type>
       
   270             </variable>
       
   271           </localVars>
       
   272           <externalVars>
       
   273             <variable name="power">
       
   274               <type>
       
   275                 <BOOL/>
       
   276               </type>
       
   277             </variable>
       
   278             <variable name="XaxisPos">
       
   279               <type>
       
   280                 <INT/>
       
   281               </type>
       
   282             </variable>
       
   283             <variable name="YaxisPos">
       
   284               <type>
       
   285                 <INT/>
       
   286               </type>
       
   287             </variable>
       
   288             <variable name="ZaxisPos">
       
   289               <type>
       
   290                 <INT/>
       
   291               </type>
       
   292             </variable>
       
   293             <variable name="TaxisPos">
       
   294               <type>
       
   295                 <INT/>
       
   296               </type>
       
   297             </variable>
       
   298           </externalVars>
       
   299           <localVars>
       
   300             <variable name="python_poll0">
   960             <variable name="python_poll0">
   301               <type>
   961               <type>
   302                 <derived name="python_poll"/>
   962                 <derived name="python_poll"/>
   303               </type>
   963               </type>
   304             </variable>
   964             </variable>
   305           </localVars>
   965           </localVars>
   306         </interface>
   966         </interface>
   307         <body>
   967         <body>
   308           <FBD>
   968           <FBD>
   309             <outVariable localId="211" executionOrderId="0" height="25" width="60" negated="false">
   969             <block localId="220" typeName="python_poll" instanceName="python_poll0" executionOrderId="0" height="85" width="104">
   310               <position x="565" y="195"/>
   970               <position x="295" y="130"/>
   311               <connectionPointIn>
   971               <inputVariables>
   312                 <relPosition x="0" y="10"/>
   972                 <variable formalParameter="TRIG">
   313                 <connection refLocalId="215">
   973                   <connectionPointIn>
   314                   <position x="565" y="205"/>
   974                     <relPosition x="0" y="35"/>
   315                   <position x="370" y="205"/>
   975                     <connection refLocalId="221">
   316                   <position x="370" y="195"/>
   976                       <position x="295" y="165"/>
   317                   <position x="330" y="195"/>
   977                       <position x="268" y="165"/>
   318                 </connection>
   978                     </connection>
   319               </connectionPointIn>
   979                   </connectionPointIn>
   320               <expression>XaxisPos</expression>
   980                 </variable>
   321             </outVariable>
   981                 <variable formalParameter="CODE">
   322             <block localId="213" typeName="ADD" executionOrderId="0" height="65" width="60">
       
   323               <position x="220" y="295"/>
       
   324               <inputVariables>
       
   325                 <variable formalParameter="IN1">
       
   326                   <connectionPointIn>
       
   327                     <relPosition x="0" y="30"/>
       
   328                     <connection refLocalId="212">
       
   329                       <position x="220" y="325"/>
       
   330                       <position x="210" y="325"/>
       
   331                       <position x="210" y="270"/>
       
   332                       <position x="380" y="270"/>
       
   333                       <position x="380" y="325"/>
       
   334                       <position x="365" y="325"/>
       
   335                     </connection>
       
   336                   </connectionPointIn>
       
   337                 </variable>
       
   338                 <variable formalParameter="IN2">
       
   339                   <connectionPointIn>
       
   340                     <relPosition x="0" y="55"/>
       
   341                     <connection refLocalId="217" formalParameter="OUT">
       
   342                       <position x="220" y="350"/>
       
   343                       <position x="180" y="350"/>
       
   344                     </connection>
       
   345                   </connectionPointIn>
       
   346                 </variable>
       
   347               </inputVariables>
       
   348               <inOutVariables/>
       
   349               <outputVariables>
       
   350                 <variable formalParameter="OUT">
       
   351                   <connectionPointOut>
       
   352                     <relPosition x="60" y="30"/>
       
   353                   </connectionPointOut>
       
   354                 </variable>
       
   355               </outputVariables>
       
   356             </block>
       
   357             <inOutVariable localId="212" executionOrderId="0" height="25" width="30" negatedOut="false" negatedIn="false">
       
   358               <position x="335" y="315"/>
       
   359               <connectionPointIn>
       
   360                 <relPosition x="0" y="10"/>
       
   361                 <connection refLocalId="213" formalParameter="OUT">
       
   362                   <position x="335" y="325"/>
       
   363                   <position x="280" y="325"/>
       
   364                 </connection>
       
   365               </connectionPointIn>
       
   366               <connectionPointOut>
       
   367                 <relPosition x="30" y="10"/>
       
   368               </connectionPointOut>
       
   369               <expression>tmp</expression>
       
   370             </inOutVariable>
       
   371             <inVariable localId="214" executionOrderId="0" height="25" width="20" negated="false">
       
   372               <position x="65" y="385"/>
       
   373               <connectionPointOut>
       
   374                 <relPosition x="20" y="10"/>
       
   375               </connectionPointOut>
       
   376               <expression>1</expression>
       
   377             </inVariable>
       
   378             <inVariable localId="215" executionOrderId="0" height="25" width="30" negated="false">
       
   379               <position x="300" y="185"/>
       
   380               <connectionPointOut>
       
   381                 <relPosition x="30" y="10"/>
       
   382               </connectionPointOut>
       
   383               <expression>tmp</expression>
       
   384             </inVariable>
       
   385             <outVariable localId="216" executionOrderId="0" height="25" width="60" negated="false">
       
   386               <position x="540" y="310"/>
       
   387               <connectionPointIn>
       
   388                 <relPosition x="0" y="10"/>
       
   389                 <connection refLocalId="215">
       
   390                   <position x="540" y="320"/>
       
   391                   <position x="435" y="320"/>
       
   392                   <position x="435" y="195"/>
       
   393                   <position x="330" y="195"/>
       
   394                 </connection>
       
   395               </connectionPointIn>
       
   396               <expression>YaxisPos</expression>
       
   397             </outVariable>
       
   398             <block localId="217" typeName="SEL" executionOrderId="0" height="85" width="60">
       
   399               <position x="120" y="320"/>
       
   400               <inputVariables>
       
   401                 <variable formalParameter="G">
       
   402                   <connectionPointIn>
       
   403                     <relPosition x="0" y="30"/>
       
   404                     <connection refLocalId="219">
       
   405                       <position x="120" y="350"/>
       
   406                       <position x="97" y="350"/>
       
   407                       <position x="97" y="345"/>
       
   408                       <position x="85" y="345"/>
       
   409                     </connection>
       
   410                   </connectionPointIn>
       
   411                 </variable>
       
   412                 <variable formalParameter="IN0">
       
   413                   <connectionPointIn>
       
   414                     <relPosition x="0" y="50"/>
       
   415                     <connection refLocalId="218">
       
   416                       <position x="120" y="370"/>
       
   417                       <position x="85" y="370"/>
       
   418                     </connection>
       
   419                   </connectionPointIn>
       
   420                 </variable>
       
   421                 <variable formalParameter="IN1">
       
   422                   <connectionPointIn>
   982                   <connectionPointIn>
   423                     <relPosition x="0" y="70"/>
   983                     <relPosition x="0" y="70"/>
   424                     <connection refLocalId="214">
       
   425                       <position x="120" y="390"/>
       
   426                       <position x="102" y="390"/>
       
   427                       <position x="102" y="395"/>
       
   428                       <position x="85" y="395"/>
       
   429                     </connection>
       
   430                   </connectionPointIn>
       
   431                 </variable>
       
   432               </inputVariables>
       
   433               <inOutVariables/>
       
   434               <outputVariables>
       
   435                 <variable formalParameter="OUT">
       
   436                   <connectionPointOut>
       
   437                     <relPosition x="60" y="30"/>
       
   438                   </connectionPointOut>
       
   439                 </variable>
       
   440               </outputVariables>
       
   441             </block>
       
   442             <inVariable localId="218" executionOrderId="0" height="25" width="20" negated="false">
       
   443               <position x="65" y="360"/>
       
   444               <connectionPointOut>
       
   445                 <relPosition x="20" y="10"/>
       
   446               </connectionPointOut>
       
   447               <expression>0</expression>
       
   448             </inVariable>
       
   449             <inVariable localId="219" executionOrderId="0" height="25" width="45" negated="false">
       
   450               <position x="40" y="335"/>
       
   451               <connectionPointOut>
       
   452                 <relPosition x="45" y="10"/>
       
   453               </connectionPointOut>
       
   454               <expression>power</expression>
       
   455             </inVariable>
       
   456             <block localId="220" typeName="python_poll" instanceName="python_poll0" executionOrderId="0" height="65" width="85">
       
   457               <position x="640" y="370"/>
       
   458               <inputVariables>
       
   459                 <variable formalParameter="TRIG">
       
   460                   <connectionPointIn>
       
   461                     <relPosition x="0" y="30"/>
       
   462                     <connection refLocalId="221">
       
   463                       <position x="640" y="400"/>
       
   464                       <position x="595" y="400"/>
       
   465                     </connection>
       
   466                   </connectionPointIn>
       
   467                 </variable>
       
   468                 <variable formalParameter="CODE">
       
   469                   <connectionPointIn>
       
   470                     <relPosition x="0" y="55"/>
       
   471                     <connection refLocalId="222">
   984                     <connection refLocalId="222">
   472                       <position x="640" y="425"/>
   985                       <position x="295" y="200"/>
   473                       <position x="590" y="425"/>
   986                       <position x="271" y="200"/>
   474                     </connection>
   987                     </connection>
   475                   </connectionPointIn>
   988                   </connectionPointIn>
   476                 </variable>
   989                 </variable>
   477               </inputVariables>
   990               </inputVariables>
   478               <inOutVariables/>
   991               <inOutVariables/>
   479               <outputVariables>
   992               <outputVariables>
   480                 <variable formalParameter="ACK">
   993                 <variable formalParameter="ACK">
   481                   <connectionPointOut>
   994                   <connectionPointOut>
   482                     <relPosition x="85" y="30"/>
   995                     <relPosition x="104" y="35"/>
   483                   </connectionPointOut>
   996                   </connectionPointOut>
   484                 </variable>
   997                 </variable>
   485                 <variable formalParameter="RESULT">
   998                 <variable formalParameter="RESULT">
   486                   <connectionPointOut>
   999                   <connectionPointOut>
   487                     <relPosition x="85" y="55"/>
  1000                     <relPosition x="104" y="70"/>
   488                   </connectionPointOut>
  1001                   </connectionPointOut>
   489                 </variable>
  1002                 </variable>
   490               </outputVariables>
  1003               </outputVariables>
   491             </block>
  1004             </block>
   492             <inVariable localId="221" executionOrderId="0" height="25" width="75" negated="false">
  1005             <inVariable localId="221" executionOrderId="0" height="30" width="93" negated="false">
   493               <position x="520" y="390"/>
  1006               <position x="175" y="150"/>
   494               <connectionPointOut>
  1007               <connectionPointOut>
   495                 <relPosition x="75" y="10"/>
  1008                 <relPosition x="93" y="15"/>
   496               </connectionPointOut>
  1009               </connectionPointOut>
   497               <expression>BOOL#TRUE</expression>
  1010               <expression>BOOL#TRUE</expression>
   498             </inVariable>
  1011             </inVariable>
   499             <inVariable localId="222" executionOrderId="0" height="25" width="135" negated="false">
  1012             <inVariable localId="222" executionOrderId="0" height="30" width="161" negated="false">
   500               <position x="455" y="415"/>
  1013               <position x="110" y="185"/>
   501               <connectionPointOut>
  1014               <connectionPointOut>
   502                 <relPosition x="135" y="10"/>
  1015                 <relPosition x="161" y="15"/>
   503               </connectionPointOut>
  1016               </connectionPointOut>
   504               <expression>'wxglade_hmi.UpdPos()'</expression>
  1017               <expression>'wxglade_hmi.UpdPos()'</expression>
   505             </inVariable>
  1018             </inVariable>
       
  1019             <comment localId="296" height="55" width="445">
       
  1020               <position x="35" y="25"/>
       
  1021               <content>
       
  1022                 <xhtml:p><![CDATA[This is slow PLC task. It just updates state of axes on HMI.]]></xhtml:p>
       
  1023               </content>
       
  1024             </comment>
   506           </FBD>
  1025           </FBD>
   507         </body>
  1026         </body>
   508         <documentation>
  1027         <documentation>
   509           <xhtml:p><![CDATA[]]></xhtml:p>
  1028           <xhtml:p><![CDATA[]]></xhtml:p>
   510         </documentation>
  1029         </documentation>
   511       </pou>
  1030       </pou>
   512       <pou name="Declarations" pouType="program">
  1031       <pou name="Declarations" pouType="program">
   513         <interface>
  1032         <interface>
   514           <localVars>
  1033           <localVars>
   515             <variable name="LocalVar0">
  1034             <variable name="InitValue">
   516               <type>
  1035               <type>
   517                 <DINT/>
  1036                 <DINT/>
   518               </type>
  1037               </type>
   519             </variable>
  1038               <initialValue>
   520             <variable name="LocalVar1">
  1039                 <simpleValue value="17"/>
       
  1040               </initialValue>
       
  1041             </variable>
       
  1042             <variable name="NotInitializedVariable">
       
  1043               <type>
       
  1044                 <DINT/>
       
  1045               </type>
       
  1046             </variable>
       
  1047             <variable name="counter">
   521               <type>
  1048               <type>
   522                 <DINT/>
  1049                 <DINT/>
   523               </type>
  1050               </type>
   524             </variable>
  1051             </variable>
   525           </localVars>
  1052           </localVars>
   526         </interface>
  1053         </interface>
   527         <body>
  1054         <body>
   528           <FBD>
  1055           <FBD>
   529             <inVariable localId="127" executionOrderId="0" height="25" width="60" negated="false">
  1056             <inVariable localId="127" executionOrderId="0" height="30" width="72" negated="false">
   530               <position x="235" y="205"/>
  1057               <position x="60" y="180"/>
   531               <connectionPointOut>
  1058               <connectionPointOut>
   532                 <relPosition x="60" y="10"/>
  1059                 <relPosition x="72" y="15"/>
   533               </connectionPointOut>
  1060               </connectionPointOut>
   534               <expression>LocalVar0</expression>
  1061               <expression>InitValue</expression>
   535             </inVariable>
  1062             </inVariable>
   536             <outVariable localId="128" executionOrderId="0" height="25" width="60" negated="false">
  1063             <outVariable localId="128" executionOrderId="0" height="30" width="145" negated="false">
   537               <position x="450" y="190"/>
  1064               <position x="180" y="180"/>
   538               <connectionPointIn>
  1065               <connectionPointIn>
   539                 <relPosition x="0" y="10"/>
  1066                 <relPosition x="0" y="15"/>
   540                 <connection refLocalId="127">
  1067                 <connection refLocalId="127">
   541                   <position x="450" y="200"/>
  1068                   <position x="180" y="195"/>
   542                   <position x="372" y="200"/>
  1069                   <position x="132" y="195"/>
   543                   <position x="372" y="215"/>
       
   544                   <position x="295" y="215"/>
       
   545                 </connection>
  1070                 </connection>
   546               </connectionPointIn>
  1071               </connectionPointIn>
   547               <expression>LocalVar1</expression>
  1072               <expression>NotInitializedVariable</expression>
   548             </outVariable>
  1073             </outVariable>
       
  1074             <comment localId="129" height="90" width="360">
       
  1075               <position x="65" y="40"/>
       
  1076               <content>
       
  1077                 <xhtml:p><![CDATA[This program called only once at start.
       
  1078 See task configuration in config.resource1.]]></xhtml:p>
       
  1079               </content>
       
  1080             </comment>
       
  1081             <block localId="131" typeName="ADD" executionOrderId="0" height="95" width="70">
       
  1082               <position x="135" y="340"/>
       
  1083               <inputVariables>
       
  1084                 <variable formalParameter="IN1">
       
  1085                   <connectionPointIn>
       
  1086                     <relPosition x="0" y="40"/>
       
  1087                     <connection refLocalId="130">
       
  1088                       <position x="135" y="380"/>
       
  1089                       <position x="125" y="380"/>
       
  1090                       <position x="125" y="325"/>
       
  1091                       <position x="350" y="325"/>
       
  1092                       <position x="350" y="380"/>
       
  1093                       <position x="335" y="380"/>
       
  1094                     </connection>
       
  1095                   </connectionPointIn>
       
  1096                 </variable>
       
  1097                 <variable formalParameter="IN2">
       
  1098                   <connectionPointIn>
       
  1099                     <relPosition x="0" y="75"/>
       
  1100                     <connection refLocalId="1">
       
  1101                       <position x="135" y="415"/>
       
  1102                       <position x="130" y="415"/>
       
  1103                       <position x="130" y="415"/>
       
  1104                       <position x="120" y="415"/>
       
  1105                     </connection>
       
  1106                   </connectionPointIn>
       
  1107                 </variable>
       
  1108               </inputVariables>
       
  1109               <inOutVariables/>
       
  1110               <outputVariables>
       
  1111                 <variable formalParameter="OUT">
       
  1112                   <connectionPointOut>
       
  1113                     <relPosition x="70" y="40"/>
       
  1114                   </connectionPointOut>
       
  1115                 </variable>
       
  1116               </outputVariables>
       
  1117             </block>
       
  1118             <inVariable localId="1" executionOrderId="0" height="35" width="60" negated="false">
       
  1119               <position x="60" y="400"/>
       
  1120               <connectionPointOut>
       
  1121                 <relPosition x="60" y="15"/>
       
  1122               </connectionPointOut>
       
  1123               <expression>1</expression>
       
  1124             </inVariable>
       
  1125             <inOutVariable localId="130" executionOrderId="0" height="35" width="60" negatedOut="false" negatedIn="false">
       
  1126               <position x="275" y="365"/>
       
  1127               <connectionPointIn>
       
  1128                 <relPosition x="0" y="15"/>
       
  1129                 <connection refLocalId="131" formalParameter="OUT">
       
  1130                   <position x="275" y="380"/>
       
  1131                   <position x="205" y="380"/>
       
  1132                 </connection>
       
  1133               </connectionPointIn>
       
  1134               <connectionPointOut>
       
  1135                 <relPosition x="60" y="15"/>
       
  1136               </connectionPointOut>
       
  1137               <expression>counter</expression>
       
  1138             </inOutVariable>
       
  1139             <comment localId="2" height="75" width="355">
       
  1140               <position x="70" y="240"/>
       
  1141               <content>
       
  1142                 <xhtml:p><![CDATA[Counts how many times the program is called.
       
  1143 Check counter value in debugger.]]></xhtml:p>
       
  1144               </content>
       
  1145             </comment>
   549           </FBD>
  1146           </FBD>
   550         </body>
  1147         </body>
   551         <documentation>
  1148         <documentation>
   552           <xhtml:p><![CDATA[]]></xhtml:p>
  1149           <xhtml:p><![CDATA[]]></xhtml:p>
   553         </documentation>
  1150         </documentation>
       
  1151       </pou>
       
  1152       <pou name="clock" pouType="functionBlock">
       
  1153         <interface>
       
  1154           <localVars>
       
  1155             <variable name="TimerOn">
       
  1156               <type>
       
  1157                 <derived name="TON"/>
       
  1158               </type>
       
  1159             </variable>
       
  1160           </localVars>
       
  1161           <outputVars>
       
  1162             <variable name="Out">
       
  1163               <type>
       
  1164                 <BOOL/>
       
  1165               </type>
       
  1166             </variable>
       
  1167           </outputVars>
       
  1168           <inputVars>
       
  1169             <variable name="Period">
       
  1170               <type>
       
  1171                 <TIME/>
       
  1172               </type>
       
  1173               <initialValue>
       
  1174                 <simpleValue value="T#3s"/>
       
  1175               </initialValue>
       
  1176             </variable>
       
  1177           </inputVars>
       
  1178           <localVars>
       
  1179             <variable name="TimerOff">
       
  1180               <type>
       
  1181                 <derived name="TON"/>
       
  1182               </type>
       
  1183             </variable>
       
  1184           </localVars>
       
  1185         </interface>
       
  1186         <body>
       
  1187           <FBD>
       
  1188             <block localId="14" typeName="TON" instanceName="TimerOn" executionOrderId="0" height="100" width="50">
       
  1189               <position x="260" y="70"/>
       
  1190               <inputVariables>
       
  1191                 <variable formalParameter="IN">
       
  1192                   <connectionPointIn>
       
  1193                     <relPosition x="0" y="40"/>
       
  1194                     <connection refLocalId="2" formalParameter="Q">
       
  1195                       <position x="260" y="110"/>
       
  1196                       <position x="245" y="110"/>
       
  1197                       <position x="245" y="10"/>
       
  1198                       <position x="520" y="10"/>
       
  1199                       <position x="520" y="110"/>
       
  1200                       <position x="510" y="110"/>
       
  1201                     </connection>
       
  1202                   </connectionPointIn>
       
  1203                 </variable>
       
  1204                 <variable formalParameter="PT">
       
  1205                   <connectionPointIn>
       
  1206                     <relPosition x="0" y="80"/>
       
  1207                     <connection refLocalId="16" formalParameter="OUT">
       
  1208                       <position x="260" y="150"/>
       
  1209                       <position x="225" y="150"/>
       
  1210                       <position x="225" y="250"/>
       
  1211                       <position x="190" y="250"/>
       
  1212                     </connection>
       
  1213                   </connectionPointIn>
       
  1214                 </variable>
       
  1215               </inputVariables>
       
  1216               <inOutVariables/>
       
  1217               <outputVariables>
       
  1218                 <variable formalParameter="Q">
       
  1219                   <connectionPointOut>
       
  1220                     <relPosition x="50" y="40"/>
       
  1221                   </connectionPointOut>
       
  1222                 </variable>
       
  1223                 <variable formalParameter="ET">
       
  1224                   <connectionPointOut>
       
  1225                     <relPosition x="50" y="80"/>
       
  1226                   </connectionPointOut>
       
  1227                 </variable>
       
  1228               </outputVariables>
       
  1229             </block>
       
  1230             <block localId="2" typeName="TON" instanceName="TimerOff" executionOrderId="0" height="100" width="50">
       
  1231               <position x="460" y="70"/>
       
  1232               <inputVariables>
       
  1233                 <variable formalParameter="IN">
       
  1234                   <connectionPointIn>
       
  1235                     <relPosition x="0" y="40"/>
       
  1236                     <connection refLocalId="14" formalParameter="Q">
       
  1237                       <position x="460" y="110"/>
       
  1238                       <position x="310" y="110"/>
       
  1239                     </connection>
       
  1240                   </connectionPointIn>
       
  1241                 </variable>
       
  1242                 <variable formalParameter="PT">
       
  1243                   <connectionPointIn>
       
  1244                     <relPosition x="0" y="80"/>
       
  1245                     <connection refLocalId="16" formalParameter="OUT">
       
  1246                       <position x="460" y="150"/>
       
  1247                       <position x="350" y="150"/>
       
  1248                       <position x="350" y="250"/>
       
  1249                       <position x="190" y="250"/>
       
  1250                     </connection>
       
  1251                   </connectionPointIn>
       
  1252                 </variable>
       
  1253               </inputVariables>
       
  1254               <inOutVariables/>
       
  1255               <outputVariables>
       
  1256                 <variable formalParameter="Q" negated="true">
       
  1257                   <connectionPointOut>
       
  1258                     <relPosition x="50" y="40"/>
       
  1259                   </connectionPointOut>
       
  1260                 </variable>
       
  1261                 <variable formalParameter="ET">
       
  1262                   <connectionPointOut>
       
  1263                     <relPosition x="50" y="80"/>
       
  1264                   </connectionPointOut>
       
  1265                 </variable>
       
  1266               </outputVariables>
       
  1267             </block>
       
  1268             <outVariable localId="15" executionOrderId="0" height="35" width="35" negated="false">
       
  1269               <position x="365" y="25"/>
       
  1270               <connectionPointIn>
       
  1271                 <relPosition x="0" y="15"/>
       
  1272                 <connection refLocalId="14" formalParameter="Q">
       
  1273                   <position x="365" y="40"/>
       
  1274                   <position x="340" y="40"/>
       
  1275                   <position x="340" y="110"/>
       
  1276                   <position x="310" y="110"/>
       
  1277                 </connection>
       
  1278               </connectionPointIn>
       
  1279               <expression>Out</expression>
       
  1280             </outVariable>
       
  1281             <block localId="16" typeName="DIV" executionOrderId="0" height="80" width="70">
       
  1282               <position x="120" y="215"/>
       
  1283               <inputVariables>
       
  1284                 <variable formalParameter="IN1">
       
  1285                   <connectionPointIn>
       
  1286                     <relPosition x="0" y="35"/>
       
  1287                     <connection refLocalId="1">
       
  1288                       <position x="120" y="250"/>
       
  1289                       <position x="75" y="250"/>
       
  1290                     </connection>
       
  1291                   </connectionPointIn>
       
  1292                 </variable>
       
  1293                 <variable formalParameter="IN2">
       
  1294                   <connectionPointIn>
       
  1295                     <relPosition x="0" y="65"/>
       
  1296                     <connection refLocalId="4">
       
  1297                       <position x="120" y="280"/>
       
  1298                       <position x="75" y="280"/>
       
  1299                     </connection>
       
  1300                   </connectionPointIn>
       
  1301                 </variable>
       
  1302               </inputVariables>
       
  1303               <inOutVariables/>
       
  1304               <outputVariables>
       
  1305                 <variable formalParameter="OUT">
       
  1306                   <connectionPointOut>
       
  1307                     <relPosition x="70" y="35"/>
       
  1308                   </connectionPointOut>
       
  1309                 </variable>
       
  1310               </outputVariables>
       
  1311             </block>
       
  1312             <inVariable localId="1" executionOrderId="0" height="30" width="55" negated="false">
       
  1313               <position x="20" y="235"/>
       
  1314               <connectionPointOut>
       
  1315                 <relPosition x="55" y="15"/>
       
  1316               </connectionPointOut>
       
  1317               <expression>Period</expression>
       
  1318             </inVariable>
       
  1319             <inVariable localId="4" executionOrderId="0" height="30" width="55" negated="false">
       
  1320               <position x="20" y="265"/>
       
  1321               <connectionPointOut>
       
  1322                 <relPosition x="55" y="15"/>
       
  1323               </connectionPointOut>
       
  1324               <expression>2</expression>
       
  1325             </inVariable>
       
  1326           </FBD>
       
  1327         </body>
       
  1328       </pou>
       
  1329       <pou name="axis" pouType="functionBlock">
       
  1330         <interface>
       
  1331           <inputVars>
       
  1332             <variable name="Power">
       
  1333               <type>
       
  1334                 <BOOL/>
       
  1335               </type>
       
  1336             </variable>
       
  1337             <variable name="Up">
       
  1338               <type>
       
  1339                 <BOOL/>
       
  1340               </type>
       
  1341             </variable>
       
  1342             <variable name="Down">
       
  1343               <type>
       
  1344                 <BOOL/>
       
  1345               </type>
       
  1346             </variable>
       
  1347           </inputVars>
       
  1348           <outputVars>
       
  1349             <variable name="Out">
       
  1350               <type>
       
  1351                 <INT/>
       
  1352               </type>
       
  1353             </variable>
       
  1354           </outputVars>
       
  1355           <localVars>
       
  1356             <variable name="axis_conuter">
       
  1357               <type>
       
  1358                 <derived name="CTUD"/>
       
  1359               </type>
       
  1360             </variable>
       
  1361             <variable name="clock0">
       
  1362               <type>
       
  1363                 <derived name="clock"/>
       
  1364               </type>
       
  1365             </variable>
       
  1366           </localVars>
       
  1367         </interface>
       
  1368         <body>
       
  1369           <FBD>
       
  1370             <block localId="297" typeName="CTUD" instanceName="axis_conuter" executionOrderId="0" height="310" width="70">
       
  1371               <position x="645" y="30"/>
       
  1372               <inputVariables>
       
  1373                 <variable formalParameter="CU" edge="rising">
       
  1374                   <connectionPointIn>
       
  1375                     <relPosition x="0" y="50"/>
       
  1376                     <connection refLocalId="303" formalParameter="OUT">
       
  1377                       <position x="645" y="80"/>
       
  1378                       <position x="580" y="80"/>
       
  1379                     </connection>
       
  1380                   </connectionPointIn>
       
  1381                 </variable>
       
  1382                 <variable formalParameter="CD" edge="rising">
       
  1383                   <connectionPointIn>
       
  1384                     <relPosition x="0" y="105"/>
       
  1385                     <connection refLocalId="2" formalParameter="OUT">
       
  1386                       <position x="645" y="135"/>
       
  1387                       <position x="612" y="135"/>
       
  1388                       <position x="612" y="150"/>
       
  1389                       <position x="580" y="150"/>
       
  1390                     </connection>
       
  1391                   </connectionPointIn>
       
  1392                 </variable>
       
  1393                 <variable formalParameter="R">
       
  1394                   <connectionPointIn>
       
  1395                     <relPosition x="0" y="165"/>
       
  1396                   </connectionPointIn>
       
  1397                 </variable>
       
  1398                 <variable formalParameter="LD">
       
  1399                   <connectionPointIn>
       
  1400                     <relPosition x="0" y="225"/>
       
  1401                   </connectionPointIn>
       
  1402                 </variable>
       
  1403                 <variable formalParameter="PV">
       
  1404                   <connectionPointIn>
       
  1405                     <relPosition x="0" y="280"/>
       
  1406                     <connection refLocalId="3">
       
  1407                       <position x="645" y="310"/>
       
  1408                       <position x="610" y="310"/>
       
  1409                     </connection>
       
  1410                   </connectionPointIn>
       
  1411                 </variable>
       
  1412               </inputVariables>
       
  1413               <inOutVariables/>
       
  1414               <outputVariables>
       
  1415                 <variable formalParameter="QU">
       
  1416                   <connectionPointOut>
       
  1417                     <relPosition x="70" y="50"/>
       
  1418                   </connectionPointOut>
       
  1419                 </variable>
       
  1420                 <variable formalParameter="QD">
       
  1421                   <connectionPointOut>
       
  1422                     <relPosition x="70" y="105"/>
       
  1423                   </connectionPointOut>
       
  1424                 </variable>
       
  1425                 <variable formalParameter="CV">
       
  1426                   <connectionPointOut>
       
  1427                     <relPosition x="70" y="165"/>
       
  1428                   </connectionPointOut>
       
  1429                 </variable>
       
  1430                 <variable formalParameter="CD_T">
       
  1431                   <connectionPointOut>
       
  1432                     <relPosition x="70" y="225"/>
       
  1433                   </connectionPointOut>
       
  1434                 </variable>
       
  1435                 <variable formalParameter="CU_T">
       
  1436                   <connectionPointOut>
       
  1437                     <relPosition x="70" y="280"/>
       
  1438                   </connectionPointOut>
       
  1439                 </variable>
       
  1440               </outputVariables>
       
  1441             </block>
       
  1442             <outVariable localId="298" executionOrderId="0" height="35" width="35" negated="false">
       
  1443               <position x="750" y="180"/>
       
  1444               <connectionPointIn>
       
  1445                 <relPosition x="0" y="15"/>
       
  1446                 <connection refLocalId="297" formalParameter="CV">
       
  1447                   <position x="750" y="195"/>
       
  1448                   <position x="715" y="195"/>
       
  1449                 </connection>
       
  1450               </connectionPointIn>
       
  1451               <expression>Out</expression>
       
  1452             </outVariable>
       
  1453             <block localId="299" typeName="clock" instanceName="clock0" executionOrderId="0" height="70" width="85">
       
  1454               <position x="165" y="270"/>
       
  1455               <inputVariables>
       
  1456                 <variable formalParameter="Period">
       
  1457                   <connectionPointIn>
       
  1458                     <relPosition x="0" y="45"/>
       
  1459                     <connection refLocalId="1">
       
  1460                       <position x="165" y="315"/>
       
  1461                       <position x="110" y="315"/>
       
  1462                     </connection>
       
  1463                   </connectionPointIn>
       
  1464                 </variable>
       
  1465               </inputVariables>
       
  1466               <inOutVariables/>
       
  1467               <outputVariables>
       
  1468                 <variable formalParameter="Out">
       
  1469                   <connectionPointOut>
       
  1470                     <relPosition x="85" y="45"/>
       
  1471                   </connectionPointOut>
       
  1472                 </variable>
       
  1473               </outputVariables>
       
  1474             </block>
       
  1475             <inVariable localId="300" executionOrderId="0" height="35" width="55" negated="false">
       
  1476               <position x="35" y="205"/>
       
  1477               <connectionPointOut>
       
  1478                 <relPosition x="55" y="15"/>
       
  1479               </connectionPointOut>
       
  1480               <expression>Power</expression>
       
  1481             </inVariable>
       
  1482             <inVariable localId="1" executionOrderId="0" height="35" width="75" negated="false">
       
  1483               <position x="35" y="300"/>
       
  1484               <connectionPointOut>
       
  1485                 <relPosition x="75" y="15"/>
       
  1486               </connectionPointOut>
       
  1487               <expression>T#100ms</expression>
       
  1488             </inVariable>
       
  1489             <inVariable localId="301" executionOrderId="0" height="35" width="55" negated="false">
       
  1490               <position x="340" y="85"/>
       
  1491               <connectionPointOut>
       
  1492                 <relPosition x="55" y="15"/>
       
  1493               </connectionPointOut>
       
  1494               <expression>Up</expression>
       
  1495             </inVariable>
       
  1496             <inVariable localId="302" executionOrderId="0" height="35" width="50" negated="false">
       
  1497               <position x="340" y="155"/>
       
  1498               <connectionPointOut>
       
  1499                 <relPosition x="50" y="15"/>
       
  1500               </connectionPointOut>
       
  1501               <expression>Down</expression>
       
  1502             </inVariable>
       
  1503             <block localId="303" typeName="AND" executionOrderId="0" height="60" width="110">
       
  1504               <position x="470" y="50"/>
       
  1505               <inputVariables>
       
  1506                 <variable formalParameter="IN1">
       
  1507                   <connectionPointIn>
       
  1508                     <relPosition x="0" y="30"/>
       
  1509                     <connection refLocalId="4" formalParameter="OUT">
       
  1510                       <position x="470" y="80"/>
       
  1511                       <position x="432" y="80"/>
       
  1512                       <position x="432" y="275"/>
       
  1513                       <position x="395" y="275"/>
       
  1514                     </connection>
       
  1515                   </connectionPointIn>
       
  1516                 </variable>
       
  1517                 <variable formalParameter="IN2">
       
  1518                   <connectionPointIn>
       
  1519                     <relPosition x="0" y="50"/>
       
  1520                     <connection refLocalId="301">
       
  1521                       <position x="470" y="100"/>
       
  1522                       <position x="395" y="100"/>
       
  1523                     </connection>
       
  1524                   </connectionPointIn>
       
  1525                 </variable>
       
  1526               </inputVariables>
       
  1527               <inOutVariables/>
       
  1528               <outputVariables>
       
  1529                 <variable formalParameter="OUT">
       
  1530                   <connectionPointOut>
       
  1531                     <relPosition x="110" y="30"/>
       
  1532                   </connectionPointOut>
       
  1533                 </variable>
       
  1534               </outputVariables>
       
  1535             </block>
       
  1536             <block localId="2" typeName="AND" executionOrderId="0" height="60" width="110">
       
  1537               <position x="470" y="120"/>
       
  1538               <inputVariables>
       
  1539                 <variable formalParameter="IN1">
       
  1540                   <connectionPointIn>
       
  1541                     <relPosition x="0" y="30"/>
       
  1542                     <connection refLocalId="4" formalParameter="OUT">
       
  1543                       <position x="470" y="150"/>
       
  1544                       <position x="432" y="150"/>
       
  1545                       <position x="432" y="275"/>
       
  1546                       <position x="395" y="275"/>
       
  1547                     </connection>
       
  1548                   </connectionPointIn>
       
  1549                 </variable>
       
  1550                 <variable formalParameter="IN2">
       
  1551                   <connectionPointIn>
       
  1552                     <relPosition x="0" y="50"/>
       
  1553                     <connection refLocalId="302">
       
  1554                       <position x="470" y="170"/>
       
  1555                       <position x="390" y="170"/>
       
  1556                     </connection>
       
  1557                   </connectionPointIn>
       
  1558                 </variable>
       
  1559               </inputVariables>
       
  1560               <inOutVariables/>
       
  1561               <outputVariables>
       
  1562                 <variable formalParameter="OUT">
       
  1563                   <connectionPointOut>
       
  1564                     <relPosition x="110" y="30"/>
       
  1565                   </connectionPointOut>
       
  1566                 </variable>
       
  1567               </outputVariables>
       
  1568             </block>
       
  1569             <inVariable localId="3" executionOrderId="0" height="35" width="85" negated="false">
       
  1570               <position x="525" y="295"/>
       
  1571               <connectionPointOut>
       
  1572                 <relPosition x="85" y="15"/>
       
  1573               </connectionPointOut>
       
  1574               <expression>INT#32767</expression>
       
  1575             </inVariable>
       
  1576             <block localId="4" typeName="AND" executionOrderId="0" height="100" width="110">
       
  1577               <position x="285" y="235"/>
       
  1578               <inputVariables>
       
  1579                 <variable formalParameter="IN1">
       
  1580                   <connectionPointIn>
       
  1581                     <relPosition x="0" y="40"/>
       
  1582                     <connection refLocalId="300">
       
  1583                       <position x="285" y="275"/>
       
  1584                       <position x="265" y="275"/>
       
  1585                       <position x="265" y="220"/>
       
  1586                       <position x="90" y="220"/>
       
  1587                     </connection>
       
  1588                   </connectionPointIn>
       
  1589                 </variable>
       
  1590                 <variable formalParameter="IN2">
       
  1591                   <connectionPointIn>
       
  1592                     <relPosition x="0" y="80"/>
       
  1593                     <connection refLocalId="299" formalParameter="Out">
       
  1594                       <position x="285" y="315"/>
       
  1595                       <position x="250" y="315"/>
       
  1596                     </connection>
       
  1597                   </connectionPointIn>
       
  1598                 </variable>
       
  1599               </inputVariables>
       
  1600               <inOutVariables/>
       
  1601               <outputVariables>
       
  1602                 <variable formalParameter="OUT">
       
  1603                   <connectionPointOut>
       
  1604                     <relPosition x="110" y="40"/>
       
  1605                   </connectionPointOut>
       
  1606                 </variable>
       
  1607               </outputVariables>
       
  1608             </block>
       
  1609           </FBD>
       
  1610         </body>
   554       </pou>
  1611       </pou>
   555     </pous>
  1612     </pous>
   556   </types>
  1613   </types>
   557   <instances>
  1614   <instances>
   558     <configurations>
  1615     <configurations>
   559       <configuration name="config">
  1616       <configuration name="config">
   560         <resource name="resource1">
  1617         <resource name="resource1">
   561           <task name="InitOneShot" priority="0" single="Initialize">
  1618           <task name="InitOneShot" priority="0" single="Initialize">
   562             <pouInstance name="Initializer" typeName="Declarations"/>
  1619             <pouInstance name="Initializer" typeName="Declarations"/>
   563           </task>
  1620           </task>
   564           <task name="ControlTask" priority="0" interval="T#2ms">
  1621           <task name="ControlTask" priority="1" interval="T#2ms">
   565             <pouInstance name="MainInstance" typeName="main"/>
  1622             <pouInstance name="MainInstance" typeName="main"/>
   566           </task>
  1623           </task>
   567           <task name="GUIupdate" priority="0" interval="T#200ms">
  1624           <task name="GUIupdate" priority="0" interval="T#200ms">
   568             <pouInstance name="PosReader" typeName="ReadGUIdata"/>
  1625             <pouInstance name="PosReader" typeName="ReadGUIdata"/>
   569           </task>
  1626           </task>
   574               </type>
  1631               </type>
   575               <initialValue>
  1632               <initialValue>
   576                 <simpleValue value="TRUE"/>
  1633                 <simpleValue value="TRUE"/>
   577               </initialValue>
  1634               </initialValue>
   578             </variable>
  1635             </variable>
   579             <variable name="power">
       
   580               <type>
       
   581                 <BOOL/>
       
   582               </type>
       
   583               <initialValue>
       
   584                 <simpleValue value="TRUE"/>
       
   585               </initialValue>
       
   586             </variable>
       
   587           </globalVars>
  1636           </globalVars>
   588         </resource>
  1637         </resource>
   589       </configuration>
  1638       </configuration>
   590     </configurations>
  1639     </configurations>
   591   </instances>
  1640   </instances>