Edouard@1399: <?xml version='1.0' encoding='utf-8'?> Edouard@1399: <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.plcopen.org/xml/tc6_0201" xmlns:xhtml="http://www.w3.org/1999/xhtml" xsi:schemaLocation="http://www.plcopen.org/xml/tc6_0201"> Edouard@1399: <fileHeader companyName="Beremiz" productName="Beremiz" productVersion="0.0" creationDateTime="2008-12-14T16:53:26"/> Edouard@3707: <contentHeader name="Beremiz non-standard POUs library" modificationDateTime="2022-12-16T11:59:30"> laurent@366: <coordinateInfo> laurent@366: <fbd> Edouard@3707: <scaling x="8" y="8"/> laurent@366: </fbd> laurent@366: <ld> laurent@366: <scaling x="0" y="0"/> laurent@366: </ld> laurent@366: <sfc> laurent@366: <scaling x="0" y="0"/> laurent@366: </sfc> laurent@366: </coordinateInfo> laurent@366: </contentHeader> laurent@366: <types> laurent@366: <dataTypes/> laurent@366: <pous> Edouard@3707: <pou name="csv_read_by_string" pouType="functionBlock"> Edouard@3707: <interface> Edouard@3707: <externalVars> Edouard@3707: <variable name="pyext_csv_update"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </externalVars> Edouard@3707: <outputVars> Edouard@3707: <variable name="ACK"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="RESULT"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </outputVars> Edouard@3707: <inputVars> Edouard@3707: <variable name="FILE_NAME"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="ROW"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="COLUMN"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </inputVars> Edouard@3707: <localVars> Edouard@3707: <variable name="OLDCODE"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="py_eval"> Edouard@3707: <type> Edouard@3707: <derived name="python_eval"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="R_TRIG0"> Edouard@3707: <type> Edouard@3707: <derived name="R_TRIG"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="R_TRIG1"> Edouard@3707: <type> Edouard@3707: <derived name="R_TRIG"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="SR0"> Edouard@3707: <type> Edouard@3707: <derived name="SR"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </localVars> Edouard@3707: </interface> Edouard@3707: <body> Edouard@3707: <FBD> Edouard@3707: <block localId="7" typeName="CONCAT" executionOrderId="0" height="192" width="64"> Edouard@3707: <position x="360" y="112"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="8"> Edouard@3707: <position x="360" y="144"/> Edouard@3707: <position x="320" y="144"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="9"> Edouard@3707: <position x="360" y="168"/> Edouard@3707: <position x="152" y="168"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN3"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="80"/> Edouard@3707: <connection refLocalId="10"> Edouard@3707: <position x="360" y="192"/> Edouard@3707: <position x="320" y="192"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN4"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="104"/> Edouard@3707: <connection refLocalId="11"> Edouard@3707: <position x="360" y="216"/> Edouard@3707: <position x="152" y="216"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN5"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="128"/> Edouard@3707: <connection refLocalId="12"> Edouard@3707: <position x="360" y="240"/> Edouard@3707: <position x="320" y="240"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN6"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="152"/> Edouard@3707: <connection refLocalId="13"> Edouard@3707: <position x="360" y="264"/> Edouard@3707: <position x="152" y="264"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN7"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="176"/> Edouard@3707: <connection refLocalId="14"> Edouard@3707: <position x="360" y="288"/> Edouard@3707: <position x="320" y="288"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="8" executionOrderId="0" height="24" width="160" negated="false"> Edouard@3707: <position x="160" y="128"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="160" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'CSVRdStr("'</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="9" executionOrderId="0" height="32" width="112" negated="false"> Edouard@3707: <position x="40" y="152"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>FILE_NAME</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="10" executionOrderId="0" height="24" width="112" negated="false"> Edouard@3707: <position x="208" y="184"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'","'</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="11" executionOrderId="0" height="32" width="112" negated="false"> Edouard@3707: <position x="40" y="200"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>ROW</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="12" executionOrderId="0" height="24" width="112" negated="false"> Edouard@3707: <position x="208" y="224"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'","'</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="13" executionOrderId="0" height="32" width="112" negated="false"> Edouard@3707: <position x="40" y="248"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>COLUMN</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="14" executionOrderId="0" height="24" width="112" negated="false"> Edouard@3707: <position x="208" y="272"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'")'</expression> Edouard@3707: </inVariable> Edouard@3707: <block localId="16" typeName="NE" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="208" y="408"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="22"> Edouard@3707: <position x="208" y="440"/> Edouard@3707: <position x="168" y="440"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="21"> Edouard@3707: <position x="208" y="464"/> Edouard@3707: <position x="168" y="464"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="18" typeName="SEL" executionOrderId="0" height="96" width="64"> Edouard@3707: <position x="680" y="376"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="G"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="25"> Edouard@3707: <position x="680" y="408"/> Edouard@3707: <position x="624" y="408"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN0"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="20"> Edouard@3707: <position x="680" y="432"/> Edouard@3707: <position x="632" y="432"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="80"/> Edouard@3707: <connection refLocalId="4"> Edouard@3707: <position x="680" y="456"/> Edouard@3707: <position x="632" y="456"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <connector name="Code" localId="19" height="24" width="128"> Edouard@3707: <position x="480" y="136"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="8"/> Edouard@3707: <connection refLocalId="7" formalParameter="OUT"> Edouard@3707: <position x="480" y="144"/> Edouard@3707: <position x="424" y="144"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </connector> Edouard@3707: <outVariable localId="17" executionOrderId="0" height="32" width="66" negated="false"> Edouard@3707: <position x="784" y="392"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="18" formalParameter="OUT"> Edouard@3707: <position x="784" y="408"/> Edouard@3707: <position x="744" y="408"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>OLDCODE</expression> Edouard@3707: </outVariable> Edouard@3707: <inVariable localId="20" executionOrderId="0" height="32" width="72" negated="false"> Edouard@3707: <position x="560" y="416"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="72" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>OLDCODE</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="21" executionOrderId="0" height="32" width="72" negated="false"> Edouard@3707: <position x="96" y="448"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="72" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>OLDCODE</expression> Edouard@3707: </inVariable> Edouard@3707: <continuation name="Code" localId="4" height="24" width="128"> Edouard@3707: <position x="504" y="448"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="128" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <continuation name="Code" localId="22" height="24" width="128"> Edouard@3707: <position x="40" y="424"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="128" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <connector name="CodeChange" localId="23" height="24" width="120"> Edouard@3707: <position x="328" y="432"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="8"/> Edouard@3707: <connection refLocalId="16" formalParameter="OUT"> Edouard@3707: <position x="328" y="440"/> Edouard@3707: <position x="272" y="440"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </connector> Edouard@3707: <continuation name="CodeChange" localId="25" height="24" width="120"> Edouard@3707: <position x="504" y="392"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="120" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <comment localId="26" height="40" width="232"> Edouard@3707: <position x="48" y="40"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[Generate python code line]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: <comment localId="27" height="48" width="312"> Edouard@3707: <position x="40" y="328"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[Detect changes in generated code line]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: <comment localId="28" height="48" width="520"> Edouard@3707: <position x="48" y="512"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[Execute python code on change or globally when CSV is updated]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: <block localId="1" width="104" height="80" typeName="python_eval" instanceName="py_eval" executionOrderId="0"> Edouard@3707: <position x="552" y="600"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="TRIG"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="15" formalParameter="OUT"> Edouard@3707: <position x="552" y="632"/> Edouard@3707: <position x="360" y="632"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="CODE"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="64"/> Edouard@3707: <connection refLocalId="2"> Edouard@3707: <position x="552" y="664"/> Edouard@3707: <position x="528" y="664"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="ACK"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="104" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="RESULT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="104" y="64"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="3" height="24" width="152" executionOrderId="0" negated="false"> Edouard@3707: <position x="32" y="616"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="152" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>pyext_csv_update</expression> Edouard@3707: </inVariable> Edouard@3707: <outVariable localId="5" height="24" width="40" executionOrderId="0" negated="false"> Edouard@3707: <position x="1216" y="632"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="8"/> Edouard@3707: <connection refLocalId="38" formalParameter="Q1"> Edouard@3707: <position x="1216" y="640"/> Edouard@3707: <position x="1168" y="640"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>ACK</expression> Edouard@3707: </outVariable> Edouard@3707: <outVariable localId="6" height="24" width="64" executionOrderId="0" negated="false"> Edouard@3707: <position x="688" y="704"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="8"/> Edouard@3707: <connection refLocalId="1" formalParameter="RESULT"> Edouard@3707: <position x="688" y="712"/> Edouard@3707: <position x="672" y="712"/> Edouard@3707: <position x="672" y="664"/> Edouard@3707: <position x="656" y="664"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>RESULT</expression> Edouard@3707: </outVariable> Edouard@3707: <continuation name="Code" localId="2" height="24" width="128"> Edouard@3707: <position x="400" y="648"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="128" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <continuation name="CodeChange" localId="24" height="24" width="120"> Edouard@3707: <position x="64" y="648"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="120" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <block localId="15" typeName="OR" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="296" y="600"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="32" formalParameter="Q"> Edouard@3707: <position x="296" y="632"/> Edouard@3707: <position x="272" y="632"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="24"> Edouard@3707: <position x="296" y="656"/> Edouard@3707: <position x="184" y="656"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="32" typeName="R_TRIG" instanceName="R_TRIG0" executionOrderId="0" height="48" width="64"> Edouard@3707: <position x="208" y="600"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="CLK"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="3"> Edouard@3707: <position x="208" y="632"/> Edouard@3707: <position x="184" y="632"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="33" typeName="LEFT" executionOrderId="0" height="64" width="56"> Edouard@3707: <position x="736" y="632"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="1" formalParameter="RESULT"> Edouard@3707: <position x="736" y="664"/> Edouard@3707: <position x="656" y="664"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="L"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="35"> Edouard@3707: <position x="736" y="688"/> Edouard@3707: <position x="712" y="688"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="56" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="34" typeName="NE" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="880" y="632"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="33" formalParameter="OUT"> Edouard@3707: <position x="880" y="664"/> Edouard@3707: <position x="792" y="664"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="36"> Edouard@3707: <position x="880" y="688"/> Edouard@3707: <position x="856" y="688"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="35" executionOrderId="0" height="24" width="24" negated="false"> Edouard@3707: <position x="688" y="672"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="24" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>1</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="36" executionOrderId="0" height="24" width="40" negated="false"> Edouard@3707: <position x="816" y="672"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="40" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'#'</expression> Edouard@3707: </inVariable> Edouard@3707: <block localId="37" typeName="R_TRIG" instanceName="R_TRIG1" executionOrderId="0" height="48" width="64"> Edouard@3707: <position x="880" y="576"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="CLK"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="1" formalParameter="ACK"> Edouard@3707: <position x="880" y="608"/> Edouard@3707: <position x="688" y="608"/> Edouard@3707: <position x="688" y="632"/> Edouard@3707: <position x="656" y="632"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="38" typeName="SR" instanceName="SR0" executionOrderId="0" height="64" width="48"> Edouard@3707: <position x="1120" y="608"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="S1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="39" formalParameter="OUT"> Edouard@3707: <position x="1120" y="640"/> Edouard@3707: <position x="1056" y="640"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="R" edge="rising"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="15" formalParameter="OUT"> Edouard@3707: <position x="1120" y="664"/> Edouard@3707: <position x="1088" y="664"/> Edouard@3707: <position x="1088" y="736"/> Edouard@3707: <position x="376" y="736"/> Edouard@3707: <position x="376" y="632"/> Edouard@3707: <position x="360" y="632"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q1"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="48" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="39" typeName="AND" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="992" y="608"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="37" formalParameter="Q"> Edouard@3707: <position x="992" y="640"/> Edouard@3707: <position x="976" y="640"/> Edouard@3707: <position x="976" y="608"/> Edouard@3707: <position x="944" y="608"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="34" formalParameter="OUT"> Edouard@3707: <position x="992" y="664"/> Edouard@3707: <position x="944" y="664"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: </FBD> Edouard@3707: </body> Edouard@3707: </pou> Edouard@3707: <pou name="csv_reload" pouType="functionBlock"> Edouard@3707: <interface> Edouard@3707: <externalVars> Edouard@3707: <variable name="pyext_csv_update"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </externalVars> Edouard@3707: <outputVars> Edouard@3707: <variable name="ACK"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="RESULT"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </outputVars> Edouard@3707: <localVars> Edouard@3707: <variable name="py_eval"> Edouard@3707: <type> Edouard@3707: <derived name="python_eval"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </localVars> Edouard@3707: <inputVars> Edouard@3707: <variable name="TRIG"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </inputVars> Edouard@3707: <localVars> Edouard@3707: <variable name="R_TRIG0"> Edouard@3707: <type> Edouard@3707: <derived name="R_TRIG"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="F_TRIG0"> Edouard@3707: <type> Edouard@3707: <derived name="F_TRIG"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </localVars> Edouard@3707: </interface> Edouard@3707: <body> Edouard@3707: <FBD> Edouard@3707: <block localId="1" width="104" height="80" typeName="python_eval" instanceName="py_eval" executionOrderId="0"> Edouard@3707: <position x="232" y="328"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="TRIG"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="3"> Edouard@3707: <position x="232" y="360"/> Edouard@3707: <position x="200" y="360"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="CODE"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="64"/> Edouard@3707: <connection refLocalId="8"> Edouard@3707: <position x="232" y="392"/> Edouard@3707: <position x="200" y="392"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="ACK"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="104" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="RESULT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="104" y="64"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="3" height="24" width="152" executionOrderId="0" negated="false"> Edouard@3707: <position x="48" y="352"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="152" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>TRIG</expression> Edouard@3707: </inVariable> Edouard@3707: <outVariable localId="5" height="24" width="40" executionOrderId="0" negated="false"> Edouard@3707: <position x="384" y="344"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="1" formalParameter="ACK"> Edouard@3707: <position x="384" y="360"/> Edouard@3707: <position x="336" y="360"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>ACK</expression> Edouard@3707: </outVariable> Edouard@3707: <outVariable localId="6" height="24" width="64" executionOrderId="0" negated="false"> Edouard@3707: <position x="384" y="376"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="1" formalParameter="RESULT"> Edouard@3707: <position x="384" y="392"/> Edouard@3707: <position x="336" y="392"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>RESULT</expression> Edouard@3707: </outVariable> Edouard@3707: <inVariable localId="8" executionOrderId="0" height="24" width="176" negated="false"> Edouard@3707: <position x="24" y="384"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="176" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'pyext_csv_reload()'</expression> Edouard@3707: </inVariable> Edouard@3707: <outVariable localId="2" executionOrderId="0" height="24" width="146" negated="false"> Edouard@3707: <position x="864" y="320"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="8"/> Edouard@3707: <connection refLocalId="12" formalParameter="OUT"> Edouard@3707: <position x="864" y="328"/> Edouard@3707: <position x="816" y="328"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>pyext_csv_update</expression> Edouard@3707: </outVariable> Edouard@3707: <block localId="9" typeName="R_TRIG" instanceName="R_TRIG0" executionOrderId="0" height="48" width="64"> Edouard@3707: <position x="472" y="224"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="CLK"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="1" formalParameter="ACK"> Edouard@3707: <position x="472" y="256"/> Edouard@3707: <position x="368" y="256"/> Edouard@3707: <position x="368" y="360"/> Edouard@3707: <position x="336" y="360"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="10" typeName="F_TRIG" instanceName="F_TRIG0" executionOrderId="0" height="48" width="64"> Edouard@3707: <position x="472" y="296"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="CLK"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="1" formalParameter="ACK"> Edouard@3707: <position x="472" y="328"/> Edouard@3707: <position x="368" y="328"/> Edouard@3707: <position x="368" y="360"/> Edouard@3707: <position x="336" y="360"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="11" typeName="OR" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="584" y="272"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="9" formalParameter="Q"> Edouard@3707: <position x="584" y="304"/> Edouard@3707: <position x="560" y="304"/> Edouard@3707: <position x="560" y="256"/> Edouard@3707: <position x="536" y="256"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="10" formalParameter="Q"> Edouard@3707: <position x="584" y="328"/> Edouard@3707: <position x="536" y="328"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="12" typeName="MOVE" executionOrderId="0" height="64" width="56"> Edouard@3707: <position x="760" y="272"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="EN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="11" formalParameter="OUT"> Edouard@3707: <position x="760" y="304"/> Edouard@3707: <position x="648" y="304"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="13" formalParameter="OUT"> Edouard@3707: <position x="760" y="328"/> Edouard@3707: <position x="724" y="328"/> Edouard@3707: <position x="724" y="256"/> Edouard@3707: <position x="712" y="256"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="ENO"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="56" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="56" y="56"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="13" typeName="NOT" executionOrderId="0" height="48" width="56"> Edouard@3707: <position x="656" y="224"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="9" formalParameter="Q"> Edouard@3707: <position x="656" y="256"/> Edouard@3707: <position x="536" y="256"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="56" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <comment localId="14" height="72" width="664"> Edouard@3707: <position x="368" y="136"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[pyext_csv_update initial value is True so that all CSV blocks get at least updated once at start. Edouard@3707: When calling csv_reload, return from python pyext_csv_reload makes a pulse on pyext_csv_update]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: </FBD> Edouard@3707: </body> Edouard@3707: </pou> Edouard@3707: <pou name="csv_read_by_int" pouType="functionBlock"> Edouard@3707: <interface> Edouard@3707: <externalVars> Edouard@3707: <variable name="pyext_csv_update"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </externalVars> Edouard@3707: <outputVars> Edouard@3707: <variable name="ACK"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="RESULT"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </outputVars> Edouard@3707: <inputVars> Edouard@3707: <variable name="FILE_NAME"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="ROW"> Edouard@3707: <type> Edouard@3707: <INT/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="COLUMN"> Edouard@3707: <type> Edouard@3707: <INT/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </inputVars> Edouard@3707: <localVars> Edouard@3707: <variable name="OLDCODE"> Edouard@3707: <type> Edouard@3707: <string/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="py_eval0"> Edouard@3707: <type> Edouard@3707: <derived name="python_eval"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="R_TRIG1"> Edouard@3707: <type> Edouard@3707: <derived name="R_TRIG"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="R_TRIG2"> Edouard@3707: <type> Edouard@3707: <derived name="R_TRIG"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: <variable name="SR0"> Edouard@3707: <type> Edouard@3707: <derived name="SR"/> Edouard@3707: </type> Edouard@3707: </variable> Edouard@3707: </localVars> Edouard@3707: </interface> Edouard@3707: <body> Edouard@3707: <FBD> Edouard@3707: <block localId="7" typeName="CONCAT" executionOrderId="0" height="192" width="64"> Edouard@3707: <position x="520" y="112"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="8"> Edouard@3707: <position x="520" y="144"/> Edouard@3707: <position x="480" y="144"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="9"> Edouard@3707: <position x="520" y="168"/> Edouard@3707: <position x="312" y="168"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN3"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="80"/> Edouard@3707: <connection refLocalId="10"> Edouard@3707: <position x="520" y="192"/> Edouard@3707: <position x="480" y="192"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN4"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="104"/> Edouard@3707: <connection refLocalId="31" formalParameter="OUT"> Edouard@3707: <position x="520" y="216"/> Edouard@3707: <position x="320" y="216"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN5"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="128"/> Edouard@3707: <connection refLocalId="12"> Edouard@3707: <position x="520" y="240"/> Edouard@3707: <position x="480" y="240"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN6"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="152"/> Edouard@3707: <connection refLocalId="2" formalParameter="OUT"> Edouard@3707: <position x="520" y="264"/> Edouard@3707: <position x="320" y="264"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN7"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="176"/> Edouard@3707: <connection refLocalId="14"> Edouard@3707: <position x="520" y="288"/> Edouard@3707: <position x="480" y="288"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="8" executionOrderId="0" height="24" width="160" negated="false"> Edouard@3707: <position x="320" y="128"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="160" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'CSVRdInt("'</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="9" executionOrderId="0" height="32" width="112" negated="false"> Edouard@3707: <position x="200" y="152"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>FILE_NAME</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="10" executionOrderId="0" height="24" width="112" negated="false"> Edouard@3707: <position x="368" y="184"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'",'</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="11" executionOrderId="0" height="32" width="112" negated="false"> Edouard@3707: <position x="40" y="200"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>ROW</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="12" executionOrderId="0" height="24" width="112" negated="false"> Edouard@3707: <position x="368" y="224"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>','</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="13" executionOrderId="0" height="32" width="112" negated="false"> Edouard@3707: <position x="40" y="248"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>COLUMN</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="14" executionOrderId="0" height="24" width="112" negated="false"> Edouard@3707: <position x="368" y="272"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="112" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>')'</expression> Edouard@3707: </inVariable> Edouard@3707: <continuation name="Code" localId="4" height="24" width="128"> Edouard@3707: <position x="504" y="496"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="128" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <block localId="16" typeName="NE" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="208" y="456"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="22"> Edouard@3707: <position x="208" y="488"/> Edouard@3707: <position x="188" y="488"/> Edouard@3707: <position x="188" y="480"/> Edouard@3707: <position x="168" y="480"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="21"> Edouard@3707: <position x="208" y="512"/> Edouard@3707: <position x="168" y="512"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <outVariable localId="17" executionOrderId="0" height="32" width="66" negated="false"> Edouard@3707: <position x="784" y="440"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="18" formalParameter="OUT"> Edouard@3707: <position x="784" y="456"/> Edouard@3707: <position x="744" y="456"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>OLDCODE</expression> Edouard@3707: </outVariable> Edouard@3707: <block localId="18" typeName="SEL" executionOrderId="0" height="96" width="64"> Edouard@3707: <position x="680" y="424"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="G"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="25"> Edouard@3707: <position x="680" y="456"/> Edouard@3707: <position x="652" y="456"/> Edouard@3707: <position x="652" y="448"/> Edouard@3707: <position x="624" y="448"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN0"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="20"> Edouard@3707: <position x="680" y="480"/> Edouard@3707: <position x="632" y="480"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="80"/> Edouard@3707: <connection refLocalId="4"> Edouard@3707: <position x="680" y="504"/> Edouard@3707: <position x="656" y="504"/> Edouard@3707: <position x="656" y="512"/> Edouard@3707: <position x="632" y="512"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="20" executionOrderId="0" height="32" width="72" negated="false"> Edouard@3707: <position x="560" y="464"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="72" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>OLDCODE</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="21" executionOrderId="0" height="32" width="72" negated="false"> Edouard@3707: <position x="96" y="496"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="72" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>OLDCODE</expression> Edouard@3707: </inVariable> Edouard@3707: <continuation name="Code" localId="22" height="24" width="128"> Edouard@3707: <position x="40" y="472"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="128" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <connector name="CodeChange" localId="23" height="24" width="120"> Edouard@3707: <position x="328" y="480"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="16" formalParameter="OUT"> Edouard@3707: <position x="328" y="496"/> Edouard@3707: <position x="300" y="496"/> Edouard@3707: <position x="300" y="488"/> Edouard@3707: <position x="272" y="488"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </connector> Edouard@3707: <continuation name="CodeChange" localId="25" height="24" width="120"> Edouard@3707: <position x="504" y="440"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="120" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <comment localId="27" height="48" width="312"> Edouard@3707: <position x="40" y="376"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[Detect changes in generated code line]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: <comment localId="28" height="48" width="520"> Edouard@3707: <position x="48" y="560"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[Execute python code on change or globally when CSV is updated]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: <comment localId="29" height="40" width="232"> Edouard@3707: <position x="64" y="32"/> Edouard@3707: <content> Edouard@3707: <xhtml:p><![CDATA[Generate python code line]]></xhtml:p> Edouard@3707: </content> Edouard@3707: </comment> Edouard@3707: <connector name="Code" localId="30" height="24" width="128"> Edouard@3707: <position x="632" y="128"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="7" formalParameter="OUT"> Edouard@3707: <position x="632" y="144"/> Edouard@3707: <position x="584" y="144"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </connector> Edouard@3707: <block localId="31" typeName="INT_TO_STRING" executionOrderId="0" height="48" width="120"> Edouard@3707: <position x="200" y="184"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="11"> Edouard@3707: <position x="200" y="216"/> Edouard@3707: <position x="152" y="216"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="120" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="2" typeName="INT_TO_STRING" executionOrderId="0" height="48" width="120"> Edouard@3707: <position x="200" y="232"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="13"> Edouard@3707: <position x="200" y="264"/> Edouard@3707: <position x="152" y="264"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="120" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="40" width="104" height="80" typeName="python_eval" instanceName="py_eval0" executionOrderId="0"> Edouard@3707: <position x="552" y="640"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="TRIG"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="15" formalParameter="OUT"> Edouard@3707: <position x="552" y="672"/> Edouard@3707: <position x="360" y="672"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="CODE"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="64"/> Edouard@3707: <connection refLocalId="41"> Edouard@3707: <position x="552" y="704"/> Edouard@3707: <position x="528" y="704"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="ACK"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="104" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="RESULT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="104" y="64"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <continuation name="Code" localId="41" height="24" width="128"> Edouard@3707: <position x="400" y="688"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="128" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <inVariable localId="42" height="24" width="152" executionOrderId="0" negated="false"> Edouard@3707: <position x="32" y="656"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="152" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>pyext_csv_update</expression> Edouard@3707: </inVariable> Edouard@3707: <outVariable localId="43" height="24" width="40" executionOrderId="0" negated="false"> Edouard@3707: <position x="1216" y="672"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="16"/> Edouard@3707: <connection refLocalId="38" formalParameter="Q1"> Edouard@3707: <position x="1216" y="688"/> Edouard@3707: <position x="1192" y="688"/> Edouard@3707: <position x="1192" y="680"/> Edouard@3707: <position x="1168" y="680"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>ACK</expression> Edouard@3707: </outVariable> Edouard@3707: <outVariable localId="44" height="24" width="64" executionOrderId="0" negated="false"> Edouard@3707: <position x="688" y="744"/> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="8"/> Edouard@3707: <connection refLocalId="40" formalParameter="RESULT"> Edouard@3707: <position x="688" y="752"/> Edouard@3707: <position x="672" y="752"/> Edouard@3707: <position x="672" y="704"/> Edouard@3707: <position x="656" y="704"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: <expression>RESULT</expression> Edouard@3707: </outVariable> Edouard@3707: <block localId="15" typeName="OR" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="296" y="640"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="46" formalParameter="Q"> Edouard@3707: <position x="296" y="672"/> Edouard@3707: <position x="272" y="672"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="45"> Edouard@3707: <position x="296" y="696"/> Edouard@3707: <position x="240" y="696"/> Edouard@3707: <position x="240" y="704"/> Edouard@3707: <position x="184" y="704"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <continuation name="CodeChange" localId="45" height="24" width="120"> Edouard@3707: <position x="64" y="688"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="120" y="16"/> Edouard@3707: </connectionPointOut> Edouard@3707: </continuation> Edouard@3707: <block localId="46" typeName="R_TRIG" instanceName="R_TRIG1" executionOrderId="0" height="48" width="64"> Edouard@3707: <position x="208" y="640"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="CLK"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="42"> Edouard@3707: <position x="208" y="672"/> Edouard@3707: <position x="184" y="672"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="33" typeName="LEFT" executionOrderId="0" height="64" width="56"> Edouard@3707: <position x="736" y="672"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="40" formalParameter="RESULT"> Edouard@3707: <position x="736" y="704"/> Edouard@3707: <position x="656" y="704"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="L"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="35"> Edouard@3707: <position x="736" y="728"/> Edouard@3707: <position x="724" y="728"/> Edouard@3707: <position x="724" y="720"/> Edouard@3707: <position x="712" y="720"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="56" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="34" typeName="NE" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="880" y="672"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="33" formalParameter="OUT"> Edouard@3707: <position x="880" y="704"/> Edouard@3707: <position x="792" y="704"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="36"> Edouard@3707: <position x="880" y="728"/> Edouard@3707: <position x="868" y="728"/> Edouard@3707: <position x="868" y="720"/> Edouard@3707: <position x="856" y="720"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <inVariable localId="35" executionOrderId="0" height="24" width="24" negated="false"> Edouard@3707: <position x="688" y="712"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="24" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>1</expression> Edouard@3707: </inVariable> Edouard@3707: <inVariable localId="36" executionOrderId="0" height="24" width="40" negated="false"> Edouard@3707: <position x="816" y="712"/> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="40" y="8"/> Edouard@3707: </connectionPointOut> Edouard@3707: <expression>'#'</expression> Edouard@3707: </inVariable> Edouard@3707: <block localId="37" typeName="R_TRIG" instanceName="R_TRIG2" executionOrderId="0" height="48" width="64"> Edouard@3707: <position x="880" y="616"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="CLK"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="40" formalParameter="ACK"> Edouard@3707: <position x="880" y="648"/> Edouard@3707: <position x="688" y="648"/> Edouard@3707: <position x="688" y="672"/> Edouard@3707: <position x="656" y="672"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="38" typeName="SR" instanceName="SR0" executionOrderId="0" height="64" width="48"> Edouard@3707: <position x="1120" y="648"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="S1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="39" formalParameter="OUT"> Edouard@3707: <position x="1120" y="680"/> Edouard@3707: <position x="1056" y="680"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="R" edge="rising"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="15" formalParameter="OUT"> Edouard@3707: <position x="1120" y="704"/> Edouard@3707: <position x="1088" y="704"/> Edouard@3707: <position x="1088" y="776"/> Edouard@3707: <position x="376" y="776"/> Edouard@3707: <position x="376" y="672"/> Edouard@3707: <position x="360" y="672"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="Q1"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="48" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: <block localId="39" typeName="AND" executionOrderId="0" height="64" width="64"> Edouard@3707: <position x="992" y="648"/> Edouard@3707: <inputVariables> Edouard@3707: <variable formalParameter="IN1"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="32"/> Edouard@3707: <connection refLocalId="37" formalParameter="Q"> Edouard@3707: <position x="992" y="680"/> Edouard@3707: <position x="976" y="680"/> Edouard@3707: <position x="976" y="648"/> Edouard@3707: <position x="944" y="648"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: <variable formalParameter="IN2"> Edouard@3707: <connectionPointIn> Edouard@3707: <relPosition x="0" y="56"/> Edouard@3707: <connection refLocalId="34" formalParameter="OUT"> Edouard@3707: <position x="992" y="704"/> Edouard@3707: <position x="944" y="704"/> Edouard@3707: </connection> Edouard@3707: </connectionPointIn> Edouard@3707: </variable> Edouard@3707: </inputVariables> Edouard@3707: <inOutVariables/> Edouard@3707: <outputVariables> Edouard@3707: <variable formalParameter="OUT"> Edouard@3707: <connectionPointOut> Edouard@3707: <relPosition x="64" y="32"/> Edouard@3707: </connectionPointOut> Edouard@3707: </variable> Edouard@3707: </outputVariables> Edouard@3707: </block> Edouard@3707: </FBD> Edouard@3707: </body> Edouard@3707: </pou> laurent@366: <pou name="python_eval" pouType="functionBlock"> laurent@366: <interface> laurent@366: <inputVars> laurent@366: <variable name="TRIG"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="CODE"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: </inputVars> laurent@366: <outputVars> laurent@366: <variable name="ACK"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="RESULT"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: </outputVars> laurent@366: <localVars> laurent@366: <variable name="STATE"> laurent@366: <type> laurent@366: <DWORD/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="BUFFER"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="PREBUFFER"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="TRIGM1"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="TRIGGED"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: </localVars> laurent@366: </interface> laurent@366: <body> laurent@366: <ST> Edouard@1399: <xhtml:p><![CDATA[{extern void __PythonEvalFB(int, PYTHON_EVAL*);__PythonEvalFB(0, data__);}]]></xhtml:p> laurent@366: </ST> laurent@366: </body> laurent@366: </pou> laurent@366: <pou name="python_poll" pouType="functionBlock"> laurent@366: <interface> laurent@366: <inputVars> laurent@366: <variable name="TRIG"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="CODE"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: </inputVars> laurent@366: <outputVars> laurent@366: <variable name="ACK"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="RESULT"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: </outputVars> laurent@366: <localVars> laurent@366: <variable name="STATE"> laurent@366: <type> laurent@366: <DWORD/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="BUFFER"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="PREBUFFER"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="TRIGM1"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="TRIGGED"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: </localVars> laurent@366: </interface> laurent@366: <body> laurent@366: <ST> Edouard@1399: <xhtml:p><![CDATA[{extern void __PythonEvalFB(int, PYTHON_EVAL*);__PythonEvalFB(1,(PYTHON_EVAL*)(void*)data__);}]]></xhtml:p> laurent@366: </ST> laurent@366: </body> laurent@366: </pou> Edouard@1399: <pou name="python_gear" pouType="functionBlock"> laurent@366: <interface> laurent@366: <inputVars> laurent@366: <variable name="N"> laurent@366: <type> Edouard@1399: <UINT/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="TRIG"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="CODE"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: </inputVars> laurent@366: <outputVars> laurent@366: <variable name="ACK"> laurent@366: <type> laurent@366: <BOOL/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="RESULT"> laurent@366: <type> laurent@366: <string/> laurent@366: </type> laurent@366: </variable> laurent@366: </outputVars> laurent@366: <localVars> laurent@366: <variable name="py_eval"> laurent@366: <type> laurent@366: <derived name="python_eval"/> laurent@366: </type> laurent@366: </variable> laurent@366: <variable name="COUNTER"> laurent@366: <type> Edouard@1399: <UINT/> laurent@366: </type> laurent@366: </variable> laurent@366: </localVars> laurent@366: </interface> laurent@366: <body> laurent@366: <FBD> laurent@366: <block localId="1" width="125" height="110" typeName="python_eval" instanceName="py_eval"> laurent@366: <position x="525" y="580"/> laurent@366: <inputVariables> laurent@366: <variable formalParameter="TRIG"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="40"/> laurent@366: <connection refLocalId="7" formalParameter="OUT"> laurent@366: <position x="525" y="620"/> laurent@366: <position x="495" y="620"/> laurent@366: <position x="495" y="575"/> laurent@366: <position x="465" y="575"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: <variable formalParameter="CODE"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="85"/> laurent@366: <connection refLocalId="4"> laurent@366: <position x="525" y="665"/> laurent@366: <position x="370" y="665"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: </inputVariables> laurent@366: <inOutVariables/> laurent@366: <outputVariables> laurent@366: <variable formalParameter="ACK"> laurent@366: <connectionPointOut> laurent@366: <relPosition x="125" y="40"/> laurent@366: </connectionPointOut> laurent@366: </variable> laurent@366: <variable formalParameter="RESULT"> laurent@366: <connectionPointOut> laurent@366: <relPosition x="125" y="85"/> laurent@366: </connectionPointOut> laurent@366: </variable> laurent@366: </outputVariables> laurent@366: </block> laurent@366: <inVariable localId="2" height="35" width="25"> laurent@366: <position x="435" y="270"/> laurent@366: <connectionPointOut> laurent@366: <relPosition x="25" y="15"/> laurent@366: </connectionPointOut> laurent@366: <expression>N</expression> laurent@366: </inVariable> laurent@366: <inVariable localId="3" height="35" width="55"> laurent@366: <position x="275" y="585"/> laurent@366: <connectionPointOut> laurent@366: <relPosition x="55" y="15"/> laurent@366: </connectionPointOut> laurent@366: <expression>TRIG</expression> laurent@366: </inVariable> laurent@366: <inVariable localId="4" height="35" width="55"> laurent@366: <position x="315" y="650"/> laurent@366: <connectionPointOut> laurent@366: <relPosition x="55" y="15"/> laurent@366: </connectionPointOut> laurent@366: <expression>CODE</expression> laurent@366: </inVariable> laurent@366: <outVariable localId="5" height="35" width="45"> laurent@366: <position x="740" y="605"/> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="15"/> laurent@366: <connection refLocalId="1" formalParameter="ACK"> laurent@366: <position x="740" y="620"/> laurent@366: <position x="650" y="620"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: <expression>ACK</expression> laurent@366: </outVariable> laurent@366: <outVariable localId="6" height="35" width="75"> laurent@366: <position x="740" y="650"/> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="15"/> laurent@366: <connection refLocalId="1" formalParameter="RESULT"> laurent@366: <position x="740" y="665"/> laurent@366: <position x="650" y="665"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: <expression>RESULT</expression> laurent@366: </outVariable> laurent@366: <block localId="7" width="80" height="65" typeName="AND"> laurent@366: <position x="385" y="545"/> laurent@366: <inputVariables> laurent@366: <variable formalParameter="IN1"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="30"/> laurent@366: <connection refLocalId="13" formalParameter="OUT"> laurent@366: <position x="385" y="575"/> laurent@366: <position x="335" y="575"/> laurent@366: <position x="335" y="455"/> laurent@366: <position x="625" y="455"/> laurent@366: <position x="625" y="285"/> laurent@366: <position x="615" y="285"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: <variable formalParameter="IN2"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="55"/> laurent@366: <connection refLocalId="3"> laurent@366: <position x="385" y="600"/> laurent@366: <position x="330" y="600"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: </inputVariables> laurent@366: <inOutVariables/> laurent@366: <outputVariables> laurent@366: <variable formalParameter="OUT"> laurent@366: <connectionPointOut> laurent@366: <relPosition x="80" y="30"/> laurent@366: </connectionPointOut> laurent@366: </variable> laurent@366: </outputVariables> laurent@366: </block> laurent@366: <inVariable localId="9" height="35" width="85"> laurent@366: <position x="240" y="330"/> laurent@366: <connectionPointOut> laurent@366: <relPosition x="85" y="15"/> laurent@366: </connectionPointOut> laurent@366: <expression>COUNTER</expression> laurent@366: </inVariable> laurent@366: <block localId="10" width="80" height="65" typeName="ADD"> laurent@366: <position x="380" y="330"/> laurent@366: <inputVariables> laurent@366: <variable formalParameter="IN1"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="30"/> laurent@366: <connection refLocalId="9"> laurent@366: <position x="380" y="360"/> laurent@366: <position x="352" y="360"/> laurent@366: <position x="352" y="345"/> laurent@366: <position x="325" y="345"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: <variable formalParameter="IN2"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="55"/> laurent@366: <connection refLocalId="11"> laurent@366: <position x="380" y="385"/> laurent@366: <position x="325" y="385"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: </inputVariables> laurent@366: <inOutVariables/> laurent@366: <outputVariables> laurent@366: <variable formalParameter="OUT"> laurent@366: <connectionPointOut> laurent@366: <relPosition x="80" y="30"/> laurent@366: </connectionPointOut> laurent@366: </variable> laurent@366: </outputVariables> laurent@366: </block> Edouard@1399: <inVariable localId="11" height="35" width="85" executionOrderId="0" negated="false"> laurent@366: <position x="240" y="370"/> laurent@366: <connectionPointOut> Edouard@1399: <relPosition x="85" y="17"/> Edouard@1399: </connectionPointOut> Edouard@1399: <expression>1</expression> laurent@366: </inVariable> laurent@366: <block localId="13" width="80" height="65" typeName="EQ"> laurent@366: <position x="535" y="255"/> laurent@366: <inputVariables> laurent@366: <variable formalParameter="IN1"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="30"/> laurent@366: <connection refLocalId="2"> laurent@366: <position x="535" y="285"/> laurent@366: <position x="460" y="285"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: <variable formalParameter="IN2"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="55"/> laurent@366: <connection refLocalId="10" formalParameter="OUT"> laurent@366: <position x="535" y="310"/> laurent@366: <position x="497" y="310"/> laurent@366: <position x="497" y="360"/> laurent@366: <position x="460" y="360"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: </inputVariables> laurent@366: <inOutVariables/> laurent@366: <outputVariables> laurent@366: <variable formalParameter="OUT"> laurent@366: <connectionPointOut> laurent@366: <relPosition x="80" y="30"/> laurent@366: </connectionPointOut> laurent@366: </variable> laurent@366: </outputVariables> laurent@366: </block> laurent@366: <block localId="15" width="80" height="135" typeName="SEL"> laurent@366: <position x="785" y="245"/> laurent@366: <inputVariables> laurent@366: <variable formalParameter="G"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="40"/> laurent@366: <connection refLocalId="13" formalParameter="OUT"> laurent@366: <position x="785" y="285"/> laurent@366: <position x="615" y="285"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: <variable formalParameter="IN0"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="75"/> laurent@366: <connection refLocalId="10" formalParameter="OUT"> laurent@366: <position x="785" y="320"/> laurent@366: <position x="650" y="320"/> laurent@366: <position x="650" y="360"/> laurent@366: <position x="460" y="360"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: <variable formalParameter="IN1"> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="115"/> laurent@366: <connection refLocalId="16"> laurent@366: <position x="785" y="360"/> laurent@366: <position x="760" y="360"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: </variable> laurent@366: </inputVariables> laurent@366: <inOutVariables/> laurent@366: <outputVariables> laurent@366: <variable formalParameter="OUT"> laurent@366: <connectionPointOut> laurent@366: <relPosition x="80" y="40"/> laurent@366: </connectionPointOut> laurent@366: </variable> laurent@366: </outputVariables> laurent@366: </block> Edouard@1399: <inVariable localId="16" height="35" width="85" executionOrderId="0" negated="false"> laurent@366: <position x="675" y="345"/> laurent@366: <connectionPointOut> Edouard@1399: <relPosition x="85" y="17"/> Edouard@1399: </connectionPointOut> Edouard@1399: <expression>0</expression> laurent@366: </inVariable> laurent@366: <outVariable localId="17" height="35" width="85"> laurent@366: <position x="905" y="270"/> laurent@366: <connectionPointIn> laurent@366: <relPosition x="0" y="15"/> laurent@366: <connection refLocalId="15" formalParameter="OUT"> laurent@366: <position x="905" y="285"/> laurent@366: <position x="865" y="285"/> laurent@366: </connection> laurent@366: </connectionPointIn> laurent@366: <expression>COUNTER</expression> laurent@366: </outVariable> laurent@366: </FBD> laurent@366: </body> laurent@366: </pou> laurent@366: </pous> laurent@366: </types> laurent@366: <instances> Edouard@3707: <configurations> Edouard@3707: <configuration name="configuration0"> Edouard@3707: <globalVars> Edouard@3707: <variable name="pyext_csv_update"> Edouard@3707: <type> Edouard@3707: <BOOL/> Edouard@3707: </type> Edouard@3707: <initialValue> Edouard@3707: <simpleValue value="TRUE"/> Edouard@3707: </initialValue> Edouard@3707: </variable> Edouard@3707: </globalVars> Edouard@3707: </configuration> Edouard@3707: </configurations> laurent@366: </instances> laurent@366: </project>