Tabelle A14

This commit is contained in:
Jens Cornelsen
2025-02-03 12:35:14 +01:00
parent 9b2cac3343
commit 96799edc16
5 changed files with 122 additions and 22 deletions

View File

@@ -25,10 +25,15 @@ $: result = A14BerechnungAufwandszahlenMittlereBelastung();
<tr>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Anlage:</th>
<th colspan="3" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100"></th>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Q<sub>h,b</sub> [kWh/a]<br>aus Tabelle A.12:</th>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100">{Math.round(result.gesamtNutzenergieHeizung)}</th>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center">t<sub>h,m</sub> [h/a]<br>aus Tabelle A.12:</th>
<th colspan="2" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100"></th>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100">{Math.round(result.heizstundenGesamt)}</th>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center">Φ<sub>h,max</sub> [W]<br>aus Tabelle A.6:</th>
<th colspan="2" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100"></th>
<th colspan="1" class="border border-gray-300 px-4 py-2 text-center bg-yellow-100">{Math.round(result.maximaleHeizlast)}</th>
</tr>
<tr>
<th colspan="10" class="px-4 py-2 text-center"></th>
</tr>
<tr>
<th class="border border-gray-300 px-4 py-2"></th>
@@ -40,7 +45,7 @@ $: result = A14BerechnungAufwandszahlenMittlereBelastung();
</tr>
<tr>
<th class="border border-gray-300 px-4 py-2"></th>
<th class="border border-gray-300 px-4 py-2">A<sub>h,m</sub> / A<br>[%]<br>aus Planung</th>
<th class="border border-gray-300 px-4 py-2">A<sub>h,m</sub> / A<br>aus Planung</th>
<th class="border border-gray-300 px-4 py-2 text-center">β<sub>h,ce</sub> =<br>(Q<sub>h,b</sub> / t<sub>h,m</sub> · Φ<sub>h,max</sub>) · 1000</th>
<th class="border border-gray-300 px-4 py-2 text-center">e<sub>h,ce</sub><br>aus Tabellen<br>20 - 25</th>
<th class="border border-gray-300 px-4 py-2 text-center">β<sub>h,d</sub> =<br>β<sub>h,ce</sub> · e<sub><sub>h,ce</sub> · f<sub>hydr</sub></th>
@@ -52,29 +57,22 @@ $: result = A14BerechnungAufwandszahlenMittlereBelastung();
</tr>
</thead>
<tbody>
<tr class="h-10">
<td class="border border-gray-300 px-4 py-2">Heizung 1</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
{#each result.ErgebnisseAufwandsZahlenBelastungHeizung as system, index}
<tr class="text-center">
<td class="border border-gray-300 px-4 py-2">{system.Bezeichnung}</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100">{Math.round(system.VersorgteFlaeche*100)/100}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(system.mittlereBelastungUebergabeHeizung*1000)/1000}</td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100">{Math.round(system.AufwandsZahlUebergabeHeizung*1000)/1000}</td>
<td class="border-2 border-gray-600 px-4 py-2">{Math.round(system.mittlereBelastungVerteilungHeizung*1000)/1000}</td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
</tr>
<tr class="h-10">
<td class="border border-gray-300 px-4 py-2">Heizung 2</td>
<td class="border border-gray-300 px-4 py-2 bg-yellow-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
<td class="border-2 border-gray-600 px-4 py-2"></td>
<td class="border border-gray-300 px-4 py-2 bg-blue-100"></td>
{/each}
<tr>
<th colspan="10" class="px-4 py-2 text-center"></th>
</tr>
<tr>
<td class="border border-gray-300 px-4 py-2"></td>

View File

@@ -33,7 +33,7 @@
</tr>
<tr class="text-center h-10">
<th class="w-1/4 border border-gray-300 p-2 bg-yellow-100">
<input type="number" bind:value={gebaeude_aufnahme.nutzflaeche}>
{bezugsflaeche}
</th>
<th class="w-1/4 border border-gray-300 p-2 bg-blue-100">{flaechenBezogenerWaermebedarf}</th>
</tr>

View File

@@ -1,3 +1,101 @@
import { A6BerechnungWaermeTransferMaxStroemeLueftungGesamt } from "#lib/Berechnungen/BedarfsausweisWohnen/A6BerechnungWaermeTransferMaxStroemeLueftungGesamt.js";
import { A12BerechnungNutzenergiebedarfHeizung } from "#lib/Berechnungen/BedarfsausweisWohnen/A12BerechnungNutzenergiebedarfHeizung.js";
export function A14BerechnungAufwandszahlenMittlereBelastung() {
const result = A12BerechnungNutzenergiebedarfHeizung();
const heizstunden = {
Januar: result.heizstundenJanuar,
Februar: result.heizstundenFebruar,
Maerz: result.heizstundenMärz,
April: result.heizstundenApril,
Mai: result.heizstundenMai,
Juni: result.heizstundenJuni,
Juli: result.heizstundenJuli,
August: result.heizstundenAugust,
September: result.heizstundenSeptember,
Oktober: result.heizstundenOktober,
November: result.heizstundenNovember,
Dezember: result.heizstundenDezember
};
const heizstundenGesamt = Object.values(heizstunden).reduce((acc, value) => acc + value, 0);
const gesamtNutzenergieHeizung = result.gesamtNutzenergieHeizung;
const resultMaximaleHeizlast = A6BerechnungWaermeTransferMaxStroemeLueftungGesamt();
const maximaleHeizlast = resultMaximaleHeizlast.maximaleHeizlast;
// Planungswerte aus Eingabe
const PlanungswerteUebergabeVerteilungHeizung = [
{
Bezeichnung: "Übergabe Verteilung 1 - Heizung",
VersorgteFlaeche: 0.5,
UebergabeSystem: "Heizkörper",
rohrsystem: "Zwei-Rohr-System",
rohrnetztyp: "I (Etagenringtyp)",
anzahlHeizflaechen: "bis 10",
hydraulischerAbgleich: "Abgleich statisch je Heizkörper/Heizfläche und Gruppenabgleich statisch (z.B. mit Strangregulierventil)",
raumtemperaturRegelung: "P-Regler",
ueberTemperatur: "30 K (55°C/45°C)",
waermeverlustAußenbauteile: "Radiatorposition Außenwand",
intermittierenderBetrieb: "-",
einzelraumregelSysteme: "-",
ehce0: 1.042,
Δehce1: 0.015,
Δehce2: 0.009,
Δehce3: 0,
Δehce5: 0,
Δehcehydr: 0.018,
fhydr: 1.02
},
{
Bezeichnung: "Übergabe Verteilung 2 - Heizung",
VersorgteFlaeche: 0.5,
UebergabeSystem: "Heizkörper",
rohrsystem: "Zwei-Rohr-System",
rohrnetztyp: "I (Etagenringtyp)",
anzahlHeizflaechen: "bis 10",
hydraulischerAbgleich: "Abgleich statisch je Heizkörper/Heizfläche und Gruppenabgleich statisch (z.B. mit Strangregulierventil)",
raumtemperaturRegelung: "P-Regler",
ueberTemperatur: "30 K (55°C/45°C)",
waermeverlustAußenbauteile: "Radiatorposition Außenwand",
intermittierenderBetrieb: "-",
einzelraumregelSysteme: "-",
ehce0: 1.042,
Δehce1: 0.015,
Δehce2: 0.009,
Δehce3: 0,
Δehce5: 0,
Δehcehydr: 0.018,
fhydr: 1.02
}
];
const ErgebnisseAufwandsZahlenBelastungHeizung = PlanungswerteUebergabeVerteilungHeizung.map(system => {
const mittlereBelastungUebergabeHeizung = (gesamtNutzenergieHeizung / (heizstundenGesamt * maximaleHeizlast)) * 1000 * system.VersorgteFlaeche;
const AufwandsZahlUebergabeHeizung = system.ehce0 + system.Δehce1 + system.Δehce2 + system.Δehce3 + system.Δehce5 + system.Δehcehydr;
const mittlereBelastungVerteilungHeizung = mittlereBelastungUebergabeHeizung * AufwandsZahlUebergabeHeizung * system.fhydr;
return {
Bezeichnung: system.Bezeichnung,
mittlereBelastungUebergabeHeizung: mittlereBelastungUebergabeHeizung,
VersorgteFlaeche: system.VersorgteFlaeche,
AufwandsZahlUebergabeHeizung: AufwandsZahlUebergabeHeizung,
mittlereBelastungVerteilungHeizung: mittlereBelastungVerteilungHeizung
};
});
return {
heizstundenGesamt,
maximaleHeizlast,
gesamtNutzenergieHeizung,
ErgebnisseAufwandsZahlenBelastungHeizung
}
}

View File

@@ -1,3 +1,7 @@
export function A15BerechnungAufwandszahlenGesamtErzeugernutzWaerme() {
}

View File

@@ -111,7 +111,7 @@ const belastungsgradeBereinigt = {
Dezember: belastungsgrade.Dezember / maxBelastungsgrad
};
const FaktorNutzbareWaerme = 0.082; // aus Eingabe (Tabelle 141): Verteilung, Speicherung und Erzeugung im beheizten Bereich - 55°C/45°C
const FaktorNutzbareWaerme = 0.077; // aus Eingabe (Tabelle 141): Verteilung und Erzeugung im beheizten Bereich, Speicherung im unbeheiztem Bereich - 55°C/45°C
const WaermeQuellenAnlagentechnikHeizungJanuar = (waermeSenkenBereinigtJanuar * belastungsgradeBereinigt.Januar * FaktorNutzbareWaerme) / FaktorUmrechnung.Januar;
const WaermeQuellenAnlagentechnikHeizungFebruar = (waermeSenkenBereinigtFebruar * belastungsgradeBereinigt.Februar * FaktorNutzbareWaerme) / FaktorUmrechnung.Februar;