Silnik Victor 883#
Wstęp#
Klasa motor_victor służy do sterowania sterownikiem silnika Victor 883 podłączonym do portu 3-żyłowego. Sterownik silnika Victor 883 wysyła sygnał PWM z modułu EXP Brain w celu sterowania kompatybilnymi silnikami prądu stałego VEXpro lub VEX EDR, których nie można podłączyć bezpośrednio do portów Smart Port.
Kontrolera silnika Victor 883 nie można skonfigurować w programie VEXcode. Aby można było z niego korzystać, należy go ręcznie utworzyć w kodzie.
Konstruktory klas#
1 — Tworzy obiekt motor_victor
motor_victordla sterownika silnika Victor 883 podłączonego do określonego portu 3-przewodowego.motor_victor( triport::port& port );
2 — Tworzy obiekt
motor_victorna określonym porcie 3-przewodowym i opcjonalnie odwraca jego kierunek.motor_victor( triport::port& port, bool reverse );
Destruktor klasy#
Niszczy obiekt motor_victor i zwalnia powiązane zasoby.
~motor_victor();
Parametry#
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Port 3-żyłowy, do którego podłączony jest silnik Victor 883, zapisany jako |
|
|
Ustawia, czy kierunek wirowania silnika jest odwrócony:
|
Przykład#
// 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);
Funkcje członkowskie#
Klasa motor_victor zawiera następujące funkcje członkowskie:
spin— Obraca silnik w określonym kierunku.stop— Zatrzymuje silnik.setVelocity— Informuje silnik, jak szybko ma się kręcić.setReversed— Ustawia kierunek silnika, który ma być odwrócony lub nie.
Przed wywołaniem jakiejkolwiek funkcji członkowskiej motor_victor motor_victor należy utworzyć instancję motor_victor motor_victor , jak pokazano poniżej:
/* 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#
Obraca silnik w określonym kierunku w nieskończoność.
Available Functions1 — Obraca silnik, wykorzystując aktualnie skonfigurowaną prędkość silnika.
void spin( directionType dir );
Parameters2 — Obraca silnik z określoną prędkością.
void spin( directionType dir, double velocity, velocityUnits units );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Kierunek, w którym kręci się silnik: |
|
|
Prędkość wirowania od 0% do 100% przy użyciu |
|
|
Jednostka prędkości:
|
Ta funkcja nie zwraca wartości.
NotesSilnik będzie się obracał, aż do wywołania funkcji
stoplub wykonania innej funkcji ruchu.
// 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#
Zatrzymuje obracanie się silnika.
Available Functionsvoid stop();
Ta funkcja nie przyjmuje żadnych parametrów.
Return ValuesTa funkcja nie zwraca wartości.
NotesWybranie polecenia
stoppowoduje natychmiastowe zatrzymanie bieżącego ruchu silnika.
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
setVelocity#
Informuje silnik, jak szybko ma się kręcić. Wyższy procent powoduje, że silnik obraca się szybciej, a niższy procent powoduje, że obraca się wolniej.
Każdy projekt rozpoczyna się od tego, że każdy podłączony silnik domyślnie obraca się z prędkością równą 50%.
Available Functionsvoid setVelocity(
double velocity,
percentUnits units );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Prędkość wirowania od 0% do 100% przy użyciu |
|
|
Jednostka prędkości: |
Ta funkcja nie zwraca wartości.
NotesKażda kolejna funkcja ruchu silnika Victor 883 (taka jak
spin), która nie określa jawnie prędkości, będzie używać tej wartości.
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);
setReversed#
Ustawia kierunek obrotów silnika, aby był odwrócony lub nie.
Available Functionsvoid setReversed( bool value );
Parametr |
Typ |
Opis |
|---|---|---|
|
|
Czy kierunek obrotów silnika jest odwrócony:
|
Ta funkcja nie zwraca wartości.
NotesJest to to samo, co zmiana parametru
reversew konstruktorze.
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse