LabVIEWForum.de
Funktionen in Formula Nodes - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: Funktionen in Formula Nodes (/Thread-Funktionen-in-Formula-Nodes)

Seiten: 1 2 3


Funktionen in Formula Nodes - vince - 27.08.2007 09:35

Hallo!

Möchte einige komplizierte Berechnungen innerhalb eines Formel Knotens durchführen und brauche dazu einige Gleichungen als Funktionen.
Wie kann ich eine Funktion (mit mehreren Inputs und einem Output) innerhalb eines Formel Knotens definieren? Aus der LabVIEW Hilfe werde ich nicht wirklich schlau und meine C Kenntnisse sind auch schon sehr eingerostet.

z.B. die Funktion: test(x,y,z) = x*y*z mit double als Rückgabewert
das ich zur Berechnung nur mehr test(x,y,z) aufrufen muß und das Ergebnis erhalte

Ich hoffe man versteht was ich meine und ihr könnt mir weiterhelfen.
Vielen Dank schon mal im voraus

VP


Funktionen in Formula Nodes - Achim - 27.08.2007 09:44

[attachment=8292]

Wenn du möchtest, kannst du daraus ein SubVI machen...und das dann immer wieder aufrufen...oder was hast du gemeint? Zum Erstellen der Ein- und Ausgänge einfach rechts auf den Rand des Formelknotens klicken...


Funktionen in Formula Nodes - derTetris - 27.08.2007 09:48

so in etwa:
[attachment=8293]

edit: Achim war schneller Wink


Funktionen in Formula Nodes - vince - 27.08.2007 09:54

Hab was anderes gemeint.

Im Formel Knoten kann ich ja C Code verwenden.
Und ich will innerhalb des Formel Knotens eine Funktion definieren und aufrufen.

z.B innerhalb einer Formelknotens:

double test(int a, int b, int c)
{
x = (a*b)/c;
return x;
}

..................................

if(c != 0)
{
y = test(a,b,c);
}

Weiß nicht ob die Syntax so stimmt, habe C nicht mehr so im Kopf. Aber als Beispiel was ich will sollte es reichen.
Ist das innerhalb eines Formel Knotens möglich und wie lautet die genaue Syntax?


Funktionen in Formula Nodes - derTetris - 27.08.2007 10:08

so:

[attachment=8294]


Funktionen in Formula Nodes - Achim - 27.08.2007 10:14

@ derTetris:

Nee, das hat er auch nicht gemeint...

@vince:
Ich weiß auch nicht, wie's in C genau geht, aber ich glaube schon, dass du im Formelknoten eine Funktion definieren kannst und dann innerhalb wieder aufrufen kannst. Das macht aber nur Sinn, wenn du innerhalb des Formelknotens diese Funktion mehrfach brauchst und dadurch Tipp-Arbeit sparen kannst bzw. das Risiko von Tippfehlern minimieren willst! Eine Funktion zu definieren macht ja auch in nem "richtigen" C-Programm nur Sinn, wenn du diese Funktion z.B. in deiner "allumfassenden" Lebens-Schleife o.ä. mehrfach von verschiedenen Stellen aus aufrufst. Und für ein solches Programm ist der Formelknoten ja nicht gedacht...Das wär ja ein (C-) Programm im (G- bzw. LabVIEW-) Programm...


Funktionen in Formula Nodes - vince - 27.08.2007 10:53

@Achim

Genau so mein ich es. Ich hab hier eine Berechnung über ca. 4 A4 Seiten und muß manche Sachen innerhalb einer anderen Gleichung (mit anderen Werten) wieder berechnen. Deswegen möchte ich dafür Funktionen definieren, bzw. sind auf meiner Vorlage Funktionen definiert. Das ganze am besten innerhalb eines Formelknotens. Bei dem kurzen Beispiel ging es mir nur ums Prinzip.

Jetzt stell sich halt das Problem wie man innerhalb eines Formelknotens eine Funktion (für reine Berechnungen) definieren kann.
Die Hilfe gibt leider nicht viel dazu her.


Funktionen in Formula Nodes - Achim - 27.08.2007 11:32

Gleiches Problem...(für dich) unbefriedigende Lösung....


Funktionen in Formula Nodes - vince - 27.08.2007 11:58

Ja danke erst mal.

Ich mach jetzt halt die primitiv Lösung und kopiere den Code der Funktion einfach an die jeweiligen Stellen. Macht das ganze zwar noch unübersichtlicher, aber scheint nicht anders zu funktionieren.

Trotzdem ein Dank an alle, für die Hilfe


Funktionen in Formula Nodes - Achim - 27.08.2007 12:00

Kannste deine Berechung nicht mit LV-Funktionen machen? Dann könntest du wiederkehrende Code-Stellen als SubVI's definieren...