Forum: Mikrocontroller und Digitale Elektronik "Möglichst" genauer Takt für Mikrocontroller


von Jens M. (schuchkleisser)


Lesenswert?

Hallo, Forenuser!
Gleich vorab, bevor das Geschrei losgeht: ja, "möglichst" steht mit 
Absicht in Anführungszeichen, weil sonst wieder einer auf den Trichter 
kommt ich solle der PCB ihre Instrumente klauen oder sowas.
Und ich habe auch gesucht, kann aber nur unpassende oder steinalte 
Threads finden, daher starte ich einen neuen.

Folgendes:
Ich möchte in einer Schaltung mit Hilfe eines Prozessors die Länge 
vieler Pulse messen.
Allerdings kommen die Pulse im Schnitt selten (rechne mit ~10/h, kann 1x 
pro Minute sein, kann auch 24 Stunden keiner sein, im Schnitt würde ich 
untere dreistellige Anzahl pro Tag erwarten) und sind einige Sekunden 
lang.
Diese Pulse möchte ich gerne mit besser als 0,1s Auflösung anzeigen und 
mit besser als 0,01s Genauigkeit erfassen.
Aber: es ist sehr wichtig, das die Gesamtsumme der Pulslänge über Jahre 
(!) mit deutlich unteren einstelligen ppm erfasst wird. Bilde ich mir 
zumindest ein und wünsche ich mir. Warum? Weil ich sicher bin das man es 
kann, also warum schlechter als es geht bauen...
Temperaturbereich ist "Raumtemperatur", also so etwa 10-40 Grad je nach 
Wetterlage, Strom kommt aus dem Netz.

Dazu fallen mir zwei Wege ein:
a) Ich besorge mir einen genauen Quarz für den µC und lasse den Rest die 
Software machen.
b) Ich benutze z.B. eine RTC mit Pulsausgang (die Zeit selbst ist nicht 
wichtig, nur der z.B. SQW-Anschluss mit z.B. 1000Hz oder 1024Hz und ich 
betreibe einen Interrupteingang damit.

Bei b) missfällt mir, das ich z.B. eine DS3231 im Original besorgen 
müsste, die alleine am I2C-Bus hängt, initialisiert wird und dann 
einfach so vor sich hin klickert. Schnickschnack 2ppm, wenn das Teil 
echt ist.
Option a) hat aber den Nachteil, das es keine TCXOs oder OCXOs mit 
10-20MHz zu geben scheint, außer gebrauchtes ausgelötetes Zeug auf ebay, 
amazon und aliexpress. Oder SMD-Teile, die nur 3,3V vertragen, ich 
brauche aber 5V, und THT wäre schön, weil es vmtl. nur ein oder zwei 
Lochrasteraufbauten geben wird.

Kann mir jemand eine Quelle für einen 5V-CMOS-Ausgang-10MHz-TCXO oder 
OCXO nennen, den man auch noch bezahlen kann? 5€ für T, 15€ für O wäre 
mein Limit, etwa.
Oder könnte ich einen 3,3V-TCXO für 3€ mit einem LDO und einem Treiber 
(a la 74LVC1G..., welchen?) kombinieren und damit 5V-10MHz erzeugen, mit 
sagen wir mal weniger als 5ppm?

Ich habe keine Möglichkeit, 10MHz genau zu messen, das wäre also auf 
Vetrauensbasis. Das Bauteil bekommt Strom und liefert und ich glaube 
dann einfach das das "genau" 10MHz sind.

Bin gespannt, was ihr dazu sagt...

: Bearbeitet durch User
von Oliver S. (oliverso)


Lesenswert?

Also doch der PTB ihre Instrumente klauen, zusammen mit deren 
klimatisierten Reinräumen. Ohne das „über Jahre“ wär’s einfacher.

Oliver

von Harald K. (kirnbichler)


Lesenswert?

Jens M. schrieb:
> Ich habe keine Möglichkeit, 10MHz genau zu messen, das wäre also auf
> Vetrauensbasis. Das Bauteil bekommt Strom und liefert und ich glaube
> dann einfach das das "genau" 10MHz sind.

Dann nimm 'ne PLL und speise die mit einer hinreichend genauen Referenz. 
Als Referenz lässt sich der Taktausgang mancher GPS-Empfänger verwenden, 
oder die DCF-77-Trägerfrequenz.

https://en.wikipedia.org/wiki/GPS_disciplined_oscillator

von S. L. (sldt)


Lesenswert?

Was stört an DS3231SN? Der 32 KiHz-Ausgang "klickert" vor sich hin, ganz 
ohne I2C.
  Und meine beiden 'RPI RTC CLOCK' von Reichelt, mit anderthalb Jahren 
Abstand bezogen, liegen unter 1 ppm - mag Glück gewesen sein.

von Sebastian W. (wangnick)


Lesenswert?

Jens M. schrieb:
> Oder könnte ich einen 3,3V-TCXO für 3€ mit einem LDO und einem Treiber
> (a la 74LVC1G..., welchen?) kombinieren und damit 5V-10MHz erzeugen, mit
> sagen wir mal weniger als 5ppm?

Du könntest auch regelmäßig den regulären Quarz des Prozessors gegen 
eine bessere Zeitbasis vermessen, und dann die mit dem Prozessor 
gemessenen Pulslängen entsprechend korrigieren.

LG, Sebastian

von Rüdiger B. (rbruns)


Lesenswert?

Ganz knapp unter 15 Euro:
https://www.ebay.de/itm/204385628390

von Kay-Uwe R. (dfias)


Lesenswert?

Hallo Jens!
Schon darüber nachgedacht, die Netzfrequenz als Langzeit-Referenz zu 
benutzen? Wenn du für deine Impulsmessungen einen kurzzeitstabilen XO 
benutzt, ermittelst du dessen Frequenz im Nachhinein (bzw. ständig) über 
die Netzfrequenz. So wie die älteren Radiowecker auch prima 
funktionieren, ohne ständig gestellt zu werden. Je länger das Gerät 
läuft, umso genauer weißt du die tatsächliche Taktfrequenz.
Der Aufwand, die Netzfrequenz zu messen, beschränkt sich auf einen 
Trafo, Opto-Koppler und noch ein paar Kleinteile. Wenn du für die 5 V 
statt eines Schaltwandlers ein Trafo-Netzteil nimmst, fehlt nicht mehr 
viel. Der Rest ist dann noch etwas Mathematik in der Software.

von Udo S. (urschmitt)


Lesenswert?

Was machst du bei einem Stromausfall wenn du über Jahre aufsummiert so 
genau messen willst?

von Michael (Firma: HW Entwicklung) (mkn)


Lesenswert?

Jens M. schrieb:
> TCXOs oder OCXOs mit
> 10-20MHz
Du meinst einen der mit GPS diszipliniert wurde?
Warum?
> Weil ich sicher bin das man es
> kann, also warum schlechter als es geht bauen...

> mit besser als 0,01s Genauigkeit erfassen.
> Aber: es ist sehr wichtig, das die Gesamtsumme der Pulslänge über Jahre
> (!) mit deutlich unteren einstelligen ppm erfasst wird.
Wenn nicht die 10ms Genauigkeit bereits einstellig ppm ist, ist das 
alles nur ein Furz im Wind.

von Bernd G. (Gast)


Lesenswert?

Kay-Uwe R. schrieb:
> Schon darüber nachgedacht, die Netzfrequenz als Langzeit-Referenz zu
> benutzen?

Sehr schlechte Idee. Die Netzfrequenz ist nicht genügend genau 
dokumentiert, als dass man sie benutzen könnte. Geht gerade auf einige 
Promille und hat man das Problem, ständig nachrechnen zu müssen, damit 
das Integral stimmt.

Warum kein "normaler" GPS-Quarzofen? Der ist kurz- UND langfristig am 
Genauesten.

von Stephan S. (uxdx)


Lesenswert?

S. L. schrieb:
> Was stört an DS3231SN? Der 32 KiHz-Ausgang "klickert" vor sich hin, ganz
> ohne I2C.
>   Und meine beiden 'RPI RTC CLOCK' von Reichelt, mit anderthalb Jahren
> Abstand bezogen, liegen unter 1 ppm - mag Glück gewesen sein.

müssen es denn so grosse Brummer wie DS3232 oder OCXO sein, es tut doch 
ein TCXO, bei Mouser nach Parametern selektieren, geht unter 1ppm. Statt 
2x einen 27-pF einsetzen und OSCIN füttern.

von Frank K. (fchk)


Lesenswert?

Jens M. schrieb:

> Bei b) missfällt mir, das ich z.B. eine DS3231 im Original besorgen
> müsste, die alleine am I2C-Bus hängt, initialisiert wird und dann
> einfach so vor sich hin klickert. Schnickschnack 2ppm, wenn das Teil
> echt ist.

Ja und? Ansprüche haben und dann noch geizig sein passt nicht zusammen.

> Option a) hat aber den Nachteil, das es keine TCXOs oder OCXOs mit
> 10-20MHz zu geben scheint, außer gebrauchtes ausgelötetes Zeug auf ebay,
> amazon und aliexpress. Oder SMD-Teile, die nur 3,3V vertragen, ich
> brauche aber 5V, und THT wäre schön, weil es vmtl. nur ein oder zwei
> Lochrasteraufbauten geben wird.

Die gebrauchten OXCOs auf ebay und aliexpress funktionieren aber. Ich 
habe mir auch mal so ein Teil (als fertige Baugruppe mit 
SMA-Anschlüssen) geholt und mit meinem Agilent 53131A mit Option 030 und 
Option 010 (das ist die High Stability Oven Timebase) verglichen, und es 
war alles spezifikationsgemäß. Diese Teile stammen aus alten 
GSM-Basisstationen. Für den Preis bekommst Du nichts besseres.

fchk

von Rainer W. (rawi)


Lesenswert?

Kay-Uwe R. schrieb:
> So wie die älteren Radiowecker auch prima funktionieren, ohne ständig
> gestellt zu werden.

Kommt drauf an, woran du "prima" fest machst. Wenn das Ding 5min daneben 
liegt, weil irgendjemand seiner Pflicht zur Bereitstellung von 
Regelleistung nicht nach kommt, ist das für manche Anwendung nicht so 
pralle.

von Kay-Uwe R. (dfias)


Lesenswert?

Rüdiger B. schrieb:
> Ganz knapp unter 15 Euro:
> https://www.ebay.de/itm/204385628390
Die kommen meist unabgeglichen an. Mag sein, dass das für Jens´ 
Anwendung ausreicht. Ebenso kommt Alterung hinzu, wenn die nicht 
genügend vorgealtert sind. Der Abstimmbereich kann im zweistelligen 
ppm-Bereich liegen. Jens hat keine Möglichkeit, die Frequenz (selbst) zu 
messen bzw. abzugleichen.

Bernie schrieb:
> Warum kein "normaler" GPS-Quarzofen? Der ist kurz- UND langfristig am
> Genauesten.
Es soll in erster Linie preiswert sein. Sonst wäre ich nicht auf die 
Netzfrequenz gekommen. Die kostet fast nichts und ist über lange 
Zeiträume (Jahre sind hier im Gespräch) ausreichend stabil. Quarzöfen 
liegen nach ein paar Jahren ohne Korrektur auch nicht mehr da, wo sie 
mal waren. Einige Hersteller garantieren nur, dass die Sollfrequenz nach 
x Jahren noch in den Abstimmbereich fällt.

von Rüdiger B. (rbruns)


Lesenswert?

Du kannst natürlich einmal im Monat oder so das Gerät mit einem NTP 
Server verbinden und die RTC justieren.

von Norbert (der_norbert)


Lesenswert?

Kay-Uwe R. schrieb:
> Es soll in erster Linie preiswert sein. Sonst wäre ich nicht auf die
> Netzfrequenz gekommen. Die kostet fast nichts und ist über lange
> Zeiträume (Jahre sind hier im Gespräch) ausreichend stabil.

Also über Jahre hinweg die Perioden zählen. Dagegen ist nicht das 
Geringste einzuwenden. Das sind gerade einmal 1 1/2 Milliarden pro Jahr. 
Über zweieinhalb Jahre in einer 32bit Variablen. Bei Verdoppelung der 
Breite auf 64bit sogar die so gerne zitierte, sprichwörtliche Ewigkeit.

Das Problem liegt woanders. Netzausfall!

Ohne jetzt die maximal erlaubten Abweichen heraus zu suchen, nehmen wir 
mal maximal 1 Promille an.
Nach nur 20 Sekunden Netzausfall (während derer man bequem blind weiter 
zählen kann) erscheint nun der Sinus wieder. Meinetwegen sogar in 
perfekter Phasenlage.
Das Problem ist nun, waren es 999, 1000, oder 1001 Perioden während des 
Ausfalls?

von Jens M. (schuchkleisser)


Lesenswert?

Oliver S. schrieb:
> Ohne das „über Jahre“ wär’s einfacher.

Du beziehst dich da auf die Alterung?
Nun, das ist ein Faktor, den ich akzeptieren muss...

Harald K. schrieb:
> Dann nimm 'ne PLL und speise die mit einer hinreichend genauen Referenz.

Empfang GPS nicht möglich und auch mit DCF wärs ein Zusatzgerät. Mir war 
mehr so nach "Kästchen an die Wand dübeln, Stecker rein, fertig". Wobei 
"Kästchen" halt ein Ding so im Bereich 20x20x20cm wäre oder so.

S. L. schrieb:
> Was stört an DS3231SN? Der 32 KiHz-Ausgang "klickert" vor sich hin, ganz
> ohne I2C.

32kHz ist ein wenig schnell in der Interruptauslösung, aber das könnte 
ich evtl. über einen internen Teiler erledigen, mal sehen was das 
Prozdabla sagt.
Das die 32kHz von alleine kommen ohne das ich die RTC initialisieren 
müsste ist mir neu. Wenn das wirklich so ist ist das die Lösung...
Interessant auch der Preis, das Modul fertig kostet keine 5€, der Chip 
aber um 10...

Sebastian W. schrieb:
> Du könntest auch regelmäßig den regulären Quarz des Prozessors gegen
> eine bessere Zeitbasis vermessen

Mangels Masse leider nicht. Ich hab kein Gerät das 10MHz erzeugen kann, 
anzeigen so gerade, aber Messen auch schon nicht mehr. Hatte noch nie 
den Bedarf dazu.
Daher jetzt die Suche nach einem "fire and forget": Das Ding macht nach 
DaBla den korrekten Wert "so genau wie möglich" und ich glaub das 
einfach.
Ist nun keine Raumfahrt, mehr ne Spielerei, aber wenn ich für 5€ "2ppm" 
bekomme bin ich schon in der richtigen Liga. Der Prozessorquarz hat ja 
mehr so 50ppm oder so.

Rüdiger B. schrieb:
> Ganz knapp unter 15 Euro:

Ja genau. Davon gibt's ganz viele, und alle haben das aber: "Aber die 
sind ausgelötet und unbekannt alt".
Zudem frage ich mich: sind die abgestimmt? Vermutlich nicht. Und: was 
ist mit dem Takt, wenn der Ofen noch kalt ist? Kommt da dann totaler 
Mist raus, oder einfach nur 9,95MHz und die ziehen sich dann langsam 
hoch? (Oder 10,05 und runter, you get the idea). Ich hatte noch nie 
einen OCXO auf dem Tisch.
Das die Maschine 3-4W Heizwärme verbrät ist nicht so öko, und 15€ nur 
zum spielen verballern will ich auch nicht.

Kay-Uwe R. schrieb:
> So wie die älteren Radiowecker auch prima
> funktionieren, ohne ständig gestellt zu werden.

Das hatte ich auch schon überlegt, wollte aber eigentlich ein 
Steckernetzteil benutzen. 12V-1A-Wandwarzen habe ich hier einen halben 
Kubikmeter liegen. Mein 5€-Philips aus der "Groten Een" tut seit ca. 30 
Jahren und wird nur gestellt wenn SoWi ist (nur die Stunden) oder eben 
wenn mal Strom weg war, was in der Zeit überschaubar oft war. Ist in der 
Ablesegenauigkeit einer Minute "drin".

Udo S. schrieb:
> Was machst du bei einem Stromausfall wenn du über Jahre aufsummiert so
> genau messen willst?

Kein Netz, kein Signal, kein Problem. Die Werte kommen in ein EEPROM 
unter.
Irgendwo muss ich auch mal höhere Gewalt akzeptieren, also wenn durch 
irgendeinen Fehler kein Signal kommt, zählts halt nicht.
Und nochmal: ist nicht kriegsentscheidend, aber wenn ich (wie mit dem 
DS3231-Modul) für 5€ "garantiert" 1ppm bekomme: warum nicht?

Michael schrieb:
> Wenn nicht die 10ms Genauigkeit bereits einstellig ppm ist, ist das
> alles nur ein Furz im Wind.

Wie meinen?
Wenn der µC wie auch immer zu einem Interrupt kommt, der regelmäßig 
sagen wir mal alle 10ms kommt, kann ich die Messauflösung ja einhalten.
Der Jitter der Erfassung des Signals im Interrupt dürfte ja +- einen 
Prozessortakt entsprechen, bei 10MHz also 100ns, da kann ich mit Leben 
denke ich, das sollten dann doch genau 1ppm sein. Da das Signal ja im 
Interrupt einen Zähler hochsetzt (jeder Int mit aktivem Signal = Wert 
+1) und über viele Interrupts aktiv ist, tritt das auch bei der 
Abschaltung auf, so das ich gemittelt 0,5ppm erreichen könnte an 
Unsicherheit der Impulslänge. Oder?

Bernie schrieb:
> Warum kein "normaler" GPS-Quarzofen? Der ist kurz- UND langfristig am
> Genauesten.

Kein GPS-Empfang möglich, leider. Ob die Geräte die ich kurz gegooglet 
habe für ~150€ soooo viel genauer sind? Leider hab ich auf die Schnelle 
keine ppm (oder ppb) gefunden, aber ich vermute aufgrund der "600mA beim 
Start, 250mA wenn gelockt" das da ein "normaler" OCXO drinsteckt der via 
GPS nachgeführt wird? Also so etwa 0,5ppm, oder etwas besser. Für ein 
30tel des Geldes gibts nur 4mal schlechtere Genauigkeit. 
Preisleistungssieger ist die DS3231.
Und es bleibt das Zusatzkästchen...

Stephan S. schrieb:
> es tut doch
> ein TCXO, bei Mouser nach Parametern selektieren, geht unter 1ppm.

Ja, aber alle sind 3,3V, und schwer erhältlich/teuer/SMD dazu.
Das suche ich bei allen mir bekannten Elektronikteilversendern seit 
Wochen, sonst hätte ich nicht gefragt...
Aber das wäre meine Idee aus dem Startpost: eine Adapterplatine machen, 
die einen SMD-TCXO, einen LDO und einen Treiber enthält, der aus dem 
3,3V-Takt 5V-Takt macht und das dann an den OSCIN dübeln. Aber wenn's 
ohne geht...

Frank K. schrieb:
> Für den Preis bekommst Du nichts besseres.

Wie sieht das beim Kaltstart aus? Taugt das zum betreiben eines 
Controllers, auch wenn die ersten 15 Minuten ungenau sind? Und wie 
ungenau ist das denn?
"Taugt nicht" habe ich dazu schon öfter gelesen, aber das kann heißen 
"Da kommen erstmal gar keine Signale, und dann irgendwas wildes, nach 5 
Minuten hat man dann vielleicht ne Schwingung von 3 MHz und dann so 
langsam wirds was" oder auch "Wenn der Kalt ist, liegt der glatt 500ppm 
daneben, kann man nicht gebrauchen...".
Ich würd's nehmen, wenn es letzteres wäre. Ja, dann liegen die ersten 
Pulse in den ersten Minuten halt ein paar Prozente daneben, werden auch 
nur wenige sein, im Vergleich zu den tausenden pro Jahr macht das nix...

Frank K. schrieb:
> Ansprüche haben und dann noch geizig sein passt nicht zusammen.

Preis/Leistung. Siehe GPSDO <-> RPI RTC. Das 5€-Modul macht 2ppm vom 
Start weg sobald Spannung drauf ist. Der GPSDO kostet 150€, ist ein 
extra Gerät, hat Aufheizzeit, eine externe Antenne und und und, ist aber 
nur 5x genauer. Oder 10x.

Kay-Uwe R. schrieb:
> Ebenso kommt Alterung hinzu, wenn die nicht
> genügend vorgealtert sind.

Die sind soweit mir bekannt alle gebraucht/ausgelötet. Alterung haben 
die schon sehr viel.

Kay-Uwe R. schrieb:
> Die kommen meist unabgeglichen an.

Das wäre doof. Das "DaBla" dazu gibt nur grobe Richtlinien an was 
vielleicht so geht. Bei 2V Abstimmspannung soll man angeblich unter 
0,3ppm sein, plus Alterung usw.

Kay-Uwe R. schrieb:
> Quarzöfen
> liegen nach ein paar Jahren ohne Korrektur auch nicht mehr da, wo sie
> mal waren.

Aha? Warum? Die Temperatur dürfte ja noch gleich sein, also muss es ja 
Verschleiß im Schwinger sein. Haben kalte Quarze das auch?

Norbert schrieb:
> Das Problem liegt woanders. Netzausfall!

Nein.
Absolute Zeit ist unwichtig, Aktive Zeit (bzw. deren Summe) ist was 
zählt, und die tritt bei Netzausfall nicht auf. Nix geht ohne Strom.
Daher wäre das Zählen der Netzhalbwellen eine Idee, aber mit gerade mal 
100Hz ja etwas eng an der gewünschten Auflösung.
Das hatte ich auch schon überlegt, aber verworfen weil
- ich ein 12V/1A-Steckernetzeil nutzen möchte
- die Auflösung so gerade eben ginge
- immer wieder zu lesen ist das die 50Hz nicht wirklich genau sind. 
(Obwohl mir mein alter Wecker treu die Zeit anzeigt die meine DCF-Uhr 
auch meint, +- 1 Minute in Jahren, was dem Display geschuldet ist.)

: Bearbeitet durch User
von S. L. (sldt)


Lesenswert?

an Jens M.:

Bei besagtem Modul ist der 32 KiHz-Ausgang nicht auf die Pinleiste 
gelegt, dort ist jedoch ein Pin frei, also hatte ich mir ein kleines 
Kupferdrähtchen eingelötet, geht ohne Schwierigkeit.

von Stephan S. (uxdx)


Lesenswert?

> Stephan S. schrieb:
>> es tut doch
>> ein TCXO, bei Mouser nach Parametern selektieren, geht unter 1ppm.
>
> Ja, aber alle sind 3,3V, und schwer erhältlich/teuer/SMD dazu.
> Das suche ich bei allen mir bekannten Elektronikteilversendern seit
> Wochen, sonst hätte ich nicht gefragt...

https://www.digikey.de/de/products/detail/crystek-corporation/CXOH20-BP-10-000/1643965

von Sebastian W. (wangnick)


Lesenswert?

Jens M. schrieb:
> 32kHz ist ein wenig schnell in der Interruptauslösung, aber das könnte
> ich evtl. über einen internen Teiler erledigen, mal sehen was das
> Prozdabla sagt.

Oder halt das Signal als externen Takt für einen internen Timer nehmen 
... ok, das ist nichts anderes als ein interner Teiler ...

Jens M. schrieb:
> Sebastian W. schrieb:
>> Du könntest auch regelmäßig den regulären Quarz des Prozessors gegen
>> eine bessere Zeitbasis vermessen
>
> Mangels Masse leider nicht. Ich hab kein Gerät das 10MHz erzeugen kann,
> anzeigen so gerade, aber Messen auch schon nicht mehr

Ich dachte eher daran. den Prozessortakt zur Laufzeit immer mal wieder 
gegen NTP oder so abzugleichen. Aber dann bist du nicht meht autonom ...

LG, Sebastian

: Bearbeitet durch User
von Jens M. (schuchkleisser)


Lesenswert?

Stephan S. schrieb:
> 
https://www.digikey.de/de/products/detail/crystek-corporation/CXOH20-BP-10-000/1643965

Interessant, danke.
Hab ich wohl des Preises wegen ausgeblendet...

von Harald K. (kirnbichler)


Lesenswert?

Jens M. schrieb:
> Empfang GPS nicht möglich und auch mit DCF wärs ein Zusatzgerät. Mir war
> mehr so nach "Kästchen an die Wand dübeln, Stecker rein, fertig". Wobei
> "Kästchen" halt ein Ding so im Bereich 20x20x20cm wäre oder so.

Gibt es eine Netzwerkverbindung? Wenn ja: SNTP.

Jens M. schrieb:
> Aber: es ist sehr wichtig, das die Gesamtsumme der Pulslänge über Jahre
> (!) mit deutlich unteren einstelligen ppm erfasst wird.

Magst Du noch erklären, was die Anwendung dieses Konstruktes ist? Ich 
nehme nicht an, daß Du die Benutzungsdauer des Föns Deiner Freundin 
damit erfassen willst ...

von Achim H. (pluto25)


Lesenswert?

Wenn die Pulse nur 10ms genau erfasst werden, ist der Fehler schon fast 
1000ppm. Da reicht auch ein interner Oszillator.
Ein Ds ist schlechter als die Netzfrequenz, auch wenn Sldt einen golden 
Griff gemacht hat.
Warum nicht einen Uhrenquarz als Quarz am Chip? Der könnte dann auch 
Zeit zählen und die Wöchendliche/Jährliche Abweichung kann umgerechnet 
werden. Die Pulse würde er mit ca 30ppm Fehler aufnehmen können.

von Bauform B. (bauformb)


Lesenswert?

Jens M. schrieb:
> Kein GPS-Empfang möglich

Ausprobiert oder wird das unten im Bergwerk installiert? In einem 
Gebäude mit wenigstens einem Fenster funktionieren die originalen 
u-blox-7 Empfänger, jedenfalls hier in Büro in der hintersten Ecke.

von Norbert (der_norbert)


Lesenswert?

Jens M. schrieb:
> Nein.
> Absolute Zeit ist unwichtig, Aktive Zeit (bzw. deren Summe) ist was
> zählt, und die tritt bei Netzausfall nicht auf. Nix geht ohne Strom.
> Daher wäre das Zählen der Netzhalbwellen eine Idee, aber mit gerade mal
> 100Hz ja etwas eng an der gewünschten Auflösung.

Aha. Du willst die CPU Frequenz zur Messung nutzen, diese mit der 
Netzfrequenz disziplinieren, Ausfälle und Ungenauigkeiten derselben 
interessieren dich nicht dabei und du erwartest bei der Messung eine 
Genauigkeit im 1ppm Bereich.

Das ist … hmmm, wie sag' ich's … recht ambitioniert. ;-)

von Sebastian W. (wangnick)


Lesenswert?

Norbert schrieb:
> Aha. Du willst die CPU Frequenz zur Messung nutzen, diese mit der
> Netzfrequenz disziplinieren, Ausfälle und Ungenauigkeiten derselben
> interessieren dich nicht dabei und du erwartest bei der Messung eine
> Genauigkeit im 1ppm Bereich.
> Das ist … hmmm, wie sag' ich's … recht ambitioniert. ;-)

Wenn ich es richtig verstanden habe, soll über zehn Jahre die Dauer von 
Pulsen aufsummiert werden. Die Pulse sind einige Sekunden lang und 
treten im Mittel alle 6 Minuten auf. Die Summe wird also nach zehn 
Jahren ungefähr 3000000 Sekunden betragen. Und diese Summe soll von der 
tatsächlichen Pulszeitsumme nur um "niedrige einstellige ppm" abweichen, 
also etwa 10-20 Sekunden.

Ungenauigkeiten in der Auflösung der Messwerte sollen sich also 
statistisch über die Jahre herausmitteln.

Richtig verstanden?

LG, Sebastian

: Bearbeitet durch User
von Norbert (der_norbert)


Lesenswert?

Sebastian W. schrieb:
> Ungenauigkeiten in der Auflösung der Messwerte sollen sich also
> statistisch über die Jahre herausmitteln.

Das ist richtig. Wenn du tausend mal 9ms und tausend mal 10ms misst, 
dann sollte das in Summe 2000 × 9.5ms ergeben.

Aber wenn das was du misst nun in Wirklichkeit – ich übertreibe mal 
bewusst – systematisch um 20% daneben liegt, dann hilft die Mittelung 
nicht im Geringsten.
Das ist wie vor Gericht, da bekommst du auch kein Recht sondern nur ein 
Urteil. ;-)

Edit:
Zur Visualisierung der Probleme empfehle ich mal:
https://www.netzfrequenzmessung.de/

Dort insbesondere den Phasenwinkel, der rotiert zur Zeit wie eine 
Primaballerina.

: Bearbeitet durch User
von Andi Y. (andiy)


Lesenswert?

Du willst also Pulse mit ein paar Sekunden Dauer mit besser als 10ms 
Auflösung messen. Und dazu suchst du nach einer super genauen Zeitbasis?
Wenn du einen normalen Quartz mit z.B. 50 ppm Genauigkeit nimmst, kannst 
du ein 10 Sekunden Puls mit 0.0005 Sekunden (= 0.5ms) Auflösen ohne 
einen Fehler zu erhalten.
Ob du die Pulse nun Aufsummierst order nicht spielt doch keine Rolle, 
deswegen brauchst du nicht mehr Genauigkeit.
Bei dieser Anwendung ist eben der Beginn des Pulses die Referenz und die 
Genauigkeit muss nur hoch genug sein um bis zum Ende des Pulses keinen 
Fehler zu erhalten. Das ist was völlig anderes als wenn die Referenz ein 
Abgleich war der Jahre zurückliegt und die Zeit immer noch exakt stimmen 
soll.

Also jeder Mikrokontroller der mit Quartz läuft und einen Timer hat zum 
Messen der Pulszeit ist völlig ausreichend.

von Mobile (mobileteser)


Lesenswert?

Ich werfe mal folgendes Projekt in die Runde:
https://dl6gl.de/gps-diszipliniertes-10mhz-normal.html
Da ist die Alterung des Quarzofen durch das GPS Signal kompensiert.
Habe ich nachgebaut, funktioniert einwandfrei. Nur solltest Du Dich bei 
dem Projekt um eine entsprechende USV umschauen, da bei Stromausfall 
auch alles steht.

von Jens M. (schuchkleisser)


Lesenswert?

Harald K. schrieb:
> Gibt es eine Netzwerkverbindung? Wenn ja: SNTP.

WLAN wäre da, aber ich wollte eigentlich mit einem einfacher 8bitter 
auskommen, weil ich noch ein paar PIC18F2320 über habe...

Harald K. schrieb:
> Magst Du noch erklären, was die Anwendung dieses Konstruktes ist?

Interesse an einer langjährigen Statistik und Spieltrieb.

Achim H. schrieb:
> Wenn die Pulse nur 10ms genau erfasst werden, ist der Fehler schon fast
> 1000ppm.

Naja, wenn mehr geht nehm ich mehr.
Die angesprochene Idee mit der DS3231 würde mir ja theoretisch eine 
Auflösung von 1/32768s, also 30µs geben, was bei 10 Sekunden Pulslänge 
dann ja etwa 3ppm ergäbe, oder?
Zugegeben, da hab ich noch gar nicht dran gedacht.

Bauform B. schrieb:
> Ausprobiert oder wird das unten im Bergwerk installiert?

Fensterloser Keller mit Stahlbeton rumdum. Am Handy geht da nix.

Norbert schrieb:
> Du willst die CPU Frequenz zur Messung nutzen, diese mit der
> Netzfrequenz disziplinieren, Ausfälle und Ungenauigkeiten derselben
> interessieren dich nicht dabei und du erwartest bei der Messung eine
> Genauigkeit im 1ppm Bereich.

Ich nehme an, das ein vom Quarz angetriebener Timer mit eben dessen 
Genauigkeit läuft. Wenn der Quarz 1pmm Abweichung hätte, hätter der 
Timer das auch, oder?
Das mit der Netzfrequenz wäre nicht nötig, da der Quarz ja schon 1pmm 
auf dem Papier hat und ich das einfach mal glaube.
Somit sollte es möglich sein, mit einem 1ppm Quarz und reiner Software 
ein Jahr lang "zu Uhren" und am Ende maximal um 30 Sekunden daneben zu 
liegen. Oder etwa nicht?

Sebastian W. schrieb:
> Richtig verstanden?

Vom Prinzip her: ja, absolut!
Ich hätte einfach mal "10 pro Stunde, jeweils 6 Sekunden, also 1 Minute 
pro Stunde, also sagen wir mal 10000 Minuten im Jahr, über Jahre hinweg" 
angenommen. Das wären Zahlen bei denen ich sagen würde die sind 
plausibel.
Wenn sich nach 10 Jahren (also 100000 Aktivminuten) ein Fehler von 1ppm 
also 0,1 Minuten also 6 Sekunden aufsammelt ist das doch supi!

Andi Y. schrieb:
> Wenn du einen normalen Quartz mit z.B. 50 ppm Genauigkeit nimmst, kannst
> du ein 10 Sekunden Puls mit 0.0005 Sekunden (= 0.5ms) Auflösen ohne
> einen Fehler zu erhalten.
> Ob du die Pulse nun Aufsummierst order nicht spielt doch keine Rolle,
> deswegen brauchst du nicht mehr Genauigkeit.

Hab ich da eine Matheblockade?
Ich mein, schadet ja nicht wenn ich besser als nötig messen kann, wenn 
ich 2ppm für 5€ bekomme ist das für mich ok.

von Ralf K. (kurtx)


Lesenswert?

Da soll ein Signal auf besser 0,01 s aufgelöst erfasst werden, wobei 
dann über die Jahre keine Alterung des Referenzoszillators erkennbar 
sein soll, den der TO aber auch nicht messen kann.

Also:
Wer die Zeitreferenz nicht messen kann, kriegt 100 ppm Module für 
günstig.

Wer mit einer 1 ppm RTC von 32 KHz Zeitmessungen besser 30 ppm haben 
will,
muss eine PLL für höhere Erfassungsauflösung mit Hilfe eines genauen
Zählers (!) abgleichen können.

Wer einen TCXO, oder OCXO auf wenige ppm abgleichen will, muss das gegen
eine bessere Referenz mit Hilfe eines genauen Zählers (!) tun.

Alternative sind Frequenznormale, die im Auslieferungszustand < 5 ppm
garantieren. Die gibt es ganz gewiss nicht für < 15 EU.

Ob das für 0...1000 Sekundenpuls-Dauermessungen pro Tag mit 10 ms 
Auflösung
auch in der Summe über Jahre relevant ist, wird uns zu allerletzt der 
von Konzept und praktischer Zeitmesstechnik überforderte TO erklären 
können.

Hochgeheimen, ständig ausgespähten Stümper-Vorhaben kann keiner 
helfen...

von Bernd G. (Gast)


Lesenswert?

Jens M. schrieb:
> Fensterloser Keller mit Stahlbeton rumdum. Am Handy geht da nix.

Tja, das zeigt, daß eine Abschirmung dieser Art eben auch gegen 
Information = Zeit abschirmt.

Was ist denn mit einen sehr langwelligen Schallsignal im Infrabereich?
Das könnte eine Zeitinfomation in den Raum hineintragen, z.B. ein 
1Hz-Signal als Sinuswelle. Muss eben sehr gut gefiltert werden. Man 
bekommt dann zwar einen Phasenfehler von z.B. 2-3 Grad = 10ms ... 20ms 
aber wenn man das digital filtert, kriegt man es wieder genau genug, 
meine ich.

von Purzel H. (hacky)


Lesenswert?

Mir scheint die Aufgabenstellung wirr. Da wird eine Loesung angedacht, 
bevor das Problem verstanden ist.

Worum geht es denn genau ?

von Jens M. (schuchkleisser)


Lesenswert?

Ralf K. schrieb:
> Da soll ein Signal auf besser 0,01 s aufgelöst erfasst werden, wobei
> dann über die Jahre keine Alterung des Referenzoszillators erkennbar
> sein soll, den der TO aber auch nicht messen kann.

Die Alterung muss ich akzeptieren.
Die steht im DaBla, und die nehme ich als gegeben an.

Ralf K. schrieb:
> Wer einen TCXO, oder OCXO auf wenige ppm abgleichen will, muss das gegen
> eine bessere Referenz mit Hilfe eines genauen Zählers (!) tun.

Kann ich nicht einfach einen XO kaufen wollen, der laut Papier einfach 
schon genau ist?

Ralf K. schrieb:
> wird uns zu allerletzt der
> von Konzept und praktischer Zeitmesstechnik überforderte TO erklären
> können.

Ja, da könntest du Recht haben, wenn ich drüber nachdenke.
Zum einen: ich muss ja nicht schlechter kaufen, weil es egal ist.
Ich darf doch versuchen den Standard so hoch zu halten das es finanziell 
noch erträglich für mich ist?
Wenn ich mit der DS3231 2ppm für 5€ kaufen kann, die über sagen wir 10 
Jahre vielleicht zu 5ppm altern, warum sollte ich dann für 3€ 100ppm 
kaufen, die vielleicht 150ppm werden?
Ob das nötig ist, steht auf einem anderen Blatt, und wenn ich hier so 
lese und mal nachrechne habt ihr Recht, so genau ist gar nicht nötig und 
aufgrund der Messsituation vielleicht auch gar nicht möglich, aber nenne 
mir den Grund wo es schadet den Quarz auf "0ppm" bringen zu wollen.

Sagen wir mal so: Ein Jahr hat 31und Millionen Sekunden, d.h. eine Uhr 
würde pro ppm Fehler im Jahr 31 Sekunden falsch gehen.
Was sich für mich absolut gesehen erstmal schlecht anhört, aber relativ 
sind das eben nur 1ppm. Die DS3231 hat 2ppm absolute und noch ein paar 
Alterungs- und  Temperatur-ppm dazu, würde also pro Jahr bei sagen wir 
mal 5 Minuten landen (können). Wenn Silvester 5 Minuten zu spät wäre 
würde ich das Feuerwerk verpassen. Trotzdem kommts wohl auf 5 Minuten im 
Jahr nicht an.

Bernie schrieb:
> Tja, das zeigt, daß eine Abschirmung dieser Art eben auch gegen
> Information = Zeit abschirmt.

Mnja.
DCF geht, schätze ich.
Aber aus dem DCF ein Signal im Millisekundenbereich abzuleiten, das 
passt, für unter 5€?

@Alle
Danke für euren Input, da hab ich was gelernt.
Also, das Signal kommt aus einer Maschine, und die Impulslänge ist die 
Information die ich rein aus Neugier und zu statistischen autistischen 
Gründen erfassen will. Die Häufigkeit liegt an der Benutzung und hat 
keinen Informationsgehalt.
Im Prinzip ist das was ich bauen will ja ein Betriebsstundenzähler, aber 
übliche Geräte kommen nicht auf so kurze Pulse klar oder summieren 
falsch (weil keine Nachkommastellen erfasst werden, öfter mal 5,5s kommt 
auf xmal 5 Sekunden raus). Oder es braucht einfach eine Sekunde bis die 
Uhr losläuft, aber aus geht sie sofort. So fehlt pro Impuls eine Sekunde 
was ja schon an 20% kommen kann.
Im Endeffekt kommt auf dem Display mangels Platz Tage/Stunde/Minuten an, 
nur am Anfang vielleicht eine Zeit lang h:m:s, und wenn ich 25 Jahre 
ansetze (einfach nur um genug Reserve zu habe, ob Maschine und Gerät so 
lange halten bezweifle ich, aber wenn ich weiß das der Zähler 25 Jahre 
könnte wäre ich beruhigt, Unix-Epoche und so) komme ich auf 25 Jahre x 
365 Tage x 24 Stunden x 10 Pulse pro Stunde mal 10 Sekunden pro Puls, 
also 22 Millionen Sekunden was gerade mal 254 Tage sind. In 10 Jahren.

Und da Fertiggeräte nicht taugen (ich hab einige getestet, die weichen 
frappierend voneinander ab!) will ich halt meinen eigenen bauen.
Der ist ein Einzelstück, soll nicht 500€ sondern vielleicht 50€ kosten 
und einfach zuverlässig seinen Job machen.
Also kam die Idee auf, via Interrupts einen Zähler zu erhöhen wenn der 
Eingang aktiv ist, und den Zähler dann zu Sekunden, Minuten, Stunden und 
Tagen runterzuteilen. Dabei sollte der Interrupt "möglichst genau" sein, 
einfach um eben das Niveau hochzuhalten, Alterung und so weiter machen 
noch genug Fehler rein. 1ms Auflösung und "weniger als 5ppm Abweichung" 
hört sich doch klasse an. Ist einfach zu rechnen, und bei Dauerbetrieb 
wärs halt auch sehr genau. Und wenn es durch widrige Umstände schlimm 
daneben läuft und auf 20ppm Fehler steigt, ist das immer noch besser als 
der Quarz der im ausgepillerten Layout bestenfalls 100ppm schafft, auf 
einem Lochrasterbasteldings wirds dann 250ppm sein. Nicht weil man's 
braucht, sondern weil es mit vertretbarem Aufwand geht.

Im Display steht die Uhr mit maximal Sekundenauflösung, aber weil ich 
eben getestet habe das Fertiggeräte z.B. 100x 100ms nicht auf 10 
Sekunden summieren (können) wollte ich besser bauen. Daher die 
Anforderung, genauere Auflösung und Genauigkeit zu haben, damit im 
Hintergrund noch eine, zwei oder gar drei Nachkommastellen stehen und 
eben auch viele Pulse mit zehntelsekunden zusammen die korrekte Summe 
ergeben.
Ohne dabei gleich auf GPS oder Kalibrierte Messgeräte für 20000€ 
zugreifen zu müssen, sondern "kauft man für 20€, im Papier steht 
<schafft besser als 1 Minute im Jahr, egal wann wo und wie>, baut man 
ein, ist beruhigt".
Es gibt Leute, die DS3231-RTCs einmal stellen und dann etliche Jahre nur 
lesen, draußen bei -40 bis +40°C und feststellen das die auch nur wenige 
Minuten danebengehen, zu wenig das sich ein Neustellen lohnen würde.
Davon hat mich abgehalten, das ich dann einen I2C-Master implementieren 
müsste der die Uhr initialisiert, weil ich nicht davon ausgegangen bin 
das da was nur mit "Spannung anlegen" rauskommt.
Wie sich rausstellt ist diese Annahme falsch gewesen und damit werde ich 
das also auf diesem Wege machen, denke ich.

von Oliver S. (oliverso)


Lesenswert?

Ralf K. schrieb:
> Wer die Zeitreferenz nicht messen kann, kriegt 100 ppm Module für
> günstig.

Genau das war auch mein Gedanke. Einfach irgend eine theoretisch 
irgendwie passende Zeitreferenz einbauen, und gut. Wie genau die dann 
aktuell ist, kann eh keiner messen, und was da nach x Jahren rauskommt, 
ist auch völlig egal. Bis dahin ist das Gerät Projekt verstaubt, 
vergessen, oder kaputt, der TO inzwischen schon dreimal umgezogen, und 
er Keller mehrfach umgebaut.

Eigentlich reicht dafür die interne Clock des Prozessors.

Oliver

von Mi N. (msx)


Lesenswert?

Jens M. schrieb:
> Oder könnte ich einen 3,3V-TCXO für 3€ mit einem LDO und einem Treiber
> (a la 74LVC1G..., welchen?) kombinieren und damit 5V-10MHz erzeugen, mit
> sagen wir mal weniger als 5ppm?

Das ist meines Erachtens 'die' sinnvolle Möglichkeit. Man kann das 1 Vpp 
Signal in der Regel (AVR, STM32) kapazitiv am µC einkoppeln und spart 
sich den ..1G04. SMD sollte kein Problem sein, wenn man das Gehäuse mit 
der Kopfseite auf die Platine klebt und die vier Pads per dünnem Draht 
anschließt.
Was ich so verwendet habe:
https://lcsc.com/product-detail/SMD-Oscillators-XO_KDS-Daishinku-KDS-1XTV10000MDA_C253701.html
hätte ich hier zu liegen oder noch stabiler:
https://www.digikey.de/product-detail/de/taitien/TXETALSANF-10-000000/1664-1262-1-ND/6126575

Gute Angebote gibt es zumeist auch für 16,384 MHz.

> Ich habe keine Möglichkeit, 10MHz genau zu messen, das wäre also auf
> Vetrauensbasis.

Das solltest Du aber schleunigst ändern ;-)
http://mino-elektronik.de/fmeter/fm_software.htm#bsp_RP2040

: Bearbeitet durch User
von Jens M. (schuchkleisser)


Lesenswert?

Oliver S. schrieb:
> Einfach irgend eine theoretisch
> irgendwie passende Zeitreferenz einbauen, und gut.

Ja, das wäre das Ziel gewesen.

Oliver S. schrieb:
> Bis dahin ist das Gerät Projekt verstaubt,
> vergessen, oder kaputt, der TO inzwischen schon dreimal umgezogen, und
> er Keller mehrfach umgebaut.

Das ist natürlich möglich. Unwahrscheinlich aber nicht unmöglich.

Oliver S. schrieb:
> Eigentlich reicht dafür die interne Clock des Prozessors.

Das hab ich jetzt auch gelernt.
Aber sollte die Genauigkeit nicht wesentlich höher sein als die 
Auflösung, damit nicht durch viele Nachkommastellen eine Genauigkeit 
vorgegaukelt wird, die gar nicht da ist?
Wenn ich 1ms Auflösung ansetze (also 1000ppm bzw. 0,1%) müsste ich ja 
deutlich besser in der Genauigkeit sein.
Der interne Oszillator schafft das m.W. nicht, aber ein guter Quarz oder 
Oszillator leicht. Aber ich muss ja nicht sagen "100ppm reicht", wenn's 
noch besser geht ohne sinnlos teuer zu werden, oder?

Mi N. schrieb:
> Man kann das 1 Vpp
> Signal in der Regel (AVR, STM32) kapazitiv am µC einkoppeln und spart
> sich den ..1G04.

Wie das? einfach 10p in Reihe? Kein Widerstand/Spannungsteiler am 
Eingang?

Mi N. schrieb:
> Das solltest Du aber schleunigst ändern

Sehr interessant, danke!
Aber: das kann auch nur so genau sein wie der Quarz auf dem Board, wenn 
man nicht den TDC einsetzt, oder?
Wie gut ist der Quarz auf einem 5€-Mikrocontroller-Board?
Oder muss man dann zur Ernsthaften Verwendung TDC und GPSDO nachrüsten?

von Purzel H. (hacky)


Lesenswert?

Betriebsstundenzaehler .. auf ppm genau .. aha.
Aus einem skurilen Signal herausziehen .. aha.

Mir scheint eine Betriebszeit an einer anderen Groesse
anzapfen waere einfacher.

von Mi N. (msx)


Lesenswert?

Jens M. schrieb:
> Wie das? einfach 10p in Reihe? Kein Widerstand/Spannungsteiler am
> Eingang?

Ganz einfach machen. >= 1 nF ist ein guter Wert. Der Widerstand ist in 
der Regel intern (beim Inverter) vorhanden, andernfalls würde ein 
angeschlossener Quarz nicht schwingen können.
Beispiel einer betagten Schaltung mit ATmega... C12 ist hier mit 100 nF 
angegeben: http://mino-elektronik.de/fmeter/neue_versionen.htm#a9

Jens M. schrieb:
> Wie gut ist der Quarz auf einem 5€-Mikrocontroller-Board?
> Oder muss man dann zur Ernsthaften Verwendung TDC und GPSDO nachrüsten?

Beim RP2040-Board liegt die Grundabweichung im einstelligen ppm-Bereich. 
"Norbert (der_norbert)" kann das sicherlich bestätigen. Die Drift ist 
gering und ist mir nie negativ aufgefallen.
Selbst schon die einfache Grundschaltung läßt sich per Trimmpoti 
abgleichen. Reziproke 7-stellige Auflösung bei 3 Messungen/s ist eine 
ernsthafte Anwendung ;-) Höhere Auflösung/Genauigkeit ist eine Option 
aber keine Zwang.

von Wf88 (wf88)


Lesenswert?

Bernie schrieb:
> Quarzofen

Die Dinger sind doch auch schon überholt worden von besserer Technik... 
Die Temperatur, auf der die gehalten werden, ist der Lebensdauer nicht 
zuträglich und braucht dann doch einiges an Energie über die Zeit.

Gibt heutzutage genauso gute und bessere Taktquellen.

von Wf88 (wf88)


Lesenswert?

Oliver S. schrieb:
> Eigentlich reicht dafür die interne Clock des Prozessors.

Der Takt, nicht die Uhr ;)

duck und weg

von Oliver S. (oliverso)


Lesenswert?

Jens M. schrieb:
> Oliver S. schrieb:
>> Eigentlich reicht dafür die interne Clock des Prozessors.
>
> Das hab ich jetzt auch gelernt.
> Aber sollte die Genauigkeit nicht wesentlich höher sein als die
> Auflösung, damit nicht durch viele Nachkommastellen eine Genauigkeit
> vorgegaukelt wird, die gar nicht da ist?

Natürlich. Da du aber eh glauben musst, was da angezeigt wird, und du 
überhaupt keine Möglichkeit hast, das irgendwie nachzuprüfen, was macht 
das schon, wenn er Wert um 10% (nicht ppm) daneben liegt? Genau: Gar 
nichts.

Was da eigentlich über Jahre auf ms genau gemessen werden soll, ist ja 
nach wie vor ein Geheimnis.

Oliver

von Jens M. (schuchkleisser)


Lesenswert?

Oliver S. schrieb:
> was macht
> das schon, wenn er Wert um 10% (nicht ppm) daneben liegt? Genau: Gar
> nichts.

Och, ich glaube an das Dabla.
Wenn da besser steht, nehm ich besser.
Und ob das was ausmacht ist ja zweitrangig, für die Frage gar gar nicht 
relevant.
10% würde ich aber merken, evtl. auch schon 1%, weil ich etwa im Gefühl 
habe was ich da sehen müsste.

Oliver S. schrieb:
> Was da eigentlich über Jahre auf ms genau gemessen werden soll, ist ja
> nach wie vor ein Geheimnis.

Das tut ja nix zur Sache.
Ich habe ein digitales Signal das fertig an einem IO-Pin des Controllers 
ankommt, und das von einem Sensor erzeugt wird, der eigentlich einen 
anderen Zweck hat und angezapft ist.
Ich möchte jetzt einfach längerfristig erfassen, wie lange das in Summe 
ist. Und bei der Gelegenheit vielleicht auch "heute", "diese Woche" oder 
so, aber das ist ja Software und eine einfache Datenkopie.
Und das "so genau wie möglich", ohne das gleich jemand schreit ich 
müsste mir dann eine Zeitleitung vom CERN in meinen Fluxkompensator 
legen lassen, wie das hier ja gerne gemacht wird wenn ein Anfänger 
einfach mal so sagt "möglichst genau" und das dann wörtlich ausgelegt 
auf 10 hoch minus 42 Sekunden ausgelegt wird...
Ich weiß das es einfache billige Oszillatoren mit einstelligen PPM gibt, 
also was ist daran verwerflich wenn ich den nutzen möchte?
Geht nicht weil entweder nicht erhältlich, zweifelhafter Herkunft, teuer 
oder doof zu benutzen, aber ich wurde ja recht schnell drauf aufmerksam 
gemacht das eine RTC passendes Signal liefert und für den gesteckten 
Preisrahmen deutlich untere einstellige ppm liefert.
Die eben aufgezeigte Alternative wäre tatsächlich ein für unter 2€ 
erhältlicher TCXO, der einfach an den Takteingang des µC angeflanscht 
wird.
Ist genau so, nur etwas anders.
Nutzt vielleicht nix weil ich in Summe eh nur Millisekunden auflöse und 
gar nur Sekunden anzeige, erst Recht egal wenn die summierte Zeit die 
Wochen oder gar Monate erreicht.

Wf88 schrieb:
> Die Dinger sind doch auch schon überholt worden von besserer Technik...

Bitte, kläre mich auf, das interessiert mich.
Ein Bauteil in das Spannung reingeht, Takt rauskommt, kein weiteres 
Zubehör (Antenne, Empfang, Internet), das zumindest auf dem Papier unter 
300ppb schafft und weniger als das eine Watt verbraucht, das ein OCXO 
üblicherweise so verheizt...

von Axel S. (a-za-z0-9)


Lesenswert?

Jens M. schrieb:
> Pulse ... sind einige Sekunden lang.
> Diese Pulse möchte ich gerne mit besser als 0,1s Auflösung anzeigen und
> mit besser als 0,01s Genauigkeit erfassen.

Hmm. Wenn einige Sekunden z.B. 10 Sekunden sind, dann sind 0.01s 
Auflösung lediglich 1/1000 oder 1000ppm.

> Aber: es ist sehr wichtig, das die Gesamtsumme der Pulslänge über Jahre
> (!) mit deutlich unteren einstelligen ppm erfasst wird.

Dann mußt du aber auch jeden Einzelimpuls so genau messen. Und du 
brauchst eine langzeitstabile Zeitbasis. Ein TCXO oder OCXO kann das 
nicht leisten. Es sei denn, sie sind mit einem Frequenznormal gekoppelt.

> Bilde ich mir zumindest ein und wünsche ich mir.
> Warum? Weil ich sicher bin das man es
> kann, also warum schlechter als es geht bauen...

Also gibt es keine technische Anforderung dafür. Typischer 
Bullshit-Post.

von Stephan (stephan_h623)


Lesenswert?

Jens M. schrieb:
> Allerdings kommen die Pulse im Schnitt selten (rechne mit ~10/h, kann 1x
> pro Minute sein, kann auch 24 Stunden keiner sein, im Schnitt würde ich
> untere dreistellige Anzahl pro Tag erwarten) und sind einige Sekunden
> lang.
> Diese Pulse möchte ich gerne mit besser als 0,1s Auflösung anzeigen und
> mit besser als 0,01s Genauigkeit erfassen.
> Aber: es ist sehr wichtig, das die Gesamtsumme der Pulslänge über Jahre
> (!) mit deutlich unteren einstelligen ppm erfasst wird. Bilde ich mir
> zumindest ein und wünsche ich mir.

Hört sich nach ner irrsinnigen Forderung an.
Der Einzelpuls wird mit 1% Genauigkeit (1s Dauer, 10ms Auflösung) 
erfasst.
Gut, sollte sich langfristig mitteln (soweit Abtastung und Pulse nicht 
korreliert sind).
Für 1ppm langfristige Genauigkeit darfst du dann aber auch genau 
hinschauen, dass da nicht beim Ein-/Ausschalten systematisch ein paar 
Takte Fehler dazukommen. Klappt vermutlich auch nur, wenn du fix alle 
10ms abtastest und für jede gemessene Zeit eine halbe Periode 
dazuaddierst.
Über Interrupt zählen produziert einen systematischen Fehler sobald der 
Puls irgendwie einen getakteten Ursprung hat (dann können die 
Steuerpulse z.B. immer nur 0.512s, 0.522s, 0.532s sein und dir fehlen 
jedes mal 2ms).

Klappt auch nur, wenn man Anstiegszeiten < 1µs hat.
Ansonsten verschiebt sich allein durch Triggerschwellen, Signalpegel, 
Störungen, ... schon mal die Pulserkennung im Bereich von 1ppm und mehr.
Das ganze dann vielleicht noch gleichsinnig mit anderen Abweichungen.
Kabelkapazität, Treiberleistung, Eingangskapazität, Schaltschwelle, 
Betriebsspannung (Signalpegel), Taktabweichung hängt alles von der 
Temperatur ab.
Das Prellverhalten des Pulses ändert sich evtl. auch mit der Zeit.

Hängt natürlich vieles vom zu erfassenden Puls und der Verkabelung ab.
µC-Ausgang über 10cm Verbindung wird kein Problem sein.
Angezapfter Relaiskontakt für 12V-Motor über 10m Klingeldraht und 
Spannungsteiler ... dann könntest dich über nur 1% Fehler freuen.

von Andi Y. (andiy)


Lesenswert?

Hier mal die Daten des Quartzes der den Prozessor Takt bereitstellt auf 
meinen Dev-Board:

1. Frequency: 20.000000MHz
2. Holder type : HSX321S
3. Frequency tolerance: +/-10 ppm at 25deg.C +/-3deg.C
4. Equivalent resistance: 80 ohms Max. / SERIES
5. Storage temperature range: -40 deg.C To +85 deg.C
6. Operable temperature range: -10 deg.C To +60 deg.C
7. Temperature drift: +/-10 ppm -10 deg.C To +60deg.C
8. Loading capacitance (CL) : 10.0 pF
9. Drive level: 10 μW (100uW Max)
10. Shunt Capacitance: 2.0 pF
11. Insulation resistance : More than 500M ohms at DC 100V
12. Mode of oscillation: Fundamental
13. Circuit: Measured in HP/E5100A,S&A 250B
14. Shocking : Dropping from 120 cm height 3 times on
Concrete floor
 Variation : Frequency less than +/-5 ppm
 Resistance less than +/- 15 ﹪or 2ohms max.
15. Aging: Less than +/-3 ppm/Year

Und das ist einfach ein zufällig ausgewählter Standardquartz, kostet 
0.18$ bei LCSC.
Da braucht es keinen genaueren externen Takt für deine Anwendung.
Natürlich steht es jedem frei einen beliebig überhöhten Aufwand zu 
betreiben, aber dann sollte man nicht in einem Forum nach der besten 
Lösung fragen.

Jens M. schrieb:
> Information die ich rein aus Neugier und zu statistischen autistischen
> Gründen erfassen will.
Wenn das mit dem autistisch kein Scherz war, würde das einiges erklären 
und  jede weitere Diskussion erübrigen.

von Uwe B. (Firma: TU Darmstadt) (uwebonnes)


Lesenswert?

Ein MXCO fuer etwa 50 Euro ist mit 50 ppb spezifiziert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.