#include <RTClib.h>
#define PUMPCOUNTS 9 // Number Pumps
#define RELAYCHANNELS 4
#define RELAYTIMES 6
#define KEYPADI2C 0x20
#define LCD_ADR 0x27
// PIN MAPPING NICHT ÄNDERN!!!
#define PIN_TEMP A1 // Temperatur
#define RELAY1 2
#define RELAY2 3
#define RELAY3 4
#define RELAY4 5
#define DOSE7 6
#define DOSE6 7
#define DOSE5 8
#define DOSE4 9 // Dosierpumpe
#define DOSE3 10 // Dosierpumpe
#define DOSE2 11 // Dosierpumpe
#define DOSE1 12 // Dosierpumpe
// Größe Vorratsflaschen Dünger in ml
const int dose_val = 991;
// Neu zuordnung der Pins für Dosierung
const byte dosingPins[]={DOSE1,DOSE2,DOSE3,DOSE4,DOSE5,DOSE6,};
// Milliliter per minute in Reihenfolge wie Pumpen oben Achtung Maximum 255ml/Minute
const byte dosingMlMin[]={60,60,60,60,60,60,};
// Pumpen Einstellungen
// Uhrzeit, Aktive, Name, Pin Adresse (von array oben 0 ist erste Pumpe "Dose1"), Status (ignorieren, nur wichtig für Programm), Milliliter pro Dosierungconst
PUMP dosing[] = {
{get_ts(10,0,5),1,"D1",8,10},
{get_ts(10,0,10),1,"D2",2,10},
{get_ts(10,0,15),1,"D3",3,10},
{get_ts(10,0,20),1,"D4",4,10},
{get_ts(10,0,25),1,"D5",5,10},
{get_ts(10,0,30),1,"D6",6,10},
{get_ts(10,0,35),1,"D1",8,10},
{get_ts(10,0,40),1,"D1",8,10},
{get_ts(10,0,45),1,"D1",8,10},
};
// Wird verwendet um zu sehen ob schon dosiert wurde. Nicht Ändern!!!
boolean dosingState[PUMPCOUNTS];
const byte relayPIN[]= {RELAY1,RELAY2,RELAY3,RELAY4};
RELAY relays[RELAYCHANNELS][RELAYTIMES] = {
{{get_ts(11,24,5),1},{get_ts(11,24,10),0},{get_ts(11,24,15),1},{get_ts(11,24,20),0},{get_ts(11,24,25),1},{get_ts(11,24,30),0}},
{{get_ts(11,24,5),1},{get_ts(11,24,10),0},{get_ts(11,24,15),1},{get_ts(11,24,20),0},{get_ts(11,24,25),1},{get_ts(11,24,30),0}},
{{get_ts(11,24,5),1},{get_ts(11,24,10),0},{get_ts(11,24,15),1},{get_ts(11,24,20),0},{get_ts(11,24,25),1},{get_ts(11,24,30),0}},
{{get_ts(11,24,5),1},{get_ts(11,24,10),0},{get_ts(11,24,15),1},{get_ts(11,24,20),0},{get_ts(11,24,25),1},{get_ts(11,24,30),0}}
};