Własny detektor burzy – część 1

Własny detektor burzy – część 1

Sezon letni trwa w najlepsze, chociaż pogoda nam ostatnio nie sprzyjała burze w tym okresie to rzecz całkiem często spotykana. A gdyby tak poza temperaturą wiedzieć nieco wcześniej, że burza jest w promieniu 50 km lub bliżej, wraz z względnie dokładnym pomiarem jak blisko? Czemu nie, zbudujmy sobie sensor burzy :)

Potrzebne elementy

Potrzebne biblioteki

Bibliotekę należy umieścić w folderze libraries naszego Arduino IDE. Oczywiście umieszczamy ją w folderze takim w jakim jest, nie luzem.

Czas przygotowań

Gdy mamy już niezbędne części oraz biblioteki pora przystąpić do przygotowań. Tym razem przyda nam się trochę umiejętności lutowania gdyż otrzymany sensor zawiera jedynie otwory w które należy wlutować goldpiny.

Snap_2013.06.30_17h27m00s_003_
Słowem wyjaśnienia: sensor AS3935 można dostać w postaci samego modułu, jest to ta czarna część nad C4 a pod LLC – wówczas wymaga to jednak zbudowania układu zbliżonego do tego na zdjęciu, dlatego zdecydowałem się na zakup gotowej płytki od Tautic LLC. Do takiej płytki wlutowujemy goldpiny, najlepiej ich nie rozcinać pojedynczo, lecz wyciąć po 8. Chwila lutowania i mamy gotową płytkę, nadającą się do wbicia w płytkę stykową.

1044143_684238471603236_599026457_n

Schemat podłączeń

Gdy nasza płytka jest już gotowa, możemy ją wbić w płytkę stykową oraz podłączyć do Arduino według następującego schematu:

as_burza_bbKod dla mikroprocesora

Kod jest to prawie żywcem wzięty przykład z katalogu examples biblioteki, warto zwrócić tu uwagę na linijkę 34 z AS3935.setNoiseFloor(2); – po podłączeniu i uruchomieniu wszystkiego, może się zdarzyć, że widoczny będzie komunikat “Noise level too high, try adjusting noise floor” – należy wówczas zwiększać wartość podaną w tej linii do takiego poziomu, przy którym komunikat nie będzie występował. Noise level too high oznacza za dużo zakłóceń i sensor nie będzie działał.

Pierwsze uruchomienie

Jeżeli wszystko podłączyliśmy poprawnie i wysłaliśmy kod do Arduino, otwieramy teraz monitor portu szeregowego. Naszym oczom powinny okazać się komunikaty:

Snap_2013.06.30_13h21m32s_001_

Widzimy tu, że nasz sensor działa i coś wykrywa. Ale jak to wykrywa, skoro nie ma burzy? No właśnie, jest tu trochę zła kalibracja gdyż mamy komunikat “Noise level too high, try adjusting noise floor”, trzeba teraz kombinować tak, aby go wyeliminować. Komunikaty “Disturber detected” świadczą o zakłóceniach, co jest normalne gdy dookoła jest dużo urządzeń elektrycznych. Aby wyłączyć ich wyświetlanie należy zakomentować linijkę 52.  Na chwile obecną nie pozostaje nam nic innego jak czekać na burzę – gdy się pojawi powinna wyświetlać się przybliżona odległość burzy. Przetestowanie wymaga oczekiwania na pomoc siły wyższej ;)

Dalsza rozbudowa

Gdy siła wyższa już pomoże i wszystko będzie działać, rozbudujemy nasz projekt. Dodamy wyświetlacz LCD, aby to na nim wyświetlała się odległość i zmienimy nieco komunikację z Serial Portem. Tutaj przyda nam się właśnie opcjonalny konwerter USB TTL. Za pomocą tego konwertera będę wysyłał komunikaty do komputera (gdyż finalnie projekt zostanie odłączony od Arduino a przepięty na zwykłą ATmegę), aby zapisywać je w sposób podobny do opisanego przez Łukasza. Jak to u mnie – dane te dalej polecą w sieć i przydadzą się do dalszych celów.

Wpis ten miał być opublikowany w jednej części – jednak jako, że oczekiwanie na pomoc siły wyższej trwa już trochę zbyt długo, publikuję pierwszą część – a po najbliższej burzy przy której uda się wykonać testy – będzie kolejna :)

Ocena: 4.07/5 (głosów: 54)

Podobne posty

45 komentarzy do “Własny detektor burzy – część 1

  • Pomysł fajny i zdecydowanie godny uwagi, chętnie widziałbym go w połączeniu z automatycznym wyłącznikiem zasilania routera, bo podczas burzy mam do nich pecha i często mi się palą :-(

    Przydałoby się jeszcze w tekście opisać (oczywiście po wyczekiwanej burzy) jakiego rodzaju testy zostały, które sprawdzają trafność i bezbłędność urządzenia. Liczę i czekam na dalszą rozbudowę urządzenia, a autorowi życzę powodzenia i wytrwałości :-)

    Odpowiedz
    • Z tym automatycznym wyłączaniem sprzętu, to bardzo dobry pomysł! Najpierw dałbym jakiś sygnał ostrzegawczy, żeby człowiek miał czas na podjęcie decyzji, a później (np. po 3 minutach) nastąpiłoby automatyczne wyłączenie (bez problemu można by też wysłać najpierw sygnał do kompa, żeby się uśpił albo zahibernował) :)

      Jest potencjał!

      Odpowiedz
      • Wszystko fajnie, tylko czy takie wyłączenie, realizowane przez przekaźnik lub coś podobnego – jest bezpieczne?
        W sensie, czy wysokie napięcie – z wyładowania nie przeskoczy takiego przełączenia?

        Odpowiedz
        • Ze zwykłym przekaźnikiem jest ryzyko, ale pewnie można kupić jakieś dedykowane przekaźniki (czy inne wyłączniki) przeznaczone do takich zadań. Ewentualnie można dać serwo, które będzie przełączało jakiś większy mechaniczny przełącznik.

          Na upartego z samego serwa można zrobić przełącznik (do ramienia orczyka przymocować sprężynkę od długopisu, która będzie się opierała o kawałek blaszki. Później kręcisz serwem i sprężyna traci kontakt z blaszką:)

          Odpowiedz
    • przy bezpośrednim trafieniu pioruna nic nie zabezpieczy instalacji wewnątrz budynku, warto – zainwestować w instalację odgromową, aby zminimalizować straty i ograniczyć prąd udarowy powstający przy wyładowaniu.
      To przed czym warto zabezpieczać, to indukcja napięć związanych z wyładowaniem oraz przy trafieniach (indukcjach) przychodzących przez media zewnętrzne – sieć energetyczna, telefon, kablówka itp, Niestety – tylko fizyczne wyłączenie z prądu urządzeń ma jakikolwiek sens (widziałem przypadek, gdzie ktoś wyłączył komputer z przedłużacza, i położył kabel obok), piorun zawsze poszuka najlżejszej drogi (o najmniejszym oporze), więc poszedł w kabel leżący obok przedłużacza. Tego typu napięcia potrafią przebić bezpieczniki 20A, a co dopiero jakikolwiek mikrowyłącznik.

      Odpowiedz
    • Z tego co wiem, działa to jakąś metodą radiową, stąd zgodnie ze specyfikacją zasięg do 50km. Nie wnikałem w to w jaki to jednak dokładny sposób funkcjonuje – bo w sumie taka wiedza nie była mi niezbędna do stworzenia tego co chcę zrobić docelowo

      Odpowiedz
      • Się nie mogę edytować, to dopisuje kolejne pytania.
        Jak wygląda zużycie prądu modułu? Mógłbyś sprawdzić czy robi poprawne odczyty zasilany z 3,3V?

        Odpowiedz
        • Mogę spróbować, to tylko przesunięcie jednego kabelka u mnie. Tylko z testowaniem jest duży problem – oczekiwanie na burze i jak na złość, coś nie mogę jej doczekać

          Odpowiedz
    • To jest bardzo ale to bardzo malutkie, myślę, że na najmniejszej stykówce można by to zainstalować gdyby nie dodatkowa rozbudowa. Później jakaś ładna obudowa, zasilanie z baterii i powinno dać radę – no i załóżmy kilka diód (zielona/zolta/czerwona) zamiast wyświetlacza

      Odpowiedz
  • Jakiś czas temu myślałem nawet nad skonstruowaniem takiego detektora samodzielnie. Schematy są dostępne w sieci. Zacząłem dużo czytać na ten temat. Niestety opinie o tego typu detektorach nie były zbyt dobre. Z racji tego, iż pioruny generują impulsy magnetyczne z bardzo szerokiego przedziału częstotliwości ciężko jest z dużą dokładnością określić, czy aby na pewno nachodzi burza czy może to sąsiad 2 domki dalej podłączył spawarkę :) Regulując czułość urządzenia istnieje niebezpieczeństwo, że burze wykryjemy za późno. W każdym razie, zarys mojego pomysłu wyglądał następująco: część detekcyjna – detektor burzy jako pierwszy stopień wykrywania oraz fotodioda która walidowała by poprawność odczytów – jeśli detektor wykrywa burze i fotodioda odczytuje spadek natężenia światła (ciemne chmury) następuje szereg działań. Zasuwają się żaluzję oraz wyłącza sprzęt elektryczny. Jak część wykonawczą chciałem użyć serwo przełączający przycisk na listwie ;) Całość chciałem oprzeć o wersję Arduino Enternet, tak aby można było wyświetlać na kompie lub wysyłać informacje na smartphone’a.

    Odpowiedz
        • Nie ma co ukrywać, że Blitzortung jest fajniejszy, bo daje dostęp do danych z całego projektu a nie tylko z tych które odbierze Twoja stacja – fajna sprawa, dane są dokładne, jest API, można cośtam na tym budować.

          Niestety cena jest faktycznie zaporowa, bo razem z antenami, tak aby kupić wszystkie części to już 188,60 €

          Szukałem czegoś prostszego i znalazłem, teraz tylko potestować czy zadziała ;)

          Odpowiedz
    • Teoretycznie na podstawie tego projektu można by zbudować serwis podobny do blitzortung. Wystarczyłaby mapka z oznaczonymi lokalizacjami odbiorników oraz interfejs przesyłający dane z urządzeń końcowych do głównej bazy danych na podstawie której generowane byłyby miejsca wyładowań.

      Podobny projekt był na gdziejestburza.pl

      Odpowiedz
      • Sekretem Blitzortung jest uniwersalny czas, odbierany przez GPS. To dzięki właśnie synchronizacji czasu między czujnikami, możliwe jest ustalenie gdzie nastąpiło wyładowanie. Na podstawie bardzo niewielkich różnic czasu uderzenia, wskazanych przez przynajmniej 3 stacje i znanej prędkości dźwięku, możliwe jest wyznaczenie położenia. Bez rozbudowy o gps lub odbiornik np. czasu nadawanego z Frankfurtu z zegara atomowego, baza taka będzie jedynie pokazywać że uderzyło gdzieś niedaleko.

        Odpowiedz
  • Do detektora pioruna warto dodać wykrywacz fali dźwiękowej. Uzykamy pomiar odległości na podstawie opóznienia wyładowanie->grzmot. Ja wykonałem sobie detektor samemu (wykrywa on fale e/m) , dla ciekawskich dodam ,że jest oparty na 3 tranzystorach :-) Do kompletu jakiś avr/arduino i miernik gotowy.

    Odpowiedz
  • A ha i jeszcze jedno NIE POLECAM tego konwertera jeżeli ktoś ma Win7 x64, zwisy, blue-screeny i inne dziadostwa, jak już brać to na chipsecie ft232

    Odpowiedz
      • Ja kupiłem3 takie na ebayu po ok $1.5 za sztukę. Na razie jedynie testowałem czy działają, więc działały max z 10 minut, ale nie trafiłem na żadne problemy. Sprawdzane a dwóch windowsach 7 64-bit.

        Odpowiedz
        • Ten konwerter owszem działa pod Win7 x64, ale jeżeli zaczynasz wysyłać coś zbyt szybko lub w dużych ilościach to dopiero wtedy zaczynają się problemy.

          Odpowiedz
  • Ciekawostka. Musze przyznać, że do czegoś takiego nie doszedłem, z przyjemnością więc skorzystam z Twojego pomysłu. Burzami interesuje się od dawna, a informacje o nich czerpię co najwyżej z ogólno dostępnych radarów (i strony łowców oczywiście). Nie raz myślałem o tym, że fajnie byłoby mieć własny “powiadamiacz”. Z wyższą elektroniką się raczej mijam, ale myślę, że tutaj dam radę stworzyć coś sensownego.

    Odpowiedz
  • Dodał bym jakiegoś ifa, który zwiększał by wartość tej liczby, kiedy hałas/zakłócenia były by zbyt duże i mechanizm sam by się dostrajał ;p

    Odpowiedz
  • Witam,
    z racji że zajmuje się tematyką wyładowań atmosferycznych od dawna. Zapoznałem się pokrótce z tym urządzeniem.
    Według mojej oceny urządzenie to jest słabsze niż rozwiązanie oparte o radio trzaski.
    Za pomocą tego urządzenia nie można określić skąd, jakiego typu było i jak daleko było wyładowanie atmosferyczne.
    Bez wątpienia urządzenie jest podatne na zakłócenia obce. Jest to bardzo złożony problem i za pomocą takiego prostego układu nie można tego problemu przeskoczyć. Może część z nich odfiltrować, ale znaczną większość przypuści i błędnie sklasyfikuje.

    Odpowiedz
  • Obecnie przy takich nagłych burzach jakie latem przychodzą powinny być budowane systemy ostrzegania zwłaszcza jeśli wyładowania są bardzo duże. Często takie burze zalewają gwałtownymi opadami niewielkie obszary.

    Odpowiedz
  • ja mam taki detektor, ale inny i ostrzeganie jest super, nawet obudził mnie w nocy(krótki pisk i błysk). Co do odróżnienia burzy od sąsiada, to piorunów w ciągu minuty zwykle jest w okolicy dużo, ale nie są jednostajne. Oczywiście, jeżeli chodzi o zakłócenia to jednorazowe włączanie światła, lub samochód chyba. Pioruny oczywiście są silne.

    Odpowiedz

Odpowiedz

anuluj

Masz uwagi?