Σερβοκινητήρας#
Εισαγωγή#
Η κλάση servo χρησιμοποιείται για τον έλεγχο και τη διαμόρφωση ενός σερβοκινητήρα V5 3 καλωδίων. Ο σερβοκινητήρας V5 3 καλωδίων παρέχει έλεγχο βάσει θέσης εντός ενός σταθερού εύρους κίνησης.

Κατασκευαστές κλάσεων#
servo( triport::port& port );
Καταστροφέας κλάσης#
Καταστρέφει το αντικείμενο servo και απελευθερώνει τους σχετικούς πόρους.
~servo();
Παράμετροι#
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η θύρα 3 καλωδίων στην οποία είναι συνδεδεμένος ο σερβοκινητήρας, γραμμένη ως |
Σημειώσεις#
Πρέπει πρώτα να δημιουργηθεί ένας Brain ή ένας 3-Wire Expander προτού μπορέσουν να χρησιμοποιηθούν για τη δημιουργία ενός αντικειμένου με τον κατασκευαστή κλάσης
servo.
Παράδειγμα#
// Create the servo instance on 3-Wire Port A
servo myServo = servo(Brain.ThreeWirePort.A);
Συναρτήσεις Μελών#
Η κλάση servo περιλαμβάνει τις ακόλουθες συναρτήσεις-μέλη:
setPosition— Μετακινεί τον σερβοκινητήρα σε μια καθορισμένη θέση.
Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους servo , πρέπει να δημιουργηθεί μια παρουσία servo , όπως φαίνεται παρακάτω:
/* This constructor is required when using VS Code.
Servo configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */
// Create the servo instance on 3-Wire Port A
servo myServo = servo(Brain.ThreeWirePort.A);
setPosition#
Μετακινεί τον σερβοκινητήρα σε μια καθορισμένη θέση.

1 — Ορίζει τη θέση του σερβοκινητήρα χρησιμοποιώντας μια ποσοστιαία τιμή.
void setPosition( int32_t value, percentUnits units );
Parameters2 — Ορίζει τη θέση του σερβοκινητήρα χρησιμοποιώντας μονάδες περιστροφής.
void setPosition( double value, rotationUnits units );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η τιμή θέσης του σερβοκινητήρα κατά τη χρήση ποσοστιαίων μονάδων. |
|
|
Η τιμή θέσης του σερβοκινητήρα κατά τη χρήση μονάδων περιστροφής. |
|
|
Η μονάδα θέσης: |
|
|
Η μονάδα θέσης:
|
Αυτή η συνάρτηση δεν επιστρέφει τιμή.
NotesΌταν χρησιμοποιούνται ποσοστιαίες μονάδες, το έγκυρο εύρος είναι 0 – 100%.
Ένας σερβοκινητήρας ξεκινά κάθε έργο κεντραριζόμενος αυτόματα στις 50 μοίρες πριν ολοκληρώσει οποιεσδήποτε κινήσεις.
Όταν χρησιμοποιείτε μονάδες περιστροφής, ο σερβοκινητήρας θα μετακινηθεί στην καθορισμένη απόλυτη θέση.
// Set the servo position to 10 percent
myServo.setPosition(10, percent);
// Set the servo position to 45.5 degrees
myServo.setPosition(45.5, degrees);
// Set the servo position to 90 degrees
myServo.setPosition(90, degrees);