Inhaltsverzeichnis:

Arduino gesteuertes Telefondock mit Lampen - Gunook
Arduino gesteuertes Telefondock mit Lampen - Gunook

Video: Arduino gesteuertes Telefondock mit Lampen - Gunook

Video: Arduino gesteuertes Telefondock mit Lampen - Gunook
Video: Ein per Bluetooth gesteuertes Fahrzeug mit Arduino selbst bauen 2024, November
Anonim
Image
Image
Arduino-gesteuertes Telefondock mit Lampen
Arduino-gesteuertes Telefondock mit Lampen
Arduino-gesteuertes Telefondock mit Lampen
Arduino-gesteuertes Telefondock mit Lampen

Die Idee war einfach genug; Erstellen Sie eine Telefonladestation, die eine Lampe nur einschaltet, wenn das Telefon aufgeladen wird. Doch wie so oft können Dinge, die zunächst einfach erscheinen, in der Ausführung etwas komplexer werden. Dies ist die Geschichte, wie ich eine duale Telefonladestation erstellt habe, die meine einfache Aufgabe erfüllt.

Schritt 1: Was ich verwendet habe

Was ich verwendet habe
Was ich verwendet habe
Was ich verwendet habe
Was ich verwendet habe
Was ich verwendet habe
Was ich verwendet habe

Dies ist keineswegs eine vollständige Liste von allem, was ich verwendet habe, aber ich wollte einen Überblick über die wichtigsten Komponenten geben, die ich verwendet habe. Ich habe Amazon-Links für die meisten dieser Komponenten eingefügt. (Beachte, dass ich eine kleine Provision von Amazon bekomme, wenn du diese Links verwendest. Danke!)

Arduino Uno: https://amzn.to/2c2onfeAdafruit 5V DC Stromsensor (x2): https://amzn.to/2citA0S2-Channel Solid State Relay: https://amzn.to/2cmKfkA 4-Port USB Box: https://amzn.to/2cmKfkA 1' Panel Mount USB-Kabel (x2): https://amzn.to/2cmKfkA 6 AB USB-Kabel:

Ich habe auch die folgenden Verbrauchsmaterialien verwendet, die ich im Baumarkt abgeholt habe: 4 "x 4" Kunststoff-Conduit-Boxen (x2) 40-W-Edison-Glühbirnen (x2) GlühbirnenfassungSchienenlichthalterung Verschiedene schwarze Eisenrohre (3/8 Zoll) Verschiedene Messingrohrfittings3 'VerlängerungskabelDrahtmuttern

Schritt 2: Experimentieren, Design & Verdrahtung

Experimentieren, Design & Verdrahtung
Experimentieren, Design & Verdrahtung

Um festzustellen, wann das Telefon aufgeladen wurde, müsste der Stromfluss zum Telefon ständig überwacht werden. Obwohl ich mir sicher bin, dass es Schaltungsdesigns gibt, die Strom messen und ein Relais basierend auf der Stromstärke steuern können, bin ich keineswegs ein Elektroexperte und wollte nicht mit dem Bau einer benutzerdefinierten Schaltung beginnen. Aus Erfahrung wusste ich, dass ein kleiner Mikrocontroller (Arduino) verwendet werden kann, um den Strom zu messen und dann ein Relais zum Ein- und Ausschalten von Lichtern zu steuern. Nachdem ich einen kleinen Gleichstromsensor von Adafruit gefunden hatte, begann ich damit zu experimentieren, ihn an ein USB-Kabel anzuschließen, um den Strom zu messen, der durch ihn fließt, während er ein Telefon auflädt. Ein typisches USB 2.0-Kabel enthält 4 Adern: weiß, schwarz, grün und rot. Da die schwarzen und roten Drähte Strom durch das Kabel führen, kann einer von diesen verwendet werden, um den Stromfluss zu messen - ich habe die roten Drähte verwendet. Ein typischer Stromsensor muss inline mit dem Stromfluss platziert werden (der Strom muss durch den Sensor fließen), und der Adafruit-Sensor ist keine Ausnahme von dieser Regel. Der rote Draht wurde geschnitten, wobei die beiden abgeschnittenen Enden an den beiden Schraubklemmen des Stromsensors befestigt wurden. Der Adafruit-Sensor wurde mit einem Arduino verbunden und ich schrieb einen einfachen Code, um den Stromfluss durch den Sensor zu melden. Dieses einfache Experiment hat mir gezeigt, dass ein aufladendes Telefon zwischen 100 und 400 mA verbraucht. Nachdem das Telefon vollständig aufgeladen war, fiel der Stromfluss unter 100 mA, erreichte jedoch nicht 0.

Mit meinem Experiment, das erfolgreich demonstrierte, dass ich den Stromfluss mit einem Arduino messen konnte, entwarf ich die oben gezeigte Schaltung. Zwei 1-Zoll-USB-Verlängerungskabel für die Panelmontage werden an eine 4-Port-Ladebox angeschlossen. Die Telefonladekabel würden an diese Verlängerungskabel angeschlossen, sodass das System jede Art von USB-Ladekabel aufnehmen kann - und es hoffentlich "zukunftssicher" macht. Die roten Drähte der Verlängerungskabel werden durchtrennt und mit den Stromsensoren verbunden. Die Stromsensoren liefern Informationen an den Arduino, der wiederum ein zweikanaliges Halbleiterrelais steuert. Das Relais wird verwendet, um die 110-V-Stromversorgung der Glühbirnen zu schalten. Die Stromversorgung der USB-Box und der Glühbirnen können miteinander verbunden werden, sodass das System eine einzige Steckdose verwenden kann. Besonders gut gefällt mir, wie der Arduino über einen der zusätzlichen USB-Anschlüsse in der Ladebox mit Strom versorgt werden kann.

Schritt 3: Das Telefondock

Das Telefondock
Das Telefondock

Das Telefondock wurde aus 3/8" schwarzem Rohr gebaut. Ich habe zwei männliche-weibliche Ellbogen, ein T, einen kurzen Abschnitt mit vollem Gewinde und einen runden Flansch verwendet. Für die Messingteile an der Oberseite des Docks habe ich geschnitten ein 1 1/2 "langes Messingrohr in zwei Hälften und eine Hälfte für jedes Teil verwendet. In das T wurde ein kleines Loch gebohrt, das groß genug war, um die Enden der Beleuchtungskabel aufzunehmen. Die Kabel wurden durch die Krümmer geführt und in die Messingrohre JB eingeschweißt. Dies war am Ende viel schwieriger als es scheint, da die Ellbogen innen nicht groß genug waren, um das Lichtkabelende durchzupassen. Am Ende bohrte ich die Innenseiten der Ellbogen auf, bis sie passten.

Wenn ich dieses Dock noch einmal machen müsste, würde ich ihm mehr Unterstützung für das Telefon geben. Wie zu erwarten, können die Blitzkabelenden sehr leicht gebogen werden, wenn das Telefon im Dock überhaupt gedrückt wird. Ich finde es seltsam, dass Apple tatsächlich ein Dock mit einer ähnlichen nicht unterstützten Konfiguration verkauft.

Schritt 4: Die Lampen

Die Lampen
Die Lampen
Die Lampen
Die Lampen

Ich wollte, dass die Lampen ein ähnliches industrielles Aussehen wie das Dock haben. Für die erste Lampe habe ich eine generische Glühbirnenfassung auf einem 3/8 Rohrflansch verwendet. Einige kleine Messingrohre verbinden den Sockel mit der Fassung und ergänzen die Messingakzente auf dem Dock. Eine 40-W-Edison-Glühbirne ist wirklich der Star Ich wollte Edison-Glühbirnen verwenden, da sie perfekt zum Design dieses Docks passen und es Ihnen ermöglichen, eine schöne freiliegende Glühbirne zu schaffen.

Während ich bei Lowe war, fand ich eine Schienenlichthalterung auf der Freigabe, die ich für interessant hielt. Ich drehte die Halterung auf den Kopf und fügte einen Rohrflansch hinzu, um die Basis zu bilden. Die Fassung in der Schienenleuchtenhalterung war nicht daran befestigt, da sie von einer flachen Glühbirne gehalten werden sollte. Da ich eine Edison-Glühbirne verwendete, machte ich eine kleine Aluminiumhalterung, um die Fassung im runden Gehäuse der Schienenlichthalterung zu halten. Kleine Messingknöpfe wurden hinzugefügt, um den Rest des Systems zu ergänzen.

Sobald das Dock und die Lichter fertig waren, wurden sie mattschwarz lackiert - mit Ausnahme der Messingteile.

Schritt 5: Das Arduino-Gehäuse

Das Arduino-Gehäuse
Das Arduino-Gehäuse
Das Arduino-Gehäuse
Das Arduino-Gehäuse
Das Arduino-Gehäuse
Das Arduino-Gehäuse

Ich habe zwei 4 "x 4" PVC-Gehäuse für das Arduino-Gehäuse verwendet. Ich schneide Lüftungsschlitze in eine Seite und die Abdeckung jedes Gehäuses. An der Seite des einen Gehäuses schneide ich zwei rechteckige Löcher für die USB-Kabel für die Panelmontage. Auf beiden Seiten dieser rechteckigen Löcher wurden Löcher mit einem Abstand von 1 1/8" in der Mitte gebohrt und verwendet, um die Kabel am Gehäuse zu befestigen. Eine Seite beider Gehäuse wurde weggeschnitten, so dass die beiden Boxen in ihrem Zustand eine einzige Box bilden würden nebeneinander gestellt. Ein 3/4 "dicker Holzblock wurde verwendet, um die Boxen in dieser nebeneinanderliegenden Konfiguration zu halten und bildet auch eine bequeme Basis für sie zum Sitzen.

Schritt 6: USB-Box anbringen

USB-Box anbringen
USB-Box anbringen

Die erste Komponente, die dem Gehäuse hinzugefügt wird, ist die 4-Port-USB-Ladebox. Ich habe das einfach mit doppelseitigem Klebeband fixiert.

Schritt 7: Arduino im Gehäuse montieren

Arduino im Gehäuse montieren
Arduino im Gehäuse montieren
Arduino im Gehäuse montieren
Arduino im Gehäuse montieren
Arduino im Gehäuse montieren
Arduino im Gehäuse montieren

Ich verwende gerne Frontplatten-Abstandshalter für elektrische Boxen, um elektronische Komponenten zu montieren, da sie aus Kunststoff bestehen und als Niederhalter oder Abstandshalter verwendet werden können. Ich schneide sie einfach mit meinem Messer auf und drücke dann Schrauben durch. Der Arduino wurde mit kleinen Flachkopfschrauben in die eine Gehäusebox montiert, wobei die Frontplatten-Abstandshalter zwischen dem Arduino und der Box montiert waren.

Sobald der Arduino montiert war, wurde ein kurzes (6 ) USB-Kabel vom Typ AB zwischen dem USB-Anschluss des Arduino und dem nächsten Anschluss der Ladebox angeschlossen. Dies war eine wirklich enge Passform für das Kabel und ich musste tatsächlich zurückschneiden die biegsamen Plastikstücke, die den Draht am Ende des Kabels umgeben, damit es passt.

Schritt 8: Verdrahtung und Montage des Relais

Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais
Verdrahtung und Montage des Relais

Die Kabel zu den Lampen wurden durch Löcher im Gehäuse geführt. Ein Draht von jedem Kabel wurde an die Ausgänge (die geschaltete 120-V-Seite) beider Kanäle des Halbleiterrelais angeschlossen. Kurze (4 ) Drahtabschnitte wurden an die verbleibenden Schraubklemmen neben den Anschlussstellen dieser Lampendrähte angeschlossen. Diese Drähte werden verwendet, um die 120-V-Seite des Relais mit Strom zu versorgen.

Auf der DC-Seite des Relais wurden 4 Drähte entsprechend der gezeigten Konfiguration angeschlossen. Zwei der Drähte liefern die für den Betrieb des Relais erforderliche + und - Gleichspannung, während die verbleibenden zwei Drähte die digitalen Signale tragen, die den Kanälen das Ein- oder Ausschalten mitteilen.

Diese 4 Drähte wurden dann wie folgt an den Arduino angeschlossen: Der rote Draht (DC+) ist mit dem 5V-Pin verbunden. Der schwarze Draht (DC-) ist mit dem GND-Pin verbunden. Der braune Draht (CH1) ist mit dem Digital verbunden Ausgangspin 7Das orangefarbene Kabel (CH2) ist mit dem digitalen Ausgangspin 8. verbunden

Nachdem alle Drähte mit dem Relais verbunden waren, wurde es mit kleinen Flachkopfschrauben im Gehäuse montiert.

Schritt 9: Verdrahtung und Montage der Stromsensoren

Verdrahtung und Montage der Stromsensoren
Verdrahtung und Montage der Stromsensoren
Verdrahtung und Montage der Stromsensoren
Verdrahtung und Montage der Stromsensoren
Verdrahtung und Montage der Stromsensoren
Verdrahtung und Montage der Stromsensoren

Kommunikations- und Stromkabel wurden für die beiden Stromsensoren erstellt, indem die beiden Kabelsätze, die von den Sensoren zum Arduino führen, gespleißt wurden. Wie zuvor werden die roten und schwarzen Drähte verwendet, um die Sensoren mit Strom zu versorgen. Diese Drähte sind mit den Pins Vin (roter Draht) und GND (schwarzer Draht) des Arduino verbunden. Überraschenderweise können sogar die Kommunikationsdrähte (die SDA- und SDL-Drähte) zusammengespleißt werden. Dies liegt daran, dass den Stromsensoren von Adafruit jeweils eine eindeutige Adresse zugewiesen werden kann, je nachdem, wie ihre Adressstifte miteinander verlötet sind. Wenn die Platine keinen der Adresspins zusammengelötet hat, wird die Platine als Platine 0x40 adressiert und wird als solche im Arduino-Code referenziert. Durch Zusammenlöten der A0-Adressstifte, wie in der Abbildung zu sehen, wird die Adresse der Platine 0x41. Wenn nur die A1-Adresspins angeschlossen sind, wäre die Platine 0x44, und wenn sowohl die A0- als auch die A1-Pins angeschlossen wären, wäre die Adresse 0x45. Da wir nur zwei Stromsensoren verwenden, musste ich nur die Adresspins auf Platine 1 wie abgebildet verlöten.

Nachdem die Platinen richtig adressiert waren, wurden sie mit kleinen Messingschrauben am Gehäuse befestigt.

Die SDA (blau) und SCL (gelb) Drähte von den Sensoren sind mit den SDA- und SCL-Pins des Arduino verbunden. Diese Pins wurden auf meinem Arduino nicht beschriftet, aber sie sind die letzten beiden Pins nach dem AREF-Pin auf der digitalen Seite der Platine.

Schritt 10: Schließen Sie die USB-Verlängerungskabel an

Schließen Sie die USB-Verlängerungskabel an
Schließen Sie die USB-Verlängerungskabel an
Schließen Sie die USB-Verlängerungskabel an
Schließen Sie die USB-Verlängerungskabel an

Wie bereits erwähnt, müssen die USB-Verlängerungskabel Strom durch die Stromsensoren leiten. Dies wurde durch das Spleißen von Drähten in die roten Drähte der Kabel erleichtert. Sobald die USB-Kabel im Gehäuse montiert sind, werden diese Drähte von den Spleißen mit den Stromsensoren verbunden. Für jedes USB-Kabel fließt der durch dieses fließende Strom durch diese Drähte, durch den Sensor und dann zurück, um durch das Kabel zum aufladenden Telefon fortzufahren. Die männlichen Enden der USB-Kabel wurden in zwei der offenen Ports der USB-Ladebox gesteckt.

Schritt 11: Schließen Sie die Stromversorgung an

Verbinden Sie die Stromversorgung
Verbinden Sie die Stromversorgung

Der letzte Schritt in der Elektronikbox besteht darin, das Netzkabel an die USB-Box und die Lampen (auch bekannt als die 120-V-Seite des Relais) anzuschließen. Die schwarzen Drähte, die direkt zu den Lampen führen, werden zusammen mit dem braunen Draht der Ladebox an den einen Draht des Netzkabels angeschlossen. Das Stromkabel zur Ladebox wurde einfach abgeschnitten, wobei die beiden Drähte im Inneren (das sind die blauen und braunen Drähte) abisoliert wurden. Schließlich werden die beiden weißen Drähte des Relais zusammen mit dem blauen Draht der USB-Ladebox mit dem anderen Draht des Netzkabels verschraubt.

Schritt 12: Das fertige System

Das fertige System
Das fertige System
Das fertige System
Das fertige System

Sobald die Box komplett montiert ist, können die Gehäusedeckel ausgetauscht werden. Jetzt, da die Hardware für dieses System fertig ist, ist es an der Zeit, sich der Software zuzuwenden.

Schritt 13: Der Arduino-Code

Die Entwicklung des Arduino-Codes war ziemlich einfach, obwohl einige Tests erforderlich waren, um ihn richtig hinzubekommen. In seiner einfachsten Form sendet der Code ein Signal, um den entsprechenden Relaiskanal zu versorgen, wenn er einen Stromfluss von mehr als oder gleich 90 mA liest. Obwohl dieser einfache Code ein guter Ausgangspunkt war, laden Mobiltelefone nicht zu 100% auf und ziehen dann nur sehr wenig Strom. Vielmehr stellte ich fest, dass das Telefon nach dem Aufladen alle paar Minuten für kurze Zeit mehrere hundert mA verbrauchte. Es ist, als wäre das Telefon ein undichter Eimer, der alle paar Minuten aufgefüllt werden muss.

Um dieses Problem zu lösen, habe ich eine Strategie entwickelt, bei der sich jeder Kanal in einem von drei Zuständen befinden kann. Status 0 ist definiert, wenn das Telefon aus der Ladestation entfernt wurde. In der Praxis stellte ich fest, dass beim Entfernen des Telefons praktisch kein Strom floss, aber ich habe die obere Stromgrenze dieses Zustands auf 10 mA eingestellt. Zustand 1 ist der Zustand, in dem das Telefon vollständig aufgeladen ist, sich aber noch im Dock befindet. Wenn der Stromfluss unter 90 mA fällt und über 10 mA liegt, befindet sich das System im Zustand 1. Zustand 2 ist der Ladezustand, bei dem das Telefon 90 mA oder mehr verbraucht.

Wenn das Telefon auf die Dockingstation gelegt wird, wird Status 2 eingeleitet und während des Ladevorgangs fortgesetzt. Sobald der Ladevorgang abgeschlossen ist und der Strom unter 90 mA fällt, befindet sich das System im Zustand 1. An dieser Stelle wurde eine bedingte Anweisung gemacht, damit das System nicht direkt von Zustand 1 in Zustand 2 übergehen kann. Dies hält das System in Zustand 1, bis das Telefon entfernt, woraufhin es in den Zustand 0 übergeht. Da das System von Zustand 0 zu Zustand 2 übergehen kann, wird Zustand 2 wieder gestartet, wenn das Telefon wieder auf das Ladegerät gelegt wird und der Stromfluss über 90 mA steigt. Erst wenn sich das System im Zustand 2 befindet, wird das Signal an das Relais gesendet, um das Licht einzuschalten.

Ein weiteres Problem, auf das ich stieß, war, dass der Strom manchmal kurz unter 90 mA fiel, bevor das Telefon vollständig aufgeladen war. Dies würde das System in den Zustand 1 versetzen, bevor es sollte. Um dies zu beheben, mittele ich die Stromdaten über 10 Sekunden und nur wenn der durchschnittliche Stromwert unter 90 mA fällt, geht das System in den Zustand 1 über.

Wenn Sie an diesem Code interessiert sind, habe ich eine Arduino.ino-Datei mit einigen weiteren Beschreibungen angehängt. Insgesamt funktioniert es ziemlich gut, aber ich habe festgestellt, dass das System manchmal in den Zustand 0 übergeht, wenn das Telefon noch angeschlossen und vollständig aufgeladen ist. Das bedeutet, dass das Licht von Zeit zu Zeit für einige Sekunden aufleuchtet (wenn es in den Zustand 2 übergeht) und dann erlischt. Etwas, an dem ich für die Zukunft arbeiten kann, denke ich.

Schritt 14: Das fertige System

Das fertige System
Das fertige System
Das fertige System
Das fertige System
Das fertige System
Das fertige System
Das fertige System
Das fertige System

Ich habe die Ladestation in unserem Bücherregal installiert, wobei sich die Arduino-Box hinter einigen Büchern befindet. Wenn man nur einen Blick darauf werfen würde, würde man die Arbeit, die dahinter steckte, nie erkennen – und selbst wenn man es in Betrieb sieht, wird es nicht gerecht. Andererseits macht es mich glücklich zu sehen, wie die Lichter an- und ausgehen, und ich verlasse mich sogar darauf, dass sie sehen, ob das Telefon aufgeladen wird.

Empfohlen: