Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Countdown-Timer

Komponenten und Verbrauchsmaterialien

Adafruit Neopixel 8x8 RGB LED-Matrix
× 1
SparkFun Bluetooth-Modem - BlueSMiRF Silber
× 1
Piezo-Summer
× 1
Überbrückungsdrähte männlich-männlich
× 1
Überbrückungsdrähte weiblich-männlich
× 1
Arduino UNO
× 1
Mini-Steckbrett
× 1
Tragbares Akkuladegerät
× 1
Header-Pins
× 1
Lumina 635
× 1

Notwendige Werkzeuge und Maschinen

Lötkolben (generisch)

Apps und Onlinedienste

Microsoft Windows 10 IoT Core

Über dieses Projekt

Einführung

Mein 6-jähriger hat immer noch kein Zeitgefühl. Wenn ich ihr sage, dass sie 2 Minuten lang weiterspielen kann, bevor sie zum Abendessen kommt, könnten 30 Sekunden oder 10 Minuten vergehen und sie würde den Unterschied nicht bemerken. Ich fing an, den Timer an der Mikrowelle einzustellen, aber sie konnte nicht sehen, wie er von ihrem Spielzimmer aus tickte, oder den Summer aus ihrem Schlafzimmer hören. Also beschloss ich, einen tragbaren Timer zu entwickeln, den ich neben ihr platzieren konnte und der ihr einen visuellen Hinweis auf die verstrichene Zeit geben würde.

Ich begann mit einem einfachen numerischen Countdown auf einem 16x2-LCD-Panel, aber es war wirklich nicht sehr interessant. Und obwohl sie zählen konnte und wusste, dass 45 viel mehr als 15 ist, gab es ihr nicht wirklich ein Gefühl dafür, wie viel Zeit wirklich noch blieb. Also wechselte ich zu einem Visual – einer Sanduhr auf einer 8x8-LED-Matrix. Eine 8x16-Matrix ist meiner Meinung nach wirklich das Minimum für eine gute Darstellung einer Sanduhr; eine Sanduhr ist jedenfalls auch nicht gerade eine überzeugende Sache.

Nachdem ich mit ein paar anderen Visuals und Animationsebenen herumgespielt hatte, entschieden sich meine Tochter und ich für dieses Design – mehrfarbige Tropfen fallen und sammeln sich im Laufe der Zeit. Alle paar Sekunden, genauer gesagt 1/64 des Countdown-Intervalls, taucht ein Droppool auf – eine LED bleibt an. Einmal bleiben alle LEDs an, dann ist die Zeit abgelaufen und die gesamte LED-Matrix blinkt und der Summer ertönt. Um es für eine Vielzahl von Situationen flexibler zu machen, können verschiedene Countdown-Intervalle ausgewählt werden – 1 Minute, 2 Minuten, 5 Minuten usw. Und um es interessanter zu machen, kann das Countdown-Intervall aus der Ferne eingestellt werden, indem ich in mein Windows Mobile spreche Telefon. Sobald die Zeit abgelaufen ist, habe ich die Möglichkeit, ihr zusätzliche Zeit zu geben, indem ich wieder ein Countdown-Intervall in mein Windows-Handy spreche, auch wenn wir uns im selben Raum befinden (solange ich in Bluetooth-Reichweite der LED-Matrix bin).

Die Kernkomponenten des Projekts sind ein Arduino Uno, eine Neopixel 8x8 RGB-LED-Matrix und ein Bluetooth-Modul. Das Coole an der Adafruit Neopixel-Matrix ist, dass nur ein einziger Arduino-Pin erforderlich ist, um sie zu steuern, sodass noch viele Pins für alle Arten von zusätzlichen Funktionen übrig sind. Das Bluetooth-Modul wird verwendet, um zwischen dem Mobiltelefon und dem Arduino zu kommunizieren. Die Windows Virtual Shields for Arduino-App läuft auf dem Windows Phone 10 und ermöglicht es mir, die Fähigkeiten des Telefons in meiner Arduino-Skizze zu nutzen.

Dies ist ein Anfängerprojekt und es sind keine fortgeschrittenen Software- oder Hardwarekenntnisse erforderlich. Ohne die Voraussetzungen kann dieses Projekt in 30 - 45 Minuten abgeschlossen werden, wenn Sie einen Arduino haben. Wenn dies Ihr allererstes Elektronikprojekt ist, empfehle ich Ihnen, ein paar Stunden damit zu verbringen, sich ein paar einführende Videos von Arduino anzusehen, bevor Sie beginnen.

Wenn Sie Verbesserungen oder Hacks vornehmen, hinterlassen Sie bitte einen Kommentar und lassen Sie mich wissen, wie es gelaufen ist. Ich bin wirklich daran interessiert zu sehen, welche Arten von Countdown-Designs Sie erstellen oder wie Sie andere Virtual Shields-Funktionen in Ihr Projekt integrieren.

Hier sind einige Online-Ressourcen, die ich während dieses Projekts sehr hilfreich fand:

  • Windows On Devices von Microsoft bietet eine sehr gute Schritt-für-Schritt-Anleitung für die ersten Schritte mit Windows Virtual Shields für Arduino.
  • Der Neopixel Uberguide von Adafruit bietet viele Details zur Arbeit mit der LED-Matrix.
  • Nulsoms LED-Matrix-Bibliothek für Arduino funktioniert auch mit dieser Hardware.
  • Es gibt unzählige Videos auf YouTube, die Ihnen den Einstieg in Arduino erleichtern, einschließlich der Installation der Arduino-IDE und des Anschlusses des Mikrocontrollers an Ihren PC. Ich kann die Tutorial-Reihe von Jeremy Blum für Arduino nur wärmstens empfehlen.

Voraussetzungen

  1. Richten Sie Ihr Arduino für die Windows Virtual Shields ein (Anweisungen hier).
  2. Richten Sie Ihr Windows-Telefon und Ihren PC für die Windows Virtual Shields ein (Anweisungen hier).

Hinweis:Es dauert 2-3 Stunden, bis die Voraussetzungen erfüllt sind, wenn Sie Windows10 und Visual Studio 2015 noch nicht eingerichtet haben, die meiste Zeit jedoch unbeaufsichtigt ist.

Was Sie brauchen

Teile:

  1. Arduino Uno und Standard-A/B-USB-Kabel
  2. Neopixel 8x8 RGB-LED-Matrix
  3. Bluetooth-Modul
  4. Piezo-Summer
  5. Überbrückungskabel männlich-männlich und männlich-weiblich
  6. Mini-Breadboard
  7. Lumina 635 (oder ein anderes mit Windows Phone 10 kompatibles Gerät)
  8. Optional:rechtwinkliger Header – männlich oder weiblich
  9. Optional:tragbares 5-V-Akkuladegerät

Tools:

  1. Lötkolben und Lot

Projektanleitung

Schritt 1:Verbinden Sie die LED-Matrix mit dem Arduino

Zeit: 15 Minuten

Teile: Arduino Uno, Neopixel-8x8-RGB-LED-Matrix, 3-Pin-Header, Überbrückungskabel, Mini-Breadboard

Tools: Lötkolben, Lötzinn


Ich habe ein paar verschiedene LED-Matrizen ausprobiert, aber ich hatte Schwierigkeiten, einige der Schildtypen für dieses Projekt zu bekommen. Sie würden von selbst gut funktionieren, aber ich konnte sie nicht zum Laufen bringen, als ich Bluetooth anschloss. Abgesehen von den physischen Problemen - die Abschirmungen nahmen alle Pins ein - gab es auch technische - wahrscheinlich ein Konflikt mit D0 und D1 (Arduinos RX- und TX-Pins). Also habe ich es mit der Neopixel-Matrix versucht. Es funktionierte perfekt:nur ein Steuerpin war erforderlich und keine RX/TX-Konflikte.

Bevor ich die LED-Matrix mit dem Arduino verdrahte, musste ich einen dreipoligen Header an die LED-Matrix anlöten. Die Wahl zwischen geraden Headern oder 90-Grad-Headern hängt wirklich davon ab, wie Sie die LED-Matrix montieren. Und bei Stecker- und Buchsenleisten kommt es wirklich darauf an, welche Art von Überbrückungsdraht Sie haben. Oder, wie in meinem Fall, wurde die Kopfballentscheidung vollständig von dem bestimmt, was ich zur Verfügung hatte – 90-Grad-Kopfbälle. Alternativ können Sie die Jumper-Drähte auch direkt an die LED-Matrix anlöten, aber ich mag die Flexibilität, die die Header-Pins bieten.

Zwischen der Neopixel-LED-Matrix und dem Arduino sind nur drei Verbindungen erforderlich. Verwenden Sie zuerst einen männlich-männlichen Jumper, um den 5V-Pin von Arduino mit einer unbenutzten Reihe auf dem Mini-Steckbrett zu verbinden. Verbinden Sie dann einen männlich-weiblichen Jumper von dieser Stromschiene mit dem 5-V-Pin der LED. Verwenden Sie einen anderen männlich-weiblichen Jumper, um die Masse des Adruino mit dem GND der LED zu verbinden. Und um die LED-Matrix zu steuern, verbinden Sie einen männlich-weiblichen Jumper von einem der digitalen Pins des Arduino (außer Pin D0 und D1) mit dem Digitaleingang (DIN) der LED-Matrix. Für mein Projekt habe ich den digitalen Pin 9 verwendet.

Hinweis:Die Reihenfolge der 5V-, GND- und DIN-Pins variiert je nach Hersteller. Überprüfen Sie daher die Etiketten auf der LED-Matrix, bevor Sie Ihre Drähte anschließen.

Schritt 2:Testen Sie die LED-Matrix

Zeit: 5 Minuten

Teile: N/A

Tools: N/A

Fast alle LED-Matrizen werden mit einer Bibliothek geliefert, damit Sie schnell einsatzbereit sind. Die Adafruit-Matrix war keine Ausnahme, da sie mit einer eigenen Bibliothek geliefert wird. Ich bevorzuge jedoch die von Nulsom bereitgestellte Bibliothek. Ich habe noch nicht unter die Decke geschaut, um zu sehen, was die Unterschiede sind, aber ich fand, dass das Projekt mit der Nulsom-Bibliothek etwas besser funktionierte - LEDs gingen konsequent aus, als ich die Matrix löschte und der virtuelle Schild funktionierte konsistenter.

Ich habe die Bibliotheksdateien von der Nulsom-Website heruntergeladen und in meinen Arduino\libraries-Ordner kopiert. Dann habe ich die Arduino IDE gestartet, eine der Beispielskizzen geöffnet und die Skizze auf mein Arduino hochgeladen. Ahh, hübsche Lichter!


Schritt 3:Bluetooth-Modul verbinden

Zeit: 5 Minuten

Teile: Bluetooth-Modul, Überbrückungskabel

Tools: N/A

Dies ist das erste Mal, dass ich ein Bluetooth-Modul verwendet habe - es war super einfach und jetzt wird Bluetooth in meinen Projekten weit verbreitet sein. Das BlueSMiRF Silver-Modul, das ich von SparkFun gekauft habe, ist im Wesentlichen ein serieller Kabelersatz. Ich musste einen männlichen Header-Pin anlöten, aber sobald das erledigt war, war ich bereit zu rollen.

Stecken Sie das Bluetooth-Modul in das Steckbrett, um die Verbindungen zu vereinfachen. Um das Modul mit Strom zu versorgen, führen Sie einen Jumper von der in Schritt 1 erstellten Stromschiene zum Vcc-Pin des Moduls. und führen Sie einen männlich-männlichen Jumper vom GND-Pin des Moduls zu einem der GND-Pins des Arduino. Um die serielle Kommunikation herzustellen, verbinden Sie einen männlich-männlichen Jumper vom TX-Pin des Bluetooth-Moduls mit dem RX-Pin des Arduino (digitaler Pin 0) und einen anderen vom RX-Pin des Moduls mit dem TX-Pin des Arduino (digitaler Pin 1).

Hinweis:Sie können keine Skizzen von der Arduino-IDE auf das Arduino hochladen, wenn die TX- und RX-Pins des Bluetooth mit dem Arduino verbunden sind. Trennen Sie sie, wenn Sie eine Skizze hochladen müssen, und verbinden Sie sie erneut, sobald die Skizze erfolgreich hochgeladen wurde.

Schritt 4:Anschließen des Peizo-Summers

Zeit: 5 Minuten

Teile: Peizo-Summer, Überbrückungskabel

Tools: N/A

Der Peizo-Summer hat nur zwei Pins. Setzen Sie den Summer in alle unbenutzten Reihen im Steckbrett ein und verwenden Sie Jumper, um den mit "+" gekennzeichneten Peizo-Pin mit einem digitalen Pin auf dem Arduino (ich habe Pin 3) und den mit "-" gekennzeichneten Pin mit einem GND-Pin auf dem Arduino zu verbinden.

Schritt 5:Laden Sie den Code herunter und stellen Sie ihn bereit

Zeit: 10 Minuten

Teile: N/A

Tools: N/A

Nachdem Sie nun alles verkabelt haben, laden Sie den Code von github herunter und laden Sie ihn in die Arduino IDE auf Ihrem PC. Achten Sie darauf, die TX/RX-Jumperdrähte des Bluetooth-Moduls zu trennen und dann die Skizze hochzuladen. Verbinden Sie die TX/RX-Jumperdrähte wieder mit den digitalen 0- und digitalen 1-Pins des Arduino.

Starten Sie die Virtual Shields-App und koppeln Sie das Telefon mit dem Bluetooth-Modul. Siehe Voraussetzung Nr. 2 oben, wenn Sie Anweisungen benötigen.

Drücken Sie abschließend die Reset-Taste auf Ihrem Arduino, um die Skizze neu zu starten.

Wenn Sie dazu aufgefordert werden, sprechen Sie die Countdown-Zeit in Ihr Windows-Telefon - also eins. Dann beginnen die LEDs ihr Ding zu tun.


Schritt 6:Tragbar machen

Zeit: 5 Minuten

Teile: 5V Akkuladegerät

Tools: N/A

Der Schlüssel zur Portabilität besteht darin, Ihren Countdown-Timer unabhängig von Ihrem PC mit Strom zu versorgen. Sie könnten eine Wandwarze / einen Stecker verwenden, aber dann müssen Sie noch nach einer Steckdose suchen. Ich bevorzuge es, ein tragbares Akkuladegerät zu verwenden, damit der Countdown-Timer überall hin mitgenommen werden kann - auch auf dem Hof.

Laden Sie das Ladegerät mit Ihrem PC oder einer Wandwarze auf, wenn Sie es erhalten. Verbinden Sie dann das USB-Kabel des Arduino mit dem Ladegerät und voila, der Arduino wird mit Strom versorgt und ist tragbar.

Code

Countdown-Timer
https://github.com/peejster/Countdown-Timer

Schaltpläne

countdown_timer.fzz

Herstellungsprozess

  1. Arten und Anwendungen von Titandrähten
  2. 555 Monostabiler Multivibrator
  3. Drähte und Verbindungen
  4. Netzwerke und Busse
  5. Bauen von Arduino-Steckbrettern ohne Überbrückungsdrähte
  6. So erstellen Sie einen Timer in VHDL
  7. Bauanleitung für tragbaren Raspberry Pi (Retropie Handheld) Teil 1
  8. UFO-Angriff!
  9. Was ist ein Watchdog-Timer?
  10. Fahrzeugverkabelung verstehen