mikrocontroller.net

Forum: PC Hard- und Software Mikrokontroller/PCs zeitlich abstimmen


Autor: Can Cobe (moklok)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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...

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Entweder ein DCF-Modul an die µCs oder einfach zyklisch die Zeiten von 
PC und µC per Funk abgleichen?!
Einfacher und billiger währe natürlich letzteres.

Autor: Peter II (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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)

Autor: hubert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: hubert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... Außerdem solltest Du festlegen, ob Du jetzt 100 oder 2000 Sensoren 
hast. Da könnten ganz verschiedene Konzepte dabei rauskommen.

Autor: Timmo H. (masterfx)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter II schrieb:
> Can Cobe schrieb:
>> funkverbindung unguenstig.
:D
Das ungünstig ist durch den "ungünstigen" Zeilenumbruch völlig an mir 
vorbei gegangen.

Autor: Volker Zabe (vza)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Condi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Eingast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sag mal, willst Du der CERN mit ihren Großexperimenten konkurrenz 
machen? Oder ist es wie hier: 
Beitrag "Re: pc bauen fuer riesige datenmengen" einfach nur 
allgemeine Neugier?

Autor: oszi40 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
NTP sollte 10 ms genau sein. Sonst wäre Atomuhr und geeignetes 
Betriebssystem zu suchen.
http://de.wikipedia.org/wiki/Network_Time_Protocol

Autor: Rolf Magnus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Can Cobe (moklok)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"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

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.