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

Ρολόι: 7 Βήματα
Ρολόι: 7 Βήματα

Βίντεο: Ρολόι: 7 Βήματα

Βίντεο: Ρολόι: 7 Βήματα
Βίντεο: 6 (+κάτι) πράγματα που δεν ξέρεις για το Apple Watch! | 2022 Apple Watch Tips 2024, Νοέμβριος
Anonim
Μηχανισμός ωρολογιού
Μηχανισμός ωρολογιού

Αυτό το διδακτικό δημιουργήθηκε για να εκπληρώσει την απαίτηση έργου του Makecourse στο Πανεπιστήμιο της Νότιας Φλόριντα (www.makecourse.com).

Βήμα 1: Έννοια

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

Ως εκ τούτου, αυτό το έργο, βρήκα ανταλλακτικά γύρω από το διαμέρισμά μου και αποφάσισα να δουλέψω σε αυτό.

Βήμα 2: Μέρη

- Τρισδιάστατα τυπωμένα μέρη

- 2 Stepper Motor 28BYJ-48 5V DC

- 2 ULN2003 Stepper Motor Driver Board

- Arduino Uno

- Μονάδα Bluetooth HC-05

Όλα αυτά τα μέρη είναι κατασκευασμένα από εμένα εκτός από τους δείκτες του ρολογιού. Δεν είμαι πολύ δημιουργικός. Παρακάτω είναι ο σύνδεσμος προς τον δημιουργό του.

www.thingiverse.com/thing:1441809

Βήμα 3: Συναρμολόγηση εξαρτημάτων

Συναρμολόγηση μερών
Συναρμολόγηση μερών

(1)- Πρέπει να βάλετε το Gear_1 και το 2 στα βηματικά μοτέρ. Θα ταιριάξουν καλά, οπότε χρειάζεται λίγη δύναμη για να παραμείνουν στη θέση τους.

(2)- Το Base_0 θα παραμείνει στο κάτω μέρος της διάταξης.

(3)- Το Base_1 θα τοποθετηθεί πάνω από το SpurGear_1, αυτό είναι το κύριο συστατικό για το λεπτό. Μπορείτε να κολλήσετε αυτά τα δύο εξαρτήματα μαζί, βεβαιωθείτε ότι η βάση είναι πάνω από το γρανάζι.

(4)- Το Base_2 θα τοποθετηθεί πάνω από το SpurGears_2, αυτό είναι το κύριο συστατικό για το ρολόι. Το ίδιο ισχύει για αυτό το μέρος ως βήμα (3)

(5)- Οι δείκτες των ρολογιών μπορούν να είναι κολλημένοι πάνω από τη Βάση_1 και τη Βάση_2, ή μπορείτε να ανοίξετε μια μικρή τρύπα για να τοποθετηθούν στη θέση τους.

(6)- Για να ταιριάζει το γρανάζι του λεπτού χεριού με το γρανάζι, χρειάζεστε μια πλατφόρμα 1 εκατοστού για να τοποθετήσετε ολόκληρο το συγκρότημα στην κορυφή με έναν από τους βηματικούς κινητήρες.

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

Βήμα 4: Βιβλιοθήκη για Arduino IDE

Ο κώδικας για αυτό το έργο βασίζεται σε μια βιβλιοθήκη από το tyhenry που ονομάζεται CheapStepper.h

github.com/tyhenry/CheapStepper

Για να εγκαταστήσετε αυτήν τη βιβλιοθήκη για το arduino σας. Κάντε κλικ στην κλωνοποίηση ή λήψη στον παραπάνω σύνδεσμο και κατεβάστε το ως αρχείο zip.

Στο Arduino IDE. Σκίτσο -> Συμπερίληψη βιβλιοθήκης -> Προσθήκη βιβλιοθήκης. ZIP

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

Βήμα 5: Ρύθμιση Breadboard

Ρύθμιση Breadboard
Ρύθμιση Breadboard
Ρύθμιση Breadboard
Ρύθμιση Breadboard

Χρησιμοποίησα ασπίδα Arduino για να πάω με το Arduino UNO. Φαίνεται πιο καθαρό, αλλά μπορείτε να πάρετε ένα μικρό ψωμί και να το τοποθετήσετε πάνω από το Arduino UNO. Ακολουθήστε το χρώμα στο σχηματικό, καθώς ορισμένα καλώδια είναι το ένα πάνω στο άλλο. Οι ακίδες 4-7 είναι για ένα βήμα και οι ακίδες 8-11 είναι για το δεύτερο βήμα.

Η μονάδα Bluetooth πρέπει να είναι ενσύρματη RX -> TX και TX -> RX στην πλακέτα Arduino.

Τα μπλε καλώδια είναι συνδέσεις από τα προγράμματα οδήγησης στο Arduino UNO

Τα πράσινα καλώδια είναι οι συνδέσεις RX και TX

Μαύρα καλώδια γειώνονται.

Τα κόκκινα καλώδια είναι 5V.

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

Παρακάτω είναι ο κωδικός για αυτό το έργο.

Η επεξήγηση του κώδικα θα βρίσκεται εδώ.

CheapStepper stepper (8, 9, 10, 11). CheapStepper stepper_2 (4, 5, 6, 7);

boolean moveClockwise = true;

//37,5 λεπτά = 4096;

// 1 λεπτό = 106,7;

// 5 λεπτά = 533,3;

// 15 λεπτά = 1603;

// 30 λεπτά = 3206;

// 60 λεπτά = 6412;

int full = 4096;

int μισό = πλήρες/2; // 2048

float full_time = 6412; // 1 ώρες

float half_time = full_time/2; // 30 λεπτά 3026

float fif_time = half_time/2; // 15 λεπτά 1603

float one_time = full_time/60; // 1 λεπτό 106

float five_time = one_time*5; // 5 λεπτά 534,3

float one_sec = one_time/60; // 1 δευτ 1,78

// μπορούμε να κάνουμε 30 λεπτά το καθένα περιστρέφοντας τον κινητήρα 3206 και επαναφέροντας

Αυτός είναι ο κύριος υπολογισμός για αυτό το έργο. Το stepper θα έκανε 4096 βήματα για να περιστρέψει πλήρως 360 μοίρες, αλλά επειδή τα γρανάζια είναι μεγαλύτερα από τα γρανάζια που συνδέονται με το stepper, έτσι χρειάζονται περισσότερα βήματα για πλήρη περιστροφή. Καθώς ο τροχός είναι το κύριο συστατικό που περιστρέφει τα χέρια. Πρέπει να κάνω διάφορες δοκιμές για να βεβαιωθώ ότι οι τιμές είναι σωστές.

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

Το moveClockwise = true; είναι να κάνουμε τον βηματικό κινητήρα να κινείται δεξιόστροφα, αλλά επειδή περιστρέφει το γρανάζι αριστερόστροφα, πρέπει να κάνουμε το boolean false στη ρύθμιση. Μπορείτε επίσης να το δηλώσετε ψευδές στην αρχή, αλλά αυτό είναι για να εξηγήσετε πώς λειτουργεί.

void setup () {Serial.begin (9600);

Serial.println ("Έτοιμοι να ξεκινήσουμε να κινούμαστε!");

pos = one_time; del = 900; αναλογία = 60;

moveCrollwise = false; }

Εδώ είναι που δηλώνω το moveCrollwise boolean false. pos θα είναι ο αριθμός των βημάτων, το del θα είναι η καθυστέρηση και η αναλογία είναι είτε για λεπτό/δευτ = 60 ή ώρα/λεπτό = 12

Ελέγχουμε τα χέρια με τη μονάδα Bluetooth. Αρχικά, χρειάζεστε ένα σειριακό τερματικό Bluetooth από τη συσκευή σας Android. Συνδεθείτε στο Hc-05 με τον κωδικό PIN 0000 ή 1234. Μπορείτε να χρησιμοποιήσετε κάποιο παράδειγμα κώδικα από το Arduino IDE για να δείτε αν λειτουργεί σωστά. Όταν είναι συνδεδεμένο θα πρέπει να αναβοσβήνει πολύ αργά και όχι γρήγορα όταν δεν είναι συνδεδεμένο.

void loop () {state = 0;

εάν (Serial.available ()> 0) {

κατάσταση = Serial.read (); }

για (float s = 0; s <(pos); s ++) {

stepper.step (moveCrollwise); }

για (float s = 0; s <(pos/ratio); s ++) {

stepper_2.step (moveCrollwise); }

καθυστέρηση (del)?

Το Serial.available ()> 0 είναι σημαντικό καθώς είναι ο τρόπος λειτουργίας της μονάδας Bluetooth. Αυτή η δήλωση if θα ισχύει όταν υπάρχουν επικοινωνίες μεταξύ του Arduino και της συσκευής σας. Η μεταβλητή κατάστασης θα καθορίσει τις 3 άλλες μεταβλητές που δήλωσα κορυφή της εγκατάστασης (), θα εκτυπώσει επίσης ποια λειτουργία εκτελείται ο κώδικας. Ο βρόχος δύο για είναι η κύρια λειτουργία που καθορίζει τον τρόπο με τον οποίο θα κινηθεί ο βηματικός κινητήρας.

εάν (κατάσταση == '1') {

pos = one_time; del = 0; αναλογία = 12;

Serial.println ("Λειτουργία 1: Χωρίς καθυστέρηση"); }

Αυτό είναι ένα παράδειγμα χρήσης της εισόδου από τη συσκευή Bluetooth για να αλλάξετε τον τρόπο λειτουργίας του συστήματος. Μπορείτε να επεξεργαστείτε αυτές τις μεταβλητές όπως θέλετε για να ελέγξετε τα χέρια.

Βήμα 7: Επίδειξη και συμπέρασμα

Image
Image
Επίδειξη και Συμπέρασμα
Επίδειξη και Συμπέρασμα

Πρόκειται για μια επίδειξη του συστήματος, που δείχνει πώς λειτουργεί. Για το περίβλημα μπορείτε να χρησιμοποιήσετε οτιδήποτε θα ταιριάζει σε όλα τα εξαρτήματα στο εσωτερικό. Αυτό το έργο ήταν απλό και διασκεδαστικό, καθώς είναι η πρώτη φορά που εκτύπωσα 3D. Η μονάδα Bluetooth ήταν διασκεδαστική στην εύρεση και τη χρήση. Υπάρχουν μερικά λάθη που έκανα που ήταν πολύ αργά για αλλαγή, αλλά το τελικό προϊόν είναι εντάξει.

Συνιστάται: