Code: Alles auswählen
dtoverlay=w1-gpio,gpiopin=4,pullup=on
Code: Alles auswählen
sudo modprobe w1-gpio pullup=1
sudo modprobe w1-therm
Code: Alles auswählen
cat /sys/bus/w1/devices/<deviceID>/w1_slave
Um nun die Werte automatisiert in eine MySQL Datenbank eintragen zu lassen habe ich in meinem Fall ein Python Script verwendet. Um mit Python auf MySQL zugreifen zu können müssen folgende Pakete installiert werden:
Code: Alles auswählen
aptitude update
aptitude install python-mysqldb python-mysql.connector
datum(Datetime), sensor(varchar(30)), daten(int(11)). Hierbei habe ich die Felder Datum und Sensor als Primary angegeben.
Mit folgendem Script können nun die ermittelten Sensordaten an die Datenbank übergeben werden. Wenn die Datenbank gleich aufgebaut ist wie meine, müssen nur noch die mit <> umschlossen Texte durch die eigenen Werte ersetzt werden.
Code: Alles auswählen
#!/usr/bin/python
import MySQLdb
import commands
from time import *
import mysql.connector
temp = commands.getoutput("cat /sys/bus/w1/devices/<DeviceID>/w1_slave")
temp = temp[temp.index('t=')+2:]
lt = localtime()
date = strftime("%Y-%m-%d %H:%M:%S",lt)
sql = "insert into themperatur (datum,sensor,daten) values ('" + date + "','<Sensorname>','" + temp + "');"
cnx = mysql.connector.connect(host="<Hostname_des_MySQL-Servers>", user='<username>',passwd="<passwort>", database='wetter')
cursor = cnx.cursor()
cursor.execute(sql)
emp_no = cursor.lastrowid
cnx.commit()
cursor.close()
cnx.close()
Code: Alles auswählen
crontab -e
Code: Alles auswählen
*/30 * * * * <Skriptpfad>