Stap 4: Kalibreren de microfoon
Het idee is om het instellen van de parameters in de rain.py zodat
- het geeft als nauwkeurig mogelijk een meting van de regen die er is
- het registreren niet regen wanneer er geen
- het zeggen niet dat er een heleboel regen als er alleen wind
Er zijn 3 parameters in te stellen.
mm_per_million. Dit past de gevoeligheid. Een groter aantal hier maakt de regen schatten groter.
quiet_noise. Dit plaatst de drempel beneden welke wordt aangenomen is er geen regen.
wind_noise. Dit plaatst de drempel die wordt gebruikt wanneer het denkt dat het is winderig.
U vindt ze op rond wachtrij 16 van rain.py.
Allereerst moeten we om de geluidsniveaus. Hoewel het is rustig, kijk op de lezingen in de hoogste frequentieband - degene die net vóór de]. Als u iets als krijgt
actual from program3.8mm 2.6mm4.1mm 7.5mm11mm 8.5mm 6mm 7.2mm
dan is het de 158, 167, 164 die u bekijkt. Ik vond dat quiet_noise moet ongeveer 10 keer dit. Zo rond 1600. Ik vond dat wind_noise moet 2 keer quiet_noise, dus 3200.
Vervolgens moeten we enkele feitelijke neerslag meten en vergelijken met de schatting van het python programma. Idealiter zou u het verzamelen van gegevens uit perioden van neerslag tegen verschillende tarieven. Het is niet duidelijk dat de geluidssterkte lineair met regenval toenemen zal of die lichte regen zal het dezelfde gecumuleerde geluidsintensiteit als hetzelfde bedrag van zware regenval. Mijn gegevens (beperkt) suggereert echter dat het klopt binnen over een factor 2. Dit is geenszins perfect nauwkeurige, maar goed genoeg om te beslissen wanneer het irrigatiesysteem uitschakelen!
Ik gebruikte een wassen kom en een maatcylinder. Laat het totdat wat regen is gevallen, dan het water in de maatcylinder leeg en stak de bowl weer. Toon waas naar de hoeveelheid water telkens en de overeenkomstige raming van het python programma. In het python programma, past u de parameter "mm_per_million". Dus als u 10mm regen in de cilinder meten en het python programma 2mm geeft, moet u de "mm_per_million" te vermenigvuldigen met 5.
Ik heb onlangs deze metingen:
#!/bin/sh /usr/bin/python -u /home/pi/rain.py >> /run/shm/rain_py.log 2>&1
Vervolgens is het beste ding om te laten draaien voor enkele dagen van stilte, wind, regen en zowel wind en regen. Idealiter zou je ook meten de regenval van tijd tot tijd. Vervolgens zorgvuldig kijken naar het bestand /run/shm/rain1.csv. Hier ziet u de waarden worden vastgelegd om de 5 minuten samen met de cumulatieve regenval geschat (reset elke dag om middernacht) en het niveau van de wind. U wellicht terug te gaan en de parameters aanpassen. Het kostte me een week of 2 voordat ik blij met de resultaten was.
Succes!