Inhaltsverzeichnis:

RGB-Thermometer mit PICO - Gunook
RGB-Thermometer mit PICO - Gunook

Video: RGB-Thermometer mit PICO - Gunook

Video: RGB-Thermometer mit PICO - Gunook
Video: RGB Thermometer Using PICO 2024, November
Anonim
Image
Image

Das war das Endergebnis unserer Bemühungen heute. Es ist ein Thermometer, das Ihnen anzeigt, wie warm es in Ihrem Raum ist, indem ein RGB-LED-Streifen in einem Acrylbehälter verwendet wird, der an einen Temperatursensor angeschlossen ist, um die Temperatur abzulesen. Und wir werden PICO verwenden, um dieses Projekt zum Leben zu erwecken.

Schritt 1: Komponenten

Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
  • PICO, verfügbar auf mellbell.cc (17 $)
  • 1 Meter RGB-LED-Streifen
  • 3 TIP122 Darlington-Transistor, ein Bündel von 10 bei ebay ($3,31)
  • 1 PCA9685 16-Kanal-12-Bit-PWM-Treiber, erhältlich bei ebay (2,12 $)
  • 12V Stromquelle
  • 3 1k Ohm Widerstände, ein Bündel von 100 bei ebay (0,99 $)
  • Ein Steckbrett, erhältlich bei ebay (2,30 $)
  • Männlich - weibliche Überbrückungsdrähte, ein Bündel von 40 bei ebay (0,95 $)

Schritt 2: Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle

Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle
Stromversorgung des RGB-Streifens mit Transistoren und einer Stromquelle

LED-Streifen sind flexible Leiterplatten, die mit LEDs bestückt sind. Sie werden vielseitig verwendet, da Sie sie in Ihrem Haus, Ihrem Auto oder Fahrrad verwenden können. Sie können sogar coole RGB-Wearables damit erstellen.

Also, wie funktionieren sie? Es ist eigentlich ziemlich einfach. Alle LEDs im LED-Streifen sind parallel geschaltet und wirken wie eine riesige RGB-LED. Und um es zu betreiben, müssen Sie den Streifen einfach an eine 12-V-Hochstromquelle anschließen.

Um den LED-Streifen mit einem Mikrocontroller zu steuern, müssen Sie die Stromquelle von der Steuerquelle trennen. Da der LED-Streifen 12 V benötigt und unser Mikrocontroller nicht so viel Ausgangsspannung bieten kann, schließen wir eine externe 12 V-Hochstromquelle an, während wir die Steuersignale von unserem PICO senden.

Außerdem ist die Stromaufnahme jeder RGB-Zelle hoch, da jede einzelne LED darin - die roten, grünen und blauen LEDs - 20 mA zum Betrieb benötigt, was bedeutet, dass wir 60 mA benötigen, um eine einzelne RGB-Zelle zum Leuchten zu bringen. Und das ist sehr problematisch, da unsere GPIO-Pins nur das Maximum von 40 mA pro Pin liefern können und der direkte Anschluss des RGB-Streifens an PICO brennt, also bitte nicht tun.

Aber es gibt eine Lösung, und es heißt Darlington-Transistor, ein Transistorpaar mit sehr hoher Stromverstärkung, das uns hilft, unseren Strom zu erhöhen, um unseren Bedarf zu decken.

Lassen Sie uns zuerst mehr über die Stromverstärkung erfahren. Die Stromverstärkung ist eine Eigenschaft von Transistoren, die bedeutet, dass der durch den Transistor fließende Strom damit multipliziert wird, und seine Gleichung sieht wie folgt aus:

Laststrom = Eingangsstrom * Transistorverstärkung.

Dies ist bei einem Darlington-Transistor noch stärker, da es sich um ein Transistorpaar handelt, nicht um einen einzigen, und ihre Effekte werden miteinander multipliziert, was uns massive Stromgewinne beschert.

Wir werden nun den LED-Streifen an unsere externe Stromquelle, den Transistor und natürlich unseren PICO anschließen.

  • Basis (Transistor) → D3 (PICO)
  • Kollektor (Transistor) → B (LED-Streifen)
  • Emitter (Transistor) → GND
  • +12 (LED-Streifen) → +12 (Stromquelle)

Vergessen Sie nicht, PICOs GND mit der Masse der Stromquellen zu verbinden

Schritt 3: Steuern der Farben des RGB-LED-Streifens

Steuern der Farben des RGB-LED-Streifens
Steuern der Farben des RGB-LED-Streifens
Steuern der Farben des RGB-LED-Streifens
Steuern der Farben des RGB-LED-Streifens
Steuern der Farben des RGB-LED-Streifens
Steuern der Farben des RGB-LED-Streifens

Wir wissen, dass unser PICO einen einzigen PWM-Pin (D3) hat, was bedeutet, dass er unsere 16 LEDs nicht nativ steuern kann. Aus diesem Grund stellen wir das 16-Kanal-12-Bit-PWM-I2C-Modul PCA9685 vor, mit dem wir die PWM-Pins von PICO erweitern können.

Zunächst einmal, was ist I2C?

I2C ist ein Kommunikationsprotokoll, das nur 2 Drähte umfasst, um mit einem oder mehreren Geräten zu kommunizieren, indem die Adresse des Geräts und die zu sendenden Daten adressiert werden.

Es gibt zwei Arten von Geräten: Das erste ist das Master-Gerät, das für das Senden von Daten verantwortlich ist, und das andere ist das Slave-Gerät, das die Daten empfängt. Hier sind die Pinbelegung des PCA9685-Moduls:

  • VCC → Dies ist die Stromversorgung für das Board selbst. 3-5V max.
  • GND → Dies ist der negative Pin, der mit GND verbunden werden muss, um den Stromkreis zu vervollständigen.
  • V+ → Dies ist ein optionaler Stromanschluss, der Servos mit Strom versorgt, wenn Sie einen davon an Ihr Modul angeschlossen haben. Sie können es getrennt lassen, wenn Sie keine Servos verwenden.
  • SCL → Serial Clock Pin, und wir verbinden ihn mit dem SCL von PICO.
  • SDA → Serial Data Pin, und wir verbinden ihn mit dem SDA von PICO.
  • OE → Ausgang aktiviert Pin, dieser Pin ist aktiv LOW, wenn der Pin LOW ist, sind alle Ausgänge aktiviert, wenn er HIGH ist, sind alle Ausgänge deaktiviert. Und dieser optionale Pin wird verwendet, um die Pins des Moduls schnell zu aktivieren oder zu deaktivieren.

Es gibt 16 Ports, jeder Port hat V+, GND, PWM. Jeder PWM-Pin läuft völlig unabhängig und ist für Servos eingerichtet, aber Sie können sie problemlos für LEDs verwenden. Jede PWM kann 25 mA Strom verarbeiten, seien Sie also vorsichtig.

Jetzt, da wir wissen, was die Pins unseres Moduls sind und was es tut, können wir es verwenden, um die Anzahl der PWM-Pins von PICO zu erhöhen, damit wir unseren RGB-LED-Streifen steuern können.

Wir werden dieses Modul zusammen mit TIP122-Transistoren verwenden, und so sollten Sie sie an Ihren PICO anschließen:

  • VCC (PCA9685) → VCC (PICO).
  • GND (PCA9685) → GND.
  • SDA (PCA9685) → D2 (PICO).
  • SCL (PCA9685) → D3 (PICO).
  • PWM 0 (PCA9685) → BASE (erster TIP122).
  • PWM 1 (PCA9685) → BASE (zweiter TIP122).
  • PWM 2 (PCA9685) → BASIS (dritter TIP122).

Vergessen Sie nicht, den GND des PICO mit dem GND des Netzteils zu verbinden. Und stellen Sie sicher, dass Sie den PCA9685 VCC-Pin NICHT mit den +12 Volt des Netzteils verbinden, da er sonst beschädigt wird

Schritt 4: Steuern Sie die Farbe des RGB-LED-Streifens je nach Messwert des Sensors

Steuern Sie die Farbe des RGB-LED-Streifens je nach Messwert des Sensors
Steuern Sie die Farbe des RGB-LED-Streifens je nach Messwert des Sensors
Steuern Sie die Farbe des RGB-LED-Streifens je nach Messwert des Sensors
Steuern Sie die Farbe des RGB-LED-Streifens je nach Messwert des Sensors

Dies ist der letzte Schritt in diesem Projekt, und damit wird sich unser Projekt von "dumm" zu intelligent und mit der Fähigkeit verwandeln, sich abhängig von seiner Umgebung zu verhalten. Dazu verbinden wir unseren PICO mit dem Temperatursensor LM35DZ.

Dieser Sensor hat eine analoge Ausgangsspannung, die von der Umgebungstemperatur abhängt. Es beginnt bei 0 V, was 0 Celsius entspricht, und die Spannung erhöht sich um 10 mV für jeden Grad über 0 ° C. Diese Komponente ist sehr einfach und hat nur 3 Beine, die wie folgt verbunden sind:

  • VCC (LM35DZ) → VCC (PICO)
  • Masse (LM35DZ) → Masse (PICO)
  • Ausgang (LM35DZ) → A0 (PICO)

Schritt 5: Der endgültige Code

Der endgültige Code
Der endgültige Code
Der endgültige Code
Der endgültige Code

Nachdem wir nun alles mit unserem PICO verbunden haben, können wir ihn so programmieren, dass die LEDs je nach Temperatur die Farbe ändern.

Dazu benötigen wir folgendes:

Ein konst. Variable namens "tempSensor" mit dem Wert A0, die ihren Messwert vom Temperatursensor erhält

Eine ganzzahlige Variable namens "sensorReading" mit dem Anfangswert 0. Dies ist die Variable, die den Rohsensormesswert speichert

Eine Float-Variable namens "Volt" mit dem Anfangswert 0. Dies ist die Variable, die den konvertierten Rohmesswert des Sensors in Volt speichert

Eine Float-Variable namens "temp" mit dem Anfangswert 0. Dies ist die Variable, die die umgewandelten Sensorvolt-Messwerte speichert und in Temperatur umwandelt

Eine Integer-Variable namens "mapped" mit dem Anfangswert 0. Dadurch wird der PWM-Wert gespeichert, dem wir die Temp-Variable zuordnen, und diese Variable steuert die Farbe des LED-Streifens

Mit diesem Code liest PICO die Daten des Temperatursensors, wandelt sie in Volt, dann in Celsius um und bildet schließlich den Celsius-Grad in einen PWM-Wert ab, der von unserem LED-Streifen gelesen werden kann, und genau das brauchen wir.

Schritt 6: Sie sind fertig

Image
Image

Wir haben auch einen Acrylbehälter für den LED-Streifen gemacht, damit er schön aufsteht. Die CAD-Dateien finden Sie hier, wenn Sie diese herunterladen möchten.

Sie haben jetzt ein fantastisch aussehendes LED-Thermometer, das Ihnen automatisch die Temperatur anzeigt, wenn Sie es betrachten, was gelinde gesagt ziemlich praktisch ist: P

Hinterlassen Sie einen Kommentar, wenn Sie Vorschläge oder Feedback haben, und vergessen Sie nicht, uns auf Facebook zu folgen oder uns auf mellbell.cc für weitere tolle Inhalte zu besuchen.

Empfohlen: