Please enter valid positive numbers for all fields.
Pump Flow Rate (L/hr):–
Pump Flow Rate (mL/min):–
Chemical Consumption (kg/day):–
Solution Usage (L/day):–
function calculateDosing() {
// Get input values using var
var feedFlow = parseFloat(document.getElementById('feedFlow').value);
var dosage = parseFloat(document.getElementById('dosage').value);
var sg = parseFloat(document.getElementById('specificGravity').value);
var conc = parseFloat(document.getElementById('concentration').value);
var errorDiv = document.getElementById('errorMsg');
var resultsDiv = document.getElementById('results');
// Validation
if (isNaN(feedFlow) || isNaN(dosage) || isNaN(sg) || isNaN(conc) || feedFlow <= 0 || dosage <= 0 || sg <= 0 || conc <= 0) {
errorDiv.style.display = 'block';
resultsDiv.style.display = 'none';
return;
}
errorDiv.style.display = 'none';
// Logic:
// 1. Calculate Mass of Pure Chemical needed per hour (g/hr)
// Formula: Feed (m3/hr) * Dosage (g/m3 or ppm) = g/hr
var pureChemicalMassPerHour = feedFlow * dosage;
// 2. Calculate Mass of Solution needed per hour (g/hr)
// Formula: Pure Mass / (Concentration %)
var solutionMassPerHour = pureChemicalMassPerHour / (conc / 100);
// 3. Calculate Volume of Solution needed per hour (L/hr)
// Formula: Mass (g) / Density (g/L)
// Density in g/L = Specific Gravity * 1000
var densityGL = sg * 1000;
var pumpRateLPH = solutionMassPerHour / densityGL;
// 4. Convert L/hr to mL/min
var pumpRateMLM = (pumpRateLPH * 1000) / 60;
// 5. Daily Consumption of Solution (L/day)
var solutionLDay = pumpRateLPH * 24;
// 6. Daily Consumption of Solution by Weight (kg/day)
// Volume (L) * SG (kg/L)
var solutionKgDay = solutionLDay * sg;
// Update DOM
document.getElementById('resLPH').innerHTML = pumpRateLPH.toFixed(3) + " L/hr";
document.getElementById('resMLM').innerHTML = pumpRateMLM.toFixed(2) + " mL/min";
document.getElementById('resKgDay').innerHTML = solutionKgDay.toFixed(2) + " kg/day";
document.getElementById('resLDay').innerHTML = solutionLDay.toFixed(1) + " L/day";
resultsDiv.style.display = 'block';
}
Understanding Antiscalant Dosing for Reverse Osmosis
Accurate antiscalant dosing is critical for the longevity and efficiency of Reverse Osmosis (RO) systems. Antiscalants are chemical pretreatments injected into feedwater to prevent mineral scaling on the membrane surface. Scaling occurs when dissolved salts (such as calcium carbonate or calcium sulfate) exceed their solubility limits due to the concentration effect within the RO system.
How to Calculate Dosing Pump Flow Rate
To configure your dosing pump correctly, you must determine the volumetric flow rate required to achieve the target chemical concentration in the feedwater. The calculation depends on four main variables:
Feed Flow Rate (Qf): The total volume of water entering the RO system, typically measured in cubic meters per hour (m³/hr).
Target Dosage: The concentration of antiscalant required to inhibit scale, usually determined by projection software from the chemical manufacturer (measured in ppm or mg/L).
Specific Gravity (S.G.): The density of the antiscalant solution. Pure water has an S.G. of 1.0, while most antiscalants range between 1.0 and 1.45.
Concentration (%): The strength of the solution in the dosing tank. If you are dosing "neat" (undiluted) from the drum, this is 100%. If you dilute the chemical with permeate water, this value will be lower (e.g., 10% or 20%).
Many operators make the mistake of assuming the chemical has the same density as water (1.0 kg/L). However, concentrated antiscalants are heavier. If you calculate based on water density but pump a heavier liquid, you may under-dose the system. Conversely, failing to account for dilution (Concentration %) will result in massive under-dosing, leading to rapid membrane scaling.
Adjusting for Day Tank Dilution
It is common practice to dilute antiscalants in a "day tank" to allow for larger, more controllable pump stroke settings. If you dilute 10kg of antiscalant with 90kg of water, your concentration is 10%. You must input "10" into the concentration field above to get the correct pump speed.
Optimizing Pump Stroke and Frequency
Once you have the required flow rate in L/hr or mL/min, you should adjust your dosing pump's stroke length and frequency. Ideally, the pump should operate at a high frequency with a stroke length between 30% and 70% to ensure a continuous, homogeneous mixing of the chemical into the feed stream. Avoid very short stroke lengths, as they can lead to priming issues and inaccuracy.