Re: [vz-users] DHT11 - Scriptdatei

2019-01-27 Diskussionsfäden Daniel Lauckner
Hallo,


ich bin auch eher für die Middleware als Schnittstelle, weiß aber
auch das andere im Projekt das nicht so sehen. Argument beim
Entwicklertreffen war das genau darin der Vorteil von SQL liegt, es
geht einfach und kann fast jeder.

Wobei trotzdem die Frage im Raum stand ob bei den aktuellen
Entwicklungen im Bereich der DBs nicht vielleicht was dabei ist was
zu unserer Anwendung besser passt. Sollte da wirklich was kommen
macht das alle Scripte und Anwendungen unbrauchbar die nicht über
die Middleware laufen.


Am konkreten Beispiel stört mich das mit channel_id statt UUID
gearbeitet wird. Dazu dann das die "Einstellwerte" (Pin auch) mitten
im Code versteckt sind. Von daher hab ich vorbehalte das so ins Wiki
zu übernehmen.
Bei meinen Scripten gibts immer klare Deklaration zu Beginn, der Rest
kann ignoriert werden (solange es tut), man muss den Code nicht
verstehen um ihn anzuwenden.


mfg Daniel



Re: [vz-users] DHT11 - Scriptdatei

2019-01-26 Diskussionsfäden Rupert Schöttler
Hallo Christian,

Am 26.01.19 um 13:29 schrieb Christian S:
> Sollte man nicht eher die Daten abliefern via "middleware"?


M.E. funktionieren beide Wege gleich gut und sind daher
gleichberechtigt. Klar, wer direkt in die DB schreibt, muss wissen, was
er/sie tut. Die Middleware fängt viele Fehler ab.

Auch das wäre Wiki-Einträge wert: Beispiel-Skripte, wie man mit den
vielen verschiedenen Sprachen die DB oder die Middleware anspricht.
Bisher ist das weit verteilt.

Viele Grüße

Rupert




smime.p7s
Description: S/MIME Cryptographic Signature


Re: [vz-users] DHT11 - Scriptdatei

2019-01-26 Diskussionsfäden Christian S
Hallo.

Sollte man nicht eher die Daten abliefern via "middleware"?

Grüße

Am Sa., 26. Jan. 2019 um 13:23 Uhr schrieb Rupert Schöttler <
rupert.schoett...@gmx.de>:

> Hallo Peer,
>
> Am 26.01.19 um 01:51 schrieb Peer Janssen:
> > Hier nochmal das Script als Datei (in der Mail eben waren die
> > Zeilenumbrüche unschön).
> >
> > Außerdem als Bonus noch ein Converter-Script für die alten Daten (als
> > Beispiel), und ein Screenshot.
> >
> Danke, dass Du Deine Skript-Entwicklung hier teilst! Ich bin kein
> Python-Kenner, aber sie sehen für mich sehr elegant und kompakt aus und
> sollten daher meiner Meinung nach daher ins Wiki eingehen. Magst Du Dich
> dort registrieren? Justin müsste Dir dann noch Schreibrecht geben, und
> Du könntest z.B. unter Hardware -> Sensors einen DHT-Eintrag anlegen.
> Von DHT22 hattest Du vorher ja "abgekupfert" :-)
>
> Nur eine Anmerkung: Sollte die Datenbank-Verbindung, die mit
> MySQLdb.connect geöffnet wird, nicht zum Schluss auch geschlossen
> werden? Ich hab' ja keine Ahnung, wie Python am Ende eines Skripts
> tickt, aber wenn die Verbindung offen bleibt und jede Minute eine neue
> geöffnet wird, könnte es irgendwann Probleme geben...
>
> Viele Grüße
>
> Rupert
>
>
>


Re: [vz-users] DHT11 - Scriptdatei

2019-01-26 Diskussionsfäden Rupert Schöttler
Hallo Peer,

Am 26.01.19 um 01:51 schrieb Peer Janssen:
> Hier nochmal das Script als Datei (in der Mail eben waren die
> Zeilenumbrüche unschön).
>
> Außerdem als Bonus noch ein Converter-Script für die alten Daten (als
> Beispiel), und ein Screenshot.
>
Danke, dass Du Deine Skript-Entwicklung hier teilst! Ich bin kein
Python-Kenner, aber sie sehen für mich sehr elegant und kompakt aus und
sollten daher meiner Meinung nach daher ins Wiki eingehen. Magst Du Dich
dort registrieren? Justin müsste Dir dann noch Schreibrecht geben, und
Du könntest z.B. unter Hardware -> Sensors einen DHT-Eintrag anlegen.
Von DHT22 hattest Du vorher ja "abgekupfert" :-)

Nur eine Anmerkung: Sollte die Datenbank-Verbindung, die mit
MySQLdb.connect geöffnet wird, nicht zum Schluss auch geschlossen
werden? Ich hab' ja keine Ahnung, wie Python am Ende eines Skripts
tickt, aber wenn die Verbindung offen bleibt und jede Minute eine neue
geöffnet wird, könnte es irgendwann Probleme geben...

Viele Grüße

Rupert




smime.p7s
Description: S/MIME Cryptographic Signature


Re: [vz-users] DHT11 - Scriptdatei

2019-01-25 Diskussionsfäden Peer Janssen
Hier nochmal das Script als Datei (in der Mail eben waren die
Zeilenumbrüche unschön).

Außerdem als Bonus noch ein Converter-Script für die alten Daten (als
Beispiel), und ein Screenshot.

-- 
Peer Janssen - p...@pjk.de

#!/usr/bin/python
import time
ts = time.time()
timestamp = int(ts * 1000)

import Adafruit_DHT
sensor = Adafruit_DHT.DHT11
pin = 17
humidity, temperature = Adafruit_DHT.read_retry(sensor, pin)

#TODO:
#d=`date +%Y-%m-%d_%H:%M`
#echo "$d [DHT11] $WERTE" >> /home/pi/dht11/dht11.log

import MySQLdb
db = MySQLdb.connect('localhost', 'vz-admin', 'secure', 'volkszaehler')
c = db.cursor()

if temperature is not None:
channel_id = 2
c.execute('INSERT INTO data (channel_id, timestamp, value) VALUES (%s, %s, %s)', (channel_id, timestamp, temperature))

if humidity is not None:
channel_id = 3
c.execute('INSERT INTO data (channel_id, timestamp, value) VALUES (%s, %s, %s)', (channel_id, timestamp, humidity))

db.commit()
#!/usr/bin/python

#2019-01-26_00:07 [DHT11] Temp=18.0*  Humidity=16.0%

import time

import MySQLdb
db = MySQLdb.connect('localhost', 'vz-admin', 'secure', 'volkszaehler')
c = db.cursor()

for line in open('dht11.log').readlines():
  line = line.rstrip('\r\n')
  time_ = line[0:16]
  timestamp = int(time.mktime(time.strptime(time_, '%Y-%m-%d_%H:%M')) * 1000)
  temperature = float(line[line.find('Temp=')+5:line.find('*')])
  humidity = float(line[line.find('Humidity=')+9:line.find('%')])
  print time_, timestamp, temperature, humidity

  if temperature is not None:
channel_id = 2
c.execute('INSERT INTO data (channel_id, timestamp, value) VALUES (%s, %s, %s)', (channel_id, timestamp, temperature))

  if humidity is not None:
channel_id = 3
c.execute('INSERT INTO data (channel_id, timestamp, value) VALUES (%s, %s, %s)', (channel_id, timestamp, humidity))

db.commit()