<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/</id><updated>2020-08-31T14:21:51.451000Z</updated><subtitle>Recent posts to RTO in CODESYS?</subtitle><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=250#ef8a/e4dd" rel="alternate"/><published>2020-08-31T14:21:51.451000Z</published><updated>2020-08-31T14:21:51.451000Z</updated><author><name>aliazzz</name><uri>https://forge.codesys.com/u/aliazzz/</uri></author><id>https://forge.codesys.com63a3954f14c7ed3d9c1bfbaccbd0c6ddd70152b0</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;A tip: you can also submit your code in the snippets corner as then all submitted code is easy to browse/find/search;&lt;br/&gt;
&lt;a href="https://forge.codesys.com/tol/iec-snippets/home/Home/"&gt;https://forge.codesys.com/tol/iec-snippets/home/Home/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Plus, offcourse kudoes for the effort, it looks very complete!&lt;br/&gt;
😉&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=25#9d4f/5501/9ea9/8260" rel="alternate"/><published>2020-08-31T14:02:58.524000Z</published><updated>2020-08-31T14:02:58.524000Z</updated><author><name>mandeepahujaifm</name><uri>https://forge.codesys.com/u/mandeepahujaifm/</uri></author><id>https://forge.codesys.comc9337de843fe62265575b2e6578da63fff9ae243</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hello aliazzz Please see the attached timing diagram for RTO in AB. I have included my implementation as well in this forum. Also, please let me know if it can be improved etc.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=25#ef8a" rel="alternate"/><published>2020-08-31T13:50:07.869000Z</published><updated>2020-08-31T13:50:07.869000Z</updated><author><name>mandeepahujaifm</name><uri>https://forge.codesys.com/u/mandeepahujaifm/</uri></author><id>https://forge.codesys.comb68e041762f25bae10fbd5623541ee637a341dde</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;After looking all over the Internet and in this fourm I decided to take a stab at it. I am sharing the first implementation of the CODESYS RTO block. &lt;/p&gt;&lt;div class="dl_button" style="float: right; clear: right;"&gt;
        &lt;p&gt;&lt;a href="..."&gt;Download&lt;/a&gt; file&lt;/p&gt;
        &lt;/div&gt;&lt;p&gt;&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c"&gt;(*  @author - Mandeep Ahuja&lt;/span&gt;
&lt;span class="c"&gt;    @date - 08/31/2020&lt;/span&gt;
&lt;span class="c"&gt;    @Rev - 1.0&lt;/span&gt;
&lt;span class="c"&gt;    @company - ifm efector, inc.&lt;/span&gt;
&lt;span class="c"&gt;    @Terms - Not to be used without this comment header&lt;/span&gt;
&lt;span class="c"&gt;*)&lt;/span&gt;
&lt;span class="n"&gt;FUNCTION_BLOCK&lt;/span&gt; &lt;span class="n"&gt;RTO&lt;/span&gt;
&lt;span class="n"&gt;VAR_INPUT&lt;/span&gt;
    &lt;span class="n"&gt;IN&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;    &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;INPUT&lt;/span&gt; &lt;span class="n"&gt;Signal&lt;/span&gt;
    &lt;span class="n"&gt;RST&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;RESET&lt;/span&gt; &lt;span class="n"&gt;Signal&lt;/span&gt;
    &lt;span class="n"&gt;PT&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;TIME&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;PRESET&lt;/span&gt; &lt;span class="n"&gt;Time&lt;/span&gt;
 &lt;span class="n"&gt;END_VAR&lt;/span&gt;
 &lt;span class="n"&gt;VAR&lt;/span&gt;
    &lt;span class="n"&gt;StartTime&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;TIME&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
    &lt;span class="n"&gt;prevET&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;TIME&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
 &lt;span class="n"&gt;END_VAR&lt;/span&gt;
 &lt;span class="n"&gt;VAR&lt;/span&gt;
    &lt;span class="n"&gt;INOn&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;R_TRIG&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;END_VAR&lt;/span&gt;
&lt;span class="n"&gt;VAR_OUTPUT&lt;/span&gt;  &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;RETAIN&lt;/span&gt;
    &lt;span class="n"&gt;ET&lt;/span&gt; &lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;TIME&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt;&lt;span class="n"&gt;ELAPSED&lt;/span&gt; &lt;span class="n"&gt;Time&lt;/span&gt;
&lt;span class="n"&gt;END_VAR&lt;/span&gt;
&lt;span class="n"&gt;VAR_OUTPUT&lt;/span&gt;
    &lt;span class="n"&gt;Q&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="n"&gt;OUTPUT&lt;/span&gt; &lt;span class="n"&gt;Bit&lt;/span&gt;
&lt;span class="n"&gt;END_VAR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nv"&gt;INOn&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;CLK&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;IN&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;INOn&lt;/span&gt;.&lt;span class="nv"&gt;Q&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;StartTime&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TIME&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;&lt;span class="c1"&gt;; //On Rising Edge of IN store this moment in Time() as StartTime for the accumulation&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;

&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;IN&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;ET&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TIME&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;StartTime&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nv"&gt;prevET&lt;/span&gt;&lt;span class="c1"&gt;; // Calculate Elapsed Time&lt;/span&gt;
&lt;span class="k"&gt;ELSE&lt;/span&gt;
    &lt;span class="nv"&gt;prevET&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;ET&lt;/span&gt;&lt;span class="c1"&gt;; // When IN goes low then store the ET and pause accumulating&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;

&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;ET&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;=&lt;/span&gt; &lt;span class="nv"&gt;PT&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;ET&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;PT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;Q&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;ELSE&lt;/span&gt;
    &lt;span class="nv"&gt;Q&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;      &lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;

&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;RST&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt; &lt;span class="o"&gt;//&lt;/span&gt; &lt;span class="nv"&gt;Reset&lt;/span&gt; &lt;span class="nv"&gt;everything&lt;/span&gt; &lt;span class="nv"&gt;back&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;Initial&lt;/span&gt; &lt;span class="nv"&gt;state&lt;/span&gt; &lt;span class="nv"&gt;including&lt;/span&gt; &lt;span class="nv"&gt;any&lt;/span&gt; &lt;span class="nv"&gt;Rising&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="nv"&gt;Falling&lt;/span&gt; &lt;span class="nv"&gt;edge&lt;/span&gt; &lt;span class="nv"&gt;triggers&lt;/span&gt;
    &lt;span class="nv"&gt;INOn&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;CLK&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; &lt;/span&gt;
    &lt;span class="nv"&gt;ET&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;T&lt;/span&gt;&lt;span class="sc"&gt;#0&lt;/span&gt;&lt;span class="nv"&gt;MS&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;prevET&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;T&lt;/span&gt;&lt;span class="sc"&gt;#0&lt;/span&gt;&lt;span class="nv"&gt;MS&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;Q&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;h1 id="usage"&gt;Usage&lt;/h1&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;PROGRAM&lt;/span&gt; &lt;span class="nt"&gt;Main&lt;/span&gt;
&lt;span class="nt"&gt;VAR&lt;/span&gt; &lt;span class="nt"&gt;PERSISTENT&lt;/span&gt;
    &lt;span class="nt"&gt;RTO_0&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;RTO&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
&lt;span class="nt"&gt;END_VAR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=250#9d4f/5501/9ea9" rel="alternate"/><published>2020-08-29T01:02:23.459000Z</published><updated>2020-08-29T01:02:23.459000Z</updated><author><name>aliazzz</name><uri>https://forge.codesys.com/u/aliazzz/</uri></author><id>https://forge.codesys.com7aa76c7eef7c83f83bd9548caa045d65eb683081</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;would you be so kind and post a definition or a link to a definition of this RTO timer FB? That would most helpfull, thank you in advance. Maybe OSCAT has this type of timer allready implemented, but without your definition It wll be more difficult to help.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=25#9d4f/5501" rel="alternate"/><published>2020-08-28T13:52:33.480000Z</published><updated>2020-08-28T13:52:33.480000Z</updated><author><name>mandeepahujaifm</name><uri>https://forge.codesys.com/u/mandeepahujaifm/</uri></author><id>https://forge.codesys.com547ecadcf5da871ddb56aafec2f271b5ee4e4d18</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Ok this is a good start. Doesn't have the "Preset Time" input and doesn't have the Done output bit. &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=25#9d4f" rel="alternate"/><published>2020-08-27T20:58:40.594000Z</published><updated>2020-08-27T20:58:40.594000Z</updated><author><name>Morberis</name><uri>https://forge.codesys.com/u/morberis/</uri></author><id>https://forge.codesys.com26ddf74a9ce3a0bebb645e2a771a878f256c5232</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I found something for you &lt;a class="" href="https://www.reddit.com/r/PLC/comments/98060f/is_there_retentive_option_in_codesys_timer/e4dne2o/" rel="nofollow"&gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This is not my code, this is code from the link&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;FUNCTION_BLOCK&lt;/span&gt; &lt;span class="n"&gt;RTO&lt;/span&gt;
 &lt;span class="n"&gt;VAR_INPUT&lt;/span&gt;
        &lt;span class="n"&gt;Run&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
        &lt;span class="k"&gt;Reset&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
 &lt;span class="n"&gt;END_VAR&lt;/span&gt;
 &lt;span class="n"&gt;VAR&lt;/span&gt; &lt;span class="n"&gt;RETAIN&lt;/span&gt;
        &lt;span class="n"&gt;Running&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;BOOL&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
        &lt;span class="n"&gt;StartTime&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;TIME&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="n"&gt;END_VAR&lt;/span&gt;
 &lt;span class="n"&gt;VAR&lt;/span&gt;
         &lt;span class="n"&gt;ResetONS&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;R_TRIG&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
 &lt;span class="n"&gt;END_VAR&lt;/span&gt;
 &lt;span class="n"&gt;VAR_OUTPUT&lt;/span&gt; &lt;span class="n"&gt;RETAIN&lt;/span&gt;
          &lt;span class="n"&gt;ET&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;TIME&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
 &lt;span class="n"&gt;END_VAR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;     &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;RUN&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;NOT&lt;/span&gt; &lt;span class="nv"&gt;Running&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
         &lt;span class="nv"&gt;StartTime&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TIME&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
         &lt;span class="nv"&gt;Running&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;END_IF&lt;/span&gt;
    &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;NOT&lt;/span&gt; &lt;span class="nv"&gt;RUN&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;NOT&lt;/span&gt; &lt;span class="nv"&gt;Running&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
         &lt;span class="nv"&gt;StartTime&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TIME&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;END_IF&lt;/span&gt;
     &lt;span class="nv"&gt;ResetONS&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;clk&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;Reset&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;; &lt;/span&gt;
    &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;ResetONS&lt;/span&gt;.&lt;span class="nv"&gt;Q&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
         &lt;span class="nv"&gt;Running&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
         &lt;span class="nv"&gt;StartTime&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TIME&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
    &lt;span class="nv"&gt;END_IF&lt;/span&gt;
    &lt;span class="nv"&gt;ET&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TIME&lt;/span&gt;&lt;span class="ss"&gt;()&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;StartTime&lt;/span&gt;&lt;span class="c1"&gt;;  &lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>RTO in CODESYS?</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/c7ebf8a913/?limit=25#a2c7" rel="alternate"/><published>2020-08-27T20:52:17.545000Z</published><updated>2020-08-27T20:52:17.545000Z</updated><author><name>mandeepahujaifm</name><uri>https://forge.codesys.com/u/mandeepahujaifm/</uri></author><id>https://forge.codesys.com24332f5cac20e062aa777ffd9673ec717b21867d</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hello all, I am sure this is brought up all the time. Looking for an RTO type of FB in CODESYS. Anyone have any luck porting this functionality over from AB? Please advice&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>