Spisu treści:

Zrób to sam system temperatury Raspberry Pi z Ubidots: 7 kroków (ze zdjęciami)
Zrób to sam system temperatury Raspberry Pi z Ubidots: 7 kroków (ze zdjęciami)

Wideo: Zrób to sam system temperatury Raspberry Pi z Ubidots: 7 kroków (ze zdjęciami)

Wideo: Zrób to sam system temperatury Raspberry Pi z Ubidots: 7 kroków (ze zdjęciami)
Wideo: Industrial Temperature Monitor using Raspberry pi pico and k type Thermocouple, #youtubeshorts 2024, Listopad
Anonim
Zrób to sam system temperatury Raspberry Pi z Ubidots
Zrób to sam system temperatury Raspberry Pi z Ubidots

System monitorowania temperatury zapewnia cenne informacje zarówno w środowisku komercyjnym, jak i przemysłowym w celu zmniejszenia nieefektywności lub utrzymania jakości produktów i ich jakości. A gdybym ci powiedział, że za pomocą tego samego urządzenia możesz w domu monitorować temperaturę własnej zbudowanej piwnicy na wino lub rodzinnego akwarium. Co więcej, co jeśli powiem ci, że to samo urządzenie może być również używane do monitorowania temperatury powietrza i cieczy w twojej fabryce? Twórcy naszego świata umożliwili to, a ten przewodnik jest tutaj, aby pomóc w rozpoczęciu własnych inicjatyw w domu lub na hali produkcyjnej.

Ten przewodnik będzie Twoim samouczkiem dotyczącym prostego systemu monitorowania temperatury DIY, który jest również wodoodporny. Korzystając z Raspberry Pi i Ubidots, pokażemy Ci, jak podłączyć Twoje Pi i wyświetlać w czasie rzeczywistym metryki systemu temperatury. Korzystając z Ubidots, możesz również tworzyć e-maile lub zdarzenia SMS, aby zapewnić, że Twoja „zmienna” (w tym przypadku temperatura) pozostanie w ramach zdefiniowanych limitów, które zostały przez Ciebie przypisane, aby zapewnić jakość i wydajność warunków Twojego systemu.

W tym projekcie użyjemy 1-przewodowej i wodoodpornej wersji czujnika DS18B20. Co to jest 1-wire? Jest to protokół komunikacyjny, który sprawia, że podłączanie czujników IoT jest prostsze, agregując całe okablowanie w jednym przewodzie (… cóż, właściwie to trzy, dwa to połączenia uziemienia i zasilania dla energii, a trzeci to 1-przewodowy do transmisji danych).

WAŻNA UWAGA: Czujnik temperatury 1-Wire ma w sprzedaży różne wersje; jeden z rezystorem wbudowanym w czujnik, a drugi bez. Kupując lub konfigurując sprzęt, najlepiej upewnij się, że Twoje urządzenia i czujniki są kompatybilne, zanim przejdziesz dalej w tym samouczku.

Krok 1: Wymagania

  • Model Raspberry Pi 3 (już skonfigurowany)
  • Czujnik temperatury OneWire - DS18B20
  • Konto Ubidots - lub - Licencja STEM

Krok 2: Konfiguracja okablowania

Konfiguracja okablowania
Konfiguracja okablowania
Konfiguracja okablowania
Konfiguracja okablowania
Konfiguracja okablowania
Konfiguracja okablowania

Jak wcześniej wspomniano, czujnik temperatury OneWire jest sprzedawany z różnymi wersjami zawierającymi rezystory. W tym samouczku zilustrujemy obie wersje – z opornikiem i bez. Bez względu na to, który wybierzesz dla swojego systemu, upewnij się, że wszystkie połączenia są prawidłowo wykonane na podstawie poniższych schematów i zdjęć.

    Z wbudowanym rezystorem - ze złączem rowkowym

Postępuj zgodnie z tabelą i ilustracją powyżej, aby wykonać właściwe połączenia dla czujnika temperatury OneWire z rezystorem.

WSKAZÓWKA: Arduberry to nowa kampania na Kickstarterze, która w prosty i niedrogi sposób wprowadza nakładki Arduino do Raspberry Pi. Ta niesamowita opcja to łatwy sposób na rozpoczęcie podłączania czujników Grove za pomocą osłony Arduino Grove. Aby uzyskać więcej informacji na ten temat, zapoznaj się z kampanią:)

    Bez zintegrowanego rezystora - bez złącza rowkowego

Rezystor w tej konfiguracji służy do podciągania linii danych i powinien być podłączony między przewodem danych a przewodem zasilającym. Gwarantuje to, że linia danych jest na określonym poziomie logicznym i ogranicza zakłócenia spowodowane szumem elektrycznym, jeśli nasz pin pozostał pływający.

Użyj rezystora 4,7kΩ (lub 10kΩ) i postępuj zgodnie z powyższym schematem, aby wykonać prawidłowe połączenia. Zwróć uwagę, że piny podłączone w Raspberry Pi są takie same, jak w tabeli.

Krok 3: Konfiguracja czujnika

Konfiguracja czujnika
Konfiguracja czujnika
Konfiguracja czujnika
Konfiguracja czujnika

1. Gdy Raspberry Pi jest podłączone do Internetu, zweryfikuj adres IP przypisany do dostępu do płyty za pomocą ssh w terminalu komputera:

ssh pi@{przypisany_adres_IP}

Jeśli nie skonfigurowałeś jeszcze poświadczeń swojego Raspberry Pi, pamiętaj, że będziesz musiał użyć podanych domyślnych poświadczeń:

  • nazwa użytkownika: pi
  • hasło: malina

Gdy twoje pi jest poprawnie skonfigurowane i podłączone, użytkownik twojego terminala zostanie wymieniony jako: pi@raspberrypi

2. Teraz zaktualizujmy kilka pakietów i zainstalujmy pip, menedżera pakietów Pythona. Skopiuj i wklej poniższe polecenia do swojego terminala i naciśnij „enter” po każdym, aby je uruchomić.

aktualizacja sudo apt-get> aktualizacja sudo apt-get

sudo apt-get install python-pip python-dev build-essential

3. Następnie zainstaluj bibliotekę Request, która jest popularną biblioteką Pythona, która ułatwia wykonywanie żądań HTTP. Skopiuj i wklej poniższe polecenia do swojego terminala i naciśnij „enter”, uruchom polecenie.

$ prośby o instalację pip

4. Raspberry Pi jest wyposażone w szereg sterowników do łączenia. W tym przypadku, aby móc załadować sterownik czujnika 1-Wire na piny GPIO, musimy użyć tych poniżej dwóch sterowników. Te sterowniki są zatem przechowywane jako ładowalne moduły, a polecenie modprobe jest używane do uruchamiania ich w jądrze Linux, gdy jest to wymagane.

Uruchom poniższe polecenia:

$ sudo modprobe w1-gpio> $ sudo modprobe w1-therm

5. Teraz musimy zmienić katalog na nasz folder urządzeń 1-Wire i wyświetlić listę urządzeń, aby upewnić się, że nasz czujnik załadował się poprawnie. Skopiuj i wklej poniższe polecenia do swojego terminala i naciśnij „enter” po każdym, aby je uruchomić.

$ cd /sys/bus/w1/devices/> $ ls

W tym momencie czujnik jest już zmontowany i podłączony i powinien być wymieniony jako ciąg cyfr i liter. W naszym przypadku urządzenie jest zarejestrowane jako 28-00000830fa90, ale w Twoim przypadku będzie inna seria liter i cyfr, więc zamień nasz numer seryjny na swój i uruchom polecenie.

$cd 28-00000830fa90

Czujnik okresowo zapisuje do pliku w1_slave, aby odczytać czujnik temp, uruchom poniższe polecenie:

$ kot w1_slave

To polecenie pokaże ci dwa wiersze tekstu z wyjściem t= pokazującym temperaturę w stopniach Celsjusza. Należy pamiętać, że kropka dziesiętna powinna być umieszczona po pierwszych dwóch cyfrach (jest to przewidziane w ostatecznym kodzie - nie martw się); na przykład odczyt temperatury, który otrzymaliśmy, wynosi 29.500 stopni Celsjusza.

Teraz, gdy jesteś w stanie wykonać odczyty temperatury, nadszedł czas, aby wysłać je do Ubidots!

Krok 4: Wysyłanie danych do Ubidots w celu wizualizacji

Wysyłanie danych do Ubidots w celu wizualizacji
Wysyłanie danych do Ubidots w celu wizualizacji
Wysyłanie danych do Ubidots w celu wizualizacji
Wysyłanie danych do Ubidots w celu wizualizacji
Wysyłanie danych do Ubidots w celu wizualizacji
Wysyłanie danych do Ubidots w celu wizualizacji

Teraz nadszedł czas na kodowanie!:) Utwórz i uruchom skrypt Pythona w terminalu swojego komputera:

$ nano onewire_temp_ubidots.py

Następnie wklej i zapisz następujący kod na swoim terminalu: Naciśnij tutaj, aby pobrać kod

Pamiętaj, aby zastąpić numer seryjny 28-00000830fa90 swoim i przypisz token konta Ubidots w adresie URL żądania. Jeśli nie wiesz, jak zdobyć token Ubidots, zapoznaj się z poniższym artykułem, aby uzyskać pomoc:

Znajdź swój TOKEN na swoim koncie Ubidots

Teraz przetestujmy skrypt. Wklej i uruchom poniższy skrypt w terminalu komputera.

python onewire_temp_ubidots.py

Jeśli działa poprawnie, zobaczysz nowe urządzenie na swoim koncie Ubidots z dwiema zmiennymi: temp_celsius i temp_fahrenheit

Krok 5: Opcjonalne kroki: Zmień nazwę urządzenia i zmiennych

Opcjonalne kroki: Zmień nazwę urządzenia i zmiennych
Opcjonalne kroki: Zmień nazwę urządzenia i zmiennych
Opcjonalne kroki: Zmień nazwę urządzenia i zmiennych
Opcjonalne kroki: Zmień nazwę urządzenia i zmiennych

Nazwy utworzonych zmiennych są takie same jak etykiety API, które są identyfikatorami używanymi przez API. Nie oznacza to, że nie można zmienić ich nazw, dlatego zaleca się zmianę nazw urządzeń i zmiennych, aby były one bardziej przyjazne dla Twojej nomenklatury. Aby dowiedzieć się, jak zmienić nazwy zmiennych, zobacz poniżej:

Jak dostosować nazwę urządzenia i nazwę zmiennej?

Możesz także dodać i dostosować jednostki każdej zmiennej z listy opcji.

Jak widać powyżej, do każdej zmiennej przypisaliśmy różne jednostki, a także przypisaliśmy bardziej przyjazne nazwy, aby pasowały do nomenklatury naszych projektów. Jest to wysoce zalecane dla użytkowników poszukujących wdrożeń 100 lub urządzeń.

Krok 6: Konfiguracja wydarzenia

Zdarzenie (alarm) to dowolne działanie wyzwalane, gdy dane spełniają lub przekraczają regułę projektową. Na przykład wiadomość e-mail lub SMS może zostać wysłana za każdym razem, gdy czujnik przestanie wysyłać dane lub temperatura przekroczy maksymalny lub minimalny próg.

Aby utworzyć wydarzenie, zapoznaj się z poniższym artykułem:

Zdarzenia: tworzenie zdarzenia wiadomości tekstowej (SMS, e-mail i telegram)

Krok 7: Wynik

W ciągu zaledwie kilku minut zbudowałeś łatwy do samodzielnego montażu system monitorowania temperatury. Teraz umieść czujniki tam, gdzie są potrzebne i już dziś zacznij śledzić temperaturę ze swojego urządzenia!

Miłego hackowania:)

Zalecana: