Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Is het verdamping?

In dit experiment is er een verwarmingselement in een met water gevulde maatbeker gestopt. Elke minuut is de temperatuur van het water gemeten. Deze metingen zijn opgeslagen in tempmetingen.csv.

Verder is gegeven dat: mmaatbeker=820.8grm_{maatbeker} = 820.8 \mathrm{gr}
mmaatbeker+water,start=1292.9grm_{maatbeker + water, start} = 1292.9 \mathrm{gr}
mmaatbeker+water,eind=1274.9grm_{maatbeker + water, eind} = 1274.9 \mathrm{gr}

Het moge duidelijk zijn dat er water is ‘verdwenen’. Ook is de eindtemperatuur van het water niet gelijk aan een proces waarbij verdamping en eventuele warmteverliezen niet meegenomen worden.

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit

data = np.loadtxt("tempmetingen.csv", delimiter=";", skiprows=1)


t = data[:,0]
T = data[:,1]

def fitfunctie(t, T_inf, T0, k):
    return T_inf - (T_inf - T0) * np.exp(-k * t)

    
popt, pcov = curve_fit(fitfunctie, t, T, )
print(popt)

x = np.linspace(0,60,10000)
y = fitfunctie(x, *popt)

plt.figure()
plt.plot(t, T, '.', ms=4, label = "Data")
plt.plot(x,y,"r--", label ="fitfunctie")
plt.xlabel("tijd (min)")
plt.ylabel("Temp (graden)")
plt.legend()
plt.show()
[1.00813700e+02 1.99081124e+01 2.10048295e-02]
<Figure size 640x480 with 1 Axes>

aannames:

Water is homogeen gemengd

Warmtecapaciteit van beker wordt verwaarloosd

Vermogen verwarmingselement is constant

Geen warmteverlies (of: verlies verklaart afwijking)

Kookpunt ≈ 100 °C

import numpy as np
data = np.loadtxt("tempmetingen.csv", delimiter=";", skiprows=1)
t = data[:,0]
T = data[:,1]
m_beaker = 820.8/1000.0
m_start_total = 1292.9/1000.0
m_end_total = 1274.9/1000.0
m_start_water = m_start_total - m_beaker
m_end_water = m_end_total - m_beaker
m_evap = m_start_water - m_end_water
c_water = 4184.0
L_v = 2.26e6
T_start = T[0]
T_end = T[-1]
E_heat = c_water * m_start_water * (T_end - T_start)
E_evap = L_v * m_evap
E_total = E_heat + E_evap
dt_sec = (t[-1] - t[0]) * 60.0
P_est = E_total / dt_sec if dt_sec > 0 else np.nan
print(f"Start watermassa: {m_start_water:.4f} kg")
print(f"Eind watermassa:  {m_end_water:.4f} kg")
print(f"Verdampt:         {m_evap:.4f} kg")
print(f"T_start: {T_start:.2f} °C, T_eind: {T_end:.2f} °C")
print(f"E_sensibel: {E_heat:.2f} J")
print(f"E_latent:  {E_evap:.2f} J")
print(f"E_totaal:  {E_total:.2f} J")
print(f"Duur: {dt_sec:.1f} s, P_schatting: {P_est:.2f} W")
Start watermassa: 0.4721 kg
Eind watermassa:  0.4541 kg
Verdampt:         0.0180 kg
T_start: 21.20 °C, T_eind: 76.60 °C
E_sensibel: 109429.76 J
E_latent:  40680.00 J
E_totaal:  150109.76 J
Duur: 3600.0 s, P_schatting: 41.70 W
def aanbevelingen():
    punten = [
        "- Meet elektrisch vermogen van het element (U, I, P=U·I).",
        "- Isoleer de maatbeker en minimaliseer warmteverlies naar omgeving.",
        "- Dek gedeeltelijk af om convectie te beperken, laat damp ontsnappen.",
        "- Weeg continu om massaverlies door verdamping te loggen.",
        "- Meet omgevingscondities (T_omg, luchtstroming, RV).",
        "- Gebruik kalibratie van temperatuursensor en tijdsynchronisatie.",
        "- Herhaal met verschillende vermogens om lineariteit te toetsen."
    ]
    for p in punten:
        print(p)

aanbevelingen()
- Meet elektrisch vermogen van het element (U, I, P=U·I).
- Isoleer de maatbeker en minimaliseer warmteverlies naar omgeving.
- Dek gedeeltelijk af om convectie te beperken, laat damp ontsnappen.
- Weeg continu om massaverlies door verdamping te loggen.
- Meet omgevingscondities (T_omg, luchtstroming, RV).
- Gebruik kalibratie van temperatuursensor en tijdsynchronisatie.
- Herhaal met verschillende vermogens om lineariteit te toetsen.