PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RC-Car Zeitmessung



Bluesmash
10.09.2008, 23:33
Hallo Zusammen

Heute habe ich mit einem Kollegen folgende Idee diskutiert, und möchte nun mit euch über die Machbarkeit diskutieren:

Er ist aktiver RC-Car Fahrer und hat eine eigene Offroad Strecke. Nun möchten wir eine Zeitmessung Installieren für max. 10 RC-Cars. Es gibt dafür natürlich fertige Lösungen, nur liegen die weit über dem bezahlbaren... diese Systeme arbeiten mit aktiven Transpondern und einer Induktionsschleife unter der Ziellinie... wir möchten gerne ein ähnliches System aufbauen.


Folgendes habe ich mir gedacht:

Für jedes Car ein Transponder, mit ner kleine Platine. auf dieser befindet sich eine Leiterbahnspule als "Primärspule/Sendeantenne" und nem kleinen avr als Frequenzgenerator. jeder der 10 Transponder erhält eine eigene Frequenz.

unter der Ziellinie wird eine Induktionsschleife verlegt, welche die Signale der Transponder "empfängt". dieses Signal wird dann Verstärkt. für jede Frequenz dann einen Bandpassfilter um die Signale zu unterscheiden. jeder Filter dann eventuell über nen Schmidttrigger und in den Avr welcher dann die Zeiten misst.

Nun zu den Fragen:
1. Stelle ich mir das zu einfach vor oder währe dies machbar?
2. Welcher Frequenzbereich würde sich dafür am besten eignen?
3. Ist es möglich die Frequenzunterscheidung auch im AVR zu machen ohne für jede Frequenz einen Filter aufzubauen?

Gruss Bluesmash

shaun
11.09.2008, 13:43
Unpraktikabel würde ich es nennen. Sende- und Empfangsspulen sind in aller Regel Teile von Schwingkreisen, um eine gute Sende- und Empfangsleistung und eine vernünftige Selektivität zu erreichen. Deine Frequenzen müssten, um sie mit vetretbarem Aufwand unterscheiden zu können, weit auseinander liegen, so dass Du auf einen Breitbandempfänger angewiesen wärest. Der empfängt naturgemäß aber auch mehr Störungen.
Handlesübliche Transpondersysteme arbeiten in einem engen Frequenzbereich und übertragen ihre Nutzdaten als seriellen Datenstrom.

Bluesmash
11.09.2008, 14:42
Hmm ok, sowas dachte ich mir...

Also müsten alle die gleiche Trägerfrequenz haben und die daten werden Aufmoduliert. wie kann ich dann aber die Daten voneinader trennen wenn jetzt im extremfall alle 10 Cars auf der Schleife stehen und gleichzeit Ihre Daten senden? da kommt doch sicher nichts brauchbahres mehr raus oder wie wird das denn gemacht?

gruss Bluesmash

radbruch
11.09.2008, 15:37
Hallo

Ein Ansatz für Mini-Z-Cars auf Infrarot und tiny13-Basis in Bascom. Ich weiß aber nicht, ob das jemals funktionierte:

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=36253

Die tiny13 in den Fahrzeugen senden per IR eine (RC5-)Kennung an einen stationären PC. Dieser berechnet dann die Rundenzeiten.

Gruß

mic

Bluesmash
11.09.2008, 16:37
Ich denke ich werde sowiso auf IR umsteigen, ohne richtige HF-Ausbildung und Funktlizenz kann und darf ich wohl sowiso nicht eifach ein Funksystem aufbauen...

RC5 währe aber zu langsam für eine erkennung der Fahrzeuge.
kleines Rechenbeispiel:
Die Fahrzeuge fahren bis ca. 80km/h plus Reserve rechne ich mit 100km/h
Das macht 27.7m/s und wenn die erfassungslänge bei Zieldurchfahrt ca.0.5m breit ist bleiben da noch ca.18ms zeit für die Erfassung der Fahrzeuge.
Der RC5 Code benötigt laut Wiki ca.25ms für einen Befehl. Da ist das Fahrzeug schon längstens ausser Reichweite bis der ganze Code 1mal gesendet ist.

Ich denke da müsste man auf eine Befehlslänge von ca. 1-2ms kommen.
Währe dies mit einem 36kHz TSOP machbar? Im Datenblatt steht er braucht 6/fo Zeit um sauber ein Low/High zu erkennen, das währen bei 36kHz ca.0.2ms, bei 8bit (2 Startbit, 6 Datenbit) währen dies ca. 1,6ms. Ist dies richtig oder mache ich einen Fehler?

Mein derzeit gröstes Problem in meinen Gedankengängen ist, wie kann ich die Signale sauber voneinander unterscheiden wenn jetzt mehrere Fahrzeuge gleichzeitig über die Ziellinie fahren?? oder hofft man einfach darauf das nie mehrere Fahrzeuge gleichzeitig senden?

gruss Bluesmash

radbruch
11.09.2008, 16:49
Beim RC5 werden ca. 14 Datenbits versendet, ein eigener Code könnte mit weniger auskommen. Die IR-Diode sendet ein keulenförmiges Signal so dass je nach Abstand ein längerer Kontakt mit dem Empfänger zustande kommt. Messpunkt der Zeitmessung wäre z. B. das erste oder letzte Bit. Das bringt aber wohl alles nichts denn die Überlagerung der Signale der asyncron sendenden Fahrzeuge wird auch bei IR ein großes Problem sein.

Besserwessi
11.09.2008, 18:46
Wenn die Ziellinie länger ist, wird man da ohnehin mehrere Empfänger brauchen, die man dann jeweils einzeln auswertet. Wenn jeder empfänger nur etwa 1 m auswertet, dann reduziert sich die Gefahr mehr als 1 oder 2 fahrzeuge gleichzeitig zu sehen schon mal deutlich. Man könnte eventuell auch bei IR mit verschiedenen Frequenzen arbeiten. Die Erkennung der Frequenzen könnte man auch digital im Controller machen. Dafür gibt es relativ effektive Algorithmen um die Amplitude bei einigen wenigen Frequezen zu bestimmen. Bei Offroad könnte IR aber ein Problem mit Schmutz haben.

Bluesmash
12.09.2008, 08:58
Das mit den mehreren empfängern ist auch gut! Ich denke ich werde einfach mal ein paar Versuche machen... Ich denke ich werde mal die Variante welche auch beim Asuro verwendet wird ausprobieren. UART getaktet mit 38kHz und so nen TSOP als Empfänger. Mit 9600Baud benötigt ein Byte ca. 1ms und ein Byte müsste eigentlich reichen...

ich denke man müste die verschiedenen Sender jeweils mit anderen Wartezeiten (2-3ms) zwischen dem senden austatten damit sie besser erkannt werden wenn sie gleichzeitig durchs Ziel fahren... oder währe es besser eine zufällige Wartezeit zu generieren?

gruss Bluesmash

wkrug
12.09.2008, 12:24
Eventuell wäre es sinnvoll, wenn jedes Fahrzeug eine eigene Schaltung erhält, die feststellt wann die Ziellinie überfahren wurde ( Induktionsschleife ? )
Dann wird im Fahrzeug ein Sender eingeschaltet, der den Code des Fahrzeugs auf einen stationären Empfänger übermittelt.
Bei 10 Fahrzeugen bräuchtest Du also 10 Sender im Fahrzeug + 10 Empfänger an einer Basisstation + eine Elektronik die die Signale der 10 Empfänger auswertet.
Jede Sender / Empfängerkombination arbeitet dabei auf einer anderen Frequenz.
Das mit der HF sollte auch kein unüberwindbares Problem sein, wenn man fertige HF Module einsetzt.
Schau mal bei Pollin nach den Funkmodulen RFM01, RFM02 und RFM12.
Die sind günstig und vielseitig.

Bluesmash
12.09.2008, 13:28
Dies währe auch eine gute Idee, Induktionsschleife wie bei den rasenmäherbots, die zeitmessung könnte dann auch gleich auf dem Car-sender gemacht werden und dann einfach bei überfahren der Zillinie die Zeit übermitteln. Aber leider ist dies relativ aufwändig... und die Platine für das Car wird auch "relativ" gross.
Bis jetzt gefällt mir die IR-Version am besten. Das ist auch etwas wo ich ein bisschen Erfahrung habe und ist auch eine sehr günstige Variante. Pro Car nur ein Tiny+Diode, diese kleine Platine könnte man dann für das Rennen z.B. mit doppelseitigem Klebeband oder solche Tesa-strips einfach auf das Dach kleben...

Hat jemand eine Idee wie man die Kommunikation über IR schneller hinbekommt als die oben erwähnte Variante?

Hier gibt es sogar ein solches System zu kaufen:
http://motec-shop.de/product_info.php/products_id/104973

gruss Bluesmash

jeffrey
12.09.2008, 14:00
hoi,
wie sieht´s denn aus mit rfid? oider ist das auch zu langsam?
mfg jeffey

Bluesmash
12.09.2008, 14:04
Das ist zu langsam, und vorallem wen mehrere rfid tags auf dem Empfänger sind kann mansie nicht mehr auseinaderhalten da alle dauernd senden...

gruss bluesmash

wkrug
12.09.2008, 19:28
Dies währe auch eine gute Idee, Induktionsschleife wie bei den rasenmäherbots, die zeitmessung könnte dann auch gleich auf dem Car-sender gemacht werden
Die Zeitmessung würde ich nicht im RC Car selber machen.
Wie willst Du dann feststellen welches Car als erstes die Ziellinie überfahren hat ?
Ausserdem wird das, wie Du schon schreibst, sehr aufwändig.
Wir basteln zur Zeit an einer Funktelemetrie, die mit einem ATMEGA 8 und mehreren Sensoren bestückt ist.
Wenn Du die Sensoren durch einen Empfänger für die Induktionsschleife ersetzt und das Übertragene Protokoll austauscht kannst Du den Sender größtenteils übernehmen.
Beim Empfänger wird sich schon mehr ändern, da unser Modell über USB komuniziert.

Guck mal unter:
http://www.toeging.lednet.de/flieger/profi/telemetrie/telemetrie.htm

Bluesmash
14.09.2008, 03:49
@wkrug: danke für das angebot, aber momentan bleibe ich mal bei IR.

@all:
Ich habe jetzt mal ein paar versuche gemacht. mit einem 38kHz TSOP kann ich nun mit 2400Baud daten übertragen, mehr liegt aber leider nicht drin... und das ist definitiv zu langsam... :(

nun habe ich die transceiver Module von vishay entdeckt welche bis 115200Baud erreichen:

http://www.vishay.com/ir-transceivers/

weiss jemand wo man diese TFDU/TFBS-Module erhält?

ich habe sie bis jetzt nur bei Conrad gesehen und da kosten sie ein Vermögen :( vorallem wenn man ca. 10stk benötigt....
zum testen habe ich mir jetzt mal eins aus einem alten palm ausgelötet, funktioniert soweit am oskar, ich muss dazu nur noch ein protokoll programmieren und dann sollte es damit machbar sein...

gruss Bluesmash

wkrug
14.09.2008, 09:29
Ich hab die Dinger bei farnell www.farnellinone.de , sowie bei Digikey http://dkc1.digikey.com entdeckt, weiter hab ich noch nicht gesucht.
Die Preisgestaltung sieht da allerdings ein wenig anders aus ;-)

Hab da auch irgendwas von einer Reichweite um 1m gelesen - ob das reicht ?

Bluesmash
14.09.2008, 12:27
Hey Danke!
An Farnell habe ich gar nicht gedacht, da kriegt man die Teile auch zu einem günstigen Preis... bei digikey müsste ich gleich ca. 1000st. nehmen das währe ein bisschen viel ;)
ja 1m reicht, höher soll der empfänger gar nicht aufgehängt werden.

gruss Bluesmash

wkrug
14.09.2008, 19:49
Farnell liefert aber nur an Firmen und eventuell an Studenten.
Ich Denk aber mal, das Du da dir richtigen Leute schon kennen wirst...

Bluesmash
14.09.2008, 22:34
ich habe mich da mal angemeldet da konnte iach baer auch privat/bastler auswählen... naja mal schauen wenn ich dann mal bestelle...

gruss bluesmash