tzcd/Berechnung_Solar
0
1import streamlit as st2st.text("Berechnung Solar")3 4check1 = st.radio("Technologie:", ["Unbelüftete Module",5 "Mäßig belüftete Module",6 "Stark belüftete/freistehende Module"])7 8check2 = st.radio("Art:", ["Kristallin",9 "Amorph",10 "Organisch"])11if check2 == "Kristallin":12 check3 = st.radio("Zelltyp:", ["Monokristallin (Bis 2016)",13 "Monokristallin (Ab 2017)",14 "Polykristallin (Bis 2016)",15 "Polykristallin (Ab 2017)"])16 if check3 == "Monokristallin (Bis 2016)":17 N = 0.13518 elif check3 == "Monokristallin (Ab 2017)":19 N = 0.227420 elif check3 == "Polykristallin (Bis 2016)":21 N = 0.12522 elif check3 == "Polykristallin (Ab 2017)":23 N = 0.16624else:25 N = st.number_input("Systemleistungsfaktor von Hersteller")26 27NumberPR = {"Unbelüftete Module": {"Kristallin": 0.7,28 "Amorph": 0.75,29 "Organisch": 0.9},30 "Mäßig belüftete Module": {"Kristallin": 0.75,31 "Amorph": 0.77,32 "Organisch": 0.89},33 "Stark belüftete/freistehende Module": {"Kristallin": 0.8,34 "Amorph": 0.8,35 "Organisch": 0.88}}36 37#PR = Performance Ratio38PR = (NumberPR[check1][check2])39 40A = st.number_input("Nutzbare Modulfläche (m²):")41 42#Pmmp = Installierbare Photovoltaikleistung43Pmmp = A * N * 144 45Hsolar = st.number_input("Jährliche Solarstralung in kWh / m² * a:")46fneigung = st.number_input("Korrekturfaktor durch Neigung und Ausrichtung (Dezimal 80% = 0.8):")47 48#Eelek = Ertrag der Photovoltaikanlage49Eelek = Hsolar * fneigung * Pmmp * PR / 150 51#Espez = Spezifischer Ertrag52Espez = Eelek / Pmmp53 54st.write("Installierbare Photovoltaikleistung: " + str(round(Pmmp, 3)) + "kW")55st.write("Ertrag der Photovoltaikanlage: " + str(round(Eelek, 3)) + "kWh / a")56st.write("Spezifischer Ertrag: " + str(round(Espez, 3)) + "kWh / kW a")