Mikrokontroller/PCs zeitlich abstimmen

OP #2115073
hallo,

moechte gerne viele viele (100-2000) sensoren auslesen.  dazu sollen 
mehrere mikrokontroller/PCs diese sensoren auslesen und die daten zu 
groesseren datenpaketen buendeln.  die grossen pakete sollen dann in 
einem zentralen Rechner zusammenlaufen.

wie wuerdet ihr die Mikrokontroller/PCs am besten zeitlich 
synchronisieren, so dass zeitstempel auf 5ms genau sind??

die sensoren befinden sich auf 100m^2 verteilt.  funkverbindung 
unguenstig.

vielen dank schonmal...
Gast
Can Cobe schrieb:
> funkverbindung unguenstig.
und wie übertrage die Sensoren ihre Daten zum PC? Oder gibt es viel PCs? 
Die PCs kann man mit NTP übers netzwerk syncen - das sollte auch bei 
WLAN gehen weil die Protokoll die Laufzeit berücksichtigt. (Aber 5ms 
vermutlich auch nicht, weil kaum eine PC-Uhr so genau auflöst)
Gast
Was für Sensoren sind das denn?

Die geforderte Genauigkeit ist 5ms, ok. Wie hoch ist die 
Wiederholungsrate?

Du solltest eventuell überlegen, eine Taktverteilung aufzubauen, die die 
Sensoren triggert. Datenübertragung zum gewünschten Zeitpunkt ist ja 
schön, aber ist damit auch sichergestellt, daß Deine Messwerte zum 
gewünschten Zeitpunkt erfasst werden?
Teile und Hersche!
Hat Cäsar schohn gewusst. (War er das?)
Teile deine Sensoren auf verschiedene Stränge auf, je nach Busslast.
Sende Ein Sync-Signal. Die Sensoren messen jetzt alle das Signal 
gleichzeitig und senden es nacheinander zum Master. Etwas "Luft" lassen 
und das nächte Sync-Signal senden.

Wieviele Sensoren/Strang, wieviele Stränge, hängt jetzt von deinen 
ganzen Parametern ab.

ciao Volker
Gast
Bei der von 5mS geforderten Genauigkeit, sowie der Tatsache daß die
Sensoren alle 50mS mehrere Werte liefern sollen, würde ich einfach einen
id sowie counter im Datenpaket vorsehen und die Daten dann vom PC aus
mit einem Zeitstempel versehen.
Gast
Die synchronisierung ist nicht notwendig. In den Datenpakten schreibt 
man einfach rein Controller 1 Messung 1.. Messung 2...
Der PC bekommt dann einfach die Daten und benutzt die Messungsnummer zum 
zusammensetzen. Bei 16bit reicht der Zähler 50 Minuten und dann geht es 
von vorn los. In den 50 Minuten sollte der PC alle Pakete haben.

Die Synchronsierung kann man auf verschiedenste Wegen machen. 
Lichtimpuls, funkt, Datenpaket, ...

Um welche Sensoren handelt es sich denn und wie wird die Messung 
gestartet bzw. wie werden die ausgelesen? Je nachdem wie dies geschieht, 
könntest du Probleme mit deinen 5ms bekommen.
Gast
oszi40 schrieb:
> NTP sollte 10 ms genau sein.
> http://de.wikipedia.org/wiki/Network_Time_Protocol

Wenn's genauer sein soll: PTP.
http://de.wikipedia.org/wiki/Precision_Time_Protocol

> Sonst wäre Atomuhr und geeignetes Betriebssystem zu suchen.

Bevor man an jeden Sensor ein Cäsium-Frequenznormal dranbaut, wäre es 
einfacher jeweils einen GPS-Receiver mit PPS-Ausgang zu verwenden.
OP
"Sag mal, willst Du der CERN mit ihren Großexperimenten konkurrenz
machen?"

nein, dann wuerde ich ja meinem broetchengeber konkurrenz machen...



ok, spass bei seite... es sind reine interessenfragen.  dabei ging es 
mir eigentlich darum, besser einschaetzen zu koennen, was man denn so 
alles aus einem sehr teuren Heim PC theoretisch rausholen kann.  und ab 
wann man denn einen "privat" unbezahlbaren industriePC benoetigt... 
deshalb sind die hier genannten anforderungen einfach mal so 
hingestellt...


"Die geforderte Genauigkeit ist 5ms, ok. Wie hoch ist die
Wiederholungsrate?

Du solltest eventuell überlegen, eine Taktverteilung aufzubauen, die die
Sensoren triggert. Datenübertragung zum gewünschten Zeitpunkt ist ja
schön, aber ist damit auch sichergestellt, daß Deine Messwerte zum
gewünschten Zeitpunkt erfasst werden?"

wiederholungsrate alle 50ms.  wann genau abgetastet wird, soll nicht so 
wichtig sein, aber der gegebene zeitstempel sollte stimmig sein.


vielen dank auch an all die anderen antworten... das sind alles tolle 
ideen.  und die protokolle kannte ich noch nicht und werde mir die mal 
genauer anschauen.

lg

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.