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

Έξυπνο απολυμαντικό με Magicbit: 5 βήματα
Έξυπνο απολυμαντικό με Magicbit: 5 βήματα

Βίντεο: Έξυπνο απολυμαντικό με Magicbit: 5 βήματα

Βίντεο: Έξυπνο απολυμαντικό με Magicbit: 5 βήματα
Βίντεο: Φτιάξε το δικό σου Απολυμαντικό επιφανειών, μέσα σε 3 λεπτά! 2024, Δεκέμβριος
Anonim

Σε αυτό το σεμινάριο θα μάθουμε πώς να φτιάξετε ένα αυτόματο απολυμαντικό με πρόσθετες λειτουργίες χρησιμοποιώντας το Magicbit. Χρησιμοποιούμε το magicbit ως πίνακα ανάπτυξης σε αυτό το έργο που βασίζεται στο ESP32. Επομένως, οποιοσδήποτε πίνακας ανάπτυξης ESP32 μπορεί να χρησιμοποιηθεί σε αυτό το έργο.

Προμήθειες

Magicbit

  • Αισθητήρας υπερήχων - HC -SR04 (Generic)
  • Μεταλλικό σερβο MG945
  • DFRobot Gravity: Analog Capacitive Soil Moisture Sensor- Resistant Resistant
  • Καλώδιο USB-A σε Micro-USB

Βήμα 1: Ιστορία

Ιστορία
Ιστορία

Γεια σας παιδιά, σήμερα θα μάθουμε πώς να φτιάξετε ένα έξυπνο απολυμαντικό χρησιμοποιώντας το Magicbit με το Arduino IDE.

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

Ας δούμε πώς το φτιάξαμε αυτό.

Βήμα 2: Θεωρία και Μεθοδολογία

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

Χρησιμοποιώντας τον παρακάτω σύνδεσμο, μπορείτε να μάθετε περισσότερα σχετικά με το σόναρ, το σερβο, την υγρασία του εδάφους και το Magicbit dev. σανίδα.

magicbit-arduino.readthedocs.io/el/latest/

Βήμα 3: Ρύθμιση υλικού

Ρύθμιση υλικού
Ρύθμιση υλικού
Ρύθμιση υλικού
Ρύθμιση υλικού
Ρύθμιση υλικού
Ρύθμιση υλικού

Αυτό έχει δύο ενότητες. Το πρώτο είναι η κατασκευή του κυκλώματος και το δεύτερο είναι η κατασκευή του μηχανισμού. Συνδέουμε δύο αισθητήρες και σερβοκινητήρα σε τρεις θύρες επέκτασης του Magicbit. Το πλήρες διάγραμμα κυκλώματος φαίνεται παρακάτω.

Όταν κατασκευάζετε ολόκληρο το κύκλωμα, πηγαίνετε στο δεύτερο τμήμα. Για να σπρώξουμε το κεφάλι του μπουκαλιού χρησιμοποιήσαμε σερβοκινητήρα με συνδετήρες βραχίονα. Αυτό το κλιπ περιστρέφεται και χτυπά με το κεφάλι του μπουκαλιού. Έτσι το κεφάλι σπρώχνει προς τα κάτω. Σε αυτόν τον μηχανισμό μετατρέπουμε την περιστρεφόμενη κίνηση του σερβο σε γραμμική κίνηση της κεφαλής του μπουκαλιού. Μπορείτε να χρησιμοποιήσετε οποιοδήποτε είδος μηχανισμού χρησιμοποιώντας σερβο για να ικανοποιήσετε αυτήν την ανάγκη. Οι παρακάτω εικόνες δείχνουν τον μηχανισμό μας. Μπορείτε να το φτιάξετε μόνοι σας.

Σημείωση: Εάν χρησιμοποιήσατε μικρά σερβο mg90, ενδέχεται να μην έχει αρκετή ροπή (δύναμη για να σπρώξετε το κεφάλι της φιάλης προς τα κάτω. Έτσι, όταν επιλέγετε τον σερβοκινητήρα, βεβαιωθείτε ότι έχετε αρκετή ροπή).

Για τη μέτρηση της υγρασίας, χρησιμοποιήσαμε χωρητικό αισθητήρα υγρασίας που περιλαμβάνει το Magicbit dev. εργαλειοθήκη. Αλλά μπορείτε να το πάρετε από εξωτερικά. Όταν το συνδέετε στην επιφάνεια των μπουκαλιών, βεβαιωθείτε ότι δεν θα αγγίξει σχεδόν καθόλου την επιφάνεια του μπουκαλιού. Διαφορετικά δεν έδωσε μεγάλη απόκλιση όταν η στάθμη του υγρού μειώνεται.

Για την ανίχνευση των χεριών τοποθετούμε τον αισθητήρα υπερήχων κοντά στη φιάλη ως προς την άνω πλευρά με μικρή γωνία.

Βήμα 4: Ρύθμιση λογισμικού

Ρύθμιση λογισμικού
Ρύθμιση λογισμικού

Για τον προγραμματισμό του Magicbit χρησιμοποιήσαμε το Arduino IDE. Ο αλγόριθμος είναι απλός. Όταν ενεργοποιήσουμε το Magicbit θα πάρει την απόσταση από το κοντινότερο αντικείμενο από το σόναρ. Στη συνέχεια ελέγχει ότι το πλησιέστερο αντικείμενο είναι πιο κοντά από μια ορισμένη απόσταση. Εάν ναι, θα ελέγξει εάν η φιάλη ανοίγει ή κλείνει. Αν άνοιξε, μην κάνεις τίποτα. Αλλιώς ανοίξτε το μπουκάλι. Χρησιμοποιήσαμε κάποια καθυστέρηση για να ακυρώσουμε τους θορύβους και να βελτιώσουμε την ακρίβεια των ενδείξεων.

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

Για να ανεβάσετε τον κωδικό, συνδέστε το Magicbit στον υπολογιστή χρησιμοποιώντας καλώδιο δεδομένων. Επιλέξτε τη σωστή θύρα COM και τύπο πλακέτας και ανεβάστε τον κωδικό. Να περάσεις καλά.

Βήμα 5: Κωδικός

#περιλαμβάνω

#include #define TRIGGER_PIN 21 #define ECHO_PIN 22 #define MAX_DISTANCE 200 #define SENSOR 32; Σόναρ NewPing (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); int output_value; int απόσταση? int count = 0; bool Άνοιγμα = false; Servo Servo? void setup () {Serial.begin (115200); Servo.attach (26); // Καθορίζει σε ποια ακίδα είναι συνδεδεμένος ο σερβοκινητήρας καθυστέρηση (3000). pinMode (32, ΕΙΣΟΔΟΣ); // αισθητήρας υγρασίας προσαρτημένο pin pinMode (25, OUTPUT); // ηχητικός συνδεδεμένος ακροδέκτης} βρόχος κενό () {output_value = analogRead (SENSOR); if (output_value0 && distance = 90; i-) {// push head Servo.write (i); καθυστέρηση (5)? } αριθμός = 0; Άνοιγμα = αλήθεια;} αλλιώς αν ((απόσταση> 60 || απόσταση == 0) && Άνοιγμα == αληθινό) {για (int i = 90; i

Συνιστάται: