Minor changes to get better cleanup of debug and python_eval threads, accross multiple debug sessions and PLC runs.
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.plcopen.org/xml/tc6.xsd"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xsi:schemaLocation="http://www.plcopen.org/xml/tc6.xsd http://www.plcopen.org/xml/tc6.xsd">
<fileHeader companyName="lolitech"
productName="simul_visu_rmll"
productVersion="1"
creationDateTime="2008-06-27 17:09:17"/>
<contentHeader name="simul_visu_rmll"
modificationDateTime="2008-08-28 16:32:51">
<coordinateInfo>
<pageSize x="700" y="1000"/>
<fbd>
<scaling x="8" y="8"/>
</fbd>
<ld>
<scaling x="8" y="8"/>
</ld>
<sfc>
<scaling x="8" y="8"/>
</sfc>
</coordinateInfo>
</contentHeader>
<types>
<dataTypes>
<dataType name="gauge_range">
<baseType>
<subrangeSigned>
<range lower="0" upper="100"/>
<baseType>
<INT/>
</baseType>
</subrangeSigned>
</baseType>
</dataType>
</dataTypes>
<pous>
<pou name="main" pouType="program">
<interface>
<localVars>
<variable name="pump_in" address="%IX2.0.8192.0">
<type>
<BOOL/>
</type>
</variable>
<variable name="full_out" address="%QX2.0.8194.0">
<type>
<BOOL/>
</type>
</variable>
<variable name="empty_out" address="%QX2.0.8195.0">
<type>
<BOOL/>
</type>
</variable>
<variable name="sink_in" address="%IX2.0.8193.0">
<type>
<BOOL/>
</type>
</variable>
<variable name="gauge_out" address="%QW2.0.8196.0">
<type>
<derived name="gauge_range"/>
</type>
<initialValue>
<simpleValue value="0"/>
</initialValue>
</variable>
</localVars>
<localVars>
<variable name="led_full">
<type>
<derived name="Button"/>
</type>
</variable>
<variable name="led_pump">
<type>
<derived name="Button"/>
</type>
</variable>
<variable name="led_sink">
<type>
<derived name="Button"/>
</type>
</variable>
<variable name="led_empty">
<type>
<derived name="Button"/>
</type>
</variable>
<variable name="movewater">
<type>
<derived name="Transform"/>
</type>
</variable>
</localVars>
<localVars>
<variable name="tmp1" address="%QD1.0.1">
<type>
<REAL/>
</type>
</variable>
<variable name="tmp2" address="%QW1.0.0">
<type>
<INT/>
</type>
</variable>
</localVars>
</interface>
<body>
<FBD>
<block localId="6" width="128" height="96" typeName="Button" instanceName="led_full">
<position x="896" y="80"/>
<inputVariables>
<variable formalParameter="Show">
<connectionPointIn>
<relPosition x="0" y="32"/>
</connectionPointIn>
</variable>
<variable formalParameter="Enable">
<connectionPointIn>
<relPosition x="0" y="56"/>
</connectionPointIn>
</variable>
<variable formalParameter="Toggle">
<connectionPointIn>
<relPosition x="0" y="80"/>
<connection refLocalId="3">
<position x="896" y="160"/>
<position x="864" y="160"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="State">
<connectionPointOut>
<relPosition x="128" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="7" width="128" height="96" typeName="Button" instanceName="led_pump">
<position x="1232" y="80"/>
<inputVariables>
<variable formalParameter="Show">
<connectionPointIn>
<relPosition x="0" y="32"/>
</connectionPointIn>
</variable>
<variable formalParameter="Enable">
<connectionPointIn>
<relPosition x="0" y="56"/>
</connectionPointIn>
</variable>
<variable formalParameter="Value">
<connectionPointIn>
<relPosition x="0" y="80"/>
<connection refLocalId="40">
<position x="1232" y="160"/>
<position x="1176" y="160"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="State">
<connectionPointOut>
<relPosition x="128" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="8" width="128" height="96" typeName="Button" instanceName="led_sink">
<position x="1232" y="224"/>
<inputVariables>
<variable formalParameter="Show">
<connectionPointIn>
<relPosition x="0" y="32"/>
</connectionPointIn>
</variable>
<variable formalParameter="Enable">
<connectionPointIn>
<relPosition x="0" y="56"/>
</connectionPointIn>
</variable>
<variable formalParameter="Value">
<connectionPointIn>
<relPosition x="0" y="80"/>
<connection refLocalId="39">
<position x="1232" y="304"/>
<position x="1176" y="304"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="State">
<connectionPointOut>
<relPosition x="128" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="9" width="128" height="96" typeName="Button" instanceName="led_empty">
<position x="904" y="224"/>
<inputVariables>
<variable formalParameter="Show">
<connectionPointIn>
<relPosition x="0" y="32"/>
</connectionPointIn>
</variable>
<variable formalParameter="Enable">
<connectionPointIn>
<relPosition x="0" y="56"/>
</connectionPointIn>
</variable>
<variable formalParameter="Toggle">
<connectionPointIn>
<relPosition x="0" y="80"/>
<connection refLocalId="4">
<position x="904" y="304"/>
<position x="872" y="304"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="State">
<connectionPointOut>
<relPosition x="128" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="10" width="120" height="168" typeName="Transform" instanceName="movewater">
<position x="1192" y="656"/>
<inputVariables>
<variable formalParameter="Show">
<connectionPointIn>
<relPosition x="0" y="32"/>
</connectionPointIn>
</variable>
<variable formalParameter="Enable">
<connectionPointIn>
<relPosition x="0" y="48"/>
</connectionPointIn>
</variable>
<variable formalParameter="SetX">
<connectionPointIn>
<relPosition x="0" y="72"/>
</connectionPointIn>
</variable>
<variable formalParameter="SetY">
<connectionPointIn>
<relPosition x="0" y="96"/>
<connection refLocalId="35" formalParameter="OUT">
<position x="1192" y="752"/>
<position x="936" y="752"/>
<position x="936" y="600"/>
<position x="1354" y="600"/>
<position x="1354" y="520"/>
<position x="1344" y="520"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="SetXScale">
<connectionPointIn>
<relPosition x="0" y="112"/>
</connectionPointIn>
</variable>
<variable formalParameter="SetYScale">
<connectionPointIn>
<relPosition x="0" y="136"/>
</connectionPointIn>
</variable>
<variable formalParameter="SetAngle">
<connectionPointIn>
<relPosition x="0" y="160"/>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="X">
<connectionPointOut>
<relPosition x="120" y="32"/>
</connectionPointOut>
</variable>
<variable formalParameter="Y">
<connectionPointOut>
<relPosition x="120" y="48"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="11" width="136" height="40" typeName="INT_TO_REAL">
<position x="880" y="408"/>
<inputVariables>
<variable formalParameter="IN">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="5">
<position x="880" y="440"/>
<position x="856" y="440"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="136" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="15" width="136" height="40" typeName="BOOL_TO_INT">
<position x="240" y="384"/>
<inputVariables>
<variable formalParameter="IN">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="1">
<position x="240" y="416"/>
<position x="200" y="416"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="136" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="16" width="136" height="40" typeName="BOOL_TO_INT">
<position x="168" y="272"/>
<inputVariables>
<variable formalParameter="IN">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="2">
<position x="168" y="304"/>
<position x="128" y="304"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="136" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="17" width="80" height="64" typeName="SUB">
<position x="480" y="288"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="19" formalParameter="OUT">
<position x="480" y="320"/>
<position x="432" y="320"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="15" formalParameter="OUT">
<position x="480" y="344"/>
<position x="456" y="344"/>
<position x="456" y="416"/>
<position x="376" y="416"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="19" width="80" height="64" typeName="ADD">
<position x="352" y="288"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="16" formalParameter="OUT">
<position x="352" y="320"/>
<position x="332" y="320"/>
<position x="332" y="304"/>
<position x="304" y="304"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="25">
<position x="352" y="344"/>
<position x="296" y="344"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="20" width="80" height="64" typeName="LT">
<position x="304" y="568"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="28">
<position x="304" y="600"/>
<position x="176" y="600"/>
<position x="176" y="568"/>
<position x="136" y="568"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="22">
<position x="304" y="624"/>
<position x="256" y="624"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="21" width="80" height="64" typeName="GT">
<position x="304" y="488"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="28">
<position x="304" y="520"/>
<position x="176" y="520"/>
<position x="176" y="568"/>
<position x="136" y="568"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="23">
<position x="304" y="544"/>
<position x="264" y="544"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<inVariable localId="22" height="32" width="64">
<position x="192" y="608"/>
<connectionPointOut>
<relPosition x="64" y="16"/>
</connectionPointOut>
<expression>INT#1</expression>
</inVariable>
<inVariable localId="23" height="32" width="72">
<position x="192" y="528"/>
<connectionPointOut>
<relPosition x="72" y="16"/>
</connectionPointOut>
<expression>INT#99</expression>
</inVariable>
<inVariable localId="25" height="32" width="104">
<position x="192" y="328"/>
<connectionPointOut>
<relPosition x="104" y="16"/>
</connectionPointOut>
<expression>gauge_out</expression>
</inVariable>
<outVariable localId="27" height="32" width="104">
<position x="600" y="304"/>
<connectionPointIn>
<relPosition x="0" y="16"/>
<connection refLocalId="17" formalParameter="OUT">
<position x="600" y="320"/>
<position x="560" y="320"/>
</connection>
</connectionPointIn>
<expression>gauge_out</expression>
</outVariable>
<inVariable localId="28" height="32" width="104">
<position x="32" y="552"/>
<connectionPointOut>
<relPosition x="104" y="16"/>
</connectionPointOut>
<expression>gauge_out</expression>
</inVariable>
<inVariable localId="5" height="32" width="104">
<position x="752" y="424"/>
<connectionPointOut>
<relPosition x="104" y="16"/>
</connectionPointOut>
<expression>gauge_out</expression>
</inVariable>
<inVariable localId="29" height="32" width="112">
<position x="752" y="528"/>
<connectionPointOut>
<relPosition x="112" y="16"/>
</connectionPointOut>
<expression>REAL#245.0</expression>
</inVariable>
<inVariable localId="30" height="32" width="104">
<position x="752" y="480"/>
<connectionPointOut>
<relPosition x="104" y="16"/>
</connectionPointOut>
<expression>REAL#15.0</expression>
</inVariable>
<block localId="31" width="80" height="64" typeName="SUB">
<position x="920" y="464"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="30">
<position x="920" y="496"/>
<position x="856" y="496"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="29">
<position x="920" y="520"/>
<position x="892" y="520"/>
<position x="892" y="544"/>
<position x="864" y="544"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="32" width="80" height="64" typeName="MUL">
<position x="1048" y="408"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="11" formalParameter="OUT">
<position x="1048" y="440"/>
<position x="1016" y="440"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="31" formalParameter="OUT">
<position x="1048" y="464"/>
<position x="1030" y="464"/>
<position x="1030" y="496"/>
<position x="1000" y="496"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="33" width="80" height="64" typeName="DIV">
<position x="1160" y="408"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="32" formalParameter="OUT">
<position x="1160" y="440"/>
<position x="1128" y="440"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="34">
<position x="1160" y="464"/>
<position x="1146" y="464"/>
<position x="1146" y="520"/>
<position x="1136" y="520"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<inVariable localId="34" height="32" width="112">
<position x="1024" y="504"/>
<connectionPointOut>
<relPosition x="112" y="16"/>
</connectionPointOut>
<expression>REAL#100.0</expression>
</inVariable>
<block localId="35" width="80" height="64" typeName="ADD">
<position x="1264" y="488"/>
<inputVariables>
<variable formalParameter="IN1">
<connectionPointIn>
<relPosition x="0" y="32"/>
<connection refLocalId="33" formalParameter="OUT">
<position x="1264" y="520"/>
<position x="1254" y="520"/>
<position x="1254" y="440"/>
<position x="1240" y="440"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="IN2">
<connectionPointIn>
<relPosition x="0" y="56"/>
<connection refLocalId="29">
<position x="1264" y="544"/>
<position x="864" y="544"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="OUT">
<connectionPointOut>
<relPosition x="80" y="32"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<inVariable localId="4" height="32" width="104">
<position x="768" y="288"/>
<connectionPointOut>
<relPosition x="104" y="16"/>
</connectionPointOut>
<expression>empty_out</expression>
</inVariable>
<inVariable localId="3" height="32" width="96">
<position x="768" y="144"/>
<connectionPointOut>
<relPosition x="96" y="16"/>
</connectionPointOut>
<expression>full_out</expression>
</inVariable>
<outVariable localId="37" height="32" width="96">
<position x="432" y="504"/>
<connectionPointIn>
<relPosition x="0" y="16"/>
<connection refLocalId="21" formalParameter="OUT">
<position x="432" y="520"/>
<position x="384" y="520"/>
</connection>
</connectionPointIn>
<expression>full_out</expression>
</outVariable>
<outVariable localId="38" height="32" width="104">
<position x="432" y="584"/>
<connectionPointIn>
<relPosition x="0" y="16"/>
<connection refLocalId="20" formalParameter="OUT">
<position x="432" y="600"/>
<position x="384" y="600"/>
</connection>
</connectionPointIn>
<expression>empty_out</expression>
</outVariable>
<inVariable localId="2" height="32" width="112">
<position x="16" y="288"/>
<connectionPointOut>
<relPosition x="112" y="16"/>
</connectionPointOut>
<expression>pump_in</expression>
</inVariable>
<inVariable localId="1" height="32" width="104">
<position x="96" y="400"/>
<connectionPointOut>
<relPosition x="104" y="16"/>
</connectionPointOut>
<expression>sink_in</expression>
</inVariable>
<outVariable localId="41" height="32" width="48">
<position x="1520" y="496"/>
<connectionPointIn>
<relPosition x="0" y="16"/>
<connection refLocalId="35" formalParameter="OUT">
<position x="1520" y="512"/>
<position x="1432" y="512"/>
<position x="1432" y="520"/>
<position x="1344" y="520"/>
</connection>
</connectionPointIn>
<expression>tmp1</expression>
</outVariable>
<inVariable localId="39" height="32" width="80">
<position x="1096" y="288"/>
<connectionPointOut>
<relPosition x="80" y="16"/>
</connectionPointOut>
<expression>sink_in</expression>
</inVariable>
<inVariable localId="40" height="32" width="80">
<position x="1096" y="144"/>
<connectionPointOut>
<relPosition x="80" y="16"/>
</connectionPointOut>
<expression>pump_in</expression>
</inVariable>
<outVariable localId="42" height="32" width="56">
<position x="624" y="368"/>
<connectionPointIn>
<relPosition x="0" y="16"/>
<connection refLocalId="17" formalParameter="OUT">
<position x="624" y="384"/>
<position x="558" y="384"/>
<position x="558" y="360"/>
<position x="570" y="360"/>
<position x="570" y="320"/>
<position x="560" y="320"/>
</connection>
</connectionPointIn>
<expression>tmp2</expression>
</outVariable>
</FBD>
</body>
</pou>
</pous>
</types>
<instances>
<configurations>
<configuration name="conf">
<resource name="ress">
<task name="matache" interval="00:00:00.100000" priority="0">
<pouInstance name="moninst" type="main"/>
</task>
</resource>
</configuration>
</configurations>
</instances>
</project>