Servomotor#

Invoering#

De klasse servo wordt gebruikt om een ​​V5 3-draads servomotor te besturen en te configureren. De V5 3-draads servomotor biedt positiegebaseerde besturing binnen een vast bewegingsbereik.

De VEX 3-draads servomotor

Klasseconstructors#

servo( triport::port& port );

Klasse-destructor#

Vernietigt het servo object en geeft de bijbehorende resources vrij.

~servo();

Parameters#

Parameter

Type

Beschrijving

port

triport::port&

De 3-draads poort waarop de servomotor is aangesloten, wordt weergegeven als Brain.ThreeWirePort.X of ExpanderName.X, waarbij X de poortletter is (bijvoorbeeld Brain.ThreeWirePort.A of Expander1.A).

Notities#

  • Een Brain of 3-Wire Expander moet eerst worden aangemaakt voordat ze kunnen worden gebruikt om een ​​object te creëren met de servo klasseconstructor.

Voorbeeld#

// Create the servo instance on 3-Wire Port A
servo myServo = servo(Brain.ThreeWirePort.A);

Lidfuncties#

De klasse servo omvat de volgende lidfuncties:

  • setPosition — Verplaatst de servomotor naar een opgegeven positie.

Voordat er lidfuncties van servo servo worden aangeroepen, moet er een instantie van servo servo worden aangemaakt, zoals hieronder weergegeven:

/* 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#

Verplaatst de servomotor naar een specifieke positie.

Een diagram van een servomotor die de graden laat zien waarin deze kan draaien, van 100 aan de linkerkant tot 50 in het midden en 0 helemaal rechts.

Available Functions

1 — Stelt de servopositie in met behulp van een percentage.

void setPosition(
 int32_t value,
 percentUnits units );

2 — Stelt de servopositie in met behulp van rotatie-eenheden.

void setPosition(
 double value,
 rotationUnits units );

Parameters

Parameter

Type

Beschrijving

value

int32_t

De servopositiewaarde in procentuele eenheden.

value

double

De servopositiewaarde bij gebruik van rotatie-eenheden.

units

percentUnits

The position unit: percent / pct — percent

units

rotationUnits

De positie-eenheid:

  • deg / degrees — graden
  • turns / rev — omwentelingen

Return Values

Deze functie retourneert geen waarde.

Notes
  • Bij gebruik van procentuele eenheden is het geldige bereik 0 – 100%.

  • Een servomotor begint elk project door zichzelf automatisch te centreren op 50 graden voordat hij bewegingen uitvoert.

  • Bij gebruik van rotatie-eenheden beweegt de servomotor naar de opgegeven absolute positie.

Examples
// 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);