Moin,
ich schreibe gerad ein Modul zur Sonnen Simmulation für Terrarien. Dafür benötige ich einen Timer. Leider funktioniert der nicht so wie beschrieben.
In der Define steht folgendes um den Timer erstmalig zu starten:
Zitat
my $addSec = 60 - $sec + 10; # soll in jeder Minute bei Sec 10 ausgeführt werden
RemoveInternalTimer($hash);
InternalTimer(gettimeofday() + $addSec, "SunSimulation_SunTimer" ,$hash, 0);
Leider startet der Timer nicht.
Woran könnte das liegen?
MfG
Boklu
Du müsstest du erst mal die aktuelle Zeit in Sekunden auf ganze Minuten aufrunden und dann 10 drauf rechnen. Und je nachdem was in $sec drin steht, könnte $addSec negativ werden und dein timer wird niemals ausgeführt.
- das ist doch keine Frage für den Anfängerbereich?
- das was Du da tun willst, läßt sich problemlos per at und alignAtime lösen, für sowas Banales muss man kein "Modul schreiben", dafür reichen maximal zwei Zeilen in der 99_myUtils.pm
Nein, das läst sich nicht per at oder DOIF machen.
Schau Dir doch das at Modul an, da ist sowas gelöst worden.
Nein, ist es nicht!
Es geht darum eine Lampe in einen Zeitfenster inkl. Mittagspause um Überhitzung vorzubeugen, in einen züfälligen Intervall über dem Tag immer wieder ein und auszuschalten.
Dabei werden die minimal und maximal Einschaltzeit sowie die minimal und maximale Ausschaltzeit berücksichtigt.
Das Zeitfenster sowie die Intervalle verändert sich über das Jahr.
Habe den Fehler gefunden. War natürlich meiner! :-(
Zitat von: boklu am 21 April 2018, 19:46:38
Nein, das läst sich nicht per at oder DOIF machen.
Da irrst du dich, ich würde tippen ein 10-Zeiler mit DOIF-Perl.
Es kann aber nicht schaden sich in die Programmierung von Modul einzuarbeiten.
Zitat von: boklu am 21 April 2018, 20:17:35
Habe den Fehler gefunden. War natürlich meiner! :-(
EIne kurze Beschreibung der Lösung + [Gelöst] vor das Subject des ersten Posts wäre schön :-)
Nur abgesehen davon, dass es dem Fragesteller wohl nicht ganz klar ist, dass dies keine sinnvolle "Sonnensimulation" ist, und wohl auch nicht, was es mit "zufälligen Intervallen" auf sich hat: 10 Zeilen.
LG
pah
Doch das ist dem Fragesteller klar.
Evtl. verstehe ich nur etwas anderes unter Sonnenscheinsimulation.
Es ist etwas sehr spezielles für Hochlandreprilien.
Das das mit einem DOIF-10zeiler glaube ich nicht.
Ich lasse mich aber gerne eines Besseren belehren.
Mein Modul läuft jetzt jedenfalls wie gewünscht.
Dann bitte auf gelöst stellen.
Und bitte die Lösung posten, dass die Nachwelt auch was davon hat. Gerne auch die Alternativen, wer sie denn versucht hat :)
Zitat von: Amenophis86 am 22 April 2018, 18:03:40
Und bitte die Lösung posten, dass die Nachwelt auch was davon hat. Gerne auch die Alternativen, wer sie denn versucht hat :)
Wenn konkrete Vorgaben da wären, würde ich mir sogar mal die Mühe machen.