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

Οδήγηση μικρών κινητήρων με το TB6612FNG: 8 βήματα
Οδήγηση μικρών κινητήρων με το TB6612FNG: 8 βήματα

Βίντεο: Οδήγηση μικρών κινητήρων με το TB6612FNG: 8 βήματα

Βίντεο: Οδήγηση μικρών κινητήρων με το TB6612FNG: 8 βήματα
Βίντεο: Πώς βρίσκω την ευθεία στο τιμόνι; | Σχολή Οδηγών Σωτηρίου 2024, Δεκέμβριος
Anonim
Οδήγηση μικρών κινητήρων Με το TB6612FNG
Οδήγηση μικρών κινητήρων Με το TB6612FNG

Το TB6612FNG είναι ένα IC διπλού κινητήρα IC από την Toshiba. Υπάρχουν πολλές πλακέτες ξεμπλοκαρίσματος για αυτό και είναι μια από τις πιο δημοφιλείς επιλογές για οδήγηση μικρών κινητήρων.

Υπάρχουν πολλοί διαδικτυακοί πόροι για να ξεκινήσετε με το TB6612FNG, αλλά αποφάσισα να το γράψω έτσι κι αλλιώς για να συγκεντρώσω καλύτερα αυτό που συνάντησα.

Θα επικεντρωθώ στη λογική ελέγχου και θα εξηγήσω επίσης τη βιβλιοθήκη οδηγών κινητήρων Sparkfun TB6612FNG λεπτομερώς σε αυτό το διδακτικό.

Βήμα 1: Απαιτούνται εξαρτήματα

Δείτε τι θα χρησιμοποιήσουμε σήμερα:

1) Μικρομεταλλικοί κινητήρες

2) Πρόγραμμα οδήγησης κινητήρα TB6612FNG

3) Καλώδιο Arduino και USB

4) Πηγή ισχύος για τους κινητήρες

5) Breadboard

6) Καλώδια βραχυκυκλωτήρων

Βήμα 2: Το TB6612FNG Breakout Board

Το TB6612FNG Breakout Board
Το TB6612FNG Breakout Board

Όπως ανέφερα προηγουμένως, υπάρχουν πολλές σανίδες από διαφορετικούς κατασκευαστές για το TB6612FNG. Όλοι τους έχουν πάνω κάτω τα ίδια στοιχεία και επίσης παρόμοιο pinout.

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

Το IC έρχεται επίσης με εσωτερικές διόδους για προστασία από το πίσω EMF από τους κινητήρες. Αλλά η ύπαρξη επιπλέον μέτρων ασφαλείας δεν έβλαψε κανέναν. Δεν τα πρόσθεσα γιατί τα μοτέρ μου δεν είναι πολύ μεγάλα και μου λείπουν οι δίοδοι: |

Βήμα 3: Καρφιτσώστε τις εξόδους

Καρφίτσωμα εξόδων
Καρφίτσωμα εξόδων

Ο πίνακας διαρροής TB6612FNG έχει ένα πολύ εύχρηστο pinout. Όλες οι έξοδοι του κινητήρα, οι είσοδοι και οι συνδέσεις ισχύος ομαδοποιούνται όμορφα για μέγιστη ευκολία στη χρήση.

Έκανα μια απεικόνιση των pinouts και πώς να τα συνδέσετε, ελπίζω να είναι χρήσιμο όταν συνδέετε όλα αυτά τα καλώδια:)

Βήμα 4: Διαγράμματα

Σχήματα
Σχήματα
Σχήματα
Σχήματα

Είμαι αρκετά νέος στη χρήση του Fritzing. Θεωρώ ότι τα σχήματα κυκλώματος από το Fritzing είναι πολύ δύσκολο να κατανοηθούν, αλλά η προβολή του breadboard είναι βολική για το Instructables. Μη διστάσετε να κάνετε οποιεσδήποτε ερωτήσεις εάν κάποια από τις συνδέσεις καλωδίων φαίνεται μπερδεμένη.

Βήμα 5: Καλωδίωση

Wiring It Up
Wiring It Up

Συνδέστε τα πάντα σύμφωνα με τα διαγράμματα. Υπάρχουν πολλά καλώδια, φροντίστε να ελέγχετε ξανά μετά από κάθε σύνδεση.

Χρησιμοποίησα τις ακόλουθες καρφίτσες Arduino για τις εισόδους του οδηγού κινητήρα:

Motor Driver -> Arduino Pin Number

1) PWMA -> 5

2) INA1 -> 2

3) INA2 -> 4

4) PWMB -> 6

5) INB1 -> 7

6) INB2 -> 8

Πράγματα που μπορεί να πάνε στραβά σε αυτό το βήμα: 1) Μην αντιστρέψετε την πολικότητα ενώ συνδέετε το Vm και το GND από την πηγή τροφοδοσίας. Μπορείτε να τηγανίσετε τον οδηγό του κινητήρα σας.

2) Βεβαιωθείτε ότι έχετε συνδέσει τα PWMA και PWMB με ακίδες PWM στο arduino.

3) Θυμηθείτε να συνδέσετε το Arduino GND και το GND από το πρόγραμμα οδήγησης του κινητήρα εάν χρησιμοποιείτε διαφορετική πηγή ενέργειας για το καθένα.

Βήμα 6: Λήψη και εγκατάσταση της βιβλιοθήκης

Κατεβάστε τη βιβλιοθήκη από τη σελίδα GitHub του Sparkfun.

Αφού κατεβάσετε το αρχείο zip, ανοίξτε το Arduino IDE.

Από το Sketch> Include Library> Add. Zip Library, προσθέστε τη βιβλιοθήκη που κατεβάσατε.

Μόλις εγκατασταθεί με επιτυχία, θα πρέπει να εμφανίζεται στο Αρχείο> Παραδείγματα, ως "SparkFun TB6612FNG Motor Library"

Αν αντιμετωπίζετε δυσκολίες στη λήψη και εγκατάσταση μιας βιβλιοθήκης Arduino, ανατρέξτε στο βήμα 5 αυτού του οδηγού.

Βήμα 7: Εκτέλεση του παραδείγματος κώδικα

Τώρα που έχουμε έτοιμη τη βιβλιοθήκη μας, μπορούμε να ανεβάσουμε τον παράδειγμα κώδικα για να τον δοκιμάσουμε.

1) Ανοίξτε το παράδειγμα "MotorTestRun" από τη βιβλιοθήκη "Sparkfun TB6612FNG Motor Driver" που αναφέρεται στις βιβλιοθήκες σας.

Σημείωση: Εάν δεν χρησιμοποιείτε τους ίδιους αριθμούς καρφιτσών που αναφέρονται στο βήμα 5, φροντίστε να αλλάξετε τους ορισμούς των καρφιτσών σύμφωνα με τη ρύθμισή σας.

2) Επιλέξτε τον πίνακα από τον διαχειριστή του πίνακα

3) Ανεβάστε τον κωδικό σας και οι κινητήρες πρέπει να αρχίσουν να κινούνται

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

Βήμα 8: Η βιβλιοθήκη εξηγείται

Τώρα για να εξηγήσετε πώς να χρησιμοποιήσετε τη βιβλιοθήκη για το δικό σας κομμάτι κώδικα.

Αρχίστε με την εισαγωγή της βιβλιοθήκης και την προετοιμασία των ακίδων στο arduino

#περιλαμβάνω

#define AIN1 2 #define AIN2 4 #define PWMA 5 #define BIN1 7 #define BIN2 8 #define PWMB 6 #define STBY 9

Για να προετοιμάσετε τα αντικείμενα του κινητήρα σας, πρέπει να ρυθμίσετε τις αντισταθμίσεις για κάθε κινητήρα. Φανταστείτε αν κάνετε μια εντολή εμπρός στον κινητήρα σας και περιστρέφεται αντίστροφα. Θα μπορούσατε να το επανασυνδέσετε χειροκίνητα ή απλώς να αλλάξετε το offset από εδώ. Ένα έξυπνο μικρό hack QoL που προστέθηκε από το SparkFun. Οι τιμές αυτών των αντισταθμίσεων είναι είτε 1 είτε -1.

Στη συνέχεια, πρέπει να προετοιμάσετε καθένα από τα μοτέρ με τις ακόλουθες παραμέτρους.

Motor = Motor (Pin 1, Pin 2, PWM pin, offset, Standby pin)

const int offsetA = 1;

const int offsetB = 1; Κινητήρας1 = Κινητήρας (AIN1, AIN2, PWMA, offsetA, STBY);

Και με αυτό, ολοκληρώσατε την προετοιμασία της βιβλιοθήκης. Δεν υπάρχουν άλλα βήματα στη συνάρτηση setup (), απλά εκτελούμε τον κώδικα στη συνάρτηση βρόχου ().

Η μέθοδος κινητήρα έχει τις ακόλουθες λειτουργίες. Μπερδέψτε για να τα ελέγξετε όλα.

1). Οδήγηση (αξία, χρόνος)

Όνομα_κινητήρα = όνομα της αντικειμενικής αξίας του κινητήρα σας = 255 έως -255; αρνητικές τιμές θα κάνουν τον κινητήρα να κινείται σε χρόνο αντιστροφής = χρόνος σε χιλιοστά του δευτερολέπτου

2). Φρένο ()

Η λειτουργία φρένων δεν παίρνει κανένα επιχείρημα, φρενάρει τους κινητήρες.

3) φρένο (, <motor_name2)

Η λειτουργία πέδησης λαμβάνει ως ορίσματα τα ονόματα αντικειμένων κινητήρα. Φρένα τα μοτέρ πέρασαν στη λειτουργία.

4) εμπρός (,, χρόνος) εμπρός (,, ταχύτητα, χρόνος)

Η συνάρτηση δέχεται το όνομα δύο αντικειμένων κινητήρα, προαιρετικά την ταχύτητα και τον χρόνο PWM σε χιλιοστά του δευτερολέπτου και τρέχει τον κινητήρα προς τα εμπρός για το χρονικό διάστημα που πέρασε. Εάν η τιμή της ταχύτητας είναι αρνητική, ο κινητήρας θα πάει προς τα πίσω. Η προεπιλεγμένη ταχύτητα έχει οριστεί σε 255.

5) πίσω (,, χρόνος) πίσω (,, ταχύτητα, χρόνος)

Η συνάρτηση δέχεται το όνομα δύο αντικειμένων κινητήρα, προαιρετικά την ταχύτητα και τον χρόνο PWM σε χιλιοστά του δευτερολέπτου και τρέχει τον κινητήρα προς τα εμπρός για το χρονικό διάστημα που πέρασε. Εάν η τιμή της ταχύτητας είναι αρνητική, ο κινητήρας θα προχωρήσει. Η προεπιλεγμένη ταχύτητα έχει οριστεί σε 255.

6) αριστερά (,, ταχύτητα) δεξιά (,, ταχύτητα)

Η συνάρτηση δέχεται δύο ονόματα αντικειμένων κινητήρα και ταχύτητα. Η σειρά των αντικειμένων του κινητήρα που έχουν περάσει ως παράμετροι είναι σημαντική. Για να οδηγείτε μεμονωμένους κινητήρες, χρησιμοποιήστε.drive () αντ 'αυτού.

Συνιστάται: