VEXcode VR에서 위치 센서 사용

VR 로봇에는 위치 센서를 포함한 다양한 센서가 있습니다.


VR 로봇의 위치 센서

VEXcode VR 플레이그라운드에서 위치 센서가 제공하는 로봇의 X, Y 좌표를 표시합니다.

VR 로봇 VR 로봇의 (X, Y) 위치를 보고하는 위치 센서가 내장되어 있습니다. VR 로봇의 위치는 중심 전환점에 따라 결정됩니다. 이는 VR 로봇의 펜 위치이기도 합니다.

플레이그라운드에서 VR 로봇의 X, Y 좌표를 표시하는 위치 센서

위치 센서는 또한 나침반 방향 스타일에 따라 0도에서 359.9도 범위의 위치 각도를 보고합니다.

VEXcode VR 로봇 전면에 위치한 위치 센서

각 플레이그라운드의 범위는 X 및 Y 위치에 대해 -1000mm부터 1000mm까지입니다. VR 로봇의 시작 위치는 선택된 놀이터 에 따라 달라집니다. 놀이터 및 좌표계의 위치 세부정보에 대한 자세한 내용은 다음 문서를 참조하세요.

플레이그라운드의 VR 로봇에 위치 센서가 강조 표시되어 있습니다.

위치 센서 값은 VEXcode VR의 대시보드에 표시될 수 있습니다. 대시보드에 대해 자세히 알아보려면 대시보드 - 플레이그라운드 기능 - VEXcode VR 문서를 참조하세요.

VEXcode VR 툴바의 위치 센서 버튼

위치 센서 값은 VEXcode VR의 모니터 콘솔에 표시될 수 있습니다.


위치 센서의 일반적인 용도

VR 로봇의 위치 센서는 다양한 방법으로 사용될 수 있습니다.

VEXcode VR 블록 캐슬 크래셔 놀이터
위치 센서는 VR 로봇의 X축 및 Y축 위치를 플레이그라운드 그리드 상에 표시합니다. VR 로봇에 장착된 위치 센서의 위치는 x, y 좌표를 측정하는 데 사용됩니다.
VEXcode VR 파이썬
def main():
위치가 아닌 동안.위치(Y, MM) > -300:
드라이브트레인.드라이브(FORWARD)
대기(20, MSEC)
드라이브트레인.stop()

위치 센서를 사용하여 모든 놀이터의 좌표를 탐색할 수 있습니다. 각 플레이그라운드의 범위는 X 및 Y 위치에 대해 -1000mm에서 1000mm입니다.

예를 들어 VR 로봇이 Y축의 특정 값을 넘으면 멈추도록 하려면 Y축의 임계값을 해당 값보다 크게 설정할 수 있습니다. Castle Crasher Playground 의 이 중앙 성은 Y 값 -250에 가깝습니다. 따라서 예제 프로젝트에서는 VR 로봇이 -300보다 큰 Y 값을 통과한 후 주행을 중지하고 성과 충돌하지 않도록 설정합니다.

VEXcode VR 블록 디스크 무버 플레이그라운드
위치 센서는 VR 로봇의 X, Y 좌표를 플레이그라운드에 표시합니다. 위치 센서가 플레이그라운드 그리드 상에서 VR 로봇의 X, Y 좌표를 보고합니다.
VEXcode VR 파이썬
def main():
드라이브트레인.턴_for(RIGHT, 90, DEGREES)
위치가 아닌 동안.위치(X, MM) > 800:
드라이브트레인.드라이브(FORWARD)
대기(20, MSEC)
드라이브트레인.턴_for(LEFT , 90, DEGREES)
위치가 아닌 동안. 위치(Y, MM) > -100:
드라이브트레인.드라이브(FORWARD)
대기(20, MSEC)
드라이브트레인.스톱()
자석.에너지화(BOOST)

위치 센서를 사용하여 VR 로봇을 알려진 위치로 이동할 수도 있습니다. 이 프로젝트에서 첫 번째 녹색 디스크는 (800, -200) 위치에 있는 것으로 보입니다. 해당 지점에 도달하기 위해 VR 로봇은 800에 도달할 때까지 X축을 따라 운전한 다음 -200에 도달할 때까지 Y축을 따라 디스크를 집어들 수 있습니다.

VEXcode VR 블록 아트 캔버스 놀이터
위치 센서가 VR 로봇의 X, Y 좌표를 플레이그라운드 그리드 상에 표시합니다. 플레이그라운드 툴바의 위치 센서 버튼
VEXcode VR 파이썬
def main
):
pen.move(DOWN)
(FORWARD, 400, MM)
while location.position_angle(DEGREES) < 89: 4drivetrain.turn(RIGHT)
wait(20, MSEC)
펜 .set_pen_color(RED)
드라이브트레인.drive_for(앞으로, 400, MM)

위치 센서는 VR 로봇의 현재 각도를 결정하는 데에도 사용할 수 있습니다. 이 프로젝트에서 VR 로봇은 앞으로 나아간 다음 우회전합니다. VR 로봇의 각도가 89도보다 커질 때까지 기다린 다음 펜 색상을 빨간색으로 변경하고 400mm 더 앞으로 이동합니다.

대시보드의 위치 각도는 정확히 90도나 89.1도가 아닌 92도입니다. 프로젝트의 흐름이 진행되고 각 명령이 실행될 때마다 처리하는 데 시간이 걸리기 때문입니다. 따라서 92도는 실수가 아니며 VR 로봇의 처리 시간과 속도로 인해 의도된 것입니다.


VEXcode VR 블록에서 위치 센서 사용

(로봇의 위치) 블록

위치 센서가 VR 로봇의 X, Y 좌표를 플레이그라운드 그리드 상에 표시합니다.

(로봇의 위치) 블록은 VR 로봇의 X 또는 Y 좌표 위치를 보고합니다.

VEXcode VR 툴바의 위치 센서 버튼

X 또는 Y 좌표 위치는 블록의 드롭다운 메뉴에서 선택할 수 있습니다.

VR 로봇 앞 범퍼에 있는 위치 센서의 위치

블록의 드롭다운 메뉴에서 mm 또는 인치 단위를 선택할 수 있습니다.

(위치 각도(도) 블록

VEXcode VR 플레이그라운드에서 위치 센서로부터 로봇의 X 위치, Y 위치 및 방향 값을 표시합니다.

(위치 각도(도)) 블록은 VR 로봇의 각도를 가장 가까운 10분의 1 자리까지 보고합니다. 값 범위는 0.0~359.9도입니다.


VEXcode VR Python에서 위치 센서 사용

VR 로봇에 장착된 위치 센서는 X, Y 좌표를 추적하는 데 사용됩니다.

Python으로 위치 센서 프로그래밍을 시작하려면 먼저 VEXcode VR에서 새 텍스트 프로젝트를 열어야 합니다. 자세한 내용은 이 기사를 참조하세요.

플레이그라운드 그리드 상에서 VR 로봇의 위치 센서 X 및 Y 좌표

position명령은 VR 로봇의 X 또는 Y 좌표 위치를 보고합니다.

position angle 명령은 VR 로봇의 각도를 도 단위로 보고합니다.

이러한 명령 중 하나를 프로젝트에 추가하려면 도구 상자에서 명령을 끌어오거나 자동 완성 기능을 사용하여 작업 공간에 명령을 입력하면 됩니다. Python을 사용한 VEXcode VR의 자동완성에 대해 자세히 알아보려면 이 문서를 참조하세요.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: