Πώς να διασυνδέσετε τους κινητήρες Servo με το Arduino

Δοκιμάστε Το Όργανο Μας Για Την Εξάλειψη Των Προβλημάτων





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

Όντας λάτρεις των ηλεκτρονικών, θα συναντούσαμε πολλά είδη κινητήρων, εδώ θα ρίξουμε μια ματιά σε έναν ειδικό τύπο κινητήρα που ονομάζεται servo motor.



Τι είναι ο σερβο κινητήρας;

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

Τυπικός σερβοκινητήρας:

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



Το Servo δεν είναι απλώς ένας κινητήρας όπως και άλλοι τύποι, αλλά είναι μια μονάδα, η οποία συνδυάζει έναν κανονικό κινητήρα DC / AC, μια ομάδα γραναζιών, ηλεκτρονικά ελέγχου και ένα σύστημα ανατροφοδότησης. Ας δούμε λεπτομερώς τα αναφερόμενα στάδια.

Ο κινητήρας DC / AC που χρησιμοποιείται σε μια σερβο μονάδα μπορεί να είναι ένας κινητήρας χωρίς ψήκτρες ή βουρτσισμένος, στα περισσότερα από τα σέρβο χόμπι χρησιμοποιείται κινητήρας DC και κινητήρες AC χρησιμοποιούνται σε βιομηχανικές εφαρμογές. Ο κινητήρας δίνει περιστροφική είσοδο στο σερβο. Ο κινητήρας περιστρέφεται με αρκετές εκατοντάδες σ.α.λ. στο εσωτερικό του σερβο και η περιστροφή εξόδου είναι περίπου 50 ή περισσότερες φορές λιγότερο από το σ.α.λ.

Το επόμενο στάδιο είναι η διάταξη ταχυτήτων, η οποία ελέγχει τη γωνιακή περιστροφή και την ταχύτητα του σερβο. Το γρανάζι μπορεί να είναι κατασκευασμένο είτε από πλαστικό είτε από μέταλλο ανάλογα με το πόσο ογκώδες είναι το φορτίο. Γενικά, οι κινητήρες DC λειτουργούν σε υψηλές στροφές και χαμηλή ροπή, η διάταξη μετάδοσης μετατρέπει την περίσσεια στροφών σε ροπή. Έτσι, ένας μικρός κινητήρας μπορεί να αντέξει ένα τεράστιο φορτίο.

Το επόμενο στάδιο είναι τα ηλεκτρονικά ελέγχου που αποτελούν MOSFET και IC για τον έλεγχο της περιστροφής του κινητήρα. Ένα σύστημα ανάδρασης υπάρχει πάντα σε σερβοκινητήρες για την παρακολούθηση της τρέχουσας θέσης του ενεργοποιητή.

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

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

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

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

Οι σερβοκινητήρες έχουν 3 ακροδέκτες σε αντίθεση με άλλους κινητήρες που έχουν 2 ακροδέκτες, δύο για τροφοδοσία (5V ονομαστικό) και ένα για σήμα ελέγχου. Τα καλώδια είναι χρωματισμένα για εύκολη αναγνώριση των ακροδεκτών.

Τα σήματα ελέγχου των servos είναι PWM σε συχνότητα 50Hz. Το πλάτος παλμού του σήματος καθορίζει τη θέση του βραχίονα ενεργοποιητή. Ένας τυπικός σερβοκινητήρας λειτουργεί από πλάτος παλμού από 1 έως 2 χιλιοστά του δευτερολέπτου.

Η εφαρμογή σήματος ελέγχου πλάτους παλμού 1 ms θα διατηρήσει τον ενεργοποιητή σε θέση 0 μοιρών. Η εφαρμογή σήματος ελέγχου πλάτους παλμού 2 ms διατηρεί τον ενεργοποιητή στη θέση 180 μοιρών. Η εφαρμογή σημάτων μεταξύ 1-2 ms θα διατηρήσει τον ενεργοποιητή σε γωνία 0-180 μοιρών. Αυτό μπορεί να γίνει καλύτερα κατανοητό από την παρακάτω εικόνα.

Μέχρι τώρα θα έχετε καταλάβει πώς ελέγχεται ένα σερβο με διαμόρφωση πλάτους παλμού (PWM).

Τώρα ας μάθουμε πώς να συνδέουμε έναν σερβο κινητήρα με το Arduino.

Διάγραμμα κυκλώματος:

πώς να συνδέσετε έναν σερβο κινητήρα με το Arduino.

Η καλωδίωση είναι εύκολη και αυτονόητη. Χρειάζεστε εξωτερικό τροφοδοτικό εάν χρησιμοποιείτε ογκώδη σερβοκινητήρα. Εάν προσπαθήσετε να τροφοδοτήσετε από το τροφοδοτικό arduino, θα καταλήξετε να υπερφορτώνετε τη θύρα USB στον υπολογιστή.

Εάν έχετε παρόμοιο σερβο που απεικονίζεται στην αρχή του άρθρου, τότε μπορείτε να το τροφοδοτήσετε από την τροφοδοσία arduino 5V, που εμφανίζεται επίσης στο πρωτότυπο του συγγραφέα.

Πρωτότυπο συγγραφέα:

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

Πρόγραμμα:

//--------Program developed by R.Girish--------//
#include
Servo motor
int pos = 0
int t=10
void setup()
{
motor.attach(7)
}
void loop()
{
A:
pos=pos+1
motor.write(pos)
delay(t)
if(pos==180) { goto B}
goto A
B:
pos=pos-1
motor.write(pos)
delay(t)
if(pos==0) { goto A}
goto B
}
//--------Program developed by R.Girish--------//

Το παραπάνω πρόγραμμα σαρώνει τον ενεργοποιητή 0 έως 180 μοίρες δεξιά και 180 έως 0 μοίρες αριστερά και επαναλαμβάνει τον κύκλο. Αυτό είναι ένα απλό πρόγραμμα για τη δοκιμή του σερβο που ίσως χρειαστεί να γράψετε τον δικό σας κωδικό για τις προσαρμοσμένες εφαρμογές σας.




Προηγούμενο: Κύκλωμα ελέγχου βαλβίδας αντλίας νερού δύο σωλήνων Επόμενο: Κατανόηση καλωδίωσης ρυθμιστή τάσης μοτοσικλέτας