Forum: Mikrocontroller und Digitale Elektronik Zeitmessanlage für Seifenkisten


von Tobias (cheffeundwackl)


Angehängte Dateien:

Lesenswert?

Hallo,
wir, der Seifenkistenverband BW, betreiben Seifenkistenrennsport für 
Kinder. Das sind aber jetzt nicht irgendwelche zusammengenagelte, 
umgebaute Kinderwagen, sondern sind richtige Rennmaschinen, die in der 
höchsten Klasse ausschließlich aus Carbon bestehen. Wir kämpfen hier um 
1/100 Sekunden. Die Klassen werden bis zur Weltmeisterschaft gefahren. 
Dieses Jahr z. B. auf der Formel 1 Rennstrecke in Salzburg (man kann 
sich hier noch anmnelden :-). Ich hab da mal ein Bild angehängt.

Jetzt ist es so, dass unsere Zeitmessanlage langsam den Geist aufgibt 
und das Ding schon so alt ist, dass wir keine Ersatzteile mehr bekommen. 
Das was es auf dem Markt gibt kostet entweder tausende an Euros oder ich 
muss es so massiv anpassen, dass ich es gleich selber machen kann.

Meine Qualifikation: Mechanisch top, elektrisch zumindest so weit, dass 
ich zumindest meine 3D Drucker eigene Firmaware aufspielen konnte. Also 
im elektrischen Bereich eher Anfänger. Programmierung VBA, das geht ganz 
gut.

Jetzt zur Aufgabe:
Da ich die Auswertung in Excel eh selber machen muss (VBA Basic, da 
siehst Du nix mehr von Excel), brauch ich jetzt irgend eine Möglichkeit 
die Zeit zu messen, und das im 1/100tel Bereich oder besser.

Mein Lösungsansatz 1: Ich nehme mir ein Arduino, Siemens Logo usw. und 
mach dort eine hochgenaue Atomuhr ran. Mit Auslöser Start / Ziel habe 
ich 2 Zeitstempel die ich dann auslesen kann und weiter verarbeiten. 
Nur: meine Suche auf Google & co. geht ins leere. Ich habe zwar Uhren 
gefunden, aber keine Angaben, wie genau.

Mein Lösungsansatz 2: Es gibt irgend ein fertigen Controller, der schon 
eine genaue Zeitmessung drauf hat und mir die Zeitstempel liefert.

Randbedingungen: Es soll keine Bastellösung sein, sondern aus 
Komponenten bestehen, die langfristig verfügbar sind. Sonst fange ich 
wieder bei 0 an, wenn in 5 Jahren was kaputt geht.

Ablauf (Rennen):
An der Startrampe stehen beide Seifenkisten in definierter Stellung. 
Über die Startklappe wird ein Rollhebelschalter betätigt. Das Siganl 
geht über ein Kabel zum Ziel. Dort stehen pro Bahn (2 Bahnen maximal) 
eine Lichtschranken. Werden diese unterbrochen wird die Zeit gemessen.

Wer hier weiter Einblicke braucht, hier unsere Internetseite
www.seifenkistenverband-BW.de

So und jetzt bin ich gespannt auf die Lösungsvorschläge. Danke im 
Vorraus.

von Mi N. (msx)


Lesenswert?

Tobias schrieb:
> Das Siganl
> geht über ein Kabel zum Ziel.

Das solltest Du genau vermessen, damit da keine Picosekunden verloren 
gehen ;-)

Lassen die Lichtschranken am Ziel überhaupt eine höhere Auflösung als 
1/100 s zu? Um welche Zeiten handelt es sich?

Die ganze Aufgabe ist so simpel, daß man jeden kleinen 
Controller(-board) verwenden kann, sofern er mit einem Quarz getaktet 
wird. Vielleicht auch noch mit einen TCXO (temperaturkompensierten 
Quarzoszillator). Eine Atomuhr braucht man nicht.

P.S.: ein kleines Beispiel für Zeitmessungen
http://mino-elektronik.de/fmeter/fm_software.htm#bsp6

: Bearbeitet durch User
von Michael (mm1)


Lesenswert?

Du könntest die Signale (Spannungsteiler davor) auf die Soundkarte von 
jedem PC/Laptop legen und einlesen. Dann hast du die Genauigkeit von dem 
PC und bei Stereo sogar 2 Kanäle. Und Notebooks werden wohl noch ein 
paar Jahre produziert.

von Tobias (cheffeundwackl)


Lesenswert?

Oh, das ging schnell. Danke.

Dass das keine Aufgabe wird wo tausende grauer Gehinzellen sterben, war 
mir klar.

Aber so bekomme ich das nicht hin. Dazu reichen meine Elektro-Kentnisse 
nicht aus. Gibt es da nicht was wo mehr vorgefertigt ist? So in der Art 
Siemens Logo, M5 Stack usw.? Also eher zusammenstecken und 
parametrieren, statt löten und programmieren?

von Mi N. (msx)


Lesenswert?

Tobias schrieb:
> Aber so bekomme ich das nicht hin.

Was ist denn jetzt vorhanden:
Anzeige, Bedienung, Signaleingänge, Datenausgang?

Ich habe keine Lust, mir eine verkekste Seite mit eingeschränkter 
Funktion anzusehen und irgendetwas zusammenzusuchen.

von Adam P. (adamap)


Lesenswert?

Also ich würde das auch mit einem Controller (zur not Arduino) machen.

Timer mit 1kHz laufen lassen.
Evtl. sogar den "Rollhebelschalter" am Start ebenfalls durch 
Lichtschranke ersetzen. Fertig.

Jedoch mach ich mir grad gedanken über die Aussage:

Tobias schrieb:
> Das Siganl geht über ein Kabel zum Ziel.

Wie lang ist das Kabel?
Evtl. bräuchte man da noch zusätzliche Beschaltung bzgl. der Spannung 
(Signalpegel).

von Daniel F. (foxi_the_daywalker)


Lesenswert?

Hi,

die Zeitmessung ist meiner Meinung nach weniger das Problem.
Du musst eine verlässliche Verbindung zum Start und Ziel haben.
Sind die Schalter am Start vielleicht ähnlich von NAMUR Schaltern mit 
zwei Widerständen drin?
Dann kann man nämlich erkennen, ob das Kabel abgerissen ist.
Wie filterst du die empfangenen Signal aus dem Kabel vom Start?
Ich gehe davon aus, dass es vielleicht 100m oder mehr sind.

Dokumentation ist in dem Fall alles. Dann kann auch in 10 Jahren noch 
jemand das reparieren.

Ich muss jetzt gerade an meine Uni-Zeit denken. Dort hatten wir auch die 
Messung und Anzeige für das jährliche Seifenkistenrennen gebaut :-)

Grüße
Daniel

von Rainer W. (rawi)


Lesenswert?

Tobias schrieb:
> Mein Lösungsansatz 1: Ich nehme mir ein Arduino, Siemens Logo usw. und
> mach dort eine hochgenaue Atomuhr ran.

Ein GPS-Empfänger mit 1PPS-Ausgang reicht völlig. Damit kämest du für 
kleines Geld auf Zeitmarken mit besser als 100 Nanosekunden ;-)
Das dürfte doch reichen - oder wie präzise ist die Lichtschranke?

: Bearbeitet durch User
von Mi N. (msx)


Lesenswert?

Tobias schrieb:
> Jetzt ist es so, dass unsere Zeitmessanlage langsam den Geist aufgibt
> und das Ding schon so alt ist, dass wir keine Ersatzteile mehr bekommen.

Vielleicht frischt man die vorhandene Elektronik auch nur auf?
Spezielle Ersatzteile würde ich da nicht vermuten. Trockene Elkos, 
verblasste 7-Segementanzeigen, prellende Taster vielleicht.
Das kann man aber auch wieder korrigieren.

Aufschrauben und Fotos machen!
Das kommt hier immer gut an ;-)

von Adam P. (adamap)


Lesenswert?

Mi N. schrieb:
> Aufschrauben und Fotos machen!
> Das kommt hier immer gut an ;-)

Jetzt bin ich aber auch neugierig :)

Evtl. ist es ja wirklich nur eine Kleinigkeit, dann bräuchte man das Rad 
nicht neu erfinden.

von Tobias (cheffeundwackl)


Lesenswert?

Hallo,

ich versuch das jetzt mal der Reihe nach zu beantworten. Ich bin erst 
mal positiv überrascht, dass so viel hier Input geben.

Vorhanden:
- Startrampe mit Rollhebelschalter
- Kabel bis zum Ziel
- Lichtschranken noch nicht, aber da ich zu Fa. Sick / Keyence gute 
Verbindungen hab, würde ich hier eine Lichtschranke nehmen (bekomme ich 
wahrscheinlich gesponsort).

Kabelverbindung:
- Die Idee mit dem includiertem Kabelbruch ist gut. Da wir das schon 
hatten, haben wir ein Testgerät gebaut, wo wir vor dem Aufbau die Kabel 
testen. Die Rennen werden morgens aufgebaut und abends abgebaut. Daher 
würde ich das außen vor lassen, macht den Aufbau eher komplizierter 
statt einfacher.
- Die Strecken sind typisch 250-350 m lang. Mit der alten Anlage hat es 
hier nie Probleme gegeben. Auch evtl. Zeitdifferenzen durch die Länge 
sind eher kein Problem, da ja jeder Starter diese Zeitversatz hat, was 
unterm Strich dann wieder gleiche Zeiten sind.

Dokumentation:
- ja, das sehe ich auch so, das muss ordentlich gemacht werden.

Anzeige:
- Würde ich über Excel machen. Die Zeit soll ja dort importiert werden 
können, damit wir die Ergebnisse nach Ranglisten, Starter, Urkundendruck 
aufarbeiten können.

Lösungsansätze:
- von Rainer: aktuell kann ich mir das nicht vorstellen, wie das geht. 
Kannst Du das etwas ausführen? Hört sich einfach an. Wäre daher guter 
Ansatz.
- von Adam:
Arduino kenne ich von meinem 3D Drucker her. Daher auch gut, da wäre ich 
schon deutlich tiefer im Thema drin. Aber ist der schnell genug? Bzw. 
welcher wäre da zu empfehlen? Da gibt es Ausführungen wie Sand am Meer.

von ●DesIntegrator ●. (Firma: FULL PALATINSK) (desinfector) Benutzerseite


Lesenswert?

wie lang ist die Strecke die zurückgelegt wird?

Schlauch auf der Ziellinie, eine Seite verschlossen, die andere Seite 
hat einen Drucksensor, mit dem man einen Schaltvorgang triggern kann.
So ein Sensor, "Elektretmicrofon", haben z.B. diese Akkubetriebene 
Zigarettensorogate, und die können schon einiges an Strom schalten.

Der Startimpuls könnte über Funk kommen.

falls man sagt bei einer 1/100stel sekunde Genauigkeit
wäre das zuviel Latenz: Die haben alle gleichermassen.

von Adam P. (adamap)


Lesenswert?

Tobias schrieb:
> Aber ist der schnell genug? Bzw.
> welcher wäre da zu empfehlen?

Theoretisch reicht da schon ein "Arduino Nano".
Falls du jedoch ein wenig mehr RAM benötigst, ich verwende sehr gern den 
"Mega Pro Mini":

Bsp.: (Gibts von diversen Herstellern, Preise vergleichen)
https://www.amazon.de/DollaTek-ATmega2560-16AU-Intelligente-elektronische-Entwicklungsboard/dp/B07HBTSLCF/ref=sr_1_4?crid=35F7A30FH67CK&keywords=mega+pro+mini&qid=1682670115&sprefix=%2Caps%2C119&sr=8-4

von Rainer W. (rawi)


Lesenswert?

Tobias schrieb:
> - Die Strecken sind typisch 250-350 m lang

Da hätte ich keine Lust, jeden Tag das Kabel auszurollen.
Eine LoRa-Funkstrecke wäre keine Option?

> Auch evtl. Zeitdifferenzen durch die Länge
> sind eher kein Problem, ...

Lass dich nicht von Mi N. veräppeln. Die Differenz auf Grund der 
Signallaufzeit läge deutlich unter 0.000002 Sekunden

> - von Rainer: aktuell kann ich mir das nicht vorstellen, wie das geht.
> Kannst Du das etwas ausführen? Hört sich einfach an. Wäre daher guter
> Ansatz.

Mit GPS-Empfängern am Start und am Ziel stände an beiden Orten eine 
genaue Uhrzeit zur Verfügung. Die Zeiten vom Start und vom Zieldurchgang 
werden dann per Funk an die Auswertestation übermittelt und die kann 
daraus die Fahrzeit ausrechnen.

: Bearbeitet durch User
von Mi N. (msx)


Lesenswert?

●DesIntegrator ●. schrieb:
> Der Startimpuls könnte über Funk kommen.

Wer Funk kennt nimmt Kabel.

Rainer W. schrieb:
>> Auch evtl. Zeitdifferenzen durch die Länge
>> sind eher kein Problem, ...
>
> Lass dich nicht von Mi N. veräppeln.

In Verbindung mit Atomuhren wäre das durchaus angesagt.
Ironie nicht gesehen?

Tobias schrieb:
> Die Strecken sind typisch 250-350 m lang.

Das ist aber noch keine Aussage über die Zeit.

> Arduino kenne ich von meinem 3D Drucker her. Daher auch gut, da wäre ich
> schon deutlich tiefer im Thema drin. Aber ist der schnell genug? Bzw.
> welcher wäre da zu empfehlen? Da gibt es Ausführungen wie Sand am Meer.

Mein obiger Vorschlag mit ATmega88 läßt sich problemlos auf einen 
Arduino UNO oder nano übertragen.
Meine obigen Fragen sind noch unbeantwortet. EXCEL ist keine Antwort.

von Bauform B. (bauformb)


Lesenswert?

Tobias schrieb:
> Arduino kenne ich von meinem 3D Drucker her. Daher auch gut, da wäre ich
> schon deutlich tiefer im Thema drin. Aber ist der schnell genug?

Der Controller selbst ist auf jeden Fall schnell genug, garkein Problem. 
Aber mit der typischen Arduino-Programmierung kann man auch so 
programmieren, dass er zu langsam wird, also aufpassen.

> welcher wäre da zu empfehlen?

Auf jeden Fall ein Modell mit Quarz. Es gibt welche, die funktionieren 
auch ohne Quarz, aber die machen bei den Zeiten Fehler im 
Prozentbereich. Mit Quarz bleibt der Fehler unter 0.01%, also kann man 
100 Sekunden noch auf 1/100 genau messen. Man kann diesen Fehler noch 
per Software reduzieren, man muss es nur einmal zu Anfang genau 
ausmessen.

Wenn das nicht reicht, würde ich einen GPS-Empfänger mit PPS-Ausgang 
spendieren. Aber ich bezweifel, dass man die Genauigkeit mit 
Arduino-Mitteln nutzen kann.

von Mi N. (msx)


Lesenswert?

Bauform B. schrieb:
> Wenn das nicht reicht, würde ich einen GPS-Empfänger mit PPS-Ausgang
> spendieren. Aber ich bezweifel, dass man die Genauigkeit mit
> Arduino-Mitteln nutzen kann.

Kann man, indem man einen Faktor ermittelt, mit dem man den lokalen 
Oszillator korrigiert: 
http://mino-elektronik.de/fmeter/fm_software.htm#bsp2

Heute ist wohl der "Tag der alten Hüte" ;-)

von Oskar K. (karoso)


Lesenswert?

Hallo!
Ich hätte evt.eine komplette Zeitmessanlage (Tag-Heuer CP 505) mit 
professionellen Lichtschranken Kopfhörerset usw.  abzugeben. Alles 
funktionierend.
Gesamtpreis allerdings 1.600 Euro.

von Sebastian B. (sfreak) Benutzerseite


Angehängte Dateien:

Lesenswert?

Tobias schrieb:
> Vorhanden:
> - Startrampe mit Rollhebelschalter
> - Kabel bis zum Ziel
> - Lichtschranken noch nicht, aber da ich zu Fa. Sick / Keyence gute
> Verbindungen hab, würde ich hier eine Lichtschranke nehmen (bekomme ich
> wahrscheinlich gesponsort).

Bin nicht so der Experte für Seifenkisten... habe mir nur einige Bilder 
vom Seifenkistenverband BW angesehen. Kann ich mir das Ganze so 
vorstellen, dass es einen gemeinsamen Start-Schalter für alle Bahnen 
gibt und dann einen getrennten Ziel-Schalter (oder Lichtschranke) für 
jede Bahn?

Bestimmt werden dann also z.B. 3 Zeitdifferenzen bei 3 Bahnen:
Ziel1 - Start
Ziel2 - Start
Ziel3 - Start


Sebastian

von Tobias (cheffeundwackl)


Lesenswert?

Sebastian B. schrieb:


> vorstellen, dass es einen gemeinsamen Start-Schalter für alle Bahnen
> gibt und dann einen getrennten Ziel-Schalter (oder Lichtschranke) für
> jede Bahn?
>
> Bestimmt werden dann also z.B. 3 Zeitdifferenzen bei 3 Bahnen:


passt genau, nur halt mit einer oder zwei Bahnen.

von Gerald B. (gerald_b)


Lesenswert?

Wenn es reproduzierbar genau sein soll, würde ich die Stoppuhr als 
gutes, altes CMOS Grab aufbauen. Eine Handvoll Zähler, Teiler und 7 
Segmentdecoder sind kein Hexenwerk, dafür aber immer gleich genau.
Ein µC arbeitet das die Programmschleife immer stur Schritt für Schritt 
nacheinander ab. So kommt es, das bei bedingten Anweisungen mal eine 
Runde länger ist, als die andere.
Im Tausendstel Bereich fällt das dann schon ins Gewicht. Der GPS 
Zeitämpfänger lügt dir dann die Taschen voll :-P

von Rainer W. (rawi)


Lesenswert?

Mi N. schrieb:
> ●DesIntegrator ●. schrieb:
>> Der Startimpuls könnte über Funk kommen.
>
> Wer Funk kennt nimmt Kabel.

Ich habe gewusst, das dieser blöde Spruch wieder kommt.

Wer sich mit Funk auskennt, weiß wie er mit den Eigenheiten von Funk 
umgehen muss.

Es kommt bei der Zeitnahme doch wohl nicht drauf an, ob die Daten ggf. 1 
Sekunde später auf der Anzeigetafel erscheinen.

: Bearbeitet durch User
von Adam P. (adamap)


Lesenswert?

Bauform B. schrieb:
> Tobias schrieb:
>> Arduino kenne ich von meinem 3D Drucker her. Daher auch gut, da wäre ich
>> schon deutlich tiefer im Thema drin. Aber ist der schnell genug?
>
> Der Controller selbst ist auf jeden Fall schnell genug, garkein Problem.
> Aber mit der typischen Arduino-Programmierung kann man auch so
> programmieren, dass er zu langsam wird, also aufpassen.

Ja ich bin auch nicht so der Freund von Arduino wenn es um genaue Zeiten 
geht. Grad eben mal kleinen Test gemacht und selbst da ist meiner 
Meinung nach schon ein großer drift.

(Und ja mir ist bewusst, dass das mit dem Timer genauer geht, jedoch 
geht es mir hier um die loop() Verarbeitung / Aufruf.)
1
void loop()
2
{
3
    ms = millis();
4
5
    if (t != ms)
6
    {
7
        t = ms;
8
        last_state = !last_state;
9
        digitalWrite(OUT, last_state);
10
    }
11
}

Anstatt den theoretischen 500Hz, sagt mein Oszi: 488Hz.
Hätte ich echt nicht gedacht.

von Rainer W. (rawi)


Lesenswert?

Adam P. schrieb:
> Ja ich bin auch nicht so der Freund von Arduino wenn es um genaue Zeiten
> geht.

Wenn du nicht programmieren kannst, darfst du dafür nicht Arduino die 
Schuld geben.
Die Zeitnahme würde man natürlich der Timer-Hardware überlassen 
(Capture-Funktion) und per Software nur irgendwann das Messergebnis 
auslesen.

: Bearbeitet durch User
von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Tobias schrieb:
> Jetzt ist es so, dass unsere Zeitmessanlage langsam den Geist aufgibt

Typ/Modell des vorhandenen Gerätes würde auch schon weiterhelfen bis es 
die Fotos gibt.

Mi N. schrieb:
> Aufschrauben und Fotos machen!

von Adam P. (adamap)


Lesenswert?

Rainer W. schrieb:
> Wenn du nicht programmieren kannst, darfst du dafür nicht Arduino die
> Schuld geben.

Ja, genau daran wird es liegen.

Rainer W. schrieb:
> Die Zeitnahme würde man natürlich der Timer-Hardware überlassen
> (Capture-Funktion) und per Software nur irgendwann das Messergebnis
> auslesen.

Genau das habe ich doch bereits erwähnt, jedoch ging es mir um etwas 
ganz anderes. Naja, egal.

von Bauform B. (bauformb)


Lesenswert?

Rainer W. schrieb:
> Wenn du nicht programmieren kannst, darfst du dafür nicht Arduino die
> Schuld geben.

Doch. Früher hieß es "wer mit Basic anfängt, lernt nie programmieren"...

von Rainer W. (rawi)


Lesenswert?

Adam P. schrieb:
> Genau das habe ich doch bereits erwähnt, jedoch ging es mir um etwas
> ganz anderes.

Genau das machst du aber nicht. Du lässt den Timer laufen, der per ISR 
mehr oder weniger zügig den Millisekundenzähler hochzählt. Dann fragst 
du in loop() irgendwann diesen Zähler per millis() ab, steuerst dann 
über digitalWrite() einen Ausgangspin und das alles bei unbekannter 
Taktfrequenz deines µC.

Und dann erwartest du, dass ein Oszi mit unbekannter 
Horizontalkalibrierung "500 Hz" anzeigt.

Naja ...

: Bearbeitet durch User
von Adam P. (adamap)


Lesenswert?

Extra für dich Rainer:

ATmega2560 mit 16 MHz.

Ergibt ca. 101,27 kHz:
1
void loop()
2
{
3
    last_state = !last_state;
4
    digitalWrite(OUT, last_state);
5
}

Ergibt 1,6 MHz:
1
int main(void)
2
{
3
    DDRA = 0x01;
4
  
5
    while (1) 
6
    {
7
        PORTA = PORTA ^ (1 << PINA0);
8
    }
9
}

Aber klar, meine Unfähigkeit in der Programmierung macht das System 
direkt mal um das ca. 16-Fache langsamer.
Aber jetzt kommts mir: Wir haben ja FR :-D

von Adam P. (adamap)


Lesenswert?

Es ging mir einfach nur darum, dass die Allgemeine Abarbeitung vom Speed 
her beim Arduino Framework eine Katastrophe ist.
Nicht mehr und nicht weniger.

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Adam P. schrieb:
> Extra für dich Rainer:
>
> ATmega2560 mit 16 MHz.

Mit welcher Genauigkeit - du "Experte"?

> Aber klar, meine Unfähigkeit in der Programmierung macht das System
> direkt mal um das ca. 16-Fache langsamer.

Mit der Funktion digitalWrite() ist der Prozessor etliche Mikrosekunden 
beschäftigt. Natürlich kostet das Zeit und reduziert die Frequenz für 
die Aufrufe von loop(). Guck dir einfach mal den Source-Code von 
digitalWrite() an. Dann siehst du, was da alles rumgetüdelt wird.

Was meinst du wohl, warum es für diejenigen, die es etwas eiliger haben 
und nicht gleich direkt auf die Register zugreifen wollen, 
digitalwritefast() als Alternative gibt.
https://reference.arduino.cc/reference/en/libraries/digitalwritefast/

: Bearbeitet durch User
von Mi N. (msx)


Lesenswert?

Rainer W. schrieb:
>> Wer Funk kennt nimmt Kabel.
>
> Ich habe gewusst, das dieser blöde Spruch wieder kommt.
>
> Wer sich mit Funk auskennt, weiß wie er mit den Eigenheiten von Funk
> umgehen muss.

Dann "unterstellst" Du dem TO, daß er sich mit Funk auskenne.
Ein Kabel läßt sich ganz einfach "durchklingeln" und im Fehlerfall 
ersetzen.
Bei guter Erde reicht ja schon ein einzelner Draht.
Ist die Rennstrecke vielleicht neben einer Kuhweide? ;-)

Da sind die Anforderungen des TO immer noch nicht klar - außer der 
genialen Einsicht, daß man eine "Ziel1 - Start" Zeitdifferenz ermitteln 
muß -, schon wird um Arduino-Kinderkram diskutiert.

Wenn ich bei mir in die Schublade greife, habe ich eine Schaltung mit 
RP2040 Pico-Board mit TCXO, ein angeschlossenes 4,3" TFT mit 
touch-Screen, RS232-Anschluß und jede Menge Ein-/Ausgänge. Das Programm 
dazu wäre eine Fingerübung und die Zeiten auf < 1 ppm genau und 
meinetwegen auf 1 µs aufgelöst. Einzig über die Steckverbinder müßte man 
entscheiden und in welches Gehäuse alles eingebaut werden soll. Für die 
Spannungsversorgung bietet sich ein Powerbank an.
Beim nächsten Regenwetter kann ich ja ein Programm machen ;-)

von Cyblord -. (cyblord)


Lesenswert?

Tobias schrieb:
> Arduino kenne ich von meinem 3D Drucker her. Daher auch gut, da wäre ich
> schon deutlich tiefer im Thema drin. Aber ist der schnell genug? Bzw.
> welcher wäre da zu empfehlen? Da gibt es Ausführungen wie Sand am Meer.

Diese Frage zeigt dass du Arduino NICHT gut kennst und auch nicht tief 
drin bist.
Deine Skills reichen leider in keinster Weise aus um so ein Projekt, 
welches später ja zuverlässig im realen Betrieb funktionieren soll, 
umzusetzen.

von Tobias (cheffeundwackl)


Lesenswert?

> Wenn ich bei mir in die Schublade greife, habe ich eine Schaltung mit
> RP2040 Pico-Board mit TCXO, ein angeschlossenes 4,3" TFT mit
> touch-Screen, RS232-Anschluß und jede Menge Ein-/Ausgänge. Das Programm
> dazu wäre eine Fingerübung und die Zeiten auf < 1 ppm genau und
> meinetwegen auf 1 µs aufgelöst. Einzig über die Steckverbinder müßte man
> entscheiden und in welches Gehäuse alles eingebaut werden soll. Für die
> Spannungsversorgung bietet sich ein Powerbank an.
> Beim nächsten Regenwetter kann ich ja ein Programm machen ;-)

Ehrlich? Es soll ja nicht an ein paar Euro für Deine Unkosten nicht 
scheitern. Ich würde hier das Angebot glatt an nehmen. Es eilt auch 
nicht, da wir 2 Messanlagen haben und eine den Geist aufgegeben hat. D. 
h. über diese Saison kommen wir (hoffentlich) durch. Auf Ende der Saison 
(Oktober) würden wir halt was brauchen, denn da fangen die 
Startvorbereitungen für die neue Saison an.

Im Keller steht bei mir eine CNC Fräsanlage und mehrere 3D Drucker. 
Gehäuse, Stecker das ist alles kein Problem, das bekomme ich hin. Wir 
müssten halt den Prozess (was geschieht wann, was zu welcher Zeit, 
Anschlüsse, Datenübergabe usw.) abstimmen.

Ich schick dir per PN meine eMail, dann können wir uns Ausstauschen. 
Aber erst mal Danke für den Lösungsansatz.

von Steve van de Grens (roehrmond)


Lesenswert?

Tobias schrieb:
> Ich nehme mir ein Arduino, Siemens Logo usw. und
> mach dort eine hochgenaue Atomuhr ran.

Wozu? Kleine Differenzen unter 1 s kann man auch prima mit ganz normalen 
Quarzen messen. Die Systemtimer von Mikrocontroller Anwendungen arbeiten 
typischerweise im 1 ms Raster, aber 0,1 ms geht auch Problemlos.

> Es gibt irgend ein fertigen Controller, der schon eine genaue
> Zeitmessung drauf hat und mir die Zeitstempel liefert.

Zum Beispiel die millis() Funktion von Arduino Boards.

> Arduino kenne ich von meinem 3D Drucker her. Daher auch gut, da wäre ich
> schon deutlich tiefer im Thema drin. Aber ist der schnell genug?

Ganz sicher, egal welches Modell.

> Es soll keine Bastellösung sein, sondern aus Komponenten bestehen, die
> langfristig verfügbar sind.

Dann bestelle dir Reserve-Module und lagere sie selbst ein. Das ist 
billiger, als eine Fachfirma dafür zu bezahlen. Ein Arduino Nano Board 
kostet etwa 2,50 Euro, hat allerdings keinen Quarz.
https://de.aliexpress.com/item/32915861640.html

Das deutsche Crumb328 Board für 13€ wird mit Quarz geliefert und ist 
ebenfalls zur Arduino IDE kompatibel. Zur Verfügbarkeit kannst du den 
Hersteller fragen.
https://www.chip45.com/products/crumb328-2.3_avr_atmega_modul_board_atmega328_usb.php
Da es allerdings nicht mit dem Arduino Bootloader ausgestattet ist, 
brauchst du zusätzlich einen ISP Programmieradapter (dazu kann man einen 
Arduino Uno oder Arduino Nano "missbrauchen"), um dein Programm 
hochladen zu können oder um den Arduino Bootloader einmalig zu 
installieren. Eventuell übernimmt der Hersteller diesen Schritt für dich 
(mit dem kann man gut reden/verhandeln).

Für etwas mehr Geld bekommst du andere Arduino Boards mit Quartz. Such 
dir irgendeins aus, das genug Anschlüsse für die Lichtschranken hat. 
Mehr als 20€ musst man für das Board nicht ausgeben. Es braucht 
natürlich noch Bauteile drumherum:

- Gehäuse
- Schraubklemmen
- Netzteil
- Entstörung der Signale und Überspannungsschutz

Unter dem Namen Controllino gibt es fertige Geräte für den Einbau in 
Verteilerschränke. Wie es dort um die Langzeit-Verfügbarkeit steht, weiß 
ich nicht. Ob deine unbekannten Lichtschranken dazu kompatibel sind, 
weil ich auch nicht.

"Fertig" bezieht sich nur auf die Hardware, programmieren musst du sie 
schon selbst. Wenn du auch nicht selbst programmieren willst, wirst du 
wohl ein Entwicklungsbüro beauftragen müssen. Das wird dann wohl einige 
tausend Euro kosten, was das Geld eingeplant?

: Bearbeitet durch User
von Rainer W. (rawi)


Lesenswert?

Steve van de Grens schrieb:
> Da es allerdings nicht mit dem Arduino Bootloader ausgestattet ist,
> brauchst du zusätzlich einen ISP Programmieradapter (dazu kann man einen
> Arduino Uno oder Arduino Nano "missbrauchen")

Wieso "missbrauchen"?
Meinst du auf einem ISP Programmieradapter ist etwas anderes als ein 
passend programmierter Mikrocontroller drauf?

von Stefan F. (Gast)


Lesenswert?

Rainer W. schrieb:
> Wieso "missbrauchen"?

Weil sie nicht für diesen Zweck verkauft werden. Sonst wären sie ab Werk 
mit der entsprechenden Firmware ausgestattet und hätten einen passend 
belegten 6-Pin Stecker, wie jeder handelsübliche ISP Programmieradapter.

von J. S. (engineer) Benutzerseite


Lesenswert?

Das einfachste sind die Transponder-Chips wie wir sie beim Triathlon und 
der Leichtathletik verwenden. Mit einigen, kurz hintereinander 
aufgebauten Stationen, u.B. einige Meter um die Zielgerade herum, hat 
man nicht nur Redundanz, sondern auch eine präzise Messung mit z.B. 3 
Messpunkten, die das Ganze nicht mehr richtungs- und 
geschwindigkeitsanfällig machen (Stichwort Beschleunigung des Verhikels 
am Messpunkt, Oberkörperbewegung gegen Schwerpunkt, schräg sich 
bewegendes Objekt).

Auch bei Cross- und Mountainbikerennen wird das erfolgreich genutzt.

von Frank S. (steini63)


Lesenswert?

Interessantes Projekt!

Wenn doch ein PC benötigt wird um die Auswertung per Excel (VBA) zu 
machen, warum macht der PC nicht gleich die Zeitmessung? Die aktuellen 
Timer in Windows haben die benötigte Auflösung, das Programm könnte 
"Echtzeit-Priorität" erhalten. Vielleicht können sogar die alten 
Schalter/Kabel/Lichtschranken weitergenutzt werden.

Die spannende Frage ist, über welche Schnittstelle die Impulse in den PC 
kommen. Programmtechnisch am einfachsten sind normale TTL-USB-Seriell 
Adapter zu verwenden (und sehr preiswert sind sie außerdem). Dazu wollte 
ich recherchieren, mit welcher Latenz die Dinger auf Pegeländerungen der 
Statusleitungen reagieren. Weil dazu nichts erhellendes zu finden war, 
habe ich selber gemessen.

Versuchsaufbau/Testsoftware:
Im Testprogramm wird RTS des nativen Comports getoggelt. RTS ist mit CTS 
eines USB-Adapters verbunden. Sofort nach dem Setzen von RTS wird ein 
Timer gestartet. Dieser misst die Zeit, bis das Testprogramm die 
Pegeländerung an CTS erkennt. Der Maximalwert aus 10000 Messungen wird 
gespeichert/angezeigt. Alle Adapter arbeiten im normalen VCP-Modus wie 
sie aus der Tüte kommen; BS ist Windows 11.
1
Ergebnisse:
2
FTDI FT232R  (China Clone) = 0,145 mS
3
FTDI FT232BL (China Clone) = 0,149 mS
4
Prolific PL-2303 (China Clone mit Treiber 3.3.2.105 von 2008) = 1,026 mS
5
WCH CH340 = 4,317 mS
6
Silabs CP2102 = 90,106 mS
7
8
Ergebnisse am USB-Hub:
9
FTDI FT232R  (China Clone) = 0,606 mS
10
FTDI FT232BL (China Clone) = 0,668 mS
11
12
Zum Vergleich COM1 interne Messung = 0,021 mS


Zum eigentlichen Thema:
Selbst der CH340 erzeugt lediglich eine Verzögerung vom maximal 0,43 
hundertstel Sekunden, die FTDI Clones halte ich mit 0,015 hundertstel 
für gut geeignet. Jetzt müssen die Elektronik-Experten nur noch 
vorschlagen, wie ein Schalter mit 300m Kabel und Lichtschranken 
störungsfrei mit den vier möglichen Eingängen verbunden werden können. 
Programmierung wäre nur am PC erforderlich.

Frank

von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Es ist immer noch unbekannt Typ und Modell der defekten Zeitmessanlage.

Vielleicht kann diese doch wieder instandgesetzt werden oder davon Teile 
weiter verwendet werden.

Wenn nicht mit zertifizierten Zeitnehmeranlagen gemessen wird, kann das 
auch schnell in einem Streit mit den Teilnehmern enden und im worst case 
fliegen vielleicht sogar die Messer.

Wahrscheinlicher ist aber jemand stürzt über (oder rast in die) 
Verkabelungen des Selbstbaus. Dann steckst Du und der Verein in der 
Haftungsfalle.

von Mi N. (msx)


Lesenswert?

Dieter D. schrieb:
> Wenn nicht mit zertifizierten Zeitnehmeranlagen gemessen wird, kann das
> auch schnell in einem Streit mit den Teilnehmern enden und im worst case
> fliegen vielleicht sogar die Messer.
>
> Wahrscheinlicher ist aber jemand stürzt über (oder rast in die)
> Verkabelungen des Selbstbaus. Dann steckst Du und der Verein in der
> Haftungsfalle.

Kleiner Tipp: heute ist 1. Mai. Der 1. April ist einen Monat her!

von Dieter D. (Firma: Hobbytheoretiker) (dieter_1234)


Lesenswert?

Mi N. schrieb:
> Kleiner Tipp: heute ist 1. Mai. Der 1. April ist einen Monat her!

Heute ist der 1. Mai 2023. Es besteht nicht mehr die rechtliche Lage vom 
1. April 1989 und 2017.

von Tobias (cheffeundwackl)


Lesenswert?

Hallo Leute. Erst mal Danke für den vielen Input. Ich habe meine Lösung 
gefunden.

Ich werde eine Siemens LOGO einsetzen. Die hat schon eine Stoppuhr 
Funktion von 1/100tel und eine Excelschnittstelle. Das werde ich dann 
auch hin bekommen. Der Grund ist einfach: Die Logo gibt es seit 25 
Jahren. Die wird es aller Vorraussicht auch noch in 25 Jahre geben, oder 
kómpatible Modelle. In 25 Jahren werde ich aber nicht mehr im Verein 
sein, da muss es ein anderer hinbekommen.

Die Lösungen hier, da muss einer schon tiefer in der Materie drin sein, 
damit er evtl. Defekte erkennen und tauschen kann. Ist zwar um einiges 
teuerer als die hier aufgezeigten Lösungen, aber lange nicht so teuer 
wie eine gekaufte Zeitmessanlage. Charme an der Logo Lösung ist der 
integrierte Webserver. Damit kann ich Zwischenzeiten, Infos usw. auf 
Monitore bringen, was dann für den Zuschauer interessanter wird.

Ich bin hier Ergebnisoffen an das Thema ran gegangen. Keine Lösung war 
von vorn herein gesetzt oder bevorzugt.

Ich möchte mich vor allem bei den Leuten bedanken, die sich angeboten 
haben mir hier zu helfen.

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.