Discussione: Reef Angel
Visualizza un messaggio singolo
Vecchio 04-04-2011, 10:31   #68
LukeLuke
Imperator
 
L'avatar di LukeLuke
 
Registrato: Nov 2003
Città: roma
Acquariofilo: Marino
N° Acquari: 1
Età : 45
Messaggi: 5.164
Foto: 0 Albums: 1
Post "Grazie" / "Mi Piace"
Grazie (Dati):
Grazie (Ricev.):
Mi piace (Dati):
Mi piace (Ricev.):
Mentioned: 2 Post(s)
Feedback 2/100%

Annunci Mercatino: 0
Originariamente inviata da Skynyrd Visualizza il messaggio
Luke per caso puoi passarmi il codice per alba e tramonto tramite pwm?
io uso questa....

sopra al void setup()

byte PWMSlope(byte startHour, byte startMinute, byte endHour, byte endMinute, byte startPWM, byte endPWM, byte Duration, byte oldValue)
{
int Now = NumMins(hour(), minute());
int Start = NumMins(startHour, startMinute);
int StartD = Start + Duration;
int End = NumMins(endHour, endMinute);
int StopD = End - Duration;

if ( Now >= Start && Now <= StartD )
return constrain(map(Now, Start, StartD, startPWM, endPWM), startPWM, endPWM);
else if ( Now >= StopD && Now <= End )
{
byte v = constrain(map(Now, StopD, End, startPWM, endPWM), startPWM, endPWM);
return endPWM - v;
}
else if ( Now > StartD && Now < StopD )
return endPWM;

// lastly return the existing value
return oldValue;
}

poi in void loop() ho aggiunto queste due linee....


ReefAngel.PWM.SetActinic(PWMSlope(12,15,23,45,0,In ternalMemory.LEDPWMActinic_read(),90,ReefAngel.PWM .GetActinicValue()));
ReefAngel.PWM.SetDaylight(PWMSlope(13,30,22,30,0,I nternalMemory.LEDPWMDaylight_read(),30,ReefAngel.P WM.GetDaylightValue()));



così facendo le attiniche si accendono alle 12:15 con una rampa progressiva x 90 minuti che và dal valore min (ZERO) al max impostato nel menu PWM del controller.... la rampa di discesa è l'inverso....

per i bianchi... partono alle 13:30 e la rampa dura 30 minuti....
LukeLuke non è in linea   Rispondi quotando
 
Page generated in 0,10655 seconds with 13 queries