scusate la latitanza... ma momenti di delirio... VDC con 6 sale che non funzionava e CED isolato....
si l'ho visto.... credo che il problema sia nella dichiarazione di sistema del Timer[1] e Timer[2] ....
prova così:
aggiungere sotto agli include :
ReefAngel_TimerClass MyTimer;
void AlternaPompe(byte Pump, byte PTimer, byte OnHour, byte OnMinute, int RunTime)
{
// Let's see if it's supposed to start running the timer now
if ( (NumMins(hour(), minute()) == NumMins(OnHour, OnMinute)) && (second() == 0) )
{
Relay.On(Pump);
MyTimer[PTimer].SetInterval(RunTime);
MyTimer[PTimer].Start();
}
// is the timer expired?
if ( MyTimer[PTimer].IsTriggered() )
{
// timer expired, so let's shut off the pump
Relay.Off(Pump);
}
}
Loop()
{
AlternaPompe(Port3, 1, 6,0,21600);
AlternaPompe(Port4, 2, 12,0,21600);
AlternaPompe(Port3, 1, 18,0,21600);
AlternaPompe(Port4, 2, 0,0,21600);
}
prova!?
------------------------------------------------------------------------
|
Originariamente inviata da rita87
|
Sono riuscita ad alternarle così
// accensione pompa dx
if ((NumMins(hour(),minute()) >= NumMins(0,00)) && (NumMins(hour(),minute()) <= NumMins(6,00))) ReefAngel.Relay.On(Port4);
else ReefAngel.Relay.Off(Port4);
if ((NumMins(hour(),minute()) >= NumMins(12,00)) && (NumMins(hour(),minute()) <= NumMins(18,00))) ReefAngel.Relay.On(Port4);
else ReefAngel.Relay.Off(Port4);
// accensione pompa sx
if ((NumMins(hour(),minute()) >= NumMins(5,47)) && (NumMins(hour(),minute()) <= NumMins(12,13))) ReefAngel.Relay.On(Port5);
else ReefAngel.Relay.Off(Port5);
if ((NumMins(hour(),minute()) >= NumMins(17,47)) && (NumMins(hour(),minute()) <= NumMins(0,13))) ReefAngel.Relay.On(Port5);
else ReefAngel.Relay.Off(Port5);
stanno accese x tutto il tempo xkè c'è la funzione "and" che controlla l'accensione per la durata del tempo segnato nell'if.
Ma senza il tuo aiuto non ci sarei mai arrivata Luke!
|
bravissima!!!!!
è una bella soddifazione !?!?!?!?
con Acquatronica non l'avresti mai provata.....
