회전 센서#

소개#

회전 센서는 축의 회전을 측정합니다. 이 센서는 축이 회전하는 로봇의 어느 부분에든 사용할 수 있으며, 축이 모터에 직접 연결되어 있지 않은 경우에도 사용 가능합니다.

모터에는 자체 회전을 추적할 수 있는 내장형 엔코더가 있습니다. 회전 센서는 별도의 축의 회전을 추적할 수 있는 외부 엔코더처럼 작동합니다.

회전 센서는 샤프트의 각도, 위치 및 속도를 반환합니다. 각도는 0도에서 359.99도까지의 샤프트의 절대 위치입니다. 프로젝트 시작 시 또는 로봇 전원이 꺼져도 각도 값은 초기화되지 않습니다. 위치는 프로젝트 진행 중 샤프트가 앞뒤로 회전한 각도 또는 회전 수를 추적하며, 필요에 따라 초기화할 수 있습니다.

회전 센서는 1/8인치 및 1/4인치 표준 VEX 샤프트와 호환됩니다.

VEX V5 회전 센서.

이 페이지에서는 회전 센서 이름으로 rotation_sensor 예시로 사용합니다. 필요에 따라 구성된 이름으로 교체하십시오.

다음은 사용 가능한 방법 목록입니다.

  • set_position — 회전 센서의 현재 위치를 특정 값으로 설정합니다.

  • angle — 샤프트의 현재 각도를 0~359.99도에서 반환합니다.

  • position — 샤프트가 회전한 각도 또는 회전 수를 반환합니다.

  • velocity — 샤프트가 회전하는 속도를 반환합니다.

  • reset_position — 회전 센서의 현재 위치를 0으로 재설정합니다.

  • set_reversed — 회전 센서의 출력이 반전되는지 여부를 설정합니다.

  • changed — 회전 센서의 값이 변경될 때마다 실행될 함수를 등록합니다.

생성자 — 회전 센서를 수동으로 초기화합니다.

  • Rotation — 회전 센서를 생성합니다.

위치 설정#

set_position 은 회전 센서의 현재 위치를 값으로 설정합니다.

위치는 작업 중 축이 회전한 거리를 나타냅니다. 위치를 설정하면 축을 움직이지 않고 현재 위치 값을 변경할 수 있습니다.

Usage:
rotation_sensor.set_position(position, units)

매개변수

설명

position

회전 센서에 할당할 위치 값입니다. 정수 또는 소수일 수 있습니다.

units

선택 사항입니다. 위치 단위: DEGREES (기본값) 또는 TURNS.

# Set the Rotation Sensor to 2.5 Turns
rotation_sensor.set_position(2.5, TURNS)

각도#

angle 축의 현재 각도를 부동 소수점 값으로 반환합니다.

각도는 0도에서 359.99도 사이의 한 회전 범위 내에서 축의 절대 위치를 보고합니다. 프로젝트가 시작되거나 로봇의 전원이 꺼져도 이 값은 초기화되지 않습니다.

Usage:
rotation_sensor.angle(units)

매개변수

설명

units

선택 사항입니다. 각도 단위: DEGREES 회(기본값) 또는 TURNS 회.

위치#

position 축이 회전한 거리를 반환합니다.

각도와 달리 위치는 359.99도를 초과하거나 0도 미만으로 감소할 수 있습니다. 위치는 작업 중 축이 앞뒤로 회전하는 거리를 추적하며 필요에 따라 재설정할 수 있습니다.

Usage:
rotation_sensor.position(units)

매개변수

설명

units

선택 사항입니다. 위치 단위: DEGREES (기본값) 또는 TURNS.

속도#

velocity 축이 회전하는 속도를 반환합니다.

Usage:
rotation_sensor.velocity(units)

매개변수

설명

units

속도 단위: VelocityUnits.RPM (분당 회전수) 또는 VelocityUnits.DPS (초당 각도).

리셋_위치#

reset_position 은 회전 센서의 현재 위치를 0으로 재설정합니다.

Usage:
rotation_sensor.reset_position()

매개변수

설명

이 메서드에는 매개변수가 없습니다.

set_reversed#

set_reversed 은 회전 센서의 출력이 반전되는지 여부를 설정합니다.

반전되면 양수 값은 음수가 되고 음수 값은 양수가 됩니다. 이 방법은 Rotation 생성자를 사용할 때 reverse 매개변수를 True 으로 설정하는 것과 동일하게 작동합니다.

Usage:
rotation_sensor.set_reversed(value)

매개변수

설명

value

회전 센서 출력 반전 여부: True 또는 False.

변경됨#

changed 회전 센서의 값이 변경될 때마다 호출될 함수를 등록합니다.

Usage:
rotation_sensor.changed(callback, arg)

매개변수

설명

callback

회전 센서의 값이 변경될 때 실행되는 이전에 정의된 함수입니다.

arg

선택 사항입니다. 콜백 함수에 전달할 인수를 포함하는 튜플입니다. 자세한 내용은 매개변수가 있는 함수 사용을 참조하세요.

def my_function():
  brain.screen.print("Rotated!")

# Call my_function whenever rotation_sensor's value changes
rotation_sensor.changed(my_function)

건설자#

생성자는 VEXcode 외부에서 회전 센서를 구성할 때와 같이 Rotation 객체를 수동으로 생성하는 데 사용됩니다.

Rotation#

Rotation 회전 센서 객체를 생성합니다.

Usage:
Rotation(smartport)

매개변수

설명

smartport

회전 센서가 연결된 스마트 포트는 Ports.PORTx형식으로 표기되며, 여기서 x 포트 번호입니다.

reverse

선택 사항입니다. 회전 센서 출력 방향을 반전할지 여부: True 또는 False (기본값).

# Create an inverted Rotation Sensor in Port 10
rotation_sensor = Rotation(Ports.PORT10, True)