Motor Victor 883#
Introdução#
A classe motor_victor é utilizada para controlar um controlador de motor Victor 883 ligado a uma porta de 3 fios. O controlador de motor Victor 883 envia um sinal PWM do V5 Brain para controlar motores CC VEXpro ou VEX EDR compatíveis que não podem ser ligados diretamente às portas inteligentes.
O controlador de motor Victor 883 não pode ser configurado no VEXcode e tem de ser construído manualmente em código para ser utilizado.
Construtores de Classes#
1 — Cria um objeto
motor_victorpara o Controlador de Motor Victor 883 ligado à Porta de 3 Fios especificada.motor_victor( triport::port& port );
2 — Cria um objeto
motor_victorna porta de 3 fios especificada e, opcionalmente, inverte o seu sentido.motor_victor( triport::port& port, bool reverse );
Destrutor de classes#
Destrói o objeto motor_victor e liberta os recursos associados.
~motor_victor();
Parâmetros#
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
|
A porta de 3 fios à qual o motor Victor 883 está ligado, escrita como |
|
|
Define se o sentido de rotação do motor será invertido:
|
Exemplo#
// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);
// Create the motor_victor instance with reversed direction
motor_victor victor2 = motor_victor(Brain.ThreeWirePort.B, true);
Funções de membro#
A classe motor_victor inclui as seguintes funções membro:
spin— Roda o motor numa direcção especificada.stop— Para o motor.setVelocity— Indica ao motor a velocidade de rotação.setReversed— Define se o sentido do motor deve ser invertido ou não.
Antes de chamar qualquer função membro de motor_victor , deve ser criada uma instância de motor_victor ), como se mostra abaixo:
/* This constructor is required to use a
Victor 883 Motor. Replace the values
as needed. */
// Create the motor_victor instance on 3-Wire Port A
motor_victor victor = motor_victor(Brain.ThreeWirePort.A);
spin#
Faz com que o motor gire na direção especificada indefinidamente.
Available Functions1 — Aciona o motor utilizando a velocidade do motor atualmente configurada.
void spin( directionType dir );
Parameters2 — Roda o motor à velocidade especificada.
void spin( directionType dir, double velocity, velocityUnits units );
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
|
O sentido de rotação do motor: |
|
|
A velocidade de rotação de 0% a 100% quando se utiliza |
|
|
The velocity unit:
|
Esta função não devolve qualquer valor.
NotesO motor continuará a rodar até que
stopseja chamado ou outra função de movimento seja executada.
// Spin forward, then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
// Spin forward at 100 rpm
victor.spin(forward, 100, rpm);
wait(1, seconds);
victor.stop();
stop#
Impede que o motor gire.
Available Functionsvoid stop();
Esta função não aceita qualquer parâmetro.
Return ValuesEsta função não devolve qualquer valor.
NotesChamar o comando
stopinterrompe imediatamente qualquer movimento do motor em curso.
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
setVelocity#
Indica ao motor a velocidade de rotação. Uma percentagem mais elevada faz com que o motor gire mais depressa e uma percentagem mais baixa faz com que o motor gire mais devagar.
Cada projeto começa com cada motor ligado a rodar a 50% da velocidade por defeito.
Available Functionsvoid setVelocity(
double velocity,
percentUnits units );
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
|
A velocidade de rotação de 0% a 100% quando se utiliza |
|
|
Unidade de velocidade: |
Esta função não devolve qualquer valor.
NotesQualquer função de movimento subsequente do motor Victor 883 (como
spin) que não especifique explicitamente uma velocidade utilizará este valor.
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);
setReversed#
Define se a direção do motor será invertida ou não.
Available Functionsvoid setReversed( bool value );
Parâmetro |
Tipo |
Descrição |
|---|---|---|
|
|
Se o sentido de rotação do motor estiver invertido:
|
Esta função não devolve qualquer valor.
NotesIsto é o mesmo que alterar o parâmetro
reverseno construtor.
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse