Πίνακας περιεχομένων:
- Βήμα 1: Στοιχεία που χρειάζεστε
- Βήμα 2: Συνδέστε τους κινητήρες με την ασπίδα κινητήρα L293D
- Βήμα 3: Arduino Uno, Συναρμολόγηση Motor Shield
- Βήμα 4: Συνδέστε το Power με το Banana Pi και το Arduino
- Βήμα 5: Βάλτε το Banana Pi στην τρισδιάστατη θήκη, συναρμολογήστε το υπόλοιπο του Rover
- Βήμα 6: Η συναρμολόγηση υλικού ολοκληρώθηκε
- Βήμα 7: Διαμόρφωση συστήματος
- Βήμα 8: Εκκίνηση του Λογισμικού
- Βήμα 9: Μονάδες
Βίντεο: Banana/Raspberry Pi + Arduino Rover με κάμερα Web: 9 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Ένα έργο που έχω κάνει στον ελεύθερο χρόνο μου. Είναι ένα τετράτροχο ρομπότ τετρακίνησης που ελέγχεται μέσω διεπαφής ιστού. Εάν έχετε οποιεσδήποτε παρατηρήσεις ή ερωτήσεις, μη διστάσετε να επικοινωνήσετε μαζί μου. Αυτό το έργο χρησιμοποιεί τρισδιάστατα τυπωμένα μέρη και ορισμένα κομμάτια κώδικα που δημιουργήθηκαν από άλλους ανθρώπους. Μπορείτε να βρείτε πιστώσεις και να ρίξετε μια ματιά στα πρωτότυπα κομμάτια στο τέλος του Instructuble.
Ξεκινάμε;
Βήμα 1: Στοιχεία που χρειάζεστε
Ακολουθεί η λίστα των στοιχείων που χρησιμοποίησα με τους συνδέσμους και τις εναλλακτικές λύσεις. Ζω στο Shenzhen της Κίνας και αγόρασα τα ανταλλακτικά απευθείας στο Taobao.
Εναλλακτικό πλαίσιο ρομπότ 4 κινητήρων: Οποιοδήποτε αρκετά μεγάλο πλαίσιο θα κάνει. Αυτό έχει 4 κινητήρες για επιπλέον ροπή. Οι κινητήρες είναι κανονικοί φθηνοί κίτρινοι κινητήρες, βαθμολογούνται
L293D Arduino Motor Shield rev.1 κλώνος Εναλλακτική: Καλύτερη ασπίδα κινητήρα βαθμολογημένη για περισσότερο ρεύμα
Εναλλακτικός κλώνος Arduino Uno: Μπορείτε να χρησιμοποιήσετε οποιαδήποτε άλλη πλακέτα Arduino χωρίς σημαντικές αλλαγές στον κώδικα.
Μπαταρία 6V 4.5Ah Pb Εναλλακτική: Είναι δυνατόν να πειραματιστείτε με μικρότερες μπαταρίες LiPo εάν θέλετε ελαφρύτερο ρομπότ/χρησιμοποιήστε μόνο δύο κινητήρες.
Εναλλακτική Banana Pi: Μπορεί να ανταλλαχθεί με Raspberry Pi 1/2/3 ή Orange Pi χωρίς σημαντικές αλλαγές κώδικα. Χρησιμοποίησα το Banana Pi μόνο επειδή είχα ένα ξαπλωμένο.
Εναλλακτική κάμερα Ιστού: Χρησιμοποιήστε κάμερα CSI για Raspberry Pi/Banana Pi/Orange Pi
Βάση κάμερας/κλίσης κάμερας με servos sg60 Εναλλακτική λύση: Για παράδειγμα, η εκτύπωση με κλίση 3D/βάση στήριξης μπορεί να χρησιμοποιηθεί.
Τρισδιάστατα τυπωμένα μέρη Εναλλακτικά: Αφήστε τη φαντασία και τα ταλέντα του σχεδιασμού 3D να σας καθοδηγήσουν! Επίσης Thingverse:)
Βήμα 2: Συνδέστε τους κινητήρες με την ασπίδα κινητήρα L293D
Συνδέστε κάθε κινητήρα με ακροδέκτες βίδας προστασίας κινητήρα. Εδώ είναι το διάγραμμα καλωδίωσης. Εάν έχετε μόνο δύο κινητήρες και δεν θέλετε να αλλάξετε τον κωδικό, συνδέστε τους στο MOTOR 1 και MOTOR 3.
ΣΗΜΕΙΩΣΗ: Για όσους χρησιμοποιούν διαφορετικούς κινητήρες με υψηλότερη βαθμολογία ρεύματος, μπορεί να χρειαστείτε άλλο πρόγραμμα οδήγησης κινητήρα. Εναλλακτικά, ένα ωραίο μικρό hack που έμαθα πρόσφατα είναι ότι μπορείτε να βάλετε πίσω δύο ακόμη προγράμματα οδήγησης L293D πάνω από το υπάρχον (είναι το μεσαίο τσιπ στον πίνακα)!
Βήμα 3: Arduino Uno, Συναρμολόγηση Motor Shield
Βάλτε το Arduino Uno στη θήκη και τοποθετήστε το Motor Shield πάνω του. Υπάρχει μόνο ένας τρόπος για να το κάνετε αυτό, αν δεν ταιριάζει, κάνετε κάτι wing!
Θήκη Arduino Uno Snug
Εδώ είναι η περίπτωση που χρησιμοποίησα, μοντέλο που δημιουργήθηκε από τον Esquilo.
Βήμα 4: Συνδέστε το Power με το Banana Pi και το Arduino
Χρησιμοποίησα διεπαφή SATA για να παρέχω ισχύ στο Banana Pi (6v). Εάν έχετε τον ίδιο πίνακα, μπορείτε επίσης να το κάνετε αυτό, απλά βεβαιωθείτε ότι η τάση είναι 5v-6v. Είναι ανεξέλεγκτο τροφοδοτικό, οπότε υποθέτω ότι υπάρχει ένα κύκλωμα προστασίας για την τροφοδοσία SATA στο Banana Pi M1.
ΠΡΟΣΟΧΗ: Για το Raspberry Pi έχετε μερικές επιλογές: μια ασφαλή (χρησιμοποιώντας σύνδεση USB για παροχή 5v) και όχι τόσο ασφαλή (χρησιμοποιώντας καρφίτσες GPIO). Ακολουθεί ο σύνδεσμος για να διαβάσετε σχετικά με τη σύνδεση ισχύος στις ακίδες GPIO Raspberry Pi. Βεβαιωθείτε ότι είστε
1) Χρησιμοποιήστε ρυθμιζόμενο τροφοδοτικό
2) Ρυθμίστε την τάση στα 5v
Δεν υπάρχει κύκλωμα προστασίας για καρφίτσες GPIO! Εάν κάνετε κάτι λάθος, υπάρχει σοβαρή πιθανότητα να καταστρέψετε τα ηλεκτρονικά του πίνακα.
Για το Arduino απλώς συνδέστε την τροφοδοσία στους ακροδέκτες των βιδών εισόδου στο προστατευτικό του κινητήρα. Μπορεί να πάρει έως και 12V.
Βήμα 5: Βάλτε το Banana Pi στην τρισδιάστατη θήκη, συναρμολογήστε το υπόλοιπο του Rover
Χρησιμοποίησα αυτήν την θήκη για το Banana Pi από το thingverse, που δημιουργήθηκε από την GermanRobotics. Το εξώφυλλο για αυτό το έφτιαξα μόνος μου.
Βάλτε το Banana Pi στη θήκη, καλύψτε το με το καπάκι, χρησιμοποιήστε πιστόλι κόλλας για να στερεώσετε το Arduino Uno πάνω από τη θήκη Banana Pi.
Καλύψτε την μπαταρία με αυτό το κάλυμμα και στερεώστε την κάμερα web/mount tilt στην κορυφή.
Εάν χρησιμοποιείτε το Banana Pi θα χρειαστείτε ένα διανομέα USB, καθώς έχει μόνο δύο υποδοχές USB (το Raspberry 2, 3 έχει τέσσερα). Καθαρά από αισθητικές ανησυχίες αποφάσισα να χρησιμοποιήσω έναν διανομέα USB OTG 1-2 και να κρύψω τα καλώδια μέσα στη θήκη Banana Pi.
Βήμα 6: Η συναρμολόγηση υλικού ολοκληρώθηκε
Ας συνοψίσουμε γρήγορα τι έχουμε κάνει μέχρι τώρα.
Συγκεντρώσαμε την πλατφόρμα ρομπότ, συνδέσαμε την τροφοδοσία με το Banana Pi, το Arduino Uno, συνδέσαμε κινητήρες και σερβομηχανισμούς στο πρόγραμμα οδήγησης κινητήρα και χρησιμοποιήσαμε διανομέα USB για να συνδέσουμε την κάμερα USB και το Arduino Uno με το Banana Pi. Τώρα μπορείτε να δοκιμάσετε και να αντιμετωπίσετε προβλήματα υλικού. Το διάγραμμα καλωδίωσης που δείχνει όλες τις συνδέσεις είναι στην εικόνα για αυτό το βήμα.
Βήμα 7: Διαμόρφωση συστήματος
Χρησιμοποίησα την εικόνα Raspbian Lite για σύστημα στο pi μου. Η έκδοση Lite δεν διαθέτει GUI και συνοδεύεται από βασικά πακέτα ανά εγκατάσταση. Χρειάζεται όμως πολύ λιγότερος χώρος, πράγμα που σημαίνει ότι μπορούμε να χρησιμοποιήσουμε μικρότερη κάρτα SD. Εάν δεν αισθάνεστε άνετα χωρίς GUI, μπορείτε επίσης να εγκαταστήσετε πλήρη εικόνα.
Συνδέστε το pi σας στο Internet με το καλώδιο Ethernet. Αφού ξεκινήσει, το πρώτο βήμα θα ήταν να το συνδέσετε σε Wi-Fi.
Εκτελέστε την ακόλουθη εντολή στο τερματικό
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Επεξεργαστείτε το αρχείο διαμόρφωσης με τα διαπιστευτήριά σας WiFi
network = {ssid = "testing" psk = "testingPassword"}
Επανεκκινήστε το pi. Βοϊλα! Είστε πλέον συνδεδεμένοι σε Wi-Fi.
Στη συνέχεια θα πρέπει να εγκαταστήσουμε το pip (Python Package Manager)
sudo apt-get install python-setuptools
sudo easy_install pip
Τώρα χρησιμοποιούμε το pip για να εγκαταστήσουμε το Flask για την εκτέλεση διακομιστή ιστού και το pyserial για το pi για επικοινωνία με το Arduino μέσω σειριακής σύνδεσης.
φιάλη εγκατάστασης sudo pip
sudo pip εγκατάσταση pyserial
Το τελευταίο πράγμα θα είναι να εγκαταστήσετε και να διαμορφώσετε το πακέτο κίνησης, το οποίο χρησιμοποιούμε για ροή βίντεο από την κάμερα.
Ακολουθήστε αυτό το σπουδαίο οδηγό για να το κάνετε αυτό.
Τώρα είμαστε έτοιμοι να βροντοφωνήσουμε!
Βήμα 8: Εκκίνηση του Λογισμικού
Θυμάστε πώς είπα ότι είμαστε έτοιμοι να βροντήξουμε;
Εντάξει, λίγο περισσότερο άλεση και μετά μπορούμε να αρχίσουμε να βροντοφωνάζουμε:)
Ας κατεβάσουμε όλα τα απαραίτητα αρχεία από το αποθετήριο github μου.
git clone
Ανεβάστε το rover.ino στο Arduino Uno. Εάν κάνατε αλλαγές υλικού (χρησιμοποιώντας διαφορετική ασπίδα κινητήρα, για παράδειγμα) πρέπει να αλλάξετε το σκίτσο.
Εάν χρησιμοποιείτε κάμερα ιστού, τροποποιήστε τη γραμμή κοντά στο κάτω μέρος του αρχείου index.html στο φάκελο προτύπου. Αλλάξτε τη διεύθυνση URL στη γραμμή IFRAME για να ταιριάζει με τη διεύθυνση URL src για τη ροή βίντεο.
Τώρα μπορείτε να ξεκινήσετε τον διακομιστή ιστού. Εκτελέστε την ακόλουθη εντολή
sudo python pi_rover.py
Εάν ακολουθήσατε την κατασκευή μου πολύ κοντά και έχετε συνδέσει το Arduino, θα δείτε την ακόλουθη (πρώτη εικόνα) στο τερματικό.
Πληκτρολογήστε τη διεύθυνση IP του ρομπότ σας στο πρόγραμμα περιήγησης ιστού (για παράδειγμα στην περίπτωσή μου ήταν 192.168.1.104), μπορείτε να ελέγξετε τη διεύθυνση IP με την εντολή $ ifconfig στο Linux.
/κάνε τον εορταστικό χορό εδώ!/
Εάν έχετε οποιεσδήποτε ερωτήσεις, μη διστάσετε να με ρωτήσετε στα σχόλια. Αυτό το σεμινάριο απευθύνεται σε αρχάριους, αλλά όχι μηδενικούς, γι 'αυτό ήμουν αρκετά σύντομος για τα πράγματα για τα οποία μπορείτε απλά να κάνετε google (π.χ. εγγραφή εικόνας συστήματος σε κάρτα SD, μεταφόρτωση σκίτσου Arduino κ.λπ.).
Βήμα 9: Μονάδες
Η ιδέα και ο κώδικας διακομιστή ιστού προέρχονται από αυτό το υπέροχο εκπαιδευτικό από το jscottb. Το τροποποίησα για να χρησιμοποιήσω πιο συνηθισμένο υλικό, όπως το Arduino Uno.
Τα τρισδιάστατα τυπωμένα μέρη από το Thingverse.
www.thingiverse.com/thing:994827
www.thingiverse.com/thing:2816536/files
www.thingiverse.com/thing:661220
Συνιστάται:
Miniaturizing Arduino Autonomous Robot (Land Rover / Car) Stage1 Μοντέλο 3: 6 Βήματα
Miniaturizing Arduino Autonomous Robot (Land Rover / Car) Stage1Model3: Αποφάσισα να μικροσκοπίσω το Land Rover / Car / Bot για να μειώσω το μέγεθος και την κατανάλωση ενέργειας του έργου
Κάμερα Bluetooth Arduino: 4 βήματα (με εικόνες)
Arduino Bluetooth Camera: Γεια σας! Σήμερα δεν μπορείτε να εκπλήξετε κανέναν με ένα κινητό τηλέφωνο με κάμερα, ασύρματες συσκευές και άλλες τεχνικές εξελίξεις. Χάρη στην πλατφόρμα Arduino, εκατομμύρια άνθρωποι ανακάλυψαν τον υπέροχο κόσμο των ηλεκτρονικών και του προγραμματισμού. 100,5
Κάμερα ηλεκτρονικού ταχυδρομείου Arduino Security 3G/GPRS με ανίχνευση κίνησης: 4 βήματα
Arduino Security 3G/GPRS Email Camera With Motion Detection: Σε αυτό το εγχειρίδιο, θα ήθελα να μιλήσω για μια έκδοση κατασκευής συστήματος παρακολούθησης ασφαλείας με ανιχνευτή κίνησης και αποστολής φωτογραφιών στο γραμματοκιβώτιο μέσω ασπίδας 3G/GPRS. Αυτό το άρθρο βασίζεται σε άλλες οδηγίες: οδηγίες 1 και οδηγίες
Selfie κάμερα Arduino: 5 βήματα
Selfie κάμερα Arduino: Αυτά τα άθικτα δείχνουν πώς μπορείτε να φτιάξετε έναν πολύ απλό τρόπο για να δημιουργήσετε μια κάμερα selfie Arduino
Κάμερα AI για Raspberry Pi/Arduino: 7 βήματα
AI Camera for Raspberry Pi/Arduino: Εάν παρακολουθείτε τα νέα πρόσφατα, υπήρξε μια έκρηξη νεοσύστατων επιχειρήσεων που αναπτύσσουν τσιπ για την επιτάχυνση των συμπερασμάτων και της εκπαίδευσης των αλγορίθμων ML (μηχανικής μάθησης). Ωστόσο, τα περισσότερα από αυτά τα τσιπ είναι ακόμα υπό ανάπτυξη και όχι κάτι