Skip navigation

Έλεγχος σερβοκινητήρα

Σερβοκινητήρας

Ο σερβοκινητήρας είναι μια διάταξη που μπορεί να γυρίζει με ακρίβεια έναν άξονα από τις 0 μέχρι τις 180 μοίρες. Έχει εφαρμογή σε κατασκευές που θέλουμε να κινείται κάποιο μέρος ελεγχόμενα, π.χ. αν σταθεροποιήσουμε κάπου τη βάση του, μπορούμε να χρησιμοποιήσουμε το σέρβο για να εισάγουμε κίνηση σε εύρος 180 μοιρών στην κατασκευή μας.Ένα κλασσικό δείγμα σερβοκινητήρα ιδανικό για το Arduino είναι ο TowerPro SG90.

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

Το σέρβο έχει τρία καλώδια: ένα κόκκινο που συνδέεται στην πηγή (+5V), ένα καφέ ή μαύρο που συνδέεται στη γείωση (GND) κι ένα άσπρο ή κίτρινο που συνδέεται στο pin του Arduino, μέσω του οποίου λαμβάνει παλμούς PWM συχνότητας 50Hz, των οποίων ο κύκλος εργασίας (Duty cycle) είναι ανάλογος με τις μοίρες στρέψης.

Για τον ευκολότερο έλεγχo του σερβοκινητήρα μέσω Arduino, μπορούμε να εισάγουμε την βιβλιοθήκη 'Servo.h' στο πρόγραμμά μας (#include <Servo.h>), να ορίσουμε μια μεταβλητή τύπου servo (servo myservo;),  καθώς και το pin μέσω του οποίου θα το χειριστούμε (π.χ. int servoPin = 13;). Αντί να ορίσουμε το servoPin ως έξοδο στη συνάρτηση setup, το συσχετίζουμε με το σέρβο μας στη συνάρτηση setup() με την εντολή myservo.attach(servoPin);. Η αποστολή του αριθμού των μοιρών στρέψης γίνεται με την εντολή myservo.write(num);, όπου το num είναι ένας αριθμός από 0 έως 180 μοίρες στρέψης.








Εφαρμογή 1

Θέλουμε να κατασκευάσουμε ένα κύκλωμα όπου το Arduino θα ελέγχει ένα σερβοκινητήρα, στέλνοντάς του εντολές για να κινεί τον οπλισμό του μεταξύ των θέσεων 0ο-90ο-180ο-90ο-0ο-90ο κτλ. ανά 1 sec.

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

Προγραμματίστε τον Arduino με το παρακάτω sketch και ελέγξτε τη λειτουργία του.

Εφαρμογή 2

Θέλουμε να ελέγχουμε τη γωνία στροφής του σερβοκινητήρα μέσω ενός ποτενσιόμετρου.

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

Δημιουργείστε το κατάλληλο sketch για το Arduino.


(c) Αμπατζόγλου Γιάννης, Ηλεκτρονικός Μηχανικός, καθηγητής ΠΕ84

Αδειοδοτημένο υπό τους όρους Creative Commons Attribution Share Alike License 4.0