Πίνακας περιεχομένων:
- Βήμα 1: Υλικά που χρησιμοποιούνται
- Βήμα 2: Προετοιμασία της μηχανικής δομής
- Βήμα 3: Συνδέσεις κυκλωμάτων
- Βήμα 4:
- Βήμα 5: Κωδικός:
Βίντεο: Rubics Cube Solver Bot: 5 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Κατασκευή ενός αυτόνομου ρομπότ που λύνει έναν φυσικό κύβο Ρούμπικ. Αυτό είναι ένα έργο στο Robotics Club, IIT Guwahati.
Είναι κατασκευασμένο με απλό υλικό που μπορεί να βρεθεί εύκολα. Κυρίως χρησιμοποιήσαμε κινητήρες Servo & ένα Arduino για τον έλεγχο τους, ακρυλικά φύλλα, ένα σπασμένο Mini Drafter, σφιγκτήρες L και διπλές ταινίες!
Για να πάρουμε τον αλγόριθμο επίλυσης του κύβου χρησιμοποιήσαμε τη βιβλιοθήκη cubejs από το github.
Βήμα 1: Υλικά που χρησιμοποιούνται
- 6 σερβοκινητήρες
- Arduino Uno
- Μπαταρία LiPo 3 κυψελών
- Ακρυλικό φύλλο (πάχος 8mm και 5mm)
- Θερμοπίστολο (
- Τρυπάνι
- Σιδηροπρίονο
- Σφιγκτήρες L
- Λωρίδες αλουμινίου
- Mini Drafter/ μεταλλικές ράβδοι
- Διπλή ταινία
- Φέβη Κουίκ
- Βίδες καρυδιού
- Καλώδια βραχυκυκλωτήρων
Βήμα 2: Προετοιμασία της μηχανικής δομής
Το βασικό πλαίσιο
- Πάρτε ένα ακρυλικό φύλλο πάχους 8mm περίπου 50cm * 50cm και σημειώστε το κέντρο όλων των πλευρών (αυτό θα είναι η βάση του ρομπότ σας).
- Πάρτε ένα σπασμένο συρτάρι και αφαιρέστε τις 4 ράβδους από χάλυβα.. (αυτές οι ράβδοι θα χρησιμεύσουν ως η διαδρομή για το ρυθμιστικό σας).
- Σε δύο ορθογώνια κομμάτια ακρυλικού (οποιουδήποτε μεγέθους) στερεώστε δύο ράβδους παράλληλα μεταξύ τους και φτιάξτε δύο ζεύγη αυτού του συγκροτήματος.
- Στη συνέχεια, για να φτιάξετε ένα ρυθμιστικό, στοιβάζετε δύο μικρά κομμάτια ακρυλικού το ένα πάνω στο άλλο με διαχωριστικά μεταξύ τους στις τέσσερις γωνίες και στερεώστε τα με μπουλόνια στους αποστάτες. Θα χρειαστείτε 4 τέτοια ρυθμιστικά.
- Πριν στερεώσετε τα δύο κομμάτια του ρυθμιστικού, περάστε τις προηγουμένως στερεωμένες παράλληλες ράβδους μεταξύ τους, έτσι ώστε οι αποστάτες να αγγίζουν την εξωτερική επιφάνεια των ράβδων.
- Για κάθε ζεύγος παράλληλων ράβδων περάστε δύο ρυθμιστικά πάνω τους.
- Μόλις αυτό είναι έτοιμο, τακτοποιήστε το ζεύγος ράβδων με τη μορφή σταυρού 90 μοιρών. Βεβαιωθείτε ότι υπάρχει ένα ρυθμιστικό σε κάθε άκρο του σταυρού.
-
Τώρα το μόνο που έχετε να κάνετε είναι να συνδέσετε αυτήν τη διασταυρωμένη διαδρομή στη βάση του ρομπότ σας, σε κάποιο ύψος από τη βάση. (Βεβαιωθείτε ότι το ύψος είναι μεγαλύτερο από το ύψος ενός σερβοκινητήρα)
Για αυτό, μπορείτε να χρησιμοποιήσετε ακρυλικά στηρίγματα με σφιγκτήρες L όπως κάναμε εμείς ή οποιαδήποτε άλλη μέθοδος θα είναι αρκετή
Μετά από αυτό, η δομή σας πρέπει να μοιάζει με την εικόνα.
Συνδέοντας τα βασικά servos
- Τα δύο σερβίς βάσης πρέπει να είναι προσαρτημένα έτσι ώστε το σερβο να βρίσκεται κάτω από τον βραχίονα του σταυρού και να μετατοπίζεται από το κέντρο.
- Τα σερβίτσια συνδέονται σε οριζόντια θέση με διάτρητη γκοφρέτα σιλικόνης χρησιμοποιώντας μακριά μπουλόνια, τα οποία με τη σειρά τους προσαρτώνται στη βάση με σφιγκτήρα L και αμφίδρομη ταινία.
Κάνοντας τις ράβδους push-pull
- Ρυθμίστε τη γωνία σερβίς στο μηδέν και συνδέστε τη στερέωση του βραχίονα του σερβο σε κάποια κατάλληλη θέση.
- Τοποθετήστε τον κύβο στο κέντρο του σταυρού για να λάβετε μια εκτίμηση της απόστασης του ρυθμιστή στην πλησιέστερη θέση και τοποθετήστε τα ρυθμιστικά σε αυτές τις θέσεις.
- Συνδέστε λωρίδες αλουμινίου σε σχήμα L στο κάτω μέρος κάθε ρυθμιστικού χρησιμοποιώντας διπλή ταινία.
- Τώρα για να μετρήσετε την απόσταση κάθε λωρίδας αλουμινίου από το επάνω ή το κάτω μέρος του σερβορόκερ που βρίσκεται στο επίπεδό του, αυτό θα είναι το μήκος της ράβδου push-pull σας.
- Μόλις καθοριστούν τα μήκη, η ράβδος ώθησης μπορεί να στερεωθεί με διάτρηση της λωρίδας αλουμινίου ή κάτι τέτοιο.
Τοποθέτηση των κορυφαίων σερβιτόρων
- Αποφασίστε το ύψος στο οποίο θα λυθεί ο κύβος σας. Ο άξονας του σερβοκινητήρα πρέπει να βρίσκεται σε αυτό το ύψος.
- Συνδέστε τους τέσσερις σερβοκινητήρες, ο καθένας σε μια διάτρητη γκοφρέτα σιλικόνης χρησιμοποιώντας μπουλόνια σε κάθετη θέση.
- Η γκοφρέτα είναι τώρα τοποθετημένη σε λωρίδα αλουμινίου σχήματος L της οποίας η βάση είναι στερεωμένη στο ρυθμιστικό σε κατάλληλο ύψος, έτσι ώστε ο σερβο άξονας να βρίσκεται στο κέντρο του κύβου.
Τα νύχια C
- Τα νύχια πρέπει να είναι τέτοια ώστε να ταιριάζουν ακριβώς σε μια πλευρά κύβου και το μήκος του άνω και του κάτω τμήματος δεν πρέπει να υπερβαίνει την πλευρά ενός κύβου.
- Για αυτό πάρτε μια λωρίδα ακρυλικού επαρκούς πάχους και θερμάνετε την. Μόλις λιώσει αναμορφωθεί, σχηματίζει ένα σφιγκτήρα σχήματος C, έτσι ώστε να παγιδεύει ακριβώς μια πλευρά του κύβου.
- Σημειώστε το κέντρο του νυχιού C και στερεώστε αυτόν τον σφιγκτήρα στο ροκ του σερβο στο κέντρο του.
Πραγματοποιήστε μερικές μικρές ρυθμίσεις, όπως είναι απαραίτητο, έτσι ώστε κάθε σφιγκτήρας να βρίσκεται στο ίδιο ύψος.
Αυτό ολοκληρώνει τη μηχανική δομή του ρομπότ σας, σας επιτρέπει να μεταβείτε στις συνδέσεις κυκλώματος ……..
Βήμα 3: Συνδέσεις κυκλωμάτων
Για τον έλεγχο του Bot χρησιμοποιήσαμε Arduino, ρυθμιστή τάσης και μπαταρία LiPo 3 κυψελών (12v).
Καθώς οι Servo Motors αντλούν μεγάλη ισχύ, χρησιμοποιήσαμε 6 ρυθμιστές τάσης, έναν για κάθε κινητήρα.
Οι είσοδοι σήματος των κινητήρων (το πιο ανοιχτόχρωμο καλώδιο των τριών) συνδέθηκαν με τις ψηφιακές ακίδες PWM 3, 5, 6, 9, 10, 11 του Arduino.
Ο ρυθμιστής τάσης συνδέθηκε στο ψωμί και τροφοδοτήθηκε από την μπαταρία των 12 βολτ. Η παροχή εξόδου (5V) τροφοδοτήθηκε απευθείας στους κινητήρες. Το έδαφος των κινητήρων συνδέθηκε επίσης με το breadboard. Ο κοινός τόπος συνδέθηκε και με το Arduino.
Βήμα 4:
Βήμα 5: Κωδικός:
Τα δύο αρχεία που δίνονται δείχνουν τον κώδικα που γράφτηκε για να δώσει εντολή στους κινητήρες για συγκεκριμένα βήματα χρησιμοποιώντας το Arduino.
Το πρώτο αρχείο περιέχει την κύρια συνάρτηση και άλλους ορισμούς μεταβλητών. Το δεύτερο αρχείο περιέχει συναρτήσεις για κάθε κίνηση που χρησιμοποιείται για την επίλυση ενός κύβου (π.χ. U για «περιστροφή δεξιόστροφα προς τα πάνω», R1 για «κίνηση δεξιά αριστερόστροφα» κ.λπ.)
Για να πάρουμε τον αλγόριθμο επίλυσης του κύβου χρησιμοποιήσαμε τη βιβλιοθήκη cubejs από το github.
Ο αλγόριθμος δίνει απευθείας έξοδο σε «κινήσεις προσώπου» που συμπληρώνεται από τον κώδικα Arduino.
Συνιστάται:
Σε πραγματικό χρόνο Rubik's Cube Blindfolded Solver Using Raspberry Pi and OpenCV: 4 βήματα
Σε πραγματικό χρόνο Rubik's Cube Blindfolded Solver Using Raspberry Pi and OpenCV: Αυτή είναι η 2η έκδοση του εργαλείου κύβου του Rubik που έχει δημιουργηθεί για επίλυση με δεμένα μάτια. Η 1η έκδοση αναπτύχθηκε από javascript, μπορείτε να δείτε το έργο RubiksCubeBlindfolded1 Σε αντίθεση με την προηγούμενη, αυτή η έκδοση χρησιμοποιεί βιβλιοθήκη OpenCV για τον εντοπισμό των χρωμάτων και
Q -Bot - The Open Source Rubik's Cube Solver: 7 βήματα (με εικόνες)
Q -Bot - The Open Source Rubik's Cube Solver: Φανταστείτε ότι έχετε έναν ανακατεμένο κύβο Rubik, ξέρετε ότι το παζλ σχηματίζει τη δεκαετία του '80 που όλοι έχουν, αλλά κανείς δεν ξέρει πραγματικά πώς να το λύσει και θέλετε να το επαναφέρετε στο αρχικό του μοτίβο. Ευτυχώς αυτές τις μέρες είναι πολύ εύκολο να βρεις οδηγίες επίλυσης
Arduino Mega Stepper Shield for Rubiks Cube Solver: 4 Βήματα
Arduino Mega Stepper Shield for Rubiks Cube Solver: Πριν από λίγο καιρό δούλευα σε ένα μηχάνημα που λύνει αυτόματα τυχόν ανακατεμένους 3x3 κύβους Rubiks. Μπορείτε να δείτε τις οδηγίες μου σχετικά με αυτό εδώ. Στο έργο, οι οδηγοί stepper από το polulu χρησιμοποιήθηκαν για την οδήγηση έξι κινητήρων. Για να τα συνδέσετε δύο
Magic Cube ή Micro-controller Cube: 7 βήματα (με εικόνες)
Magic Cube ή Micro-controller Cube: Σε αυτό το Instructables, θα σας δείξω πώς να φτιάξετε ένα Magic cube από ελαττωματικό Micro-controller. Αυτή η ιδέα προήλθε όταν πήρα το ελαττωματικό μικροελεγκτή ATmega2560 από το Arduino Mega 2560 και φτιάξω έναν κύβο .Σχετικά με το υλικό Magic Cube, έχω κάνει ως
ARS - Arduino Rubik Solver: 13 βήματα (με εικόνες)
ARS - Arduino Rubik Solver: Το ARS είναι ένα πλήρες σύστημα για την επίλυση του κύβου του Rubik: ναι, ένα άλλο ρομπότ για την επίλυση του κύβου! Το ARS είναι ένα σχολικό έργο τριών ετών που κατασκευάστηκε με τρισδιάστατα τυπωμένα μέρη και κατασκευές με λέιζερ: ένα Arduino λαμβάνει τη σωστή ακολουθία που δημιουργήθηκε από σπιτικό καναπέ