sperok Posted June 16, 2011 Posted June 16, 2011 I am in the process of creating an irrigation control system that consists of 44 valves and which will be built using EZIO8T's instead of EZFlora because of the EZFlora single zone at one time restriction. I'm not sure it is the best way to do it, but the approach I've hit upon requires 3 programs per valve, all pretty much identical. Is there any way for me to create these programs in an outside editor, since this would be MUCH, MUCH faster than the ISY environment, and then download to the ISY? If anyone is interested in yet another irrigation controller, I am happy to post the working code once it is tested. The key features which I have not found in other controllers are and am planning to build include. Please stop me if this is already available elsewhere. 1. Supports assignment of multiple valves into "groups". All the valves in a group start near concurrently, but end based on the individual valve run time. 2. Allows all run-time and group assignments to be done via setting "init" values on variables. 3. Supports both time based and sequential operation of groups. For example, Group 1 could start M/W/F at 9 AM, Group 2 starts when Group 1 is complete. 4. Reliably turns valves on/off even when communication errors occur (assuming communication gets re-established at some point). 5. Is able to recover after power outages of the ISY or which impact the EZIO8T or pumps. Thanks, Spero
Michel Kohanim Posted June 16, 2011 Posted June 16, 2011 Hello Spero, This is quite exciting! With the help of a few of our expert forum members, we are developing an irrigation module which will complement your solution: viewtopic.php?f=7&t=6452 Unfortunately you cannot edit programs outside the ISY Program Details tab. With kind regards, Michel
sperok Posted June 16, 2011 Author Posted June 16, 2011 Thanks Michel. That is as expected. The module I have developed is pretty complex and difficult to maintain because it uses 3 programs per valve. Since there is no way that I know of to pass parameters to programs, this results in lots of duplicated code. Is there any hope of creating program instances which can be invoked with parameters (i.e. valve #, time_to_run)? I understand the complexity and don't really expect it, but I can hope ...
Michel Kohanim Posted June 16, 2011 Posted June 16, 2011 Hello Spero, Are these programs a configure once type of programs? Would variables help? With kind regards, Michel
apostolakisl Posted June 16, 2011 Posted June 16, 2011 I use my Elk to do my sprinklers and I use something they called "custom settings" to set the zone times. I have 17 zones, so not quite as big as yours, but not a small setup. By using custom settings, I can open that screen and see all of my times at once and make adjustments without having to go through the programs one at a time and pick out the line of code that changes the times. ISY does not have a custom settings situation. Custom settings have built into their function the ability to be timers. However, ISY does have variables. So you might consider writing one program that counts down your variables one minute at a time so that they can function like my custom settings do. Now you can open your variables page and have all of your zone times listed out in one easy to read/change collumn. Since all of your programs will be identical except for the details, you can use ISY program copy function and just duplicate the same program 40 times or whatever and then go back and point each program to the proper variables. Most irrigation programs I have seen, and the one I wrote, run the zones sequentially using the event of one zone shutting off as the trigger for the next zone starting. It is easy enough in ISY (or Elk) to have one zone's off triggering two zones turning on, or having any number of combos. All you need are ISY controlled relays. I see you already have your relays, or I would suggest looking at CAI webcontroller. With the CAI unit you could write all your programs in PLC, copy them onto the CAI unit and then just use ISY as the start trigger letting the entire sprinkler subroutine reside on the CAI. EDIT: and I would put the ISY onto a battery backup. My Elk has built in battery backup so a power failure won't result in valves potentially be left on when power returns. ISY can be powered by its own power source instead of via the PLM and that could be plugged into a UPS.
Recommended Posts