22.09.2009, 15:37
Beitrag #1
|
evildead
LVF-Neueinsteiger
Beiträge: 8
Registriert seit: Feb 2008
8
-
kA
91058
Deutschland
|
Kommunikation mit Java
Hallo,
ich habe folgendes Problem ich habe ein Programm in Java welches vorgibt wann die Messungen vorgenommen werden sollen. Die Messungen werden mit einem LavView Programm vorgenommen. Wie kann ich dem LabVIEW Programm von Java aus sagen, dass es jetzt messen soll. Nach der Messung müsste ich noch Bescheid bekommen, dass die Messung fertig ist. Messergebnisse müssen nicht übergeben werden.
Ich hab mir überlegt dass beide über übers Netzwerk kommunizieren(geht ja auch an einem Rechner). Würde das evtl auch über den Std In/Out gehen? Oder weiß noch jemand eine Möglichkeit?
mfG
Stefan
|
|
|
22.09.2009, 15:43
Beitrag #2
|
eg
LVF-SeniorMod
Beiträge: 3.868
Registriert seit: Nov 2005
2016
2003
kA
66111
Deutschland
|
Kommunikation mit Java
Ja, Netzwerk über Localhost wäre das beste, denke ich.
|
|
|
22.09.2009, 15:49
Beitrag #3
|
TSC
LVF-Team
Beiträge: 1.882
Registriert seit: Sep 2008
LV 2018 SP1
2008
EN
52379
Deutschland
|
Kommunikation mit Java
du könntest das LabVIEW programm so programmieren, dass es sich nach einer messung beendet. in java startest du dann das externe LabVIEW programm und wartest, bis es abgearbeitet ist. das wäre so mein ansatz. wofür man da jetzt ne netzwerkkommunikation brauchen sollte, kann ich nicht nachvollziehen.
LG
Torsten
"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" ( Konrad Zuse)
|
|
|
22.09.2009, 15:54
Beitrag #4
|
|
|
22.09.2009, 15:57
(Dieser Beitrag wurde zuletzt bearbeitet: 22.09.2009 16:00 von eg.)
Beitrag #5
|
eg
LVF-SeniorMod
Beiträge: 3.868
Registriert seit: Nov 2005
2016
2003
kA
66111
Deutschland
|
Kommunikation mit Java
' schrieb:Es ist ja auch keine "Netzwerkkommunikation", sondern eine "Datenübertragung über TCP/IP" zwischen zwei Applikationen auf dem selben Rechner.
Warum ist es keine Netzwerkkommunikation? Es ist eine Netzwerkkommunikation (weil es über die Netzwerkkarte läuft), nur halt im Localhost (also auf dem selben Rechner).
' schrieb:du könntest das LabVIEW programm so programmieren, dass es sich nach einer messung beendet. in java startest du dann das externe LabVIEW programm und wartest, bis es abgearbeitet ist. das wäre so mein ansatz.
Einfach, aber nicht flexibel.
|
|
|
22.09.2009, 16:10
Beitrag #6
|
evildead
LVF-Neueinsteiger
Beiträge: 8
Registriert seit: Feb 2008
8
-
kA
91058
Deutschland
|
Kommunikation mit Java
Danke für die schnellen Antworten.
Das mit dem Starten und Beenden geht spitze. Um das ganze flexibler zu gestalten Lese ich vor dem Messen eine Config-Datei ein die die Parameter meiner
Messung enthält.
Jetzt müsste ich nur noch wissen wie ich aus dem LabVIEW Programm eine exe mach und wie man einen übergebenen Parameter (wo er das Ergebniss hin speichern soll) ausliest.
Ich will das LabVIEW Programm also z.b. mit "myProg.exe c:messung1.txt" starten. Und das Programm soll die Messergebnisse dann in c:messung1.txt speichern.
mfG
Stefan
|
|
|
22.09.2009, 16:14
Beitrag #7
|
IchSelbst
LVF-Guru
Beiträge: 3.697
Registriert seit: Feb 2005
11, 14, 15, 17, 18
-
DE
97437
Deutschland
|
Kommunikation mit Java
' schrieb:Warum ist es keine Netzwerkkommunikation?
Erstens, weil ich's in Anführungszeichen geschrieben habe.
Zweitens: Weil für die Funktion, die der Anwender haben will (DÜ Punkt-zu-Punkt, Master-Slave) kein Netzwerk im allgemeinen Sinne (Verbund mehrerer Komponenten) notwendig ist. Er hat viele Möglichkeiten: Die von TSchAC, oder SharedMemory/SharedFile, DDE gab es glaub ich auch mal. Ich selbst würde aber das mit dem Localhost vorziehen.
Nachtrag:
Ich sehe gerade, der Anwender hat sich für TSchAC mit DÜ per File entschieden. Naja, geht natürlich auch.
Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
|
|
|
22.09.2009, 18:59
Beitrag #8
|
|
|
23.09.2009, 07:22
Beitrag #9
|
TSC
LVF-Team
Beiträge: 1.882
Registriert seit: Sep 2008
LV 2018 SP1
2008
EN
52379
Deutschland
|
Kommunikation mit Java
Um eine EXE zu erstellen musst du den Appliaktion-Builder installiert haben. Dieser ist allerdings nicht in allen LabVIEW-Paketen enthalten. Wenn du ihn hast, musst du zunächst ein Projekt erstellen. Innerhalb des Projektes legst du dann deine VIs wie benötigt an und kannst dann eine Build-Spezifikation (Regeln für die Erstellung der EXE-Datei) erstellen.
LG
Torsten
"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" ( Konrad Zuse)
|
|
|
| |