Inhaltsverzeichnis:

Lego Mini Cooper App-gesteuerte Lichter - Gunook
Lego Mini Cooper App-gesteuerte Lichter - Gunook
Anonim
Image
Image
Was du brauchen wirst
Was du brauchen wirst

Gefahr, UXB

Ist Ihr Traumberuf Bombenentsorgungsexperte, aber Sie zögern wegen des sterbenden Teils? Dann ist dies das Projekt für Sie! Sie werden viele Stunden damit verbringen, winzige Anpassungen an einem sehr instabilen Gerät vorzunehmen, Schweißperlen von der Stirn und unkontrolliert zitternden Händen. Ein Herzschlag könnte Triumph und Desaster trennen. So oder so wirst du nicht sterben, außer vielleicht an Demütigung. Sie müssen also bereit sein, diese beiden Betrüger gleich zu behandeln. Andernfalls sind Sie mit der tatsächlichen Bombenentsorgung möglicherweise besser dran.

Worum geht es mir? Implementieren Sie einen umfassenden Satz webbasierter Bedienelemente für Ihren Lego Mini Cooper, die alle von Ihrem Telefon aus zugänglich sind! Zu den Highlights zählen:

  • Individuelle Steuerung der Außen- und Innenbeleuchtung
  • Auf dem Telefondisplay gespiegelte Beleuchtungsauswahl
  • Automatische Beleuchtungsfunktion abhängig von der Lichtstärke
  • Internetbasierte Zeitmessung, damit Ihr Mini die Stunden mit seinen Lichtern blinken kann
  • Benutzerkonfigurierbare Zeitzonenauswahl
  • Eine nahezu unendliche Vielfalt an manuell wählbaren Innenbeleuchtungsfarben und Helligkeitsstufen
  • Ein automatischer "Groovy"-Modus für wechselnde Innenbeleuchtung für den wahren Sixties-Vibe. Ja, Baby!
  • Tesla-ähnlicher Autopilot. Nein nicht wirklich.

Plus Komfort-Nerd-Funktionen wie:

  • Multicast-DNS (keine lästigen IP-Adressen merken)
  • OTA-Firmware-Upgrades (over the air) zum einfachen Hinzufügen von noch mehr Funktionen
  • WiFi Manager, damit der Mini in neue Netzwerke verschoben werden kann, ohne SSID und Passwörter neu codieren zu müssen

Lass uns anfangen!

Schritt 1: Was Sie brauchen

Wenn Sie bereits einen Lego Mini Cooper besitzen, haben Sie Glück. Dieses Projekt kostet Sie ungefähr 10 $. Weniger, wenn Sie bereits einige oder alle Verbrauchsmaterialien herumliegen haben. Wenn Sie kein Lego Mini haben, kosten sie etwa 100 US-Dollar. Ich habe meiner (erwachsenen) Tochter einen zu Weihnachten gekauft. Clever, oder?

Die einzige andere relevante Komponente ist eine auf ESP8266 basierende NodeMCU. Ungefähr 6 Dollar pro Wurf. Dann brauchen Sie nur noch ein paar 3 mm LEDs, ein paar Widerstände (einschließlich eines optionalen LDR/Fotowiderstands), ein paar NPN-Transistoren, einen dünnen Anschlussdraht und einen Schrumpfschlauch.

Werkzeuge

Ein Lötkolben ist hier die Hauptsache. Plus einen Bohrer mit Bits von 1/8 Zoll abwärts. Sie benötigen auch einige kleinere Handwerkzeuge - ich fand eine spitze Pinzette besonders hilfreich.

Schritt 2: Designüberlegungen

Überlegungen zum Entwurf
Überlegungen zum Entwurf

Optionen

Wie bei einem echten Mini Cooper müssen Sie sich für Optionen entscheiden. In diesem Fall, wie viele einzelne Lichter möchten Sie und möchten Sie andere Dinge hinzufügen (z. B. eine Hupe). Mein Rat ist, nicht zu ehrgeizig zu werden. Zunächst einmal hat die NodeMCU nur 9 nutzbare GPIO-Pins und einen analogen Eingangspin. Auch wenn man die Pins mit einem Schieberegister erweitern möchte, muss man den Platzbedarf für die Verdrahtung und das gesteuerte Zubehör berücksichtigen. Hier ist, was ich am Ende hatte:

  • Scheinwerfer
  • Nebel-/Fahrlichter
  • Blinker/Warnblinker rechts und links (vorne und hinten)
  • Drei Innenlichter für RGB (könnte eine kombinierte verwendet haben, hatte aber keine - Pin-Verwendung ist in beiden Fällen gleich)
  • Fotowiderstand am analogen Pin für Auto-On/Off-Funktionalität

Ich habe Transistoren an den Blinkern verwendet, um ein paar Pins zu sparen, ein Ansatz, den Sie auch an den Scheinwerfern und Nebelscheinwerfern verwenden können (alles, was immer zusammen geschaltet wird). Sie müssen jedoch vorsichtig sein - ich hatte ein Problem mit Transistoren an einigen der Pins, das später besprochen wird.

Regeln

  1. Keine Veränderung des äußeren Erscheinungsbildes des Autos
  2. So wenig interne Modifikationen wie möglich
  3. Kein Kleber, egal wie verlockend es ist, Stabilität zu verleihen
  4. Keine harte Kodierung von konfigurierbaren Schlüsseln (z. B. WLAN-Netzwerk)
  5. Vernünftig aussehende GUI für die "App"

Letztendlich habe ich diese Regeln eher als Richtlinien interpretiert, aber ich glaube nicht, dass ich eklatante Abweichungen gemacht habe.

Schritt 3: Bauen Sie Ihren Mini

Baue deinen Mini
Baue deinen Mini

Obwohl ich verschlagen bin, bin ich nicht ohne Menschlichkeit. Also habe ich im Sinne von Weihnachten meine Tochter den Mini bauen lassen. Denn, nun, es war ihres. Dies gelang ihr sehr geschickt. Es war fantastisch.

Ich hatte als Kind mit Lego gespielt, aber es gelang mir nur, etwas zu bauen, das man grob als "Haus" bezeichnen könnte. Ich glaube nicht, dass ich irgendwelche Fenster- oder Türstücke hatte, also war etwas Fantasie erforderlich. Dieser Lego Mini war in einer anderen Liga - er fängt die Essenz des echten Dings ein (ein Beispiel, das meine Tochter auch besitzt), während die Integrität von Lego selbst erhalten bleibt.

Trotz der eisigen Kälte gingen wir sofort zu einem ausgedehnten Fotoshooting. Es war mehr als toll. Es war perfekt!

Außer, nichts ist perfekt, oder? Oder zumindest ist es die menschliche Bedingung, das, was einst als perfekt galt, als unbefriedigend anzusehen. Deshalb brauchen wir Deponien und Scheidungsanwälte.

Was dieses Auto brauchte, waren eindeutig LEDs. Meine Tochter war nur in den Ferien zu Besuch, also musste ich schnell arbeiten. Version 1 dieses Projekts steckte nur einige LEDs in die Scheinwerfer und Nebelscheinwerfer und verkabelte alles über einen Schalter mit ein paar Knopfzellenbatterien. Ich sage "nur", aber es war meine erste Begegnung mit der Zerbrechlichkeit des Mini (und ich würde die meisten anderen benutzerdefinierten Lego-Bausätze vermuten). Schon das Aufheben des Dings riskierte, dass Teile mit einem entmutigenden Klappern auf dem Boden herunterfielen. Und ich müsste ein paar winzige Löcher mit einem riesigen DeWalt bohren, Draht durch Räume ziehen, für die der Draht nicht ausgelegt war, und die Struktur dazu bringen, ein Batteriefach auf der Unterseite zu tragen.

Einige der freigesetzten Teile waren ziemlich groß und für mich war klar, wohin sie zurückgingen. Andere Stücke waren ein komplettes Mysterium. Diese legte ich auf einen "zu schwierigen" Stapel, der nach wenigen Minuten des Projekts erschreckend gewachsen war. Irgendwann waren so viele Teile abgefallen, dass die Gefahr, dass das Ganze wieder in seinen ursprünglichen Zustand zurückversetzt, mehr als theoretisch war. Wenn Sie jemals daran gezweifelt haben, dass Entropie das Universum definiert, sind Sie bei Lego genau richtig.

In einer perversen biologischen Reaktion, die Bombenentsorgungsexperten wahrscheinlich vertraut ist, zitterten meine Hände umso mehr, je größer die Gefahr einer Katastrophe war. Wenn Sie besonders nervös sind, können andere biologische Reaktionen ausgelöst werden. Auf Spotify wurde ein T. Rex-Song abgespielt. Der Mini als Nemesis. Mir kam eine Zeile aus Yeats' The Second Coming in den Sinn.

Wir machen hier eine Pause, weil ich ein überentwickeltes Gespür für die dramatische Erzählung habe.

Schritt 4: Version 1

Version 1
Version 1

Nun, Leser, Sie werden sicherlich erleichtert sein zu hören, dass es mir gelungen ist, die batteriebetriebenen Lichter zu installieren und den Mini so ziemlich in einen vollständig zusammengebauten Zustand zu bringen. Wenn Sie sich dieses Bild ansehen, können Sie jedoch sehen, dass die Ziegel, aus denen das Dach besteht, uneben sind. Ich schätze, sie waren so oft heruntergefallen, dass ich mich nicht die Mühe machen konnte, sie für das Bild wieder herunterzudrücken. Oder vielleicht war dies eine Folge einiger stärkender Getränke, die mit ruhiger Hand und ruhigem Herzen aufgenommen wurden. Es war schließlich Weihnachten.

Hier blieben die Dinge. Meine Tochter musste nach Kanada ausreisen und nahm den Mini mit. So funktionieren Geschenke anscheinend.

Inzwischen war ich schwer in Lego reingefallen. Ich fing an, Lego Batman wiederholt zu sehen und Bewertungen von Lego-Bausätzen zu lesen. Eines Tages stieß ich bei einem Outfit namens Brick Loot darauf, einer kommerziellen Version von "meiner" Idee. Schlimmer noch, es war besser als meine Anstrengung, weil es mehr Lichter hatte. Mehr. Besser. Ich versuchte, mich damit zu trösten, dass die Blaulichter geschmacklos waren und zwanzigmal teurer waren als die 1,30 Dollar, die ich für Version 1 ausgegeben hatte. Aber mein Herz hatte nichts von dieser normalerweise ansprechenden Logik. Dies konnte nicht standhalten, besonders als ich herausfand, dass es unzählige andere Optionen gab, um das Auto mit LED-Beleuchtung zu versehen. Offensichtlich musste ich mein Spiel verbessern. Der Mini wurde aus dem gefrorenen Norden zurückgerufen und die Arbeiten begannen.

Zufällig hatte ich vor kurzem ein weiteres frivoles Projekt in Angriff genommen, bei dem es unter anderem um LEDs und eine NodeMCU ging. Es war kein Riesensprung, dieses Projekt mit dem Lego Mini zu verheiraten. Ich könnte sogar ein paar Codestücke wiederverwenden! Die Verwendung einer NodeMCU bedeutete, dass wir die Beleuchtung per Telefon steuern und so viel Automatisierung wie die Vorstellungskraft zuließen. Nimm das, Brick Loot, wer auch immer du bist.

Sofort habe ich weitere Lego-Recherchen eingestellt. Es ist in Ordnung, wenn jemand anderes bereits etwas Ähnliches wie dieses Projekt gemacht hat (denn sie haben es sicherlich getan). Solange ich nichts davon weiß (Kommentatoren, bitte respektiert diese vorsätzliche Ignoranz).

Mir ist jetzt klar, dass ich vor vier Schritten "Lass uns loslegen" gesagt habe. Also lasst uns anfangen. Wirklich.

Schritt 5: Verkabelung

Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung
Verdrahtung

Die erste Aufgabe bestand darin, zu entscheiden, wie alle Lichter mit Strom versorgt werden. Jeder der Lichtersätze (Scheinwerfer, Nebelscheinwerfer, Blinker, Innenbeleuchtung) erforderte einen etwas anderen Ansatz.

Ich lasse die Bilder sprechen, wie ich vorgegangen bin. Kurz gesagt, die Verkabelung zu allen Leuchten außer den Nebelscheinwerfern kann installiert werden, indem ein kleines Loch von der Mitte der Leuchte direkt zurück in den nächsten verfügbaren Hohlraum gebohrt und dann das Kabel unauffällig zur Unterseite des Mini geführt wird. Bei den Nebelscheinwerfern muss das Kabel etwas außermittig in die Rückseite des Reflektors eintreten. Die RGB-Innenraum-LEDs (ohne Abbildung) sind einfach zu installieren, indem Sie ein Loch gerade nach oben durch die Unterseite bohren, damit es zwischen und leicht hinter den Vordersitzen hervortritt. Ich habe drei separate Lichter verwendet, weil ich keine kombinierten hatte.

Erwähnenswert ist nur, dass ich bei der Erkundung der Optionen für die Heckblinker das Reserverad entdeckt habe, das sich unter dem Kofferraumboden befindet. Das war völlig unerwartet - es wäre nicht übertrieben zu sagen, dass ich verblüfft war. Hier war eine Komponente, die, wenn überhaupt, nur wenige nach der Montage sehen würden. Dafür aber umso wertvoller. Gut gespieltes Lego!

Wenn Sie fertig sind, sollten sich alle Drähte in dem großen Raum zwischen den Rahmenelementen unter dem Mini treffen. Hier installieren wir die NodeMCU und schließen die Verdrahtung am entsprechenden Pin ab.

Ich hatte zuvor eine schlechte Entscheidung getroffen, indem ich mich dafür entschieden hatte, die Strombegrenzungswiderstände für die LEDs, Transistoren und LDR in die Verkabelung einzubeziehen. Ich tat dies, weil ich nicht vorhatte, die NodeMCU auf Perfboard zu montieren. Am Ende habe ich genau das getan, damit ich die gesamte Elektronik problemlos an einem Ort hätte bündeln können. Andernfalls wird der Austausch von Komponenten, insbesondere der LEDs, etwas schwieriger. Nun ja.

Bevor Sie das NodeMCU/Perfboard am Rahmen befestigen, überlegen Sie sich, auf welche Seite der Micro-USB zeigen soll.

Schritt 6: Die Schaltung

Die Rennbahn
Die Rennbahn

Nichts besonderes hier. Die Fritzing-Skizze sollte ziemlich selbsterklärend sein, obwohl sie amateurhaft ist. Strombegrenzungswiderstände an allen LEDs sind 220Ω und an den Transistoren 1kΩ. Die Transistoren sind 2N2222 NPNs. Der Festwiderstand des LDR beträgt 10KΩ.

Das heißt, jetzt ist vielleicht der Ort, um ein paar Macken zu erwähnen, die ich über die NodeMCU entdeckt habe.

Erstens, obwohl es einige Vorschläge zu den Interwaves gibt, dass die Pins D9 (RX) und D10 (TX) als GPIOs verwendet werden können, wenn kein serieller Datenverkehr vorhanden ist, bin ich mir nicht sicher, ob sie dies können - hat bei mir sicherlich nicht funktioniert.

Zweitens hatte ich ein Problem mit einem der an D3 angeschlossenen Transistoren. Nicht ganz sicher, warum - D3 (auch D4 und D8) bestimmen den Boot-Modus, aber nicht sicher, warum das eine Rolle spielen sollte. Nur ein Heads-Up. Wenn Sie also auf ein Problem stoßen, versuchen Sie, Dinge auf den Pins zu bewegen.

Ich habe eine mentale Notiz gemacht, um diese beiden Probleme weiter zu untersuchen, aber im Moment kann ich nur sagen, dass die auf meiner Skizze gezeigte Pin-Zuordnung für mich funktioniert hat.

Schritt 7: Der Code

Der Code
Der Code

Der Code (Arduino, HTML/CSS und JavaScript) wurde nach bestem Wissen und Gewissen kommentiert und ist hier auf GitHub verfügbar. Ich habe alle Bilder, die ich verwendet habe, belassen, einschließlich eines Symbols, das Sie Ihrem iPhone-Startbildschirm hinzufügen können, damit es sofort einsatzbereit ist. Wenn Sie mit SPIFFS nicht vertraut sind, sehen Sie sich die README-Datei an.

Wie immer bin ich den selbstlosen Menschen mit echtem Fachwissen zu großem Dank verpflichtet, die Bibliotheken, Tutorials und andere Ressourcen beisteuern, die von unglücklichen Menschen wie mir verwendet und missbraucht werden. Insbesondere für dieses Projekt habe ich mich stark auf eine sehr umfassende Einführung in alle Dinge des ESP8266 verlassen, die hier verfügbar ist. Die WiFi-Manager-Bibliothek verdient auch ein besonderes Lob für die Erleichterung der Netzwerkportabilität, die sehr wünschenswert ist, da der Lego Mini wie ein echtes Auto von Kanada hin und her reist.

Abschließend ein großes Dankeschön an meine Tochter Emma, die mich in unangemessenem Maße mit ihrem Auto spielen ließ.

Lassen Sie uns motorisieren.

Beingott.

Empfohlen: