Projekt 47b: Snake mit LED-Streifen und Arduino
Autoren: Christo Tsibadze, Stefan Vogel
Betreuer: Prof. Schneider
Aufgabenstellung
Realisierung eines Retro-Spiels "Snake", mit Hilfe von RGB-LED-Streifen und Arduino Mikrokontroller: Es soll eine "Snake-Spielmaschine" entwickelt und konstruiert werden, die aus Ein- und Ausgabegeräten sowie einer Verarbeitungseinheit besteht.
- Eingabegeräte: Joysticks oder Taster
- Verarbeitung: Arduino
- Ausgabe: LED-Matrix als Bildschirm
Das Retro-Spiel "Snake" soll durch einem Mikrocontroller Arduino und selbst entwickelter Software realisiert werden. Die Konstruktion und Aufbau der LED-Matrix basiert auf einem Artikel des c't MAKE: vom Januar 2015. (S. 12 ff.)
Erwartungen an die Projektlösung
- Recherche mit Artikel aus c‘t Make: 1/2015 (S. 12ff)
- Planung des Aufbaues
- Auflistung der benötigten Materialien in der BOM
- Beschaffung der Bauteile
- Realisierung des Aufbaus
- Programmierung des Spiels Snake mit Hilfe der LED-Streifen und Arduino
- Erstellung eines spektakulären Videos, welches das Spiel demonstriert
- Test und wiss. Dokumentation
- Live Vorführung während der Abschlusspräsentation
Schwierigkeitsgrad
Anspruchsvoll (***)
Plannung
Projektplan
Zunächst wurde ein Projektplan erstellt mit vier Phasen:
- Planung
- Konzept/Entwurf
- Realisierung
- Dokumentation
und zu geschätzten Arbeitsstunden zugeordnet.
Zeitliche Ressource insgesamt ist mit 46 Arbeitsstunden geplant.
Materialbeschaffung
Einige Materialien konnten nicht bei vorgegebenen Händlern bestellt werden, deshalb wurden diese im Baumarkt erworben:
- ein Paar Holzplatten (Holzzuschnitt-Reste)
- sowie eine weiße Tapete ( 1 meter), der das Licht diffus durchlässt
- günstiger Tapetenkleister
- Sekundenkleber
Gesamtkosten (Holz und Tapete) weniger als 10€.
Konzeption/Entwurf
CAD - Entwurf
In der Konzeptions- bzw. Entwurfsphase wurde die Retro-Game-Station zu erst im CAD entworfen.
die WS2812B LED-Streifen, sowie das Arduino Uno Mikrokontroller-Platine und diverse Schalter, Knöpfe und Potentiometer wurden aus der Webseite https://grabcad.com verwendet.
Die Form, Größe und das Material wurden für restliche Einzelteile während der CAD-Konstruktion festgelegt.
Es wurden folgende Teile entworfen:
- seitliche dreieckige Stütz-Teile
- hintere Deckel aus dünner Holzplatte
- dünne Holzplatte auf dem die LED-Streifen geklebt werden
- dicke Holzplatte mit relativ großen Bohrungen mit der gleichen Abstand wie die LEDs zueinander
- Gamepad
Technische Zeichnungen
Nach der Fertigstellung der 3D-CAD-Modelle wurden daraus die technische Zeichnungen für die Fertigung abgeleitet. Es wurden alle wichtigen Abmaße eingetragen und im Maßstab 1:1 ausgedruckt.
Einige Zeichnungen wurden direkt auf den Holzplatten mit Klebefilm befestigt und somit die Positionierung der Bohrungen erleichtert.
Leiterplatten Entwurf
Der elektrischer Schaltplan wurde mit Hilfe von einem Freeware-Software (Fritzing; http://fritzing.org/home/) realisiert.
Dort ist es möglich die einzelne elektrische Bauteile virtuell miteinander zu verschalten und zu parametrisieren.
Anschließend ist es möglich daraus einen elektrischen Schaltplan zu erzeugen und sogar auch Leiterplatten-Design ist hiermit möglich.
Die verschalteten elektrische Bauteile, der Schaltplan, die Leiterplatten-Layout und auch das Arduino Code zusammen lassen sich in einem Fritzing-Projekt als eine Datei speichern.
Realisierung
Hardware-Design
Bildschirm
Für die "Haut" der Konsole wurde eine weiße undurchsichtige Tapete mit bestimmtem Muster im Baumarkt gekauft. Die Tapete ist nicht transparent aber wie im Bild (links) zu sehen ist, kommen die Farben durch.
Eine Zeichnung von einer CAD-Baugruppe (Holzplatte mit positionierten LED-Streifen) wurde auf ein Brett geklebt und anschließend mit einem sehr scharfem Messer vorsichtig rechteckige Streifen ausgeschnitten. In die ausgeschnittene Bereiche wurden die LED-Streifen positioniert und verklebt. Zuvor wurden die LED-Streifen (60-LEDs pro Meter) in kleinere Streifen (18-LEDs pro Streifen) zugeschnitten. Aus dem Verschnitt wurde die letzte 18-LED-Streifen zusammengelötet. Die Verkabelung der LED-Streifen wurde durch kleine Bohrungen seitlich durch das Brett geführt.
Nachdem die dünne Platte mit den LED-Streifen fertiggestellt war, wurde mit der Bearbeitung einer dickeren Platte gestartet. Diese Platte soll auf die dünnere Platte draufkommen und mit 234 Bohrungen die Lichter der einzelnen LEDs von einander trennen. Zuerst wurden breite Bohrungen gebohrt und anschließend von beiden Seiten gesenkt.
Gamepads
Leiterplatte und Verkabelung
Konsole
Software-Design
Es wurde mit Hilfe von Arduino IDE programmiert. Die LED-Streifen wurden mit Hilfe von Bibliotheken "FastLED" und NEOPixel" angesteuert.
Steuerung
Zunächst wurde ein TEST-Programm für Hardware entwickelt, welches die Funktionalität der Tasten und Potentiometer prüft.
Coole visuelle Effekte
Sounds
Es wurden Soundausschnitte aus Super Mario-Melody und StarWars-Melody mit Hilfe des Summers und Arduino Beispiel-Programms realisiert.
ggf. Quellen
Snake
eventuell Foto und Quelle des Quelcodes für Snake
Präsentationssoftware für die Messe
Für die Messe wurde ein Quellcode zusammengestellt mit einem Spielablauf inkl. Intro mit HSHL-Logo (wenn die Konsole angeschaltet oder neugestartet wird).
inkl. Sounds und Steuerung von Gamepads sowohl der LEDs.
sowie mit einem selbstgeschriebenem auf Zufall basierten Lichtfarbeneffekt.
Dokumentation
Präsentationsmaterial für die Messe
Vielleicht noch eine Folie reinpacken
Video
Noch unter Bearbeitung!!!
→ zurück zum Hauptartikel: Fachpraktikum Elektrotechnik (WS 15/16)