Page 1 of 1

StandardFan

Posted: Fri Jun 29, 2012 10:21 am
by DrewPalmer04
I want to automate my fan depending on Light temp (T1_PROBE)

I have this in setup()
ReefAngel.Relay.On(Port8);

This in loop()
ReefAngel.StandardFan(Port8,987,990);


The fan instantly turns off and doesn't turn on when triggered at 99.0 degrees?

Code: Select all

void setup()
{
    // This must be the first line
    ReefAngel.Init();  //Initialize controller
     ReefAngel.FeedingModePorts = 0;
    // Ports toggled in Water Change Mode
    ReefAngel.WaterChangePorts = 0;
    // Ports toggled when Lights On / Off menu entry selected
    ReefAngel.LightsOnPorts = 0;
    // Ports turned off when Overheat temperature exceeded
    ReefAngel.OverheatShutoffPorts = 0;
    // Use T1 probe as temperature and overheat functions
    ReefAngel.TempProbe = T1_PROBE;
    ReefAngel.TempProbe = T2_PROBE;
    ReefAngel.TempProbe = T3_PROBE;
    ReefAngel.OverheatProbe = T3_PROBE;
    // Set the Overheat temperature setting
    InternalMemory.OverheatTemp_write( 860 );
    
    ReefAngel.PHMin=830; // 830=PH10.0
    ReefAngel.PHMin=430; // 430=PH7.0
    

    ReefAngel.SingleATO( false,Port2,60,0 );
    pinMode(lowATOPin,OUTPUT); 
    

    // Ports that are always on
    ReefAngel.Relay.On(Port3);
    ReefAngel.Relay.On(Port7);
    ReefAngel.Relay.On(Port8);
    ReefAngel.Relay.On(Port5);
    ReefAngel.Relay.On(Port8);
    
    ////// Place additional initialization code below here
    


    //randomSeed(analogRead(0));
    //ReefAngel.Init();  //Initialize controller   
    //ReefAngel.Timer[1].SetInterval(random(15,35));
    //ReefAngel.Timer[1].Start(); 
    //ReefAngel.Relay.On(Port5);
    ReefAngel.AddWifi();

    ////// Place additional initialization code above here
}

void loop()
{
    // Specific functions that use Internal Memory values
    ReefAngel.StandardLights( Port1,19,0,6,30 );
    ReefAngel.StandardHeater( Port4,740,770 );
    ReefAngel.StandardLights( Port7,6,0,20,0 );
    ReefAngel.StandardFan(Port8,987,990);
    //ReefAngel.Relay.Write();
    //////// ReefAngel.Wavemaker1(Port5);
    /////// ReefAngel.Wavemaker2(Port6);
    //ReefAngel.PWM.SetActinic( MoonPhase ) Test for Meanwells
    ReefAngel.PWM.SetDaylight( PWMParabola(7,5,19,0,0,85,0) );
    ReefAngel.PWM.SetActinic( PWMParabola(6,5,21,0,0,85,0) );
   
  

    ///if ( ReefAngel.Timer[1].IsTriggered() )
         /// {
          ///  ReefAngel.Timer[1].SetInterval(random(15,35));
          ///  ReefAngel.Timer[1].Start();
           /// ReefAngel.Relay.Toggle(Port5);
          ///  ReefAngel.Relay.Toggle(Port6);
          /// }

    
    ////// Place your custom code below here
    
    if (hour()>=6 && hour()<20)
    analogWrite(lowATOPin,0);
    else
    analogWrite(lowATOPin,(int)MoonPhase()*2.55);
    
    //if ( ReefAngel.DisplayedMenu == DEFAULT_MENU ) //Dosing

   /* 
   Hours between 21 and 5
   minute must be 0 (top of the hour)
   seconds less than 4 (up to 5 seconds)
   */
   if ( ((hour()>=21) || (hour()<=5)) &&
       (minute()==0) && 
       (second()<4) )
   {
      ReefAngel.Relay.On(Port2);
   }
   else 
   {
     ReefAngel.Relay.Off(Port2); //End Dosing
   }



    

    ////// Place your custom code above here
  


    // This should always be the last line
    ReefAngel.ShowInterface();
}

Re: StandardFan

Posted: Fri Jun 29, 2012 10:23 am
by DrewPalmer04
The only thing I can come up with is that my Light isn't turely (T1_PROBE) and the pharms are going off the tank temp or room temp with is below the shut off value of 98.7 degrees....

Re: StandardFan

Posted: Fri Jun 29, 2012 10:24 am
by rimai

Code: Select all

    ReefAngel.TempProbe = T1_PROBE;
    ReefAngel.TempProbe = T2_PROBE;
    ReefAngel.TempProbe = T3_PROBE;
You need to choose only one.
Or you will just override the others.
In this case, you are using T3 for your heater and fan functions.

Re: StandardFan

Posted: Fri Jun 29, 2012 10:31 am
by DrewPalmer04
OK in this case. I would like to use T3_PROBE for overheat and T1_PROBE for fan...possible?

I've removed the StandardHeater from my code..it is no longer in use.

Re: StandardFan

Posted: Fri Jun 29, 2012 11:11 am
by rimai

Code: Select all

    ReefAngel.TempProbe = T1_PROBE;
    ReefAngel.OverheatProbe = T3_PROBE;

Re: StandardFan

Posted: Fri Jun 29, 2012 11:14 am
by DrewPalmer04
That simple...dumb ol' me. lol