Πίνακας περιεχομένων:
- Βήμα 1: ΣΥΝΤΟΜΗ ΕΙΣΑΓΩΓΗ
- Βήμα 2: Η ΕΝΔΙΑΦΕΡΟΝ ΙΣΤΟΡΙΑ ΙΣΤΟΡΙΚΟΥ
- Βήμα 3: ΣΥΝΤΟΜΗ ΕΙΣΑΓΩΓΗ ΣΤΟ "oblu"
- Βήμα 4: ΠΟΙΑ ΕΙΝΑΙ Η ΧΡΗΣΙΜΟΤΗΤΑ του "oblu";
- Βήμα 5: Η ΙΣΤΟΡΙΑ ΤΟΥ ΕΡΓΟΥ
- Βήμα 6: ΠΕΡΙΓΡΑΦΗ ΣΥΣΤΗΜΑΤΟΣ
- Βήμα 7: ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΜΟΝΟΔΟΜΗΣ
- Βήμα 8: ΣΥΝΕΛΕΥΣΗ ΚΥΚΛΩΜΑΤΟΣ
- Βήμα 9: ΔΙΑΓΡΑΜΜΑ ΚΥΚΛΩΜΑΤΟΣ
- Βήμα 10: ΠΡΩΤΟΚΟΛΛΟ ΕΠΙΚΟΙΝΩΝΙΑΣ:
- Βήμα 11: ΠΩΣ ΛΕΙΤΟΥΡΓΕΙ το "oblu" IMU (προαιρετικό):
- Βήμα 12: Επισκεφτείτε το "oblu.io" (προαιρετικό)
- Βήμα 13: ΣΥΣΤΑΤΙΚΑ
Βίντεο: Πλοήγηση στο ρομπότ με αισθητήρες παπουτσιών, W/o GPS, W/o χάρτης: 13 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Από obluobluΑκολουθήστε Σχετικά: Ο oblu είναι ένας εσωτερικός αισθητήρας πλοήγησης Περισσότερα για το oblu »
Το ρομπότ κινείται σε μια προκαθορισμένη διαδρομή και μεταφέρει (μέσω bluetooth) τις πραγματικές πληροφορίες κίνησης σε ένα τηλέφωνο για παρακολούθηση σε πραγματικό χρόνο. Το Arduino είναι προ-προγραμματισμένο με διαδρομή και το oblu χρησιμοποιείται για την ανίχνευση της κίνησης του ρομπότ. Το oblu μεταδίδει πληροφορίες κίνησης στο Arduino σε τακτά χρονικά διαστήματα. Με βάση αυτό, το Arduino ελέγχει τις κινήσεις των τροχών για να αφήσει το ρομπότ να ακολουθήσει την προκαθορισμένη διαδρομή.
Βήμα 1: ΣΥΝΤΟΜΗ ΕΙΣΑΓΩΓΗ
Το έργο αφορά στο να κάνει το ρομπότ να κινείται σε μια προκαθορισμένη διαδρομή με ακρίβεια, χωρίς να χρησιμοποιεί GPS ή WiFi ή Bluetooth για τοποθέτηση, ούτε καν χάρτη ή σχέδιο διάταξης κτιρίου. Και σχεδιάστε την πραγματική πορεία του (στην κλίμακα), σε πραγματικό χρόνο. Το bluetooth μπορεί να χρησιμοποιηθεί ως υποκατάστατο του καλωδίου, για τη μετάδοση πληροφοριών τοποθεσίας σε πραγματικό χρόνο.
Βήμα 2: Η ΕΝΔΙΑΦΕΡΟΝ ΙΣΤΟΡΙΑ ΙΣΤΟΡΙΚΟΥ
Η πρωταρχική ατζέντα της ομάδας μας είναι η ανάπτυξη αισθητήρων πλοήγησης πεζών. Ωστόσο, μας προσέγγισε μια ακαδημαϊκή ερευνητική ομάδα με την απαίτηση να πλοηγηθούμε σε ρομπότ σε εσωτερικό χώρο και ταυτόχρονη παρακολούθηση της θέσης του σε πραγματικό χρόνο. Wantedθελαν να χρησιμοποιήσουν ένα τέτοιο σύστημα για χαρτογράφηση ακτινοβολίας σε κλειστό θάλαμο ή ανίχνευση διαρροής αερίου σε βιομηχανική εγκατάσταση. Τέτοια μέρη είναι επικίνδυνα για τον άνθρωπο. αναζητώντας μια ισχυρή λύση για εσωτερική πλοήγηση του ρομπότ μας με βάση το Arduino.
Η προφανής επιλογή μας για οποιαδήποτε μονάδα αισθητήρα κίνησης (IMU) ήταν "oblu" (Αναφορά πάνω από την εικόνα). Αλλά το δύσκολο κομμάτι εδώ ήταν ότι το υπάρχον υλικολογισμικό του oblu ήταν κατάλληλο για εσωτερική εγκατάσταση με πόδια για πεζούς Dead Reckoning (PDR) ή Πεζοναυτική Πλοήγηση, με απλά λόγια. Η απόδοση PDL του oblu σε εσωτερικούς χώρους ως IMU για πόδι είναι αρκετά εντυπωσιακή. Η διαθεσιμότητα της εφαρμογής Android (Xoblu) για παρακολούθηση σε πραγματικό χρόνο του oblu ως αισθητήρα παπουτσιών, προσθέτει το πλεονέκτημα. Ωστόσο, η πρόκληση ήταν να αξιοποιήσει τον υπάρχοντα αλγόριθμό του, ο οποίος βασίζεται στο μοντέλο ανθρώπινης βάδισης, για την πλοήγηση στο ρομπότ και την παρακολούθηση του.
Βήμα 3: ΣΥΝΤΟΜΗ ΕΙΣΑΓΩΓΗ ΣΤΟ "oblu"
Το "oblu" είναι μια μικροσκοπική πλατφόρμα ανάπτυξης χαμηλού κόστους και ανοιχτού κώδικα που στοχεύει σε φορητές εφαρμογές ανίχνευσης κίνησης. Είναι επαναφορτιζόμενη με μπαταρίες ιόντων λιθίου και επιτρέπει τη φόρτιση της μπαταρίας USB. Διαθέτει ενσωματωμένη μονάδα Bluetooth (BLE 4.1) για ασύρματη επικοινωνία. Το "oblu" φιλοξενεί έναν μικροελεγκτή πλωτού σημείου 32 bit (AT32UC3C του Atmel) που επιτρέπει την επίλυση πολύπλοκων εξισώσεων πλοήγησης επί του σκάφους. Επομένως, κάποιος εκτελεί όλη την επεξεργασία κίνησης στο ίδιο το oblu και μεταδίδει μόνο το τελικό αποτέλεσμα. Αυτό καθιστά την ενσωμάτωση του oblu με το συγγενικό σύστημα εξαιρετικά απλή. Το "oblu" φιλοξενεί επίσης συστοιχία πολλαπλών IMU (MIMU) που επιτρέπει τη σύντηξη αισθητήρα και ενισχύει την απόδοση ανίχνευσης κίνησης. Η προσέγγιση MIMU προσθέτει στη μοναδικότητα του "oblu".
Οι εσωτερικοί υπολογισμοί του oblu βασίζονται στο ανθρώπινο περπάτημα. Το oblu δίνει μετατόπιση μεταξύ δύο διαδοχικών βημάτων και αλλαγή στην επικεφαλίδα. Πώς - όταν το πόδι έρχεται σε επαφή με το έδαφος, η ταχύτητα του πέλματος είναι μηδενική, δηλαδή το πέλμα είναι σε στάση. Με αυτόν τον τρόπο το oblu εντοπίζει τα «βήματα» και διορθώνει ορισμένα εσωτερικά σφάλματα. Και αυτή η συχνή διόρθωση σφαλμάτων, έχει ως αποτέλεσμα μεγάλη απόδοση παρακολούθησης. Εδώ λοιπόν έγκειται το αλίευμα. Τι κι αν το ρομπότ μας περπατά επίσης με τον ίδιο τρόπο - μετακινήστε, σταματήστε, μετακινηθείτε, σταματήστε.. Εντελώς, το oblu θα μπορούσε να χρησιμοποιηθεί για οποιοδήποτε αντικείμενο του οποίου η κίνηση έχει κανονικές μηδενικές και μη μηδενικές στιγμές. Έτσι προχωρήσαμε μπροστά με το oblu και σε λίγο δεν μπορούσαμε να συναρμολογήσουμε το ρομπότ μας και το σύστημα παρακολούθησης.
Βήμα 4: ΠΟΙΑ ΕΙΝΑΙ Η ΧΡΗΣΙΜΟΤΗΤΑ του "oblu";
Περνάμε σχεδόν το 70% του χρόνου μας σε εσωτερικούς χώρους. Ως εκ τούτου, υπάρχουν πολλές εφαρμογές που απαιτούν εσωτερική πλοήγηση ανθρώπων και μηχανών. Η πιο συχνά χρησιμοποιούμενη λύση εντοπισμού θέσης είναι το δορυφορικό GPS/GNSS, το οποίο είναι καλό για εξωτερική πλοήγηση. Αποτυγχάνει σε εσωτερικό περιβάλλον ή σε αστικό περιβάλλον που δεν είναι προσβάσιμο στον καθαρό ουρανό. Τέτοιες εφαρμογές είναι η γεωγραφική επισκόπηση των παραγκουπόλεων ή των περιοχών κάτω από το βαρύ στέγαστρο των δέντρων, η εσωτερική πλοήγηση ρομπότ, η τοποθέτηση των σωστικών συνεργείων για την πυρόσβεση, τα ατυχήματα εξορύξεων, ο πόλεμος στις πόλεις κ.λπ.
Ο προκάτοχος του oblu παρουσιάστηκε ως ένας πολύ συμπαγής αισθητήρας παπουτσιών (ή ένας αισθητήρας PDR) για την τοποθέτηση των πυροσβεστών, ο οποίος αργότερα αναβαθμίστηκε και τροποποιήθηκε ως μια εξαιρετικά διαμορφώσιμη πλατφόρμα ανάπτυξης για τους κατασκευαστές που αναζητούν εύκολες ακριβείς προσιτή λύση αδρανειακής ανίχνευσης για εσωτερική πλοήγηση ανθρώπων καθώς και ρομπότ. Μέχρι στιγμής, οι χρήστες του oblu έχουν δείξει τις εφαρμογές του στην παρακολούθηση πεζών, τη βιομηχανική ασφάλεια και τη διαχείριση πόρων, την τακτική αστυνόμευση, τη γεω-έρευνα της κενής περιοχής GPS, το αυτο-πλοηγούμενο ρομπότ, την υποβοηθούμενη ρομποτική, το παιχνίδι, το AR/VR, τη θεραπεία των διαταραχών κίνησης, την κατανόηση της φυσικής κίνησης κλπ. Το oblu είναι κατάλληλο για εφαρμογές με περιορισμούς χώρου, π.χ. φορητή αίσθηση κίνησης. Μπορεί επίσης να χρησιμοποιηθεί ως ασύρματη IMU, χάρη στο ενσωματωμένο Bluetooth. Η παρουσία της ικανότητας επεξεργασίας κυμαινόμενου σημείου επί του σκάφους, μαζί με τέσσερις συστοιχίες IMU, καθιστά δυνατή τη σύντηξη αισθητήρα και την επεξεργασία κίνησης μέσα στην ίδια τη μονάδα, η οποία με τη σειρά της οδηγεί σε πολύ ακριβή ανίχνευση κίνησης.
Βήμα 5: Η ΙΣΤΟΡΙΑ ΤΟΥ ΕΡΓΟΥ
Η ιστορία αυτού του έργου βρίσκεται στο βίντεο…
Βήμα 6: ΠΕΡΙΓΡΑΦΗ ΣΥΣΤΗΜΑΤΟΣ
Το ρομπότ κινείται σε μια προκαθορισμένη διαδρομή και μεταδίδει (μέσω bluetooth) τις πραγματικές πληροφορίες κίνησης σε ένα τηλέφωνο για παρακολούθηση σε πραγματικό χρόνο.
Το Arduino είναι προ-προγραμματισμένο με διαδρομή και το oblu χρησιμοποιείται για την ανίχνευση της κίνησης του ρομπότ. Το oblu μεταδίδει πληροφορίες κίνησης στο Arduino σε τακτά χρονικά διαστήματα. Με βάση αυτό, το Arduino ελέγχει τις κινήσεις των τροχών για να αφήσει το ρομπότ να ακολουθήσει την προκαθορισμένη διαδρομή.
Η διαδρομή του ρομπότ είναι προγραμματισμένη ως ένα σύνολο ευθύγραμμων τμημάτων. Κάθε τμήμα γραμμής ορίζεται από το μήκος και τον προσανατολισμό του σε σχέση με το προηγούμενο. Η κίνηση του ρομπότ διατηρείται διακριτική, δηλαδή κινείται σε ευθεία γραμμή, αλλά σε μικρότερα τμήματα (ας καλέσουμε «βήματα» για απλότητα). Στο τέλος κάθε βήματος, το oblu μεταδίδει το μήκος και την έκταση της απόκλισης (αλλαγή προσανατολισμού) από την ευθεία, στο Arduino. Το Arduino διορθώνει την ευθυγράμμιση του ρομπότ σε κάθε βήμα κατά τη λήψη αυτών των πληροφοριών, εάν εντοπίσει απόκλιση από την προκαθορισμένη ευθεία γραμμή. Σύμφωνα με το πρόγραμμα, το ρομπότ υποτίθεται ότι κινείται πάντα σε ευθεία γραμμή. Ωστόσο, μπορεί να παρεκκλίνει από την ευθεία και μπορεί να περπατήσει σε μια συγκεκριμένη γωνία ή με λοξή πορεία λόγω μη ιδανικών, όπως ανώμαλη επιφάνεια, ανισορροπία μάζας στη διάταξη ρομπότ, αρχιτεκτονική ή ηλεκτρική ανισορροπία στους κινητήρες DC ή τον τυχαίο προσανατολισμό του μπροστινού ελεύθερου τροχού. Κάντε ένα βήμα.. διορθώστε τον τίτλο σας … προχωρήστε μπροστά. Το ρομπότ κινείται επίσης προς τα πίσω εάν ταξιδεύει περισσότερο από το προγραμματισμένο μήκος του συγκεκριμένου τμήματος γραμμής. Το ρομπότ κάνει μεγάλα βήματα όταν η απόσταση που πρέπει να διανυθεί είναι μεγαλύτερη και κάνει μικρότερα βήματα κοντά στον προορισμό (δηλαδή τέλος κάθε ευθύγραμμου τμήματος). Το oblu μεταδίδει δεδομένα στο Arduino και στο τηλέφωνο (μέσω bluetooth) ταυτόχρονα. Το Xoblu (η εφαρμογή Android) εκτελεί έναν απλό υπολογισμό για να κατασκευάσει τη διαδρομή με βάση τις πληροφορίες κίνησης που λαμβάνονται από το ρομπότ, οι οποίες χρησιμοποιούνται για παρακολούθηση σε πραγματικό χρόνο στο τηλέφωνο. (Η κατασκευή διαδρομής με χρήση Xoblu απεικονίζεται στη δεύτερη εικόνα).
Συνοψίζοντας, ο oblu ανιχνεύει την κίνηση και μεταφέρει πληροφορίες κίνησης στο Arduino και το τηλέφωνο σε τακτά χρονικά διαστήματα. Με βάση την προγραμματισμένη διαδρομή και τις πληροφορίες κίνησης (που αποστέλλονται από το oblu), το Arduino ελέγχει τις κινήσεις των τροχών. Η κίνηση του ρομπότ ΔΕΝ ελέγχεται εξ αποστάσεως εκτός από τις εντολές έναρξης/διακοπής.
Για firmware του oblu επισκεφθείτε τη διεύθυνση
Για τον κωδικό Aurduino του ρομπότ επισκεφθείτε τη διεύθυνση
Βήμα 7: ΜΟΝΤΕΛΟΠΟΙΗΣΗ ΜΟΝΟΔΟΜΗΣ
Το ρομπότ θα μπορούσε να ελεγχθεί καλύτερα εάν περπατά μόνο σε ευθεία τμήματα. Επομένως, η διαδρομή πρέπει πρώτα να μοντελοποιηθεί ως σύνολο τμημάτων ευθείας γραμμής. Οι εικόνες περιέχουν δύο παραδείγματα διαδρομών και τις αναπαραστάσεις τους ως προς τη μετατόπιση και τον προσανατολισμό. Έτσι προγραμματίζεται η διαδρομή στο Arduino.
Ομοίως, κάθε διαδρομή που είναι ένα σύνολο ευθύγραμμων τμημάτων, μπορεί να οριστεί και να προγραμματιστεί στο Arduino.
Βήμα 8: ΣΥΝΕΛΕΥΣΗ ΚΥΚΛΩΜΑΤΟΣ
Το διάγραμμα ολοκλήρωσης συστήματος ανώτατου επιπέδου. Το Arduino και το oblu είναι μέρος της διάταξης υλικού. Το UART χρησιμοποιείται για επικοινωνία μεταξύ Arduino και oblu. (Σημειώστε τη σύνδεση σύνδεσης Rx/Tx.) Η κατεύθυνση της ροής δεδομένων είναι μόνο για αναφορά. Ολόκληρο το συγκρότημα υλικού επικοινωνεί με smartphone (Xoblu) χρησιμοποιώντας bluetooth.
Βήμα 9: ΔΙΑΓΡΑΜΜΑ ΚΥΚΛΩΜΑΤΟΣ
Οι λεπτομερείς ηλεκτρικές συνδέσεις μεταξύ Arduino, oblu, οδηγού κινητήρα και μπαταρίας.
Βήμα 10: ΠΡΩΤΟΚΟΛΛΟ ΕΠΙΚΟΙΝΩΝΙΑΣ:
Παρακάτω είναι πώς γίνεται η επικοινωνία δεδομένων μεταξύ του αισθητήρα oblu που είναι τοποθετημένος στο ρομπότ και του smartphone, δηλαδή του Xoblu:
Βήμα 1: Το Xoblu στέλνει την εντολή START στο oblu Βήμα 2: Το oblu αναγνωρίζει τη λήψη της εντολής στέλνοντας το κατάλληλο ACK στο Xoblu Βήμα 3: Το oblu στέλνει πακέτο DATA που περιέχει πληροφορίες μετατόπισης και προσανατολισμού για κάθε βήμα, σε κάθε βήμα, στο Xoblu. (βήμα = όποτε ανιχνεύει μηδενική κίνηση ή ανιχνεύεται στάση). Βήμα 4: Το Xoblu αναγνωρίζει τη λήψη του τελευταίου πακέτου DATA στέλνοντας το κατάλληλο ACK στο oblu. (Ο κύκλος των βημάτων 3 και 4 επαναλαμβάνεται έως ότου το Xoblu στείλει STOP. Με τη λήψη της εντολής STOP, το oblu εκτελεί το βήμα 5) Βήμα 5: STOP - (i) Διακοπή επεξεργασίας σε oblu (ii) Διακοπή όλων των εξόδων στο oblu λεπτομέρειες για START, ACK, DATA και STOP
Βήμα 11: ΠΩΣ ΛΕΙΤΟΥΡΓΕΙ το "oblu" IMU (προαιρετικό):
Παρουσιάζοντας μερικές αναφορές σχετικά με την επισκόπηση του oblu και τη βασική αρχή λειτουργίας ενός αισθητήρα PDR που είναι τοποθετημένος στο πόδι:
Ο διαθέσιμος πηγαίος κώδικας του oblu στοχεύει στην πλοήγηση με πόδι. Και είναι καλύτερα βελτιστοποιημένη για αυτόν τον σκοπό. Το παρακάτω βίντεο καλύπτει τη βασική αρχή λειτουργίας του:
Ακολουθούν μερικά απλά άρθρα για αισθητήρες PDR που είναι τοποθετημένοι στο πόδι: 1. Παρακολουθήστε τα βήματά μου
2. Συνεχίστε να παρακολουθείτε τα βήματά μου
Μπορείτε να ανατρέξετε σε αυτό το έγγραφο για λεπτομέρειες σχετικά με τον υπολογισμό των νεκρών πεζών χρησιμοποιώντας αισθητήρες ποδιών.
Βήμα 12: Επισκεφτείτε το "oblu.io" (προαιρετικό)
Δείτε το βίντεο για τις πιθανές εφαρμογές του "oblu":
---------------- Παρακαλώ μοιραστείτε τα σχόλιά σας, τις προτάσεις και αφήστε σχόλια. Καλύτερες ευχές!
Βήμα 13: ΣΥΣΤΑΤΙΚΑ
1 oblu (μια πλατφόρμα ανάπτυξης ανοιχτής πηγής IMU)
1 Smart Motor Robot Car Battery Box Chassis Kit DIY Speed Encoder for Arduino
1 Χωρίς συγκόλληση Breadboard Half Size
1 αρσενικά/θηλυκά καλώδια άλτη
2 Πυκνωτής 1000 μF
1 Texas Instruments Dual H-Bridge προγράμματα οδήγησης κινητήρα L293D
1 Arduino Mega 2560 & Genuino Mega 2560
4 Amazon Web Services AA 2800 Ni-MH Επαναφορτιζόμενη
Συνιστάται:
Εμπόδιο αποφυγής ρομπότ χρησιμοποιώντας υπερηχητικούς αισθητήρες: 9 βήματα (με εικόνες)
Εμπόδιο στην αποφυγή ρομπότ με υπερηχητικούς αισθητήρες: Αυτό είναι ένα απλό έργο σχετικά με την αποφυγή εμποδίων ρομπότ χρησιμοποιώντας αισθητήρες υπερήχων (HC SR 04) και πίνακα Arduino Uno. Ο ρομπότ κινείται αποφεύγοντας τα εμπόδια και επιλέγοντας τον καλύτερο τρόπο που ακολουθείται από αισθητήρες. Και προσέξτε ότι δεν είναι εκπαιδευτικό έργο, μοιραστείτε το
Φθηνοί αισθητήρες εγγύτητας IR για ρομπότ Arduino: 6 βήματα (με εικόνες)
Φθηνοί αισθητήρες εγγύτητας IR για ρομπότ Arduino: Αυτοί οι αισθητήρες εγγύτητας υπέρυθρης ακτινοβολίας είναι μικροί, εύκολοι στην κατασκευή και εξαιρετικά φθηνοί! Λειτουργούν εξαιρετικά σε ρομπότ, για παρακολούθηση γραμμών, ανίχνευση άκρων και ελάχιστη απόσταση. Είναι επίσης πολύ, πολύ φθηνά
Φθηνοί αισθητήρες χτυπήματος για ρομπότ Arduino: 4 βήματα (με εικόνες)
Φθηνοί αισθητήρες χτυπήματος για ρομπότ Arduino: Χρειάζεστε φθηνούς αισθητήρες χτυπήματος με εύκολη πηγή για την εξαγορά του ρομπότ σας. Εννοώ, το έργο Arduino; Αυτοί οι μικροί αισθητήρες είναι εύχρηστοι, εύχρηστοι και εύκολοι στο πορτοφόλι (17 σεντς το καθένα!), Και λειτουργεί υπέροχα για απλή ανίχνευση εμποδίων σε μικροελεγκτή-ba
EWEEDINATOR☠ Μέρος 2: Δορυφορική πλοήγηση: 7 βήματα (με εικόνες)
☠WEEDINATOR☠ Μέρος 2: Δορυφορική πλοήγηση: Το σύστημα πλοήγησης Weedinator γεννιέται! Ένα περιπλανώμενο γεωργικό ρομπότ που μπορεί να ελεγχθεί από ένα έξυπνο τηλέφωνο… Και αντί να περάσω απλώς την κανονική διαδικασία για το πώς συνδυάζεται, σκέφτηκα να προσπαθήσω να εξηγήσω πώς λειτουργεί στην πραγματικότητα - obvi
Αισθητήρας υπέρυθρης γείωσης/αντικειμένου για πλοήγηση σε ρομπότ: 3 βήματα
Υπέρυθρος αισθητήρας εδάφους/αντικειμένου για πλοήγηση σε ρομπότ: χρησιμοποίησα αυτόν τον αισθητήρα σε 2 από τα ρομπότ μου. αυτά δούλευαν σε επιφάνεια τραπεζιού, οπότε τα ρομπότ έπρεπε να εντοπίσουν πότε έφτασαν στην άκρη, να σταματήσουν και να γυρίσουν πίσω … μπορεί επίσης να δημιουργήσει εμπόδια στο δρόμο