Բովանդակություն:

Տնային պատրաստված տրամադրության լամպ ՝ 6 քայլ
Տնային պատրաստված տրամադրության լամպ ՝ 6 քայլ

Video: Տնային պատրաստված տրամադրության լամպ ՝ 6 քայլ

Video: Տնային պատրաստված տրամադրության լամպ ՝ 6 քայլ
Video: Ջեռուցում, լուսարձակող 2024, Նոյեմբեր
Anonim
Image
Image

Una Mood Lamp es una lámpara a las cual le puedes personalizar el color de la luz. Մի շարունակություն, որը թույլ է տալիս միացնել այն Kit de principiantes de Arduino y materiales caseros- ում:

Քայլ 1: Նյութեր

- 3 հզորություն 10 կՎմ

- 4Ω դիմադրություն 210Ω

- 1 բոտոն

- 1 սենսոր DHT11

- 1 անջատիչ SDSP

- 1 LED RGB

- 1 նախատախտակ

- Արդուինո 1

- 27 ցատկող մեքենա-մաչո

- Plancha de duroport

- սիլիկոն

- Objeto que sirva de bombilla

- Կաուտան (ըստ ցանկության)

- Estaño (ըստ ցանկության)

Քայլ 2: Կառուցվածք

Էսքեմատիկո դիագրամա
Էսքեմատիկո դիագրամա

Պասոս:

-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 Pegar la bombilla.

Քայլ 3. Diagrama Esquemático

Aquí se presenta la unión física de todos los componentes:

Քայլ 4: Diagrama De Flujo

Diagrama De Flujo
Diagrama 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 y emite luz con un color acord տեղեկատվական տեղեկատվություն:

Քայլ 5: Կոդիգո

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

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

#սահմանել DHTPIN 10 #սահմանել DHTTYPE DHT11 // DHT 11 DHT dht (DHTPIN, DHTTYPE);

// definir կապում #սահմանել BLUE 3 #սահմանել GREEN 5 #սահմանել ԿԱՐՄԻՐ 6

// որոշակի փոփոխականներ const int buttonPin = 8; int կոճակ Պետություն = 0; int lastButtonState = 0; int հաշվարկ = 1;

// Ֆունկցիոնալ գործողությունների անվավեր տեղադրում () {Serial.begin (9600); Serial.println (F («DHT11 ԹԵՍՏ»)); dht.begin ();

pinMode (ԿԱՐՄԻՐ, ԵԼՔ); pinMode (Կանաչ, Ելք); pinMode (Կապույտ, ելք);

pinMode (buttonPin, INPUT);

}

// Programación del estado del botón void loop () {buttonState = digitalRead (buttonPin); if (buttonState == HIGH && lastButtonState == LOW) {if (count == 0) {M (); հաշվել = 1; } else {A (); հաշվել = 0; }} // Mantener activo un modo a la vez lastButtonState = buttonState; եթե (հաշվել == 0) {M (); } else {A (); }}

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

// Asignar un potenciómetro a cada color del 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); բոց h = dht.readHumidity (); float t = dht.readTemperature ();

// Mapear la información de temperatura a humedad int HPMW = քարտեզ (ժ, 0, 1024, 0, 255); int TPMW = քարտեզ (t, 0, 1024, 0, 255);

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

// Conidción para cambiar de color if (y <29) {analogWrite (RED, 18); analogWrite (Կապույտ, 73); analogWrite (Կանաչ, 4); } else {analogWrite (RED, 191); analogWrite (Կապույտ, 8); analogWrite (Կանաչ, 106); }

// Manejo de error en la toma de humedad y temperatura if (isnan (h) || isnan (t)) {Serial.println (F ("Error en la lectura del sensor")); վերադարձ;

// Mostrar la información del sensor en el monitor serial Serial.print (F ("Humedad:")); Serial.print (h); Serial.print (F ("% Temperatura:")); Serial.print (t); Serial.print (F ("° C")); Serial.println (y);

}

}

También se puede descargar aquí:

Խորհուրդ ենք տալիս: