Πίνακας περιεχομένων:
- Βήμα 1: Βήμα 1: Απαιτούμενα υλικά
- Βήμα 2: Βήμα 2: Ρύθμιση/Λήψη κώδικα για το Roomba
- Βήμα 3: Βήμα 3: Ρύθμιση αισθητήρων Cliff/LED Lights
- Βήμα 4: Βήμα 4: Έλεγχος για εμπόδια
- Βήμα 5: Βήμα 5: Σχεδίαση
Βίντεο: Roomba MATLAB Έργο: 5 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:36
Το τρέχον σχέδιο που έχει η NASA για το ροβόι Άρη είναι να είναι συλλέκτης δεδομένων και να περιφέρεται γύρω από τον Άρη, συλλέγοντας δείγματα του εδάφους για να φέρει πίσω στη Γη, έτσι ώστε οι επιστήμονες να δουν αν υπήρχαν προηγούμενες μορφές ζωής στον πλανήτη. Επιπλέον, το rover στέλνει πίσω εικόνες στους επιστήμονες, ώστε να μπορούν να βοηθήσουν στην περιήγηση στο rover και να διορθώσουν τυχόν προβλήματα που μπορεί να έχει.
Η ιδέα της ομάδας μας για το έργο μας είναι το rover να κάνει το ίδιο με το rover της NASA που θα φύγει από τη γη το 2020, αλλά και να χαρτογραφήσει τη γεωγραφία της γης. Το roomba θα είναι σε θέση να αντιληφθεί γκρεμούς και να σταματήσει πριν πέσει, και στη συνέχεια να γυρίσει πίσω, να γυρίσει και να αλλάξει πορεία έτσι ώστε να μην πέσει και καταστραφεί. Η άλλη μας ιδέα που ενσωματώνεται στο έργο μας είναι το roomba να μπορεί να σχεδιάσει τα ορόσημα που βλέπει και να δείχνει ένα σχέδιο κάθε φορά που ο βρόχος τελειώνει και η πορεία του έχει εκτελεστεί.
Αυτό το διδακτικό είναι για οποιονδήποτε άλλο θα ήθελε να δημιουργήσει τον ίδιο τύπο κώδικα για το roomba του.
Βήμα 1: Βήμα 1: Απαιτούμενα υλικά
Θα χρειαστείτε:
- Ένα δωμάτιο δωματίου
- MATLAB
- Αυτό το αρχείο για την εκτέλεση του roomba
- Μια επίπεδη επιφάνεια
- Μια επιφάνεια τραπεζιού για να λειτουργήσει ως "γκρεμός"
Βήμα 2: Βήμα 2: Ρύθμιση/Λήψη κώδικα για το Roomba
Η οθόνη σας θα μοιάζει με αυτήν μόλις εισαγάγετε τα αρχεία.
Βήμα 3: Βήμα 3: Ρύθμιση αισθητήρων Cliff/LED Lights
Αυτός ο κωδικός θα πει στο roomba σας ποια ακριβώς γωνία θα στραφεί, θα ελέγξει τις πληροφορίες της μπαταρίας, θα πει στην roomba σας πόσο γρήγορα θα πάει και θα ελέγξει για ένα άτομο μέσω της κάμερας του roomba. Θα ακουστεί επίσης μπιπ εάν αναγνωρίσει ένα άτομο και θα σταματήσει πριν βγει από γκρεμό.
% try rob.setLEDDigits ('') x = 0; y = 0; θήτα = 0; εμπόδιο = ; κύκλος = 1; AngCorr = @(x) x + 3.059.*X.^0.4205; %Λειτουργία για τη διόρθωση των γωνιών στροφής ενώ rob.getBatteryInfo.percent> 15 rob.setLEDDigits ('') rob.setDriveVelocity (0.1) %Μετάβαση %Check For Person if AA_checkperson (rob) rob.beep end %Check Cliff Sensor if AA_cliffcheck (rob) rob.stop rob.setLEDDigits ('Cliff') παύση (0.5) εμπόδιο (κύκλος) = 2; AA_cliffbeep (rob) %Back Up And Turn rob.moveDistance (-. 15) rob.turnAngle (30) end
Βήμα 4: Βήμα 4: Έλεγχος για εμπόδια
Αυτός ο κωδικός θα πάρει το roomba για έλεγχο για αντικείμενα γύρω του και θα ελέγξει τον αισθητήρα χτυπήματος για να βεβαιωθείτε ότι σταματάει προτού βλάψει τον εαυτό του.
%Έλεγχος αισθητήρα φωτός εάν AA_lightcheck (rob) rob.stop rob.setLEDDigits ('Wall') παύση (0.5) εμπόδιο (κύκλος) = 1; %Wall AA_wallbeep (rob) %Back Up And Turn rob.moveDistance (-. 15) rob.turnAngle (30) end %Check Bump Sensor if AA_bumpcheck (rob) rob.stop rob.setLEDDigits ('Wall') pause (0.5) εμπόδιο (κύκλος) = 1; %Wall AA_wallbeep (rob) %Back Up And Turn rob.moveDistance (-. 15) rob.turnAngle (30) end %If no if isempty (εμπόδιο) εμπόδιο (κύκλος) = 0; elseif μήκος (εμπόδιο) <κύκλος εμπόδιο (κύκλος) = 0; τέλος
Βήμα 5: Βήμα 5: Σχεδίαση
Αυτός ο κωδικός θα πει στο roomba σας να σχεδιάσει τι συναντά στο ταξίδι του. Μια πλοκή όπως αυτή θα εμφανιστεί αφού σταματήσει το roomba.
%Λήψη θέσης d = rob.getDistance; αν κύκλος == 1 θήτα (κύκλος) = 0? x (κύκλος) = d.*cosd (theta (κύκλος)); % συνολική απόσταση που διανύθηκε σε x y (κύκλος) = d.*sind (theta (κύκλος)); % συνολική απόσταση που διανύθηκε σε y άλλο theta (κύκλος) = theta (κύκλος-1) + rob.getAngle; x (κύκλος) = δ.*cosd (theta (κύκλος)) + x (κύκλος-1); % συνολική απόσταση που διανύθηκε σε x y (κύκλος) = d.*sind (theta (κύκλος)).*d + y (κύκλος-1). %συνολική διανυθείσα διαδρομή στο y τέλος %Συνθήκη διακοπής εάν rob.getButtons.clean break end %Κύκλος κύκλου αύξησης = κύκλος + 1; τέλος rob.stop για i = 1: κύκλος αν εμπόδιο (i) == 1 %Πίνακας τοίχου (x (i), y (i), "Marker", "square", "MarkerEdgeColor", "r") elseif εμπόδιο (i) == 2 %Cliff plot (x (i), y (i), 'Marker', 'o', 'MarkerEdgeColor', 'k') τελικό κείμενο (.9, 0.9, sprintf ('Square = Wall / nCircle = Cliff '),' Units ',' normalized ') hold at end % Distress Signal while true rob.beep pause (3) if rob.getButtons.clean break end end % catch % rob.stop % end
Συνιστάται:
(Έργο IOT) Λάβετε δεδομένα καιρού χρησιμοποιώντας το ESP8266 και το Openweather API: 5 βήματα
(Έργο IOT) Λάβετε δεδομένα καιρού χρησιμοποιώντας το ESP8266 και το Openweather API: Σε αυτό το διδακτικό θα δημιουργήσουμε ένα απλό έργο IOT στο οποίο θα λαμβάνουμε τα δεδομένα καιρού της πόλης μας από το openweather.com/api και θα τα εμφανίζουμε χρησιμοποιώντας λογισμικό επεξεργασίας
MATLAB Controlled Roomba: 5 βήματα
MATLAB Controlled Roomba: Ο στόχος αυτού του έργου είναι να χρησιμοποιήσει το MATLAB καθώς και ένα τροποποιημένο προγραμματιζόμενο ρομπότ iRobot. Η ομάδα μας συνδύασε τις δεξιότητές μας για κωδικοποίηση προκειμένου να δημιουργήσουμε ένα σενάριο MATLAB που χρησιμοποιεί πολλές λειτουργίες του iRobot, συμπεριλαμβανομένων των αισθητήρων βράχου, των προφυλακτήρων
Roomba-Assistant Assisting Roomba: 4 Βήματα
Roomba-Assisting Roomba: Αυτό το έργο γίνεται χρησιμοποιώντας το Raspberry Pi 3 στο iRobot Create Version 2. Το MATLAB χρησιμοποιείται για να προγραμματίσει το ρομπότ να ακολουθεί συγκεκριμένες οδηγίες χρησιμοποιώντας τους αισθητήρες και την κάμερα. Οι αισθητήρες και οι κάμερες χρησιμοποιούνται για την εκτέλεση συγκεκριμένων
Roomba With MATLAB: 4 βήματα (με εικόνες)
Roomba With MATLAB: Αυτό το έργο κάνει χρήση του MATLAB και ενός προγραμματιζόμενου ρομπότ iRobot Create2. Δοκιμάζοντας τις γνώσεις μας για το MATLAB, είμαστε σε θέση να προγραμματίσουμε το Create2 να ερμηνεύει εικόνες και να ανιχνεύει σήματα. Η λειτουργικότητα του ρομπότ εξαρτάται κυρίως από την
Καυστήρας με τροφοδοσία USB! Αυτό το έργο μπορεί να καεί μέσω πλαστικών / ξύλου / χαρτιού (το διασκεδαστικό έργο πρέπει επίσης να είναι πολύ λεπτό ξύλο): 3 βήματα
Καυστήρας με τροφοδοσία USB! Αυτό το έργο μπορεί να καεί μέσω πλαστικών / ξύλου / χαρτιού (το διασκεδαστικό έργο πρέπει επίσης να είναι πολύ λεπτό ξύλο): ΜΗΝ ΚΑΝΕΤΕ ΑΥΤΟ ΧΡΗΣΙΜΟΠΟΙΗΣΤΕ USB !!!! διαπίστωσα ότι μπορεί να βλάψει τον υπολογιστή σας από όλα τα σχόλια. ο υπολογιστης μου ειναι μια χαρα Χρησιμοποιήστε φορτιστή τηλεφώνου 600ma 5v. το χρησιμοποίησα και δουλεύει μια χαρά και τίποτα δεν μπορεί να καταστραφεί αν χρησιμοποιήσετε βύσμα ασφαλείας για να διακόψετε την τροφοδοσία