Turinys:

Namų nuotaikos lempa: 6 žingsniai
Namų nuotaikos lempa: 6 žingsniai

Video: Namų nuotaikos lempa: 6 žingsniai

Video: Namų nuotaikos lempa: 6 žingsniai
Video: НОЧЬ В СТРАШНОМ ДОМЕ С ДЕМОНОМ / НЕ СТОИЛО СЮДА ПРИХОДИТЬ 2024, Lapkritis
Anonim
Image
Image

„Una Mood Lamp“yra unikalus ir patogus, pritaikytas spalvoms. A Continuación se muestra como puedes hacer una con Un Kit de principiantes de Arduino y materiales caseros.

1 žingsnis: Materiales

- 3 stiprumo stipriai 10 kΩ

- 4 atsparumas 210Ω

- 1 botanas

- 1 jutiklis DHT11

- 1 Perjunkite SDSP

- 1 LED RGB

- 1 protoboardas

- Arduino 1

- 27 džemperiai macho-macho

- Plancha de duroport

- Siliconas

- Objeto que sirva de bombilla

- Cautín (pasirinktinai)

- Estaño (pasirinktinai)

2 žingsnis: Konstrukcija

Esquemático diagrama
Esquemático diagrama

Pasai:

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

-2 „Cortar los agujeros“, esantys 3 potencialuose, „bot“, LED RGB, el. Jutiklis DHT11, energijos kabelis ir tarpinis jungiklis.

-3 „Hacer“bazinis LED RGB šaltinis.

-4 „Pegar la bombilla“.

3 žingsnis: Diagrama Esquemático

„Aquí se presenta la unión física de todos los komponentes“:

4 žingsnis: Diagrama De Flujo

Flujo diagrama
Flujo diagrama

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 acorde a esta information.

5 žingsnis: Código

Elgesio diagrama de flujo tracido ir código es el siguiente:

// DHT11 daviklio ir 10#PIN kodo įtraukimas „DHT.h“

#define DHTPIN 10 #define DHTTYPE DHT11 // DHT 11 DHT dht (DHTPIN, DHTTYPE);

// apibrėžti smeigtukai #define BLUE 3 #define GREEN 5 #define RED 6

// apibrėžtieji kintamieji const int mygtukasPin = 8; int buttonState = 0; int lastButtonState = 0; int skaičius = 1;

// Función de inicialización void setup () {Serial.begin (9600); Serial.println (F ("DHT11 TEST")); dht.begin ();

pinMode (RED, OUTPUT); pinMode (ŽALIA, IŠVESTIS); pinMode (BLUE, OUTPUT);

pinMode (buttonPin, INPUT);

}

// Programación del estado del botón void loop () {buttonState = digitalRead (buttonPin); if (buttonState == HIGH && lastButtonState == LOW) {if (count == 0) {M (); skaičius = 1; } dar {A (); skaičius = 0; }} // Mantener activo un modo a la vez lastButtonState = buttonState; jei (skaičius == 0) {M (); } dar {A (); }}

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

// RGB analogWrite (MĖLYNA, B) spalvų ir spalvų parinktis; analogWrite (RED, R); analogWrite (GREEN, G);

}

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

// Mapear la información de temperatura a humedad int HPMW = map (h, 0, 1024, 0, 255); int TPMW = žemėlapis (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 (MĖLYNA, 73); analogWrite (GREEN, 4); } else {analogWrite (RAUDONA, 191); analogWrite (BLUE, 8); analogWrite (GREEN, 106); }

// Manejo de error en la toma de humedad y temperatura if (isnan (h) || isnan (t)) {Serial.println (F ("Klaida en la lectura del sensor")); grįžti;

// Mostrar la informationción del sensor en el monitor serial Serial.print (F ("Humedad:")); Serijinis atspaudas (h); Serijinis atspaudas (F ("% temperatūra:")); Serijinis atspaudas (t); Serijinis atspaudas (F ("° C")); Serial.println (y);

}

}

Atsisiųsti también se puede:

Rekomenduojamas: