Page 2 of 2

Re: What is the best way to code a port to run 3 times a wee

Posted: Sat Apr 25, 2015 5:59 am
by lnevo
yes

Re: What is the best way to code a port to run 3 times a wee

Posted: Sat Apr 25, 2015 6:00 am
by Sacohen
I tried the code and it worked fine.
I'll set up the other days later.

Thanks everyone.

Re: What is the best way to code a port to run 3 times a wee

Posted: Sun Apr 26, 2015 6:03 am
by Sacohen
So if I wanted 9:05pm would it be...

Code: Select all

ReefAngel.Relay.Off(Main_RODI);
if (weekday()==dowMonday && hour()==2105 && minute()<5)
  ReefAngel.Relay.On(Main_RODI);

Re: What is the best way to code a port to run 3 times a wee

Posted: Sun Apr 26, 2015 6:17 am
by lnevo
no hour() only returns the hour not the time. You'd have to check minute >= 5 && < 10

Re: What is the best way to code a port to run 3 times a wee

Posted: Sun Apr 26, 2015 6:31 am
by Sacohen
So i tried this...

Code: Select all

ReefAngel.Relay.Off(Main_RODI);
if (weekday()==dowSunday && hour()==9 >= 5 && < 10 && minute()<5)
  ReefAngel.Relay.On(Main_RODI);
and I'm getting an "expected primary-expression before '<' token" error with the line I'm working on highlighted and the 1st "(" circled.

Image

I'm obviously missing a comma or something, but don't know where.

Re: What is the best way to code a port to run 3 times a wee

Posted: Sun Apr 26, 2015 8:06 am
by rimai
No. You need to check for day of the week, hour and minutes.
If you want minutes >= 5 and minutes < 10, it would be minute()>=5 && minute() <10

Re: What is the best way to code a port to run 3 times a wee

Posted: Sun Apr 26, 2015 8:08 am
by Sacohen
Ok. That makes sense.
Thanks.

So I've got this now and an still getting an error of expected ')' before 'minute'.

Code: Select all

ReefAngel.Relay.Off(Main_RODI);
if (weekday()==dowSunday && hour()==11 minute()>=25 && minute()<30 && minute()<5)
  ReefAngel.Relay.On(Main_RODI);
I hate trying to figure out error messages. Ugh. :x

I tried putting a parenthesis () around (minute()>=25 && minute()<30 and got 11 can not be used as a function.

Re: What is the best way to code a port to run 3 times a wee

Posted: Tue Apr 28, 2015 6:27 pm
by Sacohen
I figured out the error message. I was missing && in between the 11 and the minute, but it doesn't seem to be working.

The way I understand it with this code the Test+Light port, which is port 5 on the main relay, will run Tuesdays from 9:20pm to 9:25pm.

Code: Select all

ReefAngel.Relay.Off(Test_Light);
if (weekday()==dowTuesday && hour()==21 && minute()>=20 && minute()<25 && minute()<5)
  ReefAngel.Relay.On(Test_Light);
  
Nothing happened at 9:20pm.

Help???

Re: What is the best way to code a port to run 3 times a wee

Posted: Tue Apr 28, 2015 8:54 pm
by billw
You have an impossible condition: minute >= 20 AND minute < 5. Those 2 conditions are mutually exclusive hence nothing happens. If you remove the " &&minute()<5" clause you should get something between 21:20 and 21:24:59.

Re: What is the best way to code a port to run 3 times a wee

Posted: Wed Apr 29, 2015 4:27 am
by Sacohen
Thanks.
I'll try it later.

Re: What is the best way to code a port to run 3 times a wee

Posted: Wed Apr 29, 2015 2:28 pm
by Sacohen
That did it. Thanks again.

Re: What is the best way to code a port to run 3 times a wee

Posted: Thu Apr 30, 2015 12:05 pm
by Sacohen
I put this code in to turn on the solenoid for my RO/DI unit Monday, Wednesday and Friday on last Friday the 24th.

I just noticed that it only turned on on that Friday. It didn't turn on on Monday or Yesterday (Wednesday).

Is there another way to do multiple if conditions like Roberto suggested?

Code: Select all

//Flush RO/DI Membrane 3 times a week @ 9pm.

ReefAngel.Relay.Off(Main_RODI);
if (weekday()==dowMonday && hour()==21 && minute()<5)
  ReefAngel.Relay.On(Main_RODI);

ReefAngel.Relay.Off(Main_RODI);
if (weekday()==dowWednesday && hour()==21 && minute()<5)
  ReefAngel.Relay.On(Main_RODI);

ReefAngel.Relay.Off(Main_RODI);
if (weekday()==dowFriday && hour()==21 && minute()<10)
  ReefAngel.Relay.On(Main_RODI);  
  

Re: What is the best way to code a port to run 3 times a wee

Posted: Thu Apr 30, 2015 12:12 pm
by rimai
You should have just one Off at the beginning of the if statements or they will override the previous ones

Re: What is the best way to code a port to run 3 times a wee

Posted: Thu Apr 30, 2015 12:14 pm
by Sacohen
Ok. I guess that is what's been happening. Thanks.

Re: What is the best way to code a port to run 3 times a wee

Posted: Fri May 01, 2015 6:33 pm
by Sacohen
It worked perfectly.
I had a test time yesterday at 9pm, which went off fine and then it went off again tonight, as well as the other port turned on at 9:05.

Thanks for all the help.
I learned a bunch with this.