|
 |

13.01.2013, 20:40
|
|
Benutzer
|
|
Registriert seit: 29.04.2012
Ort: Stuttgart
Beiträge: 314
|
|
Wunschliste
Bei der Einrichtung von smarthome.py sind mir ein paar Punkte aufgefallen, die ich mir in einem der nächsten Releases wünschen würde. Das meiste sind Kleinigkeiten, und das eine oder andere werde ich auch selbst beisteuern. - Abkehr vom hartkodierten Pfad /usr/local/smarthome/. Das ist in dieser Form ziemlich unelegant. Ich würde mir das modularer wünschen und die Pfade in der smarthome.conf angeben wollen.
- Dem Skript würde ich entsprechend gerne mindestens die Parameter pfad-zu-smarthome.conf und pid-file mitgeben können.
- Wenn ich das Skript mit --stop beende, funktioniert das zwar, aber es wird mit kill -9 abgeschossen. Ich weiß nicht, warum, aber das ist unschön.
- Für Sonnenauf- und -untergang muss ich gefühlt Berge an Kram nachinstallieren, wo es auch 30 Zeilen Python tun. Das geht auch einfacher. Den Code habe ich schon fertig, ich muss ihn aber noch integrieren.
- Aktuell wird bei Feuchtesensoren nur das Auslesen des Defaultwerts unterstützt (Pfad /humidity), was mindestens beim Multisensor 2.11 Grütze ergibt. Patch kommt.
Grüße,
Max
|

13.01.2013, 21:22
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 21.06.2010
Ort: Würzburg
Beiträge: 700
|
|
Hi Max,
Zitat von l0wside
- Abkehr vom hartkodierten Pfad /usr/local/smarthome/. Das ist in dieser Form ziemlich unelegant. Ich würde mir das modularer wünschen und die Pfade in der smarthome.conf angeben wollen.
- Dem Skript würde ich entsprechend gerne mindestens die Parameter pfad-zu-smarthome.conf und pid-file mitgeben können.
|
in dem Bereich wird sich auf jeden Fall was tun, ich wollte da für das Pi Image auf jeden Fall mal aufräumen.
Zitat von l0wside
- Wenn ich das Skript mit --stop beende, funktioniert das zwar, aber es wird mit kill -9 abgeschossen. Ich weiß nicht, warum, aber das ist unschön.
|
Ist ja eher ein Bug, müsste man mal analysieren.
Zitat von l0wside
- Für Sonnenauf- und -untergang muss ich gefühlt Berge an Kram nachinstallieren, wo es auch 30 Zeilen Python tun. Das geht auch einfacher. Den Code habe ich schon fertig, ich muss ihn aber noch integrieren.
|
30 Zeilen, lass sehen ;-). Bei 0.8 habe ich auch noch sh.moon inkl. Mondphase hinzugefügt.
Zitat von l0wside
- Aktuell wird bei Feuchtesensoren nur das Auslesen des Defaultwerts unterstützt (Pfad /humidity), was mindestens beim Multisensor 2.11 Grütze ergibt. Patch kommt.
|
Wieso kommst Du darauf? Du kannst doch einen beliebigen Sensor angeben.
Bis bald
Marcus
Geändert von mknx (13.01.2013 um 22:02 Uhr)
Grund: typo
|

14.01.2013, 11:04
|
|
Benutzer
|
|
Registriert seit: 29.04.2012
Ort: Stuttgart
Beiträge: 314
|
|
Zitat von mknx
30 Zeilen, lass sehen ;-). Bei 0.8 habe ich auch noch sh.moon inkl. Mondphase hinzugefügt.
|
Das braucht maximal meine mondsüchtige Kleine. Ansonsten zu Sonnenaufgang/-untergang:
Code:
# Python calculation of sunrise/sunset
# Calculations based on Formel für Sonnenaufgang, Sonnenuntergang und die Zeitgleichung
# Parameters in degrees and hours, internally in rad, day as number in year (1...366)
from math import sin, cos, acos, pi
def sunrise(day,lon,lat,tz,elev = -2):
return 12 - _time_ofs(day,lon*pi/180,tz) - _daylen2(day,lat*pi/180,elev*pi/180)
def sunset(day,lon,lat,tz,elev = -2):
return 12 - _time_ofs(day,lon*pi/180,tz) + _daylen2(day,lat*pi/180,elev*pi/180)
def _time_ofs(day,lon,tz):
return _localtime_delta(day) + 12*lon/pi - tz
# Half daylen
def _daylen2(day,lat,elev):
# print day , ",",lat,",",elev, "\n", day,",",lat*180/pi,",",elev*180/pi
return (12*acos((sin(elev) - sin(lat)*sin(_declination(day))) / (cos(lat)*cos(_declination(day))))/pi)
def _declination(day):
return (0.4095*sin(0.016906*(day-80.086)))
def _localtime_delta(day):
return (-0.171*sin(0.0337 * day + 0.465) - 0.1299*sin(0.01787 * day - 0.168))
Zitat von mknx
|
Zitat von l0wside
Aktuell wird bei Feuchtesensoren nur das Auslesen des Defaultwerts unterstützt (Pfad /humidity), was mindestens beim Multisensor 2.11 Grütze ergibt. Patch kommt.
|
Wieso kommst Du darauf? Du kannst doch einen beliebigen Sensor angeben.
|
Der Multisensor hat mehrere Feuchtigkeitswerte, die Pfade dazu lauten z.B. [sensor]/HIH3600/humidity und [sensor]/HIH4000/humidity und können auch nur so ausgelesen werden. Default (Pfad /humidity) liefert owfs bei mir den Wert für den HIH3600, es ist aber der HIH4000 verbaut. Deswegen passt dann die Umrechnungsformel nicht, und smarthome.py bekommt vom owfs falsche Werte serviert.
Ich könnte auch den owfs patchen, aber das war mir zu aufwändig. Meine Modifikation ergänzt (optional) einfach den Pfad entsprechend.
Gruß,
Max
|

14.01.2013, 17:24
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 21.06.2010
Ort: Würzburg
Beiträge: 700
|
|
Zitat von l0wside
Das braucht maximal meine mondsüchtige Kleine. Ansonsten zu Sonnenaufgang/-untergang:
|
Danke für den Code! Es sind sogar nur 14 Zeilen.
Mal sehen. Wenn ich keine Bilbliotheken verwende, dann verstehe ich den Code gerne. Und momentan verstehe ich den Code nicht. :-(
Zitat von l0wside
Der Multisensor hat mehrere Feuchtigkeitswerte, die Pfade dazu lauten z.B. [sensor]/HIH3600/humidity und [sensor]/HIH4000/humidity und können auch nur so ausgelesen werden. Default (Pfad /humidity) liefert owfs bei mir den Wert für den HIH3600, es ist aber der HIH4000 verbaut.
|
Und Du kannst ihn nicht mit:
Code:
ow_sensor = HIH4000/humidity
auslesen?
Bis bald
Marcus
|

14.01.2013, 17:28
|
|
Benutzer
|
|
Registriert seit: 23.07.2012
Ort: IBK
Beiträge: 144
|
|
|
Mal sehen. Wenn ich keine Bilbliotheken verwende, dann verstehe ich den Code gerne. Und momentan verstehe ich den Code nicht. :-(
|
man braucht nicht für alles libs und irgendwelche webabfragen
auf/untergang lässt sich mathematisch berechnen und stimmt in etwa +-5 minuten in hauptzeiten überein.
siehe: Formel für Sonnenaufgang, Sonnenuntergang und die Zeitgleichung
|

14.01.2013, 19:31
|
 |
Erfahrener Benutzer
|
|
Registriert seit: 21.06.2010
Ort: Würzburg
Beiträge: 700
|
|
Zitat von l0wside
Das braucht maximal meine mondsüchtige Kleine.
|
Ich dachte bei dem Use Case eher an "Beschattung" bei Vollmond.
@fanta2k: klar man Berechnungen auch mathematisch durchführen. ;-)
Ein Patch der die lib/orb.py ohne externe Abhängigkeiten ersetzt und weitere Anpassung vermeidet werden gerne angenommen.
Bis bald
Marcus
|
| Themen-Optionen |
|
|
| Ansicht |
Linear-Darstellung
|
Forumregeln
|
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 12:40 Uhr.
|