The simulation
A run replays one period of your plant in five-minute steps under a tariff set you choose. It follows the water and contaminant loads through the process, the energy each area uses, the biogas produced and used, and the electricity and chemical cost that comes out.
Every run compares cases side by side: standard and price-responsive operation, each priced on retail and on wholesale. The plant, its configuration and every rule that does not depend on price are the same in each case, so any difference between two cases comes from the price signal.
More detail
What the simulation is for
- It compares operating strategies over the same period, on cost, energy and effluent quality.
- It works from a period that has already happened, so the plant itself keeps running under its own control.
- A result depends on the plant configuration and on the influent, tariff and equipment data you give it. Where that data is uncertain, the result shows the consequence of the assumptions made.
- Use it alongside sampling, laboratory analysis, compliance monitoring and engineering design.
- Results from different periods are worth comparing with care, and equipment sizing is covered separately by the Sizing Guide, opened from the plant configuration screen.
What you can do here
- View and edit the client's parameter sets and tariff sets.
- Queue, cancel, delete and rename runs, and mark the parameter and tariff pair you normally use so the run form opens on it.
- View results and replays, download the result files, and compare runs on the business case page where it is switched on for you.
- Change your own password, and recover it by email if you forget it.
- Every member of a client shares that client's sets and runs. Members, passwords and any limit on which parameters a member may change are handled by Delprosa.
- One client's sets, runs and results stay inside that client.
How the plant is described
- The configuration covers the whole works: influent and primary separation, the reactor, secondary clarification, disinfection, effluent storage and discharge pumping, sludge thickening and digestion, dewatering and biosolids, chemical dosing, aeration and blowers, biogas collection and use, solar and battery, and the site connection.
- The reactor is a row of tanks, each with a type and a volume, and the reactor volume is the sum of them.
- The starting inventories are set once as percentages of capacity: the effluent reservoir, the gas holder, the sludge in each holding tank and the battery charge.
- A parameter set is a complete description of the plant, so it can be copied, renamed and reused on its own. Tariffs sit in their own sets.
- The schematic opens the parameters for the item you click, and a set holds only the values meant to be edited.
- A tank that is very small next to the flows through it makes the run work harder. The portal marks such a set with a small "Slow" label and explains why when you hover over it.
Features you can set up
Most of what the simulation reproduces is set up in the portal itself, so the run works from your plant's own numbers.
Influent loads and flow
- The flow and load arriving at the plant can be entered from your own records, or worked out from the catchment the plant serves.
- The catchment route takes the population served and the load each person contributes in a day: organic material, total nitrogen and ammonia. Flow works the same way, from an average dry-weather flow and a peak wet-weather flow.
- A flow variability can be set as a percentage, so the flow varies through the day the way it does on site.
- The rainfall that actually occurred is then run through a catchment wetness model, which gives the flow arriving at the plant in each hour. A wet week lifts the inflow, and the load arrives with it. This is why the same plant costs more in a wet month.
How the load is split up
- The organic load is divided into the pools the biology can tell apart: a soluble part the biomass takes up directly, a slowly biodegradable part it has to break down first, and an inert part that passes through the plant.
- A share of the soluble pool is set as acetate. That is the food biological phosphorus removal works on, so it decides how much phosphorus the plant can take up without chemical dosing.
- A share of the slowly biodegradable pool is marked as colloidal, which is the part that settles out in primary treatment.
- Nitrogen is divided the same way, between ammonia ready for nitrification and the organic forms that have to be broken down first.
The daily flow and load pattern
- A pattern editor sets how the flow and the load vary across the day and the week, so the plant meets the morning and evening peaks it meets on site.
- Those peaks also set the load bands the aeration cycle reads, taken from the plant's own pattern.
The reactor layout
- The reactor is laid out as a row of tanks in the plant configuration screen. Each tank is given a type and a volume, and the internal recycle and return sludge lines are drawn between them.
- The total reactor volume is the sum of the tanks, and the guide and the simulation both read the layout you draw.
Tariff sets
- Retail and network tariffs are set separately, as time-of-use periods with their own time windows, daily charges and demand rates.
- A coverage bar for weekdays and for weekends shows any hour left uncovered or billed by two windows, and saving is held back until the timetable is unambiguous.
Prices and capital costs
- Chemical prices, and the capital cost, fixed cost and annual maintenance allowance for each major asset, all sit in the parameter set.
- The required rate of return and the study life sit there too, so the business case works entirely from your numbers.
The Sizing Guide
- The Guide node on the schematic opens a separate Sizing Guide that works through equipment sizing for the set that is open: aeration and blowers, pumps, tanks, disinfection, biogas, the battery and the solar array.
- It shows the arithmetic behind each size, so a number can be checked or replaced with your own.
Weather and forecast
The portal collects two sets of weather hours for the site, from the same weather service: what actually happened, and the forecast that was published for those same hours.
The weather that occurred
- Rainfall goes through the catchment model for the site, which gives the flow arriving at the plant. A wet week raises the inflow, and the load that comes with it.
- Temperature reaches further than the water. It shapes how the biology behaves, and it sets how much power the blowers draw to deliver the same air, so a hot day costs a little more for the same aeration.
- Sunshine is the solar generation the site actually made in that hour.
- Every case runs on this weather, the standard case included.
The forecast for those hours
- The weather ahead is not known when the run is made. What the plant is given is the forecast that was published for those hours, for temperature, rainfall and sunshine, so the run reproduces what could have been known on the day.
- It was published ahead of the period, so it carries the lead time it really had.
- Forecast rain goes through the same catchment model, giving the inflow expected in the hours ahead.
- That expected inflow gives the expected load, which shapes the aeration cycle and the site load the battery plans against.
- Forecast sunshine is what the solar array is expected to make, so the battery plans against generation still to come.
Where the hours come from, and when they are checked
- The portal fetches both sets for the site from the same weather service: one request for the recorded hours, one for the archived forecast.
- Both are saved with the parameter set, from the Site node.
- The saved hours have to cover the period being run, and that is checked before the run is queued.
- If a period has no archived forecast, the portal will ask you to choose another one.
Spot price forecasting
A wholesale case needs a price for every five minutes it runs. The portal holds that price history, and a forecast of it for each interval ahead, for every region of the national electricity market.
The regions, and where the data is kept
- One series for each region: New South Wales, Victoria, Queensland, South Australia and Tasmania.
- Five-minute prices from January 2024 onward, extended as the archive grows, with the price that actually occurred stored beside the forecast for every interval.
- The series is held on the server, not in the browser, so every member and every run reads the same copy.
How the forecast is produced
- By a machine learning model, trained on that region's own price history and run again for each forecast period.
- It is a gradient-boosted decision tree model. It learns the pattern from what is knowable ahead of the hour: the calendar, the recent price history, and market conditions such as demand, the generation available and the reserve margin.
- It gives a range as well as a central figure, at the 10th, 25th, 50th, 75th, 90th and 99th percentile, so an uncertain hour can be told apart from a settled one.
- A separate part of the model scores how likely a price spike is, because the highest few percent of prices carry most of a month's cost.
The forecast periods stored
- Five for every interval: the current interval, then one hour, two hours, six hours and one day ahead.
- Each was produced with only what was knowable that far ahead, so an estimate for tomorrow carries the error a forecast made today really has.
When the period is not covered
- A run cannot go past the end of the stored prices, and that is checked before the run is queued rather than part way through.
- The start dates and durations offered on the run form come from the dates the series already holds.
Setting up a run
- A run is a tag, a start date and duration, a parameter set and a tariff set, the cases you include, and whether to keep the full time series.
- Runs queue and are processed in turn, one at a time for each client. Each run records which member queued it.
- A run can be cancelled while it is queued and deleted once it has finished.
- While it runs you see a bar for each case, the measured time of any case that has finished, and an estimate of the rest. The shared server's speed varies, so the estimate moves as the run goes on. The results do not depend on how long it took.
- The start dates and durations offered depend on the price and weather data held for the site, and the period is checked before the run is accepted.
What a run reports
- Cost compared between the cases, by year and by month.
- Energy use by process area and in total.
- Effluent quality through the period.
- Chemical use and its cost.
- How much energy each case took in each price band.
- An energy balance covering generation, battery, grid import and export, and what the site consumed.
- A replay of the period, and the result files to download.
Reading a result
- The replay, the results panel and the downloads all come from the same simulated operation, so they agree with each other.
- The replay is a record of a simulation that has already finished, so it shows the period as it ran. The plant's own live data plays no part. Watching the standard and price-responsive replays side by side shows when and why equipment ran differently, which is where the sequencing becomes visible.
- Savings are quoted against the matching standard case on the same tariff.
How the costs are reported
- Each case shows an energy cost, with chemical dosing shown beside it as its own figure.
- A total bill can be shown too, labelled as the total bill.
- Savings are quoted against the matching standard case on the same tariff.
Capital cost and the business case
- Each run costs the major assets it configures: the battery, the solar array, the cogeneration engine and the effluent reservoir. Each carries a unit capital cost, a fixed cost and an annual maintenance allowance from the parameter set.
- That capital figure sits beside the annual operating cost, so a run reports both what the plant costs to run and what the assets cost to build.
- The figures are estimates from the sizes and prices you supply. They are not vendor quotations, and the simulation does not size or design the assets for you.
- The Business Case page compares completed runs: one as the baseline and any number as candidates. For each candidate it shows the extra capital, the change in annual operating cost, the net present value, the achieved rate of return and the payback over the study life, and lists which parameter values differ.
- No extra simulation is needed, and Delprosa switches access to that page on for each member.
Plant control
Every case runs on one of two fundamental methods of control: standard control and price-responsive control.
Standard operation runs the plant on steady set points. Each loop holds its target with a proportional and integral (PI) controller, and energy follows the process as it is, so the case shows what the plant costs while running the way it does today.
The intent of price-responsive control is to adjust how the plant runs, through its set points and the timing of its batches, so cheaper electricity is used through the day while peak demand is shaved as far as the process allows. It works from the price it expects, the demand charge it expects, and a forecast of load, weather and solar, so the battery, the stored gas and the water in the reservoir move into cheaper hours.
More detail
Standard operation, area by area
Standard operation keeps the plant safe and compliant and lets it follow the process. It holds fixed targets and buys energy whenever the process needs it.
Aeration and oxygen
- The blowers hold a fixed oxygen target by feedback on the oxygen measured in the tank. Airflow rises when the reading falls below the target and eases when it rises above it.
- A dead band stops the blowers chasing small wobbles, and a second aeration stage holds its own target.
- Because the target is fixed, the plant aerates generously at a high price and a light load as readily as at a cheap hour.
Effluent storage and pumping
- The reservoir is held at a set level. Pumps are brought on one at a time and their speed is varied as well as their number.
- Minimum run and minimum rest apply, and a change in the number running is held before another is made, so the station does not chase every ripple in the inflow.
- A pump is dropped only when the pumps left behind would still run comfortably.
- Two safety rules sit above all of it: the station cannot stop while more water arrives than one pump at its slowest can pass, and near full the whole station runs at full speed.
Internal recycle and return sludge
- Both run at fixed ratios. A load-following option, available in every case, raises the recycle when the load is high using the inflow expected over the next hour.
Sludge thickening
- The thickener runs at full rate and is switched on tank level: it starts when the tank is reasonably full and runs until the tank is nearly empty, and it is forced on when the tank is too full.
- A minimum run time applies, and a thickener that has stopped restarts only once its tank holds enough sludge for a proper run.
Dewatering
- Both cases batch the press. Standard runs it at a steady mid rate, starting when the digested holding tank is full enough and stopping when the tank is nearly empty or the machine has had its run.
- The press runs only as fast as sludge passes through it, so a blocked press draws little power, and a batch stops when there is nowhere to put the cake.
- When the digested tank is full the digester feed is held back and the run reports the sludge line as undersized.
Disinfection
- Chlorine or ultraviolet, whichever the plant uses. The dose is tested against the water actually arriving at the contact point.
- Chlorine demand comes from ammonia, nitrite, organic nitrogen, organic material and solids, and the residual required rises as the water turns alkaline or cold.
- Ultraviolet leaves nothing behind, so the delivered dose is tested against the requirement and reduced where solids shield the lamps.
- A plant cannot save money by under-treating, and with no contact tank disinfection runs continuously.
Biogas and the engine
- Gas is collected in the holder. The engine makes electricity and heat, the boiler tops up the heat, and the flare burns what cannot be stored or used.
- Standard operation is store-led: the engine starts when the holder is reasonably full, follows the storage level and stops when the gas runs short, with minimum run times and a weekly limit on starts.
- The flare holds the holder at a level and burns only what arrives above it, so it is a steady flame. Its capacity is a hard limit, and gas beyond what the holder, engine, boiler and flare can take is vented and reported.
Battery
- It stores surplus generation and returns it later. Even standard operation plans the next day from its own recent operation and the prices it has recently seen.
- It charges from the solar array first, may charge from the grid when the price is low, and discharges against the site's own demand.
- It keeps its energy inside the site, and it discharges against the site's own demand.
- Its actions are priced against the demand charge, because charging at the wrong moment can create a monthly peak that costs more than the energy saved. Standard builds that view from the previous month's bills.
Chemical dosing
- The phosphorus precipitant, the alkali and any external carbon are set by you, and neither case varies them with price.
What the forecast is made of
- Everything it uses would have been knowable at the time, so the result is one you could reproduce on site.
The plant's own operation
- The expected load at this time of day, taken from its own recent operation.
- Corrected by the level the site actually metered over the past day.
Weather, inflow and solar
- The archived weather forecast gives the rain, and the rain through the catchment model gives the expected inflow.
- The expected inflow gives the expected load at each hour, which the aeration cycle and the battery plan read.
- Forecast sunshine is what the solar array is expected to make, and the battery subtracts it when working out the site load it has to serve.
Prices
- The published retail schedule for a fixed tariff, or a market forecast for a wholesale one, read at the distance it applies to: the near-term forecast for the next hour or two, the day-ahead one for tomorrow.
- On the wholesale market the model is given forecast prices for the hours ahead. The prices that actually followed stay out of it, so each decision is made on what was knowable at the time.
The stores it already holds
- The gas in the holder, and the water in the reservoir, from their own recent history.
How the three stores are planned
- All three are planned on one objective: the energy bought in each interval, plus the demand charge that buying it creates, plus a small allowance for battery wear.
- Each plan is remade periodically and followed between remakes, and the order is fixed because each store changes the load the next one sees.
Gas first
- The engine output is planned over the day ahead, because gas is the slowest store to move.
The reservoir next
- Water is moved in quiet, cheap blocks, which changes the pump load the battery will see.
The battery last
- It sees the effect of the other two, so it is planned against the load they leave behind.
Set points and schedules it moves
Aeration and oxygen
- The oxygen target follows the price within limits: a little reserve is built up when electricity is cheap, and the target falls when it is dear.
- The lower limit is the oxygen the biology needs for nitrification, raised in cold weather and high load, so the biology is looked after first.
- Aeration is also shifted around demand charges. Just before a charged period the target is lifted slightly to carry a reserve, and inside the period it is trimmed while the price sits at or above the value the battery places on a stored kilowatt hour. The trim is applied above that lower limit.
- A larger and longer version of that shift was tested and cost more blower energy than it recovered, so it is not used.
Intermittent aeration, where it is switched on
- It is available in both cases and off by default, because it suits some tariffs and works against others.
- The cycle maps the quietest hour, the average and the busiest hour of the plant's own day to an aerated fraction, an oxygen target and a recycle ratio, and switches between aerated and unaerated phases.
- An aerated phase ends on low ammonia, on time or at a safety cap. An unaerated phase ends on low nitrate or on time.
- While the blowers are off the aerated tanks denitrify, and the mixing energy is charged so the saving is not overstated.
- In the benchmark it cut aeration energy by about a tenth and improved total nitrogen markedly, and raised the demand charge by a tenth to a quarter. That is why it is a choice.
Effluent pumping
- The station holds water through the expensive periods and moves it in calm, cheap blocks at modest flow.
- It used to sweep the level up and down with the price. That lost money, because pulling the reservoir down in a dear hour and then chasing it back at full flow costs more pumping energy per cubic metre: friction rises steeply as the pumps work harder.
- The plan is a forecast, so the station checks it as it goes. It pumps first whatever will not fit behind the wall, it pumps only water the reservoir actually holds, it holds a pump for its minimum run, and it may run every pump when the inflow calls for it.
- Inside a demand-charged period it will not add a pump while the site sits above the level being defended, and it may drop one back while the reservoir has room. The high-level float overrides both.
- Water that cannot be stored or pumped is counted and reported.
Internal recycle
- Ratios are reduced when the price is high, within their operating bounds, as a multiplier on the fixed or load-following policy, so the recycle stays inside its range.
Thickening and dewatering
- Both already batch. Price response adds a gate: a batch may wait while the holding tank has room, and is forced once the tank approaches full, with a softer wait the fuller the tank becomes.
- Dewatering runs at its design throughput whenever a batch is on, because a press throttled to a part rate drains the digested tank too slowly to finish a cycle. Design rate changes when the energy is bought; the amount used per cubic metre stays the same.
- A minimum off period stops the press short cycling.
Disinfection
- The requirement itself does not change with price. With a contact tank the batch can wait for a cheaper period. Without one it runs continuously and price has no influence on it.
Cogeneration and biogas
- Engine output is planned over the day ahead against the electricity it displaces and the demand charge it creates.
- Gas costs nothing to buy, so the plan is built on what the gas is worth as displaced electricity. Gas left at the end of the plan is worth nothing, which stops the plan hoarding gas while the engine idles.
- Two rules are imposed because no price can express them. The engine will not stop inside a charged period while there is gas in the holder, because an engine of a few hundred kilowatts stopping in one step adds its whole output to import for the rest of the month, and the monthly peak would then be set by the stop. The gas rate is also ramped, so a full swing inside one settlement interval cannot build a peak.
- The engine is pre-loaded just before the blowers return. Inside a charged period it is held well above idle whenever the reactor is aerated, or shortly before an unaerated phase ends, using the plant's own aeration timer.
Battery
- It is planned against the whole bill. Every kilowatt hour bought inside a charged period carries its share of the monthly demand charge, so it prefers to charge overnight and to discharge when the site buys expensive energy or is adding to a peak.
- Above a level close to the peak the standard case would have billed, an extra kilowatt is priced at what it truly costs, because that last kilowatt sets the month. Below that level the pack charges freely.
- Charging is capped so it cannot create a new peak, and discharging is free to defend the level it is protecting.
- The level comes from settled bills: the peak billed last month for the same tariff period. In the first month it uses the worst peak billed so far that month.
- Planning is finer on the wholesale market, where the price moves every interval, and in blocks on a fixed tariff.
- Each run also reports how much of the available saving the battery captured, against a perfect forecaster with the same battery, prices and load. A low figure says the dispatch wasted the pack. A high figure says the tariff offers little for that plant.
Demand guard
- When site import climbs towards the reference peak, the price the controllers see is raised for a while so they back off together, and the guard is held before release.
- The bill is still worked out from the tariff you set.
What stays the same in every case
- The oxygen the biology needs, and the disinfection requirement.
- Equipment and safety limits, and the dosing rates you set.
- The influent, weather and tariff being compared, and the starting inventories.
Reading the result
- The demand charge can move against the energy saving. Running a machine for a short while at a poor price can cost less than the monthly peak that stopping it would set, so read the demand line separately from the energy line.
- Storage is limited. The reservoir, the gas holder and the battery can each move only so much, and a plan that assumes more is corrected when it is carried out.
- A result is a comparison: the same plant and the same period, run different ways. It does not promise an outcome, and not every transient, trip or site constraint is modelled. Capital costs are indicative.
- Starting inventories matter most on short runs, where the plant has less time to settle.
- Where the plant is genuinely undersized, the run reports it plainly, and the answer usually sits in the plant itself.