Bremslicht fürs Fahrrad

  • Heyho Community,
    nach längerem zeitbedingten Stop aller Experimente, habe ich jetzt durch eine Krankschreibung mal wieder Zeit, etwas nachzudenken.
    Folgendes Projekt: ich möchte vorm Frühling mein Fahrrad mit einem Bremslicht ausstatten.
    Beim Verzögern, sei es durch die Betätigung einer Bremse, oder die Verminderung der Geschwindigkeit, soll ein zusätzliches Rücklicht (vorraussichtlich bestehend aus zwei Streifen Superflux oder 2 HighPower in Rot) angeschaltet werden, bis der Normalzustand wieder erreicht wird.
    Am einfachsten wäre die mechanische Lösung: ein Schalter an der Hinterradbremse, aber ich habe absolut keine Idee, was man da halbwegs langlebig hinzimmern könnte.


    Als grobes Vorbild dient mir das "DIWA" -System von Busch und Müller; dabei wird durch einen Microcontroller die Geschwindigkeit des Fahrrads gemessen, verarbeitet und an das Standard-Rücklicht weitergegeben.


    Meine Frage an Euch, hat jemand eine Idee, wie man die Software gestalten könnte?
    Ich dachte an die Nutzung des vorhandenen Magnet-Sensors von einem Fahrradcomputer (kabelgebunden). Allerdings habe ich bisher nur Erfahrungen mit dem ADC in Verbindung mit der Messung einer Spannung. Hier müsste ich aber eine Frequenz (an, aus, an, aus) messen, wie macht man das?


    Vielen Dank für Eure Hilfe! ;)

  • Das einfachste wäre wohl ein Bremslichtschalter wie beim Motorrad. Allerdings wirds wohl schwer, das ans Fahrrad zu basteln, bzw. sähe das wohl blöd aus (angenommen man übernimmt den ganzen Bremshebel, was dann ja auch nur bei hydraulischen Scheibenbremsen am Fahrrad geht).


    Zur Frequenzmessung nimmst du idealerweise die Interrupte, da gibt's im Netz genug Beispiele dazu.


    Die Highendlösung wäre aber wohl ein kleiner Bewegungs- bzw. Beschleunigungssensor wie sie in modernen Handys verbaut sind. Hier einfach bei negativer Beschleunigung entlang der x-Achse ab einem bestimmten Schwellwert das Lämpel lämpeln lassen...

  • Ja das mit der Frequenz könntest ja auch quasi über die Spannung errechnen..Messen wie oft in einer bestimmten zeit der Pegel durch das schalten des magnetkontakts auf high schaltet und dann daraus die frequenz errechnen ??


    Weiß nicht ob es in der Praxis so machbar ist aber finde es klingt zumindest mal logisch xD

  • Ja das mit der Frequenz könntest ja auch quasi über die Spannung errechnen..Messen wie oft in einer bestimmten zeit der Pegel durch das schalten des magnetkontakts auf high schaltet und dann daraus die frequenz errechnen ??


    Weiß nicht ob es in der Praxis so machbar ist aber finde es klingt zumindest mal logisch xD


    Naja, dass du nur Stuss von dir gibst weißt du ja selber.


    Klar wird bei einer Frequenz die Anzahl der Flanken gezählt, was auch sonst? Genau das zeichnet ja eine "Frequenz" aus. Den periodischen Wechsel zwischen 2 Zuständen, wie auch immer das zwischendrin aussieht.

  • ach ne...un warum ists dann stuss..... er wollte wissn wie die messen kann un ich hab gesagt mit dem magnet schalter und messungen über die zeit!! Dacht ja nur weil er gesagt hat er kennt sich mim ADC nur mit dem messen von spannungen aus....sollte ja nur ein kleiner anspron sein das das mit der frequenz nicht viel anderst ist -.-

  • Interrupts sind das Stichwort, das ich gesucht habe, werde mich da jetzt mal einlesen, vielen Dank!


    Für die rein mechanische Lösung habe ich grade diesen sehr versteckten Artikel in der "Bike" entdeckt; darin heißt es

    Zitat

    „Ich habe einen alten Fahrradtacho zerlegt. Den Nehmer für die Geschwindigkeit habe ich als Magnetschalter genommen und am Lenker befestigt. Bei den SRAM X.O Shiftern ging das mit doppelseitiugem Klebeband optimal.“

    „Einen starken Magneten habe ich mit Heißkleber am unteren Teil des Bremsgriffs festgeklebt.“


    "Und so funktionierts:
    Wenn der Bremsgriff betätigt wird, nähert sich der Magnet dem Magnetschalter aus dem alten Tacho. Der Schalter schlißt den Stromkreis und die LED beginnt zu leuchten. Wenn der Bremsgriff los gelassen wird, entfernt sich der Magnet vom Schalter und der STromkreis ist unterbrochen. Die LED erlischt."

    Das funktioniert also nach dem Reed-Prinzip, was meint ihr, würde es reichen, so einen Reed-Kontakt in den U-Förmigen Bremshebel einzukleben und einen kleinen Magneten am Lenker zu befestigen? Habe nur keine Idee, wie ich dabei die Schaltschwelle einstellen könnte, wenn das aber ginge, wäre das evtl. sogar ohne einen Microcontroller nutzbar und die absolute Low-end-Lösung :rolleyes:

  • Ja das mit der Frequenz könntest ja auch quasi über die Spannung errechnen..Messen wie oft in einer bestimmten zeit der Pegel durch das schalten des magnetkontakts auf high schaltet

    OMG das mit der Spannung war auf das Messen eines High-Pegels bezogen -.- dann berechnet man im endefekt das ganze auch über die Spannung oder nicht ? Wie oft geht die SPANNUNG auf high....naja mir auch egal....



    Dein toller vorschlag " zur frequenzmessung nimmt man interrupte da gibts genug beispiele im netzt " ist Ja auch so ÜBERAUS hilfreich ne......



    Weil man ja einfach nur mit einem INTERRUPT ne frequenz messen kann .... da setzt man nen COntroller aufs fahrrad schaltet den Interrupt ein und der misst dann grad mal so die frequenz....aber wichtig ist davor noch sich ein beispiel ausm netzt aufn controller zu packen -.-



    Vielleicht solltest ja sowas wie mit dem Interrupt auch mal etwas genauer beschreiben weil so einfach beispiel ausm netzt suchn und frequenz messen is da jawohl auch nich...

  • Gerd
    ja es handelt sich bei meinem Lichtsystem um eines mit Nabendynamo. Neben einem herkömmlichen LED-Lichtsystem ist auch noch ein selbstbau Tagfahrlicht (am Lenker) verbaut. Geplant ist über den Schaltkontakt zwischen Tagfahrlicht und Bremslicht umzuschalten (per µC oder über eine einfache Transistorschaltung, mal sehen. Wenn ich schon eine 5V-Schiene aufbauen müsste, würde ich diese auch gleichzeitig zum Laden von elektronischen Geräten über USB vorbereiten ;) )


    Edit: Denkbar wäre da sogar noch eine Alarmanlagen-Attrape die durch den Microcontroller bedient wird.

  • Ist doch perfekt!


    Da brauchst du nichtmal einen Reedkontakt etc.
    Die Frequenz vom Nabendynamo ist proportional zur gefahrenen Geschwindigkeit. Vor den uC muss man nur eine Schaltung für die Pegelanpassung vorsehen.
    Den Rest macht dann die Software, also Geschwindikeitsverlust pro Zeitraster erkennen und den Ausgang schalten.


    Gruß Gerd

  • Da hat sich das Forum ja mal wieder ein tolles Mitglied eingefangen.
    @ Novex
    Jeder der schon mal was mit nem Mikrocontroller gemacht hat weis was ein Interrupt ist und vor allem weis er auch das es totaler Blödsinn ist nen High-Pegel mit dem ADC zu erfassen.


    Und die Idee mit dem Interrupt ist zum Beispiel nen Timer mitlaufen zu lassen und per externem Interrupt den Timerwert zu erfassen und ihn wieder zu nullen -> Periodendauer -> Frequenz

  • @ Novex
    Jeder der schon mal was mit nem Mikrocontroller gemacht hat weis was ein Interrupt ist und vor allem weis er auch das es totaler Blödsinn ist nen High-Pegel mit dem ADC zu erfassen.

    Also ich nicht, und außer einer groben Vorstellung versteht ich nicht was du da sagtst. :pinch:
    Ich würde das ganz einfach über einen Bremslichtschalter machen, aber wenn es ums basteln geht und man das know how hat. Warum dann keinen MC verwenden?!




    @ Novex: Bitte schreib doch mal mit Punkt, Komma und Groß- und Kleinschreibung. Deine Texte sind dadurch überaus schwer lesbar. UND CAPS MACHT ES AUCH NICHT BESSER Danke

  • Dacht ja nur weil er gesagt hat er kennt sich mim ADC nur mit dem messen von spannungen aus....sollte ja nur ein kleiner anspron sein das das mit der frequenz nicht viel anderst ist -.-

    Hier.



    Nos


    du startest nen Timer der innerhalb der Zeit die eine Radumdrehung braucht nicht überläuft, das Tachosignal ist jetzt an nem Interrupt und löst ihn aus


    Interrupt:
    -Timerwert auslesen
    -Timerwert nullen


    Der Timerwert den du jetzt ausgelesen hast ist direkt proportional zur Zeit die für eine Radumdrehung nötig ist. Beim Beschleunigen dauert die nachfolgende Umdrehung weniger lang und umgekehrt.


    Die Idee das ganze für die Frequenz des Nabendynamos zu machen ist natürlich noch besser, die müsste deutlich hochauflösender sein (mehr Schritte pro Umdrehung)

  • Gerd_
    vielen Dank für diesen Ansatz.
    Mein begrenztes Wissen lässt mich dabei aber schon an Grenzen stoßen. Ein klassischer Pegelwandler in Form eines Spannungsteilers (den kenne ich schon) bedarf ja Modifikation um so einen weiten Eingangsbereich zu haben. Außerdem würde der sinnlos und dauerhaft Strom verbrauchen, was mir wiederstrebt. Gibt es da eine praktikablere Lösung?


    Hiho
    danke für die ausführliche Erklärung, das hat mir einiges an Zeit gespart. Und den dann erhaltenen Timerwert kann ich einfach mit dem vorigen vergleichen (oder vll. auch besser immer 3 hintereinander) und bei einem Sinken das Rücklicht auslösen lassen, verstehe ich das richtig? ;)

  • Und den dann erhaltenen Timerwert kann ich einfach mit dem vorigen vergleichen (oder vll. auch besser immer 3 hintereinander) und bei einem Sinken das Rücklicht auslösen lassen, verstehe ich das richtig?


    Ja. Dabei solltest du eine Hysterese einstellen, denn wenn du zum Beispiel einen Berg hochfährst dann wirst du auch langsamer, oder wenn du einfach Tempo abbaust. Also das musst du dann idealerweise mal ausprobieren (kannst du auch errechnen...). Im Stand entfällt ohne Puffer ja sowieso wenn das ungepuffert über den Dynamo läuft, sonst musst du dir da auch was einfallen lassen, wenn im Standlicht das Bremslicht je nachdem leuchten soll oder nicht.

  • Hallo,
    @Lopodx
    danke, diese Variante gefällt mir wohl am besten, weil ich mir die Timer-Sache sowieso schon länger mal hätte aneignen sollen.
    Mein Problem ist: ich wollte- aus energie- und platzgründen- einen Atiny13 verwenden, der scheint aber nur einen 8-Bit-Timer (timer0) zu haben.
    Bei einem Normal-Takt von 9,6Mhz und einem Prescaler von 1024 hätte ich 96000000/1024=93750. 93750/256= 366,2 Timerüberläufe pro Sekunde. Deswegen müsste ich eigentlich einen µC mit 16-Bit Timer nehmen, oder aber (und das würde ich lieber tun) den Systemtakt auf 128kHz begrenzen. Ddann hätte ich mit Prescaler: 128000/1024= 125. 125/256=0,49 Timerüberläufe pro Sekunde, was mir gut gefällt. Lege jetzt mal fest, dass der Arbeitsbereich der Schaltung bei größer 2 Umdrehungen pro Sekunde des Rades liegt.


    Meint ihr das geht? Wie kann ich ungutes Verhalten des Programmes umgehen, wenn ich langsamer fahre?
    Vielen Dank! ;)


    Edit:
    Gerd_
    danke für den Schaltplan! Hast du ein Bremslicht so oder so ähnlich schon in Betrieb? Würde die Auswertung dieses Signals, dann ähnlich des o.g. Vorschlages funktionieren?