LabVIEWForum.de
LV-Anwendung fernsteuern - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: LV-Anwendung fernsteuern (/Thread-LV-Anwendung-fernsteuern)



LV-Anwendung fernsteuern - FEL - 28.05.2008 09:35

Hi Leute,

folgendes Problem. Ich habe ein LV-Programm zur Steuerung eines techn. Gerätes (so eine Art Netzteil) erstellt. Die Kommunikation erfolgt über RS232. Die Anwendung läuft wie gewünscht.

Nun gibt es den Fall, dass ein Anwender mehrere der Geräte besitzt und diese im Verbund verwenden möchte. Dazu muß ich ein neues LV-Programm erstellen. Ich will folgendermaßen vorgehen. Das neue Programm ruft mehrfach (je nach Anzahl der Geräte) die schon erstellte LV-Steuerung auf. Die Kommunikation würde ich über TCP (Localhost/<portnummer>) machen. Die Portnummer wird als Kommandozeileparameter übergeben.

So nun zu meinen Fragen.

Gibt es eine bessere Vorgehensweise? ActiveX? Damit kenne ich mich allerdings gar nicht aus.

Was ist beim mehrfachen Aufruf einer LV-Anwendung zu beachten?
Von dem INI-Eintrag „AllowMultipleInstances = True“ habe ich schon in einem anderen Tread gelesen.


Gruß Micha


LV-Anwendung fernsteuern - eg - 16.08.2008 22:25

AllowMultipleInstances = True erlaubt dir mehrere Executables zu starten

Wenn das ganze auf einem PC ablaufen soll, dann würde ich Queues zur Kommunikation verwenden und alles in eine EXE packen.

Sonst TCP/IP oder Shared Variables verwenden.


LV-Anwendung fernsteuern - FEL - 18.08.2008 09:24

Hallo Eugen,

' schrieb:und alles in eine EXE packen.

danke für Deine Infos, aber das verstehe ich nicht.
Also die vorhanden Steuerung liegt als EXE vor. Diese soll nun mehrfach aufgerufen werden, um mehrere Geräte zu steuern.
Gesteuert werden soll das ganze von einer neu zu erstellenden Applikation.
Wie kann man ein LV-Projekt mehrfach in ein neues Projekt integrieren? Bloß mal aus Interesse. Inzwische habe ich eine Lösung.

Ich habe eine neue Applikation erstellt. Die ruft mit Hilfe der LVWUtil32.dll die anderen EXEen auf. Die Komminikation
erfolgt über TCP. Klappt eigentlich ganz gut. Allerdings funktioniert das Ermitteln der WinRefnum über die API Funktion
"Get Window Refnum" von LVWUtil32.dll nicht immer zuverlässig. Das hat zur Folge, daß ich die aufgerufenen Anwendungen
nicht beenden kann. Das muß der User dann erledigen. Nicht schön.
Vielleicht kann mir da jemand weiterhelfen.

Gruß Micha


LV-Anwendung fernsteuern - eg - 18.08.2008 09:38

Du kannst dir wie schon beschrieben ein VI machen und dann dieses über VI Server aufrufen.
Zum Beenden könntest du z.B. über TCP/IP oder Queue ein Stopbefehl hinschicken.

Hier ein Beispiel, wie man mit VI Server aufrufen könnte:
http://www.LabVIEWportal.eu/viewtopic.php?f=33&t=147


LV-Anwendung fernsteuern - FEL - 18.08.2008 12:35

OK, jetzt weiß ich was Du meinst.
Na ja, meine Applikation ist schon etwas komplexer als ein einfaches VI. Da wären noch 77 benutzerdefinierte
VI's. Man könnte das Haupt-VI duplizieren und umbenennen um die Anwendung 2 Mal aufzurufen. Dann müßten
aber alle benutzerdefinierten VI's ablaufinvariant sein?

Gruß Micha