examples/example.xml
changeset 67 3a1b0afdaf84
parent 58 39cd981ff242
child 68 66308e07402c
--- a/examples/example.xml	Thu Aug 09 18:06:54 2007 +0200
+++ b/examples/example.xml	Thu Aug 09 18:07:44 2007 +0200
@@ -55,6 +55,13 @@
               </type>
             </variable>
           </outputVars>
+          <localVars>
+            <variable name="SR1">
+              <type>
+                <derived name="SR"/>
+              </type>
+            </variable>
+          </localVars>
         </interface>
         <body>
           <FBD>
@@ -78,15 +85,15 @@
                 <relPosition y="16" x="0"/>
                 <connection refLocalId="11" formalParameter="Q1">
                   <position y="198" x="587"/>
-                  <position y="198" x="517"/>
+                  <position y="198" x="523"/>
                 </connection>
               </connectionPointIn>
               <expression>OUT</expression>
             </outVariable>
-            <block localId="6" height="84" width="99" typeName="AND">
+            <block localId="6" height="84" width="99" instanceName="" typeName="AND">
               <position y="105" x="235"/>
               <inputVariables>
-                <variable formalParameter="" edge="rising">
+                <variable formalParameter="IN1" edge="rising">
                   <connectionPointIn>
                     <relPosition y="36" x="0"/>
                     <connection refLocalId="2">
@@ -97,7 +104,7 @@
                     </connection>
                   </connectionPointIn>
                 </variable>
-                <variable formalParameter="">
+                <variable formalParameter="IN2">
                   <connectionPointIn>
                     <relPosition y="68" x="0"/>
                     <connection refLocalId="3">
@@ -111,7 +118,7 @@
               </inputVariables>
               <inOutVariables/>
               <outputVariables>
-                <variable formalParameter="" negated="true">
+                <variable formalParameter="OUT" negated="true">
                   <connectionPointOut>
                     <relPosition y="36" x="99"/>
                   </connectionPointOut>
@@ -125,7 +132,7 @@
               </connectionPointOut>
               <expression>IN3</expression>
             </inVariable>
-            <block localId="8" height="87" width="99" typeName="OR">
+            <block localId="8" height="87" width="99" instanceName="" typeName="OR">
               <position y="246" x="235"/>
               <inputVariables>
                 <variable formalParameter="IN1" negated="true">
@@ -162,29 +169,29 @@
             </block>
             <comment localId="10" height="37" width="261">
               <position y="32" x="243"/>
-              <content>POU qui sert a tester PLCOpenEditor.</content>
+              <content><![CDATA[POU used for testing PLCOpenEditor.]]></content>
             </comment>
-            <block localId="11" height="91" width="97" instanceName="SR1" typeName="SR">
-              <position y="161" x="420"/>
+            <block localId="11" height="97" width="105" instanceName="SR1" typeName="SR">
+              <position y="159" x="418"/>
               <inputVariables>
                 <variable formalParameter="S1">
                   <connectionPointIn>
-                    <relPosition y="37" x="0"/>
+                    <relPosition y="39" x="0"/>
                     <connection refLocalId="6" formalParameter="OUT">
-                      <position y="198" x="420"/>
-                      <position y="198" x="369"/>
-                      <position y="141" x="369"/>
+                      <position y="198" x="418"/>
+                      <position y="198" x="376"/>
+                      <position y="141" x="376"/>
                       <position y="141" x="334"/>
                     </connection>
                   </connectionPointIn>
                 </variable>
                 <variable formalParameter="R">
                   <connectionPointIn>
-                    <relPosition y="72" x="0"/>
+                    <relPosition y="77" x="0"/>
                     <connection refLocalId="8" formalParameter="OUT">
-                      <position y="233" x="420"/>
-                      <position y="233" x="369"/>
-                      <position y="282" x="369"/>
+                      <position y="236" x="418"/>
+                      <position y="236" x="376"/>
+                      <position y="282" x="376"/>
                       <position y="282" x="334"/>
                     </connection>
                   </connectionPointIn>
@@ -194,7 +201,7 @@
               <outputVariables>
                 <variable formalParameter="Q1">
                   <connectionPointOut>
-                    <relPosition y="37" x="97"/>
+                    <relPosition y="39" x="105"/>
                   </connectionPointOut>
                 </variable>
               </outputVariables>
@@ -234,7 +241,7 @@
           <LD>
             <comment localId="1" height="40" width="600">
               <position y="10" x="10"/>
-              <content>Commentaire</content>
+              <content><![CDATA[Comment]]></content>
             </comment>
             <leftPowerRail localId="2" height="80" width="2">
               <position y="60" x="10"/>
@@ -385,6 +392,7 @@
         </interface>
         <body>
           <IL>
+<![CDATA[
      LD   Y1
      SUB  Y2     (* Substract Y2 from Y1 *)
      ST   Temp   (* Store Y1-Y2 in Temp *)
@@ -401,6 +409,7 @@
      S    ERROR  (* Set ERROR *)
      RET         (* Normal return *)
 ERR: RET         (* Error return, ENO not set *)
+]]>
           </IL>
         </body>
       </pou>
@@ -438,11 +447,13 @@
           <action name="ACT1">
             <body>
               <ST>
+<![CDATA[
 IF IN1 THEN
   IN2 := 1;
 ELSE
   IN3 := 1;
 END_IF;
+]]>
               </ST>
             </body>
           </action>
@@ -450,7 +461,156 @@
         <transitions>
           <transition name="TR1">
             <body>
-              <ST>:= AND(IN1, IN2, IN3);</ST>
+              <ST><![CDATA[:= AND(IN1, IN2, IN3);]]></ST>
+            </body>
+          </transition>
+          <transition name="TR2">
+            <body>
+              <FBD>
+                <block localId="1" height="82" width="107" typeName="AND">
+                  <position y="61" x="160"/>
+                  <inputVariables>
+                    <variable formalParameter="IN1">
+                      <connectionPointIn>
+                        <relPosition y="35" x="0"/>
+                        <connection refLocalId="2">
+                          <position y="96" x="160"/>
+                          <position y="96" x="120"/>
+                          <position y="72" x="120"/>
+                          <position y="72" x="81"/>
+                        </connection>
+                      </connectionPointIn>
+                    </variable>
+                    <variable formalParameter="IN2">
+                      <connectionPointIn>
+                        <relPosition y="66" x="0"/>
+                        <connection refLocalId="3">
+                          <position y="127" x="160"/>
+                          <position y="127" x="120"/>
+                          <position y="153" x="120"/>
+                          <position y="153" x="81"/>
+                        </connection>
+                      </connectionPointIn>
+                    </variable>
+                  </inputVariables>
+                  <inOutVariables/>
+                  <outputVariables>
+                    <variable formalParameter="OUT">
+                      <connectionPointOut>
+                        <relPosition y="35" x="107"/>
+                      </connectionPointOut>
+                    </variable>
+                  </outputVariables>
+                </block>
+                <inVariable localId="2" width="54" height="27">
+                  <position y="59" x="27"/>
+                  <connectionPointOut>
+                    <relPosition y="13" x="54"/>
+                  </connectionPointOut>
+                  <expression>IN1</expression>
+                </inVariable>
+                <inVariable localId="3" width="53" height="27">
+                  <position y="140" x="28"/>
+                  <connectionPointOut>
+                    <relPosition y="13" x="53"/>
+                  </connectionPointOut>
+                  <expression>IN2</expression>
+                </inVariable>
+                <outVariable localId="4" width="57" height="27">
+                  <position y="83" x="351"/>
+                  <connectionPointIn>
+                    <relPosition y="13" x="0"/>
+                    <connection refLocalId="1" formalParameter="OUT">
+                      <position y="96" x="351"/>
+                      <position y="96" x="267"/>
+                    </connection>
+                  </connectionPointIn>
+                  <expression>TR2</expression>
+                </outVariable>
+              </FBD>
+            </body>
+          </transition>
+          <transition name="TR3">
+            <body>
+              <LD>
+                <leftPowerRail localId="1" height="98" width="2">
+                  <position y="20" x="31"/>
+                  <connectionPointOut formalParameter="">
+                    <relPosition y="20" x="2"/>
+                  </connectionPointOut>
+                  <connectionPointOut formalParameter="">
+                    <relPosition y="64" x="2"/>
+                  </connectionPointOut>
+                </leftPowerRail>
+                <contact localId="2" width="21" height="15" edge="none" negated="false">
+                  <position y="32" x="72"/>
+                  <connectionPointIn>
+                    <relPosition y="8" x="0"/>
+                    <connection refLocalId="1">
+                      <position y="40" x="72"/>
+                      <position y="40" x="33"/>
+                    </connection>
+                  </connectionPointIn>
+                  <connectionPointOut>
+                    <relPosition y="8" x="21"/>
+                  </connectionPointOut>
+                  <variable>IN2</variable>
+                </contact>
+                <contact localId="3" width="21" height="15" edge="rising" negated="false">
+                  <position y="76" x="72"/>
+                  <connectionPointIn>
+                    <relPosition y="8" x="0"/>
+                    <connection refLocalId="1">
+                      <position y="84" x="72"/>
+                      <position y="84" x="33"/>
+                    </connection>
+                  </connectionPointIn>
+                  <connectionPointOut>
+                    <relPosition y="8" x="21"/>
+                  </connectionPointOut>
+                  <variable>IN5</variable>
+                </contact>
+                <coil localId="4" width="21" storage="none" height="15" negated="true">
+                  <position y="32" x="208"/>
+                  <connectionPointIn>
+                    <relPosition y="8" x="0"/>
+                    <connection refLocalId="2">
+                      <position y="40" x="208"/>
+                      <position y="40" x="93"/>
+                    </connection>
+                    <connection refLocalId="3">
+                      <position y="40" x="208"/>
+                      <position y="40" x="131"/>
+                      <position y="84" x="131"/>
+                      <position y="84" x="93"/>
+                    </connection>
+                  </connectionPointIn>
+                  <connectionPointOut>
+                    <relPosition y="8" x="21"/>
+                  </connectionPointOut>
+                  <variable>TR3</variable>
+                </coil>
+                <rightPowerRail localId="5" height="40" width="2">
+                  <position y="19" x="271"/>
+                  <connectionPointIn>
+                    <relPosition y="21" x="0"/>
+                    <connection refLocalId="4">
+                      <position y="40" x="271"/>
+                      <position y="40" x="229"/>
+                    </connection>
+                  </connectionPointIn>
+                </rightPowerRail>
+              </LD>
+            </body>
+          </transition>
+          <transition name="TR4">
+            <body>
+              <IL>
+<![CDATA[
+    LD  IN3
+    AND IN4
+]]>
+              </IL>
             </body>
           </transition>
         </transitions>
@@ -527,7 +687,7 @@
               </connectionPointOut>
               <condition>
                 <inline name="">
-                  <ST>IN2 AND IN3</ST>
+                  <ST><![CDATA[IN2 AND IN3]]></ST>
                 </inline>
               </condition>
             </transition>
@@ -557,9 +717,7 @@
                 <relPosition y="2" x="10"/>
               </connectionPointOut>
               <condition>
-                <inline name="">
-                  <ST>IN3</ST>
-                </inline>
+                <reference name="TR2"/>
               </condition>
             </transition>
             <step localId="8" height="27" width="48" initialStep="false" name="Step2">
@@ -588,9 +746,7 @@
                 <relPosition y="2" x="10"/>
               </connectionPointOut>
               <condition>
-                <inline name="">
-                  <ST>IN4</ST>
-                </inline>
+                <reference name="TR4"/>
               </condition>
             </transition>
             <step localId="10" height="27" width="48" initialStep="false" name="Step3">
@@ -622,9 +778,7 @@
                 <relPosition y="2" x="10"/>
               </connectionPointOut>
               <condition>
-                <inline name="">
-                  <ST>IN5</ST>
-                </inline>
+                <reference name="TR3"/>
               </condition>
             </transition>
             <jumpStep localId="12" height="13" width="12" targetName="Start">
@@ -664,7 +818,7 @@
               </connectionPointOut>
               <condition>
                 <inline name="">
-                  <ST>IN5</ST>
+                  <ST><![CDATA[IN5]]></ST>
                 </inline>
               </condition>
             </transition>
@@ -682,7 +836,7 @@
               </connectionPointOut>
               <condition>
                 <inline name="">
-                  <ST>IN5</ST>
+                  <ST><![CDATA[IN5]]></ST>
                 </inline>
               </condition>
             </transition>
@@ -733,7 +887,7 @@
               </action>
               <action qualifier="P">
                 <inline>
-                  <ST>IN2 := TRUE;</ST>
+                  <ST><![CDATA[IN2 := TRUE;]]></ST>
                 </inline>
               </action>
             </actionBlock>
@@ -838,6 +992,7 @@
         </interface>
         <body>
           <ST>
+<![CDATA[
 IF Collision THEN
   Speed := 0;
   Brakes := TRUE;
@@ -851,6 +1006,7 @@
 
   PumpSpeed := 10.0;
 END_IF;
+]]>
           </ST>
         </body>
       </pou>