<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Call a Function Block</title><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/112faf3b05/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/CODESYS-V2/thread/112faf3b05/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/CODESYS-V2/thread/112faf3b05/</id><updated>2020-02-27T21:52:47.959000Z</updated><subtitle>Recent posts to Call a Function Block</subtitle><entry><title>Call a Function Block</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/112faf3b05/?limit=25#4d1d" rel="alternate"/><published>2020-02-27T21:52:47.959000Z</published><updated>2020-02-27T21:52:47.959000Z</updated><author><name>Romuald</name><uri>https://forge.codesys.com/u/romuald/</uri></author><id>https://forge.codesys.combb90a5a7029b6d3b605a6e35ca3a0aba84068cb7</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Nitrozin hat geschrieben:&lt;/strong&gt;&lt;br/&gt;
Hi,&lt;br/&gt;
- call a FB from your event wich sets a global bit&lt;br/&gt;
- call PRG1 in main cycle as long as bit is true.&lt;br/&gt;
- reset the bit in PRG1 when all stuff is send.&lt;br/&gt;
Nitro&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Perhaps you want to say this:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;VAR_GLOBAL&lt;/span&gt;
&lt;span class="err"&gt; &lt;/span&gt; &lt;span class="nt"&gt;Gstart&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;BOOL&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;p&gt;System Event 'start' --&amp;gt; START_PRG&lt;br/&gt;
Cyclic Tasks  which calls --&amp;gt; PRG_WITH_FB&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;PROGRAM&lt;/span&gt; &lt;span class="n"&gt;START_PRG&lt;/span&gt;
&lt;span class="n"&gt;Gstart&lt;/span&gt; &lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;TRUE&lt;/span&gt;&lt;span class="p"&gt;;&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;PROGRAM&lt;/span&gt; &lt;span class="nv"&gt;PRG_WITH_FB&lt;/span&gt;
&lt;span class="nv"&gt;VAR&lt;/span&gt;
  &lt;span class="nv"&gt;Inst&lt;/span&gt;: &lt;span class="nv"&gt;FB&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
  &lt;span class="nv"&gt;error&lt;/span&gt;: &lt;span class="nv"&gt;INT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_VAR&lt;/span&gt;
&lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;Gstart&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
  &lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="k"&gt;send&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;IN_OUT&lt;/span&gt; &lt;span class="nv"&gt;variable&lt;/span&gt;. &lt;span class="nv"&gt;Set&lt;/span&gt; &lt;span class="nv"&gt;to&lt;/span&gt; &lt;span class="nv"&gt;FALSE&lt;/span&gt; &lt;span class="nv"&gt;when&lt;/span&gt; &lt;span class="nv"&gt;finished&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;
  &lt;span class="nv"&gt;Inst&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;var1&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;''&lt;/span&gt;, .., &lt;span class="k"&gt;send&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;Gstart&lt;/span&gt;, &lt;span class="nv"&gt;error&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;error&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;NOT&lt;/span&gt; &lt;span class="k"&gt;send&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
    &lt;span class="nv"&gt;Gstart&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="nv"&gt;END_IF&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</summary></entry><entry><title>Call a Function Block</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/112faf3b05/?limit=25#a372" rel="alternate"/><published>2020-02-27T21:52:43.722000Z</published><updated>2020-02-27T21:52:43.722000Z</updated><author><name>Romuald</name><uri>https://forge.codesys.com/u/romuald/</uri></author><id>https://forge.codesys.com0eeb806a0e81c7731adbefe9ee8f1409c930998f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;I should mention that I use the version 2.3.9.13&lt;/p&gt;
&lt;p&gt;What I did that seems to work:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;System&lt;/span&gt; &lt;span class="n"&gt;Event&lt;/span&gt; &lt;span class="s1"&gt;'start'&lt;/span&gt; &lt;span class="c1"&gt;--&amp;gt; START_PRG&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;PROGRAM&lt;/span&gt; &lt;span class="nv"&gt;START_PRG&lt;/span&gt;
&lt;span class="nv"&gt;VAR&lt;/span&gt;
  &lt;span class="nv"&gt;Inst&lt;/span&gt;: &lt;span class="nv"&gt;FB&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
  &lt;span class="nv"&gt;error&lt;/span&gt;: &lt;span class="nv"&gt;INT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
&lt;span class="nv"&gt;END_VAR&lt;/span&gt;
&lt;span class="nv"&gt;go&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;WHILE&lt;/span&gt; &lt;span class="nv"&gt;go&lt;/span&gt; &lt;span class="k"&gt;DO&lt;/span&gt;
  &lt;span class="nv"&gt;Inst&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;var1&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s1"&gt;''&lt;/span&gt;, .., &lt;span class="k"&gt;send&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;go&lt;/span&gt;, &lt;span class="nv"&gt;error&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nv"&gt;error&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_WHILE&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;In fact I simulates cycles with a WHILE boucle. Is the good way to do in CoDeSys development ?&lt;/p&gt;
&lt;p&gt;I don't think so. My WAGO stops responding  &lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Call a Function Block</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/112faf3b05/?limit=25#cffd" rel="alternate"/><published>2020-02-27T21:52:42.213000Z</published><updated>2020-02-27T21:52:42.213000Z</updated><author><name>Romuald</name><uri>https://forge.codesys.com/u/romuald/</uri></author><id>https://forge.codesys.com23df42844d41be83b383d58a980a0ffb940908f8</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Thanks for you reply.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Nitrozin hat geschrieben:&lt;/strong&gt;&lt;br/&gt;
Hi,&lt;br/&gt;
- call a FB from your event wich sets a global bit&lt;br/&gt;
Nitro&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;So we can call a FB from an event ? When I press the F2 key, only PRGs are proposed.&lt;/p&gt;
&lt;p&gt;I don't understand how we can call a FB. We do not need to create an instance ? It does not seem to be possible in System Events.&lt;/p&gt;
&lt;p&gt;And as I said, apparently we can not use parameters for POU in System Events.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Call a Function Block</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/112faf3b05/?limit=25#18c0" rel="alternate"/><published>2020-02-27T21:52:37.886000Z</published><updated>2020-02-27T21:52:37.886000Z</updated><author><name>Nitrozin</name><uri>https://forge.codesys.com/u/nitrozin/</uri></author><id>https://forge.codesys.comd8f4f0151c2bab0845c8da5ee19c1f3d460d9d61</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;call a FB from your event wich sets a global bit&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;call PRG1 in main cycle as long as bit is true.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;reset the bit in PRG1 when all stuff is send.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Nitro&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Call a Function Block</title><link href="https://forge.codesys.com/forge/talk/Codesys%2520V2.3/thread/112faf3b05/?limit=25#737e" rel="alternate"/><published>2020-02-27T21:52:36.389000Z</published><updated>2020-02-27T21:52:36.389000Z</updated><author><name>Romuald</name><uri>https://forge.codesys.com/u/romuald/</uri></author><id>https://forge.codesys.com98cfe6ffab48bdca65c0fb1533322a9a4b7acb6b</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I call a Program (PRG1) from System Events (event start for example).&lt;/p&gt;
&lt;p&gt;PRG1 have to send a email. But the function to do this is a function block and need multiple cycles.&lt;/p&gt;
&lt;p&gt;How to do this when PRG1 is called once and have only one cycle.&lt;/p&gt;
&lt;p&gt;I also notes that I can't put parmeters to call a program from System Events.&lt;/p&gt;
&lt;p&gt;It is possible from a Tasks Config but not from System Events.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;/p&gt;
&lt;p&gt;Romuald.&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>