Віктор 883 Мотор#
Вступ#
Клас motor_victor використовується для керування контролером двигуна Victor 883, підключеним до 3-провідного порту. Контролер двигуна Victor 883 надсилає ШІМ-сигнал з EXP Brain для керування сумісними двигунами постійного струму VEXpro або VEX EDR, які неможливо підключити безпосередньо до Smart Ports.
Контролер двигуна Victor 883 не можна налаштувати у VEXcode, і для використання його необхідно написати вручну в коді.
Конструктори класів#
1 — Створює об’єкт
motor_victorдля контролера двигуна Victor 883, підключеного до зазначеного 3-провідного порту.motor_victor( triport::port& port );
2 — Створює об’єкт
motor_victorна зазначеному 3-провідному порту та за бажанням змінює його напрямок на протилежний.motor_victor( triport::port& port, bool reverse );
Деструктор класів#
Знищує об’єкт motor_victor та звільняє пов’язані з ним ресурси.
~motor_victor();
Параметри#
Параметр |
Тип |
Опис |
|---|---|---|
|
|
3-провідний порт, до якого підключено двигун Victor 883, записується як |
|
|
Встановлює, чи напрямок обертання двигуна змінюється на зворотний:
|
Приклад#
// 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);
Функції-члени#
Клас motor_victor містить такі функції-члени:
spin— Обертає двигун у заданому напрямку.stop— Зупиняє двигун.setVelocity— Вказує двигуну, з якою швидкістю обертатися.setReversed— Встановлює зворотний напрямок руху двигуна чи ні.
Перед викликом будь-яких функцій-членів motor_victor необхідно створити екземпляр motor_victor , як показано нижче:
/* 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#
Обертає двигун у заданому напрямку безкінечно.
Available Functions1 — Обертає двигун, використовуючи поточну налаштовану швидкість двигуна.
void spin( directionType dir );
Parameters2 — Обертає двигун із заданою швидкістю.
void spin( directionType dir, double velocity, velocityUnits units );
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Напрямок обертання двигуна: |
|
|
Швидкість обертання від 0% до 100% при використанні |
|
|
The velocity unit:
|
Ця функція не повертає значення.
NotesДвигун продовжуватиме обертатися, доки не буде викликана функція
stopабо не буде виконана інша функція руху.
// 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#
Зупиняє обертання двигуна.
Available Functionsvoid stop();
Ця функція не приймає жодних параметрів.
Return ValuesЦя функція не повертає значення.
NotesВиклик
stopнегайно зупиняє будь-який поточний рух двигуна.
// Spin and then stop
victor.spin(forward);
wait(1, seconds);
victor.stop();
setVelocity#
Вказує швидкість обертання двигуна. Вищий відсоток змушує двигун обертатися швидше, а нижчий — повільніше.
Кожен проект починається з того, що кожен підключений двигун обертається зі швидкістю 50% за замовчуванням.
Available Functionsvoid setVelocity(
double velocity,
percentUnits units );
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Швидкість обертання від 0% до 100% при використанні |
|
|
Одиниця швидкості: |
Ця функція не повертає значення.
NotesБудь-яка наступна функція руху двигуна Victor 883 (наприклад,
spin), яка явно не вказує швидкість, використовуватиме це значення.
// Set velocity to 50%, then spin
victor.setVelocity(50, percent);
victor.spin(forward);
setReversed#
Встановлює зворотний напрямок обертання двигуна чи ні.
Available Functionsvoid setReversed( bool value );
Параметр |
Тип |
Опис |
|---|---|---|
|
|
Чи змінено напрямок обертання двигуна на зворотний:
|
Ця функція не повертає значення.
NotesЦе те саме, що змінити параметр
reverseу конструкторі.
// Reverse the motor direction
victor.setReversed(true);
victor.spin(forward); // Will actually spin in reverse