<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.iplog.eu/index.php?action=history&amp;feed=atom&amp;title=Exchnge</id>
		<title>Exchnge - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.iplog.eu/index.php?action=history&amp;feed=atom&amp;title=Exchnge"/>
		<link rel="alternate" type="text/html" href="http://wiki.iplog.eu/index.php?title=Exchnge&amp;action=history"/>
		<updated>2026-04-03T20:57:23Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://wiki.iplog.eu/index.php?title=Exchnge&amp;diff=856&amp;oldid=prev</id>
		<title>Z033: Created page with &quot;== Back to Libraries == == Exchange library ==  === Filesystem === These FBs allows to export or import values between IEC61131-3 program variabl...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.iplog.eu/index.php?title=Exchnge&amp;diff=856&amp;oldid=prev"/>
				<updated>2020-04-30T06:29:31Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;== &lt;a href=&quot;/wiki/Libraries_for_IEC_61131-3&quot; title=&quot;Libraries for IEC 61131-3&quot;&gt;Back to Libraries&lt;/a&gt; == == Exchange library ==  === Filesystem === These FBs allows to export or import values between IEC61131-3 program variabl...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== [[Libraries for IEC 61131-3|Back to Libraries]] ==&lt;br /&gt;
== Exchange library ==&lt;br /&gt;
&lt;br /&gt;
=== Filesystem ===&lt;br /&gt;
These FBs allows to export or import values between IEC61131-3 program variables and filesystem.&lt;br /&gt;
&lt;br /&gt;
Exported values are stored in:&lt;br /&gt;
* PERM = 0: '''/tmp/metel/iec_61131-3/export/'''&lt;br /&gt;
* PERM = 1: '''/usr/local/metel/iec_61131-3/export'''&lt;br /&gt;
Imported values are primarily read from the temporary location '''/tmp/metel/iec_61131-3/import/'''. If this value is not found in the temporary location, it is searched in the permanent location '''/usr/local/metel/iec_61131-3/export'''.&lt;br /&gt;
&lt;br /&gt;
Filename is composed as '''datatype.name'''&lt;br /&gt;
&lt;br /&gt;
Reading and writing is proceed inside of program cycle, right at the moment, when it is called!&lt;br /&gt;
&lt;br /&gt;
Each imported value should be called only once in each cycle, else it is possible to read different values in several calls.&lt;br /&gt;
&lt;br /&gt;
To more precise timing of read and write to files, '''MEMORY AT variables should be used'''.&lt;br /&gt;
&lt;br /&gt;
==== FS_EXPORT_BOOL ====&lt;br /&gt;
Exports boolean value to file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of exported value&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|VALUE&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|value to export&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|PERM&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|0 - until reboot, 1 - permanent&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_EXPORT_INT ====&lt;br /&gt;
Exports signed integer value to file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of exported value&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|VALUE&lt;br /&gt;
|int&lt;br /&gt;
|&lt;br /&gt;
|value to export&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|PERM&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|0 - until reboot, 1 - permanent&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_EXPORT_UINT ====&lt;br /&gt;
Exports unsigned integer value to file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of exported value&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|VALUE&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|value to export&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|PERM&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|0 - until reboot, 1 - permanent&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_EXPORT_REAL ====&lt;br /&gt;
Exports real integer value to file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of exported value&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|VALUE&lt;br /&gt;
|real&lt;br /&gt;
|&lt;br /&gt;
|value to export&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|PERM&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|0 - until reboot, 1 - permanent&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_EXPORT_STRING ====&lt;br /&gt;
Exports string value to file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of exported value&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|VALUE&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|value to export&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|PERM&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|0 - until reboot, 1 - permanent&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_IMPORT_BOOL ====&lt;br /&gt;
Imports boolean value from file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of value to import&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|VALUE&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|imported value&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_IMPORT_INT ====&lt;br /&gt;
Imports signd integer value from file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of value to import&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|VALUE&lt;br /&gt;
|int&lt;br /&gt;
|&lt;br /&gt;
|imported value&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_IMPORT_UINT ====&lt;br /&gt;
Imports unsigned integer value from file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of value to import&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|VALUE&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|imported value&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_IMPORT_REAL ====&lt;br /&gt;
Imports real value from file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of value to import&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|VALUE&lt;br /&gt;
|real&lt;br /&gt;
|&lt;br /&gt;
|imported value&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== FS_IMPORT_STRING ====&lt;br /&gt;
Imports string value from file&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|in&lt;br /&gt;
|NAME&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|name of value to import&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR&lt;br /&gt;
|bool&lt;br /&gt;
|&lt;br /&gt;
|indicates some error occurs (0 = OK)&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|ERR_ID&lt;br /&gt;
|uint&lt;br /&gt;
|&lt;br /&gt;
|identifies occured error by unique code&lt;br /&gt;
|-&lt;br /&gt;
|out&lt;br /&gt;
|VALUE&lt;br /&gt;
|string&lt;br /&gt;
|&lt;br /&gt;
|imported value&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Z033</name></author>	</entry>

	</feed>