hardware:channels:sensors:sensorless_outdoor_temp
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
hardware:channels:sensors:sensorless_outdoor_temp [2019/02/06 02:18] – entpersonalisiert, FE-Link, Syntaxhighlight, crontab jau | hardware:channels:sensors:sensorless_outdoor_temp [2020/04/27 14:44] – Fixed typos trabant | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
====== Außentemperatur ohne Sensor ====== | ====== Außentemperatur ohne Sensor ====== | ||
- | Gerade zur Auswertung von Heizkurven oder Stromverbräuchen elektrischer Heizungen wie Wärmepumpen | + | |
+ | Gerade zur Auswertung von Heizkurven oder dem Verbrauch von Heizungsanlagen | ||
{{: | {{: | ||
- | Das ist auch völlig | + | Das ist auch ohne weitere Hardware möglich mittels Abfrage eines Online-Wetterdienstes, |
- | Die Daten werden mittels Python-Skript als JSON-File von openWheatherMap | + | Die Daten werden mittels Python-Skript als JSON-File von OpenWeatherMap |
- | Der Aufruf der Python-Skripts erfolgt z.B. mittels Cronjob auf dem Rechner mit der volkszaehler-Installation. | + | Der Aufruf der Python-Skripts erfolgt z.B. mittels Cronjob auf dem Rechner mit der Volkszähler-Installation. |
- | Auf openweathermap.com muss ein Account angelegt werden, um eine " | + | Auf openweathermap.org muss ein Account angelegt werden, um eine " |
- | Die City-ID im Skript muss auf openweathermap | + | Die City-ID im Skript muss auf OpenWeatherMap |
[[https:// | [[https:// | ||
Die City-ID taucht nach Suche und Auswahl der Stadt in der URL auf, z.B. '' | Die City-ID taucht nach Suche und Auswahl der Stadt in der URL auf, z.B. '' | ||
- | Einen Channel | + | Zuerst einen Kanal für die Außentemperatur übers [[/ |
- | Das Pyhton-Skript benötigt das Paket requests: | + | Das folgende Python-Skript benötigt das Paket //requests//; sollte es noch nicht vorhanden sein, lässt es sich auf dem Volkszähler-Image wie folgt nachinstallieren: |
< | < | ||
- | pip install requests | + | apt-get |
</ | </ | ||
- | Das vollständige Skript getWetter.py: | + | Das vollständige Skript getWetter.py |
<code python getWetter.py> | <code python getWetter.py> | ||
- | import | + | # |
- | import requests | + | from requests |
url = " | url = " | ||
- | response = urllib.urlopen(url) | ||
- | data = json.loads(response.read()) | ||
- | temp = str(data["main"][" | + | try: |
+ | resp = get(url) | ||
+ | | ||
+ | except: | ||
+ | print("URL load failed") | ||
+ | raise SystemExit(2) | ||
- | #http-POST to volkszaehler | + | temp = float(data[" |
- | r = requests.post(" | + | #pres = float(data[" |
+ | #humi = float(data[" | ||
+ | |||
+ | try: | ||
+ | post(" | ||
+ | #post(" | ||
+ | # | ||
+ | except: | ||
+ | print(" | ||
+ | raise SystemExit(3) | ||
</ | </ | ||
+ | Wer möchte kann auch Luftdruck und Luftfeuchte importieren, | ||
- | Und nun noch einen Cronjob einrichten: | + | Nun das Skript ausführbar machen: |
- | < | + | < |
+ | |||
+ | Und noch einen Cronjob einrichten: | ||
+ | < | ||
Diese Zeile ergänzen für eine Abfrage alle 5 Minuten: | Diese Zeile ergänzen für eine Abfrage alle 5 Minuten: | ||
< | < | ||
- | */5 * * * * root python | + | */5 * * * * /home/pi/bin/ |
</ | </ | ||
+ | |||
+ | <note tip> | ||
+ | < | ||
+ | */5 * * * * systemd-cat / | ||
+ | </ | ||
+ | |||
+ | <note tip>Wer anstelle der Daten von Openweathermap lieber einzelne Wetterstationen abfragen möchte, kann dies z.B. über den Dienst von Weather.com/ |
hardware/channels/sensors/sensorless_outdoor_temp.txt · Zuletzt geändert: 2020/07/17 12:37 von jau