ulrichw Posted November 20, 2018 at 03:13 PM Share Posted November 20, 2018 at 03:13 PM 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 Quote Link to comment Share on other sites More sharing options...
jgmischke Posted November 21, 2018 at 11:55 AM Share Posted November 21, 2018 at 11:55 AM 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. Wäre das etwas was dir vorschwebt? Quote Link to comment Share on other sites More sharing options...
ulrichw Posted November 21, 2018 at 12:28 PM Author Share Posted November 21, 2018 at 12:28 PM 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. Quote Link to comment Share on other sites More sharing options...
jgmischke Posted November 22, 2018 at 11:15 AM Share Posted November 22, 2018 at 11:15 AM 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. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.