Table des matières:

Lampe d'ambiance faite maison : 6 étapes
Lampe d'ambiance faite maison : 6 étapes

Vidéo: Lampe d'ambiance faite maison : 6 étapes

Vidéo: Lampe d'ambiance faite maison : 6 étapes
Vidéo: [DECO 55] Reussir son ECLAIRAGE intérieur ! 2024, Novembre
Anonim
Image
Image

Una Mood Lamp es una lámpara a las cual le puedes personalizar el color de la luz. A continuación se muestra como puedes hacer una con un Kit de principiantes de Arduino y materiales caseros.

Étape 1: Matériaux

- 3 Potenciomètres de 10 kΩ

- 4 résistances de 210Ω

- 1 bouton

- 1 capteur DHT11

- 1 commutateur SDSP

- 1 LED RVB

- 1 Protoboard

-Arduino 1

- 27 Cavaliers macho-macho

- Plancha de duroport

- Silicon

- Objet que sirva de bombilla

- Cautín (en option)

- Estaño (en option)

Étape 2: Construction

Diagrama Esquemático
Diagrama Esquemático

Étapes:

-1 Cortar una caja con la plancha de duroport, doblarla y pegarla tridimensionalmente.

-2 Cortar los agujeros para los 3 potenciómetros, el botón, la LED RGB, el sensor DHT11, el cable de energía y el interrumptor.

-3 Hacer una base alrededor de la LED RGB.

-4 Pégar la bombilla.

Étape 3: Diagrama Esquemático

Aquí se presenta la union física de todos los componentes:

Étape 4: Diagrama De Flujo

Diagramme de flujo
Diagramme de flujo

Este diagrama de flujo muestra la lógica y el sentido del funcionamiento del proyecto.

Esta lámpara tiene dos modos de funcionamiento. De la formamanual puedes escoger el color que tú quieras manipulando las luces de color rojo, verde y azul con tres potenciómetros, y con un botón puedes cambiar al modo automático, el cual mide la temperatura y humedad del habiente un color acorde luz une esta información.

Étape 5: Código

El diagrama de flujo tracido a código es el siguiente:

// Librería de sensor DHT11 en pin 10#include "DHT.h"

#définir DHTPIN 10 #définir DHTTYPE DHT11 // DHT 11 DHT dht(DHTPIN, DHTTYPE);

// définir les épingles #define BLUE 3 #define GREEN 5 #define RED 6

// variables définies const int buttonPin = 8; int buttonState = 0; int lastButtonState = 0; nombre entier = 1;

// Fonction d'initialisation void setup() { Serial.begin(9600); Serial.println(F("DHT11 TEST")); dht.begin();

pinMode (ROUGE, SORTIE); pinMode(VERT, SORTIE); pinMode (BLEU, SORTIE);

pinMode(boutonPin, INPUT);

}

// Programmation de l'état du bouton void loop() { buttonState = digitalRead(buttonPin); if (buttonState ==HIGH && lastButtonState ==LOW){ if (count == 0){ M(); compte = 1; } else { A(); compte = 0; } } //Mettre en oeuvre un modo à ce dernier lastButtonState = buttonState; if (compte== 0){ M(); } else{ A(); } }

// Programación del modo manual void M(){ int B = analogRead(A3); int R = lecture analogique(A5); int G = lecture analogique(A0);

// Asignar un potenciómetro a cada color del RGB analogWrite(BLUE, B); analogWrite(RED, R); analogWrite(GREEN, G);

}

// Programación del modo automático void A(){ // Toma de temperatura y humedad delay (500); float h = dht.readHumidity(); float t = dht.readTemperature();

// Mapear la información de temperatura a humedad int HPMW = map(h, 0, 1024, 0, 255); int TPMW = map(t, 0, 1024, 0, 255);

// Variable unique con la información anterior int y = (HPMW + TPMW);

// Conidción para cambiar de color if (y <29){ analogWrite(RED, 18); analogWrite(BLEU, 73); analogWrite(GREEN, 4); } else { analogWrite(RED, 191); analogWrite(BLEU, 8); analogWrite(GREEN, 106); }

// Manejo de error en la toma de humedad y temperature if (isnan(h) || isnan(t)) { Serial.println(F("Error en la lectura del sensor")); revenir;

// Plus d'informations sur le capteur et le moniteur série Serial.print(F("Humedad: ")); Serial.print(h); Serial.print(F("% Température: ")); Serial.print(t); Serial.print(F("°C ")); Serial.println(y);

}

}

También se puede descargar aquí:

Conseillé: