Inhaltsverzeichnis:
- Schritt 1: Unterschied zwischen anderen POV-Geräten auf dem Markt
- Schritt 2: Technische Beschreibung
- Schritt 3: Den Drehwinkel verfolgen
- Schritt 4: Fernzugriff
- Schritt 5: PC-Anwendung
- Schritt 6: Schriftart
- Schritt 7: Programmiervorrichtung
- Schritt 8: Fazit
Video: Persistenz von Vision Fidget Spinner - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:16
Dies ist ein Zappel-Spinner, der den Persistence of Vision-Effekt verwendet, der eine optische Täuschung ist, bei der mehrere diskrete Bilder im menschlichen Geist zu einem einzigen Bild verschmelzen.
Der Text oder die Grafiken können über eine Bluetooth Low Energy-Verbindung mit einer PC-Anwendung, die ich in LabVIEW programmiert habe, oder mit einer frei verfügbaren Smartphone-BLE-App geändert werden.
Alle Dateien sind verfügbar. Schaltplan und Firmware sind diesem Instructable beigefügt. Gerber-Dateien sind unter diesem Link verfügbar, da ich hier keine ZIP-Dateien hochladen kann: Gerbers
Schritt 1: Unterschied zwischen anderen POV-Geräten auf dem Markt
Eine der wichtigsten Eigenschaften ist, dass die angezeigte Grafik dank ihrer innovativen Lösung zur Verfolgung des Drehwinkels unabhängig von der Rotationsgeschwindigkeit ist. Das bedeutet, dass die angezeigte Grafik sowohl bei höheren als auch bei niedrigeren Drehzahlen gleich wahrgenommen wird (z. B. wenn der Zappelspinner in der Hand langsamer wird). Mehr dazu in Schritt 3.
Dies ist auch einer der Hauptunterschiede zwischen verschiedenen auf dem Markt befindlichen POV-Geräten (POV-Uhren usw.), die eine konstante Rotationsgeschwindigkeit haben müssen, damit das Bild korrekt angezeigt wird. Es ist auch erwähnenswert, dass alle Komponenten so ausgewählt wurden, dass sie einen möglichst geringen Energieverbrauch haben, um die Batterielebensdauer zu verlängern
Schritt 2: Technische Beschreibung
Es verwendet einen verbesserten Microchip PIC 16F1619 Mikrocontroller als Kern. Die MCU verfügt über ein eingebautes Angular Timer-Peripheriegerät, das den omnipolaren Hall-Sensor DRV5033 und einen Magneten verwendet, um den aktuellen Drehwinkel zu verfolgen.
Die Darstellung der Grafik erfolgt über insgesamt 32 LEDs, 16 grüne und 16 rote Leuchtdioden (Nennstrom 2mA). Die Dioden werden von zwei 16-Kanal-Konstantstrom-Schieberegistertreibern TLC59282 angesteuert, die in Daisy Chain geschaltet sind. Um einen Fernzugriff auf das Gerät zu haben, gibt es ein Bluetooth Low Energy Modul RN4871, das über eine UART-Schnittstelle mit dem Mikrocontroller kommuniziert. Auf das Gerät kann entweder von einem PC oder einem Smartphone aus zugegriffen werden. Das Gerät wird über einen kapazitiven Touch-Button eingeschaltet, der unter der Lötstoppmaske auf der Leiterplatte eingebettet ist. Der Ausgang des kapazitiven IC PCF8883 wird dem ODER-Logikgatter BU4S71G2 zugeführt. Der andere Eingang zu den ODER-Gattern ist ein Signal von der MCU. Der Ausgang von ODER-Gattern ist mit dem Enable-Pin eines Abwärtswandlers TPS62745 verbunden. Durch die Verwendung dieses Setups kann ich das Gerät mit nur einer Berührungstaste ein- und ausschalten. Über die kapazitive Taste kann auch zwischen verschiedenen Betriebsarten gewechselt oder beispielsweise das Bluetooth-Radio nur bei Bedarf eingeschaltet werden, um Energie zu sparen.
Der Abwärtswandler TPS62745 wandelt 6V Nennspannung von den Batterien in stabile 3,3V um. Ich habe mich für diesen Konverter entschieden, weil er eine hohe Effizienz bei leichten Lasten, einen geringen Ruhestrom, eine winzige 4,7-uH-Spule hat, einen integrierten Eingangsspannungsschalter hat, mit dem ich die Kapazität der Batterie bei minimalem Stromverbrauch messe und die Ausgangsspannung vom Benutzer ist. wählbar durch vier Eingänge anstelle von Rückkopplungswiderständen (reduziert Stückliste). Das Gerät geht nach 5 Minuten Inaktivität automatisch in den Ruhezustand. Der Stromverbrauch im Schlaf beträgt weniger als 7uA.
Die Batterien befinden sich wie auf dem Foto gezeigt auf der Rückseite.
Schritt 3: Den Drehwinkel verfolgen
Der Drehwinkel wird „per Hardware“eher per Software nachgeführt, so dass der CPU viel mehr Zeit für andere Aufgaben zur Verfügung steht. Dafür habe ich die Angular Timer Peripherie verwendet, die in den verwendeten Mikrocontroller PIC 16F1619 eingebaut ist.
Der Eingang zum Winkeltimer ist ein Signal vom Hall-Sensor DRV5033. Der Hall-Sensor erzeugt jedes Mal einen Impuls, wenn ein Magnet an ihm vorbeigeht. Der Hall-Sensor befindet sich am sich drehenden Teil des Geräts, während sich der Magnet an einem statischen Teil befindet, für den der Benutzer das Gerät hält. Da ich nur einen Magneten verwendet habe, bedeutet dies, dass der Hall-Sensor einen Impuls erzeugt, der sich alle 360 ° wiederholt. Gleichzeitig erzeugt der Angular Timer 180 Impulse pro Umdrehung, wobei jeder Impuls 2° Drehung entspricht. Ich wähle beispielsweise 180 Impulse und nicht 360°, weil ich 2° als den perfekten Abstand zwischen den beiden Spalten eines gedruckten Zeichens gefunden habe. Der Winkel-Timer übernimmt all diese Berechnungen automatisch und passt sich automatisch an, wenn sich die Zeit zwischen den beiden Sensorimpulsen aufgrund der Änderung der Rotationsgeschwindigkeit ändert. Die Position des Magneten und des Hallsensors ist auf dem beigefügten Foto dargestellt.
Schritt 4: Fernzugriff
Ich wollte eine Möglichkeit haben, den angezeigten Text dynamisch zu ändern und nicht nur durch harte Codierung in den Code. Ich habe mich für BLE entschieden, weil es sehr wenig Energie verbraucht und der verwendete Chip RN4871 nur 9x11,5 mm groß ist.
Über den BT-Link ist es möglich, den angezeigten Text und seine Farbe - rot oder grün - zu ändern. Der Batteriestand kann auch überwacht werden, um zu wissen, wann die Batterien ausgetauscht werden müssen. Das Gerät kann über eine in der LabVIEW-Grafikprogrammierumgebung programmierte Computeranwendung oder über eine frei verfügbare Smartphone-BLE-Anwendung gesteuert werden, die die Fähigkeit hat, direkt in die ausgewählten BLE-Eigenschaften eines angeschlossenen Geräts zu schreiben. Um die Informationen von einem PC/Smartphone an das Gerät zu senden, habe ich einen Dienst mit drei Merkmalen verwendet, die jeweils durch ein Handle gekennzeichnet sind.
Schritt 5: PC-Anwendung
In der oberen linken Ecke befinden sich Bedienelemente zum Starten der BLE-Serveranwendung von National Instruments. Dabei handelt es sich um eine Befehlszeilenanwendung von NI, die eine Brücke zwischen dem BLE-Modul auf einem Computer und LabVIEW bildet. Es verwendet das HTTP-Protokoll, um zu kommunizieren. Der Grund für die Verwendung dieser Anwendung ist, dass LabVIEW nur native Unterstützung für Bluetooth Classic und nicht für BLE bietet.
Bei erfolgreicher Verbindung wird rechts die MAC-Adresse eines angeschlossenen Geräts angezeigt und dieser Teil ist nicht mehr ausgegraut. Dort können wir die bewegte Grafik und ihre Farbe einstellen oder einfach ein Muster senden, um die LEDs ein- oder auszuschalten, wenn sich das Gerät nicht dreht, das habe ich zu Testzwecken verwendet.
Schritt 6: Schriftart
Die Schriftart des englischen Alphabets wurde mit einer frei verfügbaren Software „The Dot Factory“generiert, aber ich musste ein paar Änderungen vornehmen, bevor ich sie auf den Mikrocontroller hochladen konnte.
Der Grund dafür ist das PCB-Layout, das "nicht in Ordnung" ist, dh der Ausgang 0 des LED-Treibers ist möglicherweise nicht mit der LED 0 auf der Platine verbunden, OUT 1 ist nicht mit LED 1 sondern beispielsweise mit LED15 verbunden, und usw.. Der andere Grund ist, dass die Software nur 2x8-Bit-Schriften generieren darf, aber das Gerät hat 16 LEDs für jede Farbe, also brauchte ich eine 16-Bit-High-Schrift. Also musste ich eine Software machen, die ein paar Bits verschiebt, um das PCB-Layout zu kompensieren und kombiniere sie zu einem 16-Bit-Wert. Daher habe ich in LabVIEW eine eigene Anwendung entwickelt, die die in „The Dot Factory“generierte Schriftart als Input nimmt und projektspezifisch umwandelt. Da die Layouts der roten und grünen LED-Platinen unterschiedlich sind, musste ich zwei Schriftarten verwenden. Die Ausgabe für die grüne Schrift ist im Bild unten dargestellt.
Schritt 7: Programmiervorrichtung
Auf dem Bild sehen Sie die Programmierlehre, mit der das Gerät programmiert wurde.
Da ich nach jeder Programmierung das Gerät aufnehmen und drehen muss, um die Änderungen zu sehen, wollte ich keine Standard-Programmierköpfe verwenden oder nur die Programmierdrähte löten. Ich habe Pogo-Pins verwendet, die eine kleine Feder im Inneren haben, damit sie sehr eng an den Durchkontaktierungen auf der Platine anliegen. Durch die Verwendung dieses Setups kann ich den Mikrocontroller sehr schnell programmieren und muss mich nicht um das Programmieren von Drähten oder das übrig gebliebene Lötmittel nach dem Entlöten dieser Drähte kümmern.
Schritt 8: Fazit
Zusammenfassend möchte ich darauf hinweisen, dass ich durch die Verwendung des Angul Timer-Peripheriegeräts erfolgreich ein POV-Gerät erreicht habe, das nicht von der Rotationsgeschwindigkeit abhängt, sodass die Qualität der angezeigten Grafiken sowohl bei höheren als auch bei niedrigeren Geschwindigkeiten gleich bleibt.
Durch sorgfältiges Design ist es gelungen, eine Niedrigenergielösung zu implementieren, die die Lebensdauer der Batterien verlängert. Was die Nachteile dieses Projekts betrifft, möchte ich darauf hinweisen, dass es keine Möglichkeit gibt, die verbrauchten Batterien aufzuladen, so dass von Zeit zu Zeit ein Batteriewechsel erforderlich ist. No-Name-Batterien aus dem örtlichen Handel hielten bei täglicher Nutzung etwa 1 Monat. Verwendung: Dieses Gerät kann zu verschiedenen Werbezwecken oder als Lehrmittel zB im Elektrotechnik- oder Physikunterricht eingesetzt werden. Es kann auch als therapeutisches Hilfsmittel verwendet werden, um die Aufmerksamkeit von Menschen mit Aufmerksamkeits-Defizit-Hyperaktivitäts-Störung (ADHS) oder beruhigenden Angstsymptomen zu erhöhen.
Erster Preis bei der PCB Design Challenge
Empfohlen:
Löten von oberflächenmontierbaren Komponenten - Lötgrundlagen: 9 Schritte (mit Bildern)
Löten von oberflächenmontierbaren Komponenten | Lötgrundlagen: Bisher habe ich in meiner Lötgrundlagen-Serie genug Grundlagen zum Löten besprochen, damit Sie mit dem Üben beginnen können. In diesem Instructable, was ich besprechen werde, ist etwas fortgeschrittener, aber es sind einige der Grundlagen zum Löten von Surface Mount Compo
Generator: Fidget Spinner Generator 3 in 1: 3 Schritten
Generator: Fidget Spinner Generator 3 in 1: Fidget Spinner Generator 3 in 1 - jetzt können Sie Ihren Fidget Spinner Generator konfigurieren (drei Möglichkeiten) Der Mikrogenerator verwendet 3 Neodym-Kugeln und 3 Neodym-Scheiben (led und kleine Spule Eisen weniger) AUF INSTAGRAM und sehen Sie eine einfache elektrische
Wie man einen Fidget Spinner macht – wikiHow
Wie man einen Fidget Spinner macht: Ich habe mich dafür entschieden, weil… Nun… ich mag sie! Es macht viel Spaß, mit meinem Fahrrad zu fahren (ohne Hände) und im Kreis zu fahren, während ich meinen Zappelspinner drehe. Ich nenne sie kurz "fisp". Fi steht für Zappeln und sp für Spinner. Ich hoffe du e
MyPhotometrics - Gandalf: Leistungsmessgerät Zur Messung Von Lasern Im Sichtbaren Bereich Auf Basis Von "Sauron": 8 Schritte
MyPhotometrics - Gandalf: Leistungsmessgerät Zur Messung Von Lasern Im Sichtbaren Bereich Auf Basis Von "Sauron": Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz. Eine für Menschen lesbare Zusammenfassung dieser Lizenz findet sich hier.Was ist Gandalf?Gandalf ist eine Stand-A
Auspacken von Jetson Nano & ein Schnellstart für die Two Vision Demo – wikiHow
Auspacken von Jetson Nano & ein Quick Start-Up für Two Vision Demo: ZusammenfassungWie Sie wissen, ist Jetson Nano jetzt ein Starprodukt. Und es kann neuronale Netzwerktechnologie umfassend für eingebettete Systeme bereitstellen. Hier ist ein Unboxing-Artikel mit Details zum Produkt, dem Startvorgang und zwei visuellen Demos … Wortzahl: 800