Silnik serwo#
Wstęp#
Klasa serwo servo służy do sterowania i konfiguracji 3-przewodowego serwomotoru EXP. 3-przewodowy serwomotor EXP zapewnia sterowanie oparte na położeniu w ustalonym zakresie ruchu.

Konstruktory klas#
servo( triport::port& port );
Destruktor klasy#
Niszczy obiekt serwo servo i uwalnia powiązane zasoby.
~servo();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Port 3-żyłowy, do którego podłączony jest serwomotor, zapisany jako |
Przykład#
// Create the servo instance on 3-Wire Port A
servo myServo = servo(Brain.ThreeWirePort.A);
Funkcje członkowskie#
Klasa servo zawiera następujące funkcje członkowskie:
setPosition— Przesuwa serwomotor do określonej pozycji.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej servo należy utworzyć instancję servo , jak pokazano poniżej:
/* 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#
Przesuwa serwomotor do określonej pozycji.

1 — Ustawia pozycję serwa za pomocą wartości procentowej.
void setPosition( int32_t value, percentUnits units );
Parameters2 — Ustawia pozycję serwa za pomocą jednostek obrotu.
void setPosition( double value, rotationUnits units );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Wartość położenia serwa wyrażona w jednostkach procentowych. |
|
|
Wartość położenia serwa przy użyciu jednostek obrotu. |
|
|
Jednostka pozycji: |
|
|
Jednostka położenia:
|
Ta funkcja nie zwraca wartości.
NotesW przypadku jednostek procentowych prawidłowy zakres wynosi 0 – 100%.
Serwomechanizm rozpoczyna każdy projekt od automatycznego centrowania się pod kątem 50 stopni przed zakończeniem jakichkolwiek ruchów.
Podczas korzystania z jednostek obrotowych serwo przesunie się do określonej pozycji bezwzględnej.
// 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);