Appearance
Nutrient Removal Control Strategies
Specialized control strategies for biological nutrient removal (BNR) in wastewater treatment, including nitrogen control, phosphorus control, SRT optimization, and simultaneous nitrification-denitrification (SND).
Overview
Nutrient removal is one of the most challenging and complex aspects of wastewater treatment. The Nutrient Removal Control System provides sophisticated strategies for managing biological nitrogen removal (BNR), phosphorus removal, and simultaneous nitrification-denitrification (SND) while optimizing energy consumption and treatment performance.
The fundamental challenge lies in orchestrating competing biological processes:
- Nitrification requires aerobic conditions but consumes DO energy
- Denitrification requires anoxic conditions with available carbon
- Phosphorus removal requires alternating anaerobic/aerobic zones
- Energy efficiency demands minimizing aeration while meeting discharge standards
Nitrogen Control
Internal Recycle Optimization
Internal recycle (IR) returns nitrate-rich aerobic effluent to the anoxic zone for denitrification. Optimization is critical for balancing nitrogen removal efficiency with energy consumption.
Mass Balance Principle
The nitrate concentration in the anoxic zone depends on the recycle ratio and mixed liquor nitrate concentration:
$$NO_3^{anoxic} = \frac{Q_{IR} \times NO_3^{aerobic}}{Q_{in} + Q_{IR}}$$
Where:
- Q_IR = Internal recycle flow (m³/d)
- NO₃^aerobic = Nitrate concentration in aerobic zone (mg/L)
- Q_in = Influent flow (m³/d)
Recycle Ratio Determination
| Influent TN | Target TN | Required IR Ratio |
|---|---|---|
| 45 mg/L | 10 mg/L | 150-200% |
| 50 mg/L | 10 mg/L | 180-250% |
| 60 mg/L | 8 mg/L | 250-350% |
| 40 mg/L | 15 mg/L | 80-120% |
Higher recycle ratios provide more denitrification capacity but increase energy for pumping and aeration.
Control Algorithm
typescript
import { createIROptimizer, IRControlConfig } from '@/flow/services/simulation/nutrients';
const config: IRControlConfig = {
id: 'ir-control-1',
type: 'InternalRecycleOptimization',
enabled: true,
// Nitrogen targets
TNtarget: 10.0, // mg/L effluent
NO3targetAnoxic: 5.0, // mg/L for optimal denit
// Recycle constraints
IRratioMin: 1.0,
IRratioMax: 4.0,
IRflowMax: 50000, // m³/d
// Control gains
controllerGains: {
Kp: 0.05, // Slow adjustment for pumping
Ki: 0.01,
Kd: 0,
},
// Measurement nodes
TNNodeId: 'effluent',
NO3InfluendNodeId: 'aerobic-zone',
IRTargetNodeId: 'ir-pump',
manipulatedVariable: 'IRflowDemand',
// Response filtering
responseTime: 120, // 2-hour filter for TN measurement lag
mode: 'auto',
};
const optimizer = createIROptimizer(config);Energy vs Nitrogen Trade-off
| IR Ratio | TN Removal % | Pump Energy | Total Energy | Cost |
|---|---|---|---|---|
| 1.0 | 65% | Low | Medium | Low |
| 2.0 | 78% | Medium | Medium | Medium |
| 3.0 | 88% | High | High | High |
| 4.0 | 92% | Very High | Very High | Very High |
Typically, 2.0-2.5 provides optimal balance between removal and energy.
External Carbon Dosing
When internal carbon source is insufficient, external carbon dosing is required. The amount depends on denitrification capacity and available COD.
Carbon Requirement Calculation
The stoichiometric requirement for denitrification:
$$COD_{required} = \frac{NO_3-N_{remove} \times 2.86}{(1 - 1.42 \times Y_H) \times Y_{H,denit}}$$
Where:
- NO₃-N_remove = Nitrate removed (mg/L)
- Y_H = Heterotrophic yield (0.67 g VSS/g COD)
- Y_H,denit = Yield for denitrification (0.40 g VSS/g COD)
Simplified rule of thumb: $$COD_{dose} \approx 3.0 \times NO_3-N_{remove}$$
Carbon Source Comparison
| Carbon Source | COD Content | Denitrification Rate | Cost/kg | Handling | Notes |
|---|---|---|---|---|---|
| Methanol (CH₃OH) | 1.5 g COD/g | Very High | High | Flammable | Most soluble, fast |
| Acetate (CH₃COO⁻) | 1.07 g COD/g | Highest | High | Corrosive | Preferred microbe substrate |
| Glycerol | 1.22 g COD/g | Medium | Medium | Viscous | Good denit potential |
| Glucose | 1.07 g COD/g | Low | Low | Solid | Slow denit, fermentation |
| Ethanol | 2.09 g COD/g | High | Medium | Flammable | Good alternative |
| Primary sludge | ~1.0 | Low | Very Low | Variable | Internal source |
Dosing Control Strategy
typescript
import { createCarbonDosingController, CarbonDosingConfig } from '@/flow/services/simulation/nutrients';
const config: CarbonDosingConfig = {
id: 'carbon-dose-1',
type: 'ExternalCarbonDosing',
enabled: true,
// Carbon source properties
carbonSource: 'methanol',
CODcontent: 1.5, // g COD/g chemical
denitrificationRate: 0.8, // normalized to methanol
// Nitrate targets
NO3targetAnoxic: 4.0, // mg/L (residual in anoxic zone)
NO3targetEffluent: 6.0, // mg/L
// Dosing strategy
dosingMethod: 'proportional_to_NO3',
CODdoseRatio: 3.2, // g COD per g NO3-N removed
maxDoseRate: 50, // g/d per plant
// Control parameters
controllerGains: {
Kp: 0.3,
Ki: 0.05,
Kd: 0,
},
// Safety constraints
minDose: 0,
maxDose: 500, // kg/d limit
rampRate: 20, // kg/d/hr
// Measurement nodes
NO3InfluentNodeId: 'aerobic-zone',
doseTargetNodeId: 'anoxic-dosing-point',
manipulatedVariable: 'CarbonPumpSP',
mode: 'auto',
};
const dosing = createCarbonDosingController(config);Nitrogen Control Orchestration
For complete nitrogen control in MLE (Modified Ludzack-Ettinger) or A₂O systems:
typescript
import { getNitrogenControlService } from '@/flow/services/simulation/nutrients';
const service = getNitrogenControlService();
// Register components
service.registerIROptimizer(irConfig);
service.registerCarbonDosingController(carbonConfig);
service.registerDOController(doConfig); // DO in aerobic zone
service.registerAerationCycler(cycleConfig); // For SND
// Execute each simulation step
const result = service.execute({
currentTime: simulationTime,
dt: timeStep,
measurements: {
effluentTN: 8.5,
aeroticNO3: 15.0,
anoxicDO: 0.1,
influentFlow: 20000,
},
});
console.log('IR Flow:', result.IRflowDemand); // m³/d
console.log('Carbon Dose:', result.carbonDosing); // kg/d
console.log('DO Setpoint:', result.DOsetpoint); // mg/L
console.log('Energy Impact:', result.pumpingEnergy); // kWPhosphorus Control
Chemical Phosphorus Removal
Chemical precipitation with metal salts (Fe³⁺, Al³⁺, Ca²⁺) is the most reliable method for phosphorus removal to low levels (< 0.5 mg/L).
Precipitation Chemistry
Ferric chloride precipitation:
$$FeCl_3 + PO_4^{3-} \rightarrow FePO_4 \downarrow + 3Cl^-$$
Stoichiometric molar ratio: Fe:P = 1.0:1.0 mol/mol
To account for hydrolysis and pH effects, practical dosing:
$$P_{removed} = \frac{dose (kg/d) \times Fe%{purity} \times 55.85}{1000 \times M \times removal%}$$
Where:
- M_FeCl3 = 162.2 g/mol
- Typical Fe content: 20-21% by weight
- Removal efficiency: typically 90-95%
Chemical Comparison
| Chemical | Fe/Al Content | P Molar Ratio | Efficiency | pH Impact | Cost Index |
|---|---|---|---|---|---|
| FeCl₃ | 20-21% Fe | 1.5-3.0:1 | 90-95% | Acidic | 1.0 |
| FeSO₄ | 20-21% Fe | 2.0-3.5:1 | 85-90% | Acidic | 0.8 |
| Alum [Al₂(SO₄)₃] | 8-9% Al | 1.5-2.5:1 | 85-90% | Acidic | 0.7 |
| Polyaluminum | 8-10% Al | 1.5-2.0:1 | 90-95% | Neutral | 1.2 |
| Lime [Ca(OH)₂] | - | 3.5-5.0:1 | 75-85% | Alkaline | 0.3 |
Dosing Control
typescript
import { createChemicalPRecipitation, ChemicalPConfig } from '@/flow/services/simulation/nutrients';
const config: ChemicalPConfig = {
id: 'p-precip-1',
type: 'ChemicalPRemoval',
enabled: true,
// Chemical selection
chemicalType: 'FeCl3', // FeCl3, FeSO4, Alum, CaOH2
ironContent: 0.21, // Weight fraction
purityFraction: 0.95,
// Phosphorus targets
TPtarget: 0.5, // mg/L effluent
residualP: 0.3, // mg/L (includes biological removal)
// Dosing strategy
dosageStrategy: 'proportional_to_load',
moralRatio: 2.0, // Fe:P mol/mol (accounts for hydrolysis)
// Control parameters
controllerGains: {
Kp: 0.4,
Ki: 0.08,
Kd: 0,
},
// Constraints
minDose: 0,
maxDose: 100, // kg/d
rampRate: 10, // kg/d/hr
// Measurement nodes
TPNodeId: 'effluent',
influentFlowNodeId: 'influent',
doseTargetNodeId: 'primary-clarifier-outlet',
manipulatedVariable: 'ChemicalPump_SP',
// Safety
dosageAlarm: 80, // kg/d alert
mode: 'auto',
};
const precip = createChemicalPRecipitation(config);Enhanced Biological Phosphorus Removal (EBPR)
EBPR leverages polyphosphate-accumulating organisms (PAOs) to remove phosphorus biologically while recovering energy as methane.
EBPR Process Requirements
Influent → Anaerobic → Anoxic → Aerobic → Clarifier → Effluent
Zone Zone Zone
[VFA] [NO3] [DO]
↓ ↓ ↓
Release Uptake Uptake
P into P into P into
liquid PAO PAO
↓ ↓
Recycle WAS
↓
BiosolidsEBPR Phosphorus Balance
$$P_{removed,EBPR} = P_{uptake,aerobic} - P_{release,anaerobic}$$
Typical values:
- P release in anaerobic zone: 2-4 mg/L (as PO₄)
- P uptake in aerobic zone: 15-30 mg/L (into biomass)
- Net P removal via WAS: 8-15 mg/L
EBPR vs Chemical-P Decision Tree
| Metric | EBPR Better | Chemical Better |
|---|---|---|
| Target TP | >1 mg/L | <0.5 mg/L |
| Energy | More energy (aeration) | Less energy |
| Capital | High (zones) | Low (dosing point) |
| Sludge benefit | Yes (valuable biosolids) | No (inert sludge) |
| Reliability | Variable (biology) | Stable |
| Byproduct | Biogas potential | Waste solids |
| Influent VFA | Required | Not needed |
| Temperature | Sensitive (< 15°C) | Insensitive |
Hybrid EBPR + Chemical Strategy
Optimal approach for strict P limits:
typescript
import { createHybridPRemoval, HybridPConfig } from '@/flow/services/simulation/nutrients';
const config: HybridPConfig = {
id: 'p-hybrid-1',
type: 'HybridPRemoval',
enabled: true,
// Targets
TPtarget: 0.5, // mg/L
bioPrelianceTarget: 70, // % removal by EBPR
// Strategy
ebprEnabled: true,
chemicalBackup: true,
switchPoint: 0.8, // mg/L - when to activate chemical
// EBPR configuration
ebpr: {
anaeronicVolume: 2000, // m³
anoxicVolume: 3000, // m³
aerobicVolume: 5000, // m³
SRTEbpr: 15, // days
},
// Chemical configuration
chemical: {
chemicalType: 'FeCl3',
dosingPoint: 'before-clarifier',
maxDose: 50, // kg/d
},
// Control
controllerGains: {
Kp: 0.3,
Ki: 0.06,
Kd: 0,
},
TPNodeId: 'effluent',
ebrPNodeId: 'ebpr-system',
doseTargetNodeId: 'chemical-dosing',
mode: 'auto',
};
const hybrid = createHybridPRemoval(config);SRT Optimization for BNR
Solids Residence Time (SRT) is the master variable controlling biomass composition, particularly the ratio of nitrifiers to heterotrophs.
Minimum SRT for Nitrification
The critical constraint for nitrogen removal:
$$SRT_{min,N} = \frac{SF}{\mu_{max,AOB} \times \theta^{(T-20)} - b_{AOB}}$$
Where:
- SF = Safety factor (typically 1.5-2.5)
- μ_max,AOB = Maximum growth rate of AOB (typically 0.9 d⁻¹ at 20°C)
- θ = Temperature coefficient (typically 1.07)
- b_AOB = Endogenous decay rate (typically 0.1 d⁻¹)
SRT Temperature Requirements
| Temperature | μ_max,AOB | SRT_min | SRT_design |
|---|---|---|---|
| 5°C | 0.285 | 8.0 | 12-15 |
| 10°C | 0.407 | 5.2 | 8-10 |
| 15°C | 0.579 | 3.2 | 5-7 |
| 20°C | 0.825 | 1.8 | 3-5 |
| 25°C | 1.175 | 1.0 | 2-3 |
| 30°C | 1.675 | 0.6 | 1.5-2.5 |
SRT Control via WAS
The primary mechanism for SRT control:
$$Q_{WAS} = \frac{V_{aeration} \times X_{MLSS}}{SRT_{desired} \times X_{WAS}}$$
Control strategy:
typescript
import { createSRTController, SRTControlConfig } from '@/flow/services/simulation/nutrients';
const config: SRTControlConfig = {
id: 'srt-control-1',
type: 'SRTControl',
enabled: true,
// Process volumes
aeration: {
volume: 10000, // m³
nominalSRT: 12, // days
},
// Temperature compensation
temperatureCompensation: {
enabled: true,
referenceTemp: 20, // °C
aoAMuMax: 0.9, // d⁻¹
aoADecay: 0.1, // d⁻¹
theta: 1.07,
safetyFactor: 2.0, // 2.0 × SRT_min
},
// SRT setpoints at different seasons
srtSetpoints: {
winter: 15, // 10-15°C
spring: 12, // 15-20°C
summer: 10, // 20-25°C
fall: 12, // 15-20°C
},
// WAS control
wasControl: {
controlMode: 'SRT_based',
wasConcentration: 8000, // mg/L typical
mlssSetpoint: 3500, // mg/L
},
// Control parameters
controllerGains: {
Kp: 0.2,
Ki: 0.02, // Slow integration (days)
Kd: 0,
},
// Constraints
minWASFlow: 10, // m³/d
maxWASFlow: 500, // m³/d
minSRT: 5, // days
maxSRT: 30, // days
// Measurement nodes
mlssNodeId: 'aeration-zone',
wasNodeId: 'clarifier-underflow',
temperatureNodeId: 'aeration-zone',
wasPumpNodeId: 'was-pump',
mode: 'auto',
};
const srtControl = createSRTController(config);SRT Limits for Different Objectives
| Objective | Min SRT | Max SRT | Rationale |
|---|---|---|---|
| Nitrification only | 5 | 15 | Enough for AOB growth |
| Complete N removal | 8 | 20 | Ensure NOB, denitrification |
| EBPR | 10 | 20 | PAO selection |
| Extended aeration | 20 | 40 | Complete oxidation |
| Nitrification + P | 12 | 25 | Balance both processes |
| Membrane bioreactor | 15 | 50 | Requires longer SRT |
Simultaneous Nitrification-Denitrification (SND)
SND reduces carbon and nitrogen simultaneously in a single aerobic zone through microscale oxygen gradients and metabolic versatility of nitrifiers.
SND Mechanisms
Floc interior (anoxic core)
↓
Denitrifiers use NO₃ as electron acceptor
NO₃ → NO₂ → NO → N₂O → N₂
Floc surface (aerobic)
↓
Nitrifiers oxidize NH₄
NH₄ → NO₂ → NO₃
Net result: Single zone achieves both N conversionsLow DO Control for SND
SND requires strict DO control in the 0.3-0.8 mg/L range:
typescript
import { createSNDController, SNDConfig } from '@/flow/services/simulation/nutrients';
const config: SNDConfig = {
id: 'snd-control-1',
type: 'SimultaneousNitrDenit',
enabled: true,
// SND-specific setpoints (low DO)
DOsetpoint: 0.5, // mg/L (vs 1.5-2.5 for conventional)
DOmin: 0.3, // mg/L - minimum for nitrification
DOmax: 0.8, // mg/L - above this, denit inhibited
// Aeration strategy
aerationMode: 'intermittent', // On/off cycles
// OR
// aerationMode: 'continuous_low_do' // VFD at reduced speed
// For intermittent aeration
intermittent: {
onTime: 20, // minutes
offTime: 10, // minutes
doHighTrip: 1.0, // mg/L - force OFF
doLowTrip: 0.2, // mg/L - force ON
},
// Nitrogen balance targets
nitrogenBalance: {
targetAVNratio: 0.5, // (NH4/(NH4+NOx)) for optimal SND
ammoniaNeed: 'high', // Require good nitrification
},
// SRT for SND
srtTarget: 12, // days
// Control parameters
controllerGains: {
Kp: 40, // Faster response for DO
Ki: 8,
Kd: 1,
},
// Measurement nodes
doNodeId: 'snd-zone',
nh4NodeId: 'snd-zone-effluent',
noxNodeId: 'snd-zone-effluent',
blowerTargetNodeId: 'blower-snd',
mode: 'auto',
};
const snd = createSNDController(config);Intermittent Aeration Pattern Optimization
The timing of aeration cycles dramatically affects treatment efficiency:
| Aeration Time | Anoxic Time | ON/OFF Ratio | Best For | TN % |
|---|---|---|---|---|
| 10 min | 20 min | 0.5 | High carbon load | 70% |
| 15 min | 15 min | 1.0 | Standard BNR | 80% |
| 20 min | 10 min | 2.0 | Low carbon load | 85% |
| 30 min | 5 min | 6.0 | Very low denit | 60% |
typescript
// Automatic cycle optimization based on load
import { optimizeSNDCycles } from '@/flow/services/simulation/nutrients';
const optimization = optimizeSNDCycles({
influent: {
BOD: 280,
TKN: 45,
},
currentCycle: {
onTime: 20,
offTime: 10,
},
targetRemoval: {
BOD: 90,
TN: 85,
},
});
// Result: { recommendedOnTime: 18, recommendedOffTime: 12, expectedTN%: 84 }BNR Strategy Orchestration
Managing multiple nitrogen and phosphorus control objectives simultaneously requires conflict resolution logic.
Conflict Resolution Matrix
| Conflict | Objective 1 | Objective 2 | Resolution |
|---|---|---|---|
| SRT for N vs SRT for P | Nitrification (SRT ~5d) | EBPR (SRT ~15d) | Use EBPR SRT, supplement chemical P |
| DO for SND vs DO for Bio-P | SND (DO 0.5) | EBPR (DO 2.0) | Maintain aerobic zone DO high, use SND in separate basin |
| High IR ratio vs Energy | TN removal (IR 3x) | Cost optimization | Use optimal IR (2.0-2.5x) + chemical N |
| Anaerobic VFA vs Aerobic DO | EBPR needs VFA | Aeration needs DO | Design: Separate anaerobic zone |
| Low DO for denit vs Diffuser fouling | Denitrification (low DO) | Equipment | Use tapered aeration, monitor diffuser |
Orchestration Logic
typescript
import { getBNROrchestrationService, BNRConfig } from '@/flow/services/simulation/nutrients';
const bnrConfig: BNRConfig = {
id: 'bnr-full-system',
type: 'BNROrchestration',
enabled: true,
// Process configuration
processType: 'A2O', // Anaerobic-Anoxic-Aerobic
// Other options: MLE, SBR, Carousel, IFAS, etc.
// Process zones
zones: [
{
id: 'anaerobic',
purpose: 'EBPR_VFA_production',
volume: 1500,
minSRT: 0.2,
},
{
id: 'anoxic',
purpose: 'Denitrification',
volume: 3000,
minSRT: 1.0,
},
{
id: 'aerobic',
purpose: 'Nitrification_EBPR_uptake',
volume: 6000,
minSRT: 10,
},
],
// Control objectives (priority order)
objectives: [
{
priority: 1,
name: 'Nitrogen removal',
variable: 'effluentTN',
setpoint: 10, // mg/L
controller: 'irOptimizer',
},
{
priority: 2,
name: 'Phosphorus removal',
variable: 'effluentTP',
setpoint: 0.5, // mg/L
controller: 'hybridPRemoval',
},
{
priority: 3,
name: 'Energy efficiency',
variable: 'energyPerBOD',
setpoint: 0.8, // kWh/kg BOD
controller: 'energyOptimizer',
},
],
// Conflict resolution rules
conflictResolution: [
{
conflict: 'SRT optimization',
affectedObjectives: ['nitrification', 'EBPR'],
resolution: 'Use EBPR SRT with chemical P backup',
},
{
conflict: 'DO control',
affectedObjectives: ['SND', 'bio-P'],
resolution: 'Tapered aeration - low DO in first zone, high in last',
},
{
conflict: 'Carbon availability',
affectedObjectives: ['denitrification', 'EBPR'],
resolution: 'Allocate VFA first to EBPR, use external carbon for denit',
},
],
};
const service = getBNROrchestrationService();
service.initialize(bnrConfig);
// Execute step
const result = service.execute({
currentTime: simulationTime,
dt: timeStep,
measurements: processMeasurements,
});
console.log('IR Flow:', result.irFlow);
console.log('P Dose:', result.chemicalPDose);
console.log('Carbon Dose:', result.externalCarbonDose);
console.log('DO Setpoint (Aerobic):', result.doSetpointAerobic);
console.log('Total Energy:', result.totalEnergyKW);
console.log('TN Effluent:', result.effluentTN);
console.log('TP Effluent:', result.effluentTP);Performance Metrics
Nitrogen Removal Metrics
| Metric | Formula | Typical Target |
|---|---|---|
| Nitrogen Removal Efficiency | (TN_in - TN_eff) / TN_in × 100% | >85% |
| Nitrification Rate | mg N/(L·d) | >5 |
| Denitrification Rate | mg N/(L·d) | >4 |
| Denitrification Capacity | NO₃ removed / OUR | >0.3 |
| Specific denitrification rate | gN/(gVSS·d) | 0.3-0.8 |
Phosphorus Removal Metrics
| Metric | Formula | Typical Target |
|---|---|---|
| P Removal Efficiency | (TP_in - TP_eff) / TP_in × 100% | >90% |
| Biological P % | P_via_WAS / Total_P_removed | 60-80% |
| EBPR P Release | mg/L in anaerobic | 2-5 |
| EBPR P Uptake | mg/L in aerobic | 15-30 |
| Chemical Dose Efficiency | P_removed / Fe_dosed | >0.7 |
Energy Efficiency Indicators
| Indicator | Unit | Excellent | Good | Average |
|---|---|---|---|---|
| Energy/BOD removed | kWh/kg | <0.6 | 0.6-0.8 | 0.8-1.2 |
| Energy/TN removed | kWh/kg | ❤️.0 | 3.0-5.0 | 5.0-8.0 |
| Energy/m³ treated | kWh/m³ | <0.5 | 0.5-0.8 | 0.8-1.5 |
| Aeration % of total | % | <50% | 50-60% | >60% |
Stability Indicators
| Parameter | Target |
|---|---|
| SVI (Sludge Volume Index) | 80-120 mL/g |
| MLVSSratio (VSS/TSS) | 0.75-0.85 |
| TP/Biomass (P content) | 2-3% |
| TN/Biomass (N content) | 8-10% |
Configuration Example: Complete BNR Plant
json
{
"plant": {
"name": "25 MLD BNR Treatment Plant",
"designFlow": 25000,
"peakFlow": 35000,
"influent": {
"COD": 500,
"BOD": 250,
"TKN": 50,
"TP": 8,
"SS": 300
},
"effluent_targets": {
"BOD": 10,
"TN": 10,
"TP": 0.5,
"SS": 15
}
},
"process": {
"type": "A2O_with_chemical_P",
"zones": [
{
"id": "anaerobic-1",
"type": "CSTR",
"volume": 2000,
"retention_time": 1.92,
"mixingIntensity": "low"
},
{
"id": "anoxic-1",
"type": "CSTR",
"volume": 3500,
"retention_time": 3.36,
"mixingIntensity": "low",
"internalRecycle": {
"source": "aerobic-1",
"ratio": 2.0
}
},
{
"id": "aerobic-1",
"type": "PFR",
"volume": 8000,
"retention_time": 7.68,
"airflowControl": "ABAC"
},
{
"id": "aerobic-2",
"type": "CSTR",
"volume": 6000,
"retention_time": 5.76,
"airflowControl": "DO_feedback"
}
],
"clarifier": {
"type": "circular",
"diameter": 40,
"depth": 4.5,
"overflowRate": 25,
"solidLoadingRate": 250
}
},
"controls": {
"nitrogen": {
"internalRecycle": {
"enabled": true,
"ratio": 2.0,
"optimization": "TN_target_based",
"controlGains": {
"Kp": 0.05,
"Ki": 0.01
}
},
"externalCarbon": {
"enabled": true,
"source": "methanol",
"doseController": "proportional_to_NO3"
}
},
"phosphorus": {
"ebpr": {
"enabled": true,
"anaerobic_HRT": 1.92,
"ebprContribution": 0.70
},
"chemical": {
"enabled": true,
"chemical": "FeCl3",
"targetRemoval": 0.30,
"dosageStrategy": "setpoint_minus_biological"
}
},
"srt": {
"target": 12,
"temperatureCompensation": true,
"wasPumpControl": "SRT_based"
},
"aeration": {
"strategy": "ABAC_cascade",
"blowerType": "centrifugal_VFD",
"nitrification_DO": 2.0,
"post_nitrification_DO": 1.5
}
}
}Best Practices
Design Practices
Zone Configuration
- Anaerobic zone for EBPR: 15-20% of aeration volume
- Anoxic zone for denitrification: 25-35% of aeration volume
- Aerobic zone for nitrification: 50-60% of aeration volume
SRT Selection
- Base on winter temperature requirements
- Safety factor of 1.5-2.5× minimum SRT for nitrifiers
- Ensure compatibility with P removal objectives
Recycle Configuration
- Internal recycle: 2.0-2.5× influent flow
- RAS: 0.5-1.0× influent flow
- Use variable speed pumps for energy efficiency
Chemical Selection
- FeCl₃ for reliable performance (preferred)
- Alum for lower cost
- Lime only if alkalinity recovery desired
Operational Practices
Daily Monitoring
- Effluent ammonia and nitrate (identify nitrification issues)
- Effluent phosphorus (guide chemical dose)
- MLSS and SVI (sludge stability)
- DO profile across aerobic zones
Weekly Adjustments
- SRT correction if MLSS drifting
- Internal recycle optimization
- Blower scheduling for load variation
Monthly Reviews
- Nutrient mass balance (internal vs external)
- Energy consumption benchmarking
- Equipment inspection and maintenance
Seasonal Adaptations
- Winter: Increase SRT for nitrification at low temperatures
- Summer: Reduce SRT if excessive solids production
- Monsoon: Adjust for peak flows and shock loads
Troubleshooting
| Issue | Symptoms | Root Cause | Solution |
|---|---|---|---|
| High ammonia | NH₄ > 5 mg/L | Low SRT | Reduce WAS flow, increase aeration HRT |
| Low temperature | Increase design SRT for season | ||
| High influent load | Reduce IR ratio, increase aeration | ||
| High nitrate | NO₃ > 10 mg/L | Low IR ratio | Increase IR from 2.0 to 3.0 |
| Insufficient carbon | Add external carbon dosing | ||
| Low anoxic HRT | Increase anoxic zone volume | ||
| High phosphorus | TP > 1 mg/L | Low biological P | Ensure anaerobic zone (minimize DO) |
| Insufficient chemical | Increase Fe or Al dose | ||
| Poor EBPR conditions | Check IR, VFA availability | ||
| High energy | >1.0 kWh/m³ | Over-aeration | Reduce DO setpoint, check ABAC tuning |
| Excessive IR pumping | Optimize IR ratio | ||
| Blower inefficiency | Service diffusers, optimize blower staging | ||
| Sludge bulking | SVI > 150 | Filament growth | Reduce SRT, increase selector |
| Low DO | Check aeration diffusers | ||
| Overload | Check influent characterization |
Related Documentation
- Aeration-Control - Advanced aeration strategies
- DO-Control - Dissolved oxygen feedback control
- SRT-Control - Solids residence time management
- RAS-WAS-Control - Clarifier and sludge management
- Nitrogen-Balance - Nitrogen mass balance fundamentals
- Phosphorus-Balance - Phosphorus mass balance fundamentals
- ASM2d - Biokinetic model for nutrient removal
- ASM3 - Alternative biokinetic model
References
Henze, M., van Loosdrecht, M.C.M., Ekama, G.A., and Brdjanovic, D. (2008). Biological Wastewater Treatment: Principles, Modeling and Design. IWA Publishing.
WEF (2010). Nutrient Removal. Manual of Practice No. 29. Water Environment Federation.
Metcalf & Eddy, AECOM (2014). Wastewater Engineering: Treatment and Resource Recovery, 5th Edition. McGraw-Hill.
van Loosdrecht, M.C.M. and Brdjanovic, D. (2014). "Anticipating the next century of wastewater treatment." Water Research, 47(3), pp. 1-7.
Rieger, L., Koch, G., Kühni, M., Gujer, W., and Siegrist, H. (2001). "The EAWAG+Env-i-tal Guideline on Control Strategies." Water Science & Technology, 45(4-5), pp. 13-28.
Sperling, M.v. (2007). Wastewater Characteristics, Treatment and Disposal. IWA Publishing.
Tchobanoglous, G., Burton, F.L., and Stensel, H.D. (2013). Wastewater Engineering: Treatment and Reuse, 5th Edition. Metcalf & Eddy, McGraw-Hill.