Totalizing: 101 - On-Time totalizer pump example

  1. To make sure it works through power failures: Be sure to run this chart in the ‘Powerup’ chart, and also be sure the AutoRun flag is set on the controller. Also be sure your accumulators are set as persistent variables.

  2. How long should the delay be? That’s not critically important, because if it’s terribly fast, then it’ll just get a zero time (or something incredibly small) for each pass on the running items. As for a delay in all looping charts, again I’m not sure why that’s a big deal, but if you do put in a delay, it gives other things (possibly more important things) more processor cycles to operate, or react faster. If you’re counting seconds of runtime, there’s no need for this to run more than once per second.

  3. Though the manual doesn’t explicitly specify the range of a floating point (page 216 of 1700 PAC User Guide), it does say they’re IEEE single-precision, which gives it a max range of about +/- 3.4e38, which is a Quite Large Number, in anyone’s reckoning. The math on these huge numbers gets weird on calculators, but best I can figure, if you totalize seconds, that’s 10790283070806014188970529154990 years, which will probably do. If for some reason your pump lasts longer than that, you could check for rollover and add to a second table.

However, I should note that before I did all this, I’d try to talk my customer out of this bad practice. If he ‘runtime balances’ his pumps, he may delay his inevitable overhaul for a year or three, but when it does come, he’s going to have four worn out pumps instead of one or two. His maintenance budget will take a huge hit in a single year, rather than spacing out overhauls say one a year, or two every two. Also, with four worn pumps, you don’t really have a reliable standby if one fails due to wear- in this case, they’re all about to go. Best practice is to use your primaries, test-run your standbys regularly, then rotate standbys to primaries when it’s time to overhaul the most worn pump. :slight_smile: