Potenciómetro#

Introdução#

As classes pot e potV2 são utilizadas com potenciómetros, que são sensores analógicos que medem a posição angular de um eixo rotativo. Um potenciómetro emite uma tensão proporcional à sua posição.

Dependendo da versão do potenciómetro, a quantidade de rotação que consegue detetar varia:

  • Potenciómetro - Até 250 graus

  • Potenciómetro V2 - 330 graus (Contínuo)

O potenciómetro VEX V5 V1.

O potenciómetro VEX V5 V2.

Potenciómetro

Potenciómetro V2

Potenciómetro#

Class Constructors#

pot(
  triport::port &port );

Class Destructor#

Destrói o objeto pot e liberta os recursos associados.

~pot();

Parameters#

Parâmetro

Tipo

Descrição

port

triport::port &

A porta de 3 fios à qual o potenciómetro está ligado, escrita como Brain.ThreeWirePort.X ou ExpanderName.X, em que X é a letra da porta (por exemplo, Brain.ThreeWirePort.A ou Expander1.A).

Example#

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

Potenciómetro V2#

Class Constructors#

potV2(
  triport::port &port );

Class Destructor#

Destrói o objeto potV2 e liberta os recursos associados.

~potV2();

Parameters#

Parâmetro

Tipo

Descrição

port

triport::port &

A porta de 3 fios à qual o potenciómetro V2 está ligado, escrita como Brain.ThreeWirePort.X ou ExpanderName.X, em que X é a letra da porta (por exemplo, Brain.ThreeWirePort.A ou Expander1.A).

Examples#

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

Funções de membro#

As classes pot e potV2 incluem as seguintes funções membro:

  • angle — Devolve a posição angular do potenciómetro em graus ou em percentagem.

Antes de chamar qualquer função membro pot ou potV2 , deve ser criada uma instância pot ou potV2 , como se mostra abaixo:

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

Retorna a posição angular do potenciómetro.

1 — Esta função representa o ângulo em percentagem.

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

2 — Esta função representa o ângulo nas unidades de rotação escolhidas.

double angle(
  rotationUnits units );

Parameters

Parâmetro

Tipo

Descrição

units

percentUnits

A unidade que representa a posição em percentagem da rotação completa: percent pct (padrão) — percentagem, de 0 a 100%.

units

rotationUnits

The unit that represents the angle:

  • deg / degrees — degrees, from 0 to 250 for a Potentiometer or 0 to 330 for a Potentiometer V2
  • turns / rev — revolutions

Return Values

Devoluções:

  • Um int32_t quando se utiliza percentUnits.

  • Um double quando se utilizam 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);