Spisu treści:
- Kieszonkowe dzieci
- Krok 1: lutowanie modułu temperatury
- Krok 2: Budowa naszego kabla konwertera DCDC
- Krok 3: Instalacja surfsticka
- Krok 4: Utwórz bazę danych PostgreSQL
- Krok 5: Przygotowanie karty SD
- Krok 6: Instalowanie Raspberry i łączenie się z nim przez SSH
- Krok 7: Instalacja rejestratora
- Krok 8: Instalacja rejestratora (moduł temperatury)
- Krok 9: Pobierz i dostosuj skrypt Pythona
- Krok 10: Instalacja modułu WittyPi
- Krok 11: Wprowadź zmiany w konfiguracji wirtualnej maszyny Java
- Krok 12: Ustaw zadanie Cron
- Krok 13: Składanie wszystkiego razem
- Krok 14: Instalacja końcowa
Wideo: Automatyczny system monitorowania wody w rzece: 14 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Ta instrukcja jest wykorzystywana do dokumentowania rozwoju zautomatyzowanego systemu monitorowania wód rzecznych. Monitorowane parametry to poziom i temperatura wody. Celem tego projektu było opracowanie taniego i niezależnego rejestratora połączonego z bazą danych. Poziom wody jest monitorowany za pomocą specjalnego poziomu QR. Kamera w Pi robi zdjęcie co 15 minut. Kody QR na tym zdjęciu są dekodowane przez oprogramowanie i wskazują rzeczywisty poziom wody. Temperatura wody jest mierzona czujnikiem DS18B20.
Kieszonkowe dzieci
- Malina Zero WH
- WittyPi Mini
- Moduł kamery Raspberry Pi v2.1
- Huawei E3531 SurfStick
- Karta SIM (ThingsMobile)
- Przetwornica obniżająca napięcie DC DC
- Termometr cyfrowy DS18B20
- Kabel micro USB OTG
- Końcówka kabla micro USB
- Szyba okienna
- Uszczelniona obudowa (G258)
- Oprawa kablowa
- Listwa zaciskowa śrubowa 3-stykowa
- Rezystor 4,7kOhm
- Pusta płytka drukowana 65x30mm
- 40-pinowy nagłówek do tyczenia
- 4 śruby M3x20
- 8 śrub M3
- Kabel telefoniczny
- Kabel głośnikowy
Krok 1: lutowanie modułu temperatury
W tym kroku tworzymy od podstaw moduł temperatury. Ma rozmiar pHAT i może być podłączony do 40-pinowego GPIO Pi. Ta metoda pozwala nam bezpiecznie zamontować czujnik DS18B20 do Raspberry Pi.
- Najpierw musimy przylutować 40-pinową głowicę do tyczenia do pustej płytki drukowanej 60x35 mm.
- Umieść blok zacisków śrubowych i rezystor na miejscu, jak pokazano na rysunku
- Podłącz rezystor do zewnętrznych pinów listwy zaciskowej
- Przylutuj rezystor i szpilki razem
- Przylutuj kable (czarny, czerwony i żółty) do dokładnych pinów nagłówka tyczenia i do pinów listwy zaciskowej
- Aby wywiercić otwory montażowe, najpierw zamontuj moduł do swojego Raspberry Pi zero, a następnie wywierć wiertłem 3 mm przez istniejące otwory z Raspberry Pi do nowego modułu.
- Na koniec możesz podłączyć czujnik DS18B20 do modułu, podłączając kable czujnika do odpowiednich kolorów na płycie.
Krok 2: Budowa naszego kabla konwertera DCDC
Aby zasilić nasze Raspberry Pi, musimy przekonwertować 12V, które otrzymujemy z naszej baterii, na 5V. Używamy konwertera DC DC buck, aby zmniejszyć napięcie.
- Przylutuj czarny przewód z kabla głośnikowego do portu oznaczonego GND
- Przylutuj czerwony przewód do portu oznaczonego IN+
- Przylutuj czarny przewód z kabla micro-USB do portu oznaczonego GND
- Przylutuj czerwony przewód z kabla micro-USB do portu oznaczonego OUT+
- Przecięcie obwodu oznaczonego czerwoną strzałką na obrazku
- Zgrzej ze sobą podkładki łączące, aby uzyskać stałe napięcie wyjściowe 5 V (niebieska strzałka)
Krok 3: Instalacja surfsticka
Aby nawiązać połączenie internetowe, musimy podłączyć nasz kij do surfowania do naszego Raspberry Pi. Najpierw musimy dokonać kilku konfiguracji:
- Włóż kartę SIM wybranego operatora komórkowego do kija surfingowego. W tym przykładzie używamy karty SIM firmy Things Mobile.
- Podłącz kij surfingowy do komputera przez USB.
- W Twojej przeglądarce powinno pojawić się okno.
- W obszarze Ustawienia> Zarządzanie profilami zmień APN na ten swojego operatora komórkowego. W przypadku Things Mobile jest to „TM”.
- Włącz funkcję roamingu w Ustawieniach > Połączenie mobilne i Włącz komórkową transmisję danych.
- Kliknij Zastosuj.
- Na stronie głównej możesz sprawdzić, czy połączenie zostało nawiązane.
- Teraz możesz już iść, odłącz kij surfingowy.
- Kij surfingowy można podłączyć do Raspberry bez żadnych dalszych konfiguracji.
Krok 4: Utwórz bazę danych PostgreSQL
W tym kroku tworzymy naszą bazę danych. Korzystamy z oferty bezpłatnego poziomu od Amazon Web Services.
- Najpierw utwórz darmowe konto na AWS:
- Postępuj zgodnie z tym samouczkiem, aby utworzyć bazę danych PostgreSQL i dowiedzieć się, jak się z nią połączyć:
Krok 5: Przygotowanie karty SD
Najpierw musisz pobrać obraz Raspian Stretch Lite:
Pliki do pobrania Raspberry Pi
Teraz musimy sflashować obraz na pustej karcie SD (co najmniej 16 GB). Włóż kartę SD do czytnika kart SD. Pobierz Balena Etcher i zainstaluj go na swoim komputerze:
www.balena.io/etcher/
Otwórz Balena Etcher, wybierz plik.zip pobranego wcześniej obrazu Raspian. Wybierz swoją kartę SD w Wybierz dysk. Kliknij Flash!
Krok 6: Instalowanie Raspberry i łączenie się z nim przez SSH
Zanim będziemy mogli korzystać z naszego Raspberry Pi, musimy dokonać wstępnych ustawień.
- Włóż kartę SD do Raspberry Pi i podłącz ją do monitora, klawiatury i myszy. (Jeśli nie masz dodatkowego monitora, klawiatury i myszy, możesz wykonać instalację bezgłową. Sprawdź, czy zostało to zrobione wcześniej)
- Postępuj zgodnie z instrukcjami konfiguracji swojego Raspberry Pi [wifi, język, strefa czasowa]
- Włącz SSH przez Terminal na sobie PI: sudo raspi-configgo do: 5 Opcje interfejsu Włącz SSH
-
Na swój komputer pobierz Termius. Ten program ułatwia łączenie się z naszym Raspberry Pi przez SSH.1. https://termius.com/2. Załóż konto
3. Utwórz NOWEGO HOSTA4. Nadaj swojemu Raspberryowi etykietę (wybierz nazwę) 5. Wpisz ADRES IP swojego PI z SIECI, w której jest zalogowany (jeśli nie znasz ADRESU IP, możesz go wyszukać za pomocą programu o nazwie "ADVANCED IP SCANNER") 7. Wpisz swoją nazwę użytkownika (domyślnie pi, jeśli nie zostało zmienione) 8. Wpisz swoje hasło (domyślnie malinowe, jeśli nie zostało zmienione) 9. Kliknij Zapisz 10. Kliknij dwukrotnie na nowo utworzony host 11. Pojawi się komunikat -> kliknij tak
Twój Raspberry powinien być podłączony do komputera przez SSH
Krok 7: Instalacja rejestratora
- Włącz kamerę w opcjach interfejsu: sudo raspi-configgo do: 5 Opcje interfejsu Włącz ponowne uruchomienie Camerasudo
- Utwórz nowy katalog w katalogu /home/pi cd /home/pisudo mkdir Desktop
- Utwórz nowy plik Pythona w katalogu Pulpitcd Desktopsudo nano ctrl+ocall plik qrbooftemp.pyenterctrl+x
- Zainstaluj pakiet pyboof (numpy i py4j są instalowane automatycznie) może to zająć do 40 min.sudo pip3 zainstaluj pyboof==0.33.1
- Uruchom aktualizację (jeśli tego nie zrobisz, możesz mieć problemy podczas późniejszej instalacji pakietów) sudo apt-get updatesudo apt-get install libpq-dev
- Zainstaluj postgreSQL i psycopg2 do interakcji z bazą danych postgreSQL za pośrednictwem Pythonsudo apt-get zainstaluj postgresqlsudo pip3 zainstaluj psycopg2
Krok 8: Instalacja rejestratora (moduł temperatury)
Aby zainstalować moduł temperatury, musisz zamontować moduł na swoim Raspberry Pi z podłączonym do niego czujnikiem DS18B20. Moduł jest montowany przez 40-pinową listwę.
- włącz 1-wire w opcjach interfejsu sudo raspi-configgo do: 5 opcji interfejsu Włącz ponowne uruchomienie 1-Wiresudo
- ustaw pin 1-Wire na pin 23 i gpu_mem=256sudo nano /boot/config.txt append dtoverlay=w1-gpio, gpiopin=23, pullup=on do końca zmiany pliku gpu_mem=128 na gpu_mem=256
- aktywacja 1-Wiresudo modprobe w1-gpiosudo modprobe w1-thermsudo restart
- znajdź adres swojego DS18B20, powinien zaczynać się od 28- …cd /sys/bus/w1/deviceslswpisz adres, jest on później potrzebny w skrypcie Pythona
Krok 9: Pobierz i dostosuj skrypt Pythona
- Pobierz skrypt Pythona na swój komputer i otwórz go w edytorze tekstówhttps://github.com/gremax93/QR-Code-Water-Level
- Skopiuj cały skrypt do schowka (ctrl+a, ctrl+c)
- Przejdź do wcześniej utworzonego pliku Pythona /home/pi/Desktopsudo nano qrbooftemp.py
- Kliknij prawym przyciskiem myszy, aby wstawić skrypt
- Zmień adres czujnika temperatury na wcześniej zapisany
- Zmień konfigurację połączenia postgresql na określone informacje, jak wskazano w skrypcie
- Zapisz i wyjdź ctrl+oenterctrl+x
Krok 10: Instalacja modułu WittyPi
- Pobierz plik instalacyjny z Witty Pi wget
- Uruchom skrypt instalacyjny sudo sh installWittyPi.sh
- Uruchom ponownie sudo restart
Krok 11: Wprowadź zmiany w konfiguracji wirtualnej maszyny Java
Ten krok jest niezbędny, aby upewnić się, że JVM uruchomi się po wykonaniu skryptu Pythona.
- Przejdź do katalogu py4j i otwórz jawa_gateway.py cd /usr/local/lib/python3.5/dist-packages/py4jsudo nano jawa_gateway.pyset DEFAULT_CALLBACK_SERVER_ACCEPT_TIMEOUT = 20
- Przejdź do katalogu pyboof i otwórz _init_.pycd /usr/local/lib/python3.5/dist-packages/pyboofsudo nano _init_.pyset while time.time() - start_time < 20.0
Krok 12: Ustaw zadanie Cron
W tym kroku ustawiamy cronjob podczas rozruchu Raspberry. W ten sposób za każdym razem, gdy Pi się budzi, nasz skrypt Pythona jest wykonywany.
- Ustaw cronjob i zapisz go w pliku dziennika. Dzięki temu rozwiązywanie problemów jest bardziej efektywne.crontab -e@reboot sleep 20 && sudo python3 /home/pi/Desktop/qrbooftemp.py >> /home/pi/Desktop/log.txt
- Dołącz kolejną linię do crontab. Ta linia zapewnia, że gdy WittyPi zawiedzie, Raspberry Pi i tak się zrestartuje.@reboot sleep 1500 && sudo rebootctrl+oenterctrl+x
Krok 13: Składanie wszystkiego razem
- Upewnij się, że twoje Pi jest odrzucone, jeśli nie, zamknij je downsudo shutdown -h teraz
- Ułóż swój WittyPi na swoim Raspberry Pi, a na nim moduł temperatury.
- Skręć 3 moduły razem
- Podłącz moduł kamery do portu CSI raspberry pi zero
- Podłącz swój surfstick do Raspberry Pi za pomocą kabla USB OTG
- Podłącz kabel zasilający do WittyPi (nie do Raspberry Pi!)
- Włóż wszystko do obudowy i przykręć pokrywkę
- Podłącz kabel zasilający do baterii
- Gratulacje, że Twój rejestrator powinien być uruchomiony!
Krok 14: Instalacja końcowa
Te zdjęcia przedstawiają zamontowany rejestrator z zainstalowanym kodem QR poziomu wody.
W celu uzyskania optymalnych wyników rejestratory zostały zainstalowane pod mostem. Należy unikać bezpośredniego światła słonecznego.
Zalecana:
System monitorowania poziomu wody: 9 kroków (ze zdjęciami)
System monitorowania poziomu wody: Jako majsterkowicz zawsze staram się znaleźć sposób, aby życie moje i innych było łatwiejsze i bezpieczniejsze. W dniu 30 marca 2013 r. co najmniej 11 osób zmarło w wyniku nagłego deszczu, który spowodował powódź w Mauritius Capital Port louis. W tym samym dniu kilka domów
System alarmowy do picia wody/monitor poboru wody: 6 kroków
System alarmowy do picia wody/monitor poboru wody: Powinniśmy pić wystarczającą ilość wody codziennie, aby zachować zdrowie. Jest też wielu pacjentów, którym przepisuje się codzienne wypijanie określonej ilości wody. Ale niestety prawie codziennie przegapiliśmy harmonogram. Więc projektuję
System monitorowania wody (Arduino Uno) WIP: 9 kroków
System monitorowania wody (Arduino Uno) WIP: Ten system służy jako moja iteracja taniego urządzenia do monitorowania wody w małej obudowie. Inspiracją dla tego projektu była Olimpiada Naukowa o nazwie Jakość Wody. To, co początkowo było tylko miernikiem zasolenia, przekształciło się w ten
Systemy ostrzegania o powodzi - poziomy wody + przewodnik monitorowania czujników IoT: 6 kroków
Systemy ostrzegania przed powodzią - poziomy wody + przewodnik po monitorowaniu czujników IoT: Czy musisz monitorować poziom wody? W tym samouczku dowiesz się, jak tworzyć systemy monitorowania poziomu wody. Te urządzenia Industrial IoT są wdrażane jako systemy ostrzegania przed powodzią w USA. Aby zapewnić bezpieczeństwo Tobie i Twojej społeczności, Smart Cities musi
Automatyczny system ogrzewania wody 1.0: 4 kroki (ze zdjęciami)
Automatyczny system podgrzewania wody 1.0: To gejzer biednego człowieka. Oszczędza również energię elektryczną. Temperatura jest kontrolowana przez mikrokontroler tj. Digispark Attiny85. Proszę obejrzeć moją drugą wersję https://www.instructables.com/id/Temperature-Controlled-Water-Heater-20