Skip to content
This repository was archived by the owner on Dec 9, 2022. It is now read-only.

Commit 7fcea46

Browse files
committed
sensorLogger now inserts value in db in the right order
readSensor now closes serialconection even if exception ocurred
1 parent 2eec4a1 commit 7fcea46

4 files changed

Lines changed: 11 additions & 6 deletions

File tree

readSensor.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,13 @@
33
def readSensor():
44
ser = serial.Serial(port="/dev/ttyUSB0", baudrate=9600, timeout=3)
55
ser.open()
6+
ser.flushInput() # flush old input before getting new
67
input = ser.readline()
78
try:
89
sensor = re.split(" Sensor: | ", input)[1]
910
except:
1011
#print "Incorretly formated:", input
12+
ser.close()
1113
return readSensor()
1214

1315
if sensor == "Temp":
@@ -31,3 +33,4 @@ def main():
3133

3234
if __name__ == "__main__":
3335
main()
36+
main()

sensorLogger.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
import sqlite3, time, datetime
1+
import sqlite3, time, datetime, os
22
import readSensor
33

44
#settings
55
loggTime = 5 # nr of minutes between logging to db
6-
sensorLookUp = {"10 DE C6 35 1 8 0 86" : "outside", \
6+
sensorLookUp = {"10 DE C6 35 1 8 0 86" : "indoor", \
7+
"10 87 35 36 1 8 0 5E" : "outdoor", \
78
"10 C4 EB 35 1 8 0 6" : "test"}
89

910
def logging():
@@ -33,8 +34,8 @@ def logging():
3334
for name in sensorReadings:
3435
#date, time, value, sensor, name
3536
c.execute("insert into sensors values(?, ?, ?, ?, ?)",\
36-
[date, time, sensorReadings[name][0], \
37-
sensorReadings[name][1], name])
37+
[date, time, sensorReadings[name][1], \
38+
sensorReadings[name][0], name])
3839

3940
conn.commit();
4041
c.close()
@@ -50,6 +51,7 @@ def main():
5051
if minutesToday % loggTime == 0 and lastLoged != minutesToday:
5152
lastLoged = minutesToday
5253
logging()
54+
os.system("gnuplot temp.plot")
5355
time.sleep(30) # sleep 30 seconds
5456

5557

sensors.db

256 KB
Binary file not shown.

temp.plot

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@ set xlabel "Datetime"
44
set ylabel "Celcius"
55

66
set terminal png
7-
set output "temp.png"
7+
set output "/var/www/temp.png"
88
set datafile separator "|"
99
set style data lines
1010
set grid
1111
set yrange [0:*]
1212
set xdata time
1313
set timefmt x "%H:%M"
1414
set format x "%H:%M"
15-
plot "< sqlite3 temp.db \"SELECT time, degree from temp where date = date('now') and sensor = 'test';\"" using 1:2 title "test", "< sqlite3 temp.db \"SELECT time, degree from temp where date = date('now') and sensor = 'outside';\"" using 1:2 title "outside"
15+
plot "< sqlite3 sensors.db \"SELECT time, value from sensors where date = date('now') and name = 'outdoor';\"" using 1:2 title "outdoor", "< sqlite3 sensors.db \"SELECT time, value from sensors where date = date('now') and name = 'indoor';\"" using 1:2 title "indoor"

0 commit comments

Comments
 (0)