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

Επιθεωρητής Roomba: 6 βήματα (με εικόνες)
Επιθεωρητής Roomba: 6 βήματα (με εικόνες)

Βίντεο: Επιθεωρητής Roomba: 6 βήματα (με εικόνες)

Βίντεο: Επιθεωρητής Roomba: 6 βήματα (με εικόνες)
Βίντεο: CS50 2015 - Week 10 2024, Ιούλιος
Anonim
Image
Image
Σύνδεση ηλεκτρονικών ανταλλακτικών
Σύνδεση ηλεκτρονικών ανταλλακτικών

Οι περισσότεροι από εμάς χρησιμοποιούμε ρομπότ iRobot Roomba μόνο για ηλεκτρική σκούπα, αλλά λίγοι γνωρίζουν ότι είναι μια εξαιρετική βάση για νέα ρομποτικά έργα. Όλοι οι κατασκευαστές πρέπει να δοκιμάσουν το Roomba Open Interface (OI) για να μάθουν πόσο εύκολο είναι να ελέγχει αυτό το ρομπότ. Σε αυτήν την οδηγία θα μάθετε πώς μπορείτε να προσθέσετε μερικές χρήσιμες λειτουργίες στο Roomba σας. Στην αρχή θα περιγράψω τον τρόπο απομακρυσμένου ελέγχου του Roomba μέσω bluetooth και εφαρμογής Android. Αργότερα θα σας δείξω πώς να εκτελείτε ροή βίντεο με βάση το RPi και τέλος περιγράφω το σχέδιο για περαιτέρω ανάπτυξη αυτού του έργου.

Μέρη που απαιτούνται σε αυτό το έργο:

  1. Μονάδα bluetooth BTM-222 ή άλλη που λειτουργεί σε 115200 baud rate x1
  2. Ρυθμιστής τάσης 5V Step-Down D24V6F5 x1
  3. μίνι breadboard x1
  4. Λίγα καλώδια

έκδοση με περίβλημα:

  1. 8 ακίδων mini DIN υποδοχή x1
  2. διακόπτης ισχύος x1
  3. led 3 mm x1
  4. αντίσταση 10k x1
  5. μικρό περίβλημα 50x40x20 mm x1

ΕΚΤΕΤΑΜΕΝΗ Εκδοση:

  1. Raspberry Pi 3 x1
  2. RPi χάλκινη ψύκτρα x1
  3. Προσαρμογέας USB WiFi x1
  4. κάρτα micro SD 8 GB ή μεγαλύτερη x1
  5. Κάμερα RPi - Fisheye Lens x1
  6. Θήκη για RPi x1
  7. Μπαταρία υψηλής χωρητικότητας 5V (τουλάχιστον 10 Ah) x1
  8. Ένα κομμάτι πλαστικό στήριγμα x1
  9. Παξιμάδια και μπουλόνια M2 x4

Βήμα 1: Σύνδεση ηλεκτρονικών ανταλλακτικών

Σύνδεση ηλεκτρονικών ανταλλακτικών
Σύνδεση ηλεκτρονικών ανταλλακτικών
Σύνδεση ηλεκτρονικών ανταλλακτικών
Σύνδεση ηλεκτρονικών ανταλλακτικών
Σύνδεση ηλεκτρονικών ανταλλακτικών
Σύνδεση ηλεκτρονικών ανταλλακτικών

Αυτή τη φορά, αυτό το βήμα είναι πολύ απλό γιατί χρειάζεται μόνο να συνδέσουμε δύο μονάδες για να μπορέσουμε να ελέγξουμε το Roomba μας. Το πρώτο είναι μια μονάδα Bluetooth που μπορεί να λειτουργήσει στα 115200 bps. Το δεύτερο είναι 5V Step-Down Voltage Regulator D24V6F5. Η φορτισμένη μπαταρία Roomba έχει τάση περίπου 14,4V και η μονάδα bluetooth χρειάζεται 5V, οπότε πρέπει να μειώσουμε την τάση της μπαταρίας στο επίπεδο των 5V χρησιμοποιώντας ρυθμιστή τάσης. Ο ρυθμιστής D24V6F5 έχει απόδοση μεταξύ 80 και 90% που είναι πολύ καλή τιμή σε σύγκριση με τους κλασικούς γραμμικούς ρυθμιστές που έχουν συνήθως απόδοση κάτω από 40%. Ο ευκολότερος τρόπος σύνδεσης αυτών των δύο μονάδων είναι η τοποθέτησή τους σε μίνι σανίδα και καλωδίωση σύμφωνα με το διάγραμμα καλωδίωσης όπως παραπάνω. Επιπλέον, όλες οι συνδέσεις εμφανίζονται σε αριθμημένες φωτογραφίες. Να είστε προσεκτικοί όταν συνδέεστε στους ακροδέκτες της μπαταρίας. Τυχαίο βραχυκύκλωμα μπορεί να προκαλέσει ζημιά στην μπαταρία!

Βήμα 2: Χρήση της εφαρμογής Android Control

Image
Image
Χρήση της εφαρμογής Android Control
Χρήση της εφαρμογής Android Control
Χρήση της εφαρμογής Android Control
Χρήση της εφαρμογής Android Control
Χρήση της εφαρμογής Android Control
Χρήση της εφαρμογής Android Control

Έχω αναπτύξει μια εφαρμογή Android που σας επιτρέπει να ελέγχετε τη ρομποτική σκούπα σειράς Roomba 500 μέσω bluetooth. Μπορείτε να κατεβάσετε την εφαρμογή μου δωρεάν από το Google Play - Roomb Control. Λειτουργεί τόσο με smartphone όσο και με tablet.

Πώς να χρησιμοποιήσετε την εφαρμογή Roomb Control:

  • πατήστε στην επάνω δεξιά γωνία της οθόνης (3 κάθετες κουκκίδες)
  • επιλέξτε την καρτέλα "Σύνδεση"
  • πατήστε στην καρτέλα "BTM222" και μετά από λίγο θα δείτε το μήνυμα "Σύνδεση με BTM222"
  • μετά τη σύνδεση, μπορείτε να ελέγξετε το Roomba
  • εάν δεν βλέπετε τη συσκευή bluetooth, πατήστε το κουμπί "Σάρωση για συσκευές"
  • κατά την πρώτη χρήση της μονάδας bluetooth, θυμηθείτε να τη συνδέσετε με το smartphone σας εισάγοντας τον προεπιλεγμένο κωδικό που αναφέρεται στις προδιαγραφές της μονάδας bluetooth

Βήμα 3: Ανοιχτή διεπαφή Roomba σε παραδείγματα

Σε αυτό το βήμα θα βρείτε παραδείγματα κοινών εντολών που χρησιμοποιούνται για τον έλεγχο της σειράς Roomba 500. Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με το Roomba Open Interface σε αυτό το έγγραφο.

Το Roomba 500+ μπορεί να λειτουργήσει σε μία από τις τέσσερις λειτουργίες:

  • Η πλήρης λειτουργία σάς δίνει πλήρη έλεγχο της Roomba (χωρίς περιορισμό ασφαλείας, όπως για την ασφαλή και παθητική λειτουργία)
  • Η ασφαλής λειτουργία εισάγει ορισμένες εξαιρέσεις που σχετίζονται με την ασφάλεια όταν δεν μπορείτε να ελέγξετε όλους τους ενεργοποιητές:

    • ανίχνευση πτώσης τροχού
    • ανίχνευση ενός γκρεμού κατά την κίνηση προς τα εμπρός ή προς τα πίσω
    • φορτιστής συνδεδεμένος και τροφοδοτείται
  • Η παθητική λειτουργία σάς επιτρέπει να ζητάτε και να λαμβάνετε δεδομένα αισθητήρα, αλλά σε αυτήν τη λειτουργία, δεν μπορείτε να ελέγξετε τους ενεργοποιητές Roomba (κινητήρες, φώτα, ηχείο)
  • Λειτουργία απενεργοποίησης όταν ενεργοποιείται για πρώτη φορά ή μετά από αλλαγή μπαταρίας (περιμένετε την εντολή Έναρξη)

Ένας ασφαλής και πλήρως λειτουργικός τρόπος λειτουργίας είναι η Ασφαλής λειτουργία που είναι η προτιμώμενη λειτουργία για το τηλεχειριστήριο. Για να εκτελέσουμε την ασφαλή λειτουργία πρέπει πρώτα να στείλουμε την εντολή 128 που ξεκινά το Open Interface και μετά την εντολή 130 (ή 131) για να θέσουμε το Roomba σε ασφαλή λειτουργία. Εάν θέλουμε να εκτελέσουμε μία από τις ενσωματωμένες λειτουργίες καθαρισμού (καθαρό, σημείο, αποβάθρα κ.λπ.) θα πρέπει να στείλουμε την τρίτη εντολή με τον κατάλληλο κωδικό (Clean-135, Spot-134, Dock-143). Η πλήρης σειριακή σειρά για αυτές τις λειτουργίες έχει ως εξής:

  • Ρύθμιση ασφαλούς λειτουργίας - (128, 130)
  • Spot - (128, 130, 134)
  • Καθαρό - (128, 130, 135)
  • Αποβάθρα - (128, 130, 143)

Εάν το Roomba βρίσκεται σε ασφαλή λειτουργία, μπορούμε να ελέγξουμε τους κινητήριους τροχούς του Roomba χρησιμοποιώντας την εντολή 137. Η πλήρης σειριακή ακολουθία των 5 bytes είναι η ακόλουθη: (137, Ταχύτητα υψηλό byte, Ταχύτητα χαμηλό byte, Ακτίνα υψηλό byte, Ακτίνα χαμηλό byte). Παραδείγματα σειριακών ακολουθιών για έλεγχο κίνησης Roomba:

  • Προχωρήστε - (137, 100, 0, 128, 0)
  • Επιστροφή - (137, 254, 12, 128, 0)
  • Στρίψτε δεξιά - (137, 100, 0, 255, 255)
  • Στρίψτε αριστερά - (137, 100, 0, 0, 1)

Εναλλακτικά, για τον έλεγχο της κίνησης του ρομπότ, μπορούμε να χρησιμοποιήσουμε την εντολή 146. Αυτή η εντολή μας επιτρέπει να ελέγξουμε το PWM (Διαμόρφωση παλμού-πλάτους) για τον δεξιό και τον αριστερό τροχό: (146, Δεξιά PWM υψηλό byte, Δεξιά PWM χαμηλό byte, Αριστερό PWM υψηλό byte, Αριστερό PWM χαμηλό byte). Παράδειγμα ελέγχου PWM:

  • Μετακίνηση επάνω δεξιά - (146, 0, 130, 0, 255)
  • Μετακίνηση επάνω αριστερά - (146, 0, 255, 0, 130)

Η εντολή 139 ελέγχει τα χρώματα των LED. Μπορούμε να αλλάξουμε το χρώμα LED Clean/Power θέτοντας την τιμή του Color byte σε σειριακή σειρά: (139, Bits LED, Χρώμα, Ένταση). Αν το Color byte έχει οριστεί σε 0 παίρνουμε πράσινο χρώμα. Αυξάνοντας αυτήν την τιμή παίρνουμε ενδιάμεσα χρώματα (πορτοκαλί, κίτρινο κ.λπ.) και κόκκινο χρώμα για τη μέγιστη τιμή 255. Παραδείγματα ελέγχου LED:

  • πράσινο - (139, 0, 0, 128)
  • πορτοκαλί - (139, 0, 128, 128)
  • κόκκινο - (139, 0, 255, 128)

Η τελευταία εντολή που θα ήθελα να αναφέρω είναι η εντολή 140 που σας επιτρέπει να παίζετε απλά τραγούδια. Παραδείγματα σειριακών ακολουθιών για την αναπαραγωγή τραγουδιών:

  • τραγούδι 1 - (140, 0, 5, 72, 32, 74, 32, 76, 32, 77, 32, 79, 32, 141, 0)
  • τραγούδι 2 - (140, 1, 5, 69, 16, 71, 16, 72, 16, 74, 16, 76, 16, 141, 1)

Βήμα 4: Απομακρυσμένη κάμερα RPi

Απομακρυσμένη κάμερα RPi
Απομακρυσμένη κάμερα RPi

Για να μπορώ να βλέπω ροή βίντεο από την κάμερα σε οποιεσδήποτε συσκευές που είναι συνδεδεμένες στο τοπικό μου δίκτυο (υπολογιστής, smartphone, tablet κ.λπ.) έχω εγκαταστήσει διακομιστή κάμερας Motion. Μπορείτε να βρείτε λεπτομέρειες για το πώς να το κάνετε αυτό σε αυτό το Instructable. Τα βασικά βήματα είναι τα εξής:

  1. Επεξεργασία: sudo nano /etc /modules - προσθέστε στο τέλος του αρχείου: bcm2835 -v4l2
  2. Install Motion: sudo apt-get install motion
  3. Ανοίξτε το αρχείο motion.conf πληκτρολογώντας: sudo nano /etc/motion/motion.conf και ορίστε παραμέτρους βίντεο (π.χ.: δαίμονας ενεργοποιημένος, πλάτος 640, ύψος 480, ρυθμός καρέ 30, webcam_localhost απενεργοποιημένη)
  4. Ενεργοποιήστε το Daemon (υπηρεσία): sudo nano/etc/default/motion και βρείτε και αλλάξτε start_motion_daemon = ναι.
  5. Έναρξη υπηρεσίας: κίνηση κίνησης υπηρεσίας sudo ή κίνηση κίνησης sudo -n -c /etc/motion/motion.conf
  6. Τώρα ανοίξτε το πρόγραμμα περιήγησης στον υπολογιστή ή το smartphone σας και πληκτρολογήστε: RPi IP: 8081 (όπου "IP RPi" είναι IP του Raspberry Pi και 8081 η προεπιλεγμένη θύρα). Παράδειγμα: 192.168.1.14:8081. Εάν όλα λειτουργούν καλά μετά από λίγο, θα πρέπει να δείτε την προβολή από την κάμερα στο πρόγραμμα περιήγησής σας.

Βήμα 5: Σχέδια για περαιτέρω ανάπτυξη

Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη
Σχέδια για περαιτέρω ανάπτυξη

Προς το παρόν, το Roomba μου είναι εξοπλισμένο με ένα μικρό ρομποτικό βραχίονα που περιγράφεται σε αυτήν την οδηγία. Αυτός ο ρομποτικός βραχίονας μπορεί να ελεγχθεί εξ αποστάσεως μέσω bluetooth από την εφαρμογή Android. Στο επόμενο βήμα θα χρησιμοποιήσω την προβολή από την κάμερα για απομακρυσμένο κράτημα και μετακίνηση αντικειμένων στον επισημασμένο χώρο (λειτουργία σε ημιαυτόνομη λειτουργία).

Εάν θέλετε να δείτε άλλα έργα μου σχετικά με τη ρομποτική, επισκεφθείτε:

  • η ιστοσελίδα μου: www.mobilerobots.pl
  • facebook: ρομπότ για κινητά

Βήμα 6: Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα

Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα
Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα
Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα
Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα
Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα
Σύνδεση ηλεκτρονικών ανταλλακτικών - Έκδοση 2 με περίβλημα

Αν θέλετε να φτιάξετε τον δικό σας αφαιρούμενο δέκτη για τον έλεγχο του Roomba, αυτό το επιπλέον βήμα είναι για εσάς. Προσθέτουμε μερικά ακόμη στοιχεία και θα τα κλείσουμε όλα σε ένα λεπτό περίβλημα. Το κύριο συστατικό που θα χρειαστούμε σε αυτό το βήμα είναι ένας συνδετήρας μίνι DIN 8 ακίδων. Επιπλέον, θα χρειαστούμε τον διακόπτη ισχύος και την ένδειξη που βασίζεται σε LED και αντίσταση 10k.

Τώρα δεν χρειάζεται να ανησυχείτε για το άνοιγμα καλωδίων. Ο δέκτης bluetooth κλείνει σε ένα μικρό περίβλημα με διαστάσεις 50x40x20 mm. Όταν δεν θέλετε να το χρησιμοποιήσετε, μπορείτε εύκολα να το αφαιρέσετε από το Roomba τραβώντας το μίνι βύσμα DIN.

Συνιστάται: