Forum: Mikrocontroller und Digitale Elektronik Zeitmessung für Sportveranstaltungen


von Jan V. (einradfahrer)


Lesenswert?

Hallo zusammen,

ich habe mir bereits einige Threads zu dem Thema durchgelesen, 
allerdings konnten diese nicht alle meine Fragen beantworten. Ich 
versuche mein Glück
daher noch einmal in einem neuen Thread.

Ich würde gerne eine Zeitmessung für Sportveranstaltungen realisiern. 
Die
Anforderungen sind wie folgt:

- Genauigkeit: 1/1000 sec
- Messdauer: einige Sekunden bis zu etwa einer Stunde
- Anzeige der laufenden Zeit mittels 7-Segmentanzeigen

- eventuell erstellen einer Log-Datei auf SD-Karte
- eventuell zu einem späteren Zeitpunkt die Anbindung an einen PC


In meinen bisherigen Projekten, bei denen eine so hohe Genauigkeit über 
einen so langen Zeitraum nicht notwendig war, habe ich immer den CTC 
Modus des Timers benutzt um jede ms einen Interrup auszulösen und in der 
Interrupt Routine dann einen Millisekunden-/Sekunden-/Minuten-Counter 
entsprechend erhöht (Verwendeter Mikrocontroller: ATMega8 mit 16MHz 
Quarz).
Würde sich durch die Verwendung der Input Capture Funktion die 
Genauigkeit der Zeitmessung in der beschrieben Applikation erhöhen 
lassen? Aufgrund der großen Messdauer würde es aber auf jeden Fall zu 
einem Timer Overflow kommen, was entsprechend berücksicht werden müsste.
Oder ist ein ganz anderes Konzept für die Zeitmessung empfehlenswert?

Die Zeitmessung soll von einer Lichtschranke gestartet und einer zweiten 
Lichtschranke gestoppt werden. Bei Verwendung des Input Captures müssten 
dafür also zwei Eingänge am Mikrocontroller vorhanden sein. Der ATMega8 
hat ja nur einen, mit dem wäre es also vermutlich in dieser Form nicht 
umsetztbar? Aber es gibt sicherlcih welche mit mehr als einem Input 
Capture Pin?

Ich denke eine geeignete Möglichkeit die laufende Zeit mittels 
7-Segmentanzeigen auszugeben ist die Verwendung von Schieberegistern und 
7-Segmenttreibern. Damit dürfte man recht wenig Pins des 
Mikrokontrollers benötigen und hat einen recht geringen Rechenaufwand. 
Oder gibt es hier geeinetere Methoden?

Bin für jede Idee und Anregung dankbar,
Gruß Jan

von Thomas E. (thomase)


Lesenswert?

Jan V. schrieb:
> Würde sich durch die Verwendung der Input Capture Funktion die
> Genauigkeit der Zeitmessung in der beschrieben Applikation erhöhen
> lassen?

Ja.

> Aufgrund der großen Messdauer würde es aber auf jeden Fall zu
> einem Timer Overflow kommen, was entsprechend berücksicht werden müsste.

Wo ist das Problem?

> Oder ist ein ganz anderes Konzept für die Zeitmessung empfehlenswert?

Nein.

> Bei Verwendung des Input Captures müssten
> dafür also zwei Eingänge am Mikrocontroller vorhanden sein. Der ATMega8
> hat ja nur einen,

Selbst die alte Gurke hat zwei: ICP und den Analog Comparator. Das muß 
natürlich nach dem jeweiligen Auslösen umgeschaltet werden. Aber Zeit 
ist ja mehr als genug vorhanden.

von Falk B. (falk)


Lesenswert?

@ Jan V. (einradfahrer)

>- Genauigkeit: 1/1000 sec

Du meinst Auflösung, siehe Auflösung und Genauigkeit.

Dennn

>- Messdauer: einige Sekunden bis zu etwa einer Stunde

Wenn DU WIRKLICH nach einer Stunde nur eine Abweichung (=Genauigkeit) 
von 1ms haben willst, sind das schlappe

1ms/3600s = 0,27ppm

Für eine der artige Genauigkeit braucht man schon einen OCXO, die 
meisten TXCO schaffen das NICHT.

>- Anzeige der laufenden Zeit mittels 7-Segmentanzeigen

trivial

>- eventuell erstellen einer Log-Datei auf SD-Karte
>- eventuell zu einem späteren Zeitpunkt die Anbindung an einen PC

Dito.

>In meinen bisherigen Projekten, bei denen eine so hohe Genauigkeit über
>einen so langen Zeitraum nicht notwendig war, habe ich immer den CTC
>Modus des Timers benutzt um jede ms einen Interrup auszulösen und in der
>Interrupt Routine dann einen Millisekunden-/Sekunden-/Minuten-Counter
>entsprechend erhöht

Der normale Ansatz.

>Würde sich durch die Verwendung der Input Capture Funktion die
>Genauigkeit der Zeitmessung in der beschrieben Applikation erhöhen
>lassen?

Theoretisch ja, praktisch aber sinnlos. Du willst und must nicht auf 
einen CPU-Takt von vielleicht 10MHz genau die Zeit messen. Das kann man 
hier alles per Software im 1ms Raster. Deine Zeitmessung wird ja nicht 
bei Olympia benutzt, wes es theoretisch auf 1ms und weniger genau sein 
muss.

> Aufgrund der großen Messdauer würde es aber auf jeden Fall zu
>einem Timer Overflow kommen, was entsprechend berücksicht werden müsste.

Wie meinen? Zu dem kommt es im Normalfall schon nach weniger als 1s!
Der CTC-Modus ist das Mittel der Wahl. Damit hast du einen 1ms 
Timerinterrupt, der Rest ist eher einfache Software.

>Oder ist ein ganz anderes Konzept für die Zeitmessung empfehlenswert?

Nö, paßt schon.

>Die Zeitmessung soll von einer Lichtschranke gestartet und einer zweiten
>Lichtschranke gestoppt werden. Bei Verwendung des Input Captures müssten
>dafür also zwei Eingänge am Mikrocontroller vorhanden sein.

Overkill. Eine Abfrage in Software pro Millisekunde reicht locker. Du 
willst nicht die Projektilgeschwindigkeit einer Kanone messen.

> Der ATMega8
>hat ja nur einen, mit dem wäre es also vermutlich in dieser Form nicht
>umsetztbar?

Doch.

>Ich denke eine geeignete Möglichkeit die laufende Zeit mittels
>7-Segmentanzeigen auszugeben ist die Verwendung von Schieberegistern und
>7-Segmenttreibern. Damit dürfte man recht wenig Pins des
>Mikrokontrollers benötigen und hat einen recht geringen Rechenaufwand.
>Oder gibt es hier geeinetere Methoden?

Ist voll OK.

von Jörg R. (solar77)


Lesenswert?

Jan V. schrieb:
> Anforderungen sind wie folgt:
>
> - Genauigkeit: 1/1000 sec

Das ist die Auflösung, nicht die Genauigkeit.

> - Messdauer: einige Sekunden bis zu etwa einer Stunde

Bedeutet 8 Stellen wenn die Stunde einstellig ist.


> - Anzeige der laufenden Zeit mittels 7-Segmentanzeigen

Wie groß sollen die Ziffern den werden?


Jan V. schrieb:
> - eventuell erstellen einer Log-Datei auf SD-Karte
> - eventuell zu einem späteren Zeitpunkt die Anbindung an einen PC

Evtl. würde auf jeden Fall bedeuteten das ein uC verwendet werden muss. 
Ohne evtl. ginge auch eine klassische Lösung mit herkömmlichen ICs.

von Wolle G. (wolleg)


Lesenswert?

Jan V. schrieb:
> Ich würde gerne eine Zeitmessung für Sportveranstaltungen realisiern.
> Die
> Anforderungen sind wie folgt:
>
> - Genauigkeit: 1/1000 sec
> - Messdauer: einige Sekunden bis zu etwa einer Stunde

Es wäre interessant, bei welcher Sportart diese Anforderungen notwendig 
sind.

von m.n. (Gast)


Lesenswert?

Jan V. schrieb:
> Die Zeitmessung soll von einer Lichtschranke gestartet und einer zweiten
> Lichtschranke gestoppt werden.

Hier ein Beispiel für die Stoppuhr: 
Beitrag "Stoppuhr – Geschwindigkeit – Pulsweite mit Atmega88"

Um 1 ms auf 3600 s (< 0,3 ppm) genau zu messen ist schon ein stabiler 
Quarzoszillator notwendig: TCXO oder besser OCXO. Oder man korrigiert 
die Zeitmessung anhand eines 1 pps GPS-Impulses.

Wie groß soll denn die 7-Segmentanzeige ausfallen?

von georg (Gast)


Lesenswert?

wolle g. schrieb:
> Es wäre interessant, bei welcher Sportart diese Anforderungen notwendig
> sind.

Im Skilanglauf gab es das, aber nachdem einmal nach 30 km 1 ms über Gold 
und Silber entschieden hat, hat man die Tausendstel abgeschafft. 
Manchmal setzt sich doch die Vernunft durch.

Beim Schwimmen wird noch in ms gemessen, aber das ist auch fragwürdig, 
schon weil niemand ein Becken bauen kann, bei dem alle Bahnen auf 1 mm 
gleich lang sind.

Aber wenn die Funktionäre das so wollen...

Jan V. schrieb:
> jede ms einen Interrup auszulösen und in der
> Interrupt Routine dann einen Millisekunden-/Sekunden-/Minuten-Counter
> entsprechend erhöht

Das ist ganz richtig so, da der Zähler in Software ist gibt es auch kein 
Überlaufproblem, eine 32bit-Zahl reicht. Wenn es wirklich 1 ms sein muss 
kannst du ja den Timeinterrupt auch auf eine halbe oder viertel ms 
setzen, sollte mit einem heutigen Prozessor kein Problem sein.

Georg

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

georg schrieb:
> Im Skilanglauf gab es das, aber nachdem einmal nach 30 km 1 ms über Gold
> und Silber entschieden hat
Aber nicht über die gesamte Strecke und an an unterschiedlichen Tagen. 
Sondern eben nur 1ms zwischen den ersten beiden Läufern...

Denn wenn die Uhr bei allen Läufern gleich langsam lief, dann reicht 
auch eine wesentlich ungenauere Taktquelle, weil dann alle Läufer wurden 
mit dem gleichen Langzeitfehler bewertet wurden.

Lediglich bei der Diskussion um den Eintrag in die Weltrekordliste 
könnte man nochmal anfangen...  ;-)

von Falk B. (falk)


Lesenswert?

@Lothar M. (lkmiller) (Moderator)

>> Im Skilanglauf gab es das, aber nachdem einmal nach 30 km 1 ms über Gold
>> und Silber entschieden hat

>Aber nicht über die gesamte Strecke und an an unterschiedlichen Tagen.
>Sondern eben nur 1ms zwischen den ersten beiden Läufern...

1ms sind bei 36km/h = 10m/s = 10mm

Beim Bobfahren mit über 100km/h ~28m/s sind es auch nur 28mm. Das kann 
man zwar gerade noch so unterscheiden, aber die fahren ja auch nicht 1h 
;-)

Bei der Formel 1 mit über 320km/h in der Spitze sind das mit ~90mm/ms 
schon eine handbreit.

von Jan V. (einradfahrer)


Lesenswert?

Erst einmal vielen Dank für die zahlreichen Antworten :)

Einige Sachen wurden ja bereits mehrfach angesprochen:
1. Auflösung vs. Genauigkeit: Ich meine tatsächlich Genauigkeit
Ein Messzeitraum von einer Stunde stellt aber tatsächlich eher den Worst 
Case dar. In der Regel werden die zu messenden Zeiten im Bereich von 
einigen Sekunden bis hin zu einigen Minuten liegen. Dennoch würde ich 
gerne den Worst Case abdecken können.
Mir ist bewusst, dass mit einem normalen Quarz diese Genauigkeit nicht 
zu erreichen ist und ich auf jeden Fall einen guten TCXO oder sogar 
einen OCXO benötigen werde. Damit kann ich aber leben, sofern es 
Softwareseitig möglich ist diese Genauigkeit ebenfalls gesichert 
hinzubekommen.

2. Bei welcher Sportart sind diese Anforderungen notwendig:
Die Sportart für die ich die Zeitmessanlage plane ist das Einradfahren, 
bzw. der Bereich Einrad Rennen. Den allermeisten ist Einradfahren als 
Wettkampfsport wahrscheinlich unbekannt aber es gibt insbesondere in 
Deutschland doch einige, die diesen Sport betreiben.
Hier ist es leider noch üblich (und von einigen 
Veranstaltern/Funktionären/etc. auch gefordert) die Zeiten mit 1/1000s 
auf den Ergebnislisten anzugeben. Ich persönlich würde es zwar begrüßen 
wie auch in der Leichtathletik die Zeiten nur bis auf 1/100s genau 
anzugeben, aber gut. Selbst in dem Fall sollte meiner Meinung nach die 
Anlage mit einer Genauigkeit von 1/1000s arbeiten.

3. Wie groß sollen die Ziffern der 7-Segmentanzeige werden:
Der Bediener der Anlage sollte die Ziffern aus einem Abstand von 1-2m 
gut ablesen können - ich denke so um dei 5cm sollten es schon sein.
Problematisch wir wahrscheinlich die Lesbarkeit auch bei 
Sonneneinstrahlung hinzubekommen, darüber muss ich mir noch mal Gedanken 
machen.


Falk B. schrieb:
>>Würde sich durch die Verwendung der Input Capture Funktion die
>>Genauigkeit der Zeitmessung in der beschrieben Applikation erhöhen
>>lassen?
>
> Theoretisch ja, praktisch aber sinnlos. Du willst und must nicht auf
> einen CPU-Takt von vielleicht 10MHz genau die Zeit messen. Das kann man
> hier alles per Software im 1ms Raster. Deine Zeitmessung wird ja nicht
> bei Olympia benutzt, wes es theoretisch auf 1ms und weniger genau sein
> muss.

Richtig, ich möchte die Zeit nicht auf den CPU-Takt genau messen - wenn 
ich eine Genauigkeit von 1ms hinbekomme, sollte das für mich ausreichen.
Wenn sich für diesen Fall keine Vorteile aus der Verwendung des Input 
Captures ergeben würde ich bei den Timer Interrupts und meiner 
bisherigen Methode bleiben.
Olympisch ist Einradfahren nicht :D Aber die Anlage könnte durchaus auf 
Europa- und Weltmeisterschaften eingesetzt werden und es geht durchaus 
auch darum Zeiten stoppen zu können, die dann ggf. als Weltrekord 
anerkannt werden.
Ich würde die Zeiten daher gerne möglichst genau stoppen können.

m.n. schrieb:
> Um 1 ms auf 3600 s (< 0,3 ppm) genau zu messen ist schon ein stabiler
> Quarzoszillator notwendig: TCXO oder besser OCXO. Oder man korrigiert
> die Zeitmessung anhand eines 1 pps GPS-Impulses.

Über den pps GPS-Impuls habe ich in verschiedenen Threads auch schon 
etwas gelesen, allerdings habe ich noch nicht so genau verstanden, wie 
sich eine Korrektur damit umsetzten lässt.
Mit einem guten TCXO oder OCXO lässt sich aber vermutlich die höhere 
Genauigkeit erzielen, auch wenn die Hardware dafür teuer ist, oder?

Gruß
Jan

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Jan V. schrieb:
> Über den pps GPS-Impuls habe ich in verschiedenen Threads auch schon
> etwas gelesen, allerdings habe ich noch nicht so genau verstanden, wie
> sich eine Korrektur damit umsetzten lässt.

 pps <==> pps = 1s = 1000ms.
 Wenn deine ISR in dieser Zeit (zwischen 2 pps Impulsen) nicht genau
 1000 Impulse gezählt hat, kann man entsprechend korrigieren.

> Mit einem guten TCXO oder OCXO lässt sich aber vermutlich die höhere
> Genauigkeit erzielen, auch wenn die Hardware dafür teuer ist, oder?

 Nein, nicht unbedingt und wenn doch, dann nur unwesentlich, aber:
   a) Mit GPS hat man auch die genaue Zeit parat (kann ja nicht
 schaden, oder ?)
   b) GPS-Module kosten inzwischen weniger als 10 Euro.

von Jörg R. (solar77)


Lesenswert?

Jan V. schrieb:
> 3. Wie groß sollen die Ziffern der 7-Segmentanzeige werden:
> Der Bediener der Anlage sollte die Ziffern aus einem Abstand von 1-2m
> gut ablesen können - ich denke so um dei 5cm sollten es schon sein.

Für diese kurze Distanz reichen 13mm ZH.


> Problematisch wir wahrscheinlich die Lesbarkeit auch bei
> Sonneneinstrahlung hinzubekommen, darüber muss ich mir noch mal Gedanken
> machen.

LC-Display, oder Segmentanzeigen aus LEDs mit eingebautem Reflektor und 
geringen Abstrahlwinkel.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Wird das Einrad fahren nicht mit zunehmender Geschwindigkeit einfacher? 
Dann müsste man ja den langsamsten auf das Siegerpodest stellen, oder 
nicht?

Spaß bei Seite: Geht es um Rennen und Geschwindigkeit? Für mich waren 
Einräder bisher immer Trainingsgeräte wo es eher um das "dabei sein" 
ging.

von Esmu P. (Firma: privat) (max707)


Lesenswert?

wolle g. schrieb:
> Jan V. schrieb:
>> Ich würde gerne eine Zeitmessung für Sportveranstaltungen realisiern.
>> Die
>> Anforderungen sind wie folgt:
>>
>> - Genauigkeit: 1/1000 sec
>> - Messdauer: einige Sekunden bis zu etwa einer Stunde
>
> Es wäre interessant, bei welcher Sportart diese Anforderungen notwendig
> sind.

Fehlstart beim Marathonlauf

von m.n. (Gast)


Lesenswert?

Jan V. schrieb:
> Mit einem guten TCXO oder OCXO lässt sich aber vermutlich die höhere
> Genauigkeit erzielen, auch wenn die Hardware dafür teuer ist, oder?

Ein 'guter' TCXO 20 MHz und 0,5 ppm über -30 -> +70°C kostet ca. € 3,--: 
https://de.rs-online.com/web/p/spannungsgesteuerte-oszillatoren-vco/7099379/
Meine Erfahrung mit diesen Teilen ist, daß alle unter 0,5 ppm 
Grundgenauigkeit liegen und vielfach sogar unter 0,1 ppm. Das dürfte für 
Gesamtzeiten < 1000 Sekunden völlig reichen.

Wie schon geschrieben reichen für 1 - 2 m Abstand 13/14 mm hohe 
Anzeigen, die es in sehr heller Ausführung als LED-7-Segmentanzeigen 
gibt. Reflektierende LCD-Anzeigen gibt es auch recht günstig in dieser 
Größe, sind aber nicht optimal ausgeführt. Denn zum einen sollten 
LC-Anzeigen für besten Kontrast statisch angesteuert werden, was 
bedeutet, daß nur eine Backplane vorhanden ist. Zum anderen gibt es 
diese Anzeigen günstig nur in max. 8-stelliger Ausführung mit 
Doppelpunkten im 2er Abstand, der für Deine Anwendung leider nicht paßt. 
Die 1000tel brauchen ja drei Stellen. Das Format "0:23:57.987" würde 
nicht passen.
Dies nur am Rande.

Schön wäre noch eine TFT-Anzeige (>= 4,3") mit schwarzer Schrift auf 
weißem Hintergrung. Bei Sonnenlicht muß auf jeden Fall ein Tubus bzw. 
vertiefter Einbau dafür sorgen, daß kein direktes Licht vom Display 
reflektiert werden kann.
Insgesamt keine schwierige Aufgabe.

von Falk B. (falk)


Lesenswert?

@ m.n. (Gast)

>> Mit einem guten TCXO oder OCXO lässt sich aber vermutlich die höhere
>> Genauigkeit erzielen, auch wenn die Hardware dafür teuer ist, oder?

>Ein 'guter' TCXO 20 MHz und 0,5 ppm über -30 -> +70°C kostet ca. € 3,--:
>https://de.rs-online.com/web/p/spannungsgesteuerte...

Schon mal das Datenblatt gelesen? Das Ding ist mit +/-2ppm spezifiziert, 
das ist fast Faktor 10 über der GENAUIGKEIT, welche der OP anstrebt.

>Meine Erfahrung mit diesen Teilen ist, daß alle unter 0,5 ppm
>Grundgenauigkeit liegen und vielfach sogar unter 0,1 ppm.

Dumm nur, daß man das ohne sehr guten Frequenzzähler nicht nachweisen 
kann.

Also legt man besser ein paar Euro drauf und kauft einen, der GARANTIERT 
unter den 0,x ppm liegt, nicht nur vermutlich.

von Falk B. (falk)


Lesenswert?

Das Ding erfüllt die Anforderungen des OPs SICHER, kostet aber ein paar 
Euro. Für eine Weltmeisterschaftzszeitmessung (was für ein Wort!) aber 
Peanuts.

https://de.rs-online.com/web/p/quarz-oszillatoren/7293329/

von Wolfgang (Gast)


Lesenswert?

Falk B. schrieb:
> Dumm nur, daß man das ohne sehr guten Frequenzzähler nicht nachweisen
> kann.

Ein GPS mit 1PPS-Ausgang und jeder LA für 6€ (oder ein Oszi) sollten 
ausreichen, um das innerhalb von ein paar Sekunden zu verifizieren.

von Falk B. (falk)


Lesenswert?

@ Wolfgang (Gast)

>> Dumm nur, daß man das ohne sehr guten Frequenzzähler nicht nachweisen
>> kann.

>Ein GPS mit 1PPS-Ausgang und jeder LA für 6€ (oder ein Oszi) sollten
>ausreichen, um das innerhalb von ein paar Sekunden zu verifizieren.

Nö. Das ist nur wieder eine faule Ausrede, um einen Fehler zu 
beschönigen. Aber damit liegtst du voll im Zeitgeist.

https://de.wikipedia.org/wiki/Zeitgeist

von Wolle G. (wolleg)


Lesenswert?

Was ist denn von dem Teil zu halten:
https://www.mouser.de/datasheet/2/371/SiT5356-datasheet_1-1371850.pdf

wird mit +-0,1 bis +-0.25ppm anggeben, Kostenpunkt:42€

von m.n. (Gast)


Lesenswert?

Falk B. schrieb:
> Schon mal das Datenblatt gelesen? Das Ding ist mit +/-2ppm spezifiziert,
> das ist fast Faktor 10 über der GENAUIGKEIT, welche der OP anstrebt.

Schon mal gelesen, was ich geschrieben habe? Mit Sicherheit nicht!

Falk B. schrieb:
>>Meine Erfahrung mit diesen Teilen ist, daß alle unter 0,5 ppm
>>Grundgenauigkeit liegen und vielfach sogar unter 0,1 ppm.
>
> Dumm nur, daß man das ohne sehr guten Frequenzzähler nicht nachweisen
> kann.

Ich habe sehr gute Frequenzzähler und sehe daher die initialen 
Abweichungen auf < 1 bpm genau. (Kein Schreibfehler).

Falk B. schrieb:
> Das Ding erfüllt die Anforderungen des OPs SICHER, kostet aber ein paar
> Euro.

Völlig überzogen, da nichts begriffen!

von Wolle G. (wolleg)


Lesenswert?

m.n. schrieb:
> Ich habe sehr gute Frequenzzähler und sehe daher die initialen
> Abweichungen auf < 1 bpm genau. (Kein Schreibfehler).

meinst Du wirklich bpm (Beats per minute)
oder vielleicht ppb

von Falk B. (falk)


Lesenswert?

@ m.n. (Gast)

>> Schon mal das Datenblatt gelesen? Das Ding ist mit +/-2ppm spezifiziert,
>> das ist fast Faktor 10 über der GENAUIGKEIT, welche der OP anstrebt.

>Schon mal gelesen, was ich geschrieben habe? Mit Sicherheit nicht!

Duchaus. Aber du scheinst damit mal wieder Probleme zu haben.

>>>Meine Erfahrung mit diesen Teilen ist, daß alle unter 0,5 ppm
>>>Grundgenauigkeit liegen und vielfach sogar unter 0,1 ppm.
>
>> Dumm nur, daß man das ohne sehr guten Frequenzzähler nicht nachweisen
>> kann.

>Ich habe sehr gute Frequenzzähler und sehe daher die initialen
>Abweichungen auf < 1 bpm genau. (Kein Schreibfehler).

Schön für dich, der OP hat ihn aber mal sicher nicht.

>> Das Ding erfüllt die Anforderungen des OPs SICHER, kostet aber ein paar
>> Euro.

>Völlig überzogen, da nichts begriffen!

Jaja.

von m.n. (Gast)


Lesenswert?

wolle g. schrieb:
> meinst Du wirklich bpm (Beats per minute)
> oder vielleicht ppb

Oh, danke für den Hinweis. Zwar habe ich derzeit viel bpm im Kopf, 
meinte aber natürlich ppb.

Wolfgang schrieb:
> Ein GPS mit 1PPS-Ausgang und jeder LA für 6€ (oder ein Oszi) sollten
> ausreichen, um das innerhalb von ein paar Sekunden zu verifizieren.

Es reicht ja schon, den µC mit dem TCXO zu takten und per Timer1 und 
input-capture Beim ATmega zu sehen, wie groß die Abweichung von 20000000 
(bei 20 MHz Taktfrequenz) ist. Damit kann man das Meßergebnis 
korrigieren, sofern es überhaupt notwendig sein sollte.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

m.n. schrieb:
> Falk B. schrieb:
>> Schon mal das Datenblatt gelesen? Das Ding ist mit +/-2ppm spezifiziert,
>> das ist fast Faktor 10 über der GENAUIGKEIT, welche der OP anstrebt.
>
> Schon mal gelesen, was ich geschrieben habe? Mit Sicherheit nicht!

 Ich habe es gelesen. Und ? Wo sind deine 0.1 bis < 0.5ppm ?

 Alles unter 0.5ppm kostet mit Sicherheit mehr als 30Euro, also soviel
 wie 4 (vier) GPS-Module.

m.n. schrieb:
> Es reicht ja schon, den µC mit dem TCXO zu takten und per Timer1 und
> input-capture Beim ATmega zu sehen, wie groß die Abweichung von 20000000
> (bei 20 MHz Taktfrequenz) ist. Damit kann man das Meßergebnis
> korrigieren, sofern es überhaupt notwendig sein sollte.


 Nach 1 Stunde haben die meisten TCXO mindestens +/- 15us Fehler.

 PPS from GPS hat den Fehler von etwa +/- 15ns sowohl nach einer
 Stunde als auch nach einem Jahr, also 1000 Mal besser und auf
 jeden Fall stabiler!

von Esmu P. (Firma: privat) (max707)


Lesenswert?

Wie meinen???

von m.n. (Gast)


Lesenswert?

Marc V. schrieb:
> Nach 1 Stunde haben die meisten TCXO mindestens +/- 15us Fehler.

Ich weiß zwar nicht, wie Du das gerechnet hast, aber alles < 1 ms ist 
doch in Ordnung ;-)

>  PPS from GPS hat den Fehler von etwa +/- 15ns sowohl nach einer
>  Stunde als auch nach einem Jahr, also 1000 Mal besser und auf
>  jeden Fall stabiler!

Darum hatte ich ja auch GPS als Option genannt, um einen TCXO zu 
bewerten bzw. korrigieren. Unter realistischen Bedingungen reicht ein 
TCXO allerdings aus.

von Jan V. (einradfahrer)


Lesenswert?

Heute habe ich mal wieder etwas Zeit gehabt mich mit dem Vorhaben weiter 
zu beschäftigen.

Marc V. schrieb:
>  pps <==> pps = 1s = 1000ms.
>  Wenn deine ISR in dieser Zeit (zwischen 2 pps Impulsen) nicht genau
>  1000 Impulse gezählt hat, kann man entsprechend korrigieren.

Das klingt erst einmal nach einer in der Tat recht simpelen Möglichkeit 
die Genauigkeit sehr hoch zu bekommen.
Allerdings müsste dafür ja dynamisch, also während eine Messung erfolgt, 
der Counter-Wert für die Millisekunde angepasst werden. Ich möchte aber 
auf jeden Fall vermeiden, dass die Software dazu führen kann, dass es 
während einer Messung zu Ausfällen kommen kann.
Das GPS Signal könnte ja während einer laufenden Messung verloren gehen? 
Gut, dass könnte man sicherlich softwareseitig abfangen.
Aber irgendwie habe ich ein ungutes Gefühl dabei die Software etwas 
korrigieren zu lassen ohne, dass ich feststellen kann, was korrigiert 
wurde. Immerhin sollte jeder Teilnehmer gleiche Voraussetzungen haben...
Ich habe allerdings auch keine Ahnung, wie das bei kommerziell 
erhältlichen Zeitnahmesystemen gelöst ist, vielleicht ist dieses 
Vorgehen da absolut üblich und ich mache mir vollkommen Überflüssige 
Gedanken dadrum.

>    a) Mit GPS hat man auch die genaue Zeit parat (kann ja nicht
>  schaden, oder ?)

Das wäre allerdings insbesondere im Hinblick auf ein Log-Datei sehr 
nützlich.


Dann wurde ja jetzt einiges zu den verschiedenen TCXOs der verschiednen 
Preisklassen geschrieben. In den Datenblättern ist mir aufgefallen, dass 
dort oft einmal die Frequency Tolerance und einmal die Frequency 
Stability angegeben ist.
Die Frequency Tolerance liegt bei den Günstigen wie dem von m.n. 
verlinkten bei etwa +-2ppm, die Frequency Stability bei +-0,2ppm
m.n. schrieb:
> https://de.rs-online.com/web/p/spannungsgesteuerte-oszillatoren-vco/7099379/

Bei dem von Falk B. verlinkten OCXO finde ich nur Angaben zur Frequency 
Stability, oder habe ich etwas im Datenblatt übersehen?
Falk B. schrieb:
> https://de.rs-online.com/web/p/quarz-oszillatoren/7293329/

Wenn mich nicht alles täuscht dürfte die Frequency Tolerance ja eine 
initial vorhandene Abweichung von der angegeben Frequenz sein - 
theoretisch also ermittelter und dann in der Software zu 
berücksichtigen. Für die anschließende Genauigkeit sollte die Frequency 
Stability maßgeblich sein, oder?
180€ nur für den Quarzoszillator sind schon eine Ansage - und auch für 
eine Weltmeisterschaftszeitmessung leider kein Peanuts. Beim Einrad ist 
nämlich quasi alles privatfinanziert und das Geld, was den Veranstaltern 
für so etwas zur Verfügung steht ist doch sehr begrenzt.

wolle g. schrieb:
> Was ist denn von dem Teil zu halten:
> https://www.mouser.de/datasheet/2/371/SiT5356-datasheet_1-1371850.pdf
>
> wird mit +-0,1 bis +-0.25ppm anggeben, Kostenpunkt:42€
Dort finde ich im Datenblatt nur was zur Initial Tolerance - ich denke 
das ist das selbe wie die Frequency Tolerance?
Wäre mit +-0,5ppm schonmal geringer als bei dem ersten. Ohne 
Korrekturfaktor evtl. immer noch zu groß. Die initiale Frequenz zu 
messen und damit zu rechnen würde - entsprechendes Messequipment 
vorausgesetzt - ohnehin am sinnvollsten sein, oder? Und dann dürften 
doch auch noch günstigere Modelle in Frage kommen? Oder habe ich da noch 
etwas anderes übersehen?

Mir ist noch aufgefallen, dass es Oszillatoren mit HCMOS und welche mit 
Clipped Sinewave Output gibt. Lassen sich beide zusammen mit einem 
ATMega Mikrocontroller verwenden?

Gruß
Jan

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Jan V. schrieb:
> Aber irgendwie habe ich ein ungutes Gefühl dabei die Software etwas
> korrigieren zu lassen ohne, dass ich feststellen kann, was korrigiert
> wurde. Immerhin sollte jeder Teilnehmer gleiche Voraussetzungen haben...

 Nun, man hat dieses Problem bei allen Zeitmessanlagen - da hilft es
 nur, genau zu kalibrieren, ein Zeitraum von 48 Stunden reicht meistens.

 Angenommen, du hast +/- 20ppm, das ergibt 20us Abweichung jede Sekunde.
 Nach 50 Sekunden hast du schon die 1ms Grenze erreicht.

 Mit GPS zählt man die pps Impulse als Sekunden, die Zeit dazwischen
 wird mit Timer gemessen - ergibt einen max. Fehler von 20us über
 einen beliebigen Zeitraum.

 Mit Quartz/TCXO/OCXO gilt der Fehler aber über die Gesammtzeit.

Jan V. schrieb:
> Das GPS Signal könnte ja während einer laufenden Messung verloren gehen?

 Sicher, aber dann stehst du mit einem ausgemessenem Quartz da.
 Bei Timerstand von 50000 wird 1 abgezogen (oder dazugezählt) und schon
 hat man die 20ppm kompensiert.
 Bleibt nur die Stabilität...

von Falk B. (falk)


Lesenswert?

@ Jan V. (einradfahrer)

>Allerdings müsste dafür ja dynamisch, also während eine Messung erfolgt,
>der Counter-Wert für die Millisekunde angepasst werden.

So in etwa. Das kann man zwar noch verbessern, indem man nicht mit 1ms 
sondern 0,1m oder darunter eine ISR betreibt und damit ein PLL in 
Software nachbildet. Dann geht das auch relativ gut und genau, kostet 
aber ne gute Portion Know How.

> Ich möchte aber
>auf jeden Fall vermeiden, dass die Software dazu führen kann, dass es
>während einer Messung zu Ausfällen kommen kann.

Eben darum braucht man eine (intelligente) PLL, welche auch beim Ausfall 
des GPS einige Zeit stabil weiter läuft.

>erhältlichen Zeitnahmesystemen gelöst ist, vielleicht ist dieses
>Vorgehen da absolut üblich und ich mache mir vollkommen Überflüssige
>Gedanken dadrum.

Naja, wo liegt denn das Problem? Klar kostet so ein OCXO ne Kleinigkeit, 
dafür ist es ein "No Brainer". Einbauen, fertig.


>Bei dem von Falk B. verlinkten OCXO finde ich nur Angaben zur Frequency
>Stability, oder habe ich etwas im Datenblatt übersehen?
>Falk B. schrieb:
>> https://de.rs-online.com/web/p/quarz-oszillatoren/7293329/

Ist ganz unten in der Bestellbezeichnung drin.

YB = 0.5ppm

Weiß der Geier wo RS die 0,2ppm her hat, die in der Produktbeschreibung 
drin stehen.

Der Typ bei RS ist ein steuerbarer OCXO, der mit +/-3ppm verstimmt 
werden kann. Nützt dir also nix, denn dieser OCXO ist für eine PLL 
bestimmt.

>Wenn mich nicht alles täuscht dürfte die Frequency Tolerance ja eine
>initial vorhandene Abweichung von der angegeben Frequenz sein -

Ja.

>theoretisch also ermittelter und dann in der Software zu
>berücksichtigen. Für die anschließende Genauigkeit sollte die Frequency
>Stability maßgeblich sein, oder?

Ja.

>180€ nur für den Quarzoszillator sind schon eine Ansage - und auch für
>eine Weltmeisterschaftszeitmessung leider kein Peanuts.

Naja . . .

> Beim Einrad ist
>nämlich quasi alles privatfinanziert und das Geld, was den Veranstaltern
>für so etwas zur Verfügung steht ist doch sehr begrenzt.

Arme Leute Sport? ;-)

>Dort finde ich im Datenblatt nur was zur Initial Tolerance - ich denke
>das ist das selbe wie die Frequency Tolerance?

Ja.

>Wäre mit +-0,5ppm schonmal geringer als bei dem ersten. Ohne
>Korrekturfaktor evtl. immer noch zu groß. Die initiale Frequenz zu
>messen und damit zu rechnen würde - entsprechendes Messequipment
>vorausgesetzt - ohnehin am sinnvollsten sein, oder? Und dann dürften
>doch auch noch günstigere Modelle in Frage kommen?

Kann sein.

>Mir ist noch aufgefallen, dass es Oszillatoren mit HCMOS und welche mit
>Clipped Sinewave Output gibt. Lassen sich beide zusammen mit einem
>ATMega Mikrocontroller verwenden?

Nimm einen mit CMOS-Ausgang.

von Flitz (Gast)


Lesenswert?

@einradfahrer

Kannst du bitte noch einmal von vorne anfangen? Bitte ganz genau die 
Anforderungen überprüfen?

Anwendungen der Zeitmessung

Reproduzierung der Messergebnisse

Wenn ich mit meinem Rennrad 60 km fahre, welche Zeit benötige ich genau? 
So ca eine Stunde? Wie willst du da genau auf eine Millisekunde genau 
messen?

Betonung auf genau!

von m.n. (Gast)


Lesenswert?

Jan V. schrieb:
> Mir ist noch aufgefallen, dass es Oszillatoren mit HCMOS und welche mit
> Clipped Sinewave Output gibt. Lassen sich beide zusammen mit einem
> ATMega Mikrocontroller verwenden?

Ja. Auch ein abgeschnittener Sinus reicht für einen ATmega aus, wenn man 
das Signal kapazitiv (1 nF) einkoppelt. Andernfalls spendiert man einen 
Inverter zur Signalaufbereitung (74LVC1GU04).

Wie man per GPS-Signal stabilisiert, kannst Du hier sehen: 
Beitrag "reziproker Frequenzzähler, GPS-stabilisiert, ATmega162" (das ist ja schon 
wieder sieben Jahre her).
Mit dem 1pps GPS-Signal wird der vorhandene Taktgeber vermessen und das 
Ergebnis entsprechend korrigiert. Da alle 10 Minuten der Korrekturwert 
ins EEPROM geschrieben wird, ist auch direkt nach dem Einschalten oder 
bei Ausfall des GPS der Korrekturwert hinreichend genau vorhanden.
Die Korrektur wird hier ganz komfortabel mit double-Variablen 
durchgeführt.
Für Deine Anwendung ist dies nicht notwendig.

Ausgehend von einem 1 ppm stabilen Taktsignal ergibt sich ein Fehler 
erst ab rund 10 Minuten. Alle Messzeiten, die kürzer sind, müßten 
garnicht korrigiert werden.
Aber eine Korrektur ist auch mit einfacher Rechnerei möglich.

Nehmen wir einen TCXO mit 20 MHz, der 1 ppm zu langsam läuft. Mit dem 
1pps-Signal erhält man über input-capture von Timer1 (Überläufe richtig 
beachtet) jede Sekunde einen Zählerstand von 19 999 980. Das heißt, es 
fehlen 20 Impulse (Sollwert - Istwert) innerhalb 1 s:
20 x 50 ns => 1 µs Abweichung/s, was 1 ppm entspricht.
Zu der gesamten Meßzeit muß folglich zu jeder Sekunde Messzeit 1 µs 
addiert werden. Diesen Korrekturwert wird man zweckmäßigerweise in einer 
separaten Variable summieren. Änderungen vom Istwert werden permanent 
berücksichtigt.

Nach 1000 s wäre die gemessene Zeit ohne Korrektur um 1 ms zu klein. 
Addiert man nun den Korrekturwert von 1 ms (1000 x 1 µs), hat man das 
exakte Ergebnis.

Den gemessenen Istwert speichert man zweckmäßig entweder jede Sekunde 
oder jede Minute ab, sodaß auch bei Ausfall des GPS-Signals sinnvoll 
korrigiert werden kann. Der TCXO ist dafür stabil genug, es sei denn man 
bearbeitet ihn mit Föhn oder Kältespray.
Ein TCXO ist direkt nach dem Einschalten betriebsbereit, während ein 
OCXO eine Aufheizphase braucht, die für die benötigte Genauigkeit 1 - 2 
Minuten betragen kann.

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

m.n. schrieb:
> Nach 1000 s wäre die gemessene Zeit ohne Korrektur um 1 ms zu klein.
> Addiert man nun den Korrekturwert von 1 ms (1000 x 1 µs), hat man das
> exakte Ergebnis.

 Nein, so sollte man das nicht machen.
 Man korrigiert in kürzeren Zeitabständen, ansonsten kann es passieren,
 dass nach 999.999s und schneller laufendem TCXO der Zweite plötzlich
 der Sieger wird - wenn auch so ein Fall äußerst unwahrscheinlich ist.

: Bearbeitet durch User
von m.n. (Gast)


Lesenswert?

Marc V. schrieb:
> Nein, so sollte man das nicht machen.
>  Man korrigiert in kürzeren Zeitabständen,

Tut mir Leid, mit soviel 'Unverständnis' habe ich nicht gerechnet. Das 
Rechenbeispiel mit 1 ppm war rein willkürlich gewählt.

Man korrigiert jeden angezeigten Wert - was denn sonst?

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

m.n. schrieb:
> Tut mir Leid, mit soviel 'Unverständnis' habe ich nicht gerechnet. Das

 LOL.

> Man korrigiert jeden angezeigten Wert - was denn sonst?

 Und warum schreibst du dann etwas ganz anderes ?

m.n. schrieb:
> Nach 1000 s wäre die gemessene Zeit ohne Korrektur um 1 ms zu klein.
> Addiert man nun den Korrekturwert von 1 ms (1000 x 1 µs),

von wendelsberg (Gast)


Lesenswert?

Jan V. schrieb:
> Hier ist es leider noch üblich (und von einigen
> Veranstaltern/Funktionären/etc. auch gefordert) die Zeiten mit 1/1000s
> auf den Ergebnislisten anzugeben.

Das bedeutet doch im Regelfall, dass die Zeitmessung in geeigneter Weise 
zertifiziert sein muss.

wendelsberg

von Wolle G. (wolleg)


Lesenswert?

Flitz schrieb:
> @einradfahrer
>  Kannst du bitte noch einmal von vorne anfangen? Bitte ganz genau die
>  Anforderungen überprüfen?
>  Anwendungen der Zeitmessung
>  Reproduzierung der Messergebnisse
>  Wenn ich mit meinem Rennrad 60 km fahre, welche Zeit benötige ich genau?
>  So ca eine Stunde? Wie willst du da genau auf eine Millisekunde genau
>  messen?
>  Betonung auf genau!

Die genaue Zeitmessung auf 1ms ist m. E. nur ein Problem. Gefühlt kommt 
noch ein weiteres Problem hinzu.
Kann man denn die Wegstrecken so genau festlegen, dass "die Weltrekorde" 
tatsächlich vergleichbar sind?

von Dieter (Gast)


Lesenswert?

Die Waermeausdehnung einer Rennbahn und den Einfluss koennte man mal 
Nachrechnen. Man nehme die Waermeausdehnung von Stein bei 10 und 15 
Grad. Geschwindigkeit von 20km/h und 400m.

Viel Erfolg beim Rechnen.

von flitz (Gast)


Lesenswert?

Eisenbahnschienen....
Stahlrad....
Holzoval.....

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.