tests/python/plc.xml
changeset 881 68ac754a5a72
parent 862 bb59865db6e6
child 918 aa136ef12506
equal deleted inserted replaced
880:781ced3c0aef 881:68ac754a5a72
     6   <fileHeader companyName="beremiz"
     6   <fileHeader companyName="beremiz"
     7               productName="Beremiz"
     7               productName="Beremiz"
     8               productVersion="0.0"
     8               productVersion="0.0"
     9               creationDateTime="2008-12-14T16:21:19"/>
     9               creationDateTime="2008-12-14T16:21:19"/>
    10   <contentHeader name="Beremiz Python Support Tests"
    10   <contentHeader name="Beremiz Python Support Tests"
    11                  modificationDateTime="2012-10-23T00:54:38">
    11                  modificationDateTime="2012-11-15T18:38:58">
    12     <coordinateInfo>
    12     <coordinateInfo>
    13       <pageSize x="1024" y="1024"/>
    13       <pageSize x="1024" y="1024"/>
    14       <fbd>
    14       <fbd>
    15         <scaling x="5" y="5"/>
    15         <scaling x="5" y="5"/>
    16       </fbd>
    16       </fbd>
    38               </type>
    38               </type>
    39             </variable>
    39             </variable>
    40           </struct>
    40           </struct>
    41         </baseType>
    41         </baseType>
    42       </dataType>
    42       </dataType>
       
    43       <dataType name="StateMachine">
       
    44         <baseType>
       
    45           <enum>
       
    46             <values>
       
    47               <value name="STANDBY"/>
       
    48               <value name="START"/>
       
    49               <value name="STOP"/>
       
    50             </values>
       
    51           </enum>
       
    52         </baseType>
       
    53       </dataType>
    43     </dataTypes>
    54     </dataTypes>
    44     <pous>
    55     <pous>
    45       <pou name="main_pytest" pouType="program">
    56       <pou name="main_pytest" pouType="program">
    46         <interface>
    57         <interface>
    47           <localVars>
    58           <localVars>
   107             <variable name="FromInput">
   118             <variable name="FromInput">
   108               <type>
   119               <type>
   109                 <SINT/>
   120                 <SINT/>
   110               </type>
   121               </type>
   111             </variable>
   122             </variable>
       
   123             <variable name="Test_BCD">
       
   124               <type>
       
   125                 <WORD/>
       
   126               </type>
       
   127               <initialValue>
       
   128                 <simpleValue value="342"/>
       
   129               </initialValue>
       
   130             </variable>
       
   131             <variable name="Test_BCD_RESULT">
       
   132               <type>
       
   133                 <UINT/>
       
   134               </type>
       
   135             </variable>
       
   136             <variable name="Test_DT">
       
   137               <type>
       
   138                 <DT/>
       
   139               </type>
       
   140               <initialValue>
       
   141                 <simpleValue value="DT#2012-11-08-12:17:00"/>
       
   142               </initialValue>
       
   143             </variable>
       
   144             <variable name="Test_TOD">
       
   145               <type>
       
   146                 <TOD/>
       
   147               </type>
       
   148             </variable>
       
   149             <variable name="Test_Date">
       
   150               <type>
       
   151                 <DATE/>
       
   152               </type>
       
   153             </variable>
       
   154             <variable name="Test_String">
       
   155               <type>
       
   156                 <string/>
       
   157               </type>
       
   158             </variable>
       
   159             <variable name="Test_Bool">
       
   160               <type>
       
   161                 <BOOL/>
       
   162               </type>
       
   163             </variable>
   112           </localVars>
   164           </localVars>
       
   165           <externalVars>
       
   166             <variable name="Global_RS">
       
   167               <type>
       
   168                 <derived name="RS"/>
       
   169               </type>
       
   170             </variable>
       
   171           </externalVars>
   113         </interface>
   172         </interface>
   114         <body>
   173         <body>
   115           <FBD>
   174           <FBD>
   116             <inVariable localId="4" height="30" width="160">
   175             <inVariable localId="4" height="30" width="160">
   117               <position x="295" y="230"/>
   176               <position x="295" y="230"/>
   608               <position x="25" y="285"/>
   667               <position x="25" y="285"/>
   609               <content>
   668               <content>
   610 <![CDATA[Fast clock, at least faster that sleep(1). See what happens when python takes time to answer : PLC continues.]]>
   669 <![CDATA[Fast clock, at least faster that sleep(1). See what happens when python takes time to answer : PLC continues.]]>
   611               </content>
   670               </content>
   612             </comment>
   671             </comment>
       
   672             <outVariable localId="33" height="30" width="130">
       
   673               <position x="1060" y="740"/>
       
   674               <connectionPointIn>
       
   675                 <relPosition x="0" y="15"/>
       
   676                 <connection refLocalId="35" formalParameter="OUT">
       
   677                   <position x="1060" y="755"/>
       
   678                   <position x="1005" y="755"/>
       
   679                 </connection>
       
   680               </connectionPointIn>
       
   681               <expression>Test_BCD_RESULT</expression>
       
   682             </outVariable>
       
   683             <inVariable localId="34" height="30" width="75">
       
   684               <position x="785" y="740"/>
       
   685               <connectionPointOut>
       
   686                 <relPosition x="75" y="15"/>
       
   687               </connectionPointOut>
       
   688               <expression>Test_BCD</expression>
       
   689             </inVariable>
       
   690             <block localId="35" width="105" height="45" typeName="BCD_TO_UINT">
       
   691               <position x="900" y="725"/>
       
   692               <inputVariables>
       
   693                 <variable formalParameter="IN">
       
   694                   <connectionPointIn>
       
   695                     <relPosition x="0" y="30"/>
       
   696                     <connection refLocalId="34">
       
   697                       <position x="900" y="755"/>
       
   698                       <position x="860" y="755"/>
       
   699                     </connection>
       
   700                   </connectionPointIn>
       
   701                 </variable>
       
   702               </inputVariables>
       
   703               <inOutVariables/>
       
   704               <outputVariables>
       
   705                 <variable formalParameter="OUT">
       
   706                   <connectionPointOut>
       
   707                     <relPosition x="105" y="30"/>
       
   708                   </connectionPointOut>
       
   709                 </variable>
       
   710               </outputVariables>
       
   711             </block>
       
   712             <inVariable localId="36" height="30" width="65">
       
   713               <position x="790" y="815"/>
       
   714               <connectionPointOut>
       
   715                 <relPosition x="65" y="15"/>
       
   716               </connectionPointOut>
       
   717               <expression>Test_DT</expression>
       
   718             </inVariable>
       
   719             <block localId="37" width="255" height="45" typeName="DATE_AND_TIME_TO_TIME_OF_DAY">
       
   720               <position x="900" y="800"/>
       
   721               <inputVariables>
       
   722                 <variable formalParameter="IN">
       
   723                   <connectionPointIn>
       
   724                     <relPosition x="0" y="30"/>
       
   725                     <connection refLocalId="36">
       
   726                       <position x="900" y="830"/>
       
   727                       <position x="855" y="830"/>
       
   728                     </connection>
       
   729                   </connectionPointIn>
       
   730                 </variable>
       
   731               </inputVariables>
       
   732               <inOutVariables/>
       
   733               <outputVariables>
       
   734                 <variable formalParameter="OUT">
       
   735                   <connectionPointOut>
       
   736                     <relPosition x="255" y="30"/>
       
   737                   </connectionPointOut>
       
   738                 </variable>
       
   739               </outputVariables>
       
   740             </block>
       
   741             <block localId="38" width="195" height="45" typeName="DATE_AND_TIME_TO_DATE">
       
   742               <position x="900" y="875"/>
       
   743               <inputVariables>
       
   744                 <variable formalParameter="IN">
       
   745                   <connectionPointIn>
       
   746                     <relPosition x="0" y="30"/>
       
   747                     <connection refLocalId="36">
       
   748                       <position x="900" y="905"/>
       
   749                       <position x="877" y="905"/>
       
   750                       <position x="877" y="830"/>
       
   751                       <position x="855" y="830"/>
       
   752                     </connection>
       
   753                   </connectionPointIn>
       
   754                 </variable>
       
   755               </inputVariables>
       
   756               <inOutVariables/>
       
   757               <outputVariables>
       
   758                 <variable formalParameter="OUT">
       
   759                   <connectionPointOut>
       
   760                     <relPosition x="195" y="30"/>
       
   761                   </connectionPointOut>
       
   762                 </variable>
       
   763               </outputVariables>
       
   764             </block>
       
   765             <outVariable localId="39" height="30" width="75">
       
   766               <position x="1215" y="815"/>
       
   767               <connectionPointIn>
       
   768                 <relPosition x="0" y="15"/>
       
   769                 <connection refLocalId="37" formalParameter="OUT">
       
   770                   <position x="1215" y="830"/>
       
   771                   <position x="1155" y="830"/>
       
   772                 </connection>
       
   773               </connectionPointIn>
       
   774               <expression>Test_TOD</expression>
       
   775             </outVariable>
       
   776             <outVariable localId="40" height="30" width="80">
       
   777               <position x="1215" y="890"/>
       
   778               <connectionPointIn>
       
   779                 <relPosition x="0" y="15"/>
       
   780                 <connection refLocalId="38" formalParameter="OUT">
       
   781                   <position x="1215" y="905"/>
       
   782                   <position x="1095" y="905"/>
       
   783                 </connection>
       
   784               </connectionPointIn>
       
   785               <expression>Test_Date</expression>
       
   786             </outVariable>
       
   787             <outVariable localId="42" height="30" width="90">
       
   788               <position x="1100" y="985"/>
       
   789               <connectionPointIn>
       
   790                 <relPosition x="0" y="15"/>
       
   791                 <connection refLocalId="46" formalParameter="OUT">
       
   792                   <position x="1100" y="1000"/>
       
   793                   <position x="1030" y="1000"/>
       
   794                 </connection>
       
   795               </connectionPointIn>
       
   796               <expression>Test_String</expression>
       
   797             </outVariable>
       
   798             <outVariable localId="43" height="30" width="80">
       
   799               <position x="1100" y="1055"/>
       
   800               <connectionPointIn>
       
   801                 <relPosition x="0" y="15"/>
       
   802                 <connection refLocalId="44" formalParameter="OUT">
       
   803                   <position x="1100" y="1070"/>
       
   804                   <position x="1035" y="1070"/>
       
   805                 </connection>
       
   806               </connectionPointIn>
       
   807               <expression>Test_Bool</expression>
       
   808             </outVariable>
       
   809             <block localId="44" width="135" height="45" typeName="STRING_TO_BOOL">
       
   810               <position x="900" y="1040"/>
       
   811               <inputVariables>
       
   812                 <variable formalParameter="IN">
       
   813                   <connectionPointIn>
       
   814                     <relPosition x="0" y="30"/>
       
   815                     <connection refLocalId="45">
       
   816                       <position x="900" y="1070"/>
       
   817                       <position x="850" y="1070"/>
       
   818                     </connection>
       
   819                   </connectionPointIn>
       
   820                 </variable>
       
   821               </inputVariables>
       
   822               <inOutVariables/>
       
   823               <outputVariables>
       
   824                 <variable formalParameter="OUT">
       
   825                   <connectionPointOut>
       
   826                     <relPosition x="135" y="30"/>
       
   827                   </connectionPointOut>
       
   828                 </variable>
       
   829               </outputVariables>
       
   830             </block>
       
   831             <inVariable localId="45" height="30" width="55">
       
   832               <position x="795" y="1055"/>
       
   833               <connectionPointOut>
       
   834                 <relPosition x="55" y="15"/>
       
   835               </connectionPointOut>
       
   836               <expression>'True'</expression>
       
   837             </inVariable>
       
   838             <block localId="46" width="130" height="45" typeName="BYTE_TO_STRING">
       
   839               <position x="900" y="970"/>
       
   840               <inputVariables>
       
   841                 <variable formalParameter="IN">
       
   842                   <connectionPointIn>
       
   843                     <relPosition x="0" y="30"/>
       
   844                     <connection refLocalId="47">
       
   845                       <position x="900" y="1000"/>
       
   846                       <position x="850" y="1000"/>
       
   847                     </connection>
       
   848                   </connectionPointIn>
       
   849                 </variable>
       
   850               </inputVariables>
       
   851               <inOutVariables/>
       
   852               <outputVariables>
       
   853                 <variable formalParameter="OUT">
       
   854                   <connectionPointOut>
       
   855                     <relPosition x="130" y="30"/>
       
   856                   </connectionPointOut>
       
   857                 </variable>
       
   858               </outputVariables>
       
   859             </block>
       
   860             <inVariable localId="47" height="30" width="80">
       
   861               <position x="770" y="985"/>
       
   862               <connectionPointOut>
       
   863                 <relPosition x="80" y="15"/>
       
   864               </connectionPointOut>
       
   865               <expression>BYTE#145</expression>
       
   866             </inVariable>
       
   867             <inVariable localId="50" height="30" width="105">
       
   868               <position x="200" y="1085"/>
       
   869               <connectionPointOut>
       
   870                 <relPosition x="105" y="15"/>
       
   871               </connectionPointOut>
       
   872               <expression>Global_RS.Q1</expression>
       
   873             </inVariable>
       
   874             <block localId="51" width="70" height="85" typeName="AND">
       
   875               <position x="365" y="1065"/>
       
   876               <inputVariables>
       
   877                 <variable formalParameter="IN1" negated="true">
       
   878                   <connectionPointIn>
       
   879                     <relPosition x="0" y="35"/>
       
   880                     <connection refLocalId="50">
       
   881                       <position x="365" y="1100"/>
       
   882                       <position x="305" y="1100"/>
       
   883                     </connection>
       
   884                   </connectionPointIn>
       
   885                 </variable>
       
   886                 <variable formalParameter="IN2">
       
   887                   <connectionPointIn>
       
   888                     <relPosition x="0" y="70"/>
       
   889                     <connection refLocalId="52">
       
   890                       <position x="365" y="1135"/>
       
   891                       <position x="305" y="1135"/>
       
   892                     </connection>
       
   893                   </connectionPointIn>
       
   894                 </variable>
       
   895               </inputVariables>
       
   896               <inOutVariables/>
       
   897               <outputVariables>
       
   898                 <variable formalParameter="OUT">
       
   899                   <connectionPointOut>
       
   900                     <relPosition x="70" y="35"/>
       
   901                   </connectionPointOut>
       
   902                 </variable>
       
   903               </outputVariables>
       
   904             </block>
       
   905             <inVariable localId="52" height="30" width="95">
       
   906               <position x="210" y="1120"/>
       
   907               <connectionPointOut>
       
   908                 <relPosition x="95" y="15"/>
       
   909               </connectionPointOut>
       
   910               <expression>BOOL#TRUE</expression>
       
   911             </inVariable>
       
   912             <outVariable localId="13" height="30" width="105">
       
   913               <position x="510" y="1085"/>
       
   914               <connectionPointIn>
       
   915                 <relPosition x="0" y="15"/>
       
   916                 <connection refLocalId="51" formalParameter="OUT">
       
   917                   <position x="510" y="1100"/>
       
   918                   <position x="435" y="1100"/>
       
   919                 </connection>
       
   920               </connectionPointIn>
       
   921               <expression>Global_RS.S</expression>
       
   922             </outVariable>
       
   923             <outVariable localId="20" height="30" width="105">
       
   924               <position x="510" y="1200"/>
       
   925               <connectionPointIn>
       
   926                 <relPosition x="0" y="15"/>
       
   927                 <connection refLocalId="41" formalParameter="OUT">
       
   928                   <position x="510" y="1215"/>
       
   929                   <position x="435" y="1215"/>
       
   930                 </connection>
       
   931               </connectionPointIn>
       
   932               <expression>Global_RS.R1</expression>
       
   933             </outVariable>
       
   934             <inVariable localId="24" height="30" width="105">
       
   935               <position x="200" y="1200"/>
       
   936               <connectionPointOut>
       
   937                 <relPosition x="105" y="15"/>
       
   938               </connectionPointOut>
       
   939               <expression>Global_RS.Q1</expression>
       
   940             </inVariable>
       
   941             <block localId="41" width="70" height="85" typeName="OR">
       
   942               <position x="365" y="1180"/>
       
   943               <inputVariables>
       
   944                 <variable formalParameter="IN1">
       
   945                   <connectionPointIn>
       
   946                     <relPosition x="0" y="35"/>
       
   947                     <connection refLocalId="24">
       
   948                       <position x="365" y="1215"/>
       
   949                       <position x="305" y="1215"/>
       
   950                     </connection>
       
   951                   </connectionPointIn>
       
   952                 </variable>
       
   953                 <variable formalParameter="IN2">
       
   954                   <connectionPointIn>
       
   955                     <relPosition x="0" y="70"/>
       
   956                     <connection refLocalId="48">
       
   957                       <position x="365" y="1250"/>
       
   958                       <position x="305" y="1250"/>
       
   959                     </connection>
       
   960                   </connectionPointIn>
       
   961                 </variable>
       
   962               </inputVariables>
       
   963               <inOutVariables/>
       
   964               <outputVariables>
       
   965                 <variable formalParameter="OUT">
       
   966                   <connectionPointOut>
       
   967                     <relPosition x="70" y="35"/>
       
   968                   </connectionPointOut>
       
   969                 </variable>
       
   970               </outputVariables>
       
   971             </block>
       
   972             <inVariable localId="48" height="30" width="100">
       
   973               <position x="205" y="1235"/>
       
   974               <connectionPointOut>
       
   975                 <relPosition x="100" y="15"/>
       
   976               </connectionPointOut>
       
   977               <expression>BOOL#FALSE</expression>
       
   978             </inVariable>
   613           </FBD>
   979           </FBD>
   614         </body>
   980         </body>
   615       </pou>
   981       </pou>
   616       <pou name="C_Pragma" pouType="functionBlock">
   982       <pou name="C_Pragma" pouType="functionBlock">
   617         <interface>
   983         <interface>
   666               <type>
  1032               <type>
   667                 <derived name="CPLX_TYPE"/>
  1033                 <derived name="CPLX_TYPE"/>
   668               </type>
  1034               </type>
   669             </variable>
  1035             </variable>
   670           </localVars>
  1036           </localVars>
       
  1037           <externalVars>
       
  1038             <variable name="Global_RS">
       
  1039               <type>
       
  1040                 <derived name="RS"/>
       
  1041               </type>
       
  1042             </variable>
       
  1043           </externalVars>
   671         </interface>
  1044         </interface>
   672         <body>
  1045         <body>
   673           <ST>
  1046           <ST>
   674 <![CDATA[(* hereafter is a C pragma accessing FB interface in a clean way *)
  1047 <![CDATA[(* hereafter is a C pragma accessing FB interface in a clean way *)
   675 {{
  1048 {{
   684     SetFbVar(SMURF, somebyte, .FIRSTBYTE);
  1057     SetFbVar(SMURF, somebyte, .FIRSTBYTE);
   685     SetFbVar(COORDS, somebyte, .table[4]);
  1058     SetFbVar(COORDS, somebyte, .table[4]);
   686   }
  1059   }
   687 }}
  1060 }}
   688 (* If you do not use __GET_VAR and _SET_VAR macro, expect unexpected *)
  1061 (* If you do not use __GET_VAR and _SET_VAR macro, expect unexpected *)
       
  1062 Global_RS();
   689 ]]>
  1063 ]]>
   690           </ST>
  1064           </ST>
   691         </body>
  1065         </body>
   692       </pou>
  1066       </pou>
   693     </pous>
  1067     </pous>
   694   </types>
  1068   </types>
   695   <instances>
  1069   <instances>
   696     <configurations>
  1070     <configurations>
   697       <configuration name="conf_pytest">
  1071       <configuration name="conf_pytest">
   698         <resource name="res_pytest">
  1072         <resource name="res_pytest">
   699           <task name="pytest_task" interval="t#100ms" priority="0"/>
  1073           <task name="pytest_task" interval="T#1ms" priority="0"/>
   700           <pouInstance name="pytest_instance" typeName="main_pytest"/>
  1074           <pouInstance name="pytest_instance" typeName="main_pytest"/>
   701         </resource>
  1075         </resource>
       
  1076         <globalVars>
       
  1077           <variable name="Global_RS">
       
  1078             <type>
       
  1079               <derived name="RS"/>
       
  1080             </type>
       
  1081           </variable>
       
  1082         </globalVars>
   702       </configuration>
  1083       </configuration>
   703     </configurations>
  1084     </configurations>
   704   </instances>
  1085   </instances>
   705 </project>
  1086 </project>