LabVIEWForum.de
Einfacher Kommunikationsaufbau zwischen C# und LabVIEW ? - 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: Einfacher Kommunikationsaufbau zwischen C# und LabVIEW ? (/Thread-Einfacher-Kommunikationsaufbau-zwischen-C-und-LabVIEW)



Einfacher Kommunikationsaufbau zwischen C# und LabVIEW ? - oliver_iavf - 25.03.2010 11:55

Hallo Zusammen,

ich suche derzeit eine nicht zu komplizierte Möglichkeit Variablen zwischen LabVIEW und C# auszutauschen.

Z.B.: Messwerte oder Konfigurationen zwischen den 2 Programmen hin und her schicken (z.B. mittels Button Click)

Zur Verfügung steht:

LabVIEW 9.0 auf der einen Seite und Visual Studio 2008 mit C# auf der anderen.

Gewünscht ist am liebsten eine Windows Forms Anwendung welche mittels Timer jede Sekunde einen Wert von LabVIEW
ausliest. Gibt es hierfür ein Beispiel oder hat dies schonmal jemand gemacht ?

Die Daten sollten dann mittels C# weiter verarbeitet werden.


Grüße und Vielen Dank für Hilfen
Oliver


Einfacher Kommunikationsaufbau zwischen C# und LabVIEW ? - Y-P - 25.03.2010 17:38

Von C# habe ich so gut wie keine Ahnung, aber am einfachsten schreibst Du jede Sekunde Deinen Wert in eine Text- oder INI-Datei und liest ihn dann mit Deiner C#-Anwendung aus. Unsure
Das ist dann halt nicht synchronisiert, aber Du könntest immer einen Zählwert mit in die Datei schreiben und wenn der sich noch nicht erhöht hat, ist es der alte Wert und er wird einfach ignoriert.

Also z.B.:
1. LabVIEW schreibt 1, 5.55 in die Datei
2. C# liest Wert 1, 5.55
3. C# liest Wert 1, 5.55 (wird aber ignoriert, weil Zählwert 1 schon erhalten wurde)
4. LabVIEW schreibt 2, 6.66
5. C# liest 2, 6.66 und übernimmt den neuen Wert, weil der Zählwert 2 zuvor noch nicht empfangen wurde
6. LabVIEW schreibt 3, 7.77
7. C# liest 3, 7.77 und übernimmt den neuen Wert, weil der Zählwert 3 zuvor noch nicht empfangen wurde
8. C# liest 3, 7.77 (wird aber ignoriert, weil Zählwert 3 schon erhalten wurde)
.....

Gruß Markus


Einfacher Kommunikationsaufbau zwischen C# und LabVIEW ? - SeBa - 25.03.2010 18:14

Die Frage ist ja auch, was du als kompliziert ansiehst.

Möglichkeiten wären auch:

1) TCP/UDP Server in LV, Client in C#

2) DDE Server in LV

3) wie Markus sagt, nur per FileWatcher innerhalb von C# auf eine Anderung des Files warten und dann auslesen

4) statt einem FileWatcher einfach das LastModified der Datei auslesen und nur bei Änderung auslesen

...

Gruß SeBa


Einfacher Kommunikationsaufbau zwischen C# und LabVIEW ? - oliver_iavf - 29.03.2010 09:55

Danke für die Infos,

werde das mal probieren.

Grüße
Oliver