13 #a = 7.5, b = 237.3 fuer T >= 0
\r
14 #a = 7.6, b = 240.7 fuer T < 0 ueber Wasser (Taupunkt)
\r
15 #a = 9.5, b = 265.5 fuer T < 0 ueber Eis (Frostpunkt)
\r
18 Rs = 8314.3 #J/(kmol*K) (universelle Gaskonstante)
\r
19 mw = 18.016 #kg/kmol (Molekulargewicht des Wasserdampfes)
\r
22 return 6.1078 * 10**((a*T)/(b+T))
\r
25 return r/100.0*SDD(T)/(T+273.15)*mw/Rs*10000
\r
28 return a*100/(SDD(T)/(T+273.15)*mw/Rs*10000)
\r
29 #print(0.5*SDD(20)/(20+273.15)*mw/Rs*10000)
\r
31 def rdiff(r1,t1,t2):
\r
32 return (r1)-RF1(AF1(r1,t1),t2)
\r
35 def calcDerivation(Name,Valuetype,Value,T):
\r
41 f=open("DEVLIST.txt","r")
\r
42 for l in f.readlines():
\r
45 devdict[ls[0]]=l.replace("\n","").split(",")[0].split(" ")[1]
\r
46 devwholist.append(ls[0])
\r
49 sel_list=["Temperatur","Luftfeuchte","Beleuchtungsstaerke","R0","VOC","RS","Corr"]
\r
52 data.append(["Time"])
\r
54 for ds in devwholist: #fuer Jedes Geraet in DEVLIST.txt
\r
55 fname="log_%s.ow1" %(ds) #Sind Daten da?
\r
56 if os.path.exists(fname):
\r
57 f=open(fname,"r") #Lesen
\r
59 ti=lines[0][:-1].split("\t") #Ueberschriften aufteilen
\r
61 if ("Temperatur" in ti):
\r
62 tempindex=ti.index("Temperatur")
\r
63 for t in ti: #fuer jedes Element in der Ueberschrift
\r
64 if t in sel_list: #schauen ob es Uebernommen werden soll
\r
65 p=sel_list.index(t) #schaue nach Nummer in der Datenbank
\r
66 data[p][0]=data[p][0]+","+ds+" "+devdict[ds] #hinzufuegen der Ueberschrift in der Tabelle
\r
67 if len(data[p])==1: #erstes Element, Time einfuegen und neue zeile anlegen
\r
73 ts=lb[2]+"/"+lb[1]+"/"+lb[0]+" "+la[1]
\r
78 l=l[:-1] #\n wegmachen
\r
79 ll=l.split("\t") #telen
\r
80 fl=float(ll[i].replace(",","."))
\r
81 if "VOC" in devdict[ds] or "Lum" in devdict[ds]:
\r
82 if (t=="Temperatur"):
\r
85 if (t=="Luftfeuchte"):
\r
86 ltemp=float(ll[tempindex].replace(",","."))
\r
87 fl=fl-rdiff(fl,ltemp,ltemp-1)
\r
88 data[p][j]=data[p][j]+",%0.2f" % (fl)
\r
96 for i in range(len(sel_list)):
\r
97 f=open("/var/www/html/"+sel_list[i]+".csv","w")
\r