경쟁 연결: 전환점 - 파이썬
로봇 기능
2018~2019년 VEX 로봇 경연대회 게임 Turning Point에서는 플레이어가 다른 게임 요소 사이에서 플래그를 전환해야 했습니다. 깃발은 총 9개였습니다. 로봇이 움직일 수 있는 아래쪽 깃발 3개와 경쟁용 공놀이 조각으로 치면 움직일 수 있는 위쪽 깃발 6개였습니다. 경쟁팀은 공 발사기를 이용해 더 높은 깃발을 맞추는 방법을 생각해내야 했습니다. 상상해 보세요. 로봇이 공놀이 조각을 이용해 깃발을 치도록 프로그래밍하는 것이 항상 정확하지는 않을 수도 있습니다. 로봇이 자율 주행 중에 잘못된 방향으로 한 번만 돌면 계산이 틀어져 플래그가 하나도 맞지 않을 가능성이 있습니다. 마찬가지로, 운전 기술 챌린지의 경우, 팀이 공을 제대로 던질 수 있을 만큼 로봇을 수동으로 정렬하는 것이 어려울 수 있습니다. 따라서 숙련된 팀은 비전 센서를 사용하여 로봇을 프로그래밍하여 깃발을 감지한 다음 로봇을 올바르게 정렬하여 정확한 사격을 할 수 있도록 합니다.
학습을 확장하세요
이 활동을 확장하려면 학생들에게 로봇이 이 경쟁 게임에 사용할 수 있는 감지된 노란색 물체를 향해 이동하는 프로젝트를 설계하고 구성해 보라고 하세요!
학생들에게 다음을 하도록 하세요.
-
Clawbot(구동계, 2모터, 자이로 없음) 템플릿 예제 프로젝트를 엽니다.

- 비전 센서를 프로그래밍할 때 Detecting Objects (Vision) 예제 프로젝트를 참고 자료로 사용하세요. 비전 센서를 프로그래밍할 때 Detecting Objects (Vision) 예제 프로젝트를 참고 자료로 사용하세요. (Google Doc / .v5python).
-
Clawbot(구동계, 2모터, 자이로 없음) 구성에 비전 센서를 추가한 다음 비전 센서가 빨간색과 파란색 물체를 감지하도록 구성합니다. 자세한 내용은 비전 센서 구성 문서을 참조하세요.

- 감지된 물체를 향해 클로봇을 이동하도록 프로그래밍합니다. 클로봇은 마치 깃발을 흔들듯이 팔을 들어올리도록 프로그래밍할 수도 있습니다!
- 프로젝트를 다운로드하고 실행하여 Vision Sensor가 VRC Turning Point 게임의 노란색 공과 같은 노란색 물체를 감지할 수 있는지 관찰합니다. 비전 센서가 물체를 감지할 수 있다면, 로봇은 감지된 물체에 따라 움직일까요? 프로젝트를 다운로드하고 실행하는 데 도움이 필요이 문서를 참조하세요.
- 시간이 허락한다면 Turning Point 경기장과 비슷한 게임 경기장을 마련해 보세요. 비전 센서를 사용해 로봇이 움직여 점수를 획득하는 연습을 해보세요!
아래에서 샘플 솔루션을 확인하세요.
# 라이브러리 가져오기
from vex import *
# 프로젝트 코드 시작
check_yellow = Event()
def check_yellow_callback():
brain.screen.set_font(FontType.MONO40)
brain.screen.clear_row(3)
brain.screen.set_cursor(3, 1)
vision_5_objects = vision_5.take_snapshot(vision_5__YELLOWBOX)
if (vision_5_objects):
arm_motor.spin_for(FORWARD, 300, DEGREES)
claw_motor.spin_for(FORWARD, 100, DEGREES)
drivetrain.drive_for(FORWARD, 12, INCHES)
arm_motor.spin_for(REVERSE, 300, DEGREES)
claw_motor.spin_for(REVERSE, 100, DEGREES)
else:
brain.screen.print("노란색 물체 없음")
# 시스템 이벤트 핸들러
check_yellow(check_yellow_callback)
# 이벤트 핸들러가 사용 가능한지 확인하기 위한 짧은 지연
wait(15, MSEC)
# 새로운 센서 데이터를 확인하기 위해 지속적으로 실행
while True:
check_blue.broadcast_and_wait()
wait(105, MSEC)