Inhaltsverzeichnis:

UVLamp - SRO2003 - Gunook
UVLamp - SRO2003 - Gunook

Video: UVLamp - SRO2003 - Gunook

Video: UVLamp - SRO2003 - Gunook
Video: UVLamp - SRO2003 2024, November
Anonim
UV-Lampe - SRO2003
UV-Lampe - SRO2003
UV-Lampe - SRO2003
UV-Lampe - SRO2003
UV-Lampe - SRO2003
UV-Lampe - SRO2003
UV-Lampe - SRO2003
UV-Lampe - SRO2003

Hi!

Heute präsentiere ich Ihnen die Realisierung einer UV-LED-Lampe. Meine Frau ist Schmuckdesignerin aus Fimo und verwendet oft Harz, um ihre Kreationen zu machen. Im Prinzip verwendet es ein klassisches Harz, das einfach an der frischen Luft polymerisiert, es funktioniert gut, aber es ist lang genug, um fest zu werden (ca. 2 Tage). Doch kürzlich entdeckte sie ein Harz, das dank UV-Licht polymerisiert, es reicht aus, das beharzte Objekt kurzzeitig einer UV-Strahlung auszusetzen, um das Harz fest zu machen. Als sie das Harz bestellte, zögerte sie, eine Lampe zu kaufen (es kostet nicht viel…), aber ich hörte sofort auf und sagte: ICH HABE UV-LEDs! ICH WEISS NICHT, WAS MAN TUN soll, ICH KANN DEINE LAMPE MACHEN!!! (ja, ich reagiere manchmal etwas zu schnell, wenn es um Elektronik geht…;))

Und so versuche ich hier, eine Lampe aus dem zu machen, was ich in meinen Schubladenböden habe …

Schritt 1: Pflichten

- Das von der Lampe abgegebene Licht sollte möglichst homogen sein, die Lampe sollte das gesamte darunter zu platzierende Objekt ausleuchten.

- Die Lampe muss eine einstellbare Countdown-Zeit von mindestens 1 Minute 30 Sekunden haben

- Die Lampe sollte groß genug sein, um Gegenstände bis zu 6 cm Durchmesser abzudecken, aber nicht zu sperrig sein.

- Die Lampe muss leicht beweglich sein.

- Die Lampe muss von einer "sicheren" Stromquelle (Batterie/Adapter) gespeist werden

Schritt 2: Werkzeuge und Elektronikkomponenten

Werkzeuge und elektronische Komponenten
Werkzeuge und elektronische Komponenten
Werkzeuge und Elektronikkomponenten
Werkzeuge und Elektronikkomponenten
Werkzeuge und elektronische Komponenten
Werkzeuge und elektronische Komponenten

Elektronikkomponenten:

- 1 Mikrochip PIC 16F628A

- 2 momentane Schaltknöpfe

- 2 Transistoren BS170

- 1 Transistor 2N2222

- 2-stelliges numerisches Display

- 1 rote LED 5mm

- 17 UV-LED 5mm

- 8 Widerstände 150 Ohm

- 17 Widerstände 68 Ohm

- 2 Widerstände 10 Kohm

- 1 Widerstand 220 Ohm

- 1 Summer

- 2 Leiterplatten

- Wickeldraht (zB: 30 AWG)

Andere Komponenten:

- 8 Distanzstücke

- einige Schrauben

- 1 PVC-Rohrkappe (100mm)

- 1 PVC-Rohrmanschette (100mm)

- Schrumpfschläuche

Werkzeuge:

- ein Bohrer

- Lötkolben- Schweißdraht

- ein Programmierer, um den Code in einen Microchip 16F628 (z. B. PICkit 2) zu injizieren

Ich empfehle Ihnen, Microchip MPLAB IDE (Freeware) zu verwenden, wenn Sie den Code ändern möchten, aber Sie benötigen auch den CCS-Compiler (Shareware). Sie können auch einen anderen Compiler verwenden, benötigen jedoch viele Änderungen im Programm. Aber ich werde Ihnen die zur Verfügung stellen. HEX-Datei, damit Sie sie direkt in den Mikrocontroller injizieren können.

Schritt 3: Schaltplan

Schaltplan
Schaltplan

Hier ist der mit CADENCE Capture CIS Lite erstellte Schaltplan. Erläuterung der Rolle der Komponenten:

- 16F628A: Mikrocontroller, der die Ein-/Ausgänge und die Zeit für den Countdown verwaltet

- SW1: Timer-Einstellungstaste - SW2: Starttaste

- FND1 und FND2: Ziffernanzeigen zur Anzeige der Countdown-Zeit

- U1 und U2: Leistungstransistoren für digitale Ziffernanzeigen (Multiplexing)

- Q1: Leistungstransistor zum Einschalten der UV-LEDs

- D2 bis D18: UV-LEDs

- D1: Status-LED, leuchtet, wenn die UV-LEDs eingeschaltet sind

- LS1: Summer, der einen Ton ausgibt, wenn der Countdown abgelaufen ist

Schritt 4: Berechnungen und Prototyping auf Breadboard

Berechnungen und Prototyping auf Breadboard
Berechnungen und Prototyping auf Breadboard
Berechnungen und Prototyping auf Breadboard
Berechnungen und Prototyping auf Breadboard
Berechnungen und Prototyping auf Breadboard
Berechnungen und Prototyping auf Breadboard

Lassen Sie uns die Komponenten nach obigem Schema auf einem Steckbrett zusammenbauen und den Mikrocontroller programmieren!

Ich habe das System in mehrere Teile geteilt, bevor ich das Ganze zusammengebaut habe:- ein Teil für UV-LEDs

- ein Teil für die Displayverwaltung

- ein Teil für die Verwaltung von Drucktasten und Licht-/Tonanzeigen

Für jedes Teil habe ich die Werte der verschiedenen Komponenten berechnet und dann deren korrekte Funktion auf dem Steckbrett überprüft.

Der UV-LEDs-Teil: Die LEDs sind über die Widerstände mit Vcc (+5V) an ihren Anoden und über den Transistor Q1 (2N2222) an ihren Kathoden mit GND verbunden.

Für diesen Teil ist es lediglich notwendig, den Basiswiderstand zu berechnen, der benötigt wird, damit der Transistor einen ausreichenden Strom hat, um ihn richtig zu sättigen. Ich entschied mich, die UV-LEDs für jede von ihnen mit einem Strom von 20 mA zu versorgen. Es gibt 17 LEDs, so dass ein Gesamtstrom von 17 * 20 mA = 340 mA den Transistor von seinem Kollektor zu seinem Emitter durchquert.

Hier sind die verschiedenen nützlichen Werte aus der technischen Dokumentation, um die Berechnungen durchzuführen: Betamin=30 Vcesat= 1V (ungefähr…) Vbesat=0.6V

Wenn wir den Wert des Stroms am Kollektor des Transistors und des Betamin-Transistors kennen, können wir daraus den minimalen Strom ableiten, der an der Basis des Transistors zu haben ist, damit er gesättigt ist: Ibmin=Ic/Betamin Ibmin=340mA/30 Ibmin= 11,33mA

Wir nehmen einen Koeffizienten K=2, um sicherzustellen, dass der Transistor gesättigt ist:

Ibsat=Ibmin * 2

Ibsat= 22.33mA

Lassen Sie uns nun den Basiswiderstandswert für den Transistor berechnen:

Rb=(Vcc-Vbesat)/Ibsat

Rb=(5-0,6)/22,33mA

Rb=200 Ohm

Ich wähle einen Standardwert aus der E12-Serie: Rb=220 OhmIm Prinzip hätte ich einen Widerstand mit einem normalisierten Wert gleich oder niedriger als 200 Ohm wählen sollen, aber ich hatte nicht mehr viel Auswahl bei den Werten für die Widerstände, also habe ich den nächsten genommen Wert.

Der Anzeigeverwaltungsteil:

Berechnung des Strombegrenzungswiderstandes für Anzeigesegmente:

Hier sind die verschiedenen nützlichen Werte aus der technischen Dokumentation (Ziffernanzeige und BS170-Transistor), um die Berechnungen durchzuführen:

Vf=2V

Wenn = 20 mA

Berechnung des aktuellen Grenzwertes:

R=Vcc-Vf/If

R=5-2/20mA

R=150 Ohm

Ich wähle einen Standardwert aus der E12-Serie: R=150 Ohm

Multiplexing-Verwaltung:

Ich habe mich für die Multiplex-Anzeigetechnik entschieden, um die Anzahl der Drähte zu begrenzen, die zur Steuerung der Zeichen auf den Anzeigen erforderlich sind. Es gibt eine Anzeige, die der Zehnerstelle entspricht, und eine andere Anzeige, die der Einerstelle entspricht. Diese Technik ist ganz einfach zu implementieren, so funktioniert es (zB: die Zahl 27 anzuzeigen)

1 - der Mikrocontroller sendet Signale an 7 Ausgängen, die dem anzuzeigenden Zeichen für die Zehnerstelle (Ziffer 2) entsprechen 2 - der Mikrocontroller aktiviert den Transistor, der die Anzeige liefert, die den Zehnern entspricht 3 - eine Verzögerung von 2ms vergeht 4 - die Mikrocontroller deaktiviert den Transistor, der die Anzeige liefert, die den Zehnern entspricht 5 - der Mikrocontroller sendet Signale an 7 Ausgängen, die dem anzuzeigenden Zeichen für die Ziffer der Einerstelle (Ziffer 7) entsprechen 6 - der Mikrocontroller aktiviert den Transistor, der die Anzeige liefert entsprechend den Einheiten 7 - eine Verzögerung von 2 ms vergeht 8 - der Mikrocontroller deaktiviert den Transistor, der die Anzeige entsprechend den Einheiten liefert

Und diese Sequenz wiederholt sich in Schleife sehr schnell, damit das menschliche Auge den Moment nicht wahrnimmt, in dem eines der Displays aus ist.

Die Drucktasten und Licht-/Tonanzeigen sind Teil:

Es gibt sehr wenig Hardwaretests und noch weniger Berechnungen für diesen Teil.

Es wird berechnet, dass der Strombegrenzungswiderstand für die Status-LED:R=Vcc-Vf/If R=5-2/20mA R= 150 Ohm

Ich wähle einen Standardwert aus der E12-Serie: R=150 Ohm

Bei den Druckknöpfen habe ich einfach überprüft, ob ich das Drücken dank des Mikrocontrollers erkennen und die Anzahl der Drücken auf den Displays erhöhen kann. Ich habe auch die Summeraktivierung getestet, um zu sehen, ob sie richtig funktioniert.

Mal sehen, wie das alles mit dem Programm gehandhabt wird…

Schritt 5: Das Programm

Das Programm
Das Programm

Das Programm ist in der Sprache C mit MPLAB IDE geschrieben und der Code wird mit dem CCS C Compiler kompiliert.

Der Code ist vollständig kommentiert und recht einfach zu verstehen. Ich lasse Sie die Quellen herunterladen, wenn Sie wissen möchten, wie es funktioniert oder wenn Sie es ändern möchten.

Das einzige, was etwas kompliziert ist, ist vielleicht die Verwaltung des Countdowns mit dem Timer des Mikrocontrollers, ich werde versuchen, das Prinzip schnell genug zu erklären:

Eine spezielle Funktion wird alle 2ms vom Mikrocontroller aufgerufen, dies ist die Funktion namens RTCC_isr() im Programm. Diese Funktion verwaltet das Multiplexen der Anzeige und auch die Verwaltung des Countdowns. Alle 2ms werden die Anzeigen wie oben beschrieben aktualisiert, gleichzeitig wird auch die TimeManagment-Funktion alle 2ms aufgerufen und verwaltet den Countdown-Wert.

In der Hauptschleife des Programms gibt es einfach die Verwaltung der Drucktasten, in dieser Funktion gibt es die Einstellung des Countdown-Wertes und die Taste zum Starten des Aufleuchtens der UV-LEDs und des Countdowns.

Sehen Sie unten eine ZIP-Datei des MPLAB-Projekts:

Schritt 6: Löten und Montage

Löten und Montage
Löten und Montage
Löten und Montage
Löten und Montage
Löten und Montage
Löten und Montage
Löten und Montage
Löten und Montage

Ich habe das ganze System auf 2 Platinen verteilt: Eine Platine unterstützt die Widerstände der UV-LEDs und eine andere Platine, die alle anderen Komponenten unterstützt. Ich fügte dann Abstandshalter hinzu, um die Karten zu überlagern. Am kompliziertesten war es, alle Anschlüsse der oberen Platine zu verlöten, insbesondere wegen der Displays, die selbst mit dem Multiplexing-System sehr viel Kabel erfordern…

Ich habe die Verbindungen und den Draht mit Heißkleber und Schrumpfschlauch konsolidiert, um ein möglichst sauberes Ergebnis zu erzielen.

Ich habe dann Markierungen auf der PVC-Kappe gemacht, um die LEDs so gut wie möglich zu verteilen, um ein möglichst gleichmäßiges Licht zu erhalten. Dann habe ich die Löcher mit dem Durchmesser der LEDs gebohrt, auf den Bildern sieht man, dass es mehr LEDs in der Mitte gibt, das ist normal, da die Lampe hauptsächlich dazu verwendet wird, Licht auf kleine Objekte zu emittieren.

(Man sieht auf den Präsentationsbildern am Anfang des Projekts, dass das PVC-Rohr nicht wie die Kappe lackiert ist, es ist normal, dass meine Frau es selbst dekorieren möchte… wenn ich eines Tages Bilder habe, füge ich sie hinzu!)

Und zum Schluss habe ich noch eine USB-Buchse angelötet, um die Lampe zum Beispiel mit einem Handy-Ladegerät oder einem externen Akku (über ein Stecker-Stecker-Kabel, das ich zu Hause hatte…)

Ich habe während der Umsetzung viele Bilder gemacht und sie "reden".

Schritt 7: Systembetriebsdiagramm

Systembetriebsdiagramm
Systembetriebsdiagramm

Hier ist das Diagramm, wie das System funktioniert, nicht das Programm. Es ist eine Art Mini-Benutzerhandbuch. Ich habe die PDF-Datei des Diagramms als Anhang beigefügt.

Schritt 8: Video

Schritt 9: Fazit

Dies ist das Ende dieses Projekts, das ich "oportunistisch" nennen würde, tatsächlich habe ich dieses Projekt gemacht, um einen unmittelbaren Bedarf zu decken, also habe ich es mit der Wiederherstellungsausrüstung gemacht, die ich bereits hatte, aber ich bin trotzdem ziemlich stolz auf das Endergebnis, besonders der eher saubere ästhetische Aspekt, den ich erreichen konnte.

Ich weiß nicht, ob mein Schreibstil richtig sein wird, da ich teilweise einen automatischen Übersetzer verwende, um schneller voranzukommen, und da ich nicht muttersprachlich Englisch spreche, denke ich, dass einige Sätze für Leute, die perfekt Englisch schreiben, wahrscheinlich seltsam sein werden. Danke also an den DeepL-Übersetzer für seine Hilfe;)

Wenn Sie Fragen oder Anmerkungen zu diesem Projekt haben, lassen Sie es mich bitte wissen!