Подбор
[[w:ContentMyBlock|id=введите id]]
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Калькулятор мощности насоса</title>
</head>
<body>
<h2>Расчёт мощности насоса</h2>
<label>Расход Q, м³/ч:
<input id="q" type="number" value="10">
</label><br><br>
<label>Напор H, м:
<input id="h" type="number" value="30">
</label><br><br>
<label>Плотность ρ, кг/м³:
<input id="rho" type="number" value="1000">
</label><br><br>
<label>КПД насоса ηн:
<input id="etaPump" type="number" step="0.01" value="0.65">
</label><br><br>
<label>КПД двигателя ηдв:
<input id="etaMotor" type="number" step="0.01" value="0.9">
</label><br><br>
<label>КПД передачи ηп:
<input id="etaDrive" type="number" step="0.01" value="1">
</label><br><br>
<button onclick="calc()">Рассчитать</button>
<div id="out" style="margin-top:20px; font-weight:bold;"></div>
<script>
function calc() {
const Q = parseFloat(document.getElementById('q').value); // м³/ч
const H = parseFloat(document.getElementById('h').value); // м
const rho = parseFloat(document.getElementById('rho').value); // кг/м³
const etaPump = parseFloat(document.getElementById('etaPump').value);
const etaMotor = parseFloat(document.getElementById('etaMotor').value);
const etaDrive = parseFloat(document.getElementById('etaDrive').value);
if ([Q, H, rho, etaPump, etaMotor, etaDrive].some(v => !isFinite(v) || v <= 0)) {
document.getElementById('out').textContent = 'Проверьте введённые данные';
return;
}
const g = 9.80665;
const Qs = Q / 3600; // м³/с
const Ph = rho * g * Qs * H; // гидравлическая, Вт
const Pshaft = Ph / etaPump; // на валу, Вт
const Pe = Ph / (etaPump * etaMotor * etaDrive); // электрическая, Вт
const etaTotal = etaPump * etaMotor * etaDrive;
document.getElementById('out').innerHTML =
`Гидравлическая мощность: ${(Ph / 1000).toFixed(3)} кВт<br>` +
`Мощность на валу насоса: ${(Pshaft / 1000).toFixed(3)} кВт<br>` +
`Потребляемая электрическая мощность: ${(Pe / 1000).toFixed(3)} кВт<br>` +
`Общий КПД: ${(etaTotal * 100).toFixed(1)} %`;
}
</script>
</body>
</html>