Spisu treści:

Sieć czujników temperatury: 6 kroków
Sieć czujników temperatury: 6 kroków

Wideo: Sieć czujników temperatury: 6 kroków

Wideo: Sieć czujników temperatury: 6 kroków
Wideo: SUPLA Czujnik temperatury DS18B20 - JAK ZROBIĆ KROK PO KROKU 2024, Listopad
Anonim
Image
Image

Temperatura i wilgotność to kluczowe dane w laboratorium, kuchni, linii produkcyjnej, biurze, zabójczych robotach, a nawet w domu. Jeśli potrzebujesz monitorować wiele lokalizacji, pomieszczeń lub przestrzeni, potrzebujesz czegoś, co jest niezawodne, kompaktowe, dokładne i niedrogie. Możesz kupić drogie czujniki, ale jeśli monitorujesz wiele pomieszczeń, może to spowodować wzrost kosztów. Ten samouczek pokaże Ci, jak zbudować te czujniki i monitorować dane bez rozbijania banku.

Jest to idealna aplikacja dla Raspberry Pi Zero WH za 14 USD, ponieważ to urządzenie jest kompaktowe, niedrogie, wydajne i ma wbudowane WiFi. Konfiguracja dla każdego węzła czujnika będzie kosztować ~ 31 USD plus wysyłka, podatki i sprawa. Możesz łatwo kupić każdy z powyższych produktów hurtowo, aby zminimalizować koszty wysyłki, z wyjątkiem Raspberry Pi Zero WH, który może być trudniejszy poza Wielką Brytanią. Nie możesz znaleźć dostawcy, który pozwala na zakup więcej niż jednej reguły Zero na Raspberry Pi Foundation.

Używamy Zero WH za 14 USD zamiast Zero W za 10 USD, ponieważ Zero WH ma wstępnie wlutowany nagłówek, co sprawi, że montaż naszego projektu będzie bardzo szybki i łatwy. Używamy czujnika temperatury/wilgotności DHT22 ze względu na jego dokładność temperatury (+/- 0,5 °C), zakres wilgotności (0–100%) i niski koszt. Chcemy również czegoś naprawdę łatwego do podłączenia bez konieczności dodawania rezystora podciągającego.

Kieszonkowe dzieci

  • Raspberry Pi Zero WH (14 USD)
  • Karta microSD (4 USD)
  • Zasilacz Raspberry Pi (8 USD)
  • Czujnik temperatury/wilgotności DHT22 (5 USD)
  • (Opcjonalnie) Obudowa Raspberry Pi Zero W (6 USD)

Krok 1: Montaż

montaż
montaż

DHT22 będzie miał trzy piny, które będziesz musiał podłączyć do swojego Pi Zero WH: 5V, uziemienie i dane. Pin zasilania na DHT22 będzie oznaczony „+” lub „5V”. Podłącz to do pinu 2 (prawy górny pin, 5V) Pi Zero WH. Styk uziemienia na DHT22 będzie oznaczony jako „-” lub „Gnd”. Podłącz to do pinu 6 (dwa piny poniżej pinu 5V) w Pi Zero WH. Pozostały pin na DHT22 to pin danych i będzie oznaczony jako „out” lub „s” lub „data”. Podłącz to do jednego z pinów GPIO na Zero WH, takiego jak GPIO4 (pin 7). Twoje połączenia powinny wyglądać jak na załączonym obrazku.

Krok 2: Konfiguracja oprogramowania

Aby skonfigurować Pi Zero WH za pierwszym razem, będziesz potrzebować monitora i klawiatury. Po skonfigurowaniu nie będziesz potrzebować ani monitora, ani klawiatury, aby uruchomić po wdrożeniu w Twojej przestrzeni. Chcemy, aby każdy węzeł był jak najmniejszy i kompaktowy.

  1. Musisz zainstalować standardowy system operacyjny Raspbian, aby Twoje Pi Zero WH uruchomiło się. Możesz postępować zgodnie z instrukcjami na stronie Raspberry Pi, aby skonfigurować Pi Zero WH.
  2. Podłącz Pi Zero WH do sieci Wi-Fi. Możesz postępować zgodnie z instrukcjami na stronie Raspberry Pi, aby podłączyć Pi Zero WH do Wi-Fi.
  3. Zainstaluj moduł Adafruit DHT Python na swoim Pi, aby odczyt danych z czujnika DHT22 był bardzo łatwy. Wpisz następujące polecenie w wierszu polecenia:

$ sudo pip zainstaluj Adafruit_DHT

Masz teraz wszystko, czego potrzebujesz, aby komunikować się z czujnikiem. Następnie potrzebujesz miejsca docelowego dla danych z czujnika, aby móc przekształcić te dane w niesamowity pulpit nawigacyjny lub alert SMS-em/e-mailem. Na tym etapie projektu użyjemy stanu początkowego.

  1. Zarejestruj konto na
  2. Zainstaluj moduł ISStreamer w wierszu poleceń:

$ sudo pip zainstaluj ISStreamer

Krok 3: Skrypt Pythona

Po zainstalowaniu naszego systemu operacyjnego wraz z dwoma modułami Pythona do odczytywania danych z czujników i wysyłania danych do stanu początkowego, jesteśmy gotowi do napisania naszego skryptu w języku Python. Poniższy skrypt utworzy/dołączy do zasobnika danych stanu początkowego, odczyta dane z czujnika DHT22 i wyśle te dane do pulpitu nawigacyjnego w czasie rzeczywistym. Wszystko, co musisz zrobić, to zmodyfikować wiersze 6–11.

importuj Adafruit_DHT

from ISStreamer. Streamer import Streamer import time # --------- Ustawienia użytkownika --------- SENSOR_LOCATION_NAME = "Biuro" BUCKET_NAME = ":partly_sunny: Temperatury w pomieszczeniu" BUCKET_KEY = "rt0129" ACCESS_KEY = „TUTAJ UMIEŚĆ SWÓJ STAN POCZĄTKOWY KLUCZ DOSTĘPU” MINUTES_BETWEEN_READS = 10 METRIC_UNITS = Fałsz # --------------------------------- streamer = Streamer(bucket_name=BUCKET_NAME, bucket_key=BUCKET_KEY, access_key=ACCESS_KEY) while True: wilgotność, temp_c = Adafruit_DHT.read_retry(Adafruit_DHT. DHT22, 4) if METRIC_UNITS: streamer.log(SENSOR_LOCATION_NAME + "Temperatura()C)", else: temp_f = format(temp_c * 9.0 / 5.0 + 32.0, ".2f") streamer.log(NAZWA_LOKALIZACJI_CZUJNIKA + "Temperatura(F)", temp_f) wilgotność = format(wilgotność, ".2f") streamer.log(NAZWA_LOKALIZACJI_CZUJNIKA + " Wilgotność (%)", wilgotność) streamer.flush() time.sleep(60*MINUTES_BETWEEN_READS)

  • Wiersz 6 - ta wartość powinna być unikalna dla każdego węzła/czujnika temperatury. Może to być nazwa pokoju węzła czujnika, lokalizacja fizyczna, unikalny identyfikator lub cokolwiek innego. Po prostu upewnij się, że jest unikalny dla każdego węzła, aby dane z tego węzła trafiały do własnego strumienia danych na pulpicie nawigacyjnym.
  • Wiersz 7 - to jest nazwa zasobnika danych. Można to zmienić w dowolnym momencie w interfejsie użytkownika stanu początkowego.
  • Linia 8 - To jest twój klucz do wiadra. Musi to być ten sam klucz zasobnika dla każdego węzła, który chcesz wyświetlić w tym samym panelu.
  • Wiersz 9 - To jest klucz dostępu do konta stanu początkowego. Skopiuj i wklej ten klucz z konta stanu początkowego.
  • Linia 10 - Jest to czas między odczytami czujnika. Zmień odpowiednio.
  • Wiersz 11 - można określić jednostki metryczne lub imperialne.

Po ustawieniu linii 6–11 w skrypcie Pythona w Pi Zero WH, zapisz i wyjdź z edytora tekstu. Uruchom skrypt za pomocą następującego polecenia:

$ python tempsensor.py

Powtórz te kroki dla każdego węzła czujnika. Dopóki każdy węzeł wysyła dane do stanu początkowego przy użyciu tego samego klucza dostępu i klucza zasobnika, wszystkie dane będą trafiać do tego samego zasobnika danych i będą wyświetlane na tym samym pulpicie nawigacyjnym.

Krok 4: Pulpit

Deska rozdzielcza
Deska rozdzielcza
Deska rozdzielcza
Deska rozdzielcza

Przejdź do konta stanu początkowego, kliknij nazwę zasobnika na półce zasobnika i wyświetl swoje dane na pulpicie nawigacyjnym. Możesz dostosować swój pulpit nawigacyjny i skonfigurować wyzwalacze wiadomości SMS/e-mail. Na załączonym zdjęciu widać tablicę rozdzielczą z trzema węzłami czujników gromadzących temperaturę i wilgotność dla trzech różnych pomieszczeń.

Możesz dodać obraz tła do pulpitu nawigacyjnego.

Krok 5: Automatyczne uruchamianie i monitorowanie procesu oraz IP

Automatyczne uruchamianie i monitorowanie procesu oraz IP
Automatyczne uruchamianie i monitorowanie procesu oraz IP

Po wdrożeniu wielu węzłów będziesz potrzebować sposobu monitorowania każdego węzła, aby upewnić się, że działa. Prawdopodobnie będziesz uruchamiać każdy węzeł czujnika bez monitora lub klawiatury/myszy, aby zachować kompaktowość. Oznacza to, że będziesz chciał, aby każdy węzeł uruchamiał się i uruchamiał skrypt automatycznie. Możesz użyć swojego konta stanu początkowego, aby utworzyć wygodny pulpit nawigacyjny procesu/adresu IP, jak pokazano powyżej. Szczegółowy samouczek dotyczący tworzenia tego pulpitu nawigacyjnego i konfigurowania Pi Zero WH do automatycznego uruchamiania skryptu Python podczas uruchamiania można znaleźć tutaj.

Krok 6: Wniosek

Wniosek
Wniosek

Po uruchomieniu jednego węzła czujnika łatwo i stosunkowo niedrogo jest powielanie konfiguracji tyle razy, ile jest to potrzebne. Korzystanie z Pi Zero WH zapewnia elastyczność w wykonywaniu innych zadań, ponieważ ma tak dużą moc. Na przykład możesz użyć jednego z Pi Zero WH, aby pobrać lokalne dane pogodowe z interfejsu API pogody i dodać je do pulpitu nawigacyjnego czujnika. Jeśli zdecydujesz się wycofać swoje węzły czujnikowe z eksploatacji, możesz ponownie wykorzystać swoje WH Pi Zero do innych projektów. Ta elastyczność pomaga zabezpieczyć inwestycję w projekt na przyszłość.

Zalecana: