examples/example.xml
changeset 0 b622defdfd98
child 1 e9d01d824086
equal deleted inserted replaced
-1:000000000000 0:b622defdfd98
       
     1 <?xml version="1.0" encoding="UTF-8"?>
       
     2 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       
     3          xmlns="http://www.plcopen.org/xml/tc6.xsd"
       
     4          xmlns:xhtml="http://www.w3.org/1999/xhtml"
       
     5          xsi:schemaLocation="http://www.plcopen.org/xml/tc6.xsd http://www.plcopen.org/xml/tc6.xsd">
       
     6   <fileHeader companyName="Lolitech"
       
     7               productName="PLCOpenEditorExample"
       
     8               productVersion="1.0"
       
     9               creationDateTime="2006-09-07 18:52:43"/>
       
    10   <contentHeader name="Test">
       
    11     <coordinateInfo>
       
    12       <fbd>
       
    13         <scaling y="0" x="0"/>
       
    14       </fbd>
       
    15       <ld>
       
    16         <scaling y="0" x="0"/>
       
    17       </ld>
       
    18       <sfc>
       
    19         <scaling y="0" x="0"/>
       
    20       </sfc>
       
    21     </coordinateInfo>
       
    22   </contentHeader>
       
    23   <types>
       
    24     <dataTypes/>
       
    25     <pous>
       
    26       <pou name="FBDTest" pouType="function">
       
    27         <interface>
       
    28           <returnType>
       
    29             <BOOL/>
       
    30           </returnType>
       
    31           <inputVars>
       
    32             <variable name="IN1">
       
    33               <type>
       
    34                 <BOOL/>
       
    35               </type>
       
    36               <initialValue>
       
    37                 <simpleValue value="false"/>
       
    38               </initialValue>
       
    39             </variable>
       
    40             <variable name="IN2">
       
    41               <type>
       
    42                 <BOOL/>
       
    43               </type>
       
    44               <initialValue>
       
    45                 <arrayValue>
       
    46                   <value>
       
    47                     <simpleValue value="4"/>
       
    48                   </value>
       
    49                   <value>
       
    50                     <arrayValue>
       
    51                       <value>
       
    52                         <simpleValue value="0"/>
       
    53                       </value>
       
    54                       <value>
       
    55                         <simpleValue value="1"/>
       
    56                       </value>
       
    57                     </arrayValue>
       
    58                   </value>
       
    59                 </arrayValue>
       
    60               </initialValue>
       
    61             </variable>
       
    62             <variable name="IN3">
       
    63               <type>
       
    64                 <BOOL/>
       
    65               </type>
       
    66             </variable>
       
    67           </inputVars>
       
    68         </interface>
       
    69         <body>
       
    70           <FBD>
       
    71             <inVariable localId="2" width="89" height="27">
       
    72               <position y="84" x="64"/>
       
    73               <connectionPointOut>
       
    74                 <relPosition y="13" x="89"/>
       
    75               </connectionPointOut>
       
    76               <expression>IN1</expression>
       
    77             </inVariable>
       
    78             <inVariable localId="3" width="90" height="27">
       
    79               <position y="204" x="63"/>
       
    80               <connectionPointOut>
       
    81                 <relPosition y="13" x="90"/>
       
    82               </connectionPointOut>
       
    83               <expression>IN2</expression>
       
    84             </inVariable>
       
    85             <outVariable localId="4" width="95" height="33">
       
    86               <position y="182" x="587"/>
       
    87               <connectionPointIn>
       
    88                 <relPosition y="16" x="0"/>
       
    89                 <connection refLocalId="11">
       
    90                   <position y="198" x="587"/>
       
    91                   <position y="198" x="517"/>
       
    92                 </connection>
       
    93               </connectionPointIn>
       
    94               <expression>FBDTest</expression>
       
    95             </outVariable>
       
    96             <block localId="6" height="84" width="99" typeName="AND">
       
    97               <position y="105" x="235"/>
       
    98               <inputVariables>
       
    99                 <variable formalParameter="" edge="rising">
       
   100                   <connectionPointIn>
       
   101                     <relPosition y="36" x="0"/>
       
   102                     <connection refLocalId="2">
       
   103                       <position y="141" x="235"/>
       
   104                       <position y="141" x="190"/>
       
   105                       <position y="97" x="190"/>
       
   106                       <position y="97" x="153"/>
       
   107                     </connection>
       
   108                   </connectionPointIn>
       
   109                 </variable>
       
   110                 <variable formalParameter="">
       
   111                   <connectionPointIn>
       
   112                     <relPosition y="68" x="0"/>
       
   113                     <connection refLocalId="3">
       
   114                       <position y="173" x="235"/>
       
   115                       <position y="173" x="190"/>
       
   116                       <position y="217" x="190"/>
       
   117                       <position y="217" x="153"/>
       
   118                     </connection>
       
   119                   </connectionPointIn>
       
   120                 </variable>
       
   121               </inputVariables>
       
   122               <inOutVariables/>
       
   123               <outputVariables>
       
   124                 <variable formalParameter="" negated="true">
       
   125                   <connectionPointOut>
       
   126                     <relPosition y="36" x="99"/>
       
   127                   </connectionPointOut>
       
   128                 </variable>
       
   129               </outputVariables>
       
   130             </block>
       
   131             <inVariable localId="7" width="90" height="28">
       
   132               <position y="336" x="63"/>
       
   133               <connectionPointOut>
       
   134                 <relPosition y="14" x="90"/>
       
   135               </connectionPointOut>
       
   136               <expression>IN3</expression>
       
   137             </inVariable>
       
   138             <block localId="8" height="87" width="99" instanceName="" typeName="OR">
       
   139               <position y="246" x="235"/>
       
   140               <inputVariables>
       
   141                 <variable formalParameter="IN1" negated="true">
       
   142                   <connectionPointIn>
       
   143                     <relPosition y="36" x="0"/>
       
   144                     <connection refLocalId="3">
       
   145                       <position y="282" x="235"/>
       
   146                       <position y="282" x="190"/>
       
   147                       <position y="217" x="190"/>
       
   148                       <position y="217" x="153"/>
       
   149                     </connection>
       
   150                   </connectionPointIn>
       
   151                 </variable>
       
   152                 <variable formalParameter="IN2">
       
   153                   <connectionPointIn>
       
   154                     <relPosition y="69" x="0"/>
       
   155                     <connection refLocalId="7">
       
   156                       <position y="315" x="235"/>
       
   157                       <position y="315" x="191"/>
       
   158                       <position y="350" x="191"/>
       
   159                       <position y="350" x="153"/>
       
   160                     </connection>
       
   161                   </connectionPointIn>
       
   162                 </variable>
       
   163               </inputVariables>
       
   164               <inOutVariables/>
       
   165               <outputVariables>
       
   166                 <variable formalParameter="OUT">
       
   167                   <connectionPointOut>
       
   168                     <relPosition y="36" x="99"/>
       
   169                   </connectionPointOut>
       
   170                 </variable>
       
   171               </outputVariables>
       
   172             </block>
       
   173             <comment localId="10" height="37" width="261">
       
   174               <position y="32" x="243"/>
       
   175               <content>POU qui sert a tester PLCOpenEditor.</content>
       
   176             </comment>
       
   177             <block localId="11" height="91" width="97" instanceName="SR1" typeName="SR">
       
   178               <position y="161" x="420"/>
       
   179               <inputVariables>
       
   180                 <variable formalParameter="S1">
       
   181                   <connectionPointIn>
       
   182                     <relPosition y="37" x="0"/>
       
   183                     <connection refLocalId="6">
       
   184                       <position y="198" x="420"/>
       
   185                       <position y="198" x="369"/>
       
   186                       <position y="141" x="369"/>
       
   187                       <position y="141" x="334"/>
       
   188                     </connection>
       
   189                   </connectionPointIn>
       
   190                 </variable>
       
   191                 <variable formalParameter="R">
       
   192                   <connectionPointIn>
       
   193                     <relPosition y="72" x="0"/>
       
   194                     <connection refLocalId="8">
       
   195                       <position y="233" x="420"/>
       
   196                       <position y="233" x="369"/>
       
   197                       <position y="282" x="369"/>
       
   198                       <position y="282" x="334"/>
       
   199                     </connection>
       
   200                   </connectionPointIn>
       
   201                 </variable>
       
   202               </inputVariables>
       
   203               <inOutVariables/>
       
   204               <outputVariables>
       
   205                 <variable formalParameter="Q1">
       
   206                   <connectionPointOut>
       
   207                     <relPosition y="37" x="97"/>
       
   208                   </connectionPointOut>
       
   209                 </variable>
       
   210               </outputVariables>
       
   211             </block>
       
   212           </FBD>
       
   213         </body>
       
   214       </pou>
       
   215       <pou name="LDTest" pouType="function">
       
   216         <interface>
       
   217           <returnType>
       
   218             <BOOL/>
       
   219           </returnType>
       
   220           <inputVars>
       
   221             <variable name="IN1">
       
   222               <type>
       
   223                 <BOOL/>
       
   224               </type>
       
   225             </variable>
       
   226             <variable name="IN2">
       
   227               <type>
       
   228                 <BOOL/>
       
   229               </type>
       
   230             </variable>
       
   231             <variable name="IN3">
       
   232               <type>
       
   233                 <BOOL/>
       
   234               </type>
       
   235             </variable>
       
   236             <variable name="IN4">
       
   237               <type>
       
   238                 <BOOL/>
       
   239               </type>
       
   240             </variable>
       
   241           </inputVars>
       
   242         </interface>
       
   243         <body>
       
   244           <LD>
       
   245             <comment localId="1" height="40" width="600">
       
   246               <position y="10" x="10"/>
       
   247               <content>Commentaire</content>
       
   248             </comment>
       
   249             <leftPowerRail localId="2" height="80" width="2">
       
   250               <position y="60" x="10"/>
       
   251               <connectionPointOut formalParameter="">
       
   252                 <relPosition y="20" x="2"/>
       
   253               </connectionPointOut>
       
   254               <connectionPointOut formalParameter="">
       
   255                 <relPosition y="60" x="2"/>
       
   256               </connectionPointOut>
       
   257             </leftPowerRail>
       
   258             <coil localId="3" width="21" storage="none" height="15" negated="false">
       
   259               <position y="72" x="265"/>
       
   260               <connectionPointIn>
       
   261                 <relPosition y="8" x="0"/>
       
   262                 <connection refLocalId="7">
       
   263                   <position y="80" x="265"/>
       
   264                   <position y="80" x="195"/>
       
   265                 </connection>
       
   266               </connectionPointIn>
       
   267               <connectionPointOut>
       
   268                 <relPosition y="8" x="21"/>
       
   269               </connectionPointOut>
       
   270               <variable>LDTest</variable>
       
   271             </coil>
       
   272             <rightPowerRail localId="4" height="40" width="2">
       
   273               <position y="60" x="316"/>
       
   274               <connectionPointIn>
       
   275                 <relPosition y="20" x="0"/>
       
   276                 <connection refLocalId="3">
       
   277                   <position y="80" x="316"/>
       
   278                   <position y="80" x="286"/>
       
   279                 </connection>
       
   280               </connectionPointIn>
       
   281             </rightPowerRail>
       
   282             <contact localId="5" width="21" height="15" edge="none" negated="true">
       
   283               <position y="72" x="42"/>
       
   284               <connectionPointIn>
       
   285                 <relPosition y="8" x="0"/>
       
   286                 <connection refLocalId="2">
       
   287                   <position y="80" x="42"/>
       
   288                   <position y="80" x="12"/>
       
   289                 </connection>
       
   290               </connectionPointIn>
       
   291               <connectionPointOut>
       
   292                 <relPosition y="8" x="21"/>
       
   293               </connectionPointOut>
       
   294               <variable>IN1</variable>
       
   295             </contact>
       
   296             <contact localId="7" width="21" height="15" edge="none" negated="false">
       
   297               <position y="72" x="174"/>
       
   298               <connectionPointIn>
       
   299                 <relPosition y="8" x="0"/>
       
   300                 <connection refLocalId="5">
       
   301                   <position y="80" x="174"/>
       
   302                   <position y="80" x="63"/>
       
   303                 </connection>
       
   304                 <connection refLocalId="9">
       
   305                   <position y="80" x="174"/>
       
   306                   <position y="80" x="144"/>
       
   307                   <position y="120" x="144"/>
       
   308                   <position y="120" x="114"/>
       
   309                 </connection>
       
   310               </connectionPointIn>
       
   311               <connectionPointOut>
       
   312                 <relPosition y="8" x="21"/>
       
   313               </connectionPointOut>
       
   314               <variable>IN2</variable>
       
   315             </contact>
       
   316             <contact localId="8" width="21" height="15" edge="none" negated="false">
       
   317               <position y="112" x="42"/>
       
   318               <connectionPointIn>
       
   319                 <relPosition y="8" x="0"/>
       
   320                 <connection refLocalId="2">
       
   321                   <position y="120" x="42"/>
       
   322                   <position y="120" x="12"/>
       
   323                 </connection>
       
   324               </connectionPointIn>
       
   325               <connectionPointOut>
       
   326                 <relPosition y="8" x="21"/>
       
   327               </connectionPointOut>
       
   328               <variable>IN3</variable>
       
   329             </contact>
       
   330             <contact localId="9" width="21" height="15" edge="none" negated="true">
       
   331               <position y="112" x="93"/>
       
   332               <connectionPointIn>
       
   333                 <relPosition y="8" x="0"/>
       
   334                 <connection refLocalId="8">
       
   335                   <position y="120" x="93"/>
       
   336                   <position y="120" x="63"/>
       
   337                 </connection>
       
   338               </connectionPointIn>
       
   339               <connectionPointOut>
       
   340                 <relPosition y="8" x="21"/>
       
   341               </connectionPointOut>
       
   342               <variable>IN4</variable>
       
   343             </contact>
       
   344           </LD>
       
   345         </body>
       
   346       </pou>
       
   347       <pou name="ILTest" pouType="function">
       
   348         <interface>
       
   349           <returnType>
       
   350             <REAL/>
       
   351           </returnType>
       
   352           <localVars>
       
   353             <variable name="Temp">
       
   354               <type>
       
   355                 <REAL/>
       
   356               </type>
       
   357             </variable>
       
   358           </localVars>
       
   359           <inputVars>
       
   360             <variable name="X1">
       
   361               <type>
       
   362                 <REAL/>
       
   363               </type>
       
   364             </variable>
       
   365             <variable name="X2">
       
   366               <type>
       
   367                 <REAL/>
       
   368               </type>
       
   369             </variable>
       
   370             <variable name="Y1">
       
   371               <type>
       
   372                 <REAL/>
       
   373               </type>
       
   374             </variable>
       
   375             <variable name="Y2">
       
   376               <type>
       
   377                 <REAL/>
       
   378               </type>
       
   379             </variable>
       
   380             <variable name="TMax">
       
   381               <type>
       
   382                 <REAL/>
       
   383               </type>
       
   384             </variable>
       
   385           </inputVars>
       
   386           <outputVars>
       
   387             <variable name="ENO">
       
   388               <type>
       
   389                 <BOOL/>
       
   390               </type>
       
   391             </variable>
       
   392           </outputVars>
       
   393         </interface>
       
   394         <body>
       
   395           <IL>
       
   396   LD   Y1
       
   397   SUB  Y2     (* Substract Y2 from Y1 *)
       
   398   ST   Temp   (* Store Y1-Y2 in Temp *)
       
   399   MUL  Temp   (* Multiply by Temp to square *)
       
   400   ADD( X1     (* Defer ADD *)
       
   401   SUB  X2     (* Substract X1 from X2 *)
       
   402   ST   Temp   (* Store X1-X2 in Temp *)
       
   403   MUL  Temp   (* Multiply by Temp to square *)
       
   404   )
       
   405   CAL  SQRT   (* Call Square root fun *)
       
   406   ST   ILTest (* Setup function result *)
       
   407   GT   TMax   (* Greater than TMax ? *)
       
   408   JMPC ERR    (* Yes, Jump to Error *)
       
   409   S    ENO    (* Set ENO *)
       
   410   RET         (* Normal return *)
       
   411 
       
   412   ERR:
       
   413   RET         (* Error return, ENO not set *)
       
   414           </IL>
       
   415         </body>
       
   416       </pou>
       
   417       <pou name="SFCTest" pouType="program">
       
   418         <interface>
       
   419           <inputVars>
       
   420             <variable name="IN1">
       
   421               <type>
       
   422                 <BOOL/>
       
   423               </type>
       
   424             </variable>
       
   425             <variable name="IN2">
       
   426               <type>
       
   427                 <BOOL/>
       
   428               </type>
       
   429             </variable>
       
   430             <variable name="IN3">
       
   431               <type>
       
   432                 <BOOL/>
       
   433               </type>
       
   434             </variable>
       
   435             <variable name="IN4">
       
   436               <type>
       
   437                 <BOOL/>
       
   438               </type>
       
   439             </variable>
       
   440             <variable name="IN5">
       
   441               <type>
       
   442                 <BOOL/>
       
   443               </type>
       
   444             </variable>
       
   445           </inputVars>
       
   446         </interface>
       
   447         <actions>
       
   448           <action name="ACT1">
       
   449             <body>
       
   450               <ST>
       
   451   IF IN1 THEN
       
   452     IN2 := 1;
       
   453   ELSE
       
   454     IN3 := 1;
       
   455   END_IF;
       
   456               </ST>
       
   457             </body>
       
   458           </action>
       
   459         </actions>
       
   460         <transitions>
       
   461           <transition name="TR1">
       
   462             <body>
       
   463               <ST>:= AND(IN1, IN2, IN3);</ST>
       
   464             </body>
       
   465           </transition>
       
   466         </transitions>
       
   467         <body>
       
   468           <SFC>
       
   469             <step localId="1" height="31" width="46" initialStep="true" name="Start">
       
   470               <position y="46" x="82"/>
       
   471               <connectionPointOut formalParameter="">
       
   472                 <relPosition y="31" x="23"/>
       
   473               </connectionPointOut>
       
   474             </step>
       
   475             <transition localId="2" height="2" width="20">
       
   476               <position y="102" x="95"/>
       
   477               <connectionPointIn>
       
   478                 <relPosition y="0" x="10"/>
       
   479                 <connection refLocalId="1">
       
   480                   <position y="102" x="105"/>
       
   481                   <position y="77" x="105"/>
       
   482                 </connection>
       
   483               </connectionPointIn>
       
   484               <connectionPointOut>
       
   485                 <relPosition y="2" x="10"/>
       
   486               </connectionPointOut>
       
   487               <condition>
       
   488                 <reference name="TR1"/>
       
   489               </condition>
       
   490             </transition>
       
   491             <step localId="3" height="27" width="29" initialStep="false" name="Init">
       
   492               <position y="129" x="91"/>
       
   493               <connectionPointIn>
       
   494                 <relPosition y="0" x="14"/>
       
   495                 <connection refLocalId="2">
       
   496                   <position y="129" x="105"/>
       
   497                   <position y="104" x="105"/>
       
   498                 </connection>
       
   499               </connectionPointIn>
       
   500               <connectionPointOut formalParameter="">
       
   501                 <relPosition y="27" x="14"/>
       
   502               </connectionPointOut>
       
   503               <connectionPointOutAction formalParameter="">
       
   504                 <relPosition y="13" x="29"/>
       
   505               </connectionPointOutAction>
       
   506             </step>
       
   507             <selectionDivergence localId="4" height="1" width="287">
       
   508               <position y="181" x="105"/>
       
   509               <connectionPointIn>
       
   510                 <relPosition y="0" x="0"/>
       
   511                 <connection refLocalId="3">
       
   512                   <position y="181" x="105"/>
       
   513                   <position y="156" x="105"/>
       
   514                 </connection>
       
   515               </connectionPointIn>
       
   516               <connectionPointOut formalParameter="">
       
   517                 <relPosition y="1" x="0"/>
       
   518               </connectionPointOut>
       
   519               <connectionPointOut formalParameter="">
       
   520                 <relPosition y="1" x="133"/>
       
   521               </connectionPointOut>
       
   522               <connectionPointOut formalParameter="">
       
   523                 <relPosition y="1" x="287"/>
       
   524               </connectionPointOut>
       
   525             </selectionDivergence>
       
   526             <transition localId="5" height="2" width="20">
       
   527               <position y="207" x="95"/>
       
   528               <connectionPointIn>
       
   529                 <relPosition y="0" x="10"/>
       
   530                 <connection refLocalId="4">
       
   531                   <position y="207" x="105"/>
       
   532                   <position y="182" x="105"/>
       
   533                 </connection>
       
   534               </connectionPointIn>
       
   535               <connectionPointOut>
       
   536                 <relPosition y="2" x="10"/>
       
   537               </connectionPointOut>
       
   538               <condition>
       
   539                 <inline name="">
       
   540                   <ST>IN2 AND IN3</ST>
       
   541                 </inline>
       
   542               </condition>
       
   543             </transition>
       
   544             <step localId="6" height="27" width="48" initialStep="false" name="Step1">
       
   545               <position y="234" x="81"/>
       
   546               <connectionPointIn>
       
   547                 <relPosition y="0" x="24"/>
       
   548                 <connection refLocalId="5">
       
   549                   <position y="234" x="105"/>
       
   550                   <position y="209" x="105"/>
       
   551                 </connection>
       
   552               </connectionPointIn>
       
   553               <connectionPointOut formalParameter="">
       
   554                 <relPosition y="27" x="24"/>
       
   555               </connectionPointOut>
       
   556             </step>
       
   557             <transition localId="7" height="2" width="20">
       
   558               <position y="207" x="228"/>
       
   559               <connectionPointIn>
       
   560                 <relPosition y="0" x="10"/>
       
   561                 <connection refLocalId="4">
       
   562                   <position y="207" x="238"/>
       
   563                   <position y="182" x="238"/>
       
   564                 </connection>
       
   565               </connectionPointIn>
       
   566               <connectionPointOut>
       
   567                 <relPosition y="2" x="10"/>
       
   568               </connectionPointOut>
       
   569               <condition>
       
   570                 <inline name="">
       
   571                   <ST>IN3</ST>
       
   572                 </inline>
       
   573               </condition>
       
   574             </transition>
       
   575             <step localId="8" height="27" width="48" initialStep="false" name="Step2">
       
   576               <position y="234" x="214"/>
       
   577               <connectionPointIn>
       
   578                 <relPosition y="0" x="24"/>
       
   579                 <connection refLocalId="7">
       
   580                   <position y="234" x="238"/>
       
   581                   <position y="209" x="238"/>
       
   582                 </connection>
       
   583               </connectionPointIn>
       
   584               <connectionPointOut formalParameter="">
       
   585                 <relPosition y="27" x="24"/>
       
   586               </connectionPointOut>
       
   587             </step>
       
   588             <transition localId="9" height="2" width="20">
       
   589               <position y="207" x="382"/>
       
   590               <connectionPointIn>
       
   591                 <relPosition y="0" x="10"/>
       
   592                 <connection refLocalId="4">
       
   593                   <position y="207" x="392"/>
       
   594                   <position y="182" x="392"/>
       
   595                 </connection>
       
   596               </connectionPointIn>
       
   597               <connectionPointOut>
       
   598                 <relPosition y="2" x="10"/>
       
   599               </connectionPointOut>
       
   600               <condition>
       
   601                 <inline name="">
       
   602                   <ST>IN4</ST>
       
   603                 </inline>
       
   604               </condition>
       
   605             </transition>
       
   606             <step localId="10" height="27" width="48" initialStep="false" name="Step3">
       
   607               <position y="234" x="368"/>
       
   608               <connectionPointIn>
       
   609                 <relPosition y="0" x="24"/>
       
   610                 <connection refLocalId="9">
       
   611                   <position y="234" x="392"/>
       
   612                   <position y="209" x="392"/>
       
   613                 </connection>
       
   614               </connectionPointIn>
       
   615               <connectionPointOut formalParameter="">
       
   616                 <relPosition y="27" x="24"/>
       
   617               </connectionPointOut>
       
   618               <connectionPointOutAction formalParameter="">
       
   619                 <relPosition y="13" x="48"/>
       
   620               </connectionPointOutAction>
       
   621             </step>
       
   622             <transition localId="11" height="2" width="20">
       
   623               <position y="286" x="95"/>
       
   624               <connectionPointIn>
       
   625                 <relPosition y="0" x="10"/>
       
   626                 <connection refLocalId="6">
       
   627                   <position y="286" x="105"/>
       
   628                   <position y="261" x="105"/>
       
   629                 </connection>
       
   630               </connectionPointIn>
       
   631               <connectionPointOut>
       
   632                 <relPosition y="2" x="10"/>
       
   633               </connectionPointOut>
       
   634               <condition>
       
   635                 <inline name="">
       
   636                   <ST>IN5</ST>
       
   637                 </inline>
       
   638               </condition>
       
   639             </transition>
       
   640             <jumpStep localId="12" height="13" width="12" targetName="Start">
       
   641               <position y="313" x="99"/>
       
   642               <connectionPointIn>
       
   643                 <relPosition y="0" x="6"/>
       
   644                 <connection refLocalId="11">
       
   645                   <position y="313" x="105"/>
       
   646                   <position y="288" x="105"/>
       
   647                 </connection>
       
   648               </connectionPointIn>
       
   649             </jumpStep>
       
   650             <actionBlock localId="13" height="30" width="100">
       
   651               <position y="127" x="145"/>
       
   652               <connectionPointIn>
       
   653                 <relPosition y="15" x="0"/>
       
   654                 <connection refLocalId="3">
       
   655                   <position y="142" x="145"/>
       
   656                   <position y="142" x="120"/>
       
   657                 </connection>
       
   658               </connectionPointIn>
       
   659               <action qualifier="N">
       
   660                 <reference name="ACT1"/>
       
   661               </action>
       
   662             </actionBlock>
       
   663             <transition localId="14" height="2" width="20">
       
   664               <position y="286" x="228"/>
       
   665               <connectionPointIn>
       
   666                 <relPosition y="0" x="10"/>
       
   667                 <connection refLocalId="8">
       
   668                   <position y="286" x="238"/>
       
   669                   <position y="261" x="238"/>
       
   670                 </connection>
       
   671               </connectionPointIn>
       
   672               <connectionPointOut>
       
   673                 <relPosition y="2" x="10"/>
       
   674               </connectionPointOut>
       
   675               <condition>
       
   676                 <inline name="">
       
   677                   <ST>IN5</ST>
       
   678                 </inline>
       
   679               </condition>
       
   680             </transition>
       
   681             <transition localId="15" height="2" width="20">
       
   682               <position y="316" x="382"/>
       
   683               <connectionPointIn>
       
   684                 <relPosition y="0" x="10"/>
       
   685                 <connection refLocalId="10">
       
   686                   <position y="316" x="392"/>
       
   687                   <position y="261" x="392"/>
       
   688                 </connection>
       
   689               </connectionPointIn>
       
   690               <connectionPointOut>
       
   691                 <relPosition y="2" x="10"/>
       
   692               </connectionPointOut>
       
   693               <condition>
       
   694                 <inline name="">
       
   695                   <ST>IN5</ST>
       
   696                 </inline>
       
   697               </condition>
       
   698             </transition>
       
   699             <selectionConvergence localId="16" height="1" width="154">
       
   700               <position y="343" x="238"/>
       
   701               <connectionPointIn>
       
   702                 <relPosition y="0" x="0"/>
       
   703                 <connection refLocalId="14">
       
   704                   <position y="343" x="238"/>
       
   705                   <position y="288" x="238"/>
       
   706                 </connection>
       
   707               </connectionPointIn>
       
   708               <connectionPointIn>
       
   709                 <relPosition y="0" x="154"/>
       
   710                 <connection refLocalId="15">
       
   711                   <position y="343" x="392"/>
       
   712                   <position y="318" x="392"/>
       
   713                 </connection>
       
   714               </connectionPointIn>
       
   715               <connectionPointOut>
       
   716                 <relPosition y="1" x="78"/>
       
   717               </connectionPointOut>
       
   718             </selectionConvergence>
       
   719             <jumpStep localId="19" height="13" width="12" targetName="Init">
       
   720               <position y="369" x="310"/>
       
   721               <connectionPointIn>
       
   722                 <relPosition y="0" x="6"/>
       
   723                 <connection refLocalId="16">
       
   724                   <position y="369" x="316"/>
       
   725                   <position y="344" x="316"/>
       
   726                 </connection>
       
   727               </connectionPointIn>
       
   728             </jumpStep>
       
   729             <actionBlock localId="20" height="60" width="100">
       
   730               <position y="232" x="441"/>
       
   731               <connectionPointIn>
       
   732                 <relPosition y="15" x="0"/>
       
   733                 <connection refLocalId="10">
       
   734                   <position y="247" x="441"/>
       
   735                   <position y="247" x="416"/>
       
   736                 </connection>
       
   737               </connectionPointIn>
       
   738               <action qualifier="N">
       
   739                 <reference name="ACT1"/>
       
   740               </action>
       
   741               <action qualifier="S">
       
   742                 <reference name="IN1"/>
       
   743               </action>
       
   744             </actionBlock>
       
   745           </SFC>
       
   746         </body>
       
   747       </pou>
       
   748       <pou name="STTest" pouType="functionBlock">
       
   749         <interface>
       
   750           <inputVars>
       
   751             <variable name="Collision">
       
   752               <type>
       
   753                 <BOOL/>
       
   754               </type>
       
   755             </variable>
       
   756             <variable name="Gate">
       
   757               <type>
       
   758                 <BOOL/>
       
   759               </type>
       
   760             </variable>
       
   761             <variable name="Pump">
       
   762               <type>
       
   763                 <BOOL/>
       
   764               </type>
       
   765             </variable>
       
   766             <variable name="Temp">
       
   767               <type>
       
   768                 <INT/>
       
   769               </type>
       
   770             </variable>
       
   771           </inputVars>
       
   772           <outputVars>
       
   773             <variable name="Speed">
       
   774               <type>
       
   775                 <INT/>
       
   776               </type>
       
   777             </variable>
       
   778             <variable name="PumpSpeed">
       
   779               <type>
       
   780                 <INT/>
       
   781               </type>
       
   782             </variable>
       
   783             <variable name="Brakes">
       
   784               <type>
       
   785                 <BOOL/>
       
   786               </type>
       
   787             </variable>
       
   788             <variable name="Control_State">
       
   789               <type>
       
   790                 <BOOL/>
       
   791               </type>
       
   792             </variable>
       
   793           </outputVars>
       
   794         </interface>
       
   795         <body>
       
   796           <ST>
       
   797   IF Collision THEN
       
   798     Speed := 0;
       
   799     Brakes := ON;
       
   800   END_IF;
       
   801 
       
   802   IF (Gate = CLOSED) AND
       
   803       (Pump = ON) AND (Temp > 200.0) THEN
       
   804     Control_State := Active;
       
   805   ELSE
       
   806     Control_State := Hold;
       
   807     PumpSpeed := 10.0;
       
   808   END_IF;
       
   809           </ST>
       
   810         </body>
       
   811       </pou>
       
   812     </pous>
       
   813   </types>
       
   814   <instances>
       
   815     <configurations>
       
   816       <configuration name="ConfigTest">
       
   817         <resource name="ResourceTest">
       
   818           <task interval="10ms" name="Toto" priority="6">
       
   819             <pouInstance type="SFCTest" name="Program1"/>
       
   820           </task>
       
   821           <globalVars>
       
   822             <variable name="Titi" address="M30">
       
   823               <type>
       
   824                 <INT/>
       
   825               </type>
       
   826             </variable>
       
   827           </globalVars>
       
   828         </resource>
       
   829         <globalVars>
       
   830           <variable name="Toto" address="M10">
       
   831             <type>
       
   832               <INT/>
       
   833             </type>
       
   834           </variable>
       
   835           <variable name="Tutu" address="M20">
       
   836             <type>
       
   837               <BOOL/>
       
   838             </type>
       
   839           </variable>
       
   840         </globalVars>
       
   841       </configuration>
       
   842       <configuration name="ConfigTest2"/>
       
   843     </configurations>
       
   844   </instances>
       
   845 </project>