Mir ist heute spontan etwas eingefallen, und zwar würde ich gerne einen Rundenzähler für eine etwas größere Rennstrecke bauen.
Dabei handelt es sich um den Maßstab 1:10. Außerdem beträgt die Fahrbahnbreite ungefähr 80cm.
Anfangs dachte ich, ist ja gar nicht so schwer, Lichtschranke und dazu noch ein schönes Display.
Allerdings war ich da wohl nicht ganz beim Thema. Denn es fahren ja mehrere Autos von denen ich gerne einzeln deren Rundenzahl wissen möchte....logisch.
Allerdings entsteht dabei ein Problem.
Wie erkenne ich, welches Auto die Ziel Linie durchquert !?
Anfangs dachte ich, ich löse das mit RFID. Allerdings ist dort wahrscheinlich die geringe lesegeschwindigtkeit das Problem und das ich die Antenne über 80 cm verteilen müsste.
Gäbe auch die Möglich, in der Fahrbahndecke bei Start und Ziel Lichtsensoren einzubauen. Wenn die Reifen/Autos über den Sensor fahren, ändert sich dieser Wert.
Wenn auch Nachts gefahren wird, könnte es ein Problem geben. Evtl. Start und Zielgerade Nachts mit LEDS von oben bestrahlen
lgrube96:
Wie erkenne ich, welches Auto die Ziel Linie durchquert !?
Du klebst einen Reedkontakt pro Slot in Höhe der Ziellinie unter die Slotcar-Bahn und jeder Rennwagen bekommt einen kleinen Supermagneten unter den Unterboden.
Das Schließen der Reedkontakte beim Überfahren der Kontakte wertest Du mit einem Arduino-Sketch aus.
Im Prinzip funktioniert das berührungslos wie beim Fahrradtacho mit Speichenmagnet. Nur dass der Magnet unter einem Plastikauto befestigt ist und nicht an einem Fahrrad-Laufrad. Und dann bekommst Du pro gefahrener Runde einen Impuls, genau so wie der Fahrradtacho pro Radumdrehung einen Impuls bekommt.
lgrube96:
Durch eure Vorschläge kann ich ja nur erkennen ob EIN Auto über die Linie fährt aber nicht WELCHES !?
Oder verstehe ich eure Vorschläge falsch ?
Ist das eine Freifahrbahn auf der jedes Auto im Prinzip überall auf der Bahn fahren kann?
Mein Vorschlag bezieht sich auf Slotcar-Bahnen vom Typ "Carrera-Bahn", bei der jedes Auto in seiner eigenen Spur fährt. Und natürlich muß je ein Reedkontakt unter jede der Spuren.
Danke für den Hinweis.
Allerdings wird das wahrscheinlich später etwas kompliziert. So viel habe ich da eh noch nicht verstanden, müsste man sich auch sehr reinsteigern
Ich hatte mal vor vielen Jahren einen Rundenzähler mit diskreten Bauteilen gebaut. Dazu habe ich die Schiene jeder Spur leicht angeboht und von unten ein LDR eingebaut, der von oben mit einem Birnchen gespeist wurde. Der LDR saß also unten in der Führungsschiene. Hat an sich gut funktioniert.
Ich hatte mal Brieftauben,
da werden Transponder im Ring am Fuß eingesetzt, die sind ungefähr 1cm lang und haben den
Durchmesser von einem Streichholz.
Hiermit laufen die Tauben über eine Antenne und werden registriert.
Solche könnte man ins oder unter das Auto kleben. Aber ob das der Arduino hergibt mit dem erfassen?
gruß
Oder vielleicht der gleiche eine andere Idee? Ich hätte da noch eine auf Lager:
Deine Autos werden ja mit Strom versorgt, also kannst Du auch eine elektrische Schaltung in die Autos einbauen. Stell Dir vor, Du baust in ein Auto eine LED ein, die mit sagen wir 30 kHz blinkt. In ein zweites Auto baust Du eine LED ein, die mit z.B. 35 kHz blinkt. Usf.
Die Blinker zeigen zur Fahrbahn hin. In die Fahrbahn baust Du Fototransistoren ein, die das Blinken aufnehmen. Dieses Signal wertest Du aus, und schon weißt Du, welches Auto gerade die Ziellinie überfahren hat.
Auch noch kompliziert, aber ich fürchte, wenn Du die Autos erkennen willst, wird es sich nicht mehr viel simpler machen lassen.
Fällt mir gerade doch noch was ein: Bau doch in jedes Auto einen Sender und einen Fototransistor und in die Fahrbahn die LEDs. Das Auto merkt anhand des Fototransistors wenn es die Ziellinie passiert und sendet zum Arduino "Auto 1 passiert Ziellinie". Das nächst Auto sendet "Auto 2 passiert Ziellinie" usf. Der Sender könnte IMHO sogar eine UV-Diode sein, die meinetwegen im RC5-Code Daten sendet und empfangen könntest Du das mit einem oder mehreren TSOP 173x. Ein Auto könnte mit 30 kHz senden, das nächste mit 33 kHz, das nächste mit 36 kHz usw. Dann würden sich die Autos noch nicht mal gegenseitig stören.
Das dürfte dann in etwas auf die käufliche Lösung hinauslaufen: dort muss auch jedes Auto mit einem einmaligen Transponder ausgerüstet sein.
Nur so funktionierts...
Passiv: Ein Barcode unten am Auto - damit die Überfahrgeschwindigkeit variieren kann sind z. B. die weißen Abschnitte immer gleich breit, in der Breite der schwarzen Linen kodierst du die Fahrzeugnummer. Auf deiner Ziellinie hast du einige Photodioden nebeneinander, so dass es egal ist an welcher Stelle des Auto drüber fährt. Vorteil: Einfache Umsetzung an den Fahrzeugen, billig. Nachteil: Aufwändige Software, automatische Anpassung an Lichtverhältnisse notwendig, evtl. verhältnismäßig aufwendige Anlogschaltung.
Aktiv: Jedes Auto erkennt die Zielline selbst mit Photodiode/transistor etc. an der Unterseite und sendet dann mit einem RF Sender (z. B. 433 MHz, gibts sehr klein und billig beim Chinamann) seine Nummer an den Empfänger. Vorteil: Einfachere Software, (wahrscheinlich) zuverlässiger als (1). Nachteil: Jedes Fahrzeug bracht einen µC (z.B. ATTiny84 oder Atmega168/328) der beschalten, programmiert und mit Strom versorgt werden will.
Schachmann:
...
Fällt mir gerade doch noch was ein: Bau doch in jedes Auto einen Sender und einen Fototransistor und in die Fahrbahn die LEDs. Das Auto merkt anhand des Fototransistors wenn es die Ziellinie passiert und sendet zum Arduino "Auto 1 passiert Ziellinie". Das nächst Auto sendet "Auto 2 passiert Ziellinie" usf. Der Sender könnte IMHO sogar eine UV-Diode sein, die meinetwegen im RC5-Code Daten sendet und empfangen könntest Du das mit einem oder mehreren TSOP 173x. Ein Auto könnte mit 30 kHz senden, das nächste mit 33 kHz, das nächste mit 36 kHz usw. Dann würden sich die Autos noch nicht mal gegenseitig stören.
...
Hallo,
das gefällt mir gut, allerdings nicht mit UV LED sondern mit klassischen Infrarot LEDs. Also Pro Auto eine IR LED die auf einer genau festgelegten Frequenz "sendet". Als Sender reicht vermulich was ganz einfaches, eventuell geht es sogar mit einem NE555 der die LED mit soundso viel kHz "blinken" läßt.
Spezielle Codes sind eigentlich nicht erforderlich, ich hätte Angst daß das z.B. RC5 viel zu langsam ist. (Letztendlich möchte man ja auch halbwegs genaue Rundenzeiten ermitteln, auch wenn gerade 2 oder mehrere Autos gleichzeitig über die Linie fahren)
In der Fahrbahn werden über die ganze Breite eine Anzahl Fototransostoren eingebaut, so daß eine schmale Zeile entsteht (so ähnlich wie die LED Strips für Beleuchtung, nur halt mit parallel geschalteten Transistoren) . Über den Fototransistoren noch eine Abdeckung die nur IR durchlässig ist aber sichtbares Licht blockt. Oder man nimmt gleich Empfänger mit eingebauten Filter, die sind dann in der Regel dunkel gefärbt.
Das Summensignal wird dann an Frequenzdetektoren geführt, der Baustein NE567 oder LN567 (je eine eigene Stufe pro Auto bzw. Frequenz) wäre die klassische, problemlose Lösung auch wenn es viele Bauteile werden. Die Auswertung rein per Software wird schwierig und erfordert trotzdem eine analoge Aufbereitung. Oder gleich einen schnellen AD Wandler und FFT - aber das ist dann meiner Meinung weniger für den Arduino sondern für einen DSP - bei dementsprechendem Programmieraufwand...
Warum nicht einen Barcode oben auf die Autos und dann einen normalen Barcodeleser über der Bahn befestigen? Den Leser kannst Du dann mit dem Arduino oder direkt mit einem Laptop auswerten.
Ansonsten fällt mir nur noch opencv ein. Das wird dann aber ziemlich aufwändig.
Also die Idee mit den Fototransitoren und einer modulierten Infrarot LED ist ja gar keine schlechte Idee !
Allerdings benötigt man bei einer Spurbreite von ca. 80cm eine ganze Menge von den Dingern, geht dann wohl auch ordentlich ins Geld.
Der 2. Vorschlag von Schachmann mit dem RF Sender hört sich recht gut an. denke mal, dass das auch am zuverlässigsten ist.
Eigentlich wollte ich so wenig wie möglich in die Autos einbauen. weil jeder sollte da mit seinem eigenen Auto fahren, aber anscheinend wird das wohl anders auch nicht gehen.
Deine Ideen, Udo, sind wirklich gut. Bei dem Barcode ergibt sich aber das Problem, dass der Leseapparat ja nicht über die ganze Spur die Codes lesen kann.
Mit opencv habe ich bisher noch absolut nicht mit gearbeitet. Vor allem wird das wohl auch die teurste und aufwändigste Variante.
Also erstmal vielen Dank für die vielen Anregungen.
Denkbar wäre es auch nur über die Farbe des Autos diese zu erkennen (falls die Autos verschiedene Farben haben) oder einen Aufkleber auf der Unterseite
Zum IR Code: Einfach an beide Seiten senden und dort verschiedenfrequente TSOPs montieren. Das ist aber Fehlerträchtig falls 2 Autos nebeneinander durchs Ziel fahren. Oder mehrere TSOP pro Frequenz über dem Ziel montieren.
Das am wenigste aufwendige am Auto sind Barcode oder Farbcode. Alle anderen aktiven Sensoren brauchen einen mehr oder weniger großen Eingriff ins Auto.
War nicht letztens auch mit dem TSOP ein Thema, dass die Dauer-Beleuchtung (auch mit der korrekten Frequenz) herausfiltern? Laut Datenblatt muss da nach maximal 70 Pulsen eine Pause kommen.