Potentiometer#

Introduction#

The pot class provides access to angle measurements from a VEX 3-Wire Potentiometer connected to the V5 Brain or a 3-Wire Expander.

The potV2 class provides access to angle measurements from the VEX Potentiometer V2. Both classes allow the robot to track rotational position using a 3-Wire port.

Potentiometer#

Class Constructors#

pot(
  triport::port &port );

Class Destructor#

Destroys the pot object and releases associated resources.

~pot();

Parameters#

Parameter

Type

Description

port

triport::port &

The 3-Wire Port the Potentiometer 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).

Example#

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

Potentiometer V2#

Class Constructors#

potV2(
  triport::port &port );

Class Destructor#

Destroys the potV2 object and releases associated resources.

~potV2();

Parameters#

Parameter

Type

Description

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

Member Functions#

The pot and potV2 classes include the following member functions:

  • angle — Returns the angle detected by the Potentiometer.

Before calling any pot or potV2 member functions, a pot or potV2 instance must be created, as shown below:

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

Returns the angle measured by the Potentiometer.

1 This function represents the angle as a percent.

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

2 This function represents the angle as the chosen rotation units.

double angle( 
 rotationUnits units );

Parameters

Parameter

Type

Description

units

  • percentUnits
  • rotationUnits

The unit that represents the angle:

  • degrees
  • percent (leaving the arguments empty will also return angle as a percent)
  • turns
Return Values

Returns either an int32_t or a double.

Examples
// Get the current angle of the Potentiometer in the
// range 0 - 250 degrees.
double angle = PotentiometerV2A.angle(degrees);

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