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

Πίνακας Arduino Line Follower Wallrides Classroom Whiteboard: 8 βήματα (με εικόνες)
Πίνακας Arduino Line Follower Wallrides Classroom Whiteboard: 8 βήματα (με εικόνες)

Βίντεο: Πίνακας Arduino Line Follower Wallrides Classroom Whiteboard: 8 βήματα (με εικόνες)

Βίντεο: Πίνακας Arduino Line Follower Wallrides Classroom Whiteboard: 8 βήματα (με εικόνες)
Βίντεο: How to use up to 10 push button switch with 1 Arduino input pin ANPB-V1 2024, Νοέμβριος
Anonim
Image
Image

Το να ακολουθείς τη γραμμή στο έδαφος είναι πολύ βαρετό!

Προσπαθήσαμε να δούμε μια διαφορετική γωνία στους ακόλουθους γραμμών και να τους φέρουμε σε άλλο επίπεδο - στον σχολικό πίνακα.

Δείτε τι βγήκε!

Βήμα 1: Τι χρειάζεστε;

Πώς να συναρμολογηθεί; Συναρμολόγηση πλαισίου
Πώς να συναρμολογηθεί; Συναρμολόγηση πλαισίου

Για ένα αγωνιστικό ρομπότ:

Μηχανική:

1 x 2WD miniQ Robot πλαίσιο? Είναι μια πολυλειτουργική πλατφόρμα για τη δημιουργία απλών ρομπότ δίτροχων

Μοτέρ 2 x 6V Micro gear με αναλογία μείωσης 1: 150. Οι κινητήρες με κινητήρα που περιλαμβάνονται στην πλατφόρμα ρομπότ miniQ έχουν σχέση μετάδοσης 1:50 και είναι πολύ γρήγοροι. Θα πρέπει να αντικατασταθούν από ισχυρότερους κινητήρες, για παράδειγμα με σχέση μετάδοσης 1: 150 ή υψηλότερη. Όσο υψηλότερη είναι η σχέση μετάδοσης, τόσο πιο αργά το ρομπότ οδηγεί στον πίνακα, αλλά τόσο λιγότερη είναι η πιθανότητα ολίσθησης των τροχών

4 x μαγνήτης νεοδυμίου. Χρειάζεστε μικρούς μαγνήτες πάχους 3mm με διάμετρο 12mm (για εκείνους με στρογγυλό σχήμα) ή με την πλευρά 12mm (για αυτούς με τετράγωνο σχήμα). Επίσης, οι μαγνήτες θα πρέπει να έχουν μια τρύπα για τη βίδα του μηχανήματος με μια κεφαλή που βυθίζεται συνήθως για την Μ3. Μερικές φορές οι κατασκευαστές καθορίζουν τη δύναμη της σύζευξης μαγνήτη. Θα πρέπει να κυμαίνεται από 2kg έως 2,4kg

ΗΛΕΚΤΡΟΝΙΚΑ ΕΙΔΗ:

1 x Arduino UNO; Ο ενσωματωμένος υπολογιστής. Η πιο δημοφιλής πλατφόρμα πρωτοτύπων

1 x μονάδα Octoliner. Μάτια και προβολείς του αγωνιστικού bot σας. Το Octoliner είναι ένας αισθητήρας δροσερής γραμμής που αποτελείται από 8 ξεχωριστούς αισθητήρες υπέρυθρων που ελέγχονται μέσω διεπαφής I2C

1 x Ασπίδα κινητήρα. Σχεδόν κάθε ενότητα σας ταιριάζει. Χρησιμοποίησα αυτό το αναλογικό με βάση το τσιπ L298p

1 x μπαταρία LiPo 7,4V 2 κυψελών. Μπορεί να δώσει ένα μεγάλο ρεύμα που χρειάζονται οι κινητήρες για να ξεπεράσουν την έλξη των μαγνητών. Η μπαταρία 2 κυψελών έχει τάση από 7,4V έως 8,4V. Είναι αρκετό για κινητήρες 6V και τον ενσωματωμένο ρυθμιστή τάσης στον πίνακα Arduino. Μπορεί να επιλεγεί οποιαδήποτε χωρητικότητα. Όσο μεγαλύτερη είναι η μπαταρία, τόσο περισσότερο το ρομπότ κινείται, αλλά σημειώστε ότι η υπερβολικά μεγάλη μπαταρία μπορεί να είναι βαριά. Η χωρητικότητα της τάξης των 800mAh έως 1300mAh είναι η βέλτιστη

Διάφορα:

4 x αρσενικό-θηλυκό σύρμα

4 x διαχωριστικό M3 ή ανδρική-γυναικεία αναμέτρηση με μήκος 10mm

3 x M3 διαχωριστικό ή ανδρική-γυναικεία αναμέτρηση με μήκος 25 mm ή περισσότερο

4 x M3x8 βιδωτή βίδα επίπεδης κεφαλής

1 x νάιλον βίδα M3

1 x Μ3 Νάιλον εξάγωνο παξιμάδι

Οποιεσδήποτε βίδες Μ3 και εξάγωνα παξιμάδια

Για μια τάξη:

Μαγνητικός πίνακας που κρέμεται στον τοίχο

Πυκνοί μαύροι δείκτες μαγνητικού πίνακα

Ειδικός φορτιστής μπαταρίας LiPo ή πολλαπλοί φορτιστές εάν θέλετε να φτιάξετε πολλά ρομπότ και να τα φορτίσετε ξεχωριστά

Βήμα 2: Πώς να συγκεντρώσετε; Συναρμολόγηση πλαισίου

Αρχικά, θα πρέπει να συναρμολογήσετε την πλατφόρμα του πλαισίου miniQ που θα αντικαταστήσει τους κινητήρες από το κιτ με πιο ισχυρούς με σχέση μετάδοσης 1: 150. Μην ξεχάσετε να κολλήσετε τα καλώδια στις επαφές του κινητήρα!

Βήμα 3: Πώς να συγκεντρώσετε; Εγκαταστήστε τους μαγνήτες

Πώς να συναρμολογηθεί; Εγκαταστήστε τους μαγνήτες
Πώς να συναρμολογηθεί; Εγκαταστήστε τους μαγνήτες

Εγκαταστήστε τους μαγνήτες στην πλατφόρμα miniQ. Χρησιμοποιήστε στάσεις M3x10, επίπεδες βίδες M3x8 ή M3x6 και παξιμάδια M3. Οι απαιτούμενες οπές εγκατάστασης εμφανίζονται στην εικόνα.

Αυτό είναι σημαντικό!

Το μήκος των αναστολών πρέπει να είναι ακριβώς 10 mm. Αφού εγκαταστήσετε τους μαγνήτες, δοκιμάστε την πλατφόρμα στον πίνακα. Και οι τέσσερις μαγνήτες πρέπει να είναι δίπλα στη μαγνητική πλακέτα και τα ελαστικά ελαστικά στους τροχούς της πλατφόρμας miniQ να είναι προφορτωμένα και να παρέχουν τριβή με την επιφάνεια της σανίδας.

Μετακινήστε χειροκίνητα το ρομπότ σε όλους τους τομείς. Κατά τη διάρκεια της βόλτας, οι μαγνήτες δεν πρέπει να βγαίνουν από τον πίνακα. Εάν κάποιος μαγνήτης ξεκολλήσει σημαίνει ότι τα ελαστικά ελαστικά στους τροχούς φορτίζονται στο μέγιστο. Σε αυτήν την περίπτωση, αυξήστε την απόσταση των 10 mm όλων των στάσεων κατά 1 ή 2 mm προσθέτοντας ένα ζευγάρι ροδέλες M3 και δοκιμάστε ξανά.

Βήμα 4: Πώς να συγκεντρώσετε; Προσθέστε ηλεκτρονικά

Πώς να συναρμολογηθεί; Προσθέστε ηλεκτρονικά
Πώς να συναρμολογηθεί; Προσθέστε ηλεκτρονικά

Τοποθετήστε την πλακέτα Arduino UNO στην πλατφόρμα χρησιμοποιώντας προεξοχές M3x25, βίδες M3 και παξιμάδια M3. Μην χρησιμοποιείτε σύντομες αναμονές, αφήστε λίγο χώρο κάτω από τον πίνακα Arduino για καλώδια και μπαταρία.

Εγκαταστήστε την ασπίδα μοτέρ στον πίνακα Arduino UNO.

Εγκαταστήστε τη μονάδα Octoliner. Πιέστε το στην πλατφόρμα χρησιμοποιώντας νάιλον βίδα και παξιμάδι Μ3.

Αυτό είναι σημαντικό!

Μη χρησιμοποιείτε μεταλλικούς συνδετήρες για την τοποθέτηση του Octoliner. Ορισμένες οπές στερέωσης στον πίνακα διάσπασης συγκολλούνται και χρησιμοποιούνται ως ακίδες IO. Για να αποφύγετε βραχυκυκλώματα, χρησιμοποιήστε πλαστικό συνδετήρα, για παράδειγμα, νάιλον.

Βήμα 5: Πώς να συγκεντρώσετε; Καλωδίωση

Πώς να συναρμολογηθεί; Καλωδίωση
Πώς να συναρμολογηθεί; Καλωδίωση

Συνδέστε όλα τα ηλεκτρονικά εξαρτήματα όπως φαίνεται στο διάγραμμα. Η μονάδα Octoliner συνδέεται μέσω 4 καλωδίων (GND, 5V, SDA, SCL) στο Arduino UNO. Συνδέστε τους κινητήρες στην ασπίδα κινητήρα. Η μπαταρία LiPo συνδέεται με τα μαξιλάρια επαφής της εξωτερικής τροφοδοσίας στο προστατευτικό μοτέρ καθώς και με τον πείρο VIN στην πλακέτα Arduino. Αντί να χρησιμοποιήσετε τον πείρο VIN, μπορείτε να χρησιμοποιήσετε το βύσμα τροφοδοσίας 5,5 mm x 2,1 mm στον πίνακα.

Αυτό είναι σημαντικό!

Όταν χρησιμοποιείτε την ασπίδα κινητήρα, δεν χρειάζονται καλώδια. Δύο κανάλια κινητήρα ελέγχονται από 4 ακίδες. 2 ακίδες PWM είναι υπεύθυνες για την ταχύτητα περιστροφής ενώ 2 ακίδες DIR για την κατεύθυνση περιστροφής. Συνήθως, συνδέονται ήδη με συγκεκριμένες καρφίτσες του Arduino Board και οι αριθμοί ευρετηρίου τους μπορεί να διαφέρουν ανάλογα με τον κατασκευαστή της ασπίδας. Για παράδειγμα, για το προστατευτικό μοτέρ μου, οι αριθμοί είναι D4 D5 (DIR και PWM για το πρώτο κανάλι) και D7 D6 (DIR και PWM για το δεύτερο κανάλι). Για την αρχική ασπίδα Arduino Motor, οι αριθμοί ακίδων αντιστοιχούν σε D12 D3 (DIR και PWM για το πρώτο κανάλι) και D13 D11 (DIR και PWM για το δεύτερο κανάλι).

Αυτό είναι σημαντικό!

Οι μπαταρίες Hobby LiPo δεν διαθέτουν πίνακα προστασίας αντίστροφης πολικότητας! Η τυχαία βραχυκύκλωση των θετικών και αρνητικών επαφών θα οδηγήσει σε μόνιμη βλάβη της μπαταρίας ή πυρκαγιά.

Βήμα 6: Πώς να προγραμματίσετε; XOD

Το να φτιάξεις ένα πρόγραμμα για ένα τέτοιο αγωνιστικό ρομπότ είναι ακόμη πιο εύκολο από το να το συναρμολογήσεις.

Σε όλα τα έργα μου χρησιμοποιώ το οπτικό περιβάλλον προγραμματισμού XOD το οποίο μου επιτρέπει να δημιουργώ γραφικά προγράμματα Arduino χωρίς γραφή κώδικα. Αυτό το περιβάλλον είναι ιδανικό για γρήγορη δημιουργία πρωτοτύπων συσκευών ή εκμάθηση αλγορίθμων προγραμματισμού. Ακολουθήστε την ιστοσελίδα τεκμηρίωσης XOD για να διαβάσετε περισσότερα.

Για να προγραμματίσετε αυτό το ρομπότ, πρέπει να προσθέσετε μόνο ένα amperka/octoliner βιβλιοθήκης στο χώρο εργασίας σας XOD. Είναι απαραίτητο για εργασία με αισθητήρα γραμμής οκτώ καναλιών.

Βήμα 7: Πώς να προγραμματίσετε; Κηλίδα

Πώς να προγραμματίσετε; Κηλίδα
Πώς να προγραμματίσετε; Κηλίδα

Το πρόγραμμα βασίζεται στην αρχή μιας λειτουργίας ελεγκτή PID. Αν θέλετε να μάθετε τι είναι ο ελεγκτής PID και πώς λειτουργεί μπορείτε να διαβάσετε ένα άλλο άρθρο σχετικά με αυτό το θέμα.

Ρίξτε μια ματιά στο έμπλαστρο με το πρόγραμμα ρομπότ. Ας δούμε ποιοι κόμβοι υπάρχουν σε αυτό και πώς λειτουργούν όλα.

οκταλινο-γραμμή

Είναι ένας κόμβος γρήγορης εκκίνησης από τη βιβλιοθήκη amperka/octoliner XOD που αντιπροσωπεύει τη μονάδα Octoliner που παρακολουθεί τη γραμμή. Εξάγει την "τιμή παρακολούθησης γραμμής" η οποία κυμαίνεται στο εύρος -1 έως 1. Η τιμή 0 δείχνει ότι η γραμμή βρίσκεται στην κεντρική θέση σε σχέση με τους αισθητήρες υπέρυθρων ακίδων στον πίνακα Octoliner (μεταξύ CH3 και CH4). Η τιμή -1 αντιστοιχεί στην ακραία αριστερή θέση (CH0) ενώ η 1 στην ακροδεξιά (CH1). Ο κόμβος εκκίνησης ενεργοποιεί τους αισθητήρες οπτικού ζεύγους και ρυθμίζει τις προεπιλεγμένες παραμέτρους φωτεινότητας και ευαισθησίας τους. Οι είσοδοι για αυτόν τον κόμβο είναι η διεύθυνση I2C της συσκευής (ADDR για την πλακέτα Octoliner είναι 0x1A) και ο ρυθμός ενημέρωσης της τιμής παρακολούθησης γραμμής (UPD), τον θέτω συνεχή.

Οι τιμές παρακολούθησης γραμμών τροφοδοτούνται απευθείας στον κόμβο του ελεγκτή pid.

pid-controller

Αυτός ο κόμβος υλοποιεί το έργο του ελεγκτή PID στο XOD. Η τιμή στόχου (TARG) είναι 0. Είναι η κατάσταση όταν η γραμμή βρίσκεται ακριβώς στο κέντρο κάτω από το ρομπότ. Εάν η τιμή παρακολούθησης γραμμής είναι 0, ο ελεγκτής PID επανέρχεται μέσω του πείρου RST. Εάν η τιμή παρακολούθησης γραμμής είναι διαφορετική από το 0, ο ελεγκτής PID το μετατρέπει χρησιμοποιώντας συντελεστές Kp, Ki, Kd στις τιμές ταχύτητας κινητήρα. Οι τιμές των συντελεστών επιλέχθηκαν πειραματικά και ίσες με 1, 0,2 και 0,5, αντίστοιχα. Ο ρυθμός ενημέρωσης (UPD) του ελεγκτή PID έχει οριστεί σε συνεχή.

Η επεξεργασμένη τιμή του ελεγκτή PID αφαιρείται από το 1 και προστίθεται στο 1. Γίνεται για να συγχρονίσει τους κινητήρες, για να τους κάνει να περιστρέφονται σε αντίθετες κατευθύνσεις όταν χαθεί η γραμμή. Η τιμή 1 σε αυτούς τους κόμβους αντιπροσωπεύει τη μέγιστη ταχύτητα των κινητήρων. Μπορείτε να μειώσετε την ταχύτητα εισάγοντας τη χαμηλότερη τιμή.

h-bridge-dc-μοτέρ

Μερικοί από αυτούς τους κόμβους είναι υπεύθυνοι για τον έλεγχο αριστερών και δεξιών κινητήρων ρομπότ. Εδώ ορίστε τις τιμές ακίδων PWM και DIR μέσω των οποίων λειτουργεί η ασπίδα κινητήρα σας.

Κάντε flash το patch και δοκιμάστε το αγωνιστικό σας bot. Εάν ακολουθείτε ακριβώς τις οδηγίες συναρμολόγησης, δεν χρειάζεται να αλλάξετε την ενημερωμένη έκδοση κώδικα ή να ρυθμίσετε τον ελεγκτή PID. Οι καθορισμένες ρυθμίσεις είναι αρκετά βέλτιστες.

Το τελικό πρόγραμμα μπορεί να βρεθεί στη βιβλιοθήκη gabbapeople/whiteboard-races

Βήμα 8: Βιτρίνα και συμβουλές

Συνιστάται: