Laurent@2086: <?xml version="1.0" encoding="UTF-8"?> Laurent@2086: <project xmlns="http://www.plcopen.org/xml/tc6.xsd" Laurent@2086: xsi:schemaLocation="http://www.plcopen.org/xml/tc6.xsd" Laurent@2086: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Laurent@2086: xmlns:xhtml="http://www.w3.org/1999/xhtml"> Laurent@2086: <fileHeader companyName="EtherlabMaster" Laurent@2086: productName="EtherlabMaster" Laurent@2086: productVersion="1" Laurent@2086: creationDateTime="2012-10-22T12:12:45"/> Laurent@2086: <contentHeader name="EtherlabMaster SDO Blocks" Laurent@2092: modificationDateTime="2012-11-13T18:03:39"> Laurent@2086: <coordinateInfo> Laurent@2086: <fbd> Laurent@2086: <scaling x="0" y="0"/> Laurent@2086: </fbd> Laurent@2086: <ld> Laurent@2086: <scaling x="0" y="0"/> Laurent@2086: </ld> Laurent@2086: <sfc> Laurent@2086: <scaling x="0" y="0"/> Laurent@2086: </sfc> Laurent@2086: </coordinateInfo> Laurent@2086: </contentHeader> Laurent@2086: <types> Laurent@2086: <dataTypes/> Laurent@2086: <pous> Laurent@2086: <pou name="EtherLabSDOUpload" pouType="functionBlock"> Laurent@2086: <interface> Laurent@2086: <inputVars> Laurent@2086: <variable name="EXECUTE"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="POS"> Laurent@2086: <type> Laurent@2086: <INT/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="INDEX"> Laurent@2086: <type> Laurent@2086: <UINT/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="SUBINDEX"> Laurent@2086: <type> Laurent@2086: <USINT/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="VARTYPE"> Laurent@2086: <type> Laurent@2086: <string/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: </inputVars> Laurent@2086: <outputVars> Laurent@2086: <variable name="ACK"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="VALID"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="VALUE"> Laurent@2086: <type> Laurent@2086: <string/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: </outputVars> Laurent@2086: <localVars> Laurent@2086: <variable name="PY0"> Laurent@2086: <type> Laurent@2086: <derived name="python_eval"/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="PY1"> Laurent@2086: <type> Laurent@2086: <derived name="python_eval"/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="EXECUTE0"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="STATE"> Laurent@2086: <type> Laurent@2086: <INT/> Laurent@2086: </type> Laurent@2086: <initialValue> Laurent@2086: <simpleValue value="0"/> Laurent@2086: </initialValue> Laurent@2086: </variable> Laurent@2086: </localVars> Laurent@2086: </interface> Laurent@2086: <body> Laurent@2086: <ST> Laurent@2086: <![CDATA[{extern int AcquireSDOLock();} Laurent@2086: {extern int HasAnswer();} Laurent@2086: {extern void ReleaseSDOLock();} Laurent@2086: CASE STATE OF Laurent@2086: 0: Laurent@2086: IF EXECUTE AND NOT EXECUTE0 THEN Laurent@2086: STATE := 1; Laurent@2086: ACK := 0; Laurent@2086: VALID := 0; Laurent@2086: VALUE := 'None'; Laurent@2086: END_IF; Laurent@2086: 1: Edouard@2164: {if (AcquireSDOLock()) __SET_VAR(data__->,STATE,, 2)} Laurent@2086: 2: Laurent@2086: IF PY0.ACK THEN Laurent@2086: STATE := 3; Laurent@2086: END_IF; Laurent@2086: 3: Edouard@2164: {if (HasAnswer()) __SET_VAR(data__->,STATE,, 4)} Laurent@2086: 4: Laurent@2086: IF PY1.ACK THEN Laurent@2086: ACK := 1; Laurent@2086: VALUE := PY1.RESULT; Laurent@2086: VALID := NE(VALUE, 'None'); Laurent@2086: STATE := 0; Laurent@2086: {ReleaseSDOLock();} Laurent@2086: END_IF; Laurent@2086: ELSE Laurent@2086: STATE := 0; Laurent@2086: END_CASE; Laurent@2086: Laurent@2086: EXECUTE0 := EXECUTE; Laurent@2086: PY0(TRIG := STATE = 2, Laurent@2086: CODE := CONCAT('EthercatSDOUpload(', Laurent@2086: INT_TO_STRING(POS), Laurent@2086: ',', Laurent@2086: UINT_TO_STRING(INDEX), Laurent@2086: ',', Laurent@2086: USINT_TO_STRING(SUBINDEX), Laurent@2086: ',"', Laurent@2086: VARTYPE, Laurent@2086: '")')); Laurent@2086: PY1(TRIG := STATE = 4, Laurent@2086: CODE := 'GetResult()'); Laurent@2086: ]]> Laurent@2086: </ST> Laurent@2086: </body> Laurent@2086: </pou> Laurent@2086: <pou name="EtherLabSDODownload" pouType="functionBlock"> Laurent@2086: <interface> Laurent@2086: <inputVars> Laurent@2086: <variable name="EXECUTE"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="POS"> Laurent@2086: <type> Laurent@2086: <INT/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="INDEX"> Laurent@2086: <type> Laurent@2086: <UINT/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="SUBINDEX"> Laurent@2086: <type> Laurent@2086: <USINT/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="VARTYPE"> Laurent@2086: <type> Laurent@2086: <string/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="VALUE"> Laurent@2086: <type> Laurent@2086: <string/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: </inputVars> Laurent@2086: <outputVars> Laurent@2086: <variable name="ACK"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="ERROR"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: </outputVars> Laurent@2086: <localVars> Laurent@2086: <variable name="PY0"> Laurent@2086: <type> Laurent@2086: <derived name="python_eval"/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="PY1"> Laurent@2086: <type> Laurent@2086: <derived name="python_eval"/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="EXECUTE0"> Laurent@2086: <type> Laurent@2086: <BOOL/> Laurent@2086: </type> Laurent@2086: </variable> Laurent@2086: <variable name="STATE"> Laurent@2086: <type> Laurent@2086: <INT/> Laurent@2086: </type> Laurent@2086: <initialValue> Laurent@2086: <simpleValue value="0"/> Laurent@2086: </initialValue> Laurent@2086: </variable> Laurent@2086: </localVars> Laurent@2086: </interface> Laurent@2086: <body> Laurent@2086: <ST> Laurent@2086: <![CDATA[{extern int AcquireSDOLock();} Laurent@2086: {extern int HasAnswer();} Laurent@2086: {extern void ReleaseSDOLock();} Laurent@2086: CASE STATE OF Laurent@2086: 0: Laurent@2086: IF EXECUTE AND NOT EXECUTE0 THEN Laurent@2086: STATE := 1; Laurent@2086: ACK := 0; Laurent@2086: ERROR := 0; Laurent@2086: END_IF; Laurent@2086: 1: Edouard@2164: {if (AcquireSDOLock()) __SET_VAR(data__->,STATE,, 2)} Laurent@2086: 2: Laurent@2086: IF PY0.ACK THEN Laurent@2086: STATE := 3; Laurent@2086: END_IF; Laurent@2086: 3: Edouard@2164: {if (HasAnswer()) __SET_VAR(data__->,STATE,, 4)} Laurent@2086: 4: Laurent@2086: IF PY1.ACK THEN Laurent@2086: ACK := 1; Laurent@2086: ERROR := EQ(PY1.RESULT, 'False'); Laurent@2086: STATE := 0; Laurent@2086: {ReleaseSDOLock();} Laurent@2086: END_IF; Laurent@2086: ELSE Laurent@2086: STATE := 0; Laurent@2086: END_CASE; Laurent@2086: EXECUTE0 := EXECUTE; Laurent@2086: PY0(TRIG := STATE = 2, Laurent@2086: CODE := CONCAT('EthercatSDODownload(', Laurent@2086: INT_TO_STRING(POS), Laurent@2086: ',', Laurent@2086: UINT_TO_STRING(INDEX), Laurent@2086: ',', Laurent@2086: USINT_TO_STRING(SUBINDEX), Laurent@2086: ',"', Laurent@2086: VARTYPE, Laurent@2086: '",', Laurent@2086: VALUE, Laurent@2086: ')')); Laurent@2086: PY1(TRIG := STATE = 4, Laurent@2086: CODE := 'GetResult()'); Laurent@2086: ]]> Laurent@2086: </ST> Laurent@2086: </body> Laurent@2086: </pou> Laurent@2092: <pou name="EtherLabSetTorqueLimit" pouType="functionBlock"> Laurent@2092: <interface> Laurent@2092: <inputVars> Laurent@2092: <variable name="Pos"> Laurent@2092: <type> Laurent@2092: <INT/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="Execute"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="TorqueLimitPos"> Laurent@2092: <type> Laurent@2092: <UINT/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="TorqueLimitNeg"> Laurent@2092: <type> Laurent@2092: <UINT/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: </inputVars> Laurent@2092: <outputVars> Laurent@2092: <variable name="Done"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="Busy"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="Error"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="ErrorID"> Laurent@2092: <type> Laurent@2092: <WORD/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: </outputVars> Laurent@2092: <localVars> Laurent@2092: <variable name="EtherLabSDOUpload0"> Laurent@2092: <type> Laurent@2092: <derived name="EtherLabSDODownload"/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="EtherLabSDOUpload1"> Laurent@2092: <type> Laurent@2092: <derived name="EtherLabSDODownload"/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="RS0"> Laurent@2092: <type> Laurent@2092: <derived name="RS"/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: </localVars> Laurent@2092: </interface> Laurent@2092: <body> Laurent@2092: <FBD> Laurent@2092: <block localId="1" width="168" height="238" typeName="EtherLabSDODownload" instanceName="EtherLabSDOUpload0"> Laurent@2092: <position x="479" y="70"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="EXECUTE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="38"/> Laurent@2092: <connection refLocalId="3"> Laurent@2092: <position x="479" y="108"/> Laurent@2092: <position x="111" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="POS"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="74"/> Laurent@2092: <connection refLocalId="4"> Laurent@2092: <position x="479" y="144"/> Laurent@2092: <position x="423" y="144"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="INDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="110"/> Laurent@2092: <connection refLocalId="6"> Laurent@2092: <position x="479" y="180"/> Laurent@2092: <position x="423" y="180"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="SUBINDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="146"/> Laurent@2092: <connection refLocalId="8"> Laurent@2092: <position x="479" y="216"/> Laurent@2092: <position x="423" y="216"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VARTYPE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="182"/> Laurent@2092: <connection refLocalId="10"> Laurent@2092: <position x="479" y="252"/> Laurent@2092: <position x="423" y="252"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VALUE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="218"/> Laurent@2092: <connection refLocalId="25" formalParameter="OUT"> Laurent@2092: <position x="479" y="288"/> Laurent@2092: <position x="450" y="288"/> Laurent@2092: <position x="450" y="306"/> Laurent@2092: <position x="422" y="306"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="ACK"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="168" y="38"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="ERROR"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="168" y="74"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <block localId="2" width="168" height="264" typeName="EtherLabSDODownload" instanceName="EtherLabSDOUpload1"> Laurent@2092: <position x="482" y="351"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="EXECUTE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="40"/> Laurent@2092: <connection refLocalId="3"> Laurent@2092: <position x="482" y="391"/> Laurent@2092: <position x="131" y="391"/> Laurent@2092: <position x="131" y="108"/> Laurent@2092: <position x="111" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="POS"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="80"/> Laurent@2092: <connection refLocalId="5"> Laurent@2092: <position x="482" y="431"/> Laurent@2092: <position x="431" y="431"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="INDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="120"/> Laurent@2092: <connection refLocalId="7"> Laurent@2092: <position x="482" y="471"/> Laurent@2092: <position x="431" y="471"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="SUBINDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="160"/> Laurent@2092: <connection refLocalId="9"> Laurent@2092: <position x="482" y="511"/> Laurent@2092: <position x="430" y="511"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VARTYPE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="200"/> Laurent@2092: <connection refLocalId="11"> Laurent@2092: <position x="482" y="551"/> Laurent@2092: <position x="431" y="551"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VALUE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="240"/> Laurent@2092: <connection refLocalId="12" formalParameter="OUT"> Laurent@2092: <position x="482" y="591"/> Laurent@2092: <position x="456" y="591"/> Laurent@2092: <position x="456" y="610"/> Laurent@2092: <position x="431" y="610"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="ACK"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="168" y="40"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="ERROR"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="168" y="80"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <inVariable localId="3" height="27" width="63"> Laurent@2092: <position x="48" y="95"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="63" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Execute</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="4" height="27" width="35"> Laurent@2092: <position x="388" y="131"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="35" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Pos</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="5" height="27" width="35"> Laurent@2092: <position x="396" y="418"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="35" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Pos</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="6" height="27" width="68"> Laurent@2092: <position x="355" y="167"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="68" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>16#60E0</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="7" height="27" width="68"> Laurent@2092: <position x="363" y="458"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="68" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2094: <expression>16#60E1</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="8" height="27" width="33"> Laurent@2092: <position x="390" y="203"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="33" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>0</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="9" height="27" width="33"> Laurent@2092: <position x="397" y="498"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="33" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>0</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="10" height="27" width="60"> Laurent@2092: <position x="363" y="239"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="60" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>'uint16'</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="11" height="27" width="60"> Laurent@2092: <position x="371" y="538"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="60" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>'uint16'</expression> Laurent@2092: </inVariable> Laurent@2092: <block localId="16" width="67" height="98" typeName="AND"> Laurent@2092: <position x="763" y="69"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="39"/> Laurent@2092: <connection refLocalId="1" formalParameter="ACK"> Laurent@2092: <position x="763" y="108"/> Laurent@2092: <position x="647" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="IN2"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="78"/> Laurent@2092: <connection refLocalId="2" formalParameter="ACK"> Laurent@2092: <position x="763" y="147"/> Laurent@2092: <position x="707" y="147"/> Laurent@2092: <position x="707" y="391"/> Laurent@2092: <position x="650" y="391"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="67" y="39"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <outVariable localId="17" height="27" width="45"> Laurent@2092: <position x="941" y="95"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="16" formalParameter="OUT"> Laurent@2092: <position x="941" y="108"/> Laurent@2092: <position x="830" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>Done</expression> Laurent@2092: </outVariable> Laurent@2092: <block localId="18" width="67" height="111" typeName="OR"> Laurent@2092: <position x="778" y="344"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="42"/> Laurent@2092: <connection refLocalId="1" formalParameter="ERROR"> Laurent@2092: <position x="778" y="386"/> Laurent@2092: <position x="752" y="386"/> Laurent@2092: <position x="752" y="254"/> Laurent@2092: <position x="659" y="254"/> Laurent@2092: <position x="659" y="144"/> Laurent@2092: <position x="647" y="144"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="IN2"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="87"/> Laurent@2092: <connection refLocalId="2" formalParameter="ERROR"> Laurent@2092: <position x="778" y="431"/> Laurent@2092: <position x="650" y="431"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="67" y="42"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <block localId="19" width="67" height="98" typeName="AND"> Laurent@2092: <position x="933" y="308"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="39"/> Laurent@2092: <connection refLocalId="16" formalParameter="OUT"> Laurent@2092: <position x="933" y="347"/> Laurent@2092: <position x="886" y="347"/> Laurent@2092: <position x="886" y="108"/> Laurent@2092: <position x="830" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="IN2"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="78"/> Laurent@2092: <connection refLocalId="18" formalParameter="OUT"> Laurent@2092: <position x="933" y="386"/> Laurent@2092: <position x="845" y="386"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="67" y="39"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <outVariable localId="20" height="27" width="45"> Laurent@2092: <position x="1037" y="334"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="19" formalParameter="OUT"> Laurent@2092: <position x="1037" y="347"/> Laurent@2092: <position x="1000" y="347"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>Error</expression> Laurent@2092: </outVariable> Laurent@2092: <block localId="22" width="97" height="93" typeName="RS" instanceName="RS0"> Laurent@2092: <position x="854" y="498"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="S"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="38"/> Laurent@2092: <connection refLocalId="23"> Laurent@2092: <position x="854" y="536"/> Laurent@2092: <position x="795" y="536"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="R1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="74"/> Laurent@2092: <connection refLocalId="21"> Laurent@2092: <position x="854" y="572"/> Laurent@2092: <position x="790" y="572"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="Q1"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="97" y="38"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <inVariable localId="21" height="27" width="45"> Laurent@2092: <position x="745" y="559"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="45" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Done</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="23" height="27" width="63"> Laurent@2092: <position x="732" y="523"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="63" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Execute</expression> Laurent@2092: </inVariable> Laurent@2092: <outVariable localId="24" height="27" width="41"> Laurent@2092: <position x="1006" y="523"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="22" formalParameter="Q1"> Laurent@2092: <position x="1006" y="536"/> Laurent@2092: <position x="951" y="536"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>Busy</expression> Laurent@2092: </outVariable> Laurent@2092: <block localId="25" width="126" height="40" typeName="UINT_TO_STRING"> Laurent@2092: <position x="296" y="276"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="30"/> Laurent@2092: <connection refLocalId="14"> Laurent@2092: <position x="296" y="306"/> Laurent@2092: <position x="262" y="306"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="126" y="30"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <inVariable localId="14" height="27" width="117"> Laurent@2092: <position x="145" y="293"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="117" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>TorqueLimitPos</expression> Laurent@2092: </inVariable> Laurent@2092: <block localId="12" width="126" height="40" typeName="UINT_TO_STRING"> Laurent@2092: <position x="305" y="580"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="30"/> Laurent@2092: <connection refLocalId="15"> Laurent@2092: <position x="305" y="610"/> Laurent@2092: <position x="283" y="610"/> Laurent@2092: <position x="283" y="611"/> Laurent@2092: <position x="262" y="611"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="126" y="30"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <inVariable localId="15" height="27" width="119"> Laurent@2092: <position x="143" y="598"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="119" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>TorqueLimitNeg</expression> Laurent@2092: </inVariable> Laurent@2092: </FBD> Laurent@2092: </body> Laurent@2092: </pou> Laurent@2092: <pou name="EtherLabGetTorqueLimit" pouType="functionBlock"> Laurent@2092: <interface> Laurent@2092: <inputVars> Laurent@2092: <variable name="Pos"> Laurent@2092: <type> Laurent@2092: <INT/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="Execute"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: </inputVars> Laurent@2092: <outputVars> Laurent@2092: <variable name="Done"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="Busy"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="Error"> Laurent@2092: <type> Laurent@2092: <BOOL/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="ErrorID"> Laurent@2092: <type> Laurent@2092: <WORD/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="TorqueLimitPos"> Laurent@2092: <type> Laurent@2092: <UINT/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="TorqueLimitNeg"> Laurent@2092: <type> Laurent@2092: <UINT/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: </outputVars> Laurent@2092: <localVars> Laurent@2092: <variable name="EtherLabSDOUpload0"> Laurent@2092: <type> Laurent@2092: <derived name="EtherLabSDOUpload"/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="EtherLabSDOUpload1"> Laurent@2092: <type> Laurent@2092: <derived name="EtherLabSDOUpload"/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: <variable name="RS0"> Laurent@2092: <type> Laurent@2092: <derived name="RS"/> Laurent@2092: </type> Laurent@2092: </variable> Laurent@2092: </localVars> Laurent@2092: </interface> Laurent@2092: <body> Laurent@2092: <FBD> Laurent@2092: <block localId="1" width="149" height="203" typeName="EtherLabSDOUpload" instanceName="EtherLabSDOUpload0"> Laurent@2092: <position x="283" y="70"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="EXECUTE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="38"/> Laurent@2092: <connection refLocalId="3"> Laurent@2092: <position x="283" y="108"/> Laurent@2092: <position x="111" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="POS"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="74"/> Laurent@2092: <connection refLocalId="4"> Laurent@2092: <position x="283" y="144"/> Laurent@2092: <position x="219" y="144"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="INDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="110"/> Laurent@2092: <connection refLocalId="6"> Laurent@2092: <position x="283" y="180"/> Laurent@2092: <position x="219" y="180"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="SUBINDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="146"/> Laurent@2092: <connection refLocalId="8"> Laurent@2092: <position x="283" y="216"/> Laurent@2092: <position x="219" y="216"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VARTYPE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="182"/> Laurent@2092: <connection refLocalId="10"> Laurent@2092: <position x="283" y="252"/> Laurent@2092: <position x="219" y="252"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="ACK"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="149" y="38"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VALID"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="149" y="74"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VALUE"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="149" y="110"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <block localId="2" width="149" height="228" typeName="EtherLabSDOUpload" instanceName="EtherLabSDOUpload1"> Laurent@2092: <position x="284" y="321"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="EXECUTE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="40"/> Laurent@2092: <connection refLocalId="3"> Laurent@2092: <position x="284" y="361"/> Laurent@2092: <position x="131" y="361"/> Laurent@2092: <position x="131" y="108"/> Laurent@2092: <position x="111" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="POS"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="81"/> Laurent@2092: <connection refLocalId="5"> Laurent@2092: <position x="284" y="402"/> Laurent@2092: <position x="219" y="402"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="INDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="122"/> Laurent@2092: <connection refLocalId="7"> Laurent@2092: <position x="284" y="443"/> Laurent@2092: <position x="219" y="443"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="SUBINDEX"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="163"/> Laurent@2092: <connection refLocalId="9"> Laurent@2092: <position x="284" y="484"/> Laurent@2092: <position x="219" y="484"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VARTYPE"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="204"/> Laurent@2092: <connection refLocalId="11"> Laurent@2092: <position x="284" y="525"/> Laurent@2092: <position x="219" y="525"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="ACK"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="149" y="40"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VALID"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="149" y="81"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="VALUE"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="149" y="122"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <inVariable localId="3" height="27" width="63"> Laurent@2092: <position x="48" y="95"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="63" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Execute</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="4" height="27" width="35"> Laurent@2092: <position x="184" y="131"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="35" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Pos</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="5" height="27" width="35"> Laurent@2092: <position x="184" y="389"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="35" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Pos</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="6" height="27" width="68"> Laurent@2092: <position x="151" y="167"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="68" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>16#60E0</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="7" height="27" width="68"> Laurent@2092: <position x="151" y="430"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="68" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2094: <expression>16#60E1</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="8" height="27" width="33"> Laurent@2092: <position x="186" y="203"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="33" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>0</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="9" height="27" width="33"> Laurent@2092: <position x="186" y="471"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="33" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>0</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="10" height="27" width="60"> Laurent@2092: <position x="159" y="239"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="60" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>'uint16'</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="11" height="27" width="60"> Laurent@2092: <position x="159" y="512"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="60" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>'uint16'</expression> Laurent@2092: </inVariable> Laurent@2092: <block localId="12" width="126" height="40" typeName="STRING_TO_UINT"> Laurent@2092: <position x="492" y="150"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="30"/> Laurent@2092: <connection refLocalId="1" formalParameter="VALUE"> Laurent@2092: <position x="492" y="180"/> Laurent@2092: <position x="432" y="180"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="126" y="30"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <block localId="13" width="126" height="40" typeName="STRING_TO_UINT"> Laurent@2092: <position x="498" y="413"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="30"/> Laurent@2092: <connection refLocalId="2" formalParameter="VALUE"> Laurent@2092: <position x="498" y="443"/> Laurent@2092: <position x="433" y="443"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="126" y="30"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <outVariable localId="14" height="27" width="117"> Laurent@2092: <position x="673" y="167"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="12" formalParameter="OUT"> Laurent@2092: <position x="673" y="180"/> Laurent@2092: <position x="618" y="180"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>TorqueLimitPos</expression> Laurent@2092: </outVariable> Laurent@2092: <outVariable localId="15" height="27" width="119"> Laurent@2092: <position x="679" y="430"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="13" formalParameter="OUT"> Laurent@2092: <position x="679" y="443"/> Laurent@2092: <position x="624" y="443"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>TorqueLimitNeg</expression> Laurent@2092: </outVariable> Laurent@2092: <block localId="16" width="67" height="98" typeName="AND"> Laurent@2092: <position x="861" y="69"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="39"/> Laurent@2092: <connection refLocalId="1" formalParameter="ACK"> Laurent@2092: <position x="861" y="108"/> Laurent@2092: <position x="432" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="IN2"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="78"/> Laurent@2092: <connection refLocalId="2" formalParameter="ACK"> Laurent@2092: <position x="861" y="147"/> Laurent@2092: <position x="804" y="147"/> Laurent@2092: <position x="804" y="361"/> Laurent@2092: <position x="433" y="361"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="67" y="39"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <outVariable localId="17" height="27" width="45"> Laurent@2092: <position x="1009" y="95"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="16" formalParameter="OUT"> Laurent@2092: <position x="1009" y="108"/> Laurent@2092: <position x="928" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>Done</expression> Laurent@2092: </outVariable> Laurent@2092: <block localId="18" width="67" height="111" typeName="OR"> Laurent@2092: <position x="862" y="315"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN1" negated="true"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="42"/> Laurent@2092: <connection refLocalId="1" formalParameter="VALID"> Laurent@2092: <position x="862" y="357"/> Laurent@2092: <position x="839" y="357"/> Laurent@2092: <position x="839" y="254"/> Laurent@2092: <position x="469" y="254"/> Laurent@2092: <position x="469" y="144"/> Laurent@2092: <position x="432" y="144"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="IN2" negated="true"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="87"/> Laurent@2092: <connection refLocalId="2" formalParameter="VALID"> Laurent@2092: <position x="862" y="402"/> Laurent@2092: <position x="433" y="402"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="67" y="42"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <block localId="19" width="67" height="98" typeName="AND"> Laurent@2092: <position x="989" y="279"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="IN1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="39"/> Laurent@2092: <connection refLocalId="16" formalParameter="OUT"> Laurent@2092: <position x="989" y="318"/> Laurent@2092: <position x="958" y="318"/> Laurent@2092: <position x="958" y="108"/> Laurent@2092: <position x="928" y="108"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="IN2"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="78"/> Laurent@2092: <connection refLocalId="18" formalParameter="OUT"> Laurent@2092: <position x="989" y="357"/> Laurent@2092: <position x="929" y="357"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="OUT"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="67" y="39"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <outVariable localId="20" height="27" width="45"> Laurent@2092: <position x="1102" y="305"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="19" formalParameter="OUT"> Laurent@2092: <position x="1102" y="318"/> Laurent@2092: <position x="1056" y="318"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>Error</expression> Laurent@2092: </outVariable> Laurent@2092: <block localId="22" width="97" height="93" typeName="RS" instanceName="RS0"> Laurent@2092: <position x="657" y="517"/> Laurent@2092: <inputVariables> Laurent@2092: <variable formalParameter="S"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="38"/> Laurent@2092: <connection refLocalId="23"> Laurent@2092: <position x="657" y="555"/> Laurent@2092: <position x="600" y="555"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: <variable formalParameter="R1"> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="74"/> Laurent@2092: <connection refLocalId="21"> Laurent@2092: <position x="657" y="591"/> Laurent@2092: <position x="599" y="591"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: </variable> Laurent@2092: </inputVariables> Laurent@2092: <inOutVariables/> Laurent@2092: <outputVariables> Laurent@2092: <variable formalParameter="Q1"> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="97" y="38"/> Laurent@2092: </connectionPointOut> Laurent@2092: </variable> Laurent@2092: </outputVariables> Laurent@2092: </block> Laurent@2092: <inVariable localId="21" height="27" width="45"> Laurent@2092: <position x="554" y="578"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="45" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Done</expression> Laurent@2092: </inVariable> Laurent@2092: <inVariable localId="23" height="27" width="63"> Laurent@2092: <position x="537" y="542"/> Laurent@2092: <connectionPointOut> Laurent@2092: <relPosition x="63" y="13"/> Laurent@2092: </connectionPointOut> Laurent@2092: <expression>Execute</expression> Laurent@2092: </inVariable> Laurent@2092: <outVariable localId="24" height="27" width="41"> Laurent@2092: <position x="811" y="542"/> Laurent@2092: <connectionPointIn> Laurent@2092: <relPosition x="0" y="13"/> Laurent@2092: <connection refLocalId="22" formalParameter="Q1"> Laurent@2092: <position x="811" y="555"/> Laurent@2092: <position x="754" y="555"/> Laurent@2092: </connection> Laurent@2092: </connectionPointIn> Laurent@2092: <expression>Busy</expression> Laurent@2092: </outVariable> Laurent@2092: </FBD> Laurent@2092: </body> Laurent@2092: </pou> Laurent@2086: </pous> Laurent@2086: </types> Laurent@2086: <instances> Laurent@2086: <configurations/> Laurent@2086: </instances> Laurent@2086: </project>