-
Notifications
You must be signed in to change notification settings - Fork 0
/
auslesenloggen.py
56 lines (45 loc) · 1.44 KB
/
auslesenloggen.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#!/usr/bin/python3
import spidev
import os
import RPi.GPIO as gpio
from urllib.request import urlopen
import time
#import Adafruit_DHT as dht
from mcp3008 import mcp
# ThingSpeak API key hier eintragen
APIkey = '1UD90R8GS1L0217H'
# SPI Verbindung herstellen und Geschwindigkeit festlegen
spi = spidev.SpiDev()
spi.open(0,0)
spi.max_speed_hz = 1000000
# Daten vom MCP3008 lesen
#def mcp(channel):
# adc = spi.xfer2([1,(8+channel)<<4,0])
# data = ((adc[1]&3) << 8) + adc[2]
# return data
licht = mcp(0)
#sensor = dht.DHT11
#pin = 17
#feuchtigkeit, temperatur = dht.read_retry(sensor,pin)
# Messfehler abfangen
#if str(feuchtigkeit) !='None' and feuchtigkeit > 100:
# time.sleep(2)
temperatur,druck,feuchtigkeit = bme280.readBME280All()
#fobj_out = open("wetter.txt","a")
#fobj_out.write("\n"+time.strftime("%d.%m.%Y,%H:%M:%S") + ","+str(temperatur)+","+str(feuchtigkeit)+","+str(mcp(0)))
#fobj_out.close()
# Daten an Thingspeak senden
baseURL = 'https://thingspeak.com/update?key='
f1 = str(temperatur)
f2 = str(feuchtigkeit)
f3 = str(licht)
f4 = str(druck)
f = urlopen(baseURL + APIkey + '&field1=' + f1 + '&field2=' + f2 + '&field3=' + f3)
fdata = f.read()
fdata_out = open("tswrite.log","a")
# Website response in logfile schreiben
fdata_out.write("\n"+time.strftime("%d.%m.%Y,%H:%M:%S") + ","+str(fdata))
fdata_out.close()
#print(fdata)
f.close()
# Es wird ein cronjob in crontab -e angelget, der diese Datei regelmäßig ausführt. Bei Änderungen beachten.