Servomotor#

Introdução#

A classe servo é utilizada para controlar e configurar um servomotor V5 de 3 fios. O servomotor V5 de 3 fios proporciona um controlo baseado na posição dentro de uma gama de movimento fixa.

O Servomotor VEX de 3 fios

Construtores de Classes#

servo( triport::port& port );

Destrutor de classes#

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

~servo();

Parâmetros#

Parâmetro

Tipo

Descrição

port

triport::port&

A porta de 3 fios à qual o servomotor 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).

Notas#

  • Um Brain ou um Expansor de 3 Fios deve ser criado primeiro antes que possam ser utilizados para criar um objeto com o construtor da classe servo.

Exemplo#

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

Funções de membro#

A classe servo inclui as seguintes funções membro:

  • setPosition — Move o servomotor para uma posição especificada.

Antes de chamar qualquer função membro do servo 1 servo , deve ser criada uma instância do servo 3 servo , como se mostra abaixo:

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

Move o servomotor para uma posição específica.

Um esquema de um servomotor mostrando os graus que pode rodar, de 100 para a esquerda a 50 no centro, até 0 na extrema direita.

Available Functions

1 — Define a posição do servo utilizando um valor percentual.

void setPosition(
 int32_t value,
 percentUnits units );

2 — Define a posição do servo utilizando unidades de rotação.

void setPosition(
 double value,
 rotationUnits units );

Parameters

Parâmetro

Tipo

Descrição

value

int32_t

O valor da posição do servo quando se utilizam unidades percentuais.

value

double

O valor da posição do servo quando se utilizam unidades de rotação.

units

percentUnits

Unidade de medida: percent / pct%

units

rotationUnits

The position unit:

  • deg / degrees — degrees
  • turns / rev — revolutions

Return Values

Esta função não devolve qualquer valor.

Notes
  • Quando se utilizam unidades percentuais, o intervalo válido é de 0 a 100%.

  • Um servo inicia cada projeto centrando-se automaticamente a 50 graus antes de realizar qualquer movimento.

  • Ao utilizar unidades de rotação, o servo irá mover-se para a posição absoluta especificada.

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