Inhoudsopgave:

Zelfgemaakte sfeerlamp - Ajarnpa
Zelfgemaakte sfeerlamp - Ajarnpa

Video: Zelfgemaakte sfeerlamp - Ajarnpa

Video: Zelfgemaakte sfeerlamp - Ajarnpa
Video: De Lampjesfabriek I Dit moet je weten over ledverlichting 2024, November
Anonim
Image
Image

Una Mood Lamp is een lamp voor een persoonlijk tintje aan de kleur van de luz. Een continuación se muestra como puedes hacer una con un Kit de principiantes de Arduino y materiales caseros.

Stap 1: Materialen

- 3 Potenciómetros van 10 kΩ

- 4 weerstanden van 210Ω

- 1 boton

- 1 sensor DHT11

- 1 schakelaar SDSP

- 1 LED-RGB

- 1 Protobord

- Arduino 1

- 27 Truien macho-macho

- Plancha de duroport

- Silicium

- Objeto que sirva de bombilla

- Cautín (optioneel)

- Estaño (optioneel)

Stap 2: Constructie

Schema Esquemático
Schema Esquemático

Pasos:

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

-2 Cortar los agujeros voor los 3 potenciómetros, de botón, de LED RGB, de sensor DHT11, de kabel van de energie en de interrumptor.

-3 Lampen op basis van LED RGB.

-4 Pegar la bombilla.

Stap 3: Schema Esquemático

Bekijk de presentatie van de unión física de todos los componentes:

Stap 4: Diagrama De Flujo

Diagrama De Flujo
Diagrama De Flujo

Este diagram van flujo muestra the logic en el sentido del funcionamiento del proyecto.

Esta lampparade dos modos de funcionamiento. De la formamanual puedes escoger el color que tú quieras manipulando las luces de colour rojo, verde y azul con tres potenciómetros, y con un botón puedes a automático, el cual mide la temperatura del luiente humedad een esta información.

Stap 5: Codigo

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

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

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

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

// definieer variabelen const int buttonPin = 8; int knopState = 0; int lastButtonState = 0; aantal int = 1;

// Startfunctie void setup () { Serial.begin (9600); Serial.println(F("DHT11-TEST")); dht.begin();

pinMode (ROOD, UITGANG); pinMode (GROEN, UITGANG); pinMode (BLAUW, UITGANG);

pinMode (knopPin, INPUT);

}

// Programma van de leegte van de lus () { buttonState = digitalRead (buttonPin); if (buttonState ==HIGH && lastButtonState ==LOW){ if (count == 0){ M(); aantal = 1; } anders { A(); aantal = 0; } } //Mantener actief in de laatsteButtonState = buttonState; if (count== 0){ M(); } anders{ A(); } }

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

// Een potentiële mogelijkheid toewijzen aan een kleur van RGB analogWrite(BLUE, B); analoogWrite(ROOD, R); analogWrite(GROEN, G);

}

// Programma voor automatische void A () {// Toma de temperatura y humedad delay (500); float h = dht.readHumidity(); float t = dht.readTemperature();

//Kaart van temperatuurinformatie en een humedad int HPMW = map(h, 0, 1024, 0, 255); int TPMW = kaart (t, 0, 1024, 0, 255);

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

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

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

// Meeste informatie over sensor en monitor serial Serial.print (F ("Humedad: ")); Seriële.print(h); Serial.print(F("% temperatuur: ")); Seriële.print(t); Serial.print(F("°C")); Serieel.println(y);

}

}

También se puede download:

Aanbevolen: