Πίνακας περιεχομένων:
Βίντεο: Make a Maze Runner Robot: 3 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Τα ρομπότ που λύνουν λαβύρινθο προέρχονται από τη δεκαετία του 1970. Από τότε, το IEEE διοργανώνει διαγωνισμούς επίλυσης λαβυρίνθου που ονομάζεται Micro Mouse Contest. Σκοπός του διαγωνισμού είναι να σχεδιάσει ένα ρομπότ που θα βρίσκει το μέσο του λαβύρινθου όσο το δυνατόν γρηγορότερα. Οι αλγόριθμοι που χρησιμοποιούνται για την γρήγορη επίλυση του λαβύρινθου συνήθως χωρίζονται σε τρεις κατηγορίες. τυχαία αναζήτηση, χαρτογράφηση λαβυρίνθου και δεξιά ή αριστερά τοιχώματα ακολουθώντας μεθόδους.
Η πιο λειτουργική από αυτές τις μεθόδους είναι η ακόλουθη μέθοδος τοίχου. Σε αυτή τη μέθοδο, το ρομπότ ακολουθεί το δεξί ή το αριστερό πλευρικό τοίχωμα στο λαβύρινθο. Εάν το σημείο εξόδου συνδέεται με τα εξωτερικά τοιχώματα του λαβύρινθου, το ρομπότ θα βρει την έξοδο. Αυτή η σημείωση εφαρμογής χρησιμοποιεί τον σωστό τοίχο ακολουθώντας τη μέθοδο.
Σκεύη, εξαρτήματα
Αυτή η εφαρμογή χρησιμοποιεί:
- 2 Ευκρινείς αναλογικοί αισθητήρες απόστασης
- Αισθητήρας ιχνηλάτη
- Κωδικοποιητής
- Κινητήρες και οδηγός κινητήρα
- Silego GreenPAK SLG46531V
- Ρυθμιστής τάσης, πλαίσιο ρομπότ.
Θα χρησιμοποιήσουμε τον αναλογικό αισθητήρα απόστασης για να καθορίσουμε τις αποστάσεις στο δεξί και το μπροστινό τοίχωμα. Οι αισθητήρες απόστασης Sharp είναι μια δημοφιλής επιλογή για πολλά έργα που απαιτούν ακριβείς μετρήσεις απόστασης. Αυτός ο αισθητήρας IR είναι πιο οικονομικός από τους ανιχνευτές εύρους βυθομέτρου, ωστόσο παρέχει πολύ καλύτερη απόδοση από άλλες εναλλακτικές λύσεις IR. Υπάρχει μια μη γραμμική, αντίστροφη σχέση μεταξύ της τάσης εξόδου του αισθητήρα και της μετρηθείσας απόστασης. Το διάγραμμα που δείχνει τη σχέση μεταξύ της εξόδου του αισθητήρα και της μετρηθείσας απόστασης φαίνεται στο σχήμα 1.
Ως στόχος ορίζεται μια λευκή γραμμή σε ένα μαύρο έδαφος. Θα χρησιμοποιήσουμε τον αισθητήρα παρακολούθησης για τον εντοπισμό της λευκής γραμμής. Ο αισθητήρας παρακολούθησης έχει πέντε αναλογικές εξόδους και τα δεδομένα εξόδου επηρεάζονται από την απόσταση και το χρώμα του ανιχνευθέντος αντικειμένου. Τα ανιχνευόμενα σημεία με υψηλότερη υπέρυθρη ανάκλαση (λευκό) θα προκαλέσουν υψηλότερη τιμή εξόδου και η χαμηλότερη υπέρυθρη ανάκλαση (μαύρο) θα προκαλέσει χαμηλότερη τιμή εξόδου.
Θα χρησιμοποιήσουμε τον κωδικοποιητή τροχού pololu για να υπολογίσουμε την απόσταση που διανύει το ρομπότ. Αυτός ο πίνακας κωδικοποίησης τετραγώνου έχει σχεδιαστεί για να λειτουργεί με pololu micro metal gearmotors. Λειτουργεί κρατώντας δύο αισθητήρες υπέρυθρης ανακλαστικότητας στο κέντρο του τροχού Pololu 42 × 19mm και μετρώντας την κίνηση των δώδεκα δοντιών κατά μήκος του χείλους του τροχού.
Ένας πίνακας κυκλωμάτων οδηγού κινητήρα (L298N) χρησιμοποιείται για τον έλεγχο των κινητήρων. Οι ακίδες INx χρησιμοποιούνται για να κατευθύνουν τους κινητήρες και οι ακίδες ENx χρησιμοποιούνται για τον καθορισμό της ταχύτητας των κινητήρων.
Επίσης, χρησιμοποιείται ρυθμιστής τάσης για τη μείωση της τάσης από την μπαταρία σε 5V.
Βήμα 1: Περιγραφή αλγορίθμου
Αυτό το Instructable ενσωματώνει τον σωστό τοίχο ακολουθώντας τη μέθοδο. Αυτό βασίζεται στην οργάνωση της προτεραιότητας κατεύθυνσης προτιμώντας τη σωστή κατεύθυνση. Εάν το ρομπότ δεν μπορεί να εντοπίσει τον τοίχο στα δεξιά, στρίβει προς τα δεξιά. Εάν το ρομπότ ανιχνεύσει τον σωστό τοίχο και δεν υπάρχει τοίχος μπροστά, πηγαίνει μπροστά. Εάν υπάρχει τοίχος στα δεξιά του ρομπότ και μπροστά, στρίβει προς τα αριστερά.
Μια σημαντική σημείωση είναι ότι δεν υπάρχει τοίχος για αναφορά αφού το ρομπότ μόλις στρίψει δεξιά. Επομένως, η «στροφή δεξιά» πραγματοποιείται σε τρία βήματα. Προχωρήστε μπροστά, στρίψτε δεξιά, προχωρήστε μπροστά.
Επιπλέον, το ρομπότ πρέπει να κρατά την απόσταση του από τον τοίχο όταν προχωρά μπροστά. Αυτό μπορεί να γίνει ρυθμίζοντας το ένα μοτέρ να είναι γρηγορότερο ή πιο αργό από το άλλο. Η τελική κατάσταση του διαγράμματος ροής φαίνεται στο σχήμα 10.
Ένα ρομπότ Maze Runner μπορεί να εφαρμοστεί πολύ εύκολα με ένα IC IC μικτού σήματος (CMIC) με δυνατότητα διαμόρφωσης GreenPAK. Μπορείτε να περάσετε από όλα τα βήματα για να καταλάβετε πώς το τσιπ GreenPAK έχει προγραμματιστεί για τον έλεγχο του Maze Runner Robot. Ωστόσο, εάν θέλετε απλά να δημιουργήσετε εύκολα το Maze Runner Robot χωρίς να κατανοήσετε όλο το εσωτερικό κύκλωμα, κατεβάστε το λογισμικό GreenPAK για να δείτε το ήδη ολοκληρωμένο Maze Runner Robot GreenPAK Design File. Συνδέστε τον υπολογιστή σας στο GreenPAK Development Kit και πατήστε το πρόγραμμα για να δημιουργήσετε το προσαρμοσμένο IC για τον έλεγχο του Maze Runner Robot. Το επόμενο βήμα θα συζητήσει τη λογική που υπάρχει μέσα στο σχεδιαστικό αρχείο Maze Runner Robot GreenPAK για όσους ενδιαφέρονται να κατανοήσουν πώς λειτουργεί το κύκλωμα.
Βήμα 2: Σχεδιασμός GreenPAK
Ο σχεδιασμός του GreenPAK αποτελείται από δύο μέρη. Αυτά είναι:
- Ερμηνεία / επεξεργασία δεδομένων από αισθητήρες απόστασης
- Καταστάσεις ASM και έξοδοι κινητήρα
Ερμηνεία / επεξεργασία δεδομένων από αισθητήρες απόστασης
Είναι σημαντικό να ερμηνεύσετε τα δεδομένα από τους αισθητήρες απόστασης. Οι κινήσεις του ρομπότ σχεδιάζονται σύμφωνα με τις εξόδους των αισθητήρων απόστασης. Δεδομένου ότι οι αισθητήρες απόστασης είναι αναλογικοί, θα χρησιμοποιήσουμε τα ACMP. Η θέση του ρομπότ σε σχέση με τον τοίχο καθορίζεται συγκρίνοντας τις τάσεις των αισθητήρων με τις προκαθορισμένες τάσεις κατωφλίου.
Θα χρησιμοποιήσουμε 3 ACMP.
- Για τον εντοπισμό του μπροστινού τοίχου (ACMP2)
- Για να εντοπίσετε το σωστό τοίχωμα (ACMP0)
- Για την προστασία της απόστασης του δεξιού τοίχου (ACMP1)
Δεδομένου ότι το ACMP0 και το ACMP1 εξαρτώνται από τον ίδιο αισθητήρα απόστασης, χρησιμοποιήσαμε την ίδια πηγή IN+ και για τους δύο συγκριτές. Η συνεχής αλλαγή σήματος μπορεί να αποφευχθεί δίνοντας υγρασία ACMP1 25mv.
Μπορούμε να καθορίσουμε τα σήματα κατεύθυνσης με βάση τις εξόδους των ACMP. Το κύκλωμα που φαίνεται στο σχήμα 12 απεικονίζει το διάγραμμα ροής που περιγράφεται στο σχήμα 7.
Με τον ίδιο τρόπο, το κύκλωμα που δείχνει τη θέση του ρομπότ σε σχέση με το δεξί τοίχωμα φαίνεται στο σχήμα 13.
Κατάσταση ASM και έξοδοι κινητήρα
Αυτή η εφαρμογή χρησιμοποιεί το Asynchronous State Machine, ή ASM, για τον έλεγχο του ρομπότ. Υπάρχουν 8 καταστάσεις στο ASM και 8 έξοδοι σε κάθε κατάσταση. Η μνήμη RAM εξόδου μπορεί να χρησιμοποιηθεί για τη ρύθμιση αυτών των εξόδων. Τα κράτη αναφέρονται παρακάτω:
- Αρχή
- Ελεγχος
- Απομακρυνθείτε από το δεξί τοίχο
- Κοντά στο δεξί τοίχο
- Στρίψτε αριστερά
- Μετακίνηση προς τα εμπρός-1
- Στρίψτε δεξιά
- Μετακίνηση προς τα εμπρός-2
Αυτές οι καταστάσεις καθορίζουν την έξοδο στον οδηγό του κινητήρα και κατευθύνουν το ρομπότ. Υπάρχουν 3 έξοδοι από το GreenPAK για κάθε κινητήρα. Δύο καθορίζουν την κατεύθυνση του κινητήρα και η άλλη έξοδος καθορίζει την ταχύτητα του κινητήρα. Η κίνηση του κινητήρα σύμφωνα με αυτές τις εξόδους εμφανίζεται στους ακόλουθους πίνακες:
Η μνήμη RAM εξόδου ASM προέρχεται από αυτούς τους πίνακες. Εμφανίζεται στο σχήμα 14. Εκτός από τους οδηγούς κινητήρα υπάρχουν δύο ακόμη έξοδοι. Αυτές οι έξοδοι πηγαίνουν στα αντίστοιχα μπλοκ καθυστέρησης για να επιτρέψουν στο ρομπότ να διανύσει μια ορισμένη απόσταση. Οι έξοδοι αυτών των μπλοκ καθυστέρησης συνδέονται επίσης με εισόδους ASM.
Τα PWM χρησιμοποιήθηκαν για τη ρύθμιση της ταχύτητας των κινητήρων. Το ASM χρησιμοποιήθηκε για να καθορίσει σε ποιο PWM θα λειτουργούσε ο κινητήρας. Τα σήματα PWMA-S και PWMB-S έχουν οριστεί στα mux επιλεγμένα bit.
Βήμα 3:
Σε αυτό το έργο, δημιουργήσαμε ένα ρομπότ που λύνει τον λαβύρινθο. Ερμηνεύσαμε δεδομένα από πολλαπλούς αισθητήρες, ελέγξαμε την κατάσταση του ρομπότ με το ASM του GreenPAK και οδηγήσαμε τους κινητήρες με οδηγό κινητήρα. Γενικά, μικροεπεξεργαστές χρησιμοποιούνται σε τέτοια έργα, αλλά ένα GreenPAK έχει μερικά πλεονεκτήματα σε σχέση με ένα MCU: είναι μικρότερο, πιο προσιτό και μπορεί να επεξεργαστεί την έξοδο του αισθητήρα γρηγορότερα από ένα MCU.
Συνιστάται:
Arduino - Maze Solving Robot (MicroMouse) Wall Robot Robot: 6 βήματα (με εικόνες)
Arduino | Maze Solving Robot (MicroMouse) Wall After Robot: Welcome I'm Isaac και αυτό είναι το πρώτο μου ρομπότ " Striker v1.0 ". Αυτό το ρομπότ σχεδιάστηκε για να λύσει ένα απλό λαβύρινθο. Στον διαγωνισμό είχαμε δύο λαβύρινθους και το ρομπότ μπόρεσε να τα αναγνωρίσει. Οποιεσδήποτε άλλες αλλαγές στον λαβύρινθο ενδέχεται να απαιτούν αλλαγή στο
Ρομπότ σχεδίασης με ασπίδα Adafruit (Διαγωνισμός Make It Move): 10 βήματα (με εικόνες)
Ρομπότ σχεδίασης με ασπίδα Adafruit (Διαγωνισμός Make It Move): Γεια σας, τα ονόματά μου ο Jacob και μένουμε στο Ηνωμένο Βασίλειο. Σε αυτό το έργο θα φτιάξω ένα ρομπότ που σχεδιάζει για εσάς. *Είμαι σίγουρος ότι πολλοί από εσάς θέλετε να το δείτε, οπότε αν θέλετε να το μάθετε παρακαλούμε να μεταβείτε στο δεύτερο έως το τελευταίο βήμα, αλλά φροντίστε να επιστρέψετε εδώ για να δείτε
Oceania Midi Controller (για Make Noise 0-Coast and Other Synths): 6 βήματα (με εικόνες)
Oceania Midi Controller (για Make Noise 0-Coast and Other Synths): Τα τελευταία χρόνια, ένας αριθμός κατασκευαστών συνθεσάιζερ κυκλοφορούν " επιτραπέζιους ημι-αρθρωτούς " όργανα. Παίρνουν γενικά τον ίδιο παράγοντα μορφής με τον τύπο αρθρωτού συνθεσάιζερ Eurorack και οι περισσότεροι πιθανότατα προορίζονται ως g
Κονσόλα παιχνιδιού Arduino Pocket + A -Maze - Maze Game: 6 βήματα (με εικόνες)
Arduino Pocket Game Console + A -Maze - Maze Game: Καλώς ορίσατε στο πρώτο μου διδακτικό! Το έργο που θέλω να μοιραστώ μαζί σας σήμερα είναι το Arduino maze game, το οποίο έγινε μια κονσόλα τσέπης ικανή όπως το Arduboy και παρόμοιες κονσόλες με βάση το Arduino. Μπορεί να αναβοσβήνει με τα μελλοντικά μου παιχνίδια (ή τα δικά σας) χάρη στην έκθεση
Maze Solver Robot: 5 βήματα (με εικόνες)
Maze Solver Robot: - αυτό το ρομπότ έχει σχεδιαστεί για να λύσει έναν απλό λαβύρινθο χωρίς τεχνητή νοημοσύνη χρησιμοποιώντας τις ακόλουθες τεχνικές στον κώδικα: 1) PID2) εξισώσεις περιστροφής 3) βαθμονόμηση gitHub σύνδεσμος κώδικα: https://github.com/marwaMosafa/Maze-solver -αλγόριθμος