Victor 883 Motor#

Zavedení#

Třída motor_victor se používá k řízení regulátoru motoru Victor 883 připojeného k 3vodičovému portu. Regulátor motoru Victor 883 odesílá signál PWM z V5 Brain pro řízení kompatibilních stejnosměrných motorů VEXpro nebo VEX EDR, které nelze připojit přímo k inteligentním portům.

Řídicí jednotku motoru Victor 883 nelze konfigurovat ve VEXcode a pro použití je nutné ji ručně sestavit v kódu.

Konstruktory tříd#

1 — Vytvoří objekt motor_victor pro řídicí jednotku motoru Victor 883 připojenou k zadanému 3vodičovému portu.

motor_victor( triport::port& port );

2 — Vytvoří objekt motor_victor na zadaném 3vodičovém portu a volitelně obrátí jeho směr.

motor_victor(
 triport::port& port,
 bool           reverse );

Destruktor tříd#

Zničí objekt motor_victor a uvolní přidružené zdroje.

~motor_victor();

Parametry#

Parametr

Typ

Popis

port

triport::port&

3vodičový port, ke kterému je připojen motor Victor 883, zapsaný jako Brain.ThreeWirePort.X nebo ExpanderName.X, kde X je písmeno portu (například Brain.ThreeWirePort.A nebo Expander1.A).

reverse

bool

Nastavuje, zda se má obrátit směr otáčení motoru:

  • false (výchozí) — Neobrací směr otáčení motoru.
  • true — Obrací směr otáčení motoru.

Příklad#

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

Členské funkce#

Třída motor_victor obsahuje následující členské funkce:

  • spin — Roztočí motor v zadaném směru.

  • stop — Zastaví motor.

  • setVelocity — Říká motoru, jak rychle se má otáčet.

  • setReversed — Nastaví směr otáčení motoru, zda se má obrátit, nebo ne.

Před voláním jakékoli členské funkce motor_victor musí být vytvořena instance motor_victor , jak je znázorněno níže:

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

Otáčí motor v daném směru navždy.

Available Functions

1 — Roztočí motor s použitím aktuálně nakonfigurované rychlosti motoru.

void spin(
 directionType dir );

2 — Roztočí motor zadanou rychlostí.

void spin(
 directionType dir,
 double        velocity,
 velocityUnits units );

Parameters

Parametr

Typ

Popis

dir

directionType

Směr otáčení motoru: forward nebo reverse.

velocity

double

Rychlost otáčení od 0 % do 100 % při použití percent.

units

velocityUnits

Jednotka rychlosti:

  • percent / pct — procenta
  • rpm — otáčky za minutu
  • dps — stupně za sekundu

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Motor se bude otáčet, dokud nebude volána funkce stop nebo dokud nebude provedena jiná pohybová funkce.

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

Zastaví otáčení motoru.

Available Functions
void stop();

Parameters

Tato funkce nepřijímá žádné parametry.

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Volání stop okamžitě zastaví jakýkoli aktuální pohyb motoru.

Examples
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();

setVelocity#

Říká motoru, jak rychle se má otáčet. Vyšší procento způsobí, že se motor otáčí rychleji, a nižší procento, že se motor otáčí pomaleji.

Každý projekt začíná s každým připojeným motorem, který se standardně otáčí rychlostí 50 %.

Available Functions
void setVelocity(
    double       velocity,
    percentUnits units );

Parameters

Parametr

Typ

Popis

velocity

double

Rychlost otáčení od 0 % do 100 % při použití percent.

units

percentUnits

Jednotka rychlosti:percent / pct — procenta

Return Values

Tato funkce nevrací hodnotu.

Notes
  • Jakákoli následná funkce pohybu motoru Victor 883 (například spin), která explicitně neurčuje rychlost, použije tuto hodnotu.

Examples
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);

setReversed#

Nastavuje směr otáčení motoru, zda bude obrácen nebo ne.

Available Functions
void setReversed( bool value );

Parameters

Parametr

Typ

Popis

value

bool

Zda je směr otáčení motoru obrácen:

  • true — Obrací směr otáčení motoru.
  • false — Vrátí směr otáčení motoru na výchozí hodnotu.

Return Values

Tato funkce nevrací hodnotu.

Notes
  • To je stejné jako změna parametru reverse v konstruktoru.

Examples
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse