Smart Home: Unterschied zwischen den Versionen
(→Pins) |
|||
Zeile 142: | Zeile 142: | ||
int sensorWert = 0; | int sensorWert = 0; | ||
==== | ==== Display ==== | ||
Display initialisieren | |||
LiquidCrystal_I2C lcd(0x27, 16, 2); | |||
==== Pins ==== | ==== Pins ==== |
Version vom 11. Februar 2021, 16:15 Uhr
Autoren: Busskamp, Lars und Jopp, Danny
Betreuer: Prof. Schneider
→ zurück zur Übersicht: WS 20/21: Angewandte Elektrotechnik (BSE)
Einleitung
Smart Home soll ein System eines reaktiven Zuhauses darstellen. Dabei werden, abhängig von Temperatur oder Lichteinstrahlung, Aktionen wie "Heizung an/aus", "Lüfter an/aus" oder "Licht an/aus" realisiert. Das System soll durch Sensoren die äußeren Rahmenbedingungen erfassen und dementsprechend agieren. Visualisiert werden die Aktionen durch eine Ausgabe auf einem Display.
Anforderungen
Das Smart Home benötigt verschiedene Sensoren, um äußere Einflüsse wahrzunehmen:
- Lichtsensor: mit dem Lichtsensor soll die Helligkeit gemessen werden, um ein Licht aufleuchten zu lassen oder dieses auszuschalten.
- Temperatursensor: der Temperatursensor soll die Temperatur messen, um eine Heizung an- oder auszuschalten.
- Luftfeuchtigkeitssensor: der Luftfeuchtigkeitssensor soll die Luftfeuchtigkeit messen, um ein Lüfter an- oder auszuschalten.
Das Display gibt die SOLL-IST werte aus.
Die Parameter sollen mit einem Drehtaster definiert werden können (SOLL-Wert).
Um eine Aktion des Systems zu veranschaulichen, sollen die oben genannten Aktionen durch verschiedene LED's und einen Lüfter veranschaulicht werden.
Funktionaler Systementwurf/Technischer Systementwurf
Komponentenspezifikation
Anzahl | Name | Link | Anmerkung | Vorhanden |
---|---|---|---|---|
1 | HSHL-Starterbaukasten von Funduino | Link | nur einzelne Teile des Kastens verwendet | Ja |
1 | [www.link.de Link] | Ja | ||
1 | [www.link.de Link] | Ja | ||
1 | [www.link.de Link] | Ja | ||
4 | [www.link.de Link] | Ja | ||
1 | [www.link.de Link] | Ja | ||
1 | [www.link.de Link] | Ja | ||
2 | [www.link.de Link] | Ja | ||
2 | [www.link.de Link] | Ja |
Umsetzung (HW/SW)
Im Folgenden Abschnitt wird die Umsetzung des Projektes beschrieben. Dafür wird die Hardware und die Software betrachtet.
Hardware
Die genutzte Hardware ist inklusive Stückliste in der Komponentenspezifikation einzusehen. Die einzelnen Bauteile sind mit Kabeln auf einem Breadboard miteinander verbunden und Teilweise verlötet.
Skizze der Verkabelung
BILD BILD BILD BILD BILD
Anleitung zum Anschließen der einzelnen Komponenten
Sensor XY mit XY verbunden usw.
Software
"Smart Home" wurde mit Hilfe der Software Arduino IDE realisiert. Dazu wurde zunächst die folgenden Bibliotheken eingebunden: 1. 2. 3.
Eine Anleitung wie man Bibliotheken in der Arduino IDE einbindet findet man hier Link.
Der Quellcode befindet sich im SVN (Link einfügen)
Zusätzlich wird der Quellcode hier erläutert.
Header
/* Datei: Smart_Home.ino Autor: Lars Bußkamp, Lars.busskamp@stud.hshl.de 1150441 Danny Jopp, Danny.Jopp@stud.hshl.de 1234567 Erstellung: 06.01.2021 Letzte Änderung:11.02.2021 Implementation: Arduino Funktion: "Smart-Home" soll durch verschiedene Sensoren verschiedene Dinge in einem "Haus" anschalten. Es wird eine LED abhängig von der Helligkeit angesteuert und eine Heizung abhängig von der Temperatur. Außerdem wird die Luftfeuchtigkeit gemessen. Hardware: Mikrocontroller:Arduino UNO Sensoren: DHT11, Fotowiderstand 1K Ohm sonstige Bauteile: Peltier-Element, LEDs, Mosfet, Widerstände, Kabel */
Bibliotheken
Einbinden der Bibliotheken
#include <OneButton.h> #include <Wire.h> #include <LiquidCrystal_I2C.h> #include <DHT.h>
Pins
Festlegen von Anschlusspins und Sensortyp
#define DHTPIN 2 //Anschlusspin des Sensors #define DHTTYPE DHT11 // Typ des Sensor DHT dht(DHTPIN, DHTTYPE); //Der Sensor wird ab jetzt mit „dht“ angesprochen const int tasterPin = 12; //Anschlusspin des Tasters
Variablen
Definieren der Variablen
int tasterZahl = 0; int zaehler = 0; int limit = 3; float sollTemp = 0; int istLicht = 0; int led = 9; int rot = 8; int peltier = 3;
int eingang= A1; //„eingang“ steht jetzt für den Analogpin 0 //int LED = 10; //Das Wort „LED“ steht jetzt für den Wert 10 int sensorWert = 0;
Display
Display initialisieren
LiquidCrystal_I2C lcd(0x27, 16, 2);
Pins
Pins
Pins
Komponententest
Ergebnis
Zusammenfassung
Lessons Learned
Projektunterlagen
Projektplan
Projektdurchführung
YouTube Video
Weblinks
Literatur
→ zurück zur Übersicht: WS 20/21: Angewandte Elektrotechnik (BSE)