Wir sind auf der Suche nach einer direkten Labview-Verbindung. Wie es in MathLab aussieht, handelt es sich um einen TCP/IP-Austausch: https://de.mathworks.com/matlabcentral/fileexchange/42567-matlab-and-labview-data-exchange-over-tcp-ip
Ist es möglich, etwas Ähnliches für JMP zu erstellen oder existiert es bereits?
Danke für Hilfe im Voraus!
Markus
Sieht so aus, als ob es möglich sein sollte. https://www.ni.com/en-us/support/documentation/supplemental/06/basic-tcp-ip-communication-in-labview.html ist ein Ausgangspunkt für LabView ; Darin heißt es: "LabVIEW-Benutzer können benutzerdefinierte Anwendungen für die TCP/IP-Kommunikation entwickeln. Der Programmierer ist sowohl für die Entwicklung des Clients als auch des Servers verantwortlich ."
Ich weiß sehr wenig über LabVIEW, daher kann ich Ihnen diesbezüglich nicht weiterhelfen. Es scheint, dass Sie die LabView-GUI verwenden würden, um einen Server zu erstellen, mit dem JMP eine Verbindung zum Datenaustausch herstellen kann. Auf der LabVIEW-Seite wäre dieser Server für das Sammeln und Senden von Daten von Ihrem LabVIEW-Setup sowie für das Empfangen und Verteilen von Daten an Ihr LabVIEW-Setup verantwortlich.
Der Server ist (für mich) in dem von Ihnen angegebenen Link nicht offensichtlich, aber er muss vorhanden sein. Sehen https://www.vut.cz/www_base/zav_prace_soubor_verejne.php?file_id=125490 Seite 21 - das könnte einen Server anzeigen. Es scheint einen Hörer (mit einem Ohr) und einen Sender (ausgehender Pfeil) und einen Empfänger (eingehender Pfeil) zu haben.
Auf der JMP-Seite schreiben Sie ein JSL-Skript mit Sockets. Neuere Versionen von JMP >=15 haben ziemlich gute Socket-Beispiele im Skriptindex. Sie schreiben Code ähnlich dem Java(?)-Code im Matlab-Beispiel.
Speichern Sie Ihre JSL, bevor Sie sie ausführen; Es ist einfach, einen Socket dazu zu bringen, auf Daten zu warten, die der Server niemals senden wird! Sie können die JSL-Sockets so einstellen, dass sie non-blocking I/O (NBIO) verwenden, um das Aufhängen zu verhindern ... Sie müssen den Socket abfragen.
Es ist auch möglich, UDP-Verbindungen zu verwenden, und der unzuverlässige Teil von UDP kann auf localhost zuverlässig genug sein. Das könnte beide Enden stark vereinfachen.
Das Beispiel, das Sie gefunden haben, lässt es so aussehen, als müsste es immer einen bidirektionalen Austausch geben, aber ich bin mir ziemlich sicher, dass das Beispiel genau so geschrieben wurde.
Wie spät ist es?Beispiel für UDP-Socket
Neuigkeiten Beispiel für das Erstellen eines Servers in JSL (ich schlage umgekehrt vor, den Server in LabVIEW erstellen)
Dies ist nicht das erste Mal "einfach zu funktionieren". Planen Sie, ein wenig über TCP und Sockets zu lernen. Wenn es nicht funktioniert, gibt es nicht viele Hinweise darauf, was falsch ist.
Vielleicht möchten Sie zuerst einen dateibasierten Prototyp erstellen. Durch Speichern einer Datei auf der Festplatte in LabVIEW und Lesen in JMP (oder umgekehrt oder beides) können Sie sehen, was passiert. Wenn es schnell genug ist, könnten Sie fertig sein.