Zeitschaltuhr mit mehreren Ausgängen

hallo,

ich versuche mich derzeit an einer “Zeitschaltuhr” mittels dem Arduino Nano + DS3231,

die aktuelle Zeit habe ich bereits in der RTC gespeichert.
ich kann sie auch auf nem 2004 LCD anzeigen lassen.

nur tue ich mich noch schwer die Zeitschalfunktion für 3 Ausgänge zu schreiben.

#1 mein Aktueller Versuch beruht auf dem : “// Aquarium Control // Dean Cohen //” code.

jedoch sobald ich diesen in meinen gesamten Code Integriere, schalten die LED’s (simulierte Relais) nicht wie programmiert :frowning:

habe jedoch einen Test sketch geschrieben mit exakt denselben Variablen ohne RTC, ohne LCD, nur 1000mS An, 1000mS Aus in einer Loop, da gehen sie alle an und aus confused

#2 außerdem würde ich gerne :

mit dem ersten potentiometer die startzeit für alle 4 Ausgänge defineiren
also von 0:00-15:00 (in 01:00er Schritten) (1024/64=16, Value1 0-15)

mit dem zweiten poteniometer möchte ich den Ersten Ausgang Q1 zwischen 12Std an (12h aus) und 18Std an (6h aus) schalten (1024/512=2, Value2 0-1)

0=12h mode
1=18h mode

mit dem dritten poteniometer möchte ich einen Lüfter (Q2) schalten, wenn Ausgang Q1 12h mode aus ist, soll der Lüfter
nach 2,25 Stunden An gehen, nach 3,25 hours Aus &
nach 5,50 Stunden An gehen, nach 6,50 hours off &
nach 8,75 Stunden An gehen, nach 9,75 hours off &
(Also während Q1 Aus ist ca. 2 Stunden Aus, 1 Stunde Ein)

Also zum Bsp.:
start zeit 0:00 mit Poti1 eingestellt mit Poti2 12h mode
der Lüfter sollte um 14:15 an & 15:15 aus gehen &
der Lüfter sollte um 17:30 an & 18:30 aus gehen &
der Lüfter sollte um 20:45 an & 21:45 aus gehen

//Timer clock #1 Light Bulb----------------------------------------------------------------
  // compare time with a given time
  if (strcmp(strTime, "19:21:00") == 0) {
    digitalWrite(ledPin, LOW);
    Serial.print("***LED ON***");
    Serial.print('\n');
    lcd.setCursor(0, 3); //
    lcd.print("Relay:1 & 2 ON ");
  };

  if (strcmp(strTime, "19:22:00") == 0) {
    digitalWrite(ledPin, HIGH);
    Serial.print("***LED OFF***");
    Serial.print('\n');
    lcd.setCursor(0, 3); //
    lcd.print("Relay:1 & 2 OFF");
  }

  //Timer clock #2 Fan----------------------------------------------------------------------
  // compare time with a given time
  if (strcmp(strTime, "19:23:00") == 0) {
    digitalWrite(ledPin2, LOW);
    Serial.print("***LED ON***");
    Serial.print('\n');
    lcd.setCursor(0, 3); //
    lcd.print("Relay:2 ON         ");
  };

  if (strcmp(strTime, "19:24:00") == 0) {
    digitalWrite(ledPin2, HIGH);
    Serial.print("***LED OFF***");
    Serial.print('\n');
    lcd.setCursor(0, 3); //
    lcd.print("Relay:2 OFF        ");
  }

also bei #1 light bulb funktioniert alles auch die led leuchtet auf, aber bei #2 fan zeigt mein arduino nur auf dem lcd den neuen text an aber die LED macht nichts
im anhang mein aktueller sketch im kompletten und der Aquarium code von Dean Cohen

Aquarium_Control_Dean_Cohen.ino (1.82 KB)

SAW0_1_5_6_19_25.ino (6.09 KB)

20160930_220659.jpg

20160930_220710.jpg

LCD.jpg

Schau dir doch mal die "TimesAlarms - Library" an. Evtl. ist das was für dich...

thx stoni99, aber des hilft einem newbie wie mir ledier nicht weiter :frowning:
ahbe in einem anderem thread schon etwas brauchbares zugesteckt bekommen:

http://forum.arduino.cc/index.php?topic=427996.0