ESP32 Innenraumsensor und -Steuerung: Unterschied zwischen den Versionen

Aus FHEMWiki
Keine Bearbeitungszusammenfassung
K (Kat)
 
(20 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
{{SEITENTITEL:ESP8266 Innenraumsensor und ControlBoard}}
{{Infobox Hardware
{{Infobox Hardware
|Bild=esp8266_amica.png
|Bild=ESP32S_NodeMCU_top.jpg
|Bildbeschreibung=ESP8266 V3 Amica
|Bildbeschreibung=ESP32S Development Board
|HWProtocol=WLAN
|HWProtocol=WLAN
|HWType=Sensor
|HWType=Sensor
Zeile 10: Zeile 8:
|HWChannels=
|HWChannels=
|HWVoltage=3.3V  
|HWVoltage=3.3V  
|HWPowerConsumption=500mA
|HWPowerConsumption=1A-1.5A
|HWPoweredBy=wired 5VDC
|HWPoweredBy=wired 5VDC
|HWSize=640 x 640 mm
|HWSize=640 x 640 mm
|HWDeviceFHEM=[http://fhem.de/commandref.html#MQTT 00_MQTT.pm] [http://fhem.de/commandref.html#MQTT_DEVICE 10_MQTT_DEVICE.pm]
|HWDeviceFHEM=[http://fhem.de/commandref.html#MQTT 00_MQTT.pm] [http://fhem.de/commandref.html#MQTT_DEVICE 10_MQTT_DEVICE.pm]
|ModOwner=für diesen Sketch: [http://forum.fhem.de/index.php?action=profile;u=118 Tobias]
|ModOwner=für diesen Sketch: [http://forum.fhem.de/index.php?action=profile;u=118 Tobias]
|HWManufacturer=esp8366
|HWManufacturer=Expressif
}}
}}


{{Baustelle}}
{{Baustelle}}


Der [url=https://de.wikipedia.org/wiki/ESP8266 | ESP8266] ist ein Ultra-low-Power-32-Bit-Mikrocontroller der chinesischen Firma espressif. Der 32-Bit-Prozessorkern vom Typ Xtensa LX106 von Tensilica arbeitet mit einem Systemtakt von 80–160 MHz, hat 64 kB RAM als Befehlspeicher, in den mehrere Megabyte Flash-Speicher eingeblendet werden können, sowie 96 kB RAM als Datenspeicher, eine SPI-Schnittstelle für Flash-Speichererweiterungen (bis zu 128 MBit) und integriertes WLAN IEEE 802.11 b/g/n. Der ESP8266 ermöglicht den Aufbau von stromsparenden WLAN-Sensoren für Anwendungen im Bereich Internet der Dinge. [Quelle: Wikipedia]
''Der [https://de.wikipedia.org/wiki/ESP32 ESP32] ist ein Ultra-low-Power-32-Bit-Mikrocontroller der chinesischen Firma espressif und die Weriterentwicklung des ESP8266. Der 32-Bit-Prozessorkern vom Typ 240 MHz dual core Tensilica LX6 microcontroller mit 600 DMIPS arbeitet mit einem Systemtakt von 80–160 MHz, hat 520 KB SRAM als Befehlspeicher, in dem 16 Megabyte Flash-Speicher eingeblendet werden können, 34x GPIO´s, eine SPI-Schnittstelle für Flash-Speichererweiterungen (bis zu 128 MBit) sowie integriertes WLAN IEEE 802.11 b/g/n und Bluetooth LE. Der ESP32 ermöglicht den Aufbau von stromsparenden WLAN-Sensoren für Anwendungen im Bereich Internet der Dinge.''


Mit ihm lassen sich Sensoren und Aktoren drahtlos an FHEM anbinden. Sie lassen sich genau wie Arduinos über die Arduino IDE oder mit dem ino Kommandozeilen Binary programmieren. Dieser bildet das Herzstück des Sensors.
Mit ihm lassen sich Sensoren und Aktoren drahtlos an FHEM anbinden. Sie lassen sich genau wie Arduinos über die Arduino IDE oder mit dem ino Kommandozeilen Binary programmieren. Dieser bildet das Herzstück des Sensors.
Zeile 29: Zeile 27:
Dieser Innenraumsensor ist, wie der Name schon sagt, ein universeller Sensor - aber auch Aktor - für den Innenraum.  
Dieser Innenraumsensor ist, wie der Name schon sagt, ein universeller Sensor - aber auch Aktor - für den Innenraum.  
Der Sensor ist komplett modular aufgebaut. Je nach Bedürfnissen und Anwendungsfall können die Komponenten bestückt und aufgesteckt werden.
Der Sensor ist komplett modular aufgebaut. Je nach Bedürfnissen und Anwendungsfall können die Komponenten bestückt und aufgesteckt werden.
In der Grundkonfiguration ohne Huckepackplatinen ist neben der NodeMCU nur der Luftgütesensor und der Luftdruck-, Temp- und Luftfeuchtesensor auf dem Mainboard. Auch diese beiden Sensoren sind optional und müssen nicht zwingend bestückt werden.
In der Grundkonfiguration ohne Huckepackplatinen ist neben der NodeMCU nur der Luftgütesensor und der DS18B20 auf dem Mainboard. Auch diese beiden Sensoren sind optional und müssen nicht zwingend bestückt werden.


Über die Aufsteckplatine werden alle Komponenten zum Gehäusedeckel verbunden. Das betrifft das TFT Display, den RGB Rotary-Encoder, die 2 Pushbuttons und den PIR-Sensor.
Über die PinHeader werden die anderen Komponenten verbunden. Das betrifft den BME280 (Luftdruck-, Temp- und Luftfeuchtesensor), Den TSL Lichtsensor und den PIR-Sensor.


Der Sensor muss mit stabilen +5VDC versorgt werden. Entweder per USB-Buchse oder per Schraubklemme. Wird kein VOC-Sensor verbaut, kann jede Spannung für die die NodeMCU spezifiziert ist angelegt werden.
Der Sensor muss mit stabilen +5VDC versorgt werden per Schraubklemme. Wird kein VOC-Sensor und kein Nextio Display verbaut, kann jede Spannung für die die NodeMCU spezifiziert ist angelegt werden.
 
Die Kommunikation zwischen dem Modul und FHEM erfolgt bidirektional per MQTT über WLAN. Ein MQTT Server >= MQTT-Version 3.1.1 ist erforderlich


Folgende Funktionen sind/werden dort implementiert
Folgende Funktionen sind/werden dort implementiert
Zeile 45: Zeile 45:
* Fenster-offen Meldungen
* Fenster-offen Meldungen
* allgemeine Warnmeldungen, push von FHEM
* allgemeine Warnmeldungen, push von FHEM


===technische Merkmale  ===
===technische Merkmale  ===
* NodeMCU ESP8266 V3 Amica
* NodeMCU ESP32S Development Board NodeMCU
* TFT Display 1,8" (ST7735R Adafruit 358)
* Anschluss für ein Nextion Display
* BME280 (Luftdruck-, Temp-, Luftfeuchtesensor)
* BME280 (Luftdruck-, Temp-, Luftfeuchtesensor)
* PIR Modul (Bewegungsmelder)
* PIR Modul (Bewegungsmelder)
* VOC Sensor (TGS2600) (Luftgütesensor)
* VOC Sensor (TGS2600) (Luftgütesensor)
* TSL2561 (Licht-/Helligkeitssensor)
* TSL2580 Helligkeitssensor
* RGB Rotary Encoder (Drehregler für Menünavigation im Display)
* 2x Pushbuttons für Menüsteuerunng


== Schaltplan und Bauteilliste ==
== Schaltplan und Bauteilliste ==
[[Datei:ESP8266_Innenraumsensor_v2.0.0_Schaltplan.jpg|200px|thumb|right|Schaltplan]]
[[Datei:platzHalter.png<!--ESP32_Innenraumsensor_v3.1.0_Schaltplan.jpg-->|200px|thumb|right|Schaltplan]]
[[Datei:ESP8266_Innenraumsensor_v2.0.0_Platine_Oben.jpg|200px|thumb|right|Platinenlayout Oberseite]]
[[Datei:platzHalter.png<!--ESP32_Innenraumsensor_v3.1.0_Platine_Oben.jpg-->|200px|thumb|right|Platinenlayout Oberseite]]
[[Datei:ESP8266_Innenraumsensor_v2.0.0_Platine_Unten.jpg|200px|thumb|right|Platinenlayout Unterseite]]
[[Datei:platzHalter.png<!--ESP32_Innenraumsensor_v3.1.0_Platine_Unten.jpg-->|200px|thumb|right|Platinenlayout Unterseite]]
[[Datei:ESP8266_Innenraumsensor_v2.0.0_Fertig.jpg|200px|thumb|right|fertiger Aufbau]]
[[Datei:ESP32_Innenraumsensor_v3.1.0_Fertig.jpg|200px|thumb|right|fertiger Aufbau]]


Bauteilliste:
Bauteilliste:
Zeile 69: Zeile 68:
!  Shop
!  Shop
!  BauteilNr
!  BauteilNr
!  ca. Preis € <br />(ohne Lieferkosten)
|-  
|-  
|  C1
|  C1,C3,C4,C5,C10
|  Keramikkondensator Typ:X7R 100nF
|  Keramikkondensator Typ:X7R 100nF
|  Reichelt
|  Reichelt
|  X7R-G0805 100N
|  X7R-G0805 100N
|  Centteil
|-
|  D1,D2,D3
|  Low Current Leuchtdiode 3mm 2mA, Rot
|  Reichelt
|  LED 3MM 2MA RT
|  Centteil
|-
|  D1,D2,D3
|  Low Current Leuchtdiode 3mm 2mA, Gelb
|  Reichelt
|  LED 3MM 2MA GE
|  Centteil
|-
|  D1,D2,D3
|  Low Current Leuchtdiode 3mm 2mA, Grün
|  Reichelt
|  LED 3MM 2MA GN
|  Centteil
|-
|  J1
|  Stiftleiste 1x02 RM2,54
|  Reichelt
|  MPE 087-1-002
|  Centteil
|-
|  J1a
|  Jumper
|  Reichelt
|  JUMPER 2,54 SW
|  Centteil
|-
|  K1
|  Anreihklemme 2-polig, RM5,08
|  Reichelt
|  AKL 073-02
|  Centteil
|-
|  K5
|  Header TFT,PIR, Stiftleisten 2,54 mm, 2X08, gerade
|  Reichelt
|  MPE 087-2-016
|  Centteil
|-
|  R1,R9,R13
|  Widerstand SMD-0805 1K
|  Reichelt
|  SMD-0805 1,0K
|  Centteil
|-
|  R2,R4,R5,R7,R8,R19,R28,R29
|  Widerstand SMD-0805 10K
|  Reichelt
|  SMD-0805 10,0K
|  Centteil
|-
|  R3
|  Widerstand SMD-0805 68K
|  Reichelt
|  SMD-0805 68,0K
|  Centteil
|-
|  R6
|  Widerstand SMD-0805 100K
|  Reichelt
|  SMD-0805 100K
|  Centteil
|-
|  X1
|  ESP32S NodeMCU mit CP2102
| [[Datei:ESP32S_NodeMCU_top.jpg|50px|thumb]]
[[Datei:ESP32S_NodeMCU_bottom.jpg|50px|thumb]]
|  12-15
|-
|  BME280 BreakoutBoard (4Pin: SDA,SCL,GND,3V3)
|  Aliexpress
|  [https://www.aliexpress.com/item/3In1-BME280-GY-BME280-Digital-Sensor-SPI-I2C-Humidity-Temperature-and-Barometric-Pressure-Sensor-Module-1/32659765502.html Link]
|  3
|-
|  IC4
|  FIGARO Air Quality Gas Sensor(TGS2600)
|  Aliexpress
|
|  3-4
|-
|  Seeed Studio PIR Motion Sensor
|  Exp-Tech
|  [http://www.exp-tech.de/seeed-studio-pir-motion-sensor-large-lens-version EXP-R02-351]
|  5-6
|}
|}


===Links===
==Links==
* [https://www.diefaeuste.de/owncloud/index.php/s/OkS8nfXkAtkgQEM Alle Dateien in der Cloud des Autors]
* [https://github.com/tobiasfaust/ Alle Dateien im Git des Autors]
 
 
----
 
 
;Quellen:
<references />
 


[[Kategorie:ESP8266]]
[[Kategorie:ESP8266]]
[[Kategorie:MQTT]]

Aktuelle Version vom 23. November 2018, 18:29 Uhr

ESP32 Innenraumsensor und -Steuerung
ESP32S Development Board
Allgemein
Protokoll WLAN
Typ Sensor
Kategorie HardwareMods
Technische Details
Kommunikation 2,4GHz
Kanäle
Betriebsspannung 3.3V
Leistungsaufnahme 1A-1.5A
Versorgung wired 5VDC
Abmessungen 640 x 640 mm
Sonstiges
Modulname 00_MQTT.pm 10_MQTT_DEVICE.pm
Ersteller für diesen Sketch: Tobias
Hersteller Expressif



Clock - Under Construction.svg An dieser Seite wird momentan noch gearbeitet.


Der ESP32 ist ein Ultra-low-Power-32-Bit-Mikrocontroller der chinesischen Firma espressif und die Weriterentwicklung des ESP8266. Der 32-Bit-Prozessorkern vom Typ 240 MHz dual core Tensilica LX6 microcontroller mit 600 DMIPS arbeitet mit einem Systemtakt von 80–160 MHz, hat 520 KB SRAM als Befehlspeicher, in dem 16 Megabyte Flash-Speicher eingeblendet werden können, 34x GPIO´s, eine SPI-Schnittstelle für Flash-Speichererweiterungen (bis zu 128 MBit) sowie integriertes WLAN IEEE 802.11 b/g/n und Bluetooth LE. Der ESP32 ermöglicht den Aufbau von stromsparenden WLAN-Sensoren für Anwendungen im Bereich Internet der Dinge.

Mit ihm lassen sich Sensoren und Aktoren drahtlos an FHEM anbinden. Sie lassen sich genau wie Arduinos über die Arduino IDE oder mit dem ino Kommandozeilen Binary programmieren. Dieser bildet das Herzstück des Sensors.

Weiterführende Information zum ESP8266 finden sich im zugehörigen Wiki Artikel.

Beschreibung

Dieser Innenraumsensor ist, wie der Name schon sagt, ein universeller Sensor - aber auch Aktor - für den Innenraum. Der Sensor ist komplett modular aufgebaut. Je nach Bedürfnissen und Anwendungsfall können die Komponenten bestückt und aufgesteckt werden. In der Grundkonfiguration ohne Huckepackplatinen ist neben der NodeMCU nur der Luftgütesensor und der DS18B20 auf dem Mainboard. Auch diese beiden Sensoren sind optional und müssen nicht zwingend bestückt werden.

Über die PinHeader werden die anderen Komponenten verbunden. Das betrifft den BME280 (Luftdruck-, Temp- und Luftfeuchtesensor), Den TSL Lichtsensor und den PIR-Sensor.

Der Sensor muss mit stabilen +5VDC versorgt werden per Schraubklemme. Wird kein VOC-Sensor und kein Nextio Display verbaut, kann jede Spannung für die die NodeMCU spezifiziert ist angelegt werden.

Die Kommunikation zwischen dem Modul und FHEM erfolgt bidirektional per MQTT über WLAN. Ein MQTT Server >= MQTT-Version 3.1.1 ist erforderlich

Folgende Funktionen sind/werden dort implementiert

  • Innenraumüberwachung für Alarmanlagen bzgl: Bewegung, starke Lichtschwankungen
  • Überwachung des Luftdrucks, Temperatur, Luftfeuchte
  • Überwachung der Helligkeit
  • Überwachung der allgemeinen Luftgüte der Raumluft
  • Anzeige aller Messwerte im Display
  • Steuerung einer Audio Raumbeschallung (zb. Deckenlautsprecher, Sonos, etc) in Kombination mit dem Fhem Modul 98_MediaList.pm
  • Menü und Anzeige für Heizkörperthermostat
  • Fenster-offen Meldungen
  • allgemeine Warnmeldungen, push von FHEM


technische Merkmale

  • NodeMCU ESP32S Development Board NodeMCU
  • Anschluss für ein Nextion Display
  • BME280 (Luftdruck-, Temp-, Luftfeuchtesensor)
  • PIR Modul (Bewegungsmelder)
  • VOC Sensor (TGS2600) (Luftgütesensor)
  • TSL2580 Helligkeitssensor

Schaltplan und Bauteilliste

Schaltplan
Platinenlayout Oberseite
Platinenlayout Unterseite
fertiger Aufbau

Bauteilliste:

Bauteil Bezeichnung Shop BauteilNr ca. Preis €
(ohne Lieferkosten)
C1,C3,C4,C5,C10 Keramikkondensator Typ:X7R 100nF Reichelt X7R-G0805 100N Centteil
D1,D2,D3 Low Current Leuchtdiode 3mm 2mA, Rot Reichelt LED 3MM 2MA RT Centteil
D1,D2,D3 Low Current Leuchtdiode 3mm 2mA, Gelb Reichelt LED 3MM 2MA GE Centteil
D1,D2,D3 Low Current Leuchtdiode 3mm 2mA, Grün Reichelt LED 3MM 2MA GN Centteil
J1 Stiftleiste 1x02 RM2,54 Reichelt MPE 087-1-002 Centteil
J1a Jumper Reichelt JUMPER 2,54 SW Centteil
K1 Anreihklemme 2-polig, RM5,08 Reichelt AKL 073-02 Centteil
K5 Header TFT,PIR, Stiftleisten 2,54 mm, 2X08, gerade Reichelt MPE 087-2-016 Centteil
R1,R9,R13 Widerstand SMD-0805 1K Reichelt SMD-0805 1,0K Centteil
R2,R4,R5,R7,R8,R19,R28,R29 Widerstand SMD-0805 10K Reichelt SMD-0805 10,0K Centteil
R3 Widerstand SMD-0805 68K Reichelt SMD-0805 68,0K Centteil
R6 Widerstand SMD-0805 100K Reichelt SMD-0805 100K Centteil
X1 ESP32S NodeMCU mit CP2102
ESP32S NodeMCU top.jpg
ESP32S NodeMCU bottom.jpg
12-15
BME280 BreakoutBoard (4Pin: SDA,SCL,GND,3V3) Aliexpress Link 3
IC4 FIGARO Air Quality Gas Sensor(TGS2600) Aliexpress 3-4
Seeed Studio PIR Motion Sensor Exp-Tech EXP-R02-351 5-6

Links




Quellen