Das wird nicht funktionieren, die von beiden Programmen geschriebenen Daten würden ja dann wild durchmischt beim Messinstrument ankommen.
de_EDV
Ableger von r/de_EDV auf Lemmy.
News, Diskussionen und Hilfestellung zu Hard- und Software
Diese Community dient als Anlaufstelle für alle IT-Interessierten, egal ob Profi oder blutiger Anfänger. Stellt eure Fragen und tauscht euch aus!
Weitere IT Communitys:
Naja aber geht dass dann nicht dass com0com die Daten sammelt bzw. Koordiniert nacheinander an das Gerät überträgt (was halt zuerst angefragt hat) und dann die daten vom Gerät einfach dupliziert ausgegebene werden
Dafür müsste die Software die das multiplexed verstehen was dort jeweils an das Gerät geschrieben wird und von dort gelesen wird, also das Protokoll. Und das Gerät müsste überhaupt in der Lage sein beliebig durchmischte Kommandos zu bearbeiten was z.B. ein Problem ist wenn ein Kommando Parameter für das nächste Kommando setzt.
Okay aber läuft das nicht bei serieller Kommunikation über stop bits und sind die sende/Empfänger Kanäle getrennt? Also dass das einfach setup von der Schnittstelle bedarf aber dann durchaus geht?
Also ich würde das so machen: lokalen HTTP-server aufsetzen, der requests als befehle entgegennimmt und die entsprechenden kommandos ans USB-gerät weiterleitet. Dann von beiden Programmen Kommandos an den lokalen HTTP-server schicken. Der HTTP-server ist für die serialisierung zuständig, also dass zwei Anfragen, die beinahe gleichzeitig eintreffen, trotzdem geordnet und der Reihe nach ans Gerät übergeben werden. Macht insgesamt am wenigsten Schwierigkeiten.
Okay und wie verteile ich dann die Infos vom Gerät an die beiden Programme?
HTTP response.
Das sollte sich Recht einfach in Python schreiben lassen mit pyserial.
Zwei Ports erstellen, den Input vom Gerät an beide Ports Durchrouten und den Input der Ports entsprechend ans Gerät schicken.
Das Messgerät hat eine Software welches die Messdaten anzeigt und mit der ich des parametrieren kann. Die 2. Serial Schnittstelle soll einfach die gemessenen Daten in eine Influxdb Datenbank schieben. Jetzt muss ich aber sehen wie das läuft mit dem auslesen der Daten. Im optimalfall könnte ich ja die Daten die an die Software gehen mitschneiden und für influx umformatieren. Wenn ich selber über den ihre library kommuniziere mit dem Gerät sind das wahrscheinlich immer eigene Anfragen mit Antwort was womöglich das Gerät überlastet oder?