Zapraszam do kolejnej części cyklu „Stacja Pogodowa”. W poprzednim wpisie pokazałem jak zbudowałem podstawowe czujniki: temperaturę, wilgotność i ciśnienie. Teraz pokażę jak rozbudowałem tę konstrukcję o czujnik prędkości wiatru
Budowę rozpocząłem od zaprojektowania elementów czujnika. Zasadniczo czujnik składa się z wiatraczka, oraz wskaźnika kierunku który opiszę w kolejnej części. Całość jest montowana do obudowy która będzie zamocowana na maszcie razem z innymi czujnikami.
Elementy te można pobrać z serwisu thingiverse. Należy je wydrukować z warstwą 0.2mm, stosując trzy warstwy obrysów a wypełnienie około 15% – 20%.
W środkowym elemencie wiatraczka wkleiłem magnes neodymowy średnicy 10mm i grubości 1mm, a sam wiatraczek osadziłem na łożysku. W górnej części obudowy znalazło się miejsce na zamontowanie kontaktronu rurkowego, o długości max 12mm (długość rurki),
W ten sposób obracający się wiatraczek będzie cyklicznie generował impulsy które będą zliczane przez arduino. A na tej podstawie algorytm będzie wyliczał prędkość wiatru. Oczywiście jest to projekt DIY więc czujnik ten będę musiał skalibrować, ale o tym dalej.
Zależność prędkości wiatru i częstotliwości generowania impulsów definiuje wzór i to za jego pomocą obliczymy prędkość wiatru:
Vms = 2Πr * RPM / 1000 / 60 * Kalibracja
2Πr to wzór na obwód koła pomnożony przez częstotliwość impulsów czyli ilość obrotów na minutę. Następnie przeliczamy to na metry na sekundę. Ostatni parametr to kalibracja. Otóż śmigiełka dzięki swojej konstrukcji poruszają się z prędkością mniejszą niż prędkość wiatru, dlatego że wklęsłą stroną poruszają się z wiatrem a wypukłą która stawia mniejszy opór dla powietrza poruszają się pod wiatr co spowalnia ich ruch. Dzięki zastosowaniu mnożnika możemy skalibrować nasz wskaźnik tak by pomiar był jak najbardziej poprawny.
W systemie APRS dane na temat prędkości wiatru należy przesyłać w milach na godzinę, przeliczenie do tych jednostek z metrów na sekundę jest proste:
Vmph = Vms * 3600 / 1609
Specyfikacja protokołu APRS mówi o tym że dane o prędkości wiatru należy przesyłać jako średnią prędkość wiatru z ostatniej minuty oraz maksymalne porywy z ostatnich pięciu minut, w postaci przesuwającego się okna z danymi. Do tego celu w kodzie pogodynki wymagane są dwa bufory jeden który będzie liczył średnią z ostatniej minuty, a drugi maksimum z ostatnich pięciu minut.
Po wstępnym ustawieniu, skalibrowałem czujnik za pomocą wentylatora domowego, pudła kartonowego i skalibrowanego miernika prędkości wiatru firmy testo dokonałem poprawek w kodzie.
Kod pogodynki jest napisany w arduino z wykorzystaniem biblioteki mysensors za pomocą której przesyłam dane do domoticza a następnie dalej są wysyłane do sieci APRS za pomocą skryptu WXDomoPy który znajduje się w serwisie GitHUB.
cdn…