Гэртээ хийсэн сэтгэлийн гэрэл: 6 алхам
Гэртээ хийсэн сэтгэлийн гэрэл: 6 алхам
Anonim
Image
Image

Una Mood Lamp es una lámpara a las cual le puedes personalizar el color de la luz. Тасралтгүй үргэлжлүүлэхийн тулд Arduino болон Materiales caseros -ийг ашиглах боломжтой болно.

Алхам 1: Материалууд

- 3 потенциометр 10 кОм

210 эсэргүүцэлтэй 4 эсэргүүцэл

- 1 боть

- 1 мэдрэгч DHT11

- 1 SDSP -ийг солих

- 1 LED RGB

- 1 хамгаалалтын самбар

- Arduino 1

- 27 үсрэгч мачо-мачо

- Plancha de duroport

- Цахиур

- Objeto que sirva de bombilla

- Каутин (дур зоргоороо)

- Эстано (дур зоргоороо)

Алхам 2: Бүтээх

Диаграмма Esquemático
Диаграмма Esquemático

Пасос:

-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, DHT11 мэдрэгч, кабелийн энерги ба интертрептор.

-3 Hacer -ийн үндсэн суурь нь LED RGB юм.

-4 ширхэг бөмбөг.

Алхам 3: Esquemático диаграм

Энэхүү бүрэлдэхүүн хэсгүүдийг танилцуулж байна:

Алхам 4: Диаграмма Де Флужо

Диаграмма Де Флужо
Диаграмма Де Флужо

Функциональ диаграммыг танилцуулж байна.

Энэ нь функцуудын хувьд маш чухал юм. Өнгөт өнгөөр ялгагдахаас өөр аргагүй өнгө, өнгөөр ялгах, өнгө аясыг тохируулах, автоматаар зохицуулах, автоматаар ашиглах. мэдээлэл байна.

Алхам 5: Кодиго

Флюжо тракидо болон бусад хэлхээний диаграммууд:

// Мэдрэгч DHT11 -ийн зүү 10#-т "DHT.h" орно

#тодорхойлох DHTPIN 10 #тодорхойлох DHTTYPE DHT11 // DHT 11 DHT dht (DHTPIN, DHTTYPE);

// definir pins #define BLUE 3 #define GREEN 5 #define RED 6

// definit variables const int buttonPin = 8; int buttonState = 0; int lastButtonState = 0; int тоо = 1;

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

pinMode (RED, OUTPUT); 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; } өөр {A (); тоолох = 0; }} // Mantener activo un modo a la vez lastButtonState = buttonState; if (count == 0) {M (); } өөр {A (); }}

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

// RGB analogWrite (BLUE, B) өнгөт өнгөөр ялгах; analogWrite (RED, R); analogWrite (НОГООН, G);

}

// Хөтөлбөрийн хүчин төгөлдөр бус програм A () {// Toma de temperatura y humedad саатал (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 = газрын зураг (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); } өөр {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 lektura del sensor")); буцах;

// Мэдээлэл дамжуулах мэдрэгчийг хянах Serial.print (F ("Humedad:")); Цуваа.хэвлэх (h); Serial.print (F ("% Temperatura:")); Цуваа.хэвлэх (t); Цуваа.хэвлэх (F ("° C")); Serial.println (y);

}

}

Тэмдэглэлийг татаж авах:

Зөвлөмж болгож буй: