Grautier.com - Projekte

Geht nicht gibt es nicht !!!

Benutzer-Werkzeuge

Webseiten-Werkzeuge


elektronik:sensoren:wlansensor

Raumsensor - Temperatur / Lichtsensor mit dem ESP8266

Beschreibung

Für mein SmartHome brauchte ich ein Modul welches einen Temperatur und Lichtsensor hat, als Stromversorgung habe ich 9V benutzt bis 12V ist mit dem Spannungsregler kein Problem.
UART und I2C sind auf einem Pinheader für Erweiterungen und zum Programmieren, damit ich die Platine nicht direkt an die Wand Schrauben muss hab ich noch mir ein kleines Case dazu gemacht.

EDIT: Mittlerweile gibt es eine Sensor-Erweiterung für meine Flächenheizung.

Technische Daten

Temperatur

  • 0.5°C Accuracy (Typ.)
  • Operates from -55°C to +125°C
  • Supply Range: 2.7V to 5.5V
  • Standard 2-Wire Serial Interface
  • 5V Tolerant I/O at VDD = 3V
  • 250 μA (Typ.) Operating
  • 1 μA (Typ.) Shutdown Mode

Licht

  • Temperaturbereich-20 … +70 °C
  • Wellenlänge530 nm
  • Leistung 90 m W
  • Lichtstärke 70-200 lux
  • Widerstand bei E=10 Lux: 70 - 200 kOhm
  • Widerstand bei 1 sek Dunkelheit: 1,0 MOhm
  • Widerstand bei 5 sek Dunkelheit: 3,0 MOhm

Schaltpläne / Firmware

Bauteilliste

Bauteil Stückzahl Bauform Wert Bestellnummer Händler Preis Anmerkungen
C1-3,C5,C8-10 7 0805 100n X7R-G0805 100N Reichelt 0,04 C5 Abweichend vom Schaltplan
C6,C7 2 6032 10µ
D1 1 DO41-10 1N4004 1N 4004 Reichelt 0,04
IC2 1 SOT223 LM1117 LT 1117 CST-3.3 Reichelt 3,70 Alternativ AM1117 von ebay/Amazon 0,30€/stk.
JP1/JP2 2 1×04/90 -
PH1 1 TO-46 A905014 A 905014 Reichelt 1,10
R1,3 2 0805 1k SMD-0805 1,00K Reichelt 0,10
R2 1 0805 8,2k SMD-0805 8,2K Reichelt 0,10 Abweichend vom Schaltplan
R4 1 0805 10k SMD-0805 10,0K Reichelt 0,10
R5 1 0805 3,3k SMD-0805 3,30K Reichelt 0,10
S1, S2 2 B3F-10 - TASTER 9314 Reichelt 0,30
U$1 1 ESP-07 - - Amazon 2,99
U$2 1 SOIC8 TCN75AV - - -
X2 1 sl35-2.0 - - - -
  • Achtung !!! 2 x 4,7k Pulups für I²C nicht vergessen, wegen einer eventuellen Erweiterung sind die nicht auf dem PCB.

Firmware

Als Basis Firmware kommt esp8266Basic ESP-Basic 3.0.Alpha 59

wlansensor.bas
' Variablen
'
addr = 73                 ' I2C-Adresse 7bit Dezimal fuer den TNC75
mwkp = 0.0                ' Positive Messwertkorrektur fuer den TNC75
mwkn = 0.0                ' Negative "                              "
'
' ADC
'
adc = io(ai)
wprint ("Licht: ")
adc = adc / 10.24
wprint (adc)
wprint (" %")
wprint ("<br>")
'
' I2C -> TNC75
'
i2c.setup(5, 4)
i2c.begin(addr)
i2c.write(0)
i2c.end()
i2c.requestfrom(addr,2)
lsb = i2c.read()
msb = i2c.read()
'
' I2C Daten Auswertung -> TNC75 +0 - +125c
'
wprint ("Temperatur: ")
tmp = lsb / 2
tmp = tmp + mwkp
tmp = tmp - mwkn
wprint (tmp)
wprint (" C")
wprint ("<br>")
end

Bilder

Temperatur - Addon über I2C

Beschreibung

Ich brauchte noch was um meine Flächenheizung überwachen zu können, dazu hab ich einen Raumsensor und eine kleine Platine mit Temperatursensor benutzt um Vorlauf, Rücklauf und die Rückleitungen zu den Zimmern Auswerten zu können, ich hab dafür die gleichen Sensoren benutzt wie sie auch schon im Raumsensor verwendet wurden, diese werden einfach per Kabelbinder an den Rohren Fixiert zur besseren Wärmeübertragung hab ich noch einen kleinen Klecks WLP benutzt.

Technische Daten

Temperatur

  • 0.5°C Accuracy (Typ.)
  • Operates from -55°C to +125°C
  • Supply Range: 2.7V to 5.5V
  • Standard 2-Wire Serial Interface
  • 5V Tolerant I/O at VDD = 3V
  • 250 μA (Typ.) Operating
  • 1 μA (Typ.) Shutdown Mode

Bauteilliste

Bauteil Stückzahl Bauform Wert Bestellnummer Händler Preis
C1 1 0805 100n X7R-G0805 100N Reichelt 0,04
C2 1 1206 22µ
JP1,JP2 2 1×04/90 -
U$1 1 TCN75
  • Achtung !!! 2 x 4,7k Pulups für I²C nicht vergessen.

Firmware

Als Basis Firmware kommt esp8266Basic ESP-Basic 3.0.Alpha 66

wlansensor.bas
i2c.setup(5, 4)
' RL-Wohnzimmer
i2c.begin(72)
i2c.write(0)
i2c.end()
i2c.requestfrom(72,2)
lsb = i2c.read()
msb = i2c.read()
wprint ("RL-Wohnzimmer: ")
wprint (lsb / 2) & (" C")
wprint ("<br>")
'Umgebungs-Temperatur
i2c.begin(73)
i2c.write(0)
i2c.end()
i2c.requestfrom(73,2)
lsb = i2c.read()
msb = i2c.read()
wprint ("Umgebungs-Temperatur: ")
wprint (lsb / 2) & (" C")
wprint ("<br>")
' RL-Schlafzimmer
i2c.begin(75)
i2c.write(0)
i2c.end()
i2c.requestfrom(75,2)
lsb = i2c.read()
msb = i2c.read()
wprint ("RL-Schlafzimmer: ")
wprint (lsb / 2) & (" C")
wprint ("<br>")
' RL-Bad
i2c.begin(76)
i2c.write(0)
i2c.end()
i2c.requestfrom(76,2)
lsb = i2c.read()
msb = i2c.read()
wprint ("RL-Bad: ")
wprint (lsb / 2) & (" C")
wprint ("<br>")
' RL
i2c.begin(77)
i2c.write(0)
i2c.end()
i2c.requestfrom(77,2)
lsb = i2c.read()
msb = i2c.read()
wprint ("RL: ")
wprint (lsb / 2) & (" C")
wprint ("<br>")
' VL
i2c.begin(72)
i2c.write(0)
i2c.end()
i2c.requestfrom(72,2)
lsb = i2c.read()
msb = i2c.read()
wprint ("VL: ")
wprint (lsb / 2) & (" C")
wprint ("<br>")
end

Bilder

sandfrog 22/12/2016 21:59

Diskussion

Geben Sie Ihren Kommentar ein. Wiki-Syntax ist zugelassen:
S U᠎ K D G
 
elektronik/sensoren/wlansensor.txt · Zuletzt geändert: 13/02/2017 04:05 (Externe Bearbeitung)