{"id":3495,"date":"2026-05-13T20:26:44","date_gmt":"2026-05-13T17:26:44","guid":{"rendered":"https:\/\/www.equipsilo.com\/?page_id=3495"},"modified":"2026-05-13T20:32:42","modified_gmt":"2026-05-13T17:32:42","slug":"kalkulator-filtrow","status":"publish","type":"page","link":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/","title":{"rendered":"Kalkulator filtr\u00f3w"},"content":{"rendered":"\n<script type=\"module\" src=\"https:\/\/unpkg.com\/@google\/model-viewer\/dist\/model-viewer.min.js\"><\/script>\n\n<div id=\"equip-filter-calculator\" class=\"equip-filter-wrap\">\n  <div class=\"equip-filter-intro\">\n    <h2>Kalkulator Filtra z Wentylatorem<\/h2>\n    <p>To narz\u0119dzie podaje wst\u0119pne oszacowanie przep\u0142ywu powietrza, powierzchni filtracyjnej i mocy wentylatora dla filtr\u00f3w silosowych z wentylatorem.<\/p>\n  <\/div>\n\n  <div class=\"equip-filter-model-card\">\n    <div class=\"equip-filter-model-text\">\n      <h3>Podgl\u0105d 3D Filtra<\/h3>\n      <p>Obracaj, przybli\u017caj i sprawdzaj model 3D interaktywnie. Ten model 3D jest tymczasowy i mo\u017ce zosta\u0107 p\u00f3\u017aniej zast\u0105piony.<\/p>\n    <\/div>\n\n    <model-viewer\n      id=\"filterModel\"\n      src=\"https:\/\/www.equipsilo.com\/wp-content\/uploads\/2026\/05\/fan.glb\"\n      alt=\"Fan-Assisted Silo Top Filter 3D Model\"\n      camera-controls\n      auto-rotate\n      shadow-intensity=\"1\"\n      exposure=\"1\"\n      loading=\"eager\"\n      style=\"width:100%; height:430px; background:#f6f8fa; border-radius:14px;\">\n    <\/model-viewer>\n  <\/div>\n\n  <div class=\"equip-filter-card\">\n    <h3>Krok 1: Wybierz Tryb Oblicze\u0144<\/h3>\n\n    <label for=\"filterCalculationMode\">Tryb Oblicze\u0144<\/label>\n    <select id=\"filterCalculationMode\">\n      <option value=\"airflow\" selected>Sprawdzenie Przep\u0142ywu Powietrza - znam przep\u0142yw<\/option>\n      <option value=\"filling\">Oszacowanie Nape\u0142niania Silosu - znam wydajno\u015b\u0107 nape\u0142niania<\/option>\n    <\/select>\n  <\/div>\n\n  <div class=\"equip-filter-card\">\n    <h3>Krok 2: Wybierz Zastosowanie i Materia\u0142<\/h3>\n\n    <label for=\"filterApplication\">Typ Zastosowania<\/label>\n    <select id=\"filterApplication\">\n      <option value=\"silo_filling\" selected>Nape\u0142nianie silosu cystern\u0105 pneumatyczn\u0105<\/option>\n      <option value=\"dust_collection\">Punkt odpylania<\/option>\n      <option value=\"mechanical_transfer\">Punkt transferu mechanicznego<\/option>\n    <\/select>\n\n    <label for=\"filterMaterial\">Materia\u0142 Sypki<\/label>\n    <select id=\"filterMaterial\">\n      <option value=\"\">Wybierz Materia\u0142<\/option>\n      <option value=\"cement\">Cement<\/option>\n      <option value=\"flyash\">Popi\u00f3\u0142 lotny<\/option>\n      <option value=\"lime\">Wapno<\/option>\n      <option value=\"gypsum\">Gips<\/option>\n      <option value=\"bentonite\">Bentonit<\/option>\n      <option value=\"calciumcarbonate\">W\u0119glan wapnia<\/option>\n      <option value=\"other\">Inny<\/option>\n    <\/select>\n\n    <label for=\"filterDensity\">G\u0119sto\u015b\u0107 Nasypowa <span>(t\/m\u00b3)<\/span><\/label>\n    <input type=\"text\" id=\"filterDensity\" placeholder=\"Najpierw wybierz materia\u0142\">\n\n    <label for=\"filterDustDifficulty\">Trudno\u015b\u0107 Py\u0142u \/ Filtracji<\/label>\n    <select id=\"filterDustDifficulty\">\n      <option value=\"normal\" selected>Normalny py\u0142<\/option>\n      <option value=\"high\">Wysokie zapylenie<\/option>\n      <option value=\"difficult\">Drobny lub trudny py\u0142<\/option>\n    <\/select>\n  <\/div>\n\n  <div class=\"equip-filter-card\">\n    <h3>Krok 3: Wprowad\u017a Warunki Projektowe<\/h3>\n\n    <div id=\"filterAirflowGroup\">\n      <label for=\"filterAirflow\">Przep\u0142yw Powietrza <span>(m\u00b3\/h)<\/span><\/label>\n      <input type=\"text\" id=\"filterAirflow\" placeholder=\"Example: 2000\">\n    <\/div>\n\n    <div id=\"filterFillingGroup\" class=\"equip-filter-hidden\">\n      <label for=\"filterFillingRate\">Wydajno\u015b\u0107 Nape\u0142niania Silosu <span>(t\/h)<\/span><\/label>\n      <input type=\"text\" id=\"filterFillingRate\" placeholder=\"Example: 80\">\n\n      <label for=\"filterAirFactor\">Szacowany Wsp\u00f3\u0142czynnik Powietrza Pneumatycznego<\/label>\n      <select id=\"filterAirFactor\">\n        <option value=\"25\">Niski przep\u0142yw powietrza \u00d725<\/option>\n        <option value=\"35\" selected>Normalne nape\u0142nianie cystern\u0105 \u00d735<\/option>\n        <option value=\"45\">Wysoki przep\u0142yw powietrza \u00d745<\/option>\n      <\/select>\n    <\/div>\n  <\/div>\n\n  <div class=\"equip-filter-actions\">\n    <button type=\"button\" id=\"filterCalculateBtn\">Oblicz Rozmiar Filtra<\/button>\n    <button type=\"button\" id=\"filterResetBtn\">Resetuj<\/button>\n  <\/div>\n\n  <div id=\"filterResults\" class=\"equip-filter-results\" style=\"display:none;\">\n    <h3>Wyniki Oblicze\u0144<\/h3>\n\n    <div class=\"equip-filter-result-grid\">\n      <div><span>Szacowany Przep\u0142yw Powietrza<\/span><strong id=\"filterResultAirflow\">-<\/strong><\/div>\n      <div><span>Wymagana Powierzchnia Filtracyjna<\/span><strong id=\"filterResultArea\">-<\/strong><\/div>\n      <div><span>Rekomendowany Filtr<\/span><strong id=\"filterResultModel\">-<\/strong><\/div>\n      <div><span>\u015arednica Korpusu<\/span><strong id=\"filterResultDiameter\">-<\/strong><\/div>\n      <div><span>Wybrana Powierzchnia Filtracyjna<\/span><strong id=\"filterResultSelectedArea\">-<\/strong><\/div>\n      <div><span>Liczba Wk\u0142ad\u00f3w<\/span><strong id=\"filterResultCartridges\">-<\/strong><\/div>\n      <div><span>Liczba Zawor\u00f3w<\/span><strong id=\"filterResultValves\">-<\/strong><\/div>\n      <div><span>Rekomendowana Moc Wentylatora<\/span><strong id=\"filterResultFanPower\">-<\/strong><\/div>\n      <div><span>Pr\u0119dko\u015b\u0107 Filtracji<\/span><strong id=\"filterResultVelocity\">-<\/strong><\/div>\n      <div><span>Tryb Oblicze\u0144<\/span><strong id=\"filterResultMode\">-<\/strong><\/div>\n    <\/div>\n\n    <div id=\"filterRecommendationNote\" class=\"equip-filter-recommendation\"><\/div>\n\n    <div class=\"equip-filter-note\">\n      <strong>Wa\u017cna Uwaga:<\/strong>\n      Ten kalkulator podaje wy\u0142\u0105cznie wst\u0119pne szacunki. Ostateczny dob\u00f3r filtra zale\u017cy od rzeczywistego przep\u0142ywu powietrza, zapylenia, w\u0142a\u015bciwo\u015bci materia\u0142u, wilgotno\u015bci, medium filtracyjnego, ci\u015bnienia statycznego, systemu czyszczenia i wymaga\u0144 projektu.    <\/div>\n\n    <a class=\"equip-filter-quote-btn\" href=\"https:\/\/www.equipsilo.com\/pl\/contact-us\/\">Popro\u015b o Szczeg\u00f3\u0142ow\u0105 Ofert\u0119<\/a>\n  <\/div>\n<\/div>\n\n<style>\n.equip-filter-wrap {\n  max-width: 980px;\n  margin: 0 auto;\n  padding: 30px 15px 70px;\n  font-family: inherit;\n  color: #212529;\n}\n.equip-filter-intro {\n  margin-bottom: 26px;\n}\n.equip-filter-intro h2 {\n  color: #06184a;\n  font-size: 34px;\n  font-weight: 800;\n  margin-bottom: 12px;\n}\n.equip-filter-intro p {\n  font-size: 17px;\n  line-height: 1.7;\n  max-width: 850px;\n}\n.equip-filter-model-card,\n.equip-filter-card {\n  background: #ffffff;\n  border: 1px solid #e1e5ea;\n  border-radius: 14px;\n  padding: 24px;\n  margin: 0 0 24px;\n  box-shadow: 0 8px 24px rgba(0,0,0,0.04);\n}\n.equip-filter-model-text {\n  margin-bottom: 16px;\n}\n.equip-filter-model-text h3,\n.equip-filter-card h3 {\n  color: #06184a;\n  font-size: 24px;\n  font-weight: 800;\n  margin: 0 0 12px;\n}\n.equip-filter-model-text p {\n  margin: 0;\n  color: #555555;\n  font-size: 15px;\n}\n#filterModel {\n  display: block;\n  width: 100%;\n  min-height: 430px;\n}\n.equip-filter-card h3 {\n  font-size: 22px;\n  padding-bottom: 12px;\n  border-bottom: 1px solid #e5e5e5;\n}\n.equip-filter-card label {\n  display: block;\n  font-weight: 700;\n  margin: 16px 0 7px;\n  color: #333333;\n}\n.equip-filter-card label span {\n  font-weight: 500;\n  color: #666666;\n}\n.equip-filter-card input,\n.equip-filter-card select {\n  width: 100%;\n  max-width: 460px;\n  height: 46px;\n  padding: 8px 12px;\n  border: 1px solid #d4dce3;\n  background: #f4f7f8;\n  border-radius: 4px;\n  font-size: 16px;\n  color: #222222;\n}\n.equip-filter-hidden {\n  display: none;\n}\n.equip-filter-actions {\n  display: flex;\n  gap: 12px;\n  margin: 24px 0;\n  flex-wrap: wrap;\n}\n.equip-filter-actions button,\n.equip-filter-quote-btn {\n  border: none;\n  border-radius: 6px;\n  padding: 13px 22px;\n  font-weight: 800;\n  cursor: pointer;\n  text-decoration: none;\n  display: inline-block;\n}\n#filterCalculateBtn {\n  background: #06184a;\n  color: #ffffff;\n}\n#filterResetBtn {\n  background: #e9eef2;\n  color: #06184a;\n}\n.equip-filter-results {\n  background: #f8fafc;\n  border: 1px solid #dce5ec;\n  border-radius: 12px;\n  padding: 26px;\n  margin-top: 20px;\n}\n.equip-filter-results h3 {\n  color: #06184a;\n  font-size: 24px;\n  font-weight: 800;\n  margin-bottom: 20px;\n}\n.equip-filter-result-grid {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: 14px;\n}\n.equip-filter-result-grid div {\n  background: #ffffff;\n  border: 1px solid #e1e5ea;\n  border-radius: 8px;\n  padding: 16px;\n}\n.equip-filter-result-grid span {\n  display: block;\n  font-size: 14px;\n  color: #666666;\n  margin-bottom: 7px;\n}\n.equip-filter-result-grid strong {\n  display: block;\n  font-size: 21px;\n  color: #06184a;\n}\n.equip-filter-note {\n  margin-top: 20px;\n  padding: 16px;\n  background: #fff7e6;\n  border-left: 4px solid #f0a000;\n  line-height: 1.7;\n}\n.equip-filter-recommendation {\n  margin-top: 20px;\n  padding: 16px;\n  background: #eef7ff;\n  border-left: 4px solid #06184a;\n  line-height: 1.7;\n}\n.equip-filter-quote-btn {\n  margin-top: 20px;\n  background: #d71920;\n  color: #ffffff !important;\n}\n@media (max-width: 768px) {\n  .equip-filter-intro h2 {\n    font-size: 26px;\n  }\n  .equip-filter-result-grid {\n    grid-template-columns: 1fr;\n  }\n  .equip-filter-card,\n  .equip-filter-model-card {\n    padding: 18px;\n  }\n  #filterModel {\n    min-height: 320px;\n  }\n}\n<\/style>\n\n<script>\n(function() {\n  const i18n = {\"title\":\"Kalkulator Filtra z Wentylatorem\",\"intro\":\"To narz\\u0119dzie podaje wst\\u0119pne oszacowanie przep\\u0142ywu powietrza, powierzchni filtracyjnej i mocy wentylatora dla filtr\\u00f3w silosowych z wentylatorem.\",\"preview_title\":\"Podgl\\u0105d 3D Filtra\",\"preview_text\":\"Obracaj, przybli\\u017caj i sprawdzaj model 3D interaktywnie. Ten model 3D jest tymczasowy i mo\\u017ce zosta\\u0107 p\\u00f3\\u017aniej zast\\u0105piony.\",\"step1\":\"Krok 1: Wybierz Tryb Oblicze\\u0144\",\"step2\":\"Krok 2: Wybierz Zastosowanie i Materia\\u0142\",\"step3\":\"Krok 3: Wprowad\\u017a Warunki Projektowe\",\"calculation_mode\":\"Tryb Oblicze\\u0144\",\"mode_airflow\":\"Sprawdzenie Przep\\u0142ywu Powietrza - znam przep\\u0142yw\",\"mode_filling\":\"Oszacowanie Nape\\u0142niania Silosu - znam wydajno\\u015b\\u0107 nape\\u0142niania\",\"application_type\":\"Typ Zastosowania\",\"silo_filling\":\"Nape\\u0142nianie silosu cystern\\u0105 pneumatyczn\\u0105\",\"dust_collection\":\"Punkt odpylania\",\"mechanical_transfer\":\"Punkt transferu mechanicznego\",\"bulk_material\":\"Materia\\u0142 Sypki\",\"select_material\":\"Wybierz Materia\\u0142\",\"cement\":\"Cement\",\"flyash\":\"Popi\\u00f3\\u0142 lotny\",\"lime\":\"Wapno\",\"gypsum\":\"Gips\",\"bentonite\":\"Bentonit\",\"calciumcarbonate\":\"W\\u0119glan wapnia\",\"other\":\"Inny\",\"density\":\"G\\u0119sto\\u015b\\u0107 Nasypowa\",\"select_material_first\":\"Najpierw wybierz materia\\u0142\",\"enter_density\":\"Wprowad\\u017a g\\u0119sto\\u015b\\u0107 r\\u0119cznie\",\"airflow\":\"Przep\\u0142yw Powietrza\",\"filling_rate\":\"Wydajno\\u015b\\u0107 Nape\\u0142niania Silosu\",\"air_factor\":\"Szacowany Wsp\\u00f3\\u0142czynnik Powietrza Pneumatycznego\",\"air_low\":\"Niski przep\\u0142yw powietrza\",\"air_normal\":\"Normalne nape\\u0142nianie cystern\\u0105\",\"air_high\":\"Wysoki przep\\u0142yw powietrza\",\"dust_difficulty\":\"Trudno\\u015b\\u0107 Py\\u0142u \\\/ Filtracji\",\"dust_normal\":\"Normalny py\\u0142\",\"dust_high\":\"Wysokie zapylenie\",\"dust_difficult\":\"Drobny lub trudny py\\u0142\",\"calculate\":\"Oblicz Rozmiar Filtra\",\"reset\":\"Resetuj\",\"results\":\"Wyniki Oblicze\\u0144\",\"estimated_airflow\":\"Szacowany Przep\\u0142yw Powietrza\",\"required_area\":\"Wymagana Powierzchnia Filtracyjna\",\"recommended_filter\":\"Rekomendowany Filtr\",\"body_diameter\":\"\\u015arednica Korpusu\",\"filter_area\":\"Wybrana Powierzchnia Filtracyjna\",\"cartridges\":\"Liczba Wk\\u0142ad\\u00f3w\",\"valves\":\"Liczba Zawor\\u00f3w\",\"fan_power\":\"Rekomendowana Moc Wentylatora\",\"filtration_velocity\":\"Pr\\u0119dko\\u015b\\u0107 Filtracji\",\"mode_result\":\"Tryb Oblicze\\u0144\",\"important_note_title\":\"Wa\\u017cna Uwaga:\",\"important_note\":\"Ten kalkulator podaje wy\\u0142\\u0105cznie wst\\u0119pne szacunki. Ostateczny dob\\u00f3r filtra zale\\u017cy od rzeczywistego przep\\u0142ywu powietrza, zapylenia, w\\u0142a\\u015bciwo\\u015bci materia\\u0142u, wilgotno\\u015bci, medium filtracyjnego, ci\\u015bnienia statycznego, systemu czyszczenia i wymaga\\u0144 projektu.\",\"quote\":\"Popro\\u015b o Szczeg\\u00f3\\u0142ow\\u0105 Ofert\\u0119\",\"alert_required\":\"Wype\\u0142nij wszystkie wymagane pola.\",\"alert_airflow\":\"Wprowad\\u017a prawid\\u0142owy przep\\u0142yw powietrza.\",\"alert_filling\":\"Wprowad\\u017a prawid\\u0142ow\\u0105 wydajno\\u015b\\u0107 nape\\u0142niania.\",\"alert_density\":\"Wprowad\\u017a prawid\\u0142ow\\u0105 g\\u0119sto\\u015b\\u0107 nasypow\\u0105.\",\"recommendation_title\":\"Uwaga Rekomendacyjna:\",\"recommendation_ok\":\"Kalkulator wybra\\u0142 najbli\\u017cszy standardowy wst\\u0119pny rozmiar filtra powy\\u017cej wymaganej powierzchni filtracyjnej.\",\"recommendation_project\":\"Wymagana powierzchnia filtracyjna przekracza standardowy zakres. Skontaktuj si\\u0119 z eQUIP w celu doboru projektowego.\",\"project_specific\":\"Dob\\u00f3r projektowy\",\"not_available\":\"N\\\/D\"};\n\n  const materials = {\n    cement: { density: 1.30, velocity: 1.20 },\n    flyash: { density: 0.80, velocity: 1.00 },\n    lime: { density: 0.90, velocity: 0.90 },\n    gypsum: { density: 1.10, velocity: 1.10 },\n    bentonite: { density: 0.80, velocity: 0.80 },\n    calciumcarbonate: { density: 1.20, velocity: 1.00 },\n    other: { density: \"\", velocity: 1.00 }\n  };\n\n  const dustFactors = {\n    normal: 1.00,\n    high: 0.85,\n    difficult: 0.70\n  };\n\n  const filterModels = [\n    { model: \"EQPFILL 06\", area: 6, diameter: \"\u00d8400 mm\", cartridges: 1, valves: 1 },\n    { model: \"EQPFILL 09\", area: 9, diameter: \"\u00d8400 mm\", cartridges: 1, valves: 1 },\n    { model: \"EQPFILL 12\", area: 12, diameter: \"\u00d8600 mm\", cartridges: 2, valves: 2 },\n    { model: \"EQPFILL 18\", area: 18, diameter: \"\u00d8600 mm\", cartridges: 2, valves: 2 },\n    { model: \"EQPFILL 25\", area: 25, diameter: \"\u00d8800 mm\", cartridges: 4, valves: 4 },\n    { model: \"EQPFILL 36\", area: 36, diameter: \"\u00d8800 mm\", cartridges: 4, valves: 4 }\n  ];\n\n  function parseNumber(value) {\n    if (value === null || value === undefined) return NaN;\n    return parseFloat(String(value).trim().replace(\/\\s\/g, \"\").replace(\",\", \".\"));\n  }\n\n  function formatNumber(value, decimals) {\n    return Number(value).toLocaleString(\"en-US\", {\n      minimumFractionDigits: decimals,\n      maximumFractionDigits: decimals\n    });\n  }\n\n  function recommendFilter(requiredArea) {\n    for (let i = 0; i < filterModels.length; i++) {\n      if (requiredArea <= filterModels[i].area) {\n        return filterModels[i];\n      }\n    }\n\n    return {\n      model: i18n.project_specific,\n      area: \"-\",\n      diameter: \"-\",\n      cartridges: \"-\",\n      valves: \"-\",\n      projectSpecific: true\n    };\n  }\n\n  function recommendFanPower(airflow) {\n    if (airflow <= 1500) return \"0.75 kW\";\n    if (airflow <= 3000) return \"1.5 kW\";\n    if (airflow <= 4500) return \"2.2 kW\";\n    return i18n.project_specific;\n  }\n\n  function updateModeFields(mode) {\n    const airflowGroup = document.getElementById(\"filterAirflowGroup\");\n    const fillingGroup = document.getElementById(\"filterFillingGroup\");\n\n    if (mode === \"filling\") {\n      airflowGroup.classList.add(\"equip-filter-hidden\");\n      fillingGroup.classList.remove(\"equip-filter-hidden\");\n    } else {\n      airflowGroup.classList.remove(\"equip-filter-hidden\");\n      fillingGroup.classList.add(\"equip-filter-hidden\");\n    }\n\n    document.getElementById(\"filterResults\").style.display = \"none\";\n  }\n\n  function showResults(data) {\n    document.getElementById(\"filterResultAirflow\").textContent = formatNumber(data.airflow, 0) + \" m\u00b3\/h\";\n    document.getElementById(\"filterResultArea\").textContent = formatNumber(data.requiredArea, 2) + \" m\u00b2\";\n    document.getElementById(\"filterResultModel\").textContent = data.filter.model;\n    document.getElementById(\"filterResultDiameter\").textContent = data.filter.diameter;\n    document.getElementById(\"filterResultSelectedArea\").textContent = data.filter.projectSpecific ? i18n.project_specific : data.filter.area + \" m\u00b2\";\n    document.getElementById(\"filterResultCartridges\").textContent = data.filter.cartridges;\n    document.getElementById(\"filterResultValves\").textContent = data.filter.valves;\n    document.getElementById(\"filterResultFanPower\").textContent = data.fanPower;\n    document.getElementById(\"filterResultVelocity\").textContent = formatNumber(data.velocity, 2) + \" m\/min\";\n    document.getElementById(\"filterResultMode\").textContent = data.modeText;\n\n    const note = document.getElementById(\"filterRecommendationNote\");\n\n    if (data.filter.projectSpecific) {\n      note.innerHTML = \"<strong>\" + i18n.recommendation_title + \"<\/strong> \" + i18n.recommendation_project;\n    } else {\n      note.innerHTML = \"<strong>\" + i18n.recommendation_title + \"<\/strong> \" + i18n.recommendation_ok;\n    }\n\n    document.getElementById(\"filterResults\").style.display = \"block\";\n  }\n\n  const modeSelect = document.getElementById(\"filterCalculationMode\");\n  const materialSelect = document.getElementById(\"filterMaterial\");\n  const densityInput = document.getElementById(\"filterDensity\");\n  const dustSelect = document.getElementById(\"filterDustDifficulty\");\n  const calculateBtn = document.getElementById(\"filterCalculateBtn\");\n  const resetBtn = document.getElementById(\"filterResetBtn\");\n\n  updateModeFields(modeSelect.value);\n\n  modeSelect.addEventListener(\"change\", function() {\n    updateModeFields(this.value);\n  });\n\n  materialSelect.addEventListener(\"change\", function() {\n    const selected = materials[this.value];\n\n    if (!selected) {\n      densityInput.value = \"\";\n      densityInput.placeholder = i18n.select_material_first;\n      densityInput.removeAttribute(\"readonly\");\n      return;\n    }\n\n    if (this.value === \"other\") {\n      densityInput.value = \"\";\n      densityInput.placeholder = i18n.enter_density;\n      densityInput.removeAttribute(\"readonly\");\n    } else {\n      densityInput.value = selected.density.toFixed(2);\n      densityInput.setAttribute(\"readonly\", \"readonly\");\n    }\n\n    document.getElementById(\"filterResults\").style.display = \"none\";\n  });\n\n  calculateBtn.addEventListener(\"click\", function() {\n    const mode = modeSelect.value;\n    const materialKey = materialSelect.value;\n    const material = materials[materialKey];\n    const density = parseNumber(densityInput.value);\n    const dustFactor = dustFactors[dustSelect.value] || 1.00;\n\n    if (!materialKey || !material || !density) {\n      alert(i18n.alert_required);\n      return;\n    }\n\n    let airflow = 0;\n    let modeText = \"\";\n\n    if (mode === \"airflow\") {\n      airflow = parseNumber(document.getElementById(\"filterAirflow\").value);\n      modeText = i18n.mode_airflow;\n\n      if (!airflow || airflow <= 0) {\n        alert(i18n.alert_airflow);\n        return;\n      }\n    } else {\n      const fillingRate = parseNumber(document.getElementById(\"filterFillingRate\").value);\n      const airFactor = parseNumber(document.getElementById(\"filterAirFactor\").value);\n      modeText = i18n.mode_filling;\n\n      if (!fillingRate || fillingRate <= 0) {\n        alert(i18n.alert_filling);\n        return;\n      }\n\n      if (!density || density <= 0) {\n        alert(i18n.alert_density);\n        return;\n      }\n\n      const materialVolumeFlow = fillingRate \/ density;\n      airflow = materialVolumeFlow * airFactor;\n    }\n\n    const filtrationVelocity = material.velocity * dustFactor;\n    const requiredArea = airflow \/ (60 * filtrationVelocity);\n    const filter = recommendFilter(requiredArea);\n    const fanPower = recommendFanPower(airflow);\n\n    showResults({\n      airflow: airflow,\n      requiredArea: requiredArea,\n      velocity: filtrationVelocity,\n      filter: filter,\n      fanPower: fanPower,\n      modeText: modeText\n    });\n  });\n\n  resetBtn.addEventListener(\"click\", function() {\n    modeSelect.value = \"airflow\";\n    updateModeFields(\"airflow\");\n\n    document.getElementById(\"filterApplication\").value = \"silo_filling\";\n    materialSelect.value = \"\";\n    densityInput.value = \"\";\n    densityInput.placeholder = i18n.select_material_first;\n    densityInput.removeAttribute(\"readonly\");\n\n    dustSelect.value = \"normal\";\n    document.getElementById(\"filterAirflow\").value = \"\";\n    document.getElementById(\"filterFillingRate\").value = \"\";\n    document.getElementById(\"filterAirFactor\").value = \"35\";\n\n    document.getElementById(\"filterResults\").style.display = \"none\";\n  });\n})();\n<\/script>\n\n        ","protected":false},"excerpt":{"rendered":"","protected":false},"author":2,"featured_media":0,"parent":3513,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-3495","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>eQUIP | High-Quality Silo Equipment &amp; Storage Solutions<\/title>\n<meta name=\"description\" content=\"Equipsilo provides durable and reliable silo equipment, industrial storage solutions, and components for global agricultural and industrial needs. Explore our expert manufacturing today.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"eQUIP | High-Quality Silo Equipment &amp; Storage Solutions\" \/>\n<meta property=\"og:description\" content=\"Equipsilo provides durable and reliable silo equipment, industrial storage solutions, and components for global agricultural and industrial needs. Explore our expert manufacturing today.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/\" \/>\n<meta property=\"og:site_name\" content=\"Equip Silo\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-13T17:32:42+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/\",\"url\":\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/\",\"name\":\"eQUIP | High-Quality Silo Equipment & Storage Solutions\",\"isPartOf\":{\"@id\":\"https:\/\/www.equipsilo.com\/pl\/#website\"},\"datePublished\":\"2026-05-13T17:26:44+00:00\",\"dateModified\":\"2026-05-13T17:32:42+00:00\",\"description\":\"Equipsilo provides durable and reliable silo equipment, industrial storage solutions, and components for global agricultural and industrial needs. Explore our expert manufacturing today.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.equipsilo.com\/pl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Kalkulator filtr\u00f3w\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.equipsilo.com\/pl\/#website\",\"url\":\"https:\/\/www.equipsilo.com\/pl\/\",\"name\":\"Equip Silo\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.equipsilo.com\/pl\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.equipsilo.com\/pl\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.equipsilo.com\/pl\/#organization\",\"name\":\"Equip Silo\",\"url\":\"https:\/\/www.equipsilo.com\/pl\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\/\/www.equipsilo.com\/pl\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.equipsilo.com\/wp-content\/uploads\/2026\/02\/eQUIP.png\",\"contentUrl\":\"https:\/\/www.equipsilo.com\/wp-content\/uploads\/2026\/02\/eQUIP.png\",\"width\":1200,\"height\":630,\"caption\":\"Equip Silo\"},\"image\":{\"@id\":\"https:\/\/www.equipsilo.com\/pl\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"eQUIP | High-Quality Silo Equipment & Storage Solutions","description":"Equipsilo provides durable and reliable silo equipment, industrial storage solutions, and components for global agricultural and industrial needs. Explore our expert manufacturing today.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/","og_locale":"pl_PL","og_type":"article","og_title":"eQUIP | High-Quality Silo Equipment & Storage Solutions","og_description":"Equipsilo provides durable and reliable silo equipment, industrial storage solutions, and components for global agricultural and industrial needs. Explore our expert manufacturing today.","og_url":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/","og_site_name":"Equip Silo","article_modified_time":"2026-05-13T17:32:42+00:00","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/","url":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/","name":"eQUIP | High-Quality Silo Equipment & Storage Solutions","isPartOf":{"@id":"https:\/\/www.equipsilo.com\/pl\/#website"},"datePublished":"2026-05-13T17:26:44+00:00","dateModified":"2026-05-13T17:32:42+00:00","description":"Equipsilo provides durable and reliable silo equipment, industrial storage solutions, and components for global agricultural and industrial needs. Explore our expert manufacturing today.","breadcrumb":{"@id":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.equipsilo.com\/pl\/kalkulator\/kalkulator-filtrow\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.equipsilo.com\/pl\/"},{"@type":"ListItem","position":2,"name":"Kalkulator filtr\u00f3w"}]},{"@type":"WebSite","@id":"https:\/\/www.equipsilo.com\/pl\/#website","url":"https:\/\/www.equipsilo.com\/pl\/","name":"Equip Silo","description":"","publisher":{"@id":"https:\/\/www.equipsilo.com\/pl\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.equipsilo.com\/pl\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.equipsilo.com\/pl\/#organization","name":"Equip Silo","url":"https:\/\/www.equipsilo.com\/pl\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.equipsilo.com\/pl\/#\/schema\/logo\/image\/","url":"https:\/\/www.equipsilo.com\/wp-content\/uploads\/2026\/02\/eQUIP.png","contentUrl":"https:\/\/www.equipsilo.com\/wp-content\/uploads\/2026\/02\/eQUIP.png","width":1200,"height":630,"caption":"Equip Silo"},"image":{"@id":"https:\/\/www.equipsilo.com\/pl\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/pages\/3495","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/comments?post=3495"}],"version-history":[{"count":2,"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/pages\/3495\/revisions"}],"predecessor-version":[{"id":3503,"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/pages\/3495\/revisions\/3503"}],"up":[{"embeddable":true,"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/pages\/3513"}],"wp:attachment":[{"href":"https:\/\/www.equipsilo.com\/pl\/wp-json\/wp\/v2\/media?parent=3495"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}