Πίνακας περιεχομένων:
- Βήμα 1: Μέρη
- Βήμα 2: Κάντε το κύκλωμα και γράψτε κώδικα Arduino
- Βήμα 3: Εκτυπώστε το δοχείο και κόψτε τον κορμό και τα κλαδιά
- Βήμα 4: Δημιουργήστε τις παγίδες
- Βήμα 5: Το βάζουμε όλα μαζί
Βίντεο: Venus Flytrap - ITM Φθινόπωρο 2019: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:34
Τι λείπει από το γραφείο όλων; Ένα μηχανικό Venus Flytrap που κρατά μολύβια, στυλό και άλλα αντικείμενα.
Βήμα 1: Μέρη
Θα χρειαστείτε:
* 3D εκτυπωτής (βλέπε αρχείο.stl) για το δοχείο
* Ξύλινα μπαστούνια και τρυπάνι
* Εργαλεία συγκόλλησης
* Arduino Uno & IDE
* Breadboard
* Φωτοαντίσταση
* Διακόπτης
* MicroServo Sg90
* Πυρήνα αφρού
* Ηλεκτρική & ταινία σιλικόνης
* Σύρματα
* Μεντεσέδες
* Ζεστή κόλλα
Βήμα 2: Κάντε το κύκλωμα και γράψτε κώδικα Arduino
Το κύκλωμα συνδέει τη φωτοαντίσταση, το διακόπτη, το σερβο και τον μηχανισμό ισχύος μέσω του Arduino. Συνδέουμε το Servo με τον κύκλο λειτουργίας pwm στο pin του Arduino, διαβάζουμε τη φωτοαντίσταση από την αναλογική ακίδα A0 και διαβάζουμε το κουμπί από την ψηφιακή ακίδα 2.
Ο απλός πίνακας ψωμιού στη φωτογραφία λειτουργεί, αν και τελικά συγκολλήσαμε τα καλώδια σε μια μόνιμη σανίδα ψωμιού για σταθερότητα.
Ο κώδικας Arduino προορίζεται να κάνει κυρίως τρία πράγματα:
1. Διαβάστε μια φωτοαντίσταση και συγκρίνετε την ένδειξη με ένα προκαθορισμένο όριο. Όταν η φωτοαντίσταση διαβάζει χαμηλά (σκούρα), η ένδειξη θα είναι κάτω από το όριο και όταν η ένδειξη είναι υψηλή (ελαφριά) θα είναι πάνω από το όριο.
2. Με βάση την ένδειξη της φωτοαντίστασης, πείτε στο Servo να μετακινηθεί σε μία από τις δύο θέσεις (μια θέση "ανοιχτή" και "κλειστή", σημειωμένη ως val και val2 στον κώδικα). Όταν δεν υπάρχει τίποτα που να αποκρύπτει τη φωτοαντίσταση, η ένδειξη θα είναι υψηλή και το Servo βρίσκεται στην ανοιχτή θέση. Όταν υπάρχει ένα αντικείμενο που αποκρύπτει τον φωτοαντιστάτη, η ένδειξη θα είναι χαμηλή και το Servo μετακινείται στην κλειστή θέση.
3. Προγραμματίστε έναν διακόπτη για αυτόματη μετακίνηση του Servo στην ανοιχτή θέση. Αυτό είναι ουσιαστικά ένα failsafe.
Δείτε τον κωδικό παρακάτω:
#include Servo myservo; int val = 20; // αρχικοποίηση τιμής κλειστής θέσης int val2 = 70; // αρχικοποίηση τιμής ανοικτής θέσης void setup () {// αρχικοποίηση σειριακής επικοινωνίας στα 9600 bit ανά δευτερόλεπτο: Serial.begin (9600); // προετοιμάστε το σερβο και συνδέστε τον κύκλο λειτουργίας pwm στο pin 9 myservo.attach (9); pinMode (2, ΕΙΣΟΔΟΣ); // αρχικοποίηση διακόπτη ως είσοδο} const int threshold = 20; // αρχικοποίηση ορίου φωτοαντίστασης για κλείσιμο του κουμπιού intState = 0; // αρχικοποίηση μεταβλητής για ανάγνωση κατάστασης διακοπτών int sensorValue = 100; // αρχικοποίηση μεταβλητής για τιμή φωτοαντίστασης int stayclosed = 0; // αρχικοποίηση μεταβλητής για διατήρηση μιας θέσης μόλις ενεργοποιηθεί //// η ρουτίνα βρόχου τρέχει ξανά και ξανά για πάντα: void loop () {// διαβάστε την είσοδο από το διακόπτη: buttonState = digitalRead (2); // διαβάστε την είσοδο από τη φωτοαντίσταση sensorValue = analogRead (A0); // εκτυπώστε την ανάγνωση της φωτοαντίστασης στη σειριακή οθόνη: Serial.println (sensorValue); if (buttonState == LOW) {// διακόπτης είναι απενεργοποιημένος εάν (stayclosed == 1) {// εάν η μεταβλητή σταθερότητας θέσης είναι ενεργοποιημένη, // παραμείνετε στην τρέχουσα θέση} αλλιώς εάν (sensorValue <threshold) {// εάν η τιμή αισθητήρα πέσει κάτω από το κατώφλι, myservo.write (val); // αλλαγή παγίδας στην κλειστή θέση, stayclosed = 1; // και αλλάξτε τη μεταβλητή σταθερότητας για να παραμείνει κλειστή}} αλλιώς {// ο διακόπτης είναι ενεργοποιημένος εάν (παραμείνει κλειστός == 0) {// εάν η μεταβλητή σταθερότητας θέσης είναι απενεργοποιημένη, // παραμείνετε στην τρέχουσα θέση} else {// πρώτη φορά ανιχνεύσετε ότι ο διακόπτης είναι σε καθυστέρηση (500). // Καθυστέρηση 500 ms και έλεγχος για να βεβαιωθείτε ότι ο διακόπτης είναι ακόμα ενεργοποιημένος buttonState = digitalRead (2); // διαβάστε την είσοδο από το swithch if (buttonState == HIGH) {// αν ο διακόπτης είναι ενεργοποιημένος, myservo.write (val2); // αλλαγή παγίδας στην ανοιχτή θέση stayclosed = 0; // και αλλάξτε τη μεταβλητή σταθερότητας για να παραμείνει ανοιχτή}}}}
Βήμα 3: Εκτυπώστε το δοχείο και κόψτε τον κορμό και τα κλαδιά
CAD: Εκτύπωση γλάστρα
* Χρησιμοποιήστε το αρχείο STL που περιλαμβάνεται παραπάνω για να εκτυπώσετε τρισδιάστατα το δοχείο με λουλούδια, το οποίο χρησιμεύει ως βάση για τη συσκευή παγίδευσης μύγα Venus
* Βεβαιωθείτε ότι οι διαστάσεις της γλάστρας είναι αρκετά μεγάλες για να διασφαλίσετε ότι η βάση μπορεί να φιλοξενήσει το Arduino και το breadboard
Ξυλουργικές εργασίες: Κορμός και κλαδιά
* Χρησιμοποιήστε πριόνι μπάντας για να κόψετε έναν ξύλινο πείρο 1 επί 24 ιντσών σε μήκος 12 ίντσες για τον κορμό
* Χρησιμοποιήστε τρυπάνι χειρός για να κάνετε τρύπες τριών ιντσών σε διάφορα ύψη στον κορμό, όπου πρόκειται να εισαχθούν τα κλαδιά. Οι οπές πρέπει να τρυπιούνται υπό γωνία περίπου 45 °, έτσι ώστε τα κλαδιά να μπορούν να εισάγονται υπό γωνία.
* Χρησιμοποιήστε πριόνι ταινίας για να κόψετε wooden κατά 12 ίντσες ξύλινους πείρους σε τρία κλαδιά διαφορετικού μήκους, όπως θέλετε. Χρησιμοποιώντας το πριόνι ταινίας κόψτε το ένα άκρο κάθε κλαδιού σε 45 ° για να δημιουργήσετε μια επίπεδη επιφάνεια πάνω στην οποία μπορούν να στηθούν οι παγίδες.
* Εισάγετε κλαδιά στις οπές του κορμού (με γωνιακά άκρα εκτεθειμένα) και ασφαλίστε με κόλλα γορίλας ή θερμή κόλλα
Βήμα 4: Δημιουργήστε τις παγίδες
Βήματα για τη δημιουργία παγίδων:
* Πάρτε τον πυρήνα αφρού και κόψτε δύο κομμάτια για να λειτουργήσουν ως πάνω και κάτω σφιγκτήρες της παγίδας (το σχήμα μπορεί να είναι ό, τι θέλετε, αρκεί η βάση του σφιγκτήρα να είναι ορθογώνια για να στερεώσει τον κινητήρα)
* Κόψτε τους δύο σφιγκτήρες πυρήνα αφρού στη βάση. Μόνο κοίλα αρκετά από τους σφιγκτήρες έτσι ώστε οι μεντεσέδες να μπορούν να χωρέσουν άνετα μέσα.
* Τοποθετήστε τις δύο όψεις των μεντεσέδων στους αντίστοιχους σφιγκτήρες.
* Τυλίξτε σφιγκτήρες σε πολύχρωμη ταινία για αισθητική.
* Τρυπήστε μια μικρή τρύπα στον κάτω σφιγκτήρα και τοποθετήστε τη φωτοαντίσταση (πρέπει να ταιριάζει άνετα)
* Τοποθετήστε δύο μικρά κομμάτια ταινίας πυριτίου στο εσωτερικό κάθε σφιγκτήρα για να διασφαλίσετε ότι τα αντικείμενα που παγιδεύονται δεν μπορούν να ξεφύγουν εύκολα
* Συνδέστε τον κινητήρα στο πλάι της ορθογώνιας βάσης του πάνω σφιγκτήρα με υπερκόλληση και ταινία (ο μηχανισμός παγίδας ολοκληρώνεται σε αυτό το σημείο)
* Συνδέστε τον μηχανισμό παγίδευσης σε ένα κλαδί, βεβαιωθείτε ότι τόσο ο κάτω σφιγκτήρας όσο και το σώμα του σερβοκινητήρα είναι σταθερά (αφήνοντας ελεύθερο να κινηθεί ο βραχίονας του κινητήρα και ο επάνω σφιγκτήρας.
Βήμα 5: Το βάζουμε όλα μαζί
* Τοποθετήστε τον κορμό και τα κλαδιά μέσα στην κατσαρόλα και κολλήστε το Arduino UNO και το breadboard επίσης μέσα στην κατσαρόλα
* Σταθεροποιήστε τον κορμό με βράχια, προσέξτε να μην σπάσει κανένα καλώδιο
* Χρησιμοποιήστε πράσινη ηλεκτρική ταινία για να καλύψετε το κλαδί, τον κορμό και όλα τα εκτεθειμένα καλώδια
* Χρησιμοποιήστε μια εξωτερική μπαταρία ως πηγή ενέργειας
* Ευτυχισμένο Venus Flytrapping!
Συνιστάται:
Easy Setup IR Remote Control Using LIRC for the Raspberry PI (RPi) - Ιούλιος 2019 [Μέρος 1]: 7 Βήματα
Easy Setup IR Remote Control Using LIRC for the Raspberry PI (RPi) - Ιούλιος 2019 [Μέρος 1]: Μετά από πολύ ψάξιμο ήμουν έκπληκτος και απογοητευμένος για τις αντικρουόμενες πληροφορίες σχετικά με τον τρόπο ρύθμισης του τηλεχειριστηρίου IR για το έργο μου RPi. Νόμιζα ότι θα ήταν εύκολο, αλλά η ρύθμιση του Linux InfraRed Control (LIRC) ήταν προβληματική εδώ και πολύ καιρό
Σύστημα Ambilight για κάθε είσοδο που συνδέεται στην τηλεόρασή σας. WS2812B Arduino UNO Raspberry Pi HDMI (Ενημερώθηκε στις 12.2019): 12 βήματα (με εικόνες)
Σύστημα Ambilight για κάθε είσοδο που συνδέεται στην τηλεόρασή σας. WS2812B Arduino UNO Raspberry Pi HDMI (Ενημερώθηκε στις 12.2019): Πάντα ήθελα να προσθέσω ambilight στην τηλεόρασή μου. Φαίνεται τόσο δροσερό! Τελικά το έκανα και δεν απογοητεύτηκα! Έχω δει πολλά βίντεο και πολλά σεμινάρια για τη δημιουργία ενός συστήματος Ambilight για την τηλεόρασή σας, αλλά δεν έχω βρει ποτέ ένα πλήρες σεμινάριο για το ακριβές μου παιδί
Πώς να εγκαταστήσετε το Robo Recall Mod Kit (Εκκίνηση 2019): 4 βήματα
Πώς να εγκαταστήσετε το Robo Recall Mod Kit (2019 Launcher): Με την κυκλοφορία του Epic Games Store και τον αντίκτυπο παιχνιδιών όπως το Fortnite, ο εκτοξευτής της Epic Games έκανε μερικές πολύ μεγάλες αλλαγές το 2018 και το 2019. Ενώ υπάρχουν ακόμα εύκολα επιλέξιμες κατηγορίες για κανονική ανάπτυξη (με τη χρήση της βάσης
2019 FRC Writing a Simple Drive Train (Java): 5 Βήματα
2019 FRC Writing a Simple Drive Train (Java): ΑΥΤΟ ΤΟ ΟΔΗΓΙΟ ΕΙΝΑΙ ΕΚΤΟΣ ΗΜΕΡΟΜΗΝΙΑΣ! Παρακαλώ προσέξτε το επόμενο εκπαιδευτικό μου πρόγραμμα για τον τρέχοντα προγραμματισμό του 2019. Παρόλο που είναι ξεπερασμένο, υπάρχουν ακόμα πράγματα που μπορείτε να μάθετε σχετικά με το πώς να κάνετε πραγματικά τα μαθήματα και να γράψετε τον κώδικα
Πώς να φτιάξετε μια γιρλάντα μήλου για το φθινόπωρο ή πίσω στο σχολείο: 13 βήματα (με εικόνες)
Πώς να φτιάξετε μια γιρλάντα μήλου για το φθινόπωρο ή πίσω στο σχολείο: Η Anjeanette, της RootsAndWingsCo έφτιαξε αυτήν την αξιολάτρευτη γιρλάντα μήλου από τσόχα και υλικό. Ταν ένα απλό έργο που ακόμη και όσοι λένε ότι δεν μπορούν να ράψουν-μπορούν να το κάνουν! (Αρκεί να μπορέσετε να βιδώσετε τη βελόνα σας.)