Ο ελεγκτής κινητήρα L298N Είναι μια πολύ δημοφιλής επιλογή σε έργα ρομποτικής και ηλεκτρονικών γενικά, χάρη στο χαμηλό κόστος και την ευκολία χρήσης του. Με αυτή τη μονάδα, μπορούμε να ελέγξουμε τόσο τους κινητήρες συνεχούς ρεύματος όσο και τους βηματικούς κινητήρες, ρυθμίζοντας την ταχύτητα και την κατεύθυνση περιστροφής τους. Σε όλο αυτό το άρθρο, θα αναλύσουμε όλα όσα πρέπει να γνωρίζετε για το L298N, από τις βασικές συνδέσεις μέχρι τον τρόπο χρήσης του με ένα Arduino για έλεγχο κινητήρα. Διαβάστε παρακάτω για να αξιοποιήσετε στο έπακρο αυτό το ευέλικτο χειριστήριο.
Εάν έχετε εργαστεί ποτέ με έργα ρομποτικής ή οχήματα που ελέγχονται από έναν μικροελεγκτή όπως το Arduino, πιθανότατα έχετε βρεθεί στην κατάσταση να χρειάζεστε περισσότερη ισχύ για να μετακινήσετε κινητήρες συγκεκριμένου μεγέθους. Εδώ είναι που το Μονάδα L298N, ένας ελεγκτής που σας επιτρέπει να διαχειρίζεστε αυτή την πρόσθετη ισχύ για ηλεκτροκινητήρες με απλό τρόπο. Ας εμβαθύνουμε σε όλες τις λεπτομέρειες.
Τι είναι το L298N και πώς λειτουργεί;
Το L298N είναι α ελεγκτής κινητήρα το οποίο χρησιμοποιεί ένα σύστημα H-Bridge για να αντιστρέψει την πολικότητα του ρεύματος και, ως εκ τούτου, να ελέγξει την φορά περιστροφής του κινητήρα. Αυτή η μονάδα έχει τη δυνατότητα ελέγχου δύο κινητήρες DC ή ένα βηματικό μοτέρ. Το μέγιστο ρεύμα που μπορεί να παρέχει είναι 2Α ανά έξοδο, με μέγιστη κορυφή 3Α και υποστηρίζει εύρος ισχύος μεταξύ 3V και 35V. Είναι σημαντικό να σημειωθεί ότι αυτή η μονάδα έχει σχετικά χαμηλή απόδοση, πράγμα που σημαίνει ότι οι κινητήρες θα λαμβάνουν τάση περίπου 3 V χαμηλότερη από αυτή που εφαρμόζεται στη μονάδα. Αυτές οι απώλειες διαχέονται ως θερμότητα.
Η εσωτερική δομή της ενότητας περιλαμβάνει δύο γέφυρες H, μια τεχνολογία που χρησιμοποιείται ευρέως στα ηλεκτρονικά για τον έλεγχο της κατεύθυνσης του ρεύματος. Κάθε γέφυρα αποτελείται από τέσσερα τρανζίστορ διατεταγμένα σε μια διαμόρφωση που επιτρέπει τον έλεγχο τόσο της πολικότητας όσο και της αποσύνδεσης του κινητήρα. Επιπλέον, το L298N ενσωματώνει διόδους προστασίας και άλλα μέτρα για την αποφυγή πιθανών ζημιών κατά τη λειτουργία αυτών των κινητήρων.
Βασικά εξαρτήματα και συνδέσεις
El Μονάδα L298N Χαρακτηρίζεται από την απλότητα χρήσης και την ευελιξία του να προσαρμόζεται σε διάφορους τύπους έργων. Παρακάτω εξηγούμε τις πιο σημαντικές συνδέσεις του ελεγκτή:
- Vin και GND: Αυτές οι ακίδες χρησιμοποιούνται για τη σύνδεση του τροφοδοτικού της μονάδας. Μπορεί να υποστηρίξει τάση εισόδου 3V έως 35V.
- λογικό V: Αυτή η ακίδα έχει δύο λειτουργίες, ανάλογα με το αν ο ρυθμιστής τάσης ενεργοποιείται μέσω ενός βραχυκυκλωτήρα. Εάν ο βραχυκυκλωτήρας είναι συνδεδεμένος, αυτή η ακίδα θα παρέχει μια έξοδο 5 V την οποία μπορούμε να χρησιμοποιήσουμε για να τροφοδοτήσουμε συσκευές όπως το Arduino. Εάν αφαιρεθεί ο βραχυκυκλωτήρας, πρέπει να τροφοδοτήσουμε το λογικό εξάρτημα με μια πηγή 5V.
- IN1, IN2, IN3, IN4: Αυτές οι ακίδες ελέγχουν την κατεύθυνση των κινητήρων. Για παράδειγμα, για τον κινητήρα Α, εάν το IN1 είναι στο HIGH και το IN2 στο LOW, ο κινητήρας θα περιστραφεί προς μία κατεύθυνση. Εάν το IN1 είναι στο LOW και το IN2 στο HIGH, θα περιστραφεί προς την αντίθετη κατεύθυνση.
- ENA και ENB: Ελέγχουν την ταχύτητα των κινητήρων χρησιμοποιώντας σήματα PWM (Pulse Width Modulation). Εάν οι βραχυκυκλωτήρες είναι στη θέση τους, οι κινητήρες θα λειτουργούν με σταθερή ταχύτητα. Αν όχι, μπορούμε να προσαρμόσουμε την ταχύτητα με τιμές από 0 έως 255.
Λειτουργία και τροφοδοτικά του L298N
Υπάρχουν δύο κύριοι τρόποι τροφοδοσίας α L298N:
- Με ένα μόνο τροφοδοτικό: Σε αυτή την περίπτωση χρησιμοποιούμε πηγή έως 12V, συνδέουμε τον βραχυκυκλωτήρα για να ενεργοποιηθεί ο ρυθμιστής 5V και δεν συνδέουμε τίποτα στον ακροδέκτη 5V, αφού αυτό θα λειτουργήσει ως έξοδος.
- Με δύο πηγές ενέργειας: Μια άλλη εναλλακτική είναι να τροφοδοτήσετε τη μονάδα με δύο διαφορετικές πηγές, η μία από τις οποίες θα παρέχει τα απαραίτητα 5 V για το λογικό τμήμα της μονάδας και η άλλη 12 V ή περισσότερα για τον κινητήρα, αποσυνδέοντας σε αυτήν την περίπτωση το βραχυκυκλωτήρα του ρυθμιστή για να αποφευχθεί η πρόκληση ζημιάς στο μονάδα μέτρησης.
Είτε χρησιμοποιείτε ένα είτε δύο τροφοδοτικά, να θυμάστε πάντα να προσέχετε ακίδες εισόδου και εξόδου για την αποφυγή βραχυκυκλωμάτων ή πιθανών ζημιών.
Προγραμματισμός με το Arduino
Ένα από τα μεγάλα πλεονεκτήματα του L298N είναι η εύκολη ενσωμάτωσή του με έργα που βασίζονται στο Arduino. Αυτό συμβαίνει γιατί συνδέοντας μόνο μερικές ακίδες μπορούμε να ελέγξουμε τόσο την ταχύτητα όσο και την κατεύθυνση ενός ή περισσότερων κινητήρων. Εδώ σας δείχνουμε πώς να προγραμματίσετε το L298N με το Arduino:
Αρχικά, εκχωρούμε τις ακίδες που θα χρησιμοποιήσουμε για τον έλεγχο των κινητήρων:
int ENA = 10; // Habilita motor A
int IN1 = 9; // Dirección Motor A
int IN2 = 8; // Dirección Motor A
int ENB = 5; // Habilita motor B
int IN3 = 7; // Dirección Motor B
int IN4 = 6; // Dirección Motor B
Ξεκινάμε διαμορφώνοντας τις ακίδες ως εξόδους στο setup()
και δηλώνοντας τις απαραίτητες λειτουργίες για την κίνηση των κινητήρων και προς τις δύο κατευθύνσεις:
void Adelante() {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENB, 255);
}
void Atras() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(ENA, 128);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(ENB, 128);
}
Μπορούμε να ρυθμίσουμε την ταχύτητα των κινητήρων αλλάζοντας τις τιμές στη συνάρτηση analogWrite()
, το οποίο δέχεται τιμές μεταξύ 0 και 255, όπου το 255 είναι η μέγιστη ταχύτητα.
Προστασία L298N
Ένα αξιοσημείωτο χαρακτηριστικό του L298N είναι ότι ενσωματώνει πολλές προστασίες για την αποφυγή ζημιών τόσο στον ελεγκτή όσο και στους κινητήρες. Αυτές οι προστασίες περιλαμβάνουν:
- Προστασία από υπερένταση: Εάν η μονάδα εντοπίσει ρεύμα μεγαλύτερο από αυτό που μπορεί να αντέξει, θα ενεργοποιήσει την προστασία για να αποτρέψει τη ζημιά.
- Προστασία από υπερθέρμανση: Το L298N έχει σχεδιαστεί για να διαχέει τη θερμότητα που παράγεται κατά τη λειτουργία, αλλά εάν η θερμοκρασία υπερβεί ορισμένα όρια, η μονάδα θα ενεργοποιήσει τη θερμική της προστασία.
- Προστατευτικές δίοδοι: Αυτές οι δίοδοι εμποδίζουν τις αιχμές τάσης που προκαλούνται από την αδράνεια των κινητήρων να βλάψουν τη μονάδα.
Πρακτικό παράδειγμα: Έλεγχος ρομποτικού αυτοκινήτου
Η χρήση του ελεγκτή L298N Είναι πολύ συνηθισμένο σε έργα ρομποτικής, όπως ρομποτικά αυτοκίνητα που ελέγχονται με Arduino. Σε αυτή τη ρύθμιση, τοποθετώντας το L298N στο σασί και συνδέοντάς το με το Arduino, μπορούμε να ελέγξουμε τόσο την κατεύθυνση όσο και την ταχύτητα των τροχών του αυτοκινήτου.
Το συνηθισμένο διάγραμμα σύνδεσης είναι το εξής: Τροφοδοτείτε τη μονάδα L298N με μια εξωτερική μπαταρία για τους κινητήρες (συνήθως 6V ή 12V) και συνδέετε τον ακροδέκτη εξόδου 5V στο Arduino. Από το Arduino ελέγχετε τις ακίδες IN1, IN2, IN3 και IN4 για να κινήσετε τους κινητήρες. Αυτή η ρύθμιση σάς επιτρέπει να στρίβετε το αυτοκίνητο προς τα εμπρός, προς τα πίσω και να κάνετε στροφές προς διαφορετικές κατευθύνσεις.
Εάν θέλετε να απλοποιήσετε τον προγραμματισμό και τον έλεγχο, μπορείτε να χρησιμοποιήσετε βιβλιοθήκες όπως LEANTEC_ControlMotor.h. Αυτή η βιβλιοθήκη σάς επιτρέπει να προγραμματίζετε τους κινητήρες με απλούστερες εντολές όπως: control.Motor(velocidad, direccion)
.
Το L298N είναι μια εξαιρετική λύση για τον έλεγχο των κινητήρων σε μικρού και μεσαίου μεγέθους έργα και η χρήση του είναι ευρέως διαδεδομένη στην κοινότητα των κατασκευαστών. Αν και υπάρχουν άλλοι πιο προηγμένοι και αποτελεσματικοί ελεγκτές, ο συνδυασμός ευελιξίας, τιμής και απλότητας του L298N το καθιστά μία από τις καλύτερες επιλογές για έργα DIY.