lpcmanager

Parents 37f7e851eae4
Children a21abfab093c
Add new POUs: connect_to_wifi, get_network_settings, get_image_version, get_linux_version
--- a/LPCExtension.py Tue Apr 01 12:08:54 2025 +0200
+++ b/LPCExtension.py Tue Apr 08 15:27:53 2025 +0200
@@ -22,6 +22,7 @@
product = GetLPCProduct()
if product in SOM28_modules + SOM6_modules:
features.libraries += [('Python', 'py_ext.PythonLibrary', True),
+ ('Common', SimplePOULibraryFactory(_poulibpath("Common")), True),
('RTC', SimplePOULibraryFactory(_poulibpath("RTC")), True),
('MQTT', 'mqtt.MQTTLibrary', True)]
if product in WX_GOT_modules + SVG_GOT_modules:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Pous/pousCommon.xml Tue Apr 08 15:27:53 2025 +0200
@@ -0,0 +1,747 @@
+<?xml version='1.0' encoding='utf-8'?>
+<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">
+ <fileHeader companyName="Beremiz" productName="Beremiz" productVersion="0.0" creationDateTime="2008-12-14T16:53:26"/>
+ <contentHeader name="Beremiz non-standard POUs library" modificationDateTime="2025-04-08T14:47:31">
+ <coordinateInfo>
+ <fbd>
+ <scaling x="8" y="8"/>
+ </fbd>
+ <ld>
+ <scaling x="0" y="0"/>
+ </ld>
+ <sfc>
+ <scaling x="0" y="0"/>
+ </sfc>
+ </coordinateInfo>
+ </contentHeader>
+ <types>
+ <dataTypes/>
+ <pous>
+ <pou name="connect_to_wifi" pouType="functionBlock">
+ <interface>
+ <outputVars>
+ <variable name="ACK">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ <variable name="RESULT">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ </outputVars>
+ <localVars>
+ <variable name="py_eval">
+ <type>
+ <derived name="python_eval"/>
+ </type>
+ </variable>
+ </localVars>
+ <inputVars>
+ <variable name="TRIG">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ <variable name="INTERFACE_NAME">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ <variable name="AUTHENTICATION_TYPE">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ <variable name="SSID">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ <variable name="PASSWORD">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ </inputVars>
+ </interface>
+ <body>
+ <FBD>
+ <inVariable localId="3" height="35" width="56" executionOrderId="0" negated="false">
+ <position x="264" y="416"/>
+ <connectionPointOut>
+ <relPosition x="56" y="16"/>
+ </connectionPointOut>
+ <expression>TRIG</expression>
+ </inVariable>
+ <block localId="1" width="125" height="110" typeName="python_eval" instanceName="py_eval" executionOrderId="0">
+ <position x="464" y="392"/>
+ <inputVariables>
+ <variable formalParameter="TRIG">
+ <connectionPointIn>
+ <relPosition x="0" y="40"/>
+ <connection refLocalId="3">
+ <position x="464" y="432"/>
+ <position x="320" y="432"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="CODE">
+ <connectionPointIn>
+ <relPosition x="0" y="88"/>
+ <connection refLocalId="2">
+ <position x="464" y="480"/>
+ <position x="392" y="480"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ </inputVariables>
+ <inOutVariables/>
+ <outputVariables>
+ <variable formalParameter="ACK">
+ <connectionPointOut>
+ <relPosition x="125" y="40"/>
+ </connectionPointOut>
+ </variable>
+ <variable formalParameter="RESULT">
+ <connectionPointOut>
+ <relPosition x="125" y="88"/>
+ </connectionPointOut>
+ </variable>
+ </outputVariables>
+ </block>
+ <outVariable localId="5" height="35" width="45" executionOrderId="0" negated="false">
+ <position x="689" y="417"/>
+ <connectionPointIn>
+ <relPosition x="0" y="15"/>
+ <connection refLocalId="1" formalParameter="ACK">
+ <position x="689" y="432"/>
+ <position x="589" y="432"/>
+ </connection>
+ </connectionPointIn>
+ <expression>ACK</expression>
+ </outVariable>
+ <outVariable localId="6" height="35" width="75" executionOrderId="0" negated="false">
+ <position x="689" y="462"/>
+ <connectionPointIn>
+ <relPosition x="0" y="18"/>
+ <connection refLocalId="1" formalParameter="RESULT">
+ <position x="689" y="480"/>
+ <position x="589" y="480"/>
+ </connection>
+ </connectionPointIn>
+ <expression>RESULT</expression>
+ </outVariable>
+ <block localId="7" typeName="CONCAT" executionOrderId="0" height="203" width="67">
+ <position x="512" y="80"/>
+ <inputVariables>
+ <variable formalParameter="IN1">
+ <connectionPointIn>
+ <relPosition x="0" y="32"/>
+ <connection refLocalId="8">
+ <position x="512" y="112"/>
+ <position x="480" y="112"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN2">
+ <connectionPointIn>
+ <relPosition x="0" y="48"/>
+ <connection refLocalId="9">
+ <position x="512" y="128"/>
+ <position x="224" y="128"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN3">
+ <connectionPointIn>
+ <relPosition x="0" y="72"/>
+ <connection refLocalId="10">
+ <position x="512" y="152"/>
+ <position x="480" y="152"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN4">
+ <connectionPointIn>
+ <relPosition x="0" y="88"/>
+ <connection refLocalId="15">
+ <position x="512" y="168"/>
+ <position x="221" y="168"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN5">
+ <connectionPointIn>
+ <relPosition x="0" y="112"/>
+ <connection refLocalId="4">
+ <position x="512" y="192"/>
+ <position x="480" y="192"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN6">
+ <connectionPointIn>
+ <relPosition x="0" y="128"/>
+ <connection refLocalId="11">
+ <position x="512" y="208"/>
+ <position x="224" y="208"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN7">
+ <connectionPointIn>
+ <relPosition x="0" y="152"/>
+ <connection refLocalId="13">
+ <position x="512" y="232"/>
+ <position x="480" y="232"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN8">
+ <connectionPointIn>
+ <relPosition x="0" y="168"/>
+ <connection refLocalId="12">
+ <position x="512" y="248"/>
+ <position x="224" y="248"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN9">
+ <connectionPointIn>
+ <relPosition x="0" y="192"/>
+ <connection refLocalId="14">
+ <position x="512" y="272"/>
+ <position x="480" y="272"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ </inputVariables>
+ <inOutVariables/>
+ <outputVariables>
+ <variable formalParameter="OUT">
+ <connectionPointOut>
+ <relPosition x="67" y="32"/>
+ </connectionPointOut>
+ </variable>
+ </outputVariables>
+ </block>
+ <inVariable localId="8" executionOrderId="0" height="32" width="192" negated="false">
+ <position x="288" y="96"/>
+ <connectionPointOut>
+ <relPosition x="192" y="16"/>
+ </connectionPointOut>
+ <expression>'ConnectToWiFi("'</expression>
+ </inVariable>
+ <inVariable localId="9" executionOrderId="0" height="32" width="128" negated="false">
+ <position x="96" y="112"/>
+ <connectionPointOut>
+ <relPosition x="128" y="16"/>
+ </connectionPointOut>
+ <expression>INTERFACE_NAME</expression>
+ </inVariable>
+ <inVariable localId="10" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="368" y="136"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>'", "'</expression>
+ </inVariable>
+ <inVariable localId="11" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="112" y="192"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>SSID</expression>
+ </inVariable>
+ <inVariable localId="14" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="368" y="256"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>'")'</expression>
+ </inVariable>
+ <connector name="Code" localId="30" height="28" width="128">
+ <position x="600" y="96"/>
+ <connectionPointIn>
+ <relPosition x="0" y="16"/>
+ <connection refLocalId="7" formalParameter="OUT">
+ <position x="600" y="112"/>
+ <position x="579" y="112"/>
+ </connection>
+ </connectionPointIn>
+ </connector>
+ <continuation name="Code" localId="2" width="128" height="32">
+ <position x="264" y="464"/>
+ <connectionPointOut>
+ <relPosition x="128" y="16"/>
+ </connectionPointOut>
+ </continuation>
+ <inVariable localId="4" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="368" y="176"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>'", "'</expression>
+ </inVariable>
+ <inVariable localId="12" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="112" y="232"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>PASSWORD</expression>
+ </inVariable>
+ <inVariable localId="13" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="368" y="216"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>'", "'</expression>
+ </inVariable>
+ <inVariable localId="15" executionOrderId="0" height="35" width="165" negated="false">
+ <position x="56" y="152"/>
+ <connectionPointOut>
+ <relPosition x="165" y="16"/>
+ </connectionPointOut>
+ <expression>AUTHENTICATION_TYPE</expression>
+ </inVariable>
+ </FBD>
+ </body>
+ </pou>
+ <pou name="get_network_settings" pouType="functionBlock">
+ <interface>
+ <outputVars>
+ <variable name="ACK">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ <variable name="RESULT">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ </outputVars>
+ <localVars>
+ <variable name="py_eval">
+ <type>
+ <derived name="python_eval"/>
+ </type>
+ </variable>
+ </localVars>
+ <inputVars>
+ <variable name="TRIG">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ <variable name="INTERFACE_NAME">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ <variable name="FIELD_NAME">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ </inputVars>
+ </interface>
+ <body>
+ <FBD>
+ <inVariable localId="3" height="35" width="56" executionOrderId="0" negated="false">
+ <position x="256" y="352"/>
+ <connectionPointOut>
+ <relPosition x="56" y="16"/>
+ </connectionPointOut>
+ <expression>TRIG</expression>
+ </inVariable>
+ <block localId="1" width="125" height="110" typeName="python_eval" instanceName="py_eval" executionOrderId="0">
+ <position x="456" y="328"/>
+ <inputVariables>
+ <variable formalParameter="TRIG">
+ <connectionPointIn>
+ <relPosition x="0" y="40"/>
+ <connection refLocalId="3">
+ <position x="456" y="368"/>
+ <position x="312" y="368"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="CODE">
+ <connectionPointIn>
+ <relPosition x="0" y="88"/>
+ <connection refLocalId="2">
+ <position x="456" y="416"/>
+ <position x="384" y="416"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ </inputVariables>
+ <inOutVariables/>
+ <outputVariables>
+ <variable formalParameter="ACK">
+ <connectionPointOut>
+ <relPosition x="125" y="40"/>
+ </connectionPointOut>
+ </variable>
+ <variable formalParameter="RESULT">
+ <connectionPointOut>
+ <relPosition x="125" y="88"/>
+ </connectionPointOut>
+ </variable>
+ </outputVariables>
+ </block>
+ <outVariable localId="5" height="35" width="45" executionOrderId="0" negated="false">
+ <position x="681" y="353"/>
+ <connectionPointIn>
+ <relPosition x="0" y="15"/>
+ <connection refLocalId="1" formalParameter="ACK">
+ <position x="681" y="368"/>
+ <position x="581" y="368"/>
+ </connection>
+ </connectionPointIn>
+ <expression>ACK</expression>
+ </outVariable>
+ <outVariable localId="6" height="35" width="75" executionOrderId="0" negated="false">
+ <position x="681" y="398"/>
+ <connectionPointIn>
+ <relPosition x="0" y="18"/>
+ <connection refLocalId="1" formalParameter="RESULT">
+ <position x="681" y="416"/>
+ <position x="581" y="416"/>
+ </connection>
+ </connectionPointIn>
+ <expression>RESULT</expression>
+ </outVariable>
+ <block localId="7" typeName="CONCAT" executionOrderId="0" height="192" width="64">
+ <position x="512" y="80"/>
+ <inputVariables>
+ <variable formalParameter="IN1">
+ <connectionPointIn>
+ <relPosition x="0" y="40"/>
+ <connection refLocalId="8">
+ <position x="512" y="120"/>
+ <position x="464" y="120"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN2">
+ <connectionPointIn>
+ <relPosition x="0" y="72"/>
+ <connection refLocalId="9">
+ <position x="512" y="152"/>
+ <position x="248" y="152"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN3">
+ <connectionPointIn>
+ <relPosition x="0" y="104"/>
+ <connection refLocalId="10">
+ <position x="512" y="184"/>
+ <position x="464" y="184"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN4">
+ <connectionPointIn>
+ <relPosition x="0" y="136"/>
+ <connection refLocalId="11">
+ <position x="512" y="216"/>
+ <position x="248" y="216"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="IN5">
+ <connectionPointIn>
+ <relPosition x="0" y="176"/>
+ <connection refLocalId="14">
+ <position x="512" y="256"/>
+ <position x="464" y="256"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ </inputVariables>
+ <inOutVariables/>
+ <outputVariables>
+ <variable formalParameter="OUT">
+ <connectionPointOut>
+ <relPosition x="64" y="40"/>
+ </connectionPointOut>
+ </variable>
+ </outputVariables>
+ </block>
+ <inVariable localId="8" executionOrderId="0" height="32" width="192" negated="false">
+ <position x="272" y="104"/>
+ <connectionPointOut>
+ <relPosition x="192" y="16"/>
+ </connectionPointOut>
+ <expression>'GetNetworkSettings("'</expression>
+ </inVariable>
+ <inVariable localId="9" executionOrderId="0" height="32" width="128" negated="false">
+ <position x="120" y="136"/>
+ <connectionPointOut>
+ <relPosition x="128" y="16"/>
+ </connectionPointOut>
+ <expression>INTERFACE_NAME</expression>
+ </inVariable>
+ <inVariable localId="10" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="352" y="168"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>'", "'</expression>
+ </inVariable>
+ <inVariable localId="11" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="136" y="200"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>FIELD_NAME</expression>
+ </inVariable>
+ <inVariable localId="14" executionOrderId="0" height="32" width="112" negated="false">
+ <position x="352" y="240"/>
+ <connectionPointOut>
+ <relPosition x="112" y="16"/>
+ </connectionPointOut>
+ <expression>'")'</expression>
+ </inVariable>
+ <connector name="Code" localId="30" height="28" width="128">
+ <position x="632" y="104"/>
+ <connectionPointIn>
+ <relPosition x="0" y="16"/>
+ <connection refLocalId="7" formalParameter="OUT">
+ <position x="632" y="120"/>
+ <position x="576" y="120"/>
+ </connection>
+ </connectionPointIn>
+ </connector>
+ <continuation name="Code" localId="2" width="128" height="32">
+ <position x="256" y="400"/>
+ <connectionPointOut>
+ <relPosition x="128" y="16"/>
+ </connectionPointOut>
+ </continuation>
+ </FBD>
+ </body>
+ </pou>
+ <pou name="get_image_version" pouType="functionBlock">
+ <interface>
+ <outputVars>
+ <variable name="ACK">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ <variable name="RESULT">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ </outputVars>
+ <localVars>
+ <variable name="py_eval">
+ <type>
+ <derived name="python_eval"/>
+ </type>
+ </variable>
+ </localVars>
+ <inputVars>
+ <variable name="TRIG">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ </inputVars>
+ </interface>
+ <body>
+ <FBD>
+ <inVariable localId="4" height="40" width="168" executionOrderId="0" negated="false">
+ <position x="72" y="102"/>
+ <connectionPointOut>
+ <relPosition x="168" y="18"/>
+ </connectionPointOut>
+ <expression>'GetImageVersion()'</expression>
+ </inVariable>
+ <inVariable localId="3" height="35" width="56" executionOrderId="0" negated="false">
+ <position x="72" y="56"/>
+ <connectionPointOut>
+ <relPosition x="56" y="16"/>
+ </connectionPointOut>
+ <expression>TRIG</expression>
+ </inVariable>
+ <block localId="1" width="125" height="110" typeName="python_eval" instanceName="py_eval" executionOrderId="0">
+ <position x="272" y="32"/>
+ <inputVariables>
+ <variable formalParameter="TRIG">
+ <connectionPointIn>
+ <relPosition x="0" y="40"/>
+ <connection refLocalId="3">
+ <position x="272" y="72"/>
+ <position x="128" y="72"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="CODE">
+ <connectionPointIn>
+ <relPosition x="0" y="88"/>
+ <connection refLocalId="4">
+ <position x="272" y="120"/>
+ <position x="127" y="120"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ </inputVariables>
+ <inOutVariables/>
+ <outputVariables>
+ <variable formalParameter="ACK">
+ <connectionPointOut>
+ <relPosition x="125" y="40"/>
+ </connectionPointOut>
+ </variable>
+ <variable formalParameter="RESULT">
+ <connectionPointOut>
+ <relPosition x="125" y="88"/>
+ </connectionPointOut>
+ </variable>
+ </outputVariables>
+ </block>
+ <outVariable localId="5" height="35" width="45" executionOrderId="0" negated="false">
+ <position x="497" y="57"/>
+ <connectionPointIn>
+ <relPosition x="0" y="15"/>
+ <connection refLocalId="1" formalParameter="ACK">
+ <position x="497" y="72"/>
+ <position x="397" y="72"/>
+ </connection>
+ </connectionPointIn>
+ <expression>ACK</expression>
+ </outVariable>
+ <outVariable localId="6" height="35" width="75" executionOrderId="0" negated="false">
+ <position x="497" y="102"/>
+ <connectionPointIn>
+ <relPosition x="0" y="18"/>
+ <connection refLocalId="1" formalParameter="RESULT">
+ <position x="497" y="120"/>
+ <position x="397" y="120"/>
+ </connection>
+ </connectionPointIn>
+ <expression>RESULT</expression>
+ </outVariable>
+ </FBD>
+ </body>
+ </pou>
+ <pou name="get_linux_version" pouType="functionBlock">
+ <interface>
+ <outputVars>
+ <variable name="ACK">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ <variable name="RESULT">
+ <type>
+ <string/>
+ </type>
+ </variable>
+ </outputVars>
+ <localVars>
+ <variable name="py_eval">
+ <type>
+ <derived name="python_eval"/>
+ </type>
+ </variable>
+ </localVars>
+ <inputVars>
+ <variable name="TRIG">
+ <type>
+ <BOOL/>
+ </type>
+ </variable>
+ </inputVars>
+ </interface>
+ <body>
+ <FBD>
+ <inVariable localId="4" height="40" width="168" executionOrderId="0" negated="false">
+ <position x="72" y="102"/>
+ <connectionPointOut>
+ <relPosition x="168" y="18"/>
+ </connectionPointOut>
+ <expression>'GetLinuxVersion()'</expression>
+ </inVariable>
+ <inVariable localId="3" height="35" width="56" executionOrderId="0" negated="false">
+ <position x="72" y="56"/>
+ <connectionPointOut>
+ <relPosition x="56" y="16"/>
+ </connectionPointOut>
+ <expression>TRIG</expression>
+ </inVariable>
+ <block localId="1" width="125" height="110" typeName="python_eval" instanceName="py_eval" executionOrderId="0">
+ <position x="272" y="32"/>
+ <inputVariables>
+ <variable formalParameter="TRIG">
+ <connectionPointIn>
+ <relPosition x="0" y="40"/>
+ <connection refLocalId="3">
+ <position x="272" y="72"/>
+ <position x="128" y="72"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ <variable formalParameter="CODE">
+ <connectionPointIn>
+ <relPosition x="0" y="88"/>
+ <connection refLocalId="4">
+ <position x="272" y="120"/>
+ <position x="127" y="120"/>
+ </connection>
+ </connectionPointIn>
+ </variable>
+ </inputVariables>
+ <inOutVariables/>
+ <outputVariables>
+ <variable formalParameter="ACK">
+ <connectionPointOut>
+ <relPosition x="125" y="40"/>
+ </connectionPointOut>
+ </variable>
+ <variable formalParameter="RESULT">
+ <connectionPointOut>
+ <relPosition x="125" y="88"/>
+ </connectionPointOut>
+ </variable>
+ </outputVariables>
+ </block>
+ <outVariable localId="5" height="35" width="45" executionOrderId="0" negated="false">
+ <position x="497" y="57"/>
+ <connectionPointIn>
+ <relPosition x="0" y="15"/>
+ <connection refLocalId="1" formalParameter="ACK">
+ <position x="497" y="72"/>
+ <position x="397" y="72"/>
+ </connection>
+ </connectionPointIn>
+ <expression>ACK</expression>
+ </outVariable>
+ <outVariable localId="6" height="35" width="75" executionOrderId="0" negated="false">
+ <position x="497" y="102"/>
+ <connectionPointIn>
+ <relPosition x="0" y="18"/>
+ <connection refLocalId="1" formalParameter="RESULT">
+ <position x="497" y="120"/>
+ <position x="397" y="120"/>
+ </connection>
+ </connectionPointIn>
+ <expression>RESULT</expression>
+ </outVariable>
+ </FBD>
+ </body>
+ </pou>
+ </pous>
+ </types>
+ <instances>
+ <configurations/>
+ </instances>
+</project>