Jump to content

Synchronisation Zeitstempel


Recommended Posts

Hallo Tinkerforge Community!  :)

Ich baue einen Prototypen mit vielen verschiedenen Sensoren (Bricks, Bricklets und externe analoge und digitale Eingänge).

 

Nun sollen alle Sensordaten bzw. eingelesenen Werte möglichst genau chronologisch zugeordnet abgespeichert werden. Wobei mit "möglichst genau" gemeint ist, was mit Standard-Tinkerforge Komponenten eben so möglich ist. Gibt es ein empfehlenswertes Konzept um die verschiedenen Sensordaten annähernd synchron einzulesen bzw. später per Zeitstempel zuordenbar zu machen? Die verschiedenen Sensoren haben natürlich sehr unterschiedliche Samplingraten.

 

Mir ist bekannt, dass Bricklets selbst keinen Zeitstempel ausgeben können.

 

Ich denke daher aktuell an folgende möglichen Ansätze:

 

[*] Signaldaten bekommen Zeitstempel in Ebene über Bricklets (Bricks? bzw. sonst am Rechner/Red-Brick). In dem Fall müsste ich mit der unbekannten Lag-Zeit bis die Daten einen Zeitstempel erhalten auskommen (ist aber vielleicht nicht optimal).   

[*] Das Einlesen der Daten wird per Synchronisierungssignal getriggtert abgefragt (RT-Clock wäre vorhanden). Dabei werden z.B. Sensoren mit hoher Samplingrate öfter abgefragt.

 

Gibt es spezielle Programmiermuster oder Beispiele die hier zu empfehlen sind? Habe noch keine Erfahrung mit Tinkerforge bisher, hab mir aber die Doku schon durchgelesen.

 

Würde C++ / LabView / ROS bevorzugt verwenden.

 

Vielen Dank!

Ulrich

Link zu diesem Kommentar
Share on other sites

Hallo, danke, ja das wäre eine Möglichkeit es zu lösen, das wäre quasi meine Zeitstempelvariante. Aber ich dachte vielleicht kann man noch mehr herausholen?

Bei der anderen Variante dachte ich eher an einen Hardware-Trigger bzw. einen hardwarenahen Trigger, so ähnlich wie wenn man zwei Kameras mit einem Synchronisationssignal zur selben Zeit auslösen lässt (oder einen Blitz). Wäre so etwas auch denkbar? 

 

Ich habe das in einem Projekt so gelöst, das bei einem Aufruf des Triggers eben nicht nur die reinen Daten des TF Bausteins geholt wird sondern in der gleichen Funktion auch die Systemzeit abgefragt wird.

Link zu diesem Kommentar
Share on other sites

Hallo,

 

naja, da gibt es sicherlich auch Möglichkeiten. Du könntest ja auch alle Abfragen direkt nacheinander starten ( Quasi einen Trigger als Startschuss setzen ) und alle Bricks senden dann ihr Ergebnis.

 

Ist ja auch die Frage, wie oft du deine Daten brauchst. Wenns nur mal alle Minuten passiert wäre das eine Lösung, fragst du hundert oder mehrmals pro Sekunde ab wird es schon eng.

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...