Spisu treści:

Pistolet wodny IOT/podlewacz roślin: 20 kroków
Pistolet wodny IOT/podlewacz roślin: 20 kroków

Wideo: Pistolet wodny IOT/podlewacz roślin: 20 kroków

Wideo: Pistolet wodny IOT/podlewacz roślin: 20 kroków
Wideo: Na Działce! Vlog odc.78 Rozdzielacz Węża Ogrodowego Cellfast + Zraszacz Teścik. #MajsterAmator 2024, Lipiec
Anonim
Pistolet wodny IOT/podlewacz do roślin
Pistolet wodny IOT/podlewacz do roślin

To zabawny projekt, który wykorzystuje Google Home lub dowolny telefon z asystentem Google do spryskiwania kogoś wodą lub podlewania niektórych roślin. Ma również wiele potencjalnych zastosowań do innych zastosowań, takich jak oświetlenie, ogrzewanie, wentylatory itp. Jeśli Ci się to podoba to zagłosuj na te projekty w konkursie IOT. Dziękuję.

Krok 1: Potrzebne zasoby

Potrzebne zasoby
Potrzebne zasoby

Będziesz potrzebować:

  • Raspberry Pi (każdy model z dostępem do internetu)
  • Pompa wodna 12 V (to ta, której użyłem)
  • Zasilacz 12 v (użyj tego lub jednego leżącego w pobliżu)
  • Przekaźnik 5v 2 kanałowy (jest to typ, którego użyłem)
  • Niektóre smyczki żeńskie do żeńskich
  • Plastikowe pudełko do przechowywania wody
  • Jakiś sposób, żeby woda wypłynęła z pompy (zgiąłem plastikową rurkę, ale można było użyć słomki)

Użyliśmy przekaźników, ponieważ pozwala to zdalnie włączyć go za pomocą raspberry pi, zamiast fizycznie być tam, aby go włączyć, tak jak gdyby to był tylko przełącznik.

Krok 2: Asystent Google

Upewnij się, że masz jakiś sposób na dostęp do Asystenta Google. Możesz użyć Google Home lub telefonu.

Krok 3: Cięcie przewodów

Cięcie drutów
Cięcie drutów

Użyj przecinaków do drutu, aby odciąć, a następnie zdejmij końce z zasilacza 12 V i pompy, aby można je było przymocować do przekaźnika. Upewnij się, że rozebrać wystarczająco dużo osłony, aby umożliwić solidne połączenie.

Krok 4: Podłącz pompę do przekaźnika

Podłącz pompę do przekaźnika
Podłącz pompę do przekaźnika
  1. Odkręć środkowy zacisk na obu przekaźnikach
  2. Włóż przewody z pompy wodnej
  3. Wkręć ponownie

Krok 5: Podłączanie zasilacza do przekaźnika

Podłączanie zasilacza do przekaźnika
Podłączanie zasilacza do przekaźnika
  1. Odkręć zaciski
  2. włożyć przewody z zasilacza 12v
  3. Przykręć je z powrotem na miejsce

Krok 6: Podłączanie Raspberry Pi do przekaźnika

Podłączanie Raspberry Pi do przekaźnika
Podłączanie Raspberry Pi do przekaźnika

Podłącz raspberry pi do przekaźnika, jak pokazano na powyższym schemacie. Będziesz musiał podłączyć przekaźnik do masy, 5V i 2 pinów GPIO.

Krok 7: Zabezpieczanie pompy

Zabezpieczanie pompy
Zabezpieczanie pompy

Użyj kleju blu-tack lub taśmy klejącej, aby przymocować pompę do plastikowego pojemnika.

Krok 8: Kierowanie wodą

Kierowanie wodą
Kierowanie wodą
Kierowanie wodą
Kierowanie wodą

Jeśli chcesz, aby woda tryskała komuś w twarz, musisz to skierować. W tym celu zagiąłem plastikową rurkę opalarką do pokazanego powyżej kształtu. Następnie przykleiłem na górze pokrywkę długopisu. Alternatywnie możesz użyć słomki.

Jeśli chcesz podlać niektóre rośliny, możesz dodać plastikową rurkę lub wnętrze długopisu.

Krok 9: Składanie wszystkiego razem

Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem
Składanie wszystkiego razem

Dodałem kolejne plastikowe pudełko i włożyłem do niego raspberry pi i przekaźnik, aby zapobiec zamoczeniu.

Powyżej zamieściłem schemat obwodu, aby obwód był nieco bardziej przejrzysty.

Krok 10: Testowanie pracy sprzętu

Aby przetestować pracę pompy uruchom poniższy kod na Raspberry Pi. Powinno to wyłączyć i ponownie włączyć pompę (lub odwrotnie).

z diody LED importu gpiozero

import time #to zaimportuje odpowiednie moduły, których potrzebujemy dla tego kodu relay = LED(14) relay2 = LED(15) #przypisanie przekaźnikom diody LED podczas gdy True: relay.on() #zgadłeś… włączenie przekaźnika relay.off() #zgadłeś… wyłączanie przekaźnika time.sleep(1) #spanie przez 1 sekundę relay.on() #przekaźnik włączony relay.off() #przekaźnik wyłączanie time.sleep(1) #spanie

Krok 11: Importowanie kolby

Importowanie kolby
Importowanie kolby

Najłatwiejszym sposobem, w jaki asystent Google może kontrolować Raspberry Pi, jest nakłonienie go do hostowania serwera WWW. Możemy wtedy zmusić Google do odwiedzenia strony na tym serwerze, gdy tylko coś powiesz i zakodujesz raspberry pi, aby włączać i wyłączać przekaźnik, gdy serwer jest odwiedzany. Jeśli chcesz uzyskać bardziej szczegółowy samouczek dotyczący kolby: odwiedź ten samouczek autorstwa raspberry pi.

Na swoim raspberry pi zaimportuj moduł kolby na Pythona.

  1. Upewnij się, że masz połączenie z internetem
  2. Otwórz terminal
  3. Wpisz:

kolba instalacyjna sudo pip3

Jeśli to nie zadziała:

  • Upewnij się, że masz połączenie z internetem
  • Spójrz na ten przewodnik

Krok 12: Utwórz folder dla naszego programu i wejdź do niego

Zrób to, otwierając terminal i wpisując:

aplikacja internetowa mkdir

aplikacja internetowa na cd

Krok 13: Kodowanie serwera WWW

  1. Otwórz bezczynność 3
  2. Plik > Utwórz nowy
  3. Zapisz go w folderze aplikacji internetowej, który właśnie utworzyłeś
  4. Wstaw ten kod

z kolby importu Flask

from gpiozero import LED import time #to import modułów wymaganych dla tego projektu relay = LED(14) relay2 = LED(15) #przypisanie przekaźnikom aplikacji LED = Flask(_name_) #przypisanie Flask nazwy zmiennej, aby było łatwiej aby uruchomić kod z nim później na @app.route('/', method=['GET']) #wykonywanie GET na stronie internetowej """ta funkcja zwróci to, co jest wyświetlane na stronie głównej""" def index(): return 'Strona główna' @app.route('/on') #włączanie przekaźników funkcją poniżej """włączanie przekaźników i drukowanie hi aby sprawdzić, czy funkcja działa poprawnie""" def on(): print("hi") relay.on() relay2.off() return 'on' @app.route('/off') #wyłączanie przekaźników poprzez funkcję poniżej """wyłączanie przekaźników i wypisanie hi, aby sprawdzić, czy funkcja działa poprawnie""" def off(): print("hi") relay.off() relay2.on() return 'off' @app.route('/go') #running funkcja go """ta funkcja włącza przekaźniki, więc rozpyla wodę""" def go(): relay.on() relay2.off() time.sleep(3) relay.off() relay2.on() return ('go') """dostęp do strony internetowej przez odpowiedni port (zazwyczaj 8000 to dom) i host""" if _name_ == '_main_': app. uruchom(debug=True, port=8000, host='0.0.0.0')

Komentarze wyjaśniają, co się dzieje w kodzie

Krok 14: Testowanie kodu działa

Otwórz przeglądarkę internetową i wprowadź adres URL

Powinieneś zobaczyć biały ekran, ale powinieneś być w stanie usłyszeć kliknięcie przekaźnika lub jeśli pompa jest podłączona, powinna działać.

Aby wyłączyć pompę, wejdź na

Uwaga: 127.0.0.1 oznacza „dom”, tj. ten komputer:5000 oznacza „port 5000”, czyli port, na którym działa serwer WWW.

Jeśli to zadziała, możesz pójść o krok dalej:

1. Znajdź swój adres ip raspberry pis, wpisując:

nazwa hosta -I

2. Na dowolnym komputerze podłączonym do tego samego Wi-Fi co twoje pi odwiedzając adres pisipadress/on

To powinno włączyć przekaźnik.

To pokazuje, jak możesz kontrolować swoje raspberry pi z dowolnego komputera podłączonego do tego samego Wi-Fi, co raspberry pi.

Krok 15: Tunelowanie

Aby Google Home mógł odwiedzić tę witrynę, musisz utworzyć tunel, aby komputery, które nie są połączone z tym samym adresem IP, nadal można wyłączać i włączać przekaźnik. Możesz to zrobić za pomocą ngroka. Jest to program, który możesz zainstalować na raspberry pi, który pozwoli Ci wejść na stronę kolby z dowolnego komputera.

Odwiedź ich stronę internetową, aby uzyskać więcej informacji:

Krok 16: Instalacja Ngrok

Wpisz ten link na swoim raspberry pi: https://ngrok.com/download i postępuj zgodnie z instrukcjami, aby pobrać i skonfigurować ngrok.

Krok 17: Testowanie Ngrok

Upewnij się, że serwer kolby działa.

Otwórz inny terminal i wpisz cd webapp

Następnie zacznij ngrok wpisując

./nrok http 5000

Powinno to pokazać adres URL, do którego powinieneś być w stanie przejść na dowolnym urządzeniu. Skopiuj to i wyślij do siebie, aby wykonać następny krok

Jeśli to nie zadziała:

  1. Upewnij się, że kolba jest uruchomiona
  2. Upewnij się, że używasz ngrok w tym samym folderze co program do kolb
  3. Upewnij się, że skopiowałeś właściwy link (zmienia się przy każdym ponownym uruchomieniu programu)

Krok 18: IFFF

IFFF
IFFF

IFFF: If This Then That jest darmowym programem, którego można użyć, aby Twój domowy Google odwiedzał serwer WWW, gdy coś mu powiesz, Aby to skonfigurować, wykonaj następujące kroki:

  1. Odwiedź stronę https://ifttt.com/ lub pobierz aplikację
  2. Utwórz konto
  3. Kliknij utwórz nowy aplet (czasami pod moimi apletami)
  4. Kliknij to
  5. Wyszukaj google i wybierz asystenta google
  6. Kliknij powiedz proste zdanie
  7. Pod tym, co chcesz powiedzieć, umieść „aktywuj pistolet na wodę” lub cokolwiek chcesz
  8. Kliknij, aby utworzyć wyzwalacz
  9. Kliknij to
  10. Szukaj w internecie
  11. Kliknij webnooki
  12. Kliknij Złóż wniosek internetowy
  13. W polu URL wpisz adres URL, który podał ci wcześniej ngrok/go
  14. W sekcji Metoda wybierz GET
  15. W sekcji Treść wybierz tekst/zwykły
  16. Kliknij Utwórz
  17. Kliknij Zakończ

Krok 19: Gotowe

Teraz, gdy powiesz „hej google” (wstaw wybraną frazę), pompa powinna się włączyć.

Jeśli to nie działa (zajęło mi około 15 prób, aby działało):

  1. Upewnij się, że wszystkie programy są uruchomione
  2. Upewnij się, że wszystkie przewody są podłączone
  3. Upewnij się, że adres URL wprowadzony do IFTT jest najnowszym
  4. Upewnij się, że raspberry pi jest połączone z internetem

Krok 20: Konkurencja IOT

Jeśli podobał Ci się ten samouczek, zagłosuj na nas w konkursie IOT. Bardzo dziękuję.

Zalecana: