Hallo,
Ich bin JMP17-Benutzer.
Ich habe ein Diagramm, dessen X-Achse einen Zeitstempel darstellt.
Ich möchte ein externes Tool erstellen, das als Videoplayer fungiert, und ich möchte, dass dieses Tool ständig den aktuellen Zeitstempel an das JMP-Diagramm sendet. Dieser wird als Referenzlinie auf der X-Achse dargestellt, die sich entsprechend der aktuellen Zeit auf dem Videoplayer weiterbewegt.
Um es zu testen, erstelle ich eine Dummy-App in CPP, die ständig zufällige Zeitstempel an die Standardausgabe sendet, kompiliere sie als EXE, führe sie durch das JSL-Skript aus, analysiere den Text und zeige ihn im Diagramm an.
Ich frage mich, ob es eine bessere Möglichkeit gibt, Daten nach JMP zu streamen und das Diagramm ständig zu aktualisieren.
Wenn der Videoplayer eine Python-App wäre, wäre die Integration in JMP dann einfacher?
Beste grüße,
Ran
Vielleicht finden Sie auch einige Ideen aus dem Uncharted Blog von @Craige_Hales , wie zum Beispiel diese neuen Projektdatenpunkte
Es gibt mindestens drei Möglichkeiten, Daten in JMP zu streamen und eine Datentabelle mit den neuen Werten zu aktualisieren. Viele Plattformen können ihre Diagramme automatisch aktualisieren, wenn die Tabelle aktualisiert wird.
- Sie können einen JSL-Socket verwenden. Dies ist ein Low-Level-Ansatz für Nicht-SSL-Verbindungen. Sobald ein Socket geöffnet ist, können Sie ihn jedoch in einer Schleife lesen, während Ihr externer Prozess Daten in einen Socket produziert. Dies hat die längste Lernkurve.
- Sie können RunProgram verwenden und den Standardausgabe-Stream von Ihrem externen Prozess lesen und den Standardausgabe-Stream in Datentabelleneinträge zerlegen. Dies ist relativ kompliziert und es gibt in der Community zahlreiche Beispiele.
- Sie können DataFeed verwenden. Siehe Arduino . Dies ist ziemlich alt und wird nicht viel verwendet, aber wenn es für Sie funktioniert, ist es möglicherweise einfach.
Alle diese Ideen sind in Bezug auf die Analyse ungefähr gleich. Sie verpacken die Daten so, dass JMP sie aus einem unendlichen Zeichenstrom analysieren kann. RunProgram ist mein Favorit. Ich habe es mit PuTTY verwendet, um Standardausgaben von Programmen auf Remotecomputern abzurufen ( Kann JSL mit Linux kommunizieren?, JSL zur Steuerung der Raspberry-Kamera ).