<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archiwa instalacja - Projekt Ogrzewania</title>
	<atom:link href="https://projekt-ogrzewania.pl/tag/instalacja/feed/" rel="self" type="application/rss+xml" />
	<link>https://projekt-ogrzewania.pl/tag/instalacja/</link>
	<description>Twój partner w projektowaniu komfortu – profesjonalne ogrzewanie podłogowe dla Twojego domu.</description>
	<lastBuildDate>Mon, 24 Aug 2026 17:49:26 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.3</generator>

<image>
	<url>https://projekt-ogrzewania.pl/wp-content/uploads/2024/09/cropped-Projekt-ogrzewania-logo-1-32x32.jpg</url>
	<title>Archiwa instalacja - Projekt Ogrzewania</title>
	<link>https://projekt-ogrzewania.pl/tag/instalacja/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Sterownik (regulator) pogodowy.</title>
		<link>https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/</link>
					<comments>https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#comments</comments>
		
		<dc:creator><![CDATA[Robert Kucharski]]></dc:creator>
		<pubDate>Thu, 08 Jan 2026 11:24:19 +0000</pubDate>
				<category><![CDATA[Automatyka domowa]]></category>
		<category><![CDATA[Automatyka grzewcza]]></category>
		<category><![CDATA[Instalacje grzewcze]]></category>
		<category><![CDATA[Instalacje hydrauliczne]]></category>
		<category><![CDATA[Ogrzewanie podłogowe]]></category>
		<category><![CDATA[Pompa ciepła]]></category>
		<category><![CDATA[Poradniki instalacyjne]]></category>
		<category><![CDATA[Poradniki techniczne]]></category>
		<category><![CDATA[Projektowanie instalacji]]></category>
		<category><![CDATA[Projektowanie instalacji grzewczych]]></category>
		<category><![CDATA[Projektowanie systemów grzewczych]]></category>
		<category><![CDATA[Technologia grzewcza]]></category>
		<category><![CDATA[automatyka grzewcza]]></category>
		<category><![CDATA[instalacja]]></category>
		<category><![CDATA[komfort cieplny]]></category>
		<category><![CDATA[krzywa grzewcza]]></category>
		<category><![CDATA[ogrzewanie podłogowe]]></category>
		<category><![CDATA[oszczędność energii]]></category>
		<category><![CDATA[pompa ciepła]]></category>
		<category><![CDATA[projekt ogrzewania]]></category>
		<category><![CDATA[regulator pogodowy]]></category>
		<category><![CDATA[sterownik pogodowy]]></category>
		<guid isPermaLink="false">https://projekt-ogrzewania.pl/?p=3102</guid>

					<description><![CDATA[<p>Nowoczesne ogrzewanie to dziś nie tylko źródło ciepła, ale przede wszystkim inteligentne sterowanie energią. Sterownik (regulator) pogodowy odgrywa kluczową rolę w osiągnięciu stabilnego komfortu cieplnego i realnych oszczędności eksploatacyjnych, szczególnie w instalacjach wodnego ogrzewania podłogowego. W artykule pokazujemy, jak działa regulacja pogodowa, czym jest krzywa grzewcza, dlaczego sama automatyka bez właściwej konfiguracji nie wystarczy oraz jak projektować instalację z myślą o maksymalnej efektywności. To praktyczny przewodnik dla inwestorów i instalatorów, którzy chcą, aby system grzewczy pracował mądrze, a nie „na oko”.</p>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/">Sterownik (regulator) pogodowy.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<style>
  #rk-weather-guide {
    --rk-dark: #102536;
    --rk-navy: #14384d;
    --rk-blue: #078fbe;
    --rk-cyan: #28c9da;
    --rk-cyan-soft: #eafcff;
    --rk-orange: #ff6238;
    --rk-red: #d83c2f;
    --rk-green: #178265;
    --rk-green-soft: #ebf8f3;
    --rk-yellow: #f2b441;
    --rk-ink: #1d2c3a;
    --rk-text: #465a6b;
    --rk-muted: #687b89;
    --rk-line: #d9e7ed;
    --rk-soft: #f5f9fb;
    --rk-warm: #fff4ef;
    --rk-white: #ffffff;
    width: 100%;
    max-width: 1480px;
    margin: 32px auto 70px;
    color: var(--rk-ink);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 18px;
    line-height: 1.78;
  }

  #rk-weather-guide,
  #rk-weather-guide * {
    box-sizing: border-box;
  }

  #rk-weather-guide img,
  #rk-weather-guide svg {
    max-width: 100%;
  }

  #rk-weather-guide button,
  #rk-weather-guide input,
  #rk-weather-guide a,
  #rk-weather-guide summary {
    -webkit-tap-highlight-color: transparent;
  }

  #rk-weather-guide a {
    color: var(--rk-blue);
    font-weight: 780;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }

  #rk-weather-guide a:hover {
    color: var(--rk-red);
  }

  #rk-weather-guide h2,
  #rk-weather-guide h3,
  #rk-weather-guide h4 {
    margin-top: 0;
    color: var(--rk-dark);
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.16;
  }

  #rk-weather-guide h2 {
    margin-bottom: 18px;
    font-size: clamp(1.65rem, 3.6vw, 2.65rem);
  }

  #rk-weather-guide h3 {
    margin-bottom: 12px;
    font-size: clamp(1.18rem, 2.5vw, 1.58rem);
  }

  #rk-weather-guide h4 {
    margin-bottom: 8px;
    font-size: 1.02rem;
    letter-spacing: -0.015em;
  }

  #rk-weather-guide h2::before,
  #rk-weather-guide h2::after,
  #rk-weather-guide h3::before,
  #rk-weather-guide h3::after,
  #rk-weather-guide h4::before,
  #rk-weather-guide h4::after {
    content: none !important;
    display: none !important;
  }

  #rk-weather-guide p {
    margin: 0 0 1.22em;
    color: var(--rk-text);
  }

  #rk-weather-guide strong {
    color: var(--rk-dark);
  }

  #rk-weather-guide section[id] {
    scroll-margin-top: 28px;
  }

  #rk-weather-guide .rk-weather-shell {
    overflow: hidden;
    border: 1px solid var(--rk-line);
    border-radius: 30px;
    background: var(--rk-white);
    box-shadow: 0 25px 70px rgba(16, 37, 54, 0.12);
  }

  #rk-weather-guide .rk-weather-progress-track {
    position: sticky;
    z-index: 40;
    top: 0;
    width: 100%;
    height: 5px;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.88);
  }

  #rk-weather-guide .rk-weather-progress {
    width: 0;
    height: 100%;
    background: linear-gradient(90deg, var(--rk-cyan), var(--rk-blue), var(--rk-orange));
  }

  #rk-weather-guide .rk-weather-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(38px, 6.5vw, 78px);
    color: var(--rk-white);
    background:
      radial-gradient(circle at 88% 13%, rgba(255, 98, 56, 0.31), transparent 28%),
      radial-gradient(circle at 78% 78%, rgba(40, 201, 218, 0.22), transparent 33%),
      linear-gradient(135deg, #0d2230 0%, #143b50 58%, #09647e 100%);
  }

  #rk-weather-guide .rk-weather-hero::before,
  #rk-weather-guide .rk-weather-hero::after {
    content: "";
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
  }

  #rk-weather-guide .rk-weather-hero::before {
    right: -120px;
    bottom: -175px;
    width: 400px;
    height: 400px;
    border: 58px solid rgba(255, 255, 255, 0.055);
  }

  #rk-weather-guide .rk-weather-hero::after {
    right: 145px;
    bottom: -125px;
    width: 235px;
    height: 235px;
    border: 34px solid rgba(255, 98, 56, 0.12);
  }

  #rk-weather-guide .rk-weather-badge {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    margin: 0 0 24px;
    padding: 8px 15px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: var(--rk-white);
    background: rgba(255, 255, 255, 0.08);
    font-size: 0.73rem;
    font-weight: 900;
    letter-spacing: 0.1em;
    line-height: 1.35;
    text-transform: uppercase;
  }

  #rk-weather-guide .rk-weather-badge::before {
    content: "";
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 50%;
    background: var(--rk-orange);
    box-shadow: 0 0 0 6px rgba(255, 98, 56, 0.18);
  }

  #rk-weather-guide .rk-weather-hero h2 {
    max-width: 1040px;
    margin-bottom: 24px;
    color: var(--rk-white);
    font-size: clamp(2rem, 5.05vw, 3.85rem);
    letter-spacing: -0.055em;
  }

  #rk-weather-guide .rk-weather-hero h2 span {
    color: #83edf5;
  }

  #rk-weather-guide .rk-weather-hook {
    max-width: 930px;
    margin: 0 0 21px;
    padding: 19px 21px;
    border-left: 5px solid var(--rk-orange);
    border-radius: 0 15px 15px 0;
    background: rgba(255, 255, 255, 0.09);
  }

  #rk-weather-guide .rk-weather-hook p,
  #rk-weather-guide .rk-weather-hook strong,
  #rk-weather-guide .rk-weather-hero-lead {
    color: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-hook p {
    margin: 0;
    font-size: clamp(1rem, 2vw, 1.16rem);
    line-height: 1.67;
  }

  #rk-weather-guide .rk-weather-hero-lead {
    max-width: 930px;
    font-size: 1.03rem;
  }

  #rk-weather-guide .rk-weather-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 24px;
    color: #cde0e7;
    font-size: 0.72rem;
    font-weight: 770;
  }

  #rk-weather-guide .rk-weather-hero-meta span::before {
    content: "•";
    margin-right: 8px;
    color: var(--rk-orange);
  }

  #rk-weather-guide .rk-weather-author-strip {
    display: flex;
    gap: 13px;
    align-items: center;
    margin-top: 26px;
  }

  #rk-weather-guide .rk-weather-author-strip img {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border: 3px solid rgba(255, 255, 255, 0.85);
    border-radius: 50%;
    object-fit: cover;
  }

  #rk-weather-guide .rk-weather-author-strip b,
  #rk-weather-guide .rk-weather-author-strip small {
    display: block;
  }

  #rk-weather-guide .rk-weather-author-strip b {
    color: var(--rk-white);
    font-size: 0.88rem;
  }

  #rk-weather-guide .rk-weather-author-strip small {
    color: #cde0e7;
    font-size: 0.7rem;
    line-height: 1.45;
  }

  #rk-weather-guide .rk-weather-content {
    padding: clamp(30px, 5.7vw, 72px);
  }

  #rk-weather-guide .rk-weather-learn {
    margin-bottom: 36px;
  }

  #rk-weather-guide .rk-weather-learn > strong {
    display: block;
    margin-bottom: 16px;
    font-size: 1.12rem;
  }

  #rk-weather-guide .rk-weather-learn-grid,
  #rk-weather-guide .rk-weather-card-grid,
  #rk-weather-guide .rk-weather-error-grid,
  #rk-weather-guide .rk-weather-check-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }

  #rk-weather-guide .rk-weather-learn-card,
  #rk-weather-guide .rk-weather-card,
  #rk-weather-guide .rk-weather-error,
  #rk-weather-guide .rk-weather-check {
    min-width: 0;
    padding: 21px;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    background: var(--rk-soft);
  }

  #rk-weather-guide .rk-weather-learn-card {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
  }

  #rk-weather-guide .rk-weather-no,
  #rk-weather-guide .rk-weather-card-icon,
  #rk-weather-guide .rk-weather-error-no,
  #rk-weather-guide .rk-weather-check-no {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 14px;
    color: var(--rk-white);
    background: var(--rk-dark);
    font-size: 0.72rem;
    font-weight: 900;
  }

  #rk-weather-guide .rk-weather-learn-card h4,
  #rk-weather-guide .rk-weather-learn-card p,
  #rk-weather-guide .rk-weather-card h4,
  #rk-weather-guide .rk-weather-card p,
  #rk-weather-guide .rk-weather-error h4,
  #rk-weather-guide .rk-weather-error p,
  #rk-weather-guide .rk-weather-check h4,
  #rk-weather-guide .rk-weather-check p {
    margin: 0;
  }

  #rk-weather-guide .rk-weather-learn-card p,
  #rk-weather-guide .rk-weather-card p,
  #rk-weather-guide .rk-weather-error p,
  #rk-weather-guide .rk-weather-check p {
    margin-top: 6px;
    font-size: 0.84rem;
    line-height: 1.58;
  }

  #rk-weather-guide .rk-weather-nav {
    margin-bottom: 46px;
    padding: 22px;
    border: 1px solid #cce4ec;
    border-radius: 19px;
    background: var(--rk-cyan-soft);
  }

  #rk-weather-guide .rk-weather-nav > strong {
    display: block;
    margin-bottom: 12px;
  }

  #rk-weather-guide .rk-weather-nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }

  #rk-weather-guide .rk-weather-nav a {
    padding: 7px 11px;
    border: 1px solid #bfdbe5;
    border-radius: 999px;
    color: var(--rk-dark);
    background: var(--rk-white);
    font-size: 0.72rem;
    text-decoration: none;
  }

  #rk-weather-guide .rk-weather-nav a:hover {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  #rk-weather-guide .rk-weather-section {
    margin-top: 64px;
  }

  #rk-weather-guide .rk-weather-section-head {
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 17px;
    align-items: start;
    margin-bottom: 25px;
  }

  #rk-weather-guide .rk-weather-section-head h2,
  #rk-weather-guide .rk-weather-section-head p {
    margin: 0;
  }

  #rk-weather-guide .rk-weather-section-head p {
    margin-top: 8px;
    font-size: 0.88rem;
  }

  #rk-weather-guide .rk-weather-section-no {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 16px;
    color: var(--rk-white);
    background: linear-gradient(145deg, var(--rk-orange), var(--rk-red));
    font-size: 0.78rem;
    font-weight: 900;
    box-shadow: 0 11px 23px rgba(216, 60, 47, 0.2);
  }

  #rk-weather-guide .rk-weather-answer,
  #rk-weather-guide .rk-weather-truth,
  #rk-weather-guide .rk-weather-warning,
  #rk-weather-guide .rk-weather-note,
  #rk-weather-guide .rk-weather-formula {
    margin: 24px 0;
    padding: 24px;
    border-radius: 20px;
  }

  #rk-weather-guide .rk-weather-answer {
    border: 1px solid #bde3eb;
    border-left: 6px solid var(--rk-cyan);
    background: var(--rk-cyan-soft);
  }

  #rk-weather-guide .rk-weather-truth {
    border: 1px solid #f2c5b6;
    border-left: 6px solid var(--rk-orange);
    background: var(--rk-warm);
  }

  #rk-weather-guide .rk-weather-warning {
    border: 1px solid #f0cfd0;
    border-left: 6px solid var(--rk-red);
    background: #fff5f5;
  }

  #rk-weather-guide .rk-weather-note {
    border: 1px solid #cbe6da;
    border-left: 6px solid var(--rk-green);
    background: var(--rk-green-soft);
  }

  #rk-weather-guide .rk-weather-answer p,
  #rk-weather-guide .rk-weather-truth p,
  #rk-weather-guide .rk-weather-warning p,
  #rk-weather-guide .rk-weather-note p,
  #rk-weather-guide .rk-weather-formula p {
    margin: 0;
  }

  #rk-weather-guide .rk-weather-card-grid.three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  #rk-weather-guide .rk-weather-card-grid.four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  #rk-weather-guide .rk-weather-card {
    background: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-card-icon {
    margin-bottom: 15px;
    background: linear-gradient(145deg, var(--rk-blue), var(--rk-cyan));
  }

  #rk-weather-guide .rk-weather-list {
    margin: 18px 0 24px;
    padding: 0;
    list-style: none;
  }

  #rk-weather-guide .rk-weather-list li {
    position: relative;
    margin: 9px 0;
    padding-left: 31px;
    color: var(--rk-text);
  }

  #rk-weather-guide .rk-weather-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 0.08em;
    display: grid;
    width: 20px;
    height: 20px;
    place-items: center;
    border-radius: 50%;
    color: var(--rk-white);
    background: var(--rk-green);
    font-size: 0.66rem;
    font-weight: 900;
  }

  #rk-weather-guide .rk-weather-table-wrap {
    margin: 24px 0;
  }

  #rk-weather-guide .rk-weather-table {
    width: 100%;
    border-spacing: 0;
    border-collapse: separate;
    table-layout: fixed;
    border: 1px solid var(--rk-line);
    border-radius: 19px;
    overflow: hidden;
    background: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-table th,
  #rk-weather-guide .rk-weather-table td {
    overflow-wrap: anywhere;
    padding: 15px 16px;
    border-right: 1px solid var(--rk-line);
    border-bottom: 1px solid var(--rk-line);
    text-align: left;
    vertical-align: top;
  }

  #rk-weather-guide .rk-weather-table th:last-child,
  #rk-weather-guide .rk-weather-table td:last-child {
    border-right: 0;
  }

  #rk-weather-guide .rk-weather-table tr:last-child td {
    border-bottom: 0;
  }

  #rk-weather-guide .rk-weather-table th {
    color: var(--rk-white);
    background: var(--rk-dark);
    font-size: 0.76rem;
    line-height: 1.4;
  }

  #rk-weather-guide .rk-weather-table td {
    color: var(--rk-text);
    font-size: 0.8rem;
    line-height: 1.55;
  }

  #rk-weather-guide .rk-weather-table tbody tr:nth-child(even) td {
    background: var(--rk-soft);
  }

  #rk-weather-guide .rk-weather-flow {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 9px;
    margin: 25px 0 18px;
  }

  #rk-weather-guide .rk-weather-flow-step {
    min-width: 0;
    padding: 16px 12px;
    border: 1px solid var(--rk-line);
    border-radius: 16px;
    color: var(--rk-dark);
    background: var(--rk-white);
    font: inherit;
    font-size: 0.74rem;
    font-weight: 850;
    line-height: 1.4;
    cursor: pointer;
  }

  #rk-weather-guide .rk-weather-flow-step:hover,
  #rk-weather-guide .rk-weather-flow-step.is-active {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  #rk-weather-guide .rk-weather-flow-detail {
    min-height: 150px;
    padding: 23px;
    border: 1px solid #cde5ec;
    border-radius: 19px;
    background: var(--rk-cyan-soft);
  }

  #rk-weather-guide .rk-weather-flow-detail h3,
  #rk-weather-guide .rk-weather-flow-detail p {
    margin: 0;
  }

  #rk-weather-guide .rk-weather-flow-detail p {
    margin-top: 9px;
  }

  #rk-weather-guide .rk-weather-formula {
    border: 1px solid #c6dce5;
    background: var(--rk-dark);
  }

  #rk-weather-guide .rk-weather-formula strong,
  #rk-weather-guide .rk-weather-formula p,
  #rk-weather-guide .rk-weather-formula code {
    color: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-formula code {
    display: block;
    margin: 13px 0;
    padding: 15px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.07);
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.82rem;
    line-height: 1.65;
    white-space: normal;
  }

  #rk-weather-guide .rk-weather-architectures {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 15px;
    margin: 25px 0;
  }

  #rk-weather-guide .rk-weather-architecture {
    min-width: 0;
    padding: 22px;
    border: 1px solid var(--rk-line);
    border-radius: 20px;
    background: var(--rk-soft);
  }

  #rk-weather-guide .rk-weather-architecture > span {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 6px 10px;
    border-radius: 999px;
    color: var(--rk-white);
    background: var(--rk-orange);
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
  }

  #rk-weather-guide .rk-weather-nodes {
    display: grid;
    gap: 8px;
    margin: 17px 0;
  }

  #rk-weather-guide .rk-weather-node {
    position: relative;
    padding: 12px;
    border: 1px solid #cbdde5;
    border-radius: 12px;
    color: var(--rk-dark);
    background: var(--rk-white);
    font-size: 0.76rem;
    font-weight: 820;
    text-align: center;
  }

  #rk-weather-guide .rk-weather-node + .rk-weather-node::before {
    content: "↓";
    position: absolute;
    top: -16px;
    left: 50%;
    color: var(--rk-orange);
    font-size: 1rem;
    transform: translateX(-50%);
  }

  #rk-weather-guide .rk-weather-architecture p {
    margin: 0;
    font-size: 0.82rem;
    line-height: 1.58;
  }

  #rk-weather-guide .rk-weather-lab {
    overflow: hidden;
    margin: 28px 0;
    border: 1px solid #c9e1e9;
    border-radius: 25px;
    background: var(--rk-white);
    box-shadow: 0 18px 45px rgba(16, 37, 54, 0.1);
  }

  #rk-weather-guide .rk-weather-lab-head {
    padding: 25px;
    color: var(--rk-white);
    background: linear-gradient(135deg, var(--rk-dark), var(--rk-navy));
  }

  #rk-weather-guide .rk-weather-lab-head h3,
  #rk-weather-guide .rk-weather-lab-head p {
    margin: 0;
    color: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-lab-head p {
    margin-top: 8px;
    color: #cfe2e8;
    font-size: 0.87rem;
  }

  #rk-weather-guide .rk-weather-presets {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 17px;
  }

  #rk-weather-guide .rk-weather-preset {
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 999px;
    color: var(--rk-white);
    background: rgba(255, 255, 255, 0.08);
    font: inherit;
    font-size: 0.7rem;
    font-weight: 850;
    cursor: pointer;
  }

  #rk-weather-guide .rk-weather-preset:hover,
  #rk-weather-guide .rk-weather-preset.is-active {
    color: var(--rk-dark);
    border-color: var(--rk-cyan);
    background: var(--rk-cyan);
  }

  #rk-weather-guide .rk-weather-lab-grid {
    display: grid;
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1.35fr);
    gap: 0;
  }

  #rk-weather-guide .rk-weather-controls {
    padding: 25px;
    border-right: 1px solid var(--rk-line);
    background: var(--rk-soft);
  }

  #rk-weather-guide .rk-weather-control {
    margin-bottom: 19px;
  }

  #rk-weather-guide .rk-weather-control:last-child {
    margin-bottom: 0;
  }

  #rk-weather-guide .rk-weather-control label {
    display: flex;
    gap: 10px;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    color: var(--rk-dark);
    font-size: 0.76rem;
    font-weight: 850;
    line-height: 1.35;
  }

  #rk-weather-guide .rk-weather-control output {
    flex: 0 0 auto;
    padding: 4px 8px;
    border-radius: 8px;
    color: var(--rk-white);
    background: var(--rk-blue);
    font-size: 0.7rem;
  }

  #rk-weather-guide .rk-weather-control input[type="range"] {
    width: 100%;
    margin: 0;
    accent-color: var(--rk-orange);
    cursor: pointer;
  }

  #rk-weather-guide .rk-weather-visual {
    min-width: 0;
    padding: 25px;
  }

  #rk-weather-guide .rk-weather-results {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 16px;
  }

  #rk-weather-guide .rk-weather-result {
    min-width: 0;
    padding: 15px;
    border: 1px solid var(--rk-line);
    border-radius: 14px;
    background: var(--rk-soft);
  }

  #rk-weather-guide .rk-weather-result span,
  #rk-weather-guide .rk-weather-result strong {
    display: block;
  }

  #rk-weather-guide .rk-weather-result span {
    color: var(--rk-muted);
    font-size: 0.66rem;
    font-weight: 760;
    line-height: 1.35;
  }

  #rk-weather-guide .rk-weather-result strong {
    margin-top: 5px;
    color: var(--rk-dark);
    font-size: 1.28rem;
    line-height: 1.15;
    overflow-wrap: anywhere;
  }

  #rk-weather-guide .rk-weather-chart {
    width: 100%;
    min-height: 330px;
    border: 1px solid var(--rk-line);
    border-radius: 17px;
    background: linear-gradient(180deg, #fbfeff, #f3f8fa);
  }

  #rk-weather-guide .rk-weather-chart .rk-grid-line {
    stroke: #d9e6ec;
    stroke-width: 1;
  }

  #rk-weather-guide .rk-weather-chart .rk-axis {
    stroke: #8194a1;
    stroke-width: 1.4;
  }

  #rk-weather-guide .rk-weather-chart .rk-axis-label,
  #rk-weather-guide .rk-weather-chart .rk-tick {
    fill: #5f7381;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: 11px;
  }

  #rk-weather-guide .rk-weather-chart .rk-curve {
    fill: none;
    stroke: var(--rk-blue);
    stroke-width: 5;
    stroke-linecap: round;
  }

  #rk-weather-guide .rk-weather-chart .rk-dot {
    fill: var(--rk-orange);
    stroke: var(--rk-white);
    stroke-width: 4;
  }

  #rk-weather-guide .rk-weather-chart .rk-guide {
    stroke: var(--rk-orange);
    stroke-width: 1.5;
    stroke-dasharray: 5 5;
  }

  #rk-weather-guide .rk-weather-status {
    margin-top: 14px;
    padding: 15px;
    border-radius: 13px;
    color: var(--rk-dark);
    background: var(--rk-cyan-soft);
    font-size: 0.78rem;
    font-weight: 760;
    line-height: 1.55;
  }

  #rk-weather-guide .rk-weather-disclaimer {
    padding: 0 25px 24px;
    color: var(--rk-muted);
    font-size: 0.72rem;
    line-height: 1.55;
  }

  #rk-weather-guide .rk-weather-howto {
    display: grid;
    gap: 12px;
    margin: 25px 0;
    padding: 0;
    list-style: none;
  }

  #rk-weather-guide .rk-weather-howto-step {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    padding: 20px;
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    background: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-howto-step > span {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 16px;
    color: var(--rk-white);
    background: var(--rk-dark);
    font-size: 0.8rem;
    font-weight: 900;
  }

  #rk-weather-guide .rk-weather-howto-step h3,
  #rk-weather-guide .rk-weather-howto-step p {
    margin: 0;
  }

  #rk-weather-guide .rk-weather-howto-step p {
    margin-top: 7px;
    font-size: 0.87rem;
  }

  #rk-weather-guide .rk-weather-faq-list {
    display: grid;
    gap: 10px;
  }

  #rk-weather-guide .rk-weather-faq {
    overflow: hidden;
    border: 1px solid var(--rk-line);
    border-radius: 16px;
    background: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-faq summary {
    position: relative;
    padding: 19px 52px 19px 20px;
    color: var(--rk-dark);
    font-weight: 850;
    line-height: 1.45;
    cursor: pointer;
    list-style: none;
  }

  #rk-weather-guide .rk-weather-faq summary::-webkit-details-marker {
    display: none;
  }

  #rk-weather-guide .rk-weather-faq summary::after {
    content: "+";
    position: absolute;
    top: 50%;
    right: 18px;
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 50%;
    color: var(--rk-white);
    background: var(--rk-blue);
    transform: translateY(-50%);
  }

  #rk-weather-guide .rk-weather-faq[open] summary::after {
    content: "−";
  }

  #rk-weather-guide .rk-weather-faq-answer {
    padding: 0 20px 19px;
  }

  #rk-weather-guide .rk-weather-faq-answer p {
    margin: 0;
    font-size: 0.88rem;
  }

  #rk-weather-guide .rk-weather-sources {
    margin-top: 28px;
    padding: 22px;
    border: 1px solid var(--rk-line);
    border-radius: 18px;
    color: var(--rk-muted);
    background: var(--rk-soft);
    font-size: 0.76rem;
    line-height: 1.7;
  }

  #rk-weather-guide .rk-weather-sources > strong {
    display: block;
    margin-bottom: 8px;
  }

  #rk-weather-guide .rk-weather-cta {
    margin-top: 58px;
    padding: clamp(28px, 5vw, 48px);
    border-radius: 26px;
    color: var(--rk-white);
    background:
      radial-gradient(circle at 92% 12%, rgba(255, 98, 56, 0.3), transparent 33%),
      linear-gradient(135deg, #102536, #174155);
    box-shadow: 0 20px 45px rgba(16, 37, 54, 0.16);
  }

  #rk-weather-guide .rk-weather-cta h3,
  #rk-weather-guide .rk-weather-cta p,
  #rk-weather-guide .rk-weather-cta strong {
    color: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-cta p {
    max-width: 880px;
  }

  #rk-weather-guide .rk-weather-cta-link {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 56px;
    margin-top: 7px;
    padding: 15px 24px;
    border-radius: 14px;
    color: var(--rk-white) !important;
    background: linear-gradient(90deg, var(--rk-orange), #f04432);
    box-shadow: 0 14px 28px rgba(216, 60, 47, 0.24);
    font-size: 0.88rem;
    font-weight: 900;
    text-align: center;
    text-decoration: none !important;
  }

  #rk-weather-guide .rk-weather-cta-link:hover {
    color: var(--rk-white) !important;
    filter: brightness(1.06);
    transform: translateY(-1px);
  }

  #rk-weather-guide .rk-weather-cta small {
    display: block;
    margin-top: 14px;
    color: #bdd1da;
    font-size: 0.7rem;
    line-height: 1.5;
  }

  #rk-weather-guide .rk-weather-author-box {
    overflow: hidden;
    margin-top: 30px;
    border: 1px solid var(--rk-line);
    border-radius: 26px;
    background: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-author-head {
    display: flex;
    gap: 20px;
    justify-content: space-between;
    align-items: center;
    padding: 28px;
    color: var(--rk-white);
    border-bottom: 5px solid var(--rk-cyan);
    background: var(--rk-dark);
  }

  #rk-weather-guide .rk-weather-author-head h3,
  #rk-weather-guide .rk-weather-author-head p {
    margin: 0;
    color: var(--rk-white);
  }

  #rk-weather-guide .rk-weather-author-head p {
    margin-top: 6px;
    color: #cde0e7;
    font-size: 0.82rem;
  }

  #rk-weather-guide .rk-weather-author-mark {
    flex: 0 0 auto;
    padding: 10px 15px;
    border: 1px solid rgba(40, 201, 218, 0.35);
    border-radius: 13px;
    color: #84edf5;
    background: rgba(40, 201, 218, 0.08);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.08em;
  }

  #rk-weather-guide .rk-weather-author-main {
    display: grid;
    grid-template-columns: 310px minmax(0, 1fr);
  }

  #rk-weather-guide .rk-weather-author-profile {
    padding: 32px;
    border-right: 1px solid var(--rk-line);
    background: var(--rk-soft);
    text-align: center;
  }

  #rk-weather-guide .rk-weather-author-profile img {
    width: 174px;
    height: 174px;
    border: 8px solid var(--rk-white);
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 0 16px 34px rgba(16, 37, 54, 0.14);
  }

  #rk-weather-guide .rk-weather-author-profile h4 {
    margin: 18px 0 7px;
    font-size: 1.36rem;
  }

  #rk-weather-guide .rk-weather-author-role {
    display: block;
    color: var(--rk-blue);
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    line-height: 1.6;
    text-transform: uppercase;
  }

  #rk-weather-guide .rk-weather-author-content {
    min-width: 0;
    padding: 32px;
  }

  #rk-weather-guide .rk-weather-quote {
    position: relative;
    margin-bottom: 22px;
    padding: 23px 23px 23px 61px;
    border-radius: 18px;
    background: var(--rk-cyan-soft);
  }

  #rk-weather-guide .rk-weather-quote::before {
    content: "“";
    position: absolute;
    top: 3px;
    left: 18px;
    color: var(--rk-cyan);
    font-family: Georgia, serif;
    font-size: 4rem;
    line-height: 1;
  }

  #rk-weather-guide .rk-weather-quote blockquote {
    margin: 0;
    color: var(--rk-dark);
    font-size: 1.03rem;
    font-style: italic;
    font-weight: 790;
    line-height: 1.7;
  }

  #rk-weather-guide .rk-weather-tab-buttons {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid var(--rk-line);
    border-radius: 14px 14px 0 0;
    overflow: hidden;
  }

  #rk-weather-guide .rk-weather-tab-button {
    min-width: 0;
    padding: 13px 10px;
    border: 0;
    border-right: 1px solid var(--rk-line);
    color: var(--rk-muted);
    background: var(--rk-soft);
    font: inherit;
    font-size: 0.72rem;
    font-weight: 900;
    text-transform: uppercase;
    cursor: pointer;
  }

  #rk-weather-guide .rk-weather-tab-button:last-child {
    border-right: 0;
  }

  #rk-weather-guide .rk-weather-tab-button.is-active {
    color: var(--rk-blue);
    background: var(--rk-white);
    box-shadow: inset 0 -4px 0 var(--rk-blue);
  }

  #rk-weather-guide .rk-weather-tab-panel {
    padding: 22px;
    border: 1px solid var(--rk-line);
    border-top: 0;
    border-radius: 0 0 14px 14px;
  }

  #rk-weather-guide .rk-weather-tab-panel p {
    margin: 0;
    font-size: 0.86rem;
  }

  #rk-weather-guide .rk-weather-portals {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 14px;
  }

  #rk-weather-guide .rk-weather-portals a {
    padding: 8px 12px;
    border: 1px solid #c8dbe4;
    border-radius: 999px;
    color: var(--rk-dark);
    background: var(--rk-white);
    font-size: 0.75rem;
    text-decoration: none;
  }

  #rk-weather-guide .rk-weather-portals a:hover {
    color: var(--rk-white);
    border-color: var(--rk-blue);
    background: var(--rk-blue);
  }

  @media (max-width: 1120px) {
    #rk-weather-guide .rk-weather-card-grid.four {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-weather-guide .rk-weather-architectures,
    #rk-weather-guide .rk-weather-card-grid.three {
      grid-template-columns: 1fr;
    }

    #rk-weather-guide .rk-weather-author-main {
      grid-template-columns: 260px minmax(0, 1fr);
    }
  }

  @media (max-width: 880px) {
    #rk-weather-guide {
      font-size: 17px;
    }

    #rk-weather-guide .rk-weather-lab-grid,
    #rk-weather-guide .rk-weather-author-main {
      grid-template-columns: 1fr;
    }

    #rk-weather-guide .rk-weather-controls,
    #rk-weather-guide .rk-weather-author-profile {
      border-right: 0;
      border-bottom: 1px solid var(--rk-line);
    }

    #rk-weather-guide .rk-weather-flow {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    #rk-weather-guide .rk-weather-flow-step:last-child {
      grid-column: 1 / -1;
    }
  }

  @media (max-width: 720px) {
    #rk-weather-guide {
      margin: 18px auto 50px;
      font-size: 16px;
    }

    #rk-weather-guide .rk-weather-shell {
      border-radius: 20px;
    }

    #rk-weather-guide .rk-weather-hero,
    #rk-weather-guide .rk-weather-content {
      padding: 25px 18px;
    }

    #rk-weather-guide .rk-weather-learn-grid,
    #rk-weather-guide .rk-weather-card-grid,
    #rk-weather-guide .rk-weather-card-grid.four,
    #rk-weather-guide .rk-weather-error-grid,
    #rk-weather-guide .rk-weather-check-grid,
    #rk-weather-guide .rk-weather-results {
      grid-template-columns: 1fr;
    }

    #rk-weather-guide .rk-weather-section {
      margin-top: 48px;
    }

    #rk-weather-guide .rk-weather-section-head {
      grid-template-columns: 44px minmax(0, 1fr);
      gap: 12px;
    }

    #rk-weather-guide .rk-weather-section-no {
      width: 42px;
      height: 42px;
      border-radius: 13px;
    }

    #rk-weather-guide .rk-weather-table,
    #rk-weather-guide .rk-weather-table tbody,
    #rk-weather-guide .rk-weather-table tr,
    #rk-weather-guide .rk-weather-table td {
      display: block;
      width: 100%;
    }

    #rk-weather-guide .rk-weather-table {
      border: 0;
      background: transparent;
    }

    #rk-weather-guide .rk-weather-table thead {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      white-space: nowrap;
    }

    #rk-weather-guide .rk-weather-table tr {
      margin-bottom: 13px;
      border: 1px solid var(--rk-line);
      border-radius: 16px;
      overflow: hidden;
      background: var(--rk-white);
    }

    #rk-weather-guide .rk-weather-table td,
    #rk-weather-guide .rk-weather-table tr:last-child td {
      display: grid;
      grid-template-columns: minmax(105px, 0.42fr) minmax(0, 0.58fr);
      gap: 10px;
      padding: 13px;
      border-right: 0;
      border-bottom: 1px solid var(--rk-line);
      background: var(--rk-white) !important;
    }

    #rk-weather-guide .rk-weather-table td:last-child {
      border-bottom: 0;
    }

    #rk-weather-guide .rk-weather-table td::before {
      content: attr(data-label);
      color: var(--rk-dark);
      font-weight: 900;
    }

    #rk-weather-guide .rk-weather-chart {
      min-height: 265px;
    }

    #rk-weather-guide .rk-weather-howto-step {
      grid-template-columns: 44px minmax(0, 1fr);
      gap: 12px;
      padding: 16px;
    }

    #rk-weather-guide .rk-weather-howto-step > span {
      width: 42px;
      height: 42px;
      border-radius: 13px;
    }

    #rk-weather-guide .rk-weather-author-head {
      align-items: flex-start;
      flex-direction: column;
      padding: 22px;
    }

    #rk-weather-guide .rk-weather-author-content,
    #rk-weather-guide .rk-weather-author-profile {
      padding: 22px;
    }

    #rk-weather-guide .rk-weather-tab-buttons {
      grid-template-columns: 1fr;
    }

    #rk-weather-guide .rk-weather-tab-button {
      border-right: 0;
      border-bottom: 1px solid var(--rk-line);
    }

    #rk-weather-guide .rk-weather-tab-button:last-child {
      border-bottom: 0;
    }

    #rk-weather-guide .rk-weather-cta-link {
      width: 100%;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    #rk-weather-guide *,
    #rk-weather-guide *::before,
    #rk-weather-guide *::after {
      scroll-behavior: auto !important;
      transition: none !important;
      animation: none !important;
    }
  }
</style>

<article id="rk-weather-guide" itemscope itemtype="https://schema.org/TechArticle">
  <div class="rk-weather-shell">
    <div class="rk-weather-progress-track" aria-hidden="true"><div class="rk-weather-progress"></div></div>

    <header class="rk-weather-hero">
      <div class="rk-weather-badge">Automatyka grzewcza • praktyka projektowa</div>
      <h2 itemprop="headline">Sterownik pogodowy do ogrzewania podłogowego – jak działa <span>regulator</span> i jak go ustawić?</h2>
      <div class="rk-weather-hook">
        <p><strong>Sterownik pogodowy nie jest termostatem, który czeka, aż w domu zrobi się zimno.</strong> Wyznacza temperaturę wody na podstawie temperatury zewnętrznej i charakterystyki budynku. Jeżeli jednak krzywa, czujniki albo hydraulika są źle dobrane, nawet najlepsza automatyka będzie jedynie precyzyjnie realizowała błędne założenia.</p>
      </div>
      <p class="rk-weather-hero-lead" itemprop="description">Ten przewodnik pokazuje, co naprawdę robi regulator pogodowy, czym różni się od sterowania pokojowego, kiedy steruje bezpośrednio pompą ciepła lub kotłem, a kiedy potrzebuje zaworu mieszającego. Zawiera również poprawny model dwupunktowej krzywej grzewczej, symulator, schematy układów i procedurę strojenia.</p>
      <div class="rk-weather-hero-meta">
        <span>Aktualizacja techniczna: 24 sierpnia 2026 r.</span>
        <span>Opracowanie bez rankingów producentów</span>
        <span>Jednoznaczne rozdzielenie sterowania i hydrauliki</span>
      </div>
      <div class="rk-weather-author-strip" itemprop="author" itemscope itemtype="https://schema.org/Person">
        <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – projektant instalacji sanitarnych" width="54" height="54" loading="eager" itemprop="image">
        <div>
          <b itemprop="name">Robert Kucharski</b>
          <small itemprop="jobTitle">Projektant instalacji sanitarnych • specjalista HVAC i ogrzewania podłogowego</small>
        </div>
      </div>
    </header>

    <div class="rk-weather-content">
      <div class="rk-weather-learn" aria-label="Zakres artykułu">
        <strong>Po lekturze będziesz wiedzieć:</strong>
        <div class="rk-weather-learn-grid">
          <div class="rk-weather-learn-card"><div class="rk-weather-no">01</div><div><h4>Co sterownik rzeczywiście reguluje</h4><p>Temperaturę zasilania, pracę źródła, zawór mieszający lub obieg – zależnie od architektury instalacji.</p></div></div>
          <div class="rk-weather-learn-card"><div class="rk-weather-no">02</div><div><h4>Jak zbudować krzywą z dwóch punktów</h4><p>Bez błędnych wzorów i bez zakładania, że numer nachylenia jest identyczny w każdym urządzeniu.</p></div></div>
          <div class="rk-weather-learn-card"><div class="rk-weather-no">03</div><div><h4>Jak korygować ustawienia</h4><p>Inaczej reagujemy na niedogrzanie podczas mrozu, inaczej na przegrzewanie w okresie przejściowym.</p></div></div>
          <div class="rk-weather-learn-card"><div class="rk-weather-no">04</div><div><h4>Kiedy problem nie leży w automatyce</h4><p>Jedno zimne pomieszczenie zwykle wskazuje na moc, przepływ lub równoważenie, a nie na całą krzywą.</p></div></div>
        </div>
      </div>

      <nav class="rk-weather-nav" aria-label="Nawigacja po artykule">
        <strong>Przejdź do sekcji</strong>
        <div class="rk-weather-nav-links">
          <a href="#rk-weather-odpowiedz">Szybka odpowiedź</a>
          <a href="#rk-weather-roznice">Sterownik a termostat</a>
          <a href="#rk-weather-dzialanie">Zasada działania</a>
          <a href="#rk-weather-uklady">Trzy układy</a>
          <a href="#rk-weather-symulator">Symulator</a>
          <a href="#rk-weather-ustawienie">Ustawianie krok po kroku</a>
          <a href="#rk-weather-czujniki">Czujniki</a>
          <a href="#rk-weather-sygnaly">Sygnały sterujące</a>
          <a href="#rk-weather-zrodla">Pompa ciepła i kocioł</a>
          <a href="#rk-weather-bledy">Błędy</a>
          <a href="#rk-weather-dobor">Dobór regulatora</a>
          <a href="#rk-weather-faq">FAQ</a>
        </div>
      </nav>

      <section class="rk-weather-section" id="rk-weather-odpowiedz" aria-labelledby="rk-weather-h2-1">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">01</div>
          <div>
            <h2 id="rk-weather-h2-1">Sterownik pogodowy – co to jest i co daje w podłogówce?</h2>
            <p>Najkrótsza odpowiedź bez marketingowych obietnic.</p>
          </div>
        </div>

        <div class="rk-weather-answer">
          <p><strong>Sterownik pogodowy, nazywany również regulatorem pogodowym, wyznacza wymaganą temperaturę zasilania instalacji na podstawie temperatury zewnętrznej.</strong> Zależność tę opisuje krzywa grzewcza. Gdy na zewnątrz robi się chłodniej, regulator podnosi temperaturę wody; gdy straty budynku maleją, obniża ją albo zatrzymuje ogrzewanie po osiągnięciu granicy trybu letniego.</p>
        </div>

        <p>W ogrzewaniu podłogowym ma to szczególne znaczenie, ponieważ masywna podłoga reaguje wolniej niż lekki grzejnik. Regulacja wyłącznie pokojowa może zareagować dopiero wtedy, gdy temperatura wewnętrzna już się zmieni. Regulacja według temperatury zewnętrznej dostosowuje parametr wody wcześniej, ale nie jest prognozą pogody. Typowy regulator mierzy aktualną temperaturę na zewnątrz; dopiero bardziej rozbudowane algorytmy mogą dodatkowo korzystać z prognozy lub uczenia adaptacyjnego.</p>

        <div class="rk-weather-card-grid three">
          <div class="rk-weather-card"><div class="rk-weather-card-icon">T°</div><h4>Mierzy</h4><p>Odczytuje temperaturę zewnętrzną, a zależnie od układu również temperaturę zasilania, powrotu i pomieszczenia referencyjnego.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">ƒ</div><h4>Oblicza</h4><p>Z krzywej grzewczej wyznacza wartość zadaną temperatury wody i uwzględnia limity, przesunięcie oraz ewentualny wpływ pokojowy.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">↗</div><h4>Steruje</h4><p>Przekazuje polecenie do źródła ciepła, siłownika mieszacza albo innego elementu wykonawczego przewidzianego w danym układzie.</p></div>
        </div>

        <div class="rk-weather-truth">
          <p><strong>Regulator nie tworzy mocy, której nie ma instalacja.</strong> Nie naprawi zbyt małej powierzchni grzewczej, źle dobranego rozstawu, niedostatecznego przepływu ani nadmiernego oporu okładziny. Może jedynie prawidłowo sterować układem, który został wcześniej obliczony i zrównoważony.</p>
        </div>
      </section>

      <section class="rk-weather-section" id="rk-weather-roznice" aria-labelledby="rk-weather-h2-2">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">02</div>
          <div>
            <h2 id="rk-weather-h2-2">Sterownik pogodowy, termostat i listwa strefowa – to nie są te same urządzenia</h2>
            <p>Każde z nich obserwuje inny sygnał i realizuje inne zadanie.</p>
          </div>
        </div>

        <p>W praktyce określenie „sterownik do podłogówki” bywa używane dla kilku całkowicie różnych elementów. Tymczasem regulator pogodowy wpływa przede wszystkim na temperaturę czynnika, <a href="https://projekt-ogrzewania.pl/termostat-w-ogrzewaniu-podlogowym/">termostat pokojowy</a> porównuje temperaturę pomieszczenia z nastawą, a listwa strefowa otwiera i zamyka siłowniki na rozdzielaczu. Dopiero świadome ustalenie hierarchii zapobiega sytuacji, w której urządzenia wydają sprzeczne polecenia.</p>

        <div class="rk-weather-table-wrap">
          <table class="rk-weather-table">
            <thead><tr><th>Element</th><th>Na co reaguje?</th><th>Co zwykle zmienia?</th><th>Najważniejsza rola</th></tr></thead>
            <tbody>
              <tr><td data-label="Element"><strong>Regulator pogodowy</strong></td><td data-label="Reaguje na">Temperaturę zewnętrzną, czasem także sygnał pokojowy</td><td data-label="Zmienia">Temperaturę zasilania, modulację źródła albo pozycję mieszacza</td><td data-label="Rola">Dopasowanie parametru wody do aktualnych strat budynku</td></tr>
              <tr><td data-label="Element"><strong>Termostat pokojowy</strong></td><td data-label="Reaguje na">Temperaturę wewnętrzną w danej strefie</td><td data-label="Zmienia">Żądanie ciepła, pozycję siłownika lub korektę regulatora</td><td data-label="Rola">Kontrola temperatury pomieszczenia i ograniczanie zysków wewnętrznych</td></tr>
              <tr><td data-label="Element"><strong>Listwa strefowa</strong></td><td data-label="Reaguje na">Sygnały z termostatów</td><td data-label="Zmienia">Stan siłowników, pompy i ewentualnie styku żądania</td><td data-label="Rola">Koordynacja wielu stref na rozdzielaczu</td></tr>
              <tr><td data-label="Element"><strong>Sterownik mieszacza</strong></td><td data-label="Reaguje na">Temperaturę zadaną i rzeczywistą za zaworem</td><td data-label="Zmienia">Pozycję siłownika zaworu 3- lub 4-drogowego</td><td data-label="Rola">Przygotowanie temperatury dla oddzielnego obiegu mieszanego</td></tr>
            </tbody>
          </table>
        </div>

        <p>Szersze spojrzenie na cały system znajduje się w opracowaniu <a href="https://projekt-ogrzewania.pl/sterowanie-pogodowe-w-ogrzewaniu-podlogowym/">sterowanie pogodowe w ogrzewaniu podłogowym</a>. Ten artykuł koncentruje się na samym regulatorze: jego zadaniach, wejściach, wyjściach, doborze i uruchomieniu.</p>
      </section>

      <section class="rk-weather-section" id="rk-weather-dzialanie" aria-labelledby="rk-weather-h2-3">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">03</div>
          <div>
            <h2 id="rk-weather-h2-3">Jak działa regulator pogodowy – pięć etapów jednej pętli sterowania</h2>
            <p>Kliknij etap, aby zobaczyć, gdzie powstaje wartość zadana i co dzieje się dalej.</p>
          </div>
        </div>

        <div data-rk-weather-flow>
          <div class="rk-weather-flow" role="group" aria-label="Etapy działania regulatora pogodowego">
            <button class="rk-weather-flow-step is-active" type="button" data-weather-step="0" aria-pressed="true">1. Pomiar zewnętrzny</button>
            <button class="rk-weather-flow-step" type="button" data-weather-step="1" aria-pressed="false">2. Krzywa grzewcza</button>
            <button class="rk-weather-flow-step" type="button" data-weather-step="2" aria-pressed="false">3. Korekty i limity</button>
            <button class="rk-weather-flow-step" type="button" data-weather-step="3" aria-pressed="false">4. Element wykonawczy</button>
            <button class="rk-weather-flow-step" type="button" data-weather-step="4" aria-pressed="false">5. Kontrola wyniku</button>
          </div>
          <div class="rk-weather-flow-detail" aria-live="polite">
            <h3 data-weather-flow-title>1. Pomiar temperatury zewnętrznej</h3>
            <p data-weather-flow-text>Czujnik przekazuje regulatorowi temperaturę reprezentatywną dla otoczenia budynku. Błąd pomiaru wywołany słońcem, otwartym oknem albo wyrzutnią powietrza trafia bezpośrednio do algorytmu i zniekształca temperaturę zasilania.</p>
          </div>
        </div>

        <h3>Krzywa grzewcza jako funkcja, a nie magiczny numer</h3>
        <p>Najbardziej uniwersalnym sposobem opisania regulacji jest wskazanie dwóch punktów: temperatury wody przy projektowym mrozie oraz temperatury wody w pobliżu granicy ogrzewania. Pomiędzy nimi regulator może stosować linię prostą albo krzywą właściwą dla swojego algorytmu. Numery nachylenia używane przez różne urządzenia nie muszą oznaczać tej samej zależności.</p>

        <div class="rk-weather-formula">
          <p><strong>Uproszczony model liniowy między dwoma punktami:</strong></p>
          <code>Tz(Te) = Tz,warm + [(Te,warm − Te) / (Te,warm − Te,cold)] × (Tz,cold − Tz,warm)</code>
          <p>Przykład: dla punktów <strong>−20°C → 35°C</strong> oraz <strong>+15°C → 25°C</strong> model daje około <strong>29,3°C zasilania przy 0°C</strong> i około <strong>32,1°C przy −10°C</strong>. To matematycznie spójna interpolacja, a nie przypadkowa wartość pochodząca z błędnego znaku we wzorze.</p>
        </div>

        <p>Pełne strojenie nachylenia i przesunięcia rozwijamy osobno w artykule <a href="https://projekt-ogrzewania.pl/krzywa-grzewcza-w-ogrzewaniu-podlogowym/">krzywa grzewcza w ogrzewaniu podłogowym</a>. Tutaj ważniejsze jest zrozumienie, że regulator może realizować tę samą fizyczną zależność w różny sposób: przez dwa punkty, nachylenie i poziom, krzywą numerowaną albo algorytm adaptacyjny.</p>
      </section>

      <section class="rk-weather-section" id="rk-weather-uklady" aria-labelledby="rk-weather-h2-4">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">04</div>
          <div>
            <h2 id="rk-weather-h2-4">Trzy poprawne architektury – regulator nie zawsze steruje mieszaczem</h2>
            <p>Sposób wykonania polecenia zależy od źródła ciepła i liczby obiegów temperaturowych.</p>
          </div>
        </div>

        <div class="rk-weather-architectures">
          <article class="rk-weather-architecture">
            <span>Układ A • bezpośredni</span>
            <h3>Pompa ciepła i podłogówka</h3>
            <div class="rk-weather-nodes" aria-label="Schemat bezpośredniego układu z pompą ciepła">
              <div class="rk-weather-node">Czujnik zewnętrzny</div>
              <div class="rk-weather-node">Regulator w pompie ciepła</div>
              <div class="rk-weather-node">Temperatura wody wytwarzana przez źródło</div>
              <div class="rk-weather-node">Rozdzielacz i pętle podłogowe</div>
            </div>
            <p>Źródło bezpośrednio przygotowuje temperaturę wynikającą z krzywej. Dodatkowy mieszacz może być zbędny, jeżeli cała instalacja pracuje na jednym niskim parametrze i hydraulika pozwala na bezpośrednie połączenie.</p>
          </article>

          <article class="rk-weather-architecture">
            <span>Układ B • jeden parametr</span>
            <h3>Kocioł kondensacyjny i podłogówka</h3>
            <div class="rk-weather-nodes" aria-label="Schemat bezpośredniego układu z kotłem kondensacyjnym">
              <div class="rk-weather-node">Czujnik zewnętrzny</div>
              <div class="rk-weather-node">Regulator kotła</div>
              <div class="rk-weather-node">Modulacja palnika i temperatura kotła</div>
              <div class="rk-weather-node">Obieg niskotemperaturowy</div>
            </div>
            <p>Jeżeli kocioł potrafi stabilnie pracować z wymaganą temperaturą, regulator może obniżać parametr bezpośrednio w źródle. Niska temperatura powrotu sprzyja kondensacji, ale układ trzeba ocenić razem z wymaganym przepływem i minimalną mocą kotła.</p>
          </article>

          <article class="rk-weather-architecture">
            <span>Układ C • mieszany</span>
            <h3>Grzejniki i ogrzewanie podłogowe</h3>
            <div class="rk-weather-nodes" aria-label="Schemat układu z obiegiem mieszanym">
              <div class="rk-weather-node">Regulator nadrzędny</div>
              <div class="rk-weather-node">Obieg grzejnikowy – wyższa krzywa</div>
              <div class="rk-weather-node">Zawór z siłownikiem i pompa obiegu</div>
              <div class="rk-weather-node">Podłogówka – niższa krzywa</div>
            </div>
            <p>Oddzielny obieg temperaturowy uzasadnia zastosowanie <a href="https://projekt-ogrzewania.pl/zawor-mieszajacy-w-ogrzewaniu-podlogowym/">zaworu mieszającego</a>. Regulator musi wtedy obsłużyć drugą krzywą, siłownik i pompę albo współpracować z modułem rozszerzającym.</p>
          </article>
        </div>

        <div class="rk-weather-warning">
          <p><strong>Błąd projektowy:</strong> dodawanie mieszacza „bo podłogówka zawsze go potrzebuje”. Mieszacz jest potrzebny wtedy, gdy trzeba przygotować odrębną temperaturę dla danego obiegu albo wymaga tego konkretna topologia hydrauliczna. Nie powinien bez potrzeby dublować regulacji źródła i zwiększać złożoności instalacji.</p>
        </div>
      </section>

      <section class="rk-weather-section" id="rk-weather-symulator" aria-labelledby="rk-weather-h2-5">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">05</div>
          <div>
            <h2 id="rk-weather-h2-5">Interaktywny symulator regulatora pogodowego</h2>
            <p>Zobacz, jak dwa punkty, temperatura zewnętrzna i przesunięcie wpływają na temperaturę zasilania.</p>
          </div>
        </div>

        <div class="rk-weather-lab" id="rk-weather-lab" aria-label="Edukacyjny symulator krzywej regulatora pogodowego">
          <div class="rk-weather-lab-head">
            <h3>Laboratorium krzywej pogodowej</h3>
            <p>Presety są przykładami edukacyjnymi. Nie stanowią nastaw dla konkretnego budynku ani konkretnego urządzenia.</p>
            <div class="rk-weather-presets" role="group" aria-label="Przykładowe profile">
              <button class="rk-weather-preset is-active" type="button" data-weather-preset="floor">Nowy dom • podłogówka</button>
              <button class="rk-weather-preset" type="button" data-weather-preset="heatpump">Niski parametr • pompa ciepła</button>
              <button class="rk-weather-preset" type="button" data-weather-preset="modernized">Budynek modernizowany</button>
            </div>
          </div>

          <div class="rk-weather-lab-grid">
            <div class="rk-weather-controls">
              <div class="rk-weather-control"><label for="rk-weather-cold-out">Projektowa temperatura zewnętrzna <output id="rk-weather-cold-out-value">−20°C</output></label><input id="rk-weather-cold-out" type="range" min="-24" max="-10" step="1" value="-20"></div>
              <div class="rk-weather-control"><label for="rk-weather-cold-flow">Zasilanie przy projektowym mrozie <output id="rk-weather-cold-flow-value">35°C</output></label><input id="rk-weather-cold-flow" type="range" min="28" max="48" step="0.5" value="35"></div>
              <div class="rk-weather-control"><label for="rk-weather-warm-out">Granica ogrzewania / ciepły punkt <output id="rk-weather-warm-out-value">15°C</output></label><input id="rk-weather-warm-out" type="range" min="10" max="18" step="1" value="15"></div>
              <div class="rk-weather-control"><label for="rk-weather-warm-flow">Zasilanie w ciepłym punkcie <output id="rk-weather-warm-flow-value">25°C</output></label><input id="rk-weather-warm-flow" type="range" min="20" max="30" step="0.5" value="25"></div>
              <div class="rk-weather-control"><label for="rk-weather-now-out">Aktualna temperatura zewnętrzna <output id="rk-weather-now-out-value">0°C</output></label><input id="rk-weather-now-out" type="range" min="-25" max="20" step="0.5" value="0"></div>
              <div class="rk-weather-control"><label for="rk-weather-shift">Przesunięcie równoległe <output id="rk-weather-shift-value">0 K</output></label><input id="rk-weather-shift" type="range" min="-5" max="5" step="0.5" value="0"></div>
              <div class="rk-weather-control"><label for="rk-weather-limit">Maksymalny limit zasilania <output id="rk-weather-limit-value">40°C</output></label><input id="rk-weather-limit" type="range" min="30" max="55" step="1" value="40"></div>
            </div>

            <div class="rk-weather-visual">
              <div class="rk-weather-results" aria-live="polite">
                <div class="rk-weather-result"><span>Temperatura zadana</span><strong id="rk-weather-result-flow">29,3°C</strong></div>
                <div class="rk-weather-result"><span>Zmiana na 1 K na zewnątrz</span><strong id="rk-weather-result-slope">0,286 K</strong></div>
                <div class="rk-weather-result"><span>Stan regulatora</span><strong id="rk-weather-result-mode">Grzanie</strong></div>
              </div>

              <svg class="rk-weather-chart" id="rk-weather-chart" viewBox="0 0 650 360" role="img" aria-labelledby="rk-weather-chart-title rk-weather-chart-desc">
                <title id="rk-weather-chart-title">Wykres przykładowej krzywej grzewczej</title>
                <desc id="rk-weather-chart-desc">Zależność temperatury zasilania od temperatury zewnętrznej wraz z aktualnym punktem pracy.</desc>
                <line class="rk-grid-line" x1="62" y1="55" x2="620" y2="55"></line>
                <line class="rk-grid-line" x1="62" y1="112" x2="620" y2="112"></line>
                <line class="rk-grid-line" x1="62" y1="169" x2="620" y2="169"></line>
                <line class="rk-grid-line" x1="62" y1="226" x2="620" y2="226"></line>
                <line class="rk-grid-line" x1="62" y1="283" x2="620" y2="283"></line>
                <line class="rk-axis" x1="62" y1="25" x2="62" y2="315"></line>
                <line class="rk-axis" x1="62" y1="315" x2="620" y2="315"></line>
                <text class="rk-tick" x="28" y="59">50</text>
                <text class="rk-tick" x="28" y="116">45</text>
                <text class="rk-tick" x="28" y="173">40</text>
                <text class="rk-tick" x="28" y="230">35</text>
                <text class="rk-tick" x="28" y="287">30</text>
                <text class="rk-tick" x="52" y="337">−25</text>
                <text class="rk-tick" x="171" y="337">−15</text>
                <text class="rk-tick" x="294" y="337">−5</text>
                <text class="rk-tick" x="420" y="337">5</text>
                <text class="rk-tick" x="536" y="337">15</text>
                <text class="rk-axis-label" x="236" y="355">Temperatura zewnętrzna [°C]</text>
                <text class="rk-axis-label" transform="rotate(-90 13 223)" x="13" y="223">Temperatura zasilania [°C]</text>
                <line class="rk-guide" id="rk-weather-guide-x" x1="0" y1="0" x2="0" y2="315"></line>
                <line class="rk-guide" id="rk-weather-guide-y" x1="62" y1="0" x2="0" y2="0"></line>
                <path class="rk-curve" id="rk-weather-curve" d=""></path>
                <circle class="rk-dot" id="rk-weather-dot" cx="0" cy="0" r="8"></circle>
              </svg>

              <div class="rk-weather-status" id="rk-weather-status">Przy 0°C na zewnątrz model wyznacza około 29,3°C zasilania. Wartość nie przekracza ustawionego limitu.</div>
            </div>
          </div>
          <div class="rk-weather-disclaimer"><strong>Ważne:</strong> symulator pokazuje wyłącznie interpolację między dwoma punktami. Nie oblicza strat ciepła, mocy podłogi, oporu okładziny, przepływów ani bezwładności. Nastawy konkretnego urządzenia należy wykonać zgodnie z jego dokumentacją i parametrami projektu.</div>
        </div>

        <div class="rk-weather-note">
          <p><strong>Dlaczego model dwupunktowy jest bezpieczniejszy edukacyjnie?</strong> Pozwala od razu sprawdzić, czy dla obliczeniowej temperatury zewnętrznej regulator osiąga projektową temperaturę zasilania. Nie wymaga zgadywania, co producent danego sterownika oznaczył numerem 0,3, 0,4 albo 0,8.</p>
        </div>
      </section>

      <section class="rk-weather-section" id="rk-weather-ustawienie" aria-labelledby="rk-weather-h2-6">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">06</div>
          <div>
            <h2 id="rk-weather-h2-6">Jak ustawić sterownik pogodowy do ogrzewania podłogowego?</h2>
            <p>Procedura zaczyna się od danych projektowych, a nie od przypadkowej krzywej znalezionej w internecie.</p>
          </div>
        </div>

        <ol class="rk-weather-howto">
          <li class="rk-weather-howto-step" id="rk-weather-step-1"><span>01</span><div><h3>Ustal projektowy punkt pracy</h3><p>Potrzebujesz projektowej temperatury zewnętrznej dla lokalizacji, temperatury pomieszczeń oraz parametrów zasilania i powrotu wynikających z obliczonej mocy podłogi. Podstawą jest <a href="https://projekt-ogrzewania.pl/projektowe-obciazenie-cieplne-ozc/">projektowe obciążenie cieplne OZC</a>, a nie powierzchnia domu pomnożona przez uniwersalny wskaźnik.</p></div></li>
          <li class="rk-weather-howto-step" id="rk-weather-step-2"><span>02</span><div><h3>Wprowadź ciepły i zimny punkt krzywej</h3><p>Zimny punkt powinien odpowiadać parametrowi projektu przy obliczeniowej temperaturze zewnętrznej. Ciepły punkt ustawiamy w pobliżu granicy ogrzewania, uwzględniając minimalną temperaturę, którą źródło i obieg potrafią stabilnie utrzymać.</p></div></li>
          <li class="rk-weather-howto-step" id="rk-weather-step-3"><span>03</span><div><h3>Ustaw limity bezpieczeństwa</h3><p>Ogranicz maksymalną temperaturę zasilania zgodnie z projektem, konstrukcją podłogi i okładziną. Sam limit wody nie zastępuje kontroli temperatury powierzchni. Więcej zależności opisuje artykuł <a href="https://projekt-ogrzewania.pl/maksymalna-temperatura-zasilania-podlogowki/">maksymalna temperatura zasilania podłogówki</a>.</p></div></li>
          <li class="rk-weather-howto-step" id="rk-weather-step-4"><span>04</span><div><h3>Otwórz przepływy i ustabilizuj hydraulikę</h3><p>Przed oceną krzywej sprawdź, czy pętle mają przepływy projektowe, pompa pracuje w prawidłowym punkcie, a siłowniki nie zamykają przypadkowo większości instalacji. Regulacja pogodowa nie powinna być strojona na układzie z nieznanym przepływem.</p></div></li>
          <li class="rk-weather-howto-step" id="rk-weather-step-5"><span>05</span><div><h3>Obserwuj pełne okresy pracy</h3><p>Po jednej korekcie pozostaw instalację bez kolejnych zmian przez co najmniej 24–72 godziny, zależnie od masy podłogi, pogody i konstrukcji budynku. Krótkie testy po kilku godzinach mogą prowadzić do pogoni za bezwładnością.</p></div></li>
          <li class="rk-weather-howto-step" id="rk-weather-step-6"><span>06</span><div><h3>Koryguj właściwy parametr</h3><p>Jeśli błąd jest podobny podczas całego sezonu, zmień poziom lub przesunięcie. Jeżeli różnica rośnie wraz z mrozem, koryguj nachylenie albo zimny punkt. Jedno wadliwe pomieszczenie diagnozuj lokalnie – poprzez moc, powierzchnię i przepływ.</p></div></li>
        </ol>

        <h3>Macierz diagnostyczna krzywej grzewczej</h3>
        <div class="rk-weather-table-wrap">
          <table class="rk-weather-table">
            <thead><tr><th>Objaw</th><th>Najbardziej prawdopodobny kierunek korekty</th><th>Czego nie robić od razu?</th></tr></thead>
            <tbody>
              <tr><td data-label="Objaw"><strong>Za zimno zarówno przy +5°C, jak i przy mrozie</strong></td><td data-label="Korekta">Podnieść poziom lub przesunąć całą krzywą niewielkim krokiem</td><td data-label="Nie rób">Nie zwiększać gwałtownie nachylenia, jeśli błąd jest stały</td></tr>
              <tr><td data-label="Objaw"><strong>Dobrze w okresie przejściowym, za zimno podczas mrozu</strong></td><td data-label="Korekta">Podnieść nachylenie albo zimny punkt krzywej</td><td data-label="Nie rób">Nie podnosić całej krzywej, bo przegrzeje dom przy łagodnej pogodzie</td></tr>
              <tr><td data-label="Objaw"><strong>Za ciepło przy +5°C, dobrze podczas mrozu</strong></td><td data-label="Korekta">Obniżyć ciepły punkt lub odpowiednio zmienić nachylenie</td><td data-label="Nie rób">Nie obniżać wyłącznie punktu projektowego</td></tr>
              <tr><td data-label="Objaw"><strong>Tylko jedno pomieszczenie jest za zimne</strong></td><td data-label="Korekta">Sprawdzić obciążenie cieplne, aktywną powierzchnię, przepływ, siłownik i zapowietrzenie</td><td data-label="Nie rób">Nie podnosić temperatury całego domu dla jednej strefy</td></tr>
              <tr><td data-label="Objaw"><strong>Przegrzewanie po słońcu lub gotowaniu</strong></td><td data-label="Korekta">Ograniczyć wpływ pokojowy, użyć adaptacji albo łagodnej korekty strefowej</td><td data-label="Nie rób">Nie traktować zysków wewnętrznych jak błędu zimnego punktu</td></tr>
            </tbody>
          </table>
        </div>
      </section>

      <section class="rk-weather-section" id="rk-weather-czujniki" aria-labelledby="rk-weather-h2-7">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">07</div>
          <div>
            <h2 id="rk-weather-h2-7">Czujniki regulatora pogodowego – co mierzą i gdzie popełnia się błędy?</h2>
            <p>Algorytm może być tak dobry, jak dane, które otrzymuje.</p>
          </div>
        </div>

        <div class="rk-weather-card-grid four">
          <div class="rk-weather-card"><div class="rk-weather-card-icon">ZE</div><h4>Czujnik zewnętrzny</h4><p>Podstawowy sygnał krzywej. Montuje się go zgodnie z instrukcją urządzenia w miejscu reprezentatywnym, bez bezpośredniego słońca oraz wpływu okien, drzwi, wyrzutni i innych źródeł ciepła.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">ZA</div><h4>Czujnik zasilania</h4><p>Mierzy temperaturę za elementem, którym sterujemy. W obiegu mieszanym powinien znajdować się po stronie przygotowanej wody, aby regulator widział efekt ruchu zaworu.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">PO</div><h4>Czujnik pokojowy</h4><p>Może przesuwać wartość zadaną lub ograniczać grzanie po osiągnięciu temperatury. Jego wpływ powinien być łagodny i dopasowany do bezwładności podłogi.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">PR</div><h4>Powrót lub podłoga</h4><p>Czujnik powrotu wspiera diagnostykę i funkcje ochronne, a <a href="https://projekt-ogrzewania.pl/czujnik-podlogowy/">czujnik podłogowy</a> może ograniczać temperaturę wybranej powierzchni. Nie należy mylić ich funkcji.</p></div>
        </div>

        <h3>Montaż czujnika zewnętrznego – zasady praktyczne</h3>
        <ul class="rk-weather-list">
          <li>Wybierz elewację i wysokość wskazaną w dokumentacji regulatora; często jest to zacieniona ściana północna albo północno-zachodnia.</li>
          <li>Unikaj bezpośredniego promieniowania słonecznego, wnęk, nagrzewających się osłon oraz miejsc z zastojem powietrza.</li>
          <li>Nie montuj czujnika nad oknem, obok drzwi, kratki wentylacyjnej, wyrzutni rekuperacji, agregatu ani przewodu spalinowego.</li>
          <li>Nie dopisuj samodzielnie nietypowej osłony, jeżeli zmienia ona wentylację obudowy. Czujnik powinien mierzyć powietrze, a nie mikroklimat zamkniętej puszki.</li>
          <li>Po uruchomieniu porównaj odczyt z niezależnym termometrem w podobnych warunkach, ale nie koryguj go na podstawie chwilowej różnicy między dwoma różnie zlokalizowanymi punktami.</li>
        </ul>

        <div class="rk-weather-truth"><p><strong>Czujnik pokojowy nie jest zawsze obowiązkowy.</strong> W dobrze zrównoważonym układzie pogodowym może pełnić jedynie funkcję korekcyjną. Agresywne włączanie i wyłączanie źródła na podstawie jednego pomieszczenia bywa niekorzystne szczególnie dla pompy ciepła i masywnej podłogi.</p></div>
      </section>

      <section class="rk-weather-section" id="rk-weather-sygnaly" aria-labelledby="rk-weather-h2-8">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">08</div>
          <div>
            <h2 id="rk-weather-h2-8">Wyjścia regulatora – styk, sterowanie trójpunktowe, 0–10 V, PWM i magistrala</h2>
            <p>Kompatybilność elektryczna i komunikacyjna jest równie ważna jak funkcje opisane w katalogu.</p>
          </div>
        </div>

        <div class="rk-weather-table-wrap">
          <table class="rk-weather-table">
            <thead><tr><th>Sposób sterowania</th><th>Co przekazuje?</th><th>Typowe zastosowanie</th><th>Na co uważać?</th></tr></thead>
            <tbody>
              <tr><td data-label="Sterowanie"><strong>Styk beznapięciowy ON/OFF</strong></td><td data-label="Sygnał">Żądanie pracy albo jego brak</td><td data-label="Zastosowanie">Prosty sygnał do źródła, pompy lub listwy</td><td data-label="Uwaga">Sam styk nie przekazuje zadanej temperatury zasilania i może ograniczać modulację</td></tr>
              <tr><td data-label="Sterowanie"><strong>Trójpunktowe: otwórz–stop–zamknij</strong></td><td data-label="Sygnał">Impulsy w dwóch kierunkach</td><td data-label="Zastosowanie">Siłownik zaworu mieszającego</td><td data-label="Uwaga">Czas pełnego obrotu siłownika musi odpowiadać konfiguracji regulatora</td></tr>
              <tr><td data-label="Sterowanie"><strong>0–10 V</strong></td><td data-label="Sygnał">Wartość proporcjonalną</td><td data-label="Zastosowanie">Modulacja urządzenia, pompy lub siłownika</td><td data-label="Uwaga">Trzeba sprawdzić kierunek, zakres oraz znaczenie napięcia minimalnego i maksymalnego</td></tr>
              <tr><td data-label="Sterowanie"><strong>PWM</strong></td><td data-label="Sygnał">Wypełnienie impulsu</td><td data-label="Zastosowanie">Wybrane pompy, siłowniki i układy modulowane</td><td data-label="Uwaga">PWM nie jest jednym uniwersalnym standardem dla wszystkich urządzeń</td></tr>
              <tr><td data-label="Sterowanie"><strong>Magistrala cyfrowa</strong></td><td data-label="Sygnał">Dane dwukierunkowe</td><td data-label="Zastosowanie">Wartości zadane, stany pracy, błędy, modulacja i diagnostyka</td><td data-label="Uwaga">Zgodność nazw złączy nie gwarantuje zgodności protokołów i wersji</td></tr>
            </tbody>
          </table>
        </div>

        <div class="rk-weather-warning"><p><strong>Przed zakupem nie wystarczy pytanie „czy regulator obsługuje pompę ciepła?”.</strong> Trzeba sprawdzić konkretny sposób komunikacji, liczbę obiegów, rodzaj siłownika, obciążalność wyjść, typ czujników, logikę awaryjną oraz to, które urządzenie ma być nadrzędne.</p></div>
      </section>

      <section class="rk-weather-section" id="rk-weather-zrodla" aria-labelledby="rk-weather-h2-9">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">09</div>
          <div>
            <h2 id="rk-weather-h2-9">Regulator pogodowy z pompą ciepła, kotłem i instalacją mieszaną</h2>
            <p>Ta sama idea regulacji prowadzi do różnych rozwiązań wykonawczych.</p>
          </div>
        </div>

        <h3>Pompa ciepła i ogrzewanie podłogowe</h3>
        <p>W instalacji z <a href="https://projekt-ogrzewania.pl/pompa-ciepla/">pompą ciepła</a> celem jest uzyskanie wymaganej temperatury pomieszczeń przy możliwie niskiej temperaturze wody i stabilnym przepływie. Najczęściej korzystne jest, aby automatyka źródła bezpośrednio realizowała krzywą, zamiast wytwarzać niepotrzebnie gorącą wodę, a następnie schładzać ją na mieszaczu. Ostateczny układ zależy jednak od minimalnego przepływu pompy, liczby obiegów, bufora, sprzęgła i pozostałych odbiorników.</p>

        <p>Duże nocne obniżenie temperatury może wymusić późniejsze ładowanie podłogi wyższym parametrem. W masywnym systemie często lepiej działa niewielka korekta albo stała temperatura zadana. Podobnie agresywne zamykanie wielu pętli przez termostaty może zmniejszyć przepływ poniżej wymagań źródła i zwiększać liczbę startów sprężarki.</p>

        <h3>Kocioł kondensacyjny</h3>
        <p>Przy jednym niskotemperaturowym obiegu <a href="https://projekt-ogrzewania.pl/kociol-gazowy/">kocioł gazowy</a> może regulować temperaturę bezpośrednio. Pogodowe obniżenie zasilania zwykle obniża również temperaturę powrotu, co sprzyja kondensacji. Nie rozwiązuje jednak problemu zbyt wysokiej mocy minimalnej: jeśli kocioł nie potrafi zejść do aktualnego obciążenia budynku, może taktować mimo poprawnej krzywej.</p>

        <h3>Instalacja grzejnikowa i podłogowa</h3>
        <p>Dwa rodzaje odbiorników mogą wymagać dwóch oddzielnych krzywych i dwóch obiegów. Wtedy regulator powinien koordynować temperaturę źródła, obieg bezpośredni oraz obieg mieszany. Nie należy kopiować tej samej temperatury ani tej samej krzywej na grzejniki i podłogę tylko dlatego, że znajdują się w jednym budynku.</p>

        <div class="rk-weather-note"><p><strong>Połączenie źródła i odbiorników powinno wynikać z projektu.</strong> Artykuł <a href="https://projekt-ogrzewania.pl/projekt-ogrzewania-podlogowego-z-pompa-ciepla/">projekt ogrzewania podłogowego z pompą ciepła</a> rozwija zależność między temperaturą zasilania, mocą podłogi, przepływem i sprawnością całego układu.</p></div>
      </section>

      <section class="rk-weather-section" id="rk-weather-oszczednosci" aria-labelledby="rk-weather-h2-10">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">10</div>
          <div>
            <h2 id="rk-weather-h2-10">Czy sterownik pogodowy zawsze obniża rachunki?</h2>
            <p>Nie istnieje uczciwa, uniwersalna obietnica oszczędności dla każdego domu.</p>
          </div>
        </div>

        <p>Efekt zależy od punktu odniesienia. Jeżeli wcześniej instalacja pracowała ze stałą, zawyżoną temperaturą i przegrzewała budynek, poprawna regulacja może przynieść zauważalną zmianę. Jeżeli natomiast źródło już modulowało na niskim parametrze, dom był dobrze wyregulowany, a temperatury pomieszczeń stabilne, dodatkowy efekt może być niewielki.</p>

        <div class="rk-weather-card-grid three">
          <div class="rk-weather-card"><div class="rk-weather-card-icon">01</div><h4>Najpierw komfort</h4><p>Regulator ma bilansować bieżące straty bez cykli przegrzewania i wychładzania. Oszczędność nie powinna wynikać z niedogrzania domu.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">02</div><h4>Potem sprawność źródła</h4><p>Niższa wymagana temperatura może poprawiać warunki pompy ciepła i kotła kondensacyjnego, ale zależność trzeba odczytywać z danych konkretnego urządzenia.</p></div>
          <div class="rk-weather-card"><div class="rk-weather-card-icon">03</div><h4>Na końcu pieniądze</h4><p>Rachunek zależy również od pogody, temperatury wewnętrznej, taryfy, wentylacji, zysków słonecznych, ciepłej wody i zachowania użytkowników.</p></div>
        </div>

        <p>Badanie eksploatacyjne opublikowane w 2025 roku, obejmujące kilka tysięcy powietrznych pomp ciepła, wykazało duży udział źle skonfigurowanych krzywych i średni potencjał zmniejszenia rocznego zużycia energii na poziomie około 4% po zastosowaniu opracowanej metody optymalizacji. Nie jest to obietnica dla każdego budynku, lecz dobry dowód, że strojenie ma znaczenie i jednocześnie nie uzasadnia marketingowych deklaracji typu „zawsze 20% oszczędności”.</p>
      </section>

      <section class="rk-weather-section" id="rk-weather-bledy" aria-labelledby="rk-weather-h2-11">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">11</div>
          <div>
            <h2 id="rk-weather-h2-11">Najczęstsze błędy przy regulatorze pogodowym</h2>
            <p>Objawy są podobne, ale przyczyny mogą leżeć w automatyce, hydraulice albo samym projekcie.</p>
          </div>
        </div>

        <div class="rk-weather-error-grid">
          <div class="rk-weather-error"><div class="rk-weather-error-no">01</div><h4>Krzywa skopiowana z internetu</h4><p>Nie uwzględnia projektowej temperatury zewnętrznej, strat budynku, rozstawu rur, okładziny ani sposobu kodowania krzywej przez urządzenie.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">02</div><h4>Zbyt częste zmiany</h4><p>Kolejna korekta jest wprowadzana, zanim masywna podłoga i budynek zdążą osiągnąć nowy stan równowagi.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">03</div><h4>Błędny czujnik zewnętrzny</h4><p>Słońce, wyrzutnia, okno albo nagrzana wnęka zmieniają odczyt, a regulator reaguje prawidłowo na nieprawidłowe dane.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">04</div><h4>Za wysoki limit</h4><p>Regulator może przy mrozie doprowadzić do parametru, którego nie przewidziano dla podłogi, drewna albo całego układu.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">05</div><h4>Mieszacz bez potrzeby</h4><p>Źródło podgrzewa wodę wyżej, a dodatkowy obieg natychmiast ją schładza, zwiększając liczbę pomp i elementów regulacyjnych.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">06</div><h4>Konflikt ze strefami</h4><p>Krzywa podnosi temperaturę, podczas gdy termostaty zamykają większość pętli. Źródło traci przepływ i zaczyna pracować niestabilnie.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">07</div><h4>Brak równoważenia</h4><p>Krzywa jest podnoszona dla zimnego pokoju, choć rzeczywistą przyczyną jest zbyt mały przepływ w jednej pętli.</p></div>
          <div class="rk-weather-error"><div class="rk-weather-error-no">08</div><h4>Próba leczenia projektu automatyką</h4><p>Regulator nie zwiększy aktywnej powierzchni, nie zmniejszy oporu podłogi i nie naprawi zbyt długich lub źle rozłożonych pętli.</p></div>
        </div>
      </section>

      <section class="rk-weather-section" id="rk-weather-dobor" aria-labelledby="rk-weather-h2-12">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">12</div>
          <div>
            <h2 id="rk-weather-h2-12">Jak dobrać regulator pogodowy bez przywiązywania się do marki?</h2>
            <p>Najpierw określ układ, dopiero później porównuj urządzenia.</p>
          </div>
        </div>

        <div class="rk-weather-check-grid">
          <div class="rk-weather-check"><div class="rk-weather-check-no">01</div><h4>Liczba obiegów</h4><p>Czy jest jeden obieg podłogowy, czy osobne obiegi dla kondygnacji, grzejników, podłogówki i innych odbiorników?</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">02</div><h4>Element wykonawczy</h4><p>Czy regulator ma sterować źródłem, mieszaczem, pompą, kilkoma modułami czy połączeniem tych elementów?</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">03</div><h4>Protokół i wyjścia</h4><p>Styk, sygnał trójpunktowy, 0–10 V oraz magistrale nie są zamienne bez sprawdzenia kompatybilności.</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">04</div><h4>Czujniki</h4><p>Sprawdź typ, zakres, charakterystykę, długość przewodów i możliwość kalibracji czujnika zewnętrznego oraz zasilania.</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">05</div><h4>Limity i zabezpieczenia</h4><p>Potrzebne są ograniczenia temperatury, zachowanie po awarii czujnika, ochrona przeciwzamrożeniowa i logiczny tryb letni.</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">06</div><h4>Wpływ pokojowy</h4><p>Warto wiedzieć, czy czujnik tylko przesuwa krzywą, wyłącza źródło, czy regulator potrafi adaptacyjnie uczyć się budynku.</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">07</div><h4>Diagnostyka</h4><p>Historia temperatury zewnętrznej, zasilania, powrotu, stanów pracy i błędów znacząco ułatwia strojenie oraz serwis.</p></div>
          <div class="rk-weather-check"><div class="rk-weather-check-no">08</div><h4>Hierarchia sterowania</h4><p>Trzeba jednoznacznie wskazać urządzenie nadrzędne, aby źródło, mieszacz, listwa i termostaty nie walczyły ze sobą.</p></div>
        </div>

        <div class="rk-weather-truth"><p><strong>Dobry wybór nie zaczyna się od listy funkcji.</strong> Zaczyna się od schematu hydraulicznego, parametrów projektu i informacji, w jaki sposób źródło ciepła przyjmuje wartość zadaną. Dopiero wtedy wiadomo, jakich wejść, wyjść i algorytmów naprawdę potrzebujesz.</p></div>
      </section>

      <section class="rk-weather-section" id="rk-weather-faq" aria-labelledby="rk-weather-h2-13">
        <div class="rk-weather-section-head">
          <div class="rk-weather-section-no">13</div>
          <div>
            <h2 id="rk-weather-h2-13">FAQ – sterownik i regulator pogodowy</h2>
            <p>Odpowiedzi na pytania związane z montażem, ustawieniami i współpracą z podłogówką.</p>
          </div>
        </div>

        <div class="rk-weather-faq-list">
          <details class="rk-weather-faq" id="rk-weather-faq-1"><summary>Co to jest sterownik pogodowy?</summary><div class="rk-weather-faq-answer"><p>Sterownik pogodowy to regulator, który na podstawie temperatury zewnętrznej oraz zapisanej krzywej wyznacza wymaganą temperaturę zasilania instalacji. Może przekazywać tę wartość do źródła ciepła albo realizować ją przez sterowanie zaworem mieszającym.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-2"><summary>Czym sterownik pogodowy różni się od termostatu pokojowego?</summary><div class="rk-weather-faq-answer"><p>Regulator pogodowy reaguje przede wszystkim na temperaturę zewnętrzną i zmienia parametr wody. Termostat pokojowy porównuje temperaturę pomieszczenia z nastawą i wysyła żądanie, korektę albo polecenie dla siłownika. Urządzenia mogą współpracować, ale nie pełnią tej samej funkcji.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-3"><summary>Czy sterownik pogodowy jest potrzebny do ogrzewania podłogowego?</summary><div class="rk-weather-faq-answer"><p>Nie jest warunkiem fizycznego działania instalacji, ale jest bardzo użytecznym sposobem dopasowania temperatury zasilania do zmiennych strat budynku. Szczególne znaczenie ma w systemach o dużej bezwładności i ze źródłami korzystającymi z niskiej temperatury wody.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-4"><summary>Jaką krzywą grzewczą ustawić do podłogówki?</summary><div class="rk-weather-faq-answer"><p>Nie istnieje jedna krzywa odpowiednia dla wszystkich domów i urządzeń. Punktem startowym powinny być projektowa temperatura zewnętrzna oraz projektowa temperatura zasilania. Oznaczenia nachylenia różnią się między regulatorami, dlatego trzeba korzystać z dokumentacji urządzenia i danych projektu.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-5"><summary>Gdzie zamontować czujnik temperatury zewnętrznej?</summary><div class="rk-weather-faq-answer"><p>Należy zastosować lokalizację i sposób montażu wskazane w dokumentacji regulatora. Miejsce powinno być reprezentatywne, bez bezpośredniego słońca i wpływu okien, drzwi, wyrzutni wentylacji, agregatów, kominów oraz innych lokalnych źródeł ciepła.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-6"><summary>Czy regulator pogodowy może działać bez czujnika pokojowego?</summary><div class="rk-weather-faq-answer"><p>Tak. Podstawą regulacji pogodowej jest czujnik zewnętrzny i krzywa. Czujnik pokojowy może zapewniać korektę zysków słonecznych i wewnętrznych, ale jego wpływ powinien być dopasowany do bezwładności instalacji oraz strategii pracy źródła.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-7"><summary>Czy podłogówka zawsze potrzebuje zaworu mieszającego?</summary><div class="rk-weather-faq-answer"><p>Nie. Jeżeli pompa ciepła lub kocioł bezpośrednio wytwarza wymaganą niską temperaturę dla jednego obiegu, dodatkowy mieszacz może być zbędny. Jest uzasadniony między innymi wtedy, gdy podłogówka stanowi oddzielny obieg o niższej temperaturze niż pozostałe odbiorniki.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-8"><summary>Czy regulator pogodowy poprawia COP pompy ciepła?</summary><div class="rk-weather-faq-answer"><p>Może poprawić warunki pracy, jeżeli pozwala utrzymywać tylko taką temperaturę zasilania, jaka jest aktualnie potrzebna. Rzeczywisty efekt zależy od konstrukcji pompy, temperatury dolnego źródła, przepływu, odszraniania, obciążenia częściowego i ustawień całej instalacji.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-9"><summary>Czy warto obniżać temperaturę podłogówki na noc?</summary><div class="rk-weather-faq-answer"><p>W masywnej podłodze duże i krótkie obniżenie często daje niewielki efekt, ponieważ instalacja reaguje z opóźnieniem. Późniejsze odtworzenie temperatury może wymagać wyższego parametru. Decyzję należy dostosować do bezwładności, taryfy, źródła i rytmu użytkowania budynku.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-10"><summary>Dlaczego dom przegrzewa się podczas nagłej odwilży?</summary><div class="rk-weather-faq-answer"><p>Regulator obniża temperaturę wody po wzroście temperatury zewnętrznej, ale podłoga i konstrukcja budynku nadal zawierają wcześniej zgromadzoną energię. Zjawisko mogą zwiększać zyski słoneczne, zbyt stroma krzywa, zbyt duży wpływ pokojowy albo brak algorytmu uwzględniającego prognozę.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-11"><summary>Czy jeden regulator może obsługiwać kilka obiegów?</summary><div class="rk-weather-faq-answer"><p>Tak, jeżeli ma odpowiednią liczbę modułów, wyjść i niezależnych krzywych. Każdy obieg musi mieć zdefiniowany element wykonawczy, czujnik temperatury i logikę pracy. Obsługa kilku pomieszczeń nie zawsze oznacza kilka obiegów temperaturowych.</p></div></details>
          <details class="rk-weather-faq" id="rk-weather-faq-12"><summary>Jak długo obserwować instalację po zmianie krzywej?</summary><div class="rk-weather-faq-answer"><p>W wodnym ogrzewaniu podłogowym zwykle warto odczekać co najmniej 24–72 godziny przy możliwie stabilnej pogodzie. Dokładny czas zależy od masy jastrychu, izolacji, konstrukcji budynku, zysków słonecznych i wielkości wykonanej korekty.</p></div></details>
        </div>

        <div class="rk-weather-sources" aria-label="Źródła techniczne opracowania">
          <strong>Źródła i podstawa techniczna opracowania</strong>
          Sterowanie systemami płaszczyznowymi: <a href="https://www.iso.org/standard/64999.html" target="_blank" rel="noopener noreferrer">ISO 11855-6:2018 – Control</a> wraz z poprawką z 2023 roku. Projektowanie i wymiarowanie: <a href="https://www.iso.org/standard/74684.html" target="_blank" rel="noopener noreferrer">ISO 11855-3:2021</a>. Parametry obliczeń energetycznych systemów płaszczyznowych: <a href="https://www.iso.org/standard/69830.html" target="_blank" rel="noopener noreferrer">ISO 11855-7:2019</a>. Dane eksploatacyjne dotyczące optymalizacji krzywych pomp ciepła: <a href="https://doi.org/10.1016/j.apenergy.2025.125725" target="_blank" rel="noopener noreferrer">Applied Energy, 2025 – Optimization of heating curves for heat pumps in operation</a>. Linki zewnętrzne prowadzą wyłącznie do źródeł normatywnych i naukowych oraz otwierają się w nowej karcie.
        </div>
      </section>

      <section class="rk-weather-cta" aria-label="Zamówienie projektu ogrzewania podłogowego">
        <h3>Regulator może realizować tylko takie parametry, jakie wcześniej policzono</h3>
        <p>Projekt określa obciążenia cieplne pomieszczeń, projektową temperaturę zasilania i powrotu, rozstawy i długości pętli, wymagane przepływy, opory hydrauliczne oraz nastawy rozdzielacza. Dopiero na tej podstawie można świadomie ustawić krzywą pogodową i limity automatyki.</p>
        <a class="rk-weather-cta-link" href="https://projekt-ogrzewania.pl/produkt/projekt-instalacji-ogrzewania-podlogowego-podlogowki/">Zamów projekt instalacji ogrzewania podłogowego</a>
        <small>Odnośnik prowadzi do strony sprzedażowej Projekt-Ogrzewania.pl – serwisu należącego do autora artykułu.</small>
      </section>

      <aside class="rk-weather-author-box" aria-label="Informacje o autorze" itemprop="author" itemscope itemtype="https://schema.org/Person">
        <div class="rk-weather-author-head">
          <div><h3>Autor opracowania</h3><p>Praktyka projektowa, wiedza techniczna i język zrozumiały dla inwestora.</p></div>
          <div class="rk-weather-author-mark">E-E-A-T • HVAC</div>
        </div>
        <div class="rk-weather-author-main">
          <div class="rk-weather-author-profile">
            <img decoding="async" src="https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp" alt="Robert Kucharski – projektant instalacji sanitarnych" width="174" height="174" loading="lazy" itemprop="image">
            <h4 itemprop="name">Robert Kucharski</h4>
            <span class="rk-weather-author-role" itemprop="jobTitle">Projektant instalacji sanitarnych • specjalista systemów HVAC i ogrzewania podłogowego</span>
          </div>
          <div class="rk-weather-author-content">
            <div class="rk-weather-quote"><blockquote>„Regulator pogodowy nie powinien zgadywać, jakiej temperatury potrzebuje dom. Jego krzywa ma wynikać z projektowego punktu pracy instalacji, a później być spokojnie dostrojona na podstawie zachowania budynku.”</blockquote></div>
            <div class="rk-weather-tabs">
              <div class="rk-weather-tab-buttons" role="tablist" aria-label="Informacje o autorze">
                <button class="rk-weather-tab-button is-active" type="button" role="tab" aria-selected="true" aria-controls="rk-weather-tab-about" id="rk-weather-tab-about-button" data-weather-author-tab="about">O autorze</button>
                <button class="rk-weather-tab-button" type="button" role="tab" aria-selected="false" aria-controls="rk-weather-tab-exp" id="rk-weather-tab-exp-button" data-weather-author-tab="exp">Doświadczenie</button>
                <button class="rk-weather-tab-button" type="button" role="tab" aria-selected="false" aria-controls="rk-weather-tab-sites" id="rk-weather-tab-sites-button" data-weather-author-tab="sites">Portale</button>
              </div>
              <div class="rk-weather-tab-panel is-active" id="rk-weather-tab-about" role="tabpanel" aria-labelledby="rk-weather-tab-about-button" data-weather-author-panel="about">
                <p itemprop="description">Specjalizuję się w projektowaniu wodnego ogrzewania podłogowego, obliczeniach obciążenia cieplnego i hydrauliki instalacji. W opracowaniach łączę parametry źródła ciepła, charakterystykę podłogi, przepływy oraz automatykę w jeden możliwy do wykonania układ.</p>
              </div>
              <div class="rk-weather-tab-panel" id="rk-weather-tab-exp" role="tabpanel" aria-labelledby="rk-weather-tab-exp-button" data-weather-author-panel="exp" hidden>
                <p>Doświadczenie obejmuje ponad 1000 projektów i analiz instalacji przygotowywanych dla budynków w całej Polsce. Dokumentacje uwzględniają temperatury projektowe, rozstawy i długości pętli, opory hydrauliczne, nastawy rozdzielaczy, pompy obiegowe, źródła niskotemperaturowe oraz strategię sterowania.</p>
              </div>
              <div class="rk-weather-tab-panel" id="rk-weather-tab-sites" role="tabpanel" aria-labelledby="rk-weather-tab-sites-button" data-weather-author-panel="sites" hidden>
                <p>Jestem właścicielem trzech serwisów branżowych. Podaję to jawnie, aby czytelnik znał autorstwo publikacji i kontekst linkowania.</p>
                <div class="rk-weather-portals">
                  <a href="https://projekt-ogrzewania.pl/">Projekt-Ogrzewania.pl</a>
                  <a href="https://remont.biz.pl/" target="_blank" rel="noopener noreferrer">Remont.biz.pl</a>
                  <a href="https://sobir.pl/" target="_blank" rel="noopener noreferrer">Sobir.pl</a>
                </div>
              </div>
            </div>
          </div>
        </div>
      </aside>
    </div>
  </div>
</article>

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebPage",
      "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/",
      "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/",
      "name": "Sterownik pogodowy do ogrzewania podłogowego – jak działa regulator i jak go ustawić?",
      "description": "Techniczny przewodnik po regulatorach pogodowych: działanie, dobór, czujniki, schematy, sygnały sterujące, ustawienie krzywej i współpraca z pompą ciepła.",
      "inLanguage": "pl-PL",
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/#website" },
      "mainEntity": { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#article" }
    },
    {
      "@type": "TechArticle",
      "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#article",
      "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/",
      "mainEntityOfPage": { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/" },
      "headline": "Sterownik pogodowy do ogrzewania podłogowego – jak działa regulator i jak go ustawić?",
      "alternativeHeadline": "Regulator pogodowy do podłogówki – działanie, dobór, czujniki i ustawienie krzywej",
      "description": "Techniczny przewodnik po regulatorach pogodowych: działanie, dobór, czujniki, schematy, sygnały sterujące, ustawienie krzywej i współpraca z pompą ciepła.",
      "dateModified": "2026-08-24T18:00:00+02:00",
      "inLanguage": "pl-PL",
      "author": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "keywords": [
        "sterownik pogodowy do ogrzewania podłogowego",
        "regulator pogodowy",
        "jak działa sterownik pogodowy",
        "jak ustawić regulator pogodowy",
        "sterownik pogodowy a termostat pokojowy",
        "krzywa grzewcza ogrzewania podłogowego",
        "regulator pogodowy do pompy ciepła",
        "czujnik temperatury zewnętrznej",
        "sterowanie zaworem mieszającym",
        "automatyka ogrzewania podłogowego"
      ],
      "articleSection": [
        "Automatyka grzewcza",
        "Ogrzewanie podłogowe",
        "Pompy ciepła",
        "Regulacja instalacji",
        "Projektowanie instalacji"
      ],
      "about": [
        { "@type": "DefinedTerm", "name": "Sterownik pogodowy" },
        { "@type": "DefinedTerm", "name": "Regulator pogodowy" },
        { "@type": "DefinedTerm", "name": "Krzywa grzewcza" },
        { "@type": "DefinedTerm", "name": "Temperatura zasilania" },
        { "@type": "DefinedTerm", "name": "Czujnik temperatury zewnętrznej" },
        { "@type": "DefinedTerm", "name": "Zawór mieszający" }
      ],
      "citation": [
        { "@type": "CreativeWork", "name": "ISO 11855-6:2018 – Control", "url": "https://www.iso.org/standard/64999.html" },
        { "@type": "CreativeWork", "name": "ISO 11855-3:2021 – Design and dimensioning", "url": "https://www.iso.org/standard/74684.html" },
        { "@type": "CreativeWork", "name": "ISO 11855-7:2019 – Input parameters for energy calculation", "url": "https://www.iso.org/standard/69830.html" },
        { "@type": "ScholarlyArticle", "name": "Optimization of heating curves for heat pumps in operation", "url": "https://doi.org/10.1016/j.apenergy.2025.125725" }
      ],
      "hasPart": [
        { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#simulator" },
        { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#howto" },
        { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#faq" }
      ]
    },
    {
      "@type": "HowTo",
      "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#howto",
      "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-ustawienie",
      "name": "Jak ustawić sterownik pogodowy do ogrzewania podłogowego?",
      "description": "Sześć etapów ustawienia regulatora pogodowego na podstawie danych projektowych i obserwacji budynku.",
      "inLanguage": "pl-PL",
      "author": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#article" },
      "step": [
        { "@type": "HowToStep", "position": 1, "name": "Ustal projektowy punkt pracy", "text": "Określ projektową temperaturę zewnętrzną, temperaturę pomieszczeń oraz parametry zasilania i powrotu wynikające z obliczonej mocy podłogi.", "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-step-1" },
        { "@type": "HowToStep", "position": 2, "name": "Wprowadź ciepły i zimny punkt krzywej", "text": "Zimny punkt dopasuj do parametrów projektu przy temperaturze obliczeniowej, a ciepły do granicy ogrzewania i minimalnego stabilnego parametru układu.", "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-step-2" },
        { "@type": "HowToStep", "position": 3, "name": "Ustaw limity bezpieczeństwa", "text": "Ogranicz maksymalną temperaturę zasilania zgodnie z projektem, konstrukcją podłogi i zastosowaną okładziną.", "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-step-3" },
        { "@type": "HowToStep", "position": 4, "name": "Otwórz przepływy i ustabilizuj hydraulikę", "text": "Sprawdź projektowe przepływy pętli, pracę pompy i stan siłowników przed oceną krzywej grzewczej.", "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-step-4" },
        { "@type": "HowToStep", "position": 5, "name": "Obserwuj pełne okresy pracy", "text": "Po jednej korekcie obserwuj układ przez co najmniej 24–72 godziny, zależnie od masy podłogi i warunków pogodowych.", "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-step-5" },
        { "@type": "HowToStep", "position": 6, "name": "Koryguj właściwy parametr", "text": "Stały błąd koryguj poziomem, a błąd rosnący wraz z mrozem nachyleniem lub zimnym punktem. Problemy jednego pomieszczenia diagnozuj lokalnie.", "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-step-6" }
      ]
    },
    {
      "@type": "WebApplication",
      "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#simulator",
      "name": "Interaktywny symulator regulatora pogodowego",
      "description": "Edukacyjny model dwupunktowej krzywej grzewczej pokazujący zależność temperatury zasilania od temperatury zewnętrznej, przesunięcia i limitu.",
      "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-lab",
      "applicationCategory": "UtilitiesApplication",
      "operatingSystem": "Any",
      "browserRequirements": "JavaScript",
      "isAccessibleForFree": true,
      "inLanguage": "pl-PL",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#article" }
    },
    {
      "@type": "FAQPage",
      "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#faq",
      "url": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#rk-weather-faq",
      "inLanguage": "pl-PL",
      "isPartOf": { "@id": "https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/#article" },
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Co to jest sterownik pogodowy?",
          "acceptedAnswer": { "@type": "Answer", "text": "Sterownik pogodowy to regulator, który na podstawie temperatury zewnętrznej oraz zapisanej krzywej wyznacza wymaganą temperaturę zasilania instalacji. Może przekazywać tę wartość do źródła ciepła albo realizować ją przez sterowanie zaworem mieszającym." }
        },
        {
          "@type": "Question",
          "name": "Czym sterownik pogodowy różni się od termostatu pokojowego?",
          "acceptedAnswer": { "@type": "Answer", "text": "Regulator pogodowy reaguje przede wszystkim na temperaturę zewnętrzną i zmienia parametr wody. Termostat pokojowy porównuje temperaturę pomieszczenia z nastawą i wysyła żądanie, korektę albo polecenie dla siłownika." }
        },
        {
          "@type": "Question",
          "name": "Czy sterownik pogodowy jest potrzebny do ogrzewania podłogowego?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie jest warunkiem fizycznego działania instalacji, ale jest bardzo użytecznym sposobem dopasowania temperatury zasilania do zmiennych strat budynku. Szczególne znaczenie ma w systemach o dużej bezwładności i ze źródłami korzystającymi z niskiej temperatury wody." }
        },
        {
          "@type": "Question",
          "name": "Jaką krzywą grzewczą ustawić do podłogówki?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie istnieje jedna krzywa odpowiednia dla wszystkich domów i urządzeń. Punktem startowym powinny być projektowa temperatura zewnętrzna oraz projektowa temperatura zasilania. Oznaczenia nachylenia różnią się między regulatorami." }
        },
        {
          "@type": "Question",
          "name": "Gdzie zamontować czujnik temperatury zewnętrznej?",
          "acceptedAnswer": { "@type": "Answer", "text": "Należy zastosować lokalizację i sposób montażu wskazane w dokumentacji regulatora. Miejsce powinno być reprezentatywne, bez bezpośredniego słońca i wpływu okien, drzwi, wyrzutni wentylacji, agregatów, kominów oraz innych lokalnych źródeł ciepła." }
        },
        {
          "@type": "Question",
          "name": "Czy regulator pogodowy może działać bez czujnika pokojowego?",
          "acceptedAnswer": { "@type": "Answer", "text": "Tak. Podstawą regulacji pogodowej jest czujnik zewnętrzny i krzywa. Czujnik pokojowy może zapewniać korektę zysków słonecznych i wewnętrznych, ale jego wpływ powinien być dopasowany do bezwładności instalacji." }
        },
        {
          "@type": "Question",
          "name": "Czy podłogówka zawsze potrzebuje zaworu mieszającego?",
          "acceptedAnswer": { "@type": "Answer", "text": "Nie. Jeżeli pompa ciepła lub kocioł bezpośrednio wytwarza wymaganą niską temperaturę dla jednego obiegu, dodatkowy mieszacz może być zbędny. Jest uzasadniony między innymi wtedy, gdy podłogówka stanowi oddzielny obieg o niższej temperaturze niż pozostałe odbiorniki." }
        },
        {
          "@type": "Question",
          "name": "Czy regulator pogodowy poprawia COP pompy ciepła?",
          "acceptedAnswer": { "@type": "Answer", "text": "Może poprawić warunki pracy, jeżeli pozwala utrzymywać tylko taką temperaturę zasilania, jaka jest aktualnie potrzebna. Rzeczywisty efekt zależy od konstrukcji pompy, temperatury dolnego źródła, przepływu, odszraniania i obciążenia częściowego." }
        },
        {
          "@type": "Question",
          "name": "Czy warto obniżać temperaturę podłogówki na noc?",
          "acceptedAnswer": { "@type": "Answer", "text": "W masywnej podłodze duże i krótkie obniżenie często daje niewielki efekt, ponieważ instalacja reaguje z opóźnieniem. Późniejsze odtworzenie temperatury może wymagać wyższego parametru." }
        },
        {
          "@type": "Question",
          "name": "Dlaczego dom przegrzewa się podczas nagłej odwilży?",
          "acceptedAnswer": { "@type": "Answer", "text": "Regulator obniża temperaturę wody po wzroście temperatury zewnętrznej, ale podłoga i konstrukcja budynku nadal zawierają wcześniej zgromadzoną energię. Zjawisko mogą zwiększać zyski słoneczne, zbyt stroma krzywa albo brak algorytmu uwzględniającego prognozę." }
        },
        {
          "@type": "Question",
          "name": "Czy jeden regulator może obsługiwać kilka obiegów?",
          "acceptedAnswer": { "@type": "Answer", "text": "Tak, jeżeli ma odpowiednią liczbę modułów, wyjść i niezależnych krzywych. Każdy obieg musi mieć zdefiniowany element wykonawczy, czujnik temperatury i logikę pracy." }
        },
        {
          "@type": "Question",
          "name": "Jak długo obserwować instalację po zmianie krzywej?",
          "acceptedAnswer": { "@type": "Answer", "text": "W wodnym ogrzewaniu podłogowym zwykle warto odczekać co najmniej 24–72 godziny przy możliwie stabilnej pogodzie. Dokładny czas zależy od masy jastrychu, izolacji, konstrukcji budynku i wielkości korekty." }
        }
      ]
    },
    {
      "@type": "Person",
      "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1",
      "name": "Robert Kucharski",
      "url": "https://projekt-ogrzewania.pl/author/admin3399/",
      "image": {
        "@type": "ImageObject",
        "url": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
        "contentUrl": "https://projekt-ogrzewania.pl/wp-content/uploads/2026/04/PO-Robert-Kucharski.webp",
        "caption": "Robert Kucharski – projektant instalacji sanitarnych i specjalista HVAC"
      },
      "jobTitle": "Projektant instalacji sanitarnych i specjalista branży budowlano-instalacyjnej",
      "description": "Projektant instalacji sanitarnych, specjalista ogrzewania podłogowego, hydrauliki instalacji, obliczeń obciążenia cieplnego i systemów HVAC. Właściciel serwisów Projekt-Ogrzewania.pl, Remont.biz.pl i Sobir.pl.",
      "worksFor": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "knowsAbout": [
        "HVAC",
        "ogrzewanie podłogowe",
        "sterowanie pogodowe",
        "automatyka grzewcza",
        "projektowanie instalacji sanitarnych",
        "hydraulika instalacji grzewczych",
        "obliczenia OZC",
        "pompy ciepła"
      ],
      "sameAs": [
        "https://projekt-ogrzewania.pl/",
        "https://remont.biz.pl/",
        "https://sobir.pl/",
        "https://www.facebook.com/projektogrzewaniapl/",
        "https://www.facebook.com/robert.kucharski.budowa.bez.sciemy",
        "https://www.linkedin.com/in/robert-kucharski-38069b48/"
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://projekt-ogrzewania.pl/#organization",
      "name": "Projekt Ogrzewania",
      "url": "https://projekt-ogrzewania.pl/",
      "founder": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "sameAs": [
        "https://www.facebook.com/projektogrzewaniapl/"
      ]
    },
    {
      "@type": "WebSite",
      "@id": "https://projekt-ogrzewania.pl/#website",
      "url": "https://projekt-ogrzewania.pl/",
      "name": "Projekt Ogrzewania",
      "publisher": { "@id": "https://projekt-ogrzewania.pl/#organization" },
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "WebSite",
      "@id": "https://remont.biz.pl/#website",
      "url": "https://remont.biz.pl/",
      "name": "Remont.biz.pl",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "inLanguage": "pl-PL"
    },
    {
      "@type": "WebSite",
      "@id": "https://sobir.pl/#website",
      "url": "https://sobir.pl/",
      "name": "Sobir.pl",
      "creator": { "@id": "https://projekt-ogrzewania.pl/#/schema/person/8f64aaec51c6581f1ab55e3d7f3a82d1" },
      "inLanguage": "pl-PL"
    }
  ]
}
</script>

<script>
  (function () {
    "use strict";

    var root = document.getElementById("rk-weather-guide");
    if (!root) return;

    var progress = root.querySelector(".rk-weather-progress");
    var ticking = false;

    function updateProgress() {
      var rect = root.getBoundingClientRect();
      var viewport = window.innerHeight || document.documentElement.clientHeight;
      var total = Math.max(root.offsetHeight - viewport, 1);
      var passed = Math.min(Math.max(-rect.top, 0), total);
      var value = Math.min(100, Math.max(0, passed / total * 100));
      if (progress) progress.style.width = value.toFixed(2) + "%";
      ticking = false;
    }

    function requestProgress() {
      if (!ticking) {
        window.requestAnimationFrame(updateProgress);
        ticking = true;
      }
    }

    root.querySelectorAll('a[href^="#"]').forEach(function (link) {
      link.addEventListener("click", function (event) {
        var selector = link.getAttribute("href");
        if (!selector || selector === "#") return;
        var target = root.querySelector(selector);
        if (!target) return;
        event.preventDefault();
        target.scrollIntoView({
          behavior: window.matchMedia("(prefers-reduced-motion: reduce)").matches ? "auto" : "smooth",
          block: "start"
        });
      });
    });

    var flowTitles = [
      "1. Pomiar temperatury zewnętrznej",
      "2. Wyznaczenie temperatury z krzywej",
      "3. Zastosowanie korekt i limitów",
      "4. Wykonanie polecenia regulatora",
      "5. Kontrola temperatury rzeczywistej"
    ];

    var flowTexts = [
      "Czujnik przekazuje regulatorowi temperaturę reprezentatywną dla otoczenia budynku. Błąd pomiaru wywołany słońcem, otwartym oknem albo wyrzutnią powietrza trafia bezpośrednio do algorytmu i zniekształca temperaturę zasilania.",
      "Regulator odczytuje z krzywej wartość zadaną temperatury wody. Może korzystać z dwóch punktów, nachylenia i poziomu, numerowanej charakterystyki albo modelu adaptacyjnego. Fizyczny cel jest ten sam: dopasować moc odbiorników do strat budynku.",
      "Do wartości bazowej mogą zostać dodane: przesunięcie równoległe, korekta pokojowa, harmonogram, limit maksymalny, temperatura wyłączenia ogrzewania i funkcje ochronne. Ważne, aby kolejne korekty nie dublowały się i nie prowadziły do niekontrolowanego podnoszenia parametru.",
      "W układzie bezpośrednim regulator przekazuje wartość zadaną do pompy ciepła lub kotła. W obiegu mieszanym steruje siłownikiem zaworu i pompą. Styk ON/OFF, sygnał trójpunktowy, 0–10 V i magistrala cyfrowa niosą różny zakres informacji.",
      "Czujnik zasilania pokazuje, czy zadana temperatura została osiągnięta. Czujnik pokojowy może korygować wpływ słońca i zysków wewnętrznych, a odczyt powrotu wspiera diagnostykę. Brak komfortu nie oznacza automatycznie błędu regulatora – trzeba sprawdzić także moc i przepływy."
    ];

    var flowBox = root.querySelector("[data-rk-weather-flow]");
    if (flowBox) {
      var flowButtons = flowBox.querySelectorAll("[data-weather-step]");
      var flowTitle = flowBox.querySelector("[data-weather-flow-title]");
      var flowText = flowBox.querySelector("[data-weather-flow-text]");

      flowButtons.forEach(function (button) {
        button.addEventListener("click", function () {
          var index = Number(button.getAttribute("data-weather-step"));
          flowButtons.forEach(function (item) {
            item.classList.remove("is-active");
            item.setAttribute("aria-pressed", "false");
          });
          button.classList.add("is-active");
          button.setAttribute("aria-pressed", "true");
          if (flowTitle) flowTitle.textContent = flowTitles[index] || flowTitles[0];
          if (flowText) flowText.textContent = flowTexts[index] || flowTexts[0];
        });
      });
    }

    var fields = {
      coldOut: root.querySelector("#rk-weather-cold-out"),
      coldFlow: root.querySelector("#rk-weather-cold-flow"),
      warmOut: root.querySelector("#rk-weather-warm-out"),
      warmFlow: root.querySelector("#rk-weather-warm-flow"),
      nowOut: root.querySelector("#rk-weather-now-out"),
      shift: root.querySelector("#rk-weather-shift"),
      limit: root.querySelector("#rk-weather-limit")
    };

    var outputs = {
      coldOut: root.querySelector("#rk-weather-cold-out-value"),
      coldFlow: root.querySelector("#rk-weather-cold-flow-value"),
      warmOut: root.querySelector("#rk-weather-warm-out-value"),
      warmFlow: root.querySelector("#rk-weather-warm-flow-value"),
      nowOut: root.querySelector("#rk-weather-now-out-value"),
      shift: root.querySelector("#rk-weather-shift-value"),
      limit: root.querySelector("#rk-weather-limit-value"),
      resultFlow: root.querySelector("#rk-weather-result-flow"),
      resultSlope: root.querySelector("#rk-weather-result-slope"),
      resultMode: root.querySelector("#rk-weather-result-mode"),
      status: root.querySelector("#rk-weather-status")
    };

    var curvePath = root.querySelector("#rk-weather-curve");
    var curveDot = root.querySelector("#rk-weather-dot");
    var guideX = root.querySelector("#rk-weather-guide-x");
    var guideY = root.querySelector("#rk-weather-guide-y");

    function numberValue(field) {
      return field ? Number(field.value) : 0;
    }

    function pl(value, digits) {
      return Number(value).toLocaleString("pl-PL", {
        minimumFractionDigits: digits,
        maximumFractionDigits: digits
      });
    }

    function signed(value, suffix) {
      var sign = value > 0 ? "+" : value < 0 ? "−" : "";
      return sign + pl(Math.abs(value), value % 1 ? 1 : 0) + suffix;
    }

    function xCoord(outdoor) {
      return 62 + ((outdoor + 25) / 45) * 558;
    }

    function yCoord(flow) {
      var clamped = Math.max(25, Math.min(50, flow));
      return 315 - ((clamped - 25) / 25) * 290;
    }

    function calculatedFlow(outdoor, coldOut, coldFlow, warmOut, warmFlow, shift) {
      return warmFlow + ((warmOut - outdoor) / (warmOut - coldOut)) * (coldFlow - warmFlow) + shift;
    }

    function updateSimulator() {
      if (!fields.coldOut) return;

      var coldOut = numberValue(fields.coldOut);
      var coldFlow = numberValue(fields.coldFlow);
      var warmOut = numberValue(fields.warmOut);
      var warmFlow = numberValue(fields.warmFlow);
      var nowOut = numberValue(fields.nowOut);
      var shift = numberValue(fields.shift);
      var limit = numberValue(fields.limit);
      var waterSlope = (coldFlow - warmFlow) / (warmOut - coldOut);
      var raw = calculatedFlow(nowOut, coldOut, coldFlow, warmOut, warmFlow, shift);
      var active = nowOut < warmOut;
      var limited = active ? raw > limit : false;
      var result = Math.min(raw, limit);

      outputs.coldOut.textContent = signed(coldOut, "°C");
      outputs.coldFlow.textContent = pl(coldFlow, coldFlow % 1 ? 1 : 0) + "°C";
      outputs.warmOut.textContent = signed(warmOut, "°C");
      outputs.warmFlow.textContent = pl(warmFlow, warmFlow % 1 ? 1 : 0) + "°C";
      outputs.nowOut.textContent = signed(nowOut, "°C");
      outputs.shift.textContent = signed(shift, " K");
      outputs.limit.textContent = pl(limit, 0) + "°C";
      outputs.resultFlow.textContent = active ? pl(result, 1) + "°C" : "wyłączone";
      outputs.resultSlope.textContent = pl(waterSlope, 3) + " K";
      outputs.resultMode.textContent = !active ? "Tryb letni" : limited ? "Limit" : "Grzanie";

      if (!active) {
        outputs.status.textContent = "Temperatura zewnętrzna osiągnęła lub przekroczyła ustawioną granicę ogrzewania. Model pokazuje tryb letni; rzeczywisty regulator może dodatkowo stosować histerezę i opóźnienie.";
      } else if (limited) {
        outputs.status.textContent = "Wartość obliczona wynosi " + pl(raw, 1) + "°C, ale regulator ogranicza zasilanie do " + pl(limit, 0) + "°C. Jeżeli przy mrozie brakuje mocy, problemu nie należy rozwiązywać przez przypadkowe usunięcie zabezpieczenia.";
      } else {
        outputs.status.textContent = "Przy " + signed(nowOut, "°C") + " na zewnątrz model wyznacza około " + pl(result, 1) + "°C zasilania. Wartość nie przekracza ustawionego limitu.";
      }

      var path = [];
      var end = Math.min(warmOut, 20);
      for (var outdoor = -25; outdoor <= end; outdoor += 0.5) {
        var flow = Math.min(calculatedFlow(outdoor, coldOut, coldFlow, warmOut, warmFlow, shift), limit);
        path.push((path.length ? "L" : "M") + xCoord(outdoor).toFixed(1) + " " + yCoord(flow).toFixed(1));
      }
      if (curvePath) curvePath.setAttribute("d", path.join(" "));

      var dotFlow = active ? result : warmFlow + shift;
      var dotX = xCoord(Math.max(-25, Math.min(20, nowOut)));
      var dotY = yCoord(dotFlow);
      if (curveDot) {
        curveDot.setAttribute("cx", dotX.toFixed(1));
        curveDot.setAttribute("cy", dotY.toFixed(1));
      }
      if (guideX) {
        guideX.setAttribute("x1", dotX.toFixed(1));
        guideX.setAttribute("x2", dotX.toFixed(1));
        guideX.setAttribute("y1", dotY.toFixed(1));
        guideX.setAttribute("y2", "315");
      }
      if (guideY) {
        guideY.setAttribute("x1", "62");
        guideY.setAttribute("x2", dotX.toFixed(1));
        guideY.setAttribute("y1", dotY.toFixed(1));
        guideY.setAttribute("y2", dotY.toFixed(1));
      }
    }

    var presets = {
      floor: { coldOut: -20, coldFlow: 35, warmOut: 15, warmFlow: 25, nowOut: 0, shift: 0, limit: 40 },
      heatpump: { coldOut: -20, coldFlow: 34, warmOut: 15, warmFlow: 24, nowOut: 0, shift: 0, limit: 38 },
      modernized: { coldOut: -20, coldFlow: 42, warmOut: 15, warmFlow: 25, nowOut: 0, shift: 0, limit: 45 }
    };

    var presetButtons = root.querySelectorAll("[data-weather-preset]");
    presetButtons.forEach(function (button) {
      button.addEventListener("click", function () {
        var name = button.getAttribute("data-weather-preset");
        var preset = presets[name];
        if (!preset) return;
        Object.keys(preset).forEach(function (key) {
          if (fields[key]) fields[key].value = preset[key];
        });
        presetButtons.forEach(function (item) { item.classList.remove("is-active"); });
        button.classList.add("is-active");
        updateSimulator();
      });
    });

    Object.keys(fields).forEach(function (key) {
      if (!fields[key]) return;
      fields[key].addEventListener("input", function () {
        presetButtons.forEach(function (item) { item.classList.remove("is-active"); });
        updateSimulator();
      });
    });
    updateSimulator();

    var tabButtons = root.querySelectorAll("[data-weather-author-tab]");
    var tabPanels = root.querySelectorAll("[data-weather-author-panel]");

    tabButtons.forEach(function (button) {
      button.addEventListener("click", function () {
        var name = button.getAttribute("data-weather-author-tab");
        tabButtons.forEach(function (item) {
          item.classList.remove("is-active");
          item.setAttribute("aria-selected", "false");
        });
        tabPanels.forEach(function (panel) {
          var active = panel.getAttribute("data-weather-author-panel") === name;
          panel.classList.toggle("is-active", active);
          panel.hidden = !active;
        });
        button.classList.add("is-active");
        button.setAttribute("aria-selected", "true");
      });
    });

    window.addEventListener("scroll", requestProgress, { passive: true });
    window.addEventListener("resize", requestProgress, { passive: true });
    updateProgress();
  }());
</script>
<p>Artykuł <a href="https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/">Sterownik (regulator) pogodowy.</a> pochodzi z serwisu <a href="https://projekt-ogrzewania.pl">Projekt Ogrzewania</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://projekt-ogrzewania.pl/sterownik-regulator-pogodowy/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
