Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
Warum beitreten?
Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [hier] und treten Sie heute bei!
5. Überwachung des häuslichen Umfelds¶
In diesem Kapitel werden wir Blynk verwenden, um einen Umweltmonitor für das Zuhause zu erstellen. Sie können mit dem DHT11 und dem Fotowiderstand die Temperatur, die Luftfeuchtigkeit und die Lichtintensität eines Raumes messen. Indem Sie diese Werte an Blynk senden, können Sie die Umgebung Ihres Zuhauses über das Internet überprüfen.
Benötigte Komponenten
Für dieses Projekt benötigen wir die folgenden Komponenten.
Es ist definitiv praktisch, ein gesamtes Set zu kaufen, hier ist der Link:
Name |
ARTIKEL IN DIESEM KIT |
LINK |
|---|---|---|
3 in 1 Starter Kit |
380+ |
Sie können diese auch separat über die untenstehenden Links kaufen.
KOMPONENTENBESCHREIBUNG |
KAUF-LINK |
|---|---|
- |
|
- |
1. Schaltung aufbauen
Bemerkung
Das ESP8266-Modul benötigt einen hohen Strom, um einen stabilen Betrieb zu gewährleisten. Stellen Sie also sicher, dass die 9V-Batterie angeschlossen ist.
2. Dashboard bearbeiten
Für die Aufzeichnung von Luftfeuchtigkeitswerten erstellen Sie einen Datastream vom Typ Virtual Pin auf der Datastream-Seite. Setzen Sie den DATENTYP auf Double und MIN und MAX auf 0 und 100. Setzen Sie auch die Einheiten auf Percentage, %.
Erstellen Sie dann einen Datastream vom Typ Virtual Pin für die Temperaturaufzeichnung. Setzen Sie DATENTYP auf
Double, MIN und MAX auf-30und50, und die Einheiten auf Celsius, °C.
Erstellen Sie auch einen Datastream vom Typ Virtual Pin zur Aufzeichnung der Lichtintensität. Verwenden Sie den Standarddatentyp - Integer, mit MIN und MAX auf
0und1024eingestellt.
Gehen Sie zur Wed Dashboard-Seite, ziehen Sie zwei Label-Widgets und setzen Sie ihre Datenströme jeweils auf V4 und V5. Ziehen Sie ein Gauge-Widget und setzen Sie den Datenstrom auf V6. In den Widget-Einstellungen können Sie Farbänderung basierend auf Wert aktivieren und die entsprechende Farbe auswählen, um das Widget ansprechender und intuitiver zu gestalten.
3. Den Code ausführen
Öffnen Sie die Datei
5.home_environment_monitoring.inounter dem Pfad3in1-kit\iot_project\5.home_environment_monitoringoder kopieren Sie diesen Code in die Arduino IDE.Bemerkung
Hier wird die
DHT sensor libraryverwendet. Sie können diese aus dem Library Manager installieren.
Ersetzen Sie die
Template ID, denDevice Nameund denAuth Tokendurch Ihre eigenen. Sie müssen auch diessidund dasPasswortdes von Ihnen verwendeten WLANs eingeben. Für detaillierte Anleitungen siehe 1.3 Verbindung des R4-Boards mit Blynk herstellen.Wählen Sie das richtige Board und den richtigen Port aus und klicken Sie auf den Upoad-Button.
Öffnen Sie den seriellen Monitor (Baudrate auf 115200 einstellen) und warten Sie, bis eine Meldung, wie z.B. eine erfolgreiche Verbindung, erscheint.
Bemerkung
Wenn die Meldung
ESP is not respondingbeim Verbinden erscheint, folgen Sie bitte diesen Schritten.Stellen Sie sicher, dass die 9V-Batterie angeschlossen ist.
Setzen Sie das ESP8266-Modul zurück, indem Sie den RST-Pin für 1 Sekunde mit GND verbinden und dann trennen.
Drücken Sie den Reset-Knopf auf dem R4-Board.
Manchmal müssen Sie den obigen Vorgang 3-5 Mal wiederholen, bitte haben Sie Geduld.
Nun sehen Sie die aktuelle Raumtemperatur, Luftfeuchtigkeit und Lichtintensität in Blynk.
Wenn Sie Blynk auf mobilen Geräten verwenden möchten, verweisen Sie auf Wie verwendet man Blynk auf einem Mobilgerät?.
Wie funktioniert das?
Diese beiden Funktionen werden verwendet, um die Temperatur, Luftfeuchtigkeit und Lichtintensität des Raumes zu erhalten.
int readLight(){
return analogRead(lightPin);
}
bool readDHT() {
// Reading temperature or humidity takes about 250 milliseconds!
// Sensor readings may also be up to 2 seconds 'old' (it's a very slow sensor)
humidity = dht.readHumidity();
// Read temperature as Celsius (the default)
temperature = dht.readTemperature();
// Check if any reads failed and exit early (to try again).
if (isnan(humidity) || isnan(temperature)) {
Serial.println("Failed to read from DHT sensor!");
return false;
}
return true;
}
Mit dem Blynk Timer werden die Raumtemperatur, Luftfeuchtigkeit und Lichtintensität jede Sekunde abgerufen und an den Datenstrom in der Blynk Cloud gesendet, von wo aus die Widgets die Daten anzeigen.
void myTimerEvent()
{
bool chk = readDHT();
int light = readLight();
if(chk){
Blynk.virtualWrite(V4,humidity);
Blynk.virtualWrite(V5,temperature);
}
Blynk.virtualWrite(V6,light);
}