Potentiometer#

Introduktion#

Klasserna pot och potV2 används med potentiometrar, vilka är analoga sensorer som mäter vinkelpositionen för en roterande axel. En potentiometer matar ut en spänning som är proportionell mot dess position.

Beroende på potentiometerversionen varierar rotationsmängden den kan detektera:

  • Potentiometer - Upp till 250 grader

  • Potentiometer V2 - 330 grader (Kontinuerlig)

VEX EXP-potentiometern V1.

VEX EXP-potentiometern V2.

Potentiometer

Potentiometer V2

Potentiometer#

Class Constructors#

pot(
  triport::port &port );

Class Destructor#

Förstör objektet pot och frigör tillhörande resurser.

~pot();

Parameters#

Parameter

Typ

Beskrivning

port

triport::port &

Den 3-trådsport som potentiometern är ansluten till, skriven som Brain.ThreeWirePort.X eller ExpanderName.X, där X är portbokstaven (till exempel Brain.ThreeWirePort.A eller Expander1.A).

Example#

// Create a pot instance in Port A
pot PotentiometerA = pot(Brain.ThreeWirePort.A);

Potentiometer V2#

Class Constructors#

potV2(
  triport::port &port );

Class Destructor#

Förstör potV2 objektet och frigör tillhörande resurser.

~potV2();

Parameters#

Parameter

Typ

Beskrivning

port

triport::port &

The 3-Wire Port the Potentiometer V2 is connected to, written as Brain.ThreeWirePort.X or ExpanderName.X, where X is the port letter (for example, Brain.ThreeWirePort.A or Expander1.A).

Examples#

// Create a Potentiometer V2 on 3-Wire Port A
potV2 PotentiometerV2A = potV2(Brain.ThreeWirePort.A);

Medlemsfunktioner#

Klasserna pot och potV2 inkluderar följande medlemsfunktioner:

  • angle — Returnerar potentiometerns vinkelposition i grader eller som en procentandel.

Innan några pot eller potV2 -medlemsfunktioner anropas måste en pot eller potV2 -instans skapas, enligt nedan:

/* This constructor is required when using VS Code.
Potentiometer configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create a potV2 instance in Port A
potV2 PotentiometerV2A = potV2(Brain.ThreeWirePort.A);

angle#

Returnerar potentiometerns vinkelposition.

1 — Den här funktionen representerar vinkeln som en procentandel.

int32_t angle (
  percentUnits units = percentUnits::pct );

2 — Denna funktion representerar vinkeln som de valda rotationsenheterna.

double angle(
  rotationUnits units );

Parameters

Parameter

Typ

Beskrivning

units

percentUnits

Enheten som representerar positionen som en procentandel av full rotation: percent / pct (standard) — procent, från 0 till 100 %.

units

rotationUnits

Enheten som representerar vinkeln:

  • deg / degrees — grader, från 0 till 250 för en potentiometer eller 0 till 330 för en potentiometer V2
  • turns / rev — varv

Return Values

Returer:

  • En int32_t när percentUnits används.

  • En double när man använder rotationUnits.

Examples
// Get the current angle of the Potentiometer V2 in the
// range 0 to 330 degrees.
double angle = PotentiometerV2A.angle(degrees);

// Print the current angle of the Potentiometer to the
// brain screen.
Brain.Screen.print(angle);