Move tests/project/modbus in exemples.
<?xml version='1.0' encoding='utf-8'?>
<project xmlns:ns1="http://www.plcopen.org/xml/tc6_0201" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.plcopen.org/xml/tc6_0201">
<fileHeader companyName="Unknown" productName="Unnamed" productVersion="1" creationDateTime="2022-12-09T12:13:26"/>
<contentHeader name="Unnamed" modificationDateTime="2022-12-16T11:30:15">
<coordinateInfo>
<fbd>
<scaling x="5" y="5"/>
</fbd>
<ld>
<scaling x="0" y="0"/>
</ld>
<sfc>
<scaling x="0" y="0"/>
</sfc>
</coordinateInfo>
</contentHeader>
<types>
<dataTypes/>
<pous>
<pou name="program0" pouType="program">
<interface>
<localVars>
<variable name="CSV_NAME_0">
<type>
<derived name="HMI_STRING"/>
</type>
<initialValue>
<simpleValue value="'my_int_csv.csv'"/>
</initialValue>
</variable>
<variable name="CSV_NAME_1">
<type>
<derived name="HMI_STRING"/>
</type>
<initialValue>
<simpleValue value="'my_str_csv.csv'"/>
</initialValue>
</variable>
<variable name="CSV_ROWSTR">
<type>
<derived name="HMI_STRING"/>
</type>
<initialValue>
<simpleValue value="'Recipe 5'"/>
</initialValue>
</variable>
<variable name="CSV_COLSTR">
<type>
<derived name="HMI_STRING"/>
</type>
<initialValue>
<simpleValue value="'Ingredient D'"/>
</initialValue>
</variable>
<variable name="CSV_ROWIDX">
<type>
<derived name="HMI_INT"/>
</type>
<initialValue>
<simpleValue value="5"/>
</initialValue>
</variable>
<variable name="CSV_COLIDX">
<type>
<derived name="HMI_INT"/>
</type>
<initialValue>
<simpleValue value="4"/>
</initialValue>
</variable>
<variable name="csv_read_by_string0">
<type>
<derived name="csv_read_by_string"/>
</type>
</variable>
<variable name="csv_read_by_int0">
<type>
<derived name="csv_read_by_int"/>
</type>
</variable>
<variable name="csv_reload0">
<type>
<derived name="csv_reload"/>
</type>
</variable>
<variable name="CSV_RES_0">
<type>
<derived name="HMI_STRING"/>
</type>
</variable>
<variable name="CSV_RES_1">
<type>
<derived name="HMI_STRING"/>
</type>
</variable>
<variable name="CSV_ACK_0">
<type>
<derived name="HMI_BOOL"/>
</type>
</variable>
<variable name="CSV_ACK_1">
<type>
<derived name="HMI_BOOL"/>
</type>
</variable>
<variable name="CSV_RELOAD_BTN">
<type>
<derived name="HMI_BOOL"/>
</type>
</variable>
</localVars>
</interface>
<body>
<FBD>
<block localId="1" typeName="csv_read_by_string" instanceName="csv_read_by_string0" executionOrderId="0" height="100" width="154">
<position x="450" y="170"/>
<inputVariables>
<variable formalParameter="FILE_NAME">
<connectionPointIn>
<relPosition x="0" y="35"/>
<connection refLocalId="7">
<position x="450" y="205"/>
<position x="390" y="205"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="ROW">
<connectionPointIn>
<relPosition x="0" y="60"/>
<connection refLocalId="8">
<position x="450" y="230"/>
<position x="390" y="230"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="COLUMN">
<connectionPointIn>
<relPosition x="0" y="85"/>
<connection refLocalId="9">
<position x="450" y="255"/>
<position x="390" y="255"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="ACK">
<connectionPointOut>
<relPosition x="154" y="35"/>
</connectionPointOut>
</variable>
<variable formalParameter="RESULT">
<connectionPointOut>
<relPosition x="154" y="60"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="2" typeName="csv_read_by_int" instanceName="csv_read_by_int0" executionOrderId="0" height="100" width="155">
<position x="450" y="40"/>
<inputVariables>
<variable formalParameter="FILE_NAME">
<connectionPointIn>
<relPosition x="0" y="35"/>
<connection refLocalId="4">
<position x="450" y="75"/>
<position x="390" y="75"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="ROW">
<connectionPointIn>
<relPosition x="0" y="60"/>
<connection refLocalId="5">
<position x="450" y="100"/>
<position x="390" y="100"/>
</connection>
</connectionPointIn>
</variable>
<variable formalParameter="COLUMN">
<connectionPointIn>
<relPosition x="0" y="85"/>
<connection refLocalId="6">
<position x="450" y="125"/>
<position x="390" y="125"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="ACK">
<connectionPointOut>
<relPosition x="155" y="35"/>
</connectionPointOut>
</variable>
<variable formalParameter="RESULT">
<connectionPointOut>
<relPosition x="155" y="60"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<block localId="3" typeName="csv_reload" instanceName="csv_reload0" executionOrderId="0" height="60" width="135">
<position x="470" y="334"/>
<inputVariables>
<variable formalParameter="TRIG">
<connectionPointIn>
<relPosition x="0" y="31"/>
<connection refLocalId="14">
<position x="470" y="365"/>
<position x="425" y="365"/>
</connection>
</connectionPointIn>
</variable>
</inputVariables>
<inOutVariables/>
<outputVariables>
<variable formalParameter="ACK">
<connectionPointOut>
<relPosition x="135" y="31"/>
</connectionPointOut>
</variable>
<variable formalParameter="RESULT">
<connectionPointOut>
<relPosition x="135" y="51"/>
</connectionPointOut>
</variable>
</outputVariables>
</block>
<inVariable localId="4" executionOrderId="0" height="30" width="110" negated="false">
<position x="280" y="60"/>
<connectionPointOut>
<relPosition x="110" y="15"/>
</connectionPointOut>
<expression>CSV_NAME_0</expression>
</inVariable>
<inVariable localId="5" executionOrderId="0" height="25" width="110" negated="false">
<position x="280" y="90"/>
<connectionPointOut>
<relPosition x="110" y="10"/>
</connectionPointOut>
<expression>CSV_ROWIDX</expression>
</inVariable>
<inVariable localId="6" executionOrderId="0" height="25" width="110" negated="false">
<position x="280" y="115"/>
<connectionPointOut>
<relPosition x="110" y="10"/>
</connectionPointOut>
<expression>CSV_COLIDX</expression>
</inVariable>
<inVariable localId="7" executionOrderId="0" height="30" width="110" negated="false">
<position x="280" y="190"/>
<connectionPointOut>
<relPosition x="110" y="15"/>
</connectionPointOut>
<expression>CSV_NAME_1</expression>
</inVariable>
<inVariable localId="8" executionOrderId="0" height="25" width="110" negated="false">
<position x="280" y="220"/>
<connectionPointOut>
<relPosition x="110" y="10"/>
</connectionPointOut>
<expression>CSV_ROWSTR</expression>
</inVariable>
<inVariable localId="9" executionOrderId="0" height="25" width="110" negated="false">
<position x="280" y="245"/>
<connectionPointOut>
<relPosition x="110" y="10"/>
</connectionPointOut>
<expression>CSV_COLSTR</expression>
</inVariable>
<outVariable localId="10" executionOrderId="0" height="25" width="82" negated="false">
<position x="645" y="90"/>
<connectionPointIn>
<relPosition x="0" y="10"/>
<connection refLocalId="2" formalParameter="RESULT">
<position x="645" y="100"/>
<position x="605" y="100"/>
</connection>
</connectionPointIn>
<expression>CSV_RES_0</expression>
</outVariable>
<outVariable localId="11" executionOrderId="0" height="25" width="82" negated="false">
<position x="645" y="65"/>
<connectionPointIn>
<relPosition x="0" y="10"/>
<connection refLocalId="2" formalParameter="ACK">
<position x="645" y="75"/>
<position x="605" y="75"/>
</connection>
</connectionPointIn>
<expression>CSV_ACK_0</expression>
</outVariable>
<outVariable localId="12" executionOrderId="0" height="25" width="82" negated="false">
<position x="645" y="195"/>
<connectionPointIn>
<relPosition x="0" y="10"/>
<connection refLocalId="1" formalParameter="ACK">
<position x="645" y="205"/>
<position x="604" y="205"/>
</connection>
</connectionPointIn>
<expression>CSV_ACK_1</expression>
</outVariable>
<outVariable localId="13" executionOrderId="0" height="25" width="82" negated="false">
<position x="645" y="220"/>
<connectionPointIn>
<relPosition x="0" y="10"/>
<connection refLocalId="1" formalParameter="RESULT">
<position x="645" y="230"/>
<position x="604" y="230"/>
</connection>
</connectionPointIn>
<expression>CSV_RES_1</expression>
</outVariable>
<inVariable localId="14" executionOrderId="0" height="25" width="125" negated="false">
<position x="300" y="355"/>
<connectionPointOut>
<relPosition x="125" y="10"/>
</connectionPointOut>
<expression>CSV_RELOAD_BTN</expression>
</inVariable>
</FBD>
</body>
</pou>
</pous>
</types>
<instances>
<configurations>
<configuration name="config">
<resource name="resource1">
<task name="task0" priority="0" interval="T#20ms">
<pouInstance name="instance0" typeName="program0"/>
</task>
</resource>
</configuration>
</configurations>
</instances>
</project>