Nach nem Crash wird die Uhrzeit geladen und da weiter gemacht. es gibt also 0 unterschied. Hatte erst überlegt und angefangen einiges über Trigger und Timers laufen zu lassen wie weiter vorne angedacht, dann ist mir aber dieses Problem aufgefallen. Evt werden daher nur die Dosierpumpen über Timers laufen, alles andere hat aber immer feste Uhrzeiten und/oder errechnete Uhrzeiten.gartentiger":3pv80vus schrieb:Wie sieht das eigentlich bei Stromausfällen aus?
Startet da der Comp an der Stelle wo unterbrochen wurde, fängt er wieder von vorne an oder geht er womöglich gleich dahin, wo er nach Programmierung sein sollte?
Wüsste ich im moment nicht wie ich das umsetzen sollte...gartentiger":3pv80vus schrieb:Ebenso würde es in dem Atemzug Sinn machen, dass die Gesamtbeleuchtung auf z.B. 30-40% gedimmt wird
Hintergrund: Mir ist tatsächlich mal ein Außenfilter hängen geblieben und hatte das erst 3 Tage später bemerkt. Bei voller Beleuchtung hatte mir das Becken den Ausfall ziemlich übel genommen. Beim gedimmten Licht wirst aber automatisch aufmerksamfeifen:
lg Chris
SD Card ist bisschen Tricky, aber möglich. Die Adapter die Ich bis jetzt gefunden haben laufen über SPI. Das macht aber leider auch der TLC5490 für die Dimmung. Daher muss man hier einiges umschreiben wenn man es dann möchte (möglich ist es). Ich habe vorgesehen das interne EEPROM zu benutzen. hier hat man zwar nur 2kb und dieses hält "nur" 100.000 Schreibzyclen, durch gezielte befehle (update und überprüfen ob änderung da ist anstelle von write) sollte dies aber nicht das Problem werden. Ausserdem habe Ich den Code im moment soweit optimiert das z.B. die Festlegung ob ein TLC Kanal für Tagesdimmung oder Nachtdimmung da ist nur 1 bit belegt. Ich passe also sehr auf den Speicher auf und verbrauche im moment ca 38byte.Harrdy":3pv80vus schrieb:Wo werden Einstellungen gespeichert? Da keine SD Karte verbaut ist müsste man sich ja quasi fast zwangsweise noch nen Ethernet Shield mit SD Karte zulegen. Will nicht jedes mal sämtliche Einstellungen die im Menü gemacht wurden erneut eingeben. Sobald der Strom mal weg war.
//Dünger Zeiten
float d1Time= get_ts(9,0,0); // 9:00
float d2Time= get_ts(10,0,0);
float d3Time= get_ts(11,0,0); // 11:00
float d4Time= get_ts(20,0,0); // 18:00
float d5Time= get_ts(21,0,0); // 12:00
Möglich, aber VIIIIEL arbeit im Menü. kannst du dir gerne schnell reinkopieren, Standartmässig halte Ich das aber für nicht nötig und werde es wohl nur beschreiben wie der Code angepasst werden sollte wenn es gewünscht ist.oophaga":3pv80vus schrieb:was hältst du von der idee?:
licht --> lampe a-------->start, dauer, ende, min wert, max wert
--------> lampe b.....
--------> tlc 0-7---------> kanal 0,....
--------> tlc 8-15--------> kanal 8,...
--------> dimmkanäle--> kanal 1,...
--------> simulation----> wetter, mond
oophaga":3pv80vus schrieb:was hast du bei dir unter 1.3.2 mit dimmmodus gemeint?
MajorMadness":3pv80vus schrieb:1.3.2. Ist gedacht zum auswählen worüber gedimmt wird: TLC oder 10V Schnittstelle. Hier werd ich dann nochmal ändern müssen, grade nur keine Idee wie...
MajorMadness":3c9ivl3w schrieb:oophaga hat geschrieben:was hältst du von der idee?:
licht --> lampe a-------->start, dauer, ende, min wert, max wert
--------> lampe b.....
--------> tlc 0-7---------> kanal 0,....
--------> tlc 8-15--------> kanal 8,...
--------> dimmkanäle--> kanal 1,...
--------> simulation----> wetter, mond
Möglich, aber VIIIIEL arbeit im Menü. kannst du dir gerne schnell reinkopieren, Standartmässig halte Ich das aber für nicht nötig und werde es wohl nur beschreiben wie der Code angepasst werden sollte wenn es gewünscht ist.
würds nur cool finden, wenn ich zumindest 2 seperat dimmen könnte :bier:
typedef struct {
bool Aktive;
float Sunrise;
float Sunset;
int Min;
int Max;
int Dim_in;
int Dim_out;
}LIGHT;
LIGHT light_channels[20];
void loop() {
light_channels[0].Active=1; // Kanal wird bei dimmung berücksichtigt
light_channels[0].Sunrise = get_ts(9,0,0); // Anfangszeit
light_channels[0].Sunset = get_ts(19,0,0); // Zeit Licht aus
light_channels[0].Min=10; // Minimum PWM Level
light_channels[0].Max=2700; // Maximum PWM Level
light_channels[0].Dim_in=45; // Zeit bis volle Helligkeit
light_channels[0].Dim_out=60 // Minuten vor aus wo angefangen werden soll zu dimmen
light_channels[1].Active=0; // Kanal wird nicht zum Dimmen benutzt, wir können anderes hiermit machen
light_channels[1].Sunrise = get_ts(10,0,0);
light_channels[1].Sunset = get_ts(17,0,0);
light_channels[1].Min=0;
light_channels[1].Max=4095;
light_channels[1].Dim_in=130;
light_channels[1].Dim_out=20;
}
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Siehe weitere Informationen und konfiguriere deine Einstellungen