Advertisement
b25s19_lieberwirth

Sensoren - DHT11

Nov 21st, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.17 KB | None | 0 0
  1. #!/usr/bin/python
  2. # -*- coding: utf-8 -*-
  3.  
  4. from datetime import datetime
  5. from time import sleep
  6. from RPi import GPIO
  7. import Adafruit_DHT
  8.  
  9. sensor = Adafruit_DHT.DHT11
  10. pin = 26
  11. LED_RED = 20
  12. LED_BLUE = 21
  13. delay = 10
  14.  
  15. def setup():
  16.   GPIO.setwarnings(False)
  17.   GPIO.setmode(GPIO.BCM)
  18.   GPIO.cleanup()
  19.   GPIO.setup(LED_RED, GPIO.OUT)
  20.   GPIO.setup(LED_BLUE, GPIO.OUT)
  21.  
  22. def destroy():
  23.   GPIO.cleanup()
  24.  
  25. def loop():
  26.   prev_temp = 0
  27.  
  28.   while (True):
  29.     ts = datetime.now()
  30.     h, t = Adafruit_DHT.read_retry(sensor, pin)
  31.  
  32.     if (t < prev_temp):
  33.       GPIO.output(LED_RED, GPIO.LOW)
  34.       GPIO.output(LED_BLUE, GPIO.HIGH)
  35.     elif (t > prev_temp):
  36.       GPIO.output(LED_RED, GPIO.HIGH)
  37.       GPIO.output(LED_BLUE, GPIO.LOW)
  38.     else:
  39.       GPIO.output(LED_RED, GPIO.HIGH)
  40.       GPIO.output(LED_BLUE, GPIO.HIGH)
  41.  
  42.     prev_temp = t
  43.  
  44.     print("Zeit: {} Temperatur: {0:0.1f}°C " +
  45.       "Luftfeuchtigkeit: {1:0.1f}%".format(ts, t, h))
  46.     sleep(delay)
  47.  
  48. if (__name__ == '__main__'):
  49.   setup()
  50.   print "Die Messung erfolgt alle %d Sekunden." % delay
  51.   print 'Programm mit CTRL-C beenden.'
  52.   try:
  53.     loop()
  54.   except (KeyboardInterrupt):
  55.     destroy()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement