Samstag, 16. Juni 2012

MSBView: MSB-Sensoren am PC visualisieren


Um bei der der Entwicklung und dem Test meiner Multiplex Sensor Bus Sensoren nicht immer mit Empfänger und Sender hantieren zu müssen ist die Idee entstanden, die Daten auf dem PC zu visualisieren. Ich hätte diese Funktion in das Konfig-Tool integrieren können, doch es wäre einiges an Aufwand erforderlich gewesen, die Daten dort flexibel anzeigen und auch aufzeichnen zu können. Ich habe daher einen anderen Weg gewählt und eine Abindung an ein bewährtes Tool geschaffen: LogView

LogView unterstützt die Darstellung von nahezu beliebigen Datenströmen, die auf einem COM-Port empfangen werden. Mit OpenFormat existiert auch eine Format-Beschreibung für eigene Datenströme. Man muss lediglich eine passende INI-Datei erstellen.

Ich habe also ein weiteres Tool entwickelt, das das MSB-Format in einen Datenstrom übersetzt, der von LogView verstanden wird: MSBView



MSBView liest die Daten aller MSB-Sensoren, die an einen USB-Adapter, zum Beispiel den von Multiplex, angeschlossen sind, konvertiert sie und sendet sie an LogView. LogView übernimmt dann die Darstellung und Aufzeichnung.

Leider kann man unter Windows nicht direkt auf einen COM-Port schreiben, den ein anderes Programm - hier LogView - zum Lesen geöffnet hat. Dazu braucht man noch einen kleinen Helfer: com0com. com0com ist ein sogenannter NullModem-Emulator. Er verbindet zwei (virtuelle ) COM-Ports, ohne dass man ein Kabel stecken muss. Hier verbindet er den Ausgang von MSBView (COM10) mit dem Eingang von LogView (COM11).



Nun muss man noch LogView das neue "Gerät" bekannt machen. Dazu erstellt man eine passende Geräte-INI-Datei. MSBView erledigt das automatisch. Einfach alle Sensoren anschließen und auf "Generate INI" clicken. Dann steht in LogView ein neues Gerät zur Auswahl bereit, das alle angeschlossenen Sensoren darstellt: "OpenFormat\MSBView".



Um  Daten von den Sensoren einzulesen muss man die Aufzeichzung in LogView starten und dann in MSBView auf START clicken. MSBView zeigt zur Kontrolle alle erkannten Geräte unter ihrer MSB-ID und den aktuellen Messwert an.

Download MSBView