Inhaltsverzeichnis:

HackerBox 0053: Chromalux - Gunook
HackerBox 0053: Chromalux - Gunook

Video: HackerBox 0053: Chromalux - Gunook

Video: HackerBox 0053: Chromalux - Gunook
Video: #96 HackerBox 0053 ChromaLux 2024, Juli
Anonim
HackerBox 0053: Chromalux
HackerBox 0053: Chromalux

Grüße an HackerBox-Hacker auf der ganzen Welt! HackerBox 0053 erforscht Farbe und Licht. Konfigurieren Sie die Arduino UNO-Mikrocontrollerplatine und die IDE-Tools. Schließen Sie ein vollfarbiges 3,5-Zoll-LCD-Arduino-Shield mit Touchscreen-Eingängen an und erkunden Sie den Democode für Touch Paint. Verdrahten Sie einen I2C-Farbsensor, um die Frequenzkomponenten des reflektierten Lichts zu identifizieren, zeigen Sie Farben auf adressierbaren LEDs an, löten Sie ein Arduino-Prototyping-Shield an und erkunden Sie eine Vielzahl von Eingangs-/Ausgangskomponenten mit einem Multifunktions-Arduino Experimentation Shield. Verbessern Sie Ihre Lötfähigkeiten bei der Oberflächenmontage mit einer LED-Chaser-Platine. Werfen Sie einen einführenden Blick in die Technologie künstlicher neuronaler Netze und Deep Learning.

Diese Anleitung enthält Informationen zum Einstieg in die HackerBox 0053, die Sie hier erwerben können, solange der Vorrat reicht. Wenn Sie jeden Monat eine solche HackerBox direkt in Ihre Mailbox erhalten möchten, abonnieren Sie bitte HackerBoxes.com und machen Sie mit bei der Revolution!

HackerBoxes ist der monatliche Abonnement-Box-Service für Hardware-Hacker und Enthusiasten von Elektronik und Computertechnologie. Mach mit und lebe das HACK LIFE.

Schritt 1: Inhaltsliste für HackerBox 0053

  • TFT-Display-Schild 3,5 Zoll 480x320
  • Arduino UNO Mega382P mit MicroUSB
  • Farbsensormodul GY-33 TCS34725
  • Multifunktions-Experiment-Schild für Arduino UNO
  • OLED 0,96 Zoll I2C 128x64
  • Fünf 8 mm runde adressierbare RGB-LEDs
  • Arduino Prototyp PCB Shield mit Pins
  • LED-Chaser Lötkit für die Oberflächenmontage
  • Mann in der Mitte Hacker Sticker
  • Hacker-Manifest-Aufkleber

Einige andere Dinge, die hilfreich sein werden:

  • Lötkolben, Lötzinn und grundlegende Lötwerkzeuge
  • Computer zum Ausführen von Softwaretools

Am wichtigsten sind Abenteuerlust, Hackergeist, Geduld und Neugier. Das Bauen und Experimentieren mit Elektronik ist zwar sehr lohnend, kann jedoch knifflig, herausfordernd und manchmal sogar frustrierend sein. Das Ziel ist Fortschritt, nicht Perfektion. Wenn man hartnäckig bleibt und das Abenteuer genießt, kann man viel Befriedigung aus diesem Hobby ziehen. Machen Sie jeden Schritt langsam, achten Sie auf die Details und haben Sie keine Angst, um Hilfe zu bitten.

In den HackerBoxes FAQ gibt es eine Fülle von Informationen für aktuelle und zukünftige Mitglieder. Fast alle nicht-technischen Support-E-Mails, die wir erhalten, werden dort bereits beantwortet. Wir freuen uns daher sehr, dass Sie sich ein paar Minuten Zeit nehmen, um die FAQ zu lesen.

Schritt 2: Arduino UNO

Arduino UNO
Arduino UNO

Dieser Arduino UNO R3 wurde mit Blick auf die Benutzerfreundlichkeit entwickelt. Der MicroUSB-Schnittstellenanschluss ist mit den gleichen MicroUSB-Kabeln kompatibel, die bei vielen Mobiltelefonen und Tablets verwendet werden.

Spezifikation:

  • Mikrocontroller: ATmega328P (Datenblatt)
  • Serielle USB-Brücke: CH340G (Treiber)
  • Betriebsspannung: 5V
  • Eingangsspannung (empfohlen): 7-12V
  • Eingangsspannung (Grenzwerte): 6-20V
  • Digitale I/O-Pins: 14 (davon 6 PWM-Ausgang)
  • Analogeingangspins: 6
  • Gleichstrom pro I/O-Pin: 40 mA
  • Gleichstrom für 3.3V Pin: 50 mA
  • Flash-Speicher: 32 KB, davon 0,5 KB vom Bootloader verwendet
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Taktfrequenz: 16 MHz

Arduino UNO-Boards verfügen über einen integrierten USB/Seriell-Bridge-Chip. Bei dieser speziellen Variante ist der Brückenchip der CH340G. Für die CH340 USB/Seriell-Chips stehen Treiber für viele Betriebssysteme (UNIX, Mac OS X oder Windows) zur Verfügung. Diese sind über den obigen Link zu finden.

Wenn Sie das Arduino UNO zum ersten Mal an einen USB-Anschluss Ihres Computers anschließen, leuchtet eine rote Betriebsanzeige (LED) auf. Fast unmittelbar danach beginnt eine rote Benutzer-LED normalerweise schnell zu blinken. Dies geschieht, weil der Prozessor mit dem BLINK-Programm vorgeladen ist, auf das wir weiter unten eingehen werden.

Wenn Sie die Arduino IDE noch nicht installiert haben, können Sie sie von Arduino.cc herunterladen und wenn Sie zusätzliche einführende Informationen zum Arbeiten im Arduino-Ökosystem wünschen, empfehlen wir Ihnen, den Online-Leitfaden zum HackerBox Starter Workshop zu lesen.

Schließen Sie die UNO mit einem MicroUSB-Kabel an Ihren Computer an. Starten Sie die Arduino IDE-Software.

Wählen Sie im IDE-Menü unter Tools>Board "Arduino UNO" aus. Wählen Sie auch den entsprechenden USB-Port in der IDE unter tools>port (wahrscheinlich ein Name mit "wchusb" darin).

Laden Sie zum Schluss einen Beispielcode hoch:

Datei->Beispiele->Grundlagen->Blinken

Dies ist eigentlich der Code, der auf die UNO vorgeladen wurde und jetzt laufen sollte, um die rote Benutzer-LED zu blinken. Programmieren Sie den BLINK-Code in die UNO, indem Sie auf die Schaltfläche UPLOAD (das Pfeilsymbol) direkt über dem angezeigten Code klicken. Beobachten Sie unten den Code für die Statusinfo: "Kompilieren" und dann "Hochladen". Schließlich sollte die IDE "Uploading Complete" anzeigen und Ihre LED sollte wieder zu blinken beginnen - möglicherweise mit einer etwas anderen Geschwindigkeit.

Sobald Sie den ursprünglichen BLINK-Code herunterladen und die Änderung der LED-Geschwindigkeit überprüfen können. Schauen Sie sich den Code genau an. Sie können sehen, dass das Programm die LED einschaltet, 1000 Millisekunden (eine Sekunde) wartet, die LED ausschaltet, eine weitere Sekunde wartet und dann alles wieder tut - für immer. Ändern Sie den Code, indem Sie beide "delay(1000)"-Anweisungen in "delay(100)" ändern. Diese Änderung führt dazu, dass die LED zehnmal schneller blinkt, oder?

Laden Sie den geänderten Code in die UNO und Ihre LED sollte schneller blinken. Wenn ja, herzlichen Glückwunsch! Sie haben gerade Ihren ersten eingebetteten Code gehackt. Wenn Ihre Fast-Blink-Version geladen ist und ausgeführt wird, können Sie den Code erneut ändern, damit die LED zweimal schnell blinkt, und dann einige Sekunden warten, bevor Sie den Vorgang wiederholen. Versuche es! Wie wäre es mit anderen Mustern? Sobald es Ihnen gelungen ist, ein gewünschtes Ergebnis zu visualisieren, zu codieren und zu beobachten, dass es wie geplant funktioniert, haben Sie einen enormen Schritt in Richtung Embedded-Programmierer und Hardware-Hacker gemacht.

Schritt 3: Vollfarb-TFT-LCD 480x320 Touchscreen

Vollfarb-TFT-LCD 480x320 Touchscreen
Vollfarb-TFT-LCD 480x320 Touchscreen

Das Touch Screen Shield verfügt über ein 3,5 Zoll TFT-Display mit einer Auflösung von 480x320 bei 16bit (65K) satten Farben.

Die Abschirmung wird wie gezeigt direkt auf das Arduino UNO gesteckt. Zur einfachen Ausrichtung richten Sie einfach den 3,3-V-Pin des Shields mit dem 3,3-V-Pin des Arduino UNO aus.

Verschiedene Details zum Schild finden Sie auf der lcdwiki-Seite.

Installieren Sie von der Arduino-IDE aus die MCUFRIEND_kvb-Bibliothek mit dem Bibliotheksmanager.

Datei öffnen > Beispiele > MCUFRIEND_kvb > GLUE_Demo_480x320

Laden Sie die Grafik-Demo hoch und genießen Sie sie.

Die hier enthaltene Touch_Paint.ino-Skizze verwendet dieselbe Bibliothek für eine farbenfrohe Malprogramm-Demo.

Teilen Sie mit, welche farbenfrohen Anwendungen Sie für dieses TFT-Display-Schild erfinden.

Schritt 4: Farbsensormodul

Farbsensormodul
Farbsensormodul

Das Farbsensormodul GY-33 basiert auf dem Farbsensor TCS34725. Das Farbsensormodul GY-33 wird mit einer 3-5V-Versorgung betrieben und kommuniziert Messungen über I2C. Das TCS3472-Gerät bietet eine digitale Rückgabe von Rot-, Grün-, Blau- (RGB) und klaren Lichtmesswerten. Ein auf dem Chip integrierter und an den farbempfindlichen Fotodioden lokalisierter IR-Sperrfilter minimiert die IR-Spektralkomponente des einfallenden Lichts und ermöglicht genaue Farbmessungen.

Die GY33.ino-Skizze kann den Sensor über I2C lesen, die erfassten RGB-Werte als Text an den seriellen Monitor ausgeben und die erfasste Farbe auch an eine WS2812B RGB-LED anzeigen. Die FastLED-Bibliothek ist erforderlich.

OLED-DISPLAY HINZUFÜGEN: Die Skizze GY33_OLED.ino zeigt, wie man die RGB-Werte auch auf einem 128x64 I2C OLED anzeigen kann. Schließen Sie die OLED einfach parallel zum GY33 an den I2C-Bus (UNO-Pins A4/A5) an. Beide Geräte können parallel geschaltet werden, da sie sich auf unterschiedlichen I2C-Adressen befinden. Verbinden Sie auch 5V und GND mit dem OLED.

MEHRERE LEDs: Der nicht verwendete LED-Pin im Diagramm ist "Data Out", wenn Sie zwei oder mehr der adressierbaren LEDs miteinander verketten möchten, verbinden Sie einfach Data_Out von LED N mit Data_In von LED N+1.

PROTOTYPE PCB SHIELD: Das GY-33-Modul, das OLED-Display und eine oder mehrere RGB-LEDs können an die Prototyping-Abschirmung gelötet werden, um eine Farbsensor-Instrumentenabschirmung zu konstruieren, die einfach am Arduino UNO angebracht und von diesem abgenommen werden kann.

Schritt 5: Multifunktions-Arduino-Experimentierschild

Multifunktions-Arduino-Experimentierschild
Multifunktions-Arduino-Experimentierschild

Das Multifunktions-Arduino Experimentation Shield kann auf das Arduino UNO gesteckt werden, um mit einer Vielzahl von Komponenten zu experimentieren, darunter: rote LED-Anzeige, blaue LED-Anzeige, zwei Benutzereingabetasten, Reset-Taste, DHT11-Temperatur- und Feuchtigkeitssensor, analoges Eingangspotentiometer, Piezo-Summer, RGB-LED, Fotozelle zur Erkennung der Lichthelligkeit, Temperatursensor LM35D und Infrarotempfänger.

Die Arduino-Pins für jede Komponente werden auf dem Siebdruck des Schilds angezeigt. Auch Details und Democode finden Sie hier.

Schritt 6: SMD-Lötpraxis: LED-Chaser

Lötpraxis für Oberflächenmontage: LED-Chaser
Lötpraxis für Oberflächenmontage: LED-Chaser

Hatten Sie Glück beim Konstruieren des Freiform-LED-Chasers von HackerBox 0052?

In jedem Fall ist es Zeit für eine weitere SMT-Lötübung. Dies ist die gleiche LED-Chaser-Schaltung von HackerBox 0052, die jedoch mit SMT-Komponenten auf einer Platine anstelle von Freiform-/Deadbug-Komponenten konstruiert wurde.

Zuerst ein aufmunternder Vortrag von Dave Jones in seinem EEVblog zum Thema Löten von oberflächenmontierbaren Komponenten.

Schritt 7: Was ist ein neuronales Netzwerk?

Was ist ein neuronales Netz?
Was ist ein neuronales Netz?

Ein neuronales Netzwerk (Wikipedia) ist ein Netzwerk oder eine Schaltung von Neuronen oder im modernen Sinne ein künstliches neuronales Netzwerk, das aus künstlichen Neuronen oder Knoten besteht. Somit ist ein neuronales Netzwerk entweder ein biologisches neuronales Netzwerk, das aus echten biologischen Neuronen besteht, oder ein künstliches neuronales Netzwerk zur Lösung von Problemen der künstlichen Intelligenz (KI).

Empfohlen: