Ich möchte Messergenisse in einer .csv Datei loggen, aber wenn ich die .csv Datei mit LibreOffice öffne erscheinen nur merkwürdige Zeichen. Wenn ich sie mit dem TextEditor öffnen möchte kommt die Meldung "The document was not UTF-8 valid". Ich bin ein ziemlicher Anfänger mit Python, was mache ich falsch und wie kann ich die Daten richtig anzeigen lassen?
Code: Alles auswählen
import adafruit_ccs811
import Adafruit_DHT
import busio
import time
import datetime
from board import *
import sys
import csv
# I2C-Bus definieren
i2c = busio.I2C(SCL, SDA)
# CCS811 (CO2-Sensor) an den I2C-Bus anbinden
ccs = adafruit_ccs811.CCS811(i2c)
# Sensor Typ auswählen (DHT11), GPIO Pin auswhählen (GPIO6) und Daten in Variable schreiben
sensor = Adafruit_DHT.DHT11
pin = 6
# CCS811 (CO2-Sensor) auslesen
def get_CO2():
CO2 = ccs.eco2
CO2 = str(CO2)
return(CO2)
# Temperatur auslesen
def get_temp():
humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
Temperatur = temperature
Temperatur = str(Temperatur)
return(Temperatur)
# Luftfeuchtigkeit auslesen
def get_LuFe():
humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)
Luftfeuchtigkeit = humidity
Luftfeuchtigkeit = str(Luftfeuchtigkeit)
return(Luftfeuchtigkeit)
# Datum auslesen
def get_Datum():
Heute = datetime.datetime.now().strftime("%Y-%m-%d")
Heute = str(Heute)
return(Heute)
# Uhrzeit auslesen
def get_Zeit():
Uhrzeit = datetime.datetime.now().strftime("%H:%M:%S")
Uhrzeit = str(Uhrzeit)
return(Uhrzeit)
# Gemessene Werte in eine CSV-Datei schreiben
def write_to_csv():
with open('/home/pi/Klimalogger/Logg_Messwerte.csv', mode='a') as Logg_Messwerte:
sensor_write = csv.writer(Logg_Messwerte, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL)
sensor_write.writerow([get_Datum(),get_Zeit(),get_temp(),get_LuFe(),get_CO2()])
return(write_to_csv)
write_to_csv()