BicycLED new

master
kaqu 1 year ago
parent 2a33ce83d1
commit d637eafdd9
  1. BIN
      content/projekt/BicycLED/BicycLED0.jpg
  2. BIN
      content/projekt/BicycLED/BicycLED1.jpg
  3. BIN
      content/projekt/BicycLED/BicycLED2.jpg
  4. BIN
      content/projekt/BicycLED/BicycLED3.jpg
  5. BIN
      content/projekt/BicycLED/BicycLED4.jpg
  6. BIN
      content/projekt/BicycLED/BicycLED_App.png
  7. BIN
      content/projekt/BicycLED/BicycLED_Overview.jpg
  8. 96
      content/projekt/BicycLED/index.md

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 256 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

@ -0,0 +1,96 @@
---
title: BicycLED, ein Fahrradblinker
author: kaqu
status: Aktiv
difficulty: nö
time: ~8h
date: 2021-08-28
image: BicycLED_Overview.jpg
keywords: Neopixel, ESP8266
---
## Motivation ##
Ein Problem im Zusammenhang mit Neopixel-Bändern ist die eher mangelhafte
Helligkeits-/Lichtausbeute (Lumen, Einheit lm).
Vor ein paar Wochen bin ich bei einem Elektronikversender auf (relativ) preiswerte
Neopixel-Display-Module gestoßen (< 5/St.) die hier einfach Abhilfe schaffen indem
sie eine hohe Pixeldichte besitzen.
<div class="pure-g">
{{<image alt="Bauelement" src="BicycLED0.jpg" size="400x240 q90" class="pure-u-1 pure-u-md-1-2" >}}
</div>
Als erstes kam mir ein Fahrradblinker in den Sinn. Dieser ist nur bei hinreichender
Helligkeit (z.Bsp. bei direkter Sonneneinstrahlung) sinnvoll zu realisieren.
Testen wir das mal ...
*Hinweis: Der Betrieb ist im Geltungsbereich der StVO nicht zulässig ...*
## 1. Ausführung Hardware ##
Ich bin faul, daher soll ein kleines (Test-)Breadboard nebst Powerbank direkt in eine
Kiste verpackt werden. Die Kiste habe ich angepasst an meinen Gepäckträger und an die
Modulelement-Höhe ausgewählt (~8 €).
Psycho hat mir mit Tecers Dremel die notwendigen Ausschnitte vorbereitet, mit den Feilen
der Innos habe ich dann ein wenig nachgearbeitet.
Nerdyscout hat mir auf einem der beiden verwendeten Module einen der Stecker 'entlötet',
sodaß zwei Elemente versetzt ineinander gesteckt werden können (kleine Bauform, große Fläche).
<div class="pure-g">
{{<image alt="BicycLED Aufbau 2" src="BicycLED2.jpg" size="320x240 q90" class="pure-u-1 pure-u-md-1-4" >}}
{{<image alt="BicycLED Aufbau 3" src="BicycLED3.jpg" size="320x240 q90" class="pure-u-1 pure-u-md-1-4" >}}
</div>
<div class="pure-g">
{{<image alt="BicycLED Aufbau 4" src="BicycLED4.jpg" size="320x240 q90" class="pure-u-1 pure-u-md-1-4" >}}
{{<image alt="BicycLED Aufbau 1" src="BicycLED1.jpg" size="454x779 q90" class="pure-u-1 pure-u-md-1-4" >}}
</div>
Das Photo rechts/unten zeigt das interne Chaos nebst (rudimentärem) Schaltplan. Vor dem Schließen habe ich noch die
verbliebenen Moosgummireste (3-lagig) oben drauf gelegt zur internen Dämpfung ...
Und hier der praktische Aufbau:
<div class="pure-g">
{{<image alt="Showtime" src="BicycLED_Overview.jpg" size="480x400 q90" class="pure-u-1 pure-u-md-1-2" >}}
</div>
## 2. Ausführung Software ##
Aus dem Bestand habe ich einen älteren ESP8266 (NodeMCU mit LUA) als zentrale Steuereinheit eingesetzt.
Dieser agiert als selbstständiger WLAN-AP (die Powerbank hat genug Energie für *sehr* lange Fahrrad-Touren
im Ausland!), mit diesem kann jetzt (z.Bsp.) eine Smartphone-App Kontakt aufnehmen.
Die LUA-Logik (🗣'left as an exercise to the reader' ...) wertet einen Helligkeitssensor (invertiert) aus und
paßt die Helligkeit entsprechend an. Beim Blinken wird parallel ein 2,4kHz-Buzzer betätigt um die
Aufmerksamkeit der Autofahrer auf den Blinker zu lenken.
<div class="pure-g">
{{<image alt="App" src="BicycLED_App.png" size="240x320 q90" class="pure-u-1 pure-u-md-1-2" >}}
</div>
Die App habe ich mit Flutter in Dart gebaut. Es gibt jeweils ein Anwahlfeld für Rechts- bzw. Linksblinken.
Auch für das Beenden des Blinkens gibt es eine Taste. Falls die Helligkeitsadaption nicht so recht passen
sollte, gibt es einen Schieberegler zur manuellen Nachjustierung.
Außerdem kann zwischen (derzeit) zwei Blinkanzeigevarianten gewechselt werden.
Es hat sich gezeigt, daß einige Features zwingend zu implementieren waren:
1. Senkrechte Ausrichtung: Es darf nur eine fixe vertikale Ausrichtung der Anzeige geben. Entweder durch
Smartphone Konfiguration (danke, Xperimental!) oder (vorzugsweise) durch Programmierung.
2. Unterdrückung des 'Lock-Screens': Die App muß aktiv anstehen bleiben.
3. Helligkeitsanpassung nach Erfordernis: Bei Anwahl wird die normale Helligkeit aktiviert, nach ca. 5s
fällt die Helligkeit wieder auf ein Minimalniveau zurück (Energiesparen!).
Das Projekt (Flutter-App) liegt wie immer auf unserem [Git-Server](https://git.hacknology.de/projekte/BicycLED).
## 3. Test ##
Ein eher mäßig geschnittenes Demo ...
<video width="500px" controls>
<source src="//media.hacknology.de/images/BicycLED/BicycLED.webm" type="video/webm">
Your browser does not support the video tag.
</video>
Fazit: Geht 🤘 !
Loading…
Cancel
Save