• ******* To read about the changes to the marketplace click here

Neptune AC3 Programming

pvh

Well-Known Member
BRS Member
OK I finally got to playing around with my AC3 which I've had for months. Still trying to figure it out before I hook it up to my tank. I'm totally new to this and am too busy more like lazy to read the manual. How would I program it so that if temp is > 83 to have it shut off both lights (LT1 and LT2)? And have it turn back on when temp is < 82? Will this effect the other lines of code where I have have it control the heaters? Here's what I'm thinking of adding for example.

If Temp < 78.0 Then HET ON
If Temp > 79.0 Then HET OFF
If Temp < 75.0 Then ALM ON
If Temp > 83.5 Then ALM ON
If Temp > 83.0 Then LT1 OFF
If Temp > 83.0 Then LT2 OFF
If Temp < 82.0 Then LT1 ON
If Temp < 82.0 Then LT2 ON
 
Last edited:
OK...here's what I got for my program. Please let me know if this will work. TIA

LT1$-A01
LT2$-A02
HET%-A03
PM1#-A04
PM2#-A05
PM3#-A06
FAN%-A07
ALK&-A08
ALM&-A09


If Time > 14:00 Then LT1 ON
If Time > 21:30 Then LT1 OFF
If Time > 15:00 Then LT2 ON
If Time > 20:30 Then LT2 OFF
If Temp > 83.0 Then LT2 OFF
MAX Change 025 M Then LT2 OFF
If Temp > 79.0 Then FAN ON
If Temp < 78.5 Then FAN OFF
If Temp < 78.0 Then HET ON
If Temp > 78.5 Then HET OFF
If Time > 00:00 Then PM1 ON
If Time > 00:00 Then PM2 ON
OSC 010/010 ON/OFF Then PM2 OFF
If Time > 00:00 Then PM3 ON
If Feed cycle Then PM1 OFF
If Feed cycle Then PM2 OFF
If pH < 08.00 Then ALK ON
If pH > 08.00 Then ALK OFF
If pH > 08.40 Then LT2 OFF
MAX Change 025 M Then LT2 OFF
If pH > 08.43 Then LT1 OFF
MAX Change 025 M Then LT1 OFF
If Time > 00:00 Then ALM OFF
If pH > 08.45 Then ALM ON
If pH < 07.90 Then ALM ON
If Temp < 75.0 Then ALM ON
If Temp > 83.0 Then ALM ON
 
BTW not sure if I need to use the $, #, %, &. I just modified from the default program that was on the controller and it had these characters.
 
If Time > 14:00 Then LT1 ON
If Time > 21:30 Then LT1 OFF
If Time > 15:00 Then LT2 ON
If Time > 20:30 Then LT2 OFF
If Temp > 83.0 Then LT2 OFF
MAX Change 025 M Then LT2 OFF %Huh, you want to turn it back on.
And I doubt 25min will cool down
the tank much. Try 60min or greater

If Temp > 79.0 Then FAN ON
If Temp < 78.5 Then FAN OFF
If Temp < 78.0 Then HET ON
If Temp > 78.5 Then HET OFF
If Time > 00:00 Then PM1 ON
If Time > 00:00 Then PM2 ON
OSC 010/010 ON/OFF Then PM2 OFF %You want your pump to
turn on.

If Time > 00:00 Then PM3 ON
If Feed cycle Then PM1 OFF
If Feed cycle Then PM2 OFF
If pH < 08.00 Then ALK ON %This will oscillate
If pH > 08.00 Then ALK OFF %This will oscillate
%What happen when PH
is 8.00 ??

If pH > 08.40 Then LT2 OFF
MAX Change 025 M Then LT2 OFF %Same here as LT2
If pH > 08.43 Then LT1 OFF
MAX Change 025 M Then LT1 OFF %Same here as LT2
If Time > 00:00 Then ALM OFF
If pH > 08.45 Then ALM ON % Do you really want the
alarm to turn on??

If pH < 07.90 Then ALM ON % Do you really want the
alarm to turn on??

If Temp < 75.0 Then ALM ON % Do you really want the
alarm to turn on??

If Temp > 83.0 Then ALM ON % Do you really want the
alarm to turn on??
 
Last edited:
Peter, another few things to think about... Some people try to add 'failsafe' settings to their programming... If your temp probe fell out or was otherwise became horrifically defective, you wouldn't necessarily want all your heaters on/off. In other words, your tank would never likely read 60 degrees -- if it does, it likely means the temp probe is defective and/or fell out of the tank. If that is the case and the ac3 has all your heaters on, it could nuke the tank (the heaters would stay on...). There is probably a similar upper limit.

I'm not an expert on the AC3 programming. I'm actually building a new system that lets me get more fine tuned control over it... Among other things, it will allow me to add code that reacts based on change over a certain time period instead of reacting based on straight threshholds. I'm also building out interfaces so I can control it via instant messaging as well as from my blackberry.

Some of this stuff may even already be built into the ac3 programming, I don't really know, but I'm doing it as a little side project for fun anyway. I plan on releasing it for other people if they want to use it...
 
If Time > 14:00 Then LT1 ON
If Time > 21:30 Then LT1 OFF
If Time > 15:00 Then LT2 ON
If Time > 20:30 Then LT2 OFF
If Temp > 83.0 Then LT2 OFF
MAX Change 025 M Then LT2 OFF %Huh, you want to turn it back on.
And I doubt 25min will cool down the tank much. Try 60min or greater I don't want temp. to ever go above 83, but I would like the light to come back on when temp is below 83. I will change it to 60 minutes. Will this work?
If Temp > 79.0 Then FAN ON
If Temp < 78.5 Then FAN OFF
If Temp < 78.0 Then HET ON
If Temp > 78.5 Then HET OFF
If Time > 00:00 Then PM1 ON
If Time > 00:00 Then PM2 ON
OSC 010/010 ON/OFF Then PM2 OFF %You want your pump to
turn on. I want the pump to oscillate on and off ever 10 minutes.
If Time > 00:00 Then PM3 ON
If Feed cycle Then PM1 OFF
If Feed cycle Then PM2 OFF
If pH < 08.00 Then ALK ON %This will oscillate How would I prevent this? I want my dosing pump to turn on if pH is below 8.0 and off if pH is above 8.0. This is to help maintain the pH above 8.0
If pH > 08.00 Then ALK OFF %This will oscillate
%What happen when PH
is 8.00 ??
If pH > 08.40 Then LT2 OFF
MAX Change 025 M Then LT2 OFF %Same here as LT2
If pH > 08.43 Then LT1 OFF
MAX Change 025 M Then LT1 OFF %Same here as LT2
If Time > 00:00 Then ALM OFF
If pH > 08.45 Then ALM ON % Do you really want the
alarm to turn on?? Yes....I think....is there any other way?
If pH < 07.90 Then ALM ON % Do you really want the
alarm to turn on?? Yes....I think....is there any other way?
If Temp < 75.0 Then ALM ON % Do you really want the
alarm to turn on?? Yes....I think....is there any other way?
If Temp > 83.0 Then ALM ON % Do you really want the
alarm to turn on?? Yes....I think....is there any other way?
 
Also do I have to add

If Time > 00:00 Then HET ON ?

I noticed that if I turn the controller off then back on again the statue of the heater is unknown. I figured this could be cause because the controller doesn't know the statue of the heater yet.
 
Peter, another few things to think about... Some people try to add 'failsafe' settings to their programming... If your temp probe fell out or was otherwise became horrifically defective, you wouldn't necessarily want all your heaters on/off. In other words, your tank would never likely read 60 degrees -- if it does, it likely means the temp probe is defective and/or fell out of the tank. If that is the case and the ac3 has all your heaters on, it could nuke the tank (the heaters would stay on...). There is probably a similar upper limit.

I'm not an expert on the AC3 programming. I'm actually building a new system that lets me get more fine tuned control over it... Among other things, it will allow me to add code that reacts based on change over a certain time period instead of reacting based on straight threshholds. I'm also building out interfaces so I can control it via instant messaging as well as from my blackberry.

Some of this stuff may even already be built into the ac3 programming, I don't really know, but I'm doing it as a little side project for fun anyway. I plan on releasing it for other people if they want to use it...

Joe, how would the failsafe work and be added to the program? Any examples?
 
What are you using to drip the kalk? The Aqualifters do not respond to the on/off signal form a DC8. You have to put something else on thr circut to provide enough voltage to control an Aqualifter.
 
What are you using to drip the kalk? The Aqualifters do not respond to the on/off signal form a DC8. You have to put something else on thr circut to provide enough voltage to control an Aqualifter.

Oh I'm using a dosing pump, peristale pump (spelling), to drip my two parts in. I'm using the high alk part. This is far seem to be keeping my CA and ALK stable.
 
This is a VERY VERY bad line of code. DO NOT put this in the controller ever!!!
It will cook your tank. It will turns on the heat no matter what!
The program code only look at one true statement to execute. Even if you have your heat to shut off at a certain temperature, time will always be greater than 00:00 so the heat will remain on all the time.

Becareful with the coding here, sometime you want to do too many things and you confuse yourself and the controller. Keep it simple.

I personally don't want my Alarm to ever come on. It is very annoying beeping sound. Just a simple Light off when temp >xxxxx is more than enough for me to see my tank is overheating. With the code you have, the Alarm will beep indefinitely because there nothing to tell it to stop...

There's should be a >_ (greater equal) and <_(lesser equal). Use this, but do not use both.




Also do I have to add
If Time > 00:00 Then HET ON ?
 
You could set ALM to send you an email instead of an annoying noise. I have my ALM code to send email to my iPhone.
 
I like the alarm...well, I don't like it, but I always want to know when things aren't what I expect. I agree with Ray though, set it up so that you are notified in other ways instead of or in addition to the audible alarm. That's one reason I'm building my own web system to monitor the aquacontroller; I don't always check my email frequently during the day but I'm nearly always available via instant messaging or sms, so as soon as a parameter goes far enough out of whack, I am actively notified.

I would agree, never use the "If Time > 00:00 Then HET ON"...but I thought it executed each line of code independently...so if that was the first line of code and you had other lines turning it off later in the program it would end up in the off position. I could definitely be wrong about that though -- it has been a while since I looked at the manual. Either way, I can't think of any reason you'd ever want that line in there.

I have seen similar lines to make sure pumps or things of that nature are in an 'always on' mode or for a refugium light or something but never for heaters.

In terms of the failsafe code I referenced...it generally looks something like this:

If Temp < 60.0 Then HET1 OFF

(turn my heaters off when the temp probe fails so I don't cook my tank)

If Temp < 60.0 Then LT1 OFF

(turn my lights off when the temp probe fails...)

It really depends on your situation though. The question is, what would you want your system to do if the temp probe wasn't accurate? Would you turn things on...or off? I think the behavior might change based on whether it was winter/summer... The more I think about it, the less valuable I actually think this is, except for certain unlikely circumstances. I might even take my failsafe lines out to simplify the programming.

What I wanted to know is when there was a probe failure. I believe any drastic/fast change in any parameter generally means a probe failure of some sort...and in that case, I'd want to keep things set the way they were prior to the failure. I don't think the AC3 can do that with its built in system. That's the other reason I'm building my own web system to monitor and control the AC3.

I think the advice to keep it as simple as possible is a very, very good rule. Too easy to introduce unintended consequences.
 
This is a VERY VERY bad line of code. DO NOT put this in the controller ever!!!
It will cook your tank. It will turns on the heat no matter what!
The program code only look at one true statement to execute. Even if you have your heat to shut off at a certain temperature, time will always be greater than 00:00 so the heat will remain on all the time.

Becareful with the coding here, sometime you want to do too many things and you confuse yourself and the controller. Keep it simple.

I personally don't want my Alarm to ever come on. It is very annoying beeping sound. Just a simple Light off when temp >xxxxx is more than enough for me to see my tank is overheating. With the code you have, the Alarm will beep indefinitely because there nothing to tell it to stop...

There's should be a >_ (greater equal) and <_(lesser equal). Use this, but do not use both.

What about putting If Time > 00:00 Then HET OFF instead ? And then follow it with
If Temp < 78.0 Then HET ON
If Temp > 78.5 Then HET OFF

This way I don't think the heater would stay off forever since it is follow by another conditions.


I didn't know you can use greater or equal sign?
 
You could set ALM to send you an email instead of an annoying noise. I have my ALM code to send email to my iPhone.

Yes, I will have to do that soon. I haven't look into doing that yet. I'm too lazy to read the manual.

I like the alarm...well, I don't like it, but I always want to know when things aren't what I expect. I agree with Ray though, set it up so that you are notified in other ways instead of or in addition to the audible alarm. That's one reason I'm building my own web system to monitor the aquacontroller; I don't always check my email frequently during the day but I'm nearly always available via instant messaging or sms, so as soon as a parameter goes far enough out of whack, I am actively notified.

I would agree, never use the "If Time > 00:00 Then HET ON"...but I thought it executed each line of code independently...so if that was the first line of code and you had other lines turning it off later in the program it would end up in the off position. I could definitely be wrong about that though -- it has been a while since I looked at the manual. Either way, I can't think of any reason you'd ever want that line in there.

I have seen similar lines to make sure pumps or things of that nature are in an 'always on' mode or for a refugium light or something but never for heaters.

In terms of the failsafe code I referenced...it generally looks something like this:

If Temp < 60.0 Then HET1 OFF

(turn my heaters off when the temp probe fails so I don't cook my tank)

If Temp < 60.0 Then LT1 OFF

(turn my lights off when the temp probe fails...)

It really depends on your situation though. The question is, what would you want your system to do if the temp probe wasn't accurate? Would you turn things on...or off? I think the behavior might change based on whether it was winter/summer... The more I think about it, the less valuable I actually think this is, except for certain unlikely circumstances. I might even take my failsafe lines out to simplify the programming.

What I wanted to know is when there was a probe failure. I believe any drastic/fast change in any parameter generally means a probe failure of some sort...and in that case, I'd want to keep things set the way they were prior to the failure. I don't think the AC3 can do that with its built in system. That's the other reason I'm building my own web system to monitor and control the AC3.

I think the advice to keep it as simple as possible is a very, very good rule. Too easy to introduce unintended consequences.

Wouldn't your failsafe, If Temp < 60.0 Then HET1 OFF, work against this line,If Temp < 78.0 Then HET ON, in the code? The failsafe line would never work since heater will turn on if temp is less then 78 no mater what.
 
I have my lighting set up the exact way you posted. They turn off at a set temp and then remain off for 25 minutes (mine is 20-30 cna't remember but it is enought time to refire right away). This keeps them from trying to turn back on a minute later if the temp goes back to 82.9. Has worked flawlessly for 2 years.
 
Would you like my program as an example? I know getting started is sometimes challenging. Especially trying to read that manual...
 
Back
Top