Πίνακας περιεχομένων:

IOT Water Pistol/plant Waterer: 20 Βήματα
IOT Water Pistol/plant Waterer: 20 Βήματα

Βίντεο: IOT Water Pistol/plant Waterer: 20 Βήματα

Βίντεο: IOT Water Pistol/plant Waterer: 20 Βήματα
Βίντεο: Indoor Plant Watering System Review - DIY Automatic Drip Irrigation Kit - Water Plants On Vacation 2024, Ιούλιος
Anonim
IOT Water Pistol/plant Waterer
IOT Water Pistol/plant Waterer

Αυτό είναι ένα διασκεδαστικό έργο που χρησιμοποιεί το Google Home ή οποιοδήποτε τηλέφωνο με τον βοηθό Google για να ψεκάζει νερό σε κάποιον ή να ποτίζει κάποια φυτά. Έχει επίσης πολλές πιθανές εφαρμογές για άλλες χρήσεις όπως φώτα, θέρμανση, ανεμιστήρες κ.λπ. Αν σας αρέσει, ψηφίστε για αυτά τα έργα στον διαγωνισμό IOT. Ευχαριστώ.

Βήμα 1: Απαιτούνται πόροι

Απαιτούμενοι πόροι
Απαιτούμενοι πόροι

Θα χρειαστείτε τα εξής:

  • Ένα raspberry pi (οποιοδήποτε μοντέλο έχει πρόσβαση στο Διαδίκτυο)
  • Αντλία νερού 12v (αυτή είναι που χρησιμοποίησα)
  • Τροφοδοτικό 12V (Χρησιμοποιήστε αυτό το ένα ή ένα ξαπλωμένο)
  • Ρελέ 5v 2 καναλιών (Αυτός είναι ο τύπος που χρησιμοποίησα)
  • Μερικά γυναικεία προς θηλυκά άλματα
  • Ένα πλαστικό κουτί για να συγκρατεί το νερό
  • Κάποιος τρόπος για να εκτοξευτεί το νερό από την αντλία (έκαμψα έναν πλαστικό σωλήνα, αλλά μπορείτε απλά να χρησιμοποιήσετε ένα καλαμάκι)

Χρησιμοποιήσαμε ρελέ καθώς σας επιτρέπει να το ενεργοποιήσετε από απόσταση με το raspberry pi αντί να χρειαστεί να είστε φυσικά εκεί για να το ενεργοποιήσετε όπως θα κάνατε αν ήταν απλώς ένας διακόπτης.

Βήμα 2: Βοηθός Google

Βεβαιωθείτε ότι έχετε κάποιον τρόπο πρόσβασης στον Βοηθό Google. Θα μπορούσατε να χρησιμοποιήσετε ένα σπίτι Google ή ένα τηλέφωνο.

Βήμα 3: Κοπή καλωδίων

Κοπή καλωδίων
Κοπή καλωδίων

Χρησιμοποιήστε κοπτικά σύρματος για να κόψετε και, στη συνέχεια, αφαιρέστε τα άκρα από την παροχή και την αντλία 12V, ώστε να μπορούν να προσαρτηθούν στο ρελέ. Βεβαιωθείτε ότι έχετε αφαιρέσει αρκετά το περίβλημα για να επιτρέψετε μια σταθερή σύνδεση.

Βήμα 4: Συνδέστε την αντλία στο ρελέ

Συνδέστε την αντλία στο ρελέ
Συνδέστε την αντλία στο ρελέ
  1. Ξεβιδώστε το μεσαίο τερματικό και στα δύο ρελέ
  2. Τοποθετήστε καλώδια από την αντλία νερού
  3. Βιδώστε ξανά

Βήμα 5: Σύνδεση τροφοδοσίας στο ρελέ

Σύνδεση τροφοδοσίας στο ρελέ
Σύνδεση τροφοδοσίας στο ρελέ
  1. Ξεβιδώστε τερματικά
  2. βάλτε καλώδια από το τροφοδοτικό 12v
  3. Βιδώστε τα ξανά στη θέση τους

Βήμα 6: Σύνδεση Raspberry Pi σε Relay

Σύνδεση Raspberry Pi με Relay
Σύνδεση Raspberry Pi με Relay

Συνδέστε το raspberry pi στο ρελέ όπως φαίνεται στο παραπάνω διάγραμμα. Θα χρειαστεί να συνδέσετε το ρελέ στη γείωση, 5v και 2 ακίδες GPIO.

Βήμα 7: Ασφάλιση της αντλίας

Ασφάλιση της αντλίας
Ασφάλιση της αντλίας

Χρησιμοποιήστε είτε μπλε κασέτα είτε κολλητική ταινία για να στερεώσετε την αντλία σε πλαστικό δοχείο.

Βήμα 8: Κατεύθυνση νερού

Σκηνοθεσία Νερού
Σκηνοθεσία Νερού
Σκηνοθεσία Νερού
Σκηνοθεσία Νερού

Αν θέλετε το νερό να ψεκάζει κάποιον στο πρόσωπο, πρέπει να κατευθυνθεί. Για να το κάνω αυτό, χρησιμοποίησα ένα πιστόλι θερμότητας για να λυγίσω έναν πλαστικό σωλήνα στο σχήμα που φαίνεται παραπάνω. Στη συνέχεια έβαλα ένα καπάκι στυλό στην κορυφή. Εναλλακτικά, μπορείτε να χρησιμοποιήσετε ένα καλαμάκι.

Εάν θέλετε να ποτίσετε μερικά φυτά, μπορείτε να προσθέσετε έναν πλαστικό σωλήνα ή το εσωτερικό ενός στυλό.

Βήμα 9: Συνδυάζοντας τα πάντα μαζί

Βάζοντας τα πάντα μαζί
Βάζοντας τα πάντα μαζί
Βάζοντας τα πάντα μαζί
Βάζοντας τα πάντα μαζί
Βάζοντας τα πάντα μαζί
Βάζοντας τα πάντα μαζί

Πρόσθεσα ένα άλλο πλαστικό κουτί και έβαλα το βατόμουρο πι και ρελέ σε αυτό για να σταματήσει να βραχεί.

Έχω συμπεριλάβει ένα διάγραμμα κυκλώματος παραπάνω για να κάνω το κύκλωμα λίγο πιο σαφές.

Βήμα 10: Δοκιμή εργασιών υλικού

Για να δοκιμάσετε τις εργασίες της αντλίας εκτελέστε τον ακόλουθο κώδικα στο raspberry pi. Αυτό θα πρέπει να απενεργοποιήσει και να ενεργοποιήσει την αντλία (ή το αντίθετο).

από gpiozero εισαγωγής LED

χρόνος εισαγωγής #αυτό θα εισαγάγει τις σχετικές ενότητες που χρειαζόμαστε για αυτόν τον κωδικό ρελέ = LED (14) ρελέ2 = LED (15) #εκχωρώντας τα ρελέ ένα LED ενώ True: relay.on () #το μαντέψατε … γυρίζοντας το ρελέ στο ρελέ off

Βήμα 11: Εισαγωγή φιάλης

Εισαγωγή φιάλης
Εισαγωγή φιάλης

Ο ευκολότερος τρόπος για τον βοηθό google να ελέγξει το raspberry pi είναι να το κάνει να φιλοξενήσει έναν διακομιστή ιστού. Στη συνέχεια, μπορούμε να κάνουμε την Google να επισκέπτεται μια σελίδα σε αυτόν τον διακομιστή κάθε φορά που λέτε κάτι και κωδικοποιείτε το raspberry pi για να ενεργοποιήσετε και να απενεργοποιήσετε το ρελέ όταν επισκέπτεστε τον διακομιστή. Αν θέλετε ένα σε βάθος σεμινάριο φιάλης τότε: επισκεφτείτε αυτό το σεμινάριο του raspberry pi.

Στην εισαγωγή raspberry pi σας, η μονάδα φιάλης σε python.

  1. Βεβαιωθείτε ότι είστε συνδεδεμένοι στο διαδίκτυο
  2. Ανοίξτε ένα τερματικό
  3. Πληκτρολογήστε:

sudo pip3 φιάλη εγκατάστασης

Εάν αυτό δεν λειτουργεί:

  • Βεβαιωθείτε ότι είστε συνδεδεμένοι στο διαδίκτυο
  • Κοιτάξτε αυτόν τον οδηγό

Βήμα 12: Δημιουργήστε έναν φάκελο για το πρόγραμμά μας και μεταβείτε σε αυτόν

Κάντε το ανοίγοντας ένα τερματικό και πληκτρολογώντας:

mkdir webapp

cd webapp

Βήμα 13: Κωδικοποίηση διακομιστή Web

  1. Ανοίξτε το ρελαντί 3
  2. Αρχείο> Δημιουργία νέου
  3. Αποθηκεύστε το στο φάκελο εφαρμογών ιστού που μόλις δημιουργήσατε
  4. Εισαγάγετε αυτόν τον κωδικό

από φιάλη εισαγωγής Φιάλη

από gpiozero εισαγωγή LED χρόνος εισαγωγής #αυτά εισάγουν ενότητες που απαιτούνται για αυτό το έργο ρελέ = LED (14) ρελέ2 = LED (15) #εκχώρηση των ρελέ μια εφαρμογή LED = Φιάλη (_ όνομα_) #εκχώρηση Εμφάνιση μεταβλητού ονόματος έτσι ώστε να είναι ευκολότερο για να εκτελέσετε κώδικα μαζί του αργότερα στο @app.route ('/', Methods = ['GET']) #κάνοντας GET στην ιστοσελίδα "" "" αυτή η συνάρτηση θα επιστρέψει αυτό που εμφανίζεται στην κύρια σελίδα "" " def index (): επιστροφή 'Κύρια σελίδα' @app.route ('/on') #ενεργοποίηση των ρελέ μέσω της παρακάτω συνάρτησης "" "ενεργοποίησης των ρελέ και εκτύπωση hi για να ελέγξετε τη λειτουργία" "" def " on (): print ("hi") relay.on () relay2.off () return "on" @app.route ('/off') #κλείσιμο των ρελέ μέσω της παρακάτω λειτουργίας "" απενεργοποίησης των ρελέ και η εκτύπωση hi για να ελέγξετε ότι η λειτουργία λειτουργεί σωστά def off (): print ("hi") relay.off () relay2.on () return 'off' @app.route ('/go') #running η λειτουργία πηγαίνει "" "" αυτή η λειτουργία ενεργοποιεί τα ρελέ έτσι ψεκάζει νερό "" def go (): relay.on () relay2.off () time.sleep (3) relay.off () relay2.on () return ('go') "" "" πρόσβαση στην ιστοσελίδα μέσω της σχετικής θύρας (το 8000 είναι συνήθως στο σπίτι) και "" "" host εάν _name_ == '_main_': app. εκτέλεση (εντοπισμός σφαλμάτων = True, θύρα = 8000, κεντρικός υπολογιστής = '0.0.0.0')

Τα σχόλια εξηγούν τι συμβαίνει στον κώδικα

Βήμα 14: Δοκιμή κώδικα λειτουργεί

Ανοίξτε το πρόγραμμα περιήγησης ιστού και εισαγάγετε τη διεύθυνση URL

Θα πρέπει να βλέπετε μια λευκή οθόνη, αλλά θα πρέπει να μπορείτε να ακούτε το κλικ του ρελέ σε εξέλιξη ή εάν η αντλία είναι συνδεδεμένη, θα πρέπει να συνεχίσει.

Για να απενεργοποιήσετε την αντλία, μεταβείτε στη διεύθυνση

Σημείωση: 127.0.0.1 σημαίνει «σπίτι», δηλαδή αυτός ο υπολογιστής: 5000 σημαίνει «θύρα 5000», η οποία είναι η θύρα στην οποία εκτελείται ο διακομιστής ιστού.

Εάν αυτό λειτουργεί, μπορείτε να το προχωρήσετε ένα βήμα παρακάτω:

1. Μάθετε τη διεύθυνση IP βατόμουρου, πληκτρολογώντας:

όνομα κεντρικού υπολογιστή -I

2. Σε οποιονδήποτε υπολογιστή συνδεδεμένο στο ίδιο wifi με το pi σας επισκέπτεστε τη διεύθυνση pisipadress/on

Αυτό θα πρέπει να ενεργοποιήσει το ρελέ.

Αυτό δείχνει πώς μπορείτε να ελέγξετε το raspberry pi από οποιονδήποτε υπολογιστή συνδεδεμένο στο ίδιο wifi με το raspberry pi.

Βήμα 15: Σήραγγα

Έτσι, το Google Home μπορεί να επισκεφτεί αυτόν τον ιστότοπο, θα χρειαστεί να δημιουργήσετε μια σήραγγα, ώστε υπολογιστές που δεν είναι συνδεδεμένοι στην ίδια διεύθυνση IP, όπως μπορείτε να απενεργοποιήσετε και να ενεργοποιήσετε το ρελέ. Μπορείτε να το κάνετε αυτό με το ngrok. Αυτό είναι ένα πρόγραμμα που μπορείτε να εγκαταστήσετε στο raspberry pi που θα σας επιτρέψει να επισκεφθείτε τον ιστότοπο της φιάλης από οποιονδήποτε υπολογιστή.

Επισκεφθείτε τον ιστότοπό τους για περισσότερες πληροφορίες:

Βήμα 16: Εγκατάσταση του Ngrok

Εισαγάγετε αυτόν τον σύνδεσμο στο raspberry pi σας: https://ngrok.com/download και ακολουθήστε τις οδηγίες για λήψη και ρύθμιση του ngrok.

Βήμα 17: Δοκιμή Ngrok

Βεβαιωθείτε ότι ο διακομιστής φιάλης λειτουργεί.

Ανοίξτε ένα άλλο τερματικό και πληκτρολογήστε cd webapp

Στη συνέχεια, ξεκινήστε το ngrok πληκτρολογώντας

./ngrok http 5000

Αυτό θα σας δείξει ένα URL στο οποίο θα πρέπει να μπορείτε να μεταβείτε σε οποιαδήποτε συσκευή. Αντιγράψτε αυτό και στείλτε το με email στον εαυτό σας για το επόμενο βήμα

Εάν αυτό δεν λειτουργεί:

  1. Βεβαιωθείτε ότι η φιάλη λειτουργεί
  2. Βεβαιωθείτε ότι εκτελείτε το ngrok στον ίδιο φάκελο με το πρόγραμμα φιάλης
  3. Βεβαιωθείτε ότι έχετε αντιγράψει τον σωστό σύνδεσμο (αλλάζει κάθε φορά που κάνετε επανεκκίνηση του προγράμματος)

Βήμα 18: IFFF

IFFF
IFFF

IFFF: If This Then That είναι ένα δωρεάν πρόγραμμα που μπορεί να χρησιμοποιηθεί για να κάνει το google home να επισκέπτεται έναν διακομιστή ιστού όταν του λέει κάτι, Για να το ρυθμίσετε ακολουθήστε τα εξής βήματα:

  1. Είτε επισκεφτείτε τη διεύθυνση https://ifttt.com/ είτε κατεβάστε την εφαρμογή
  2. Δημιουργία λογαριασμού
  3. Κάντε κλικ στη δημιουργία νέας μικροεφαρμογής (μερικές φορές κάτω από τις μικροεφαρμογές μου)
  4. Κάντε κλικ σε αυτό
  5. Κάντε αναζήτηση στο google και επιλέξτε το Google βοηθό
  6. Κάντε κλικ για να πείτε μια απλή φράση
  7. Κάτω από αυτό που θέλετε να πείτε βάλτε "ενεργοποιήστε το πιστόλι νερού" ή οτιδήποτε θέλετε
  8. Κάντε κλικ στη δημιουργία σκανδάλης
  9. Κάντε κλικ σε αυτό
  10. Αναζήτηση στον ιστό
  11. Κάντε κλικ στα webnooks
  12. Κάντε κλικ στην επιλογή Υποβολή αιτήματος ιστού
  13. Κάτω από τη διεύθυνση URL πληκτρολογήστε τη διεύθυνση URL που σας έδωσε η θερμότητα νωρίτερα/πάει
  14. Στην περιοχή Μέθοδος επιλέξτε GET
  15. Στην ενότητα Περιεχόμενο επιλέξτε κείμενο/απλό
  16. Κάντε κλικ στην επιλογή Δημιουργία
  17. Κάντε κλικ στο τέλος

Βήμα 19: Τέλος

Τώρα όταν λέτε hey google (εισαγάγετε τη φράση που επιλέξατε), η αντλία θα πρέπει να ενεργοποιηθεί.

Εάν αυτό δεν λειτουργεί (μου πήρε περίπου 15 προσπάθειες για να λειτουργήσει):

  1. Βεβαιωθείτε ότι όλα τα προγράμματα εκτελούνται
  2. Βεβαιωθείτε ότι όλα τα καλώδια είναι συνδεδεμένα
  3. Βεβαιωθείτε ότι το URL που καταχωρίσατε στο IFTT είναι το πιο πρόσφατο
  4. Βεβαιωθείτε ότι το raspberry pi είναι συνδεδεμένο στο διαδίκτυο

Βήμα 20: Διαγωνισμός IOT

Αν σας άρεσε αυτό το σεμινάριο, ψηφίστε μας στον διαγωνισμό IOT. Σε ευχαριστώ πάρα πολύ.

Συνιστάται: