빅터 883 모터#

소개#

motor_victor 클래스는 3선 포트에 연결된 Victor 883 모터 컨트롤러를 제어하는 ​​데 사용됩니다. Victor 883 모터 컨트롤러는 EXP 브레인에서 PWM 신호를 전송하여 스마트 포트에 직접 연결할 수 없는 호환 가능한 VEXpro 또는 VEX EDR DC 모터를 제어합니다.

Victor 883 모터 컨트롤러는 VEXcode에서 구성할 수 없으며 사용하려면 코드에서 수동으로 구성해야 합니다.

클래스 생성자#

1 — 지정된 3선 포트에 연결된 Victor 883 모터 컨트롤러 motor_victor 객체를 생성합니다.

motor_victor( triport::port& port );

2 — 지정된 3선 포트에 motor_victor 객체를 생성하고 선택적으로 방향을 반전시킵니다.

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

클래스 소멸자#

motor_victor 객체를 파괴하고 관련 리소스를 해제합니다.

~motor_victor();

매개변수#

매개변수

유형

설명

port

triport::port&

Victor 883 모터가 연결되는 3선 포트는 Brain.ThreeWirePort.X 또는 ExpanderName.X형식으로 표기되며, 여기서 X 는 포트 문자입니다(예: Brain.ThreeWirePort.A 또는 Expander1.A).

reverse

bool

모터의 회전 방향을 반전시킬지 여부를 설정합니다.

  • false (기본값) — 모터의 회전 방향을 반전시키지 않습니다.
  • true — 모터의 회전 방향을 반전시킵니다.

예#

// 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 Functions

1 — 현재 설정된 모터 속도를 사용하여 모터를 회전시킵니다.

void spin(
 directionType dir );

2 — 모터를 지정된 속도로 회전시킵니다.

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

Parameters

매개변수

유형

설명

dir

directionType

모터 회전 방향: forward 또는 reverse.

velocity

double

percent 사용할 때 0%에서 100%까지 회전 속도를 조절합니다.

units

velocityUnits

속도 단위:

  • percent pct — 퍼센트
  • rpm — 분당 회전수
  • dps — 초당 도

Return Values

이 함수는 값을 반환하지 않습니다.

Notes
  • 모터는 stop가 호출되거나 다른 동작 기능이 실행될 때까지 계속 회전합니다.

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#

모터의 회전을 멈춥니다.

Available Functions
void stop();

Parameters

이 함수는 매개변수를 받지 않습니다.

Return Values

이 함수는 값을 반환하지 않습니다.

Notes
  • stop 누르는 순간 모터의 모든 작동이 즉시 멈춥니다.

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

setVelocity#

모터의 회전 속도를 조절하는 값입니다. 백분율이 높을수록 모터 회전 속도가 빨라지고, 백분율이 낮을수록 모터 회전 속도가 느려집니다.

모든 프로젝트는 연결된 각 모터가 기본적으로 50% 속도로 회전하는 것으로 시작합니다.

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

Parameters

매개변수

유형

설명

velocity

double

percent 사용할 때 0%에서 100%까지 회전 속도를 조절합니다.

units

percentUnits

속도 단위:percent pct 퍼센트

Return Values

이 함수는 값을 반환하지 않습니다.

Notes
  • 속도를 명시적으로 지정하지 않는 후속 Victor 883 모터 운동 기능(예: spin)은 이 값을 사용합니다.

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

setReversed#

모터의 회전 방향을 반전시킬지 여부를 설정합니다.

Available Functions
void setReversed( bool value );

Parameters

매개변수

유형

설명

value

bool

모터 회전 방향 반전 여부:

  • true — 모터 회전 방향을 반전합니다.
  • false — 모터 회전 방향을 기본값으로 되돌립니다.

Return Values

이 함수는 값을 반환하지 않습니다.

Notes
  • 이는 생성자에서 reverse 바꾸는 것과 같습니다.

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