<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Funktionen aufrufen! Eilig!!</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c741565c69/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c741565c69/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Deutsch/thread/c741565c69/</id><updated>2020-02-28T16:09:36.203000Z</updated><subtitle>Recent posts to Funktionen aufrufen! Eilig!!</subtitle><entry><title>Funktionen aufrufen! Eilig!!</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c741565c69/?limit=25#adad" rel="alternate"/><published>2020-02-28T16:09:36.203000Z</published><updated>2020-02-28T16:09:36.203000Z</updated><author><name>RolandWagner</name><uri>https://forge.codesys.com/u/rowa/</uri></author><id>https://forge.codesys.com6b3dcae56947f7f41eba7aaaf3c1d545ef22b952</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Ach ja, was ich noch vergessen habe:&lt;br/&gt;
Natürlich solltest Du auch den Ausgang der Funktion beschreiben:&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;Lichtschranke := TRUE;&lt;/p&gt;
&lt;p&gt;``` oder was auch immer Du als Ausgang ausgeben möchtest. Ansonsten kannst Du Dir den Aufruf der Funktion einfach nur sparen . Es wird immer FALSE zurückgegeben.&lt;br/&gt;
Wichtig ist, dass der Funktionsname selbst innerhalb der Funktion als Funktionsausgang (und nur der) geschrieben wird. Globale Variable kann man zwar innerhalb einer Funktion beschreiben, sind aber eigentlich tabu (sprich unschöner Programmierstil)!&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Funktionen aufrufen! Eilig!!</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c741565c69/?limit=25#0bf2" rel="alternate"/><published>2020-02-28T16:09:28.563000Z</published><updated>2020-02-28T16:09:28.563000Z</updated><author><name>RolandWagner</name><uri>https://forge.codesys.com/u/rowa/</uri></author><id>https://forge.codesys.comc94e490fee6647ba3af2c796b229e13988ab0ae5</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Na, ich hoffe mal, dass Du nicht gerade in irgendeiner Prüfung sitzt und damit Unterschleif betreiben willst   &lt;/p&gt;
&lt;p&gt;Was in jedem Fall falsch ist:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="n"&gt;trig_lichtschranke&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;Q&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Dafür gibt es ja wohl keinen .Q als Ausgang, oder? Nach Deiner Variablen-Deklaration wäre das einfach nur &lt;/p&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="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;trig_lichtschranke&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;lichtgitter&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Und im Aufruf der Funktion vom Hauptprogramm aus musst Du einfach nur die Parameter übergeben&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;Licht&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;lichtschranke&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="bp"&gt;.&lt;/span&gt;&lt;span class="nx nx-Member"&gt;Parameter&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="err"&gt;Ü&lt;/span&gt;&lt;span class="nx"&gt;bergabe&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="cp"&gt;[&lt;/span&gt;&lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="bp"&gt;.&lt;/span&gt;&lt;span class="nx nx-Member"&gt;Parameter&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="err"&gt;Ü&lt;/span&gt;&lt;span class="nx"&gt;bergabe&lt;/span&gt;&lt;span class="cp"&gt;]&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;oder z.B. konkret&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nt"&gt;Licht&lt;/span&gt;&lt;span class="o"&gt;:=&lt;/span&gt;&lt;span class="nt"&gt;Lichtschranke&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="nt"&gt;TRUE&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt; &lt;span class="nt"&gt;FALSE&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;bzw. statt FALSE/TRUE irgendwelche Übergabe-Variablen.&lt;/p&gt;
&lt;p&gt;Und natürlich den Strichpunkt am Ende nicht vergessen!&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Funktionen aufrufen! Eilig!!</title><link href="https://forge.codesys.com/forge/talk/Deutsch/thread/c741565c69/?limit=25#4714" rel="alternate"/><published>2020-02-28T16:09:25.834000Z</published><updated>2020-02-28T16:09:25.834000Z</updated><author><name>JonnyFlash</name><uri>https://forge.codesys.com/u/jonnyflash/</uri></author><id>https://forge.codesys.comdccb71f39f9d37477ca1e6b7e7ef3c5905726f31</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Könnt Ihr mir sagen ob das Aufrufen einer Funktion im Hauptprogramm so wie ich es im Folgenden gemacht habe richtig ist.&lt;br/&gt;
Wenn nicht bitte korrigieren. Bitte Besonderes Augenmerk auf den Term, beim Aufruf im Hauptprogramm, in Klammern legen. &lt;br/&gt;
Danke im Vorraus&lt;/p&gt;
&lt;p&gt;FUNCTION lichtschranke:BOOL&lt;br/&gt;
VAR_INPUT&lt;br/&gt;
trig_lichtschranke:BOOL;&lt;br/&gt;
lichtgitter:BOOL;&lt;br/&gt;
END_VAR&lt;/p&gt;
&lt;p&gt;IF ((trig_lichtschranke.Q) AND (lichtgitter = TRUE)) THEN&lt;br/&gt;
     lichtgitter := FALSE; &lt;br/&gt;
     ELSIF ((trig_lichtschranke.Q) AND (lichtgitter = FALSE)) THEN&lt;br/&gt;
     lichtgitter := TRUE;&lt;br/&gt;
END_IF;&lt;br/&gt;
trig_lichtschranke:= lichtgitter;&lt;br/&gt;
END_FUNCTION&lt;/p&gt;
&lt;p&gt;AUFRUF DER FUNKTION IM HAUPTPROGRAMM&lt;/p&gt;
&lt;p&gt;VAR&lt;br/&gt;
Licht: BOOL;&lt;br/&gt;
END_VAR&lt;/p&gt;
&lt;p&gt;Licht:=lichtschranke(trig_lichtschranke(CLK := taster_lichtgitter), lichtgitter)&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>