Skip to main content

사용자 인터페이스로서의 컨트롤러

3개의 모자 블록이 있는 VEXcode IQ 프로젝트. When started 블록에 부착된 왼쪽에는 먼저 암 모터와 클로 모터를 정지 상태로 설정하고 클로 모터 속도를 60% 로 설정하고 암 모터 속도를 30% 로 설정하는 블록이 있습니다. 그런 다음 Forever 루프에는 if else 블록이 포함됩니다. If 블록에는 컨트롤러 R Up을 누른 경우 Claw 모터를 가까이 돌리십시오 라고 표시됩니다. ELSE 분기에는 If else 블록이 포함되어 있으며, 이 블록에는 If Controller R Down pressed then spin claw motor open, else stop clawmotor가 표시됩니다. 오른쪽 a 컨트롤러 L 업 프레스 이벤트 블록에 스핀 암 모터가 올라가면 컨트롤러 L 업 프레스되지 않을 때까지 기다리십시오. 모터 블록이 부착되지 않도록 하십시오. 컨트롤러 L 다운 버튼을 눌렀을 때 이벤트 블록 아래쪽에 스핀 암 모터가 있습니다. 컨트롤러 L 다운을 누르지 않을 때까지 기다렸다가 암 모터를 멈춥니다.
VEXcode IQ의 컨트롤러 버튼 예제 프로젝트

로봇 원격 제어

우리는 대부분 텔레비전과 상호 작용하기 위해 리모컨을 사용합니다. TV에 원하는 채널이나 정보/액세스 화면을 표시하는 버튼을 누릅니다. 엄밀히 말하면 TV의 리모컨은 UI입니다. 하지만 스마트폰이 사용하는 UI보다 훨씬 덜 정교한 UI입니다. IQ 컨트롤러를

프로그래밍하는 것은 훨씬 더 정교합니다. 드라이버 파트너가 통제하는 경기에서 드라이버 파트너/팀이 최대한 많은 이점을 누릴 수 있기를 바랍니다. 버튼과 조이스틱을 두 개 이상의 간단한 동작을 하도록 프로그래밍할 수 있으며, 버튼/조이스틱을 함께 사용할 때 복잡한 동작을 하도록 프로그래밍할 수 있습니다. 이는 일부 게임 컨트롤러의 작동 방식과 유사합니다. 컨트롤러의 프로그래머는 관련된 모든 버튼에 도달하기 위해 손가락과 손을 배치해야 하는 방법을 파악하여 조합하여 사용할 버튼을 고려합니다. 위의

이미지는 VEXcode IQ의 컨트롤러 버튼 예제 프로젝트의 프로젝트를 보여줍니다. [Forever] 루프에 두 개의 [If then else] 블록이 중첩되어 있는 것이 보이시나요? 이를 통해 프로젝트는 R Up 또는 R Down 버튼이 눌렸는지 확인하고 로봇은 한 번 눌렸을 때 클로 모터를 닫거나 열립니다. 그 [Forever] 루프는 매우 중요합니다. 로봇이 적절한 동작을 수행하도록 IQ 컨트롤러가 어떤 버튼을 누르고 있는지 반복적으로 확인합니다. <and> 작업자 블록에 두 개의 <Controller Pressed> 감지 블록을 넣을 수 있다고

생각하십시오. 그러면 프로젝트가 두 개의 버튼을 누르고 있는지 확인합니다. 또한 다른 블록의 내부에 <and> 블록을 넣고 <and> 동작이 수행되기 전에 세 가지 조건을 확인할 수 있습니다. 이렇게 하면 컨트롤러의 버튼을 눌러 간단히 시작할 수 있는 일련의 동작을 프로그래밍할 수 있습니다. 컨트롤러의 모든 버튼과 조합으로 얼마나 더 많은 조건부 조합을 만들 수 있는지

고려하십시오. 물론, 더 복잡한 동작을 컨트롤러의 기능에 프로그래밍할수록 프로젝트는 로봇이 자율적으로 작동하는 데 더 가까워집니다. 경쟁 팀은 컨트롤러가 행동의 속도와 정확성을 더 잘 제어할 수 있도록 복잡한 순서로 컨트롤러에 프로그래밍하는 가장 좋은 행동과 여러 부분으로 분해되는 가장 좋은 행동을 파악해야 합니다.

교사 팁 아이콘 교사 팁 - 모델링

두 개 이상의 조건을 포함하도록 <and> 블록을 결합하는 것을 상상하기 어려운 경우 학생들을 위해 <and> 블록을 결합하는 방법을 모델링합니다. 예시는 다음과 같습니다.

If 브랜치의 상태에 중첩된 연산자 블록을 보여주는 코드 스니펫. AND 작업자는 전반부에 컨트롤러 E를 아래로 누르고 후반부에 제어 F를 위로 누르고 컨트롤러 F를 아래로 누릅니다.

이 예제에서는 첫 번째 명령 블록과 다음 명령 블록의 절반만 표시하지만, 이 세 개의 버튼 (E Down, F Up, F Down) 을 모두 누를 때 로봇이 수행할 전체 동작 시퀀스가 있을 수 있습니다.

토론 동기 부여 아이콘 토론 동기 부여

매년 VEX는 새로운 게임으로 사용자에게 도전합니다. 팀은 1분 (60초) 의 자율 주행 시간 (컨트롤러 없음) 과 1분 (60초) 의 운전자 통제 주행 시간 (컨트롤러) 으로 구성된 경기에 출전합니다. 일부 학생들은 클럽이나 팀의 일원으로 이전에 로봇 대회에 출전했을 수 있습니다. 아래 질문은 학생들에게 대회에서 자신의 경험 및/또는 관심사를 공유하도록 요청한다.

Q: 여기 있는 사람이나 아는 사람이 로봇 경진 대회에 출전한 적이 있나요?
A: 경쟁한 학생들에게 자신의 경험을 공유하도록 격려한다. '어떤 로봇을 사용하셨나요?' 및/또는 '체험에서 가장 마음에 들었던 부분은 무엇인가요?' 와 같은 추가 질문과 함께 후속 조치를 취하세요.

질문: 올해의 VEX 대회/게임에 대해 더 자세히 알고 싶은 사람이 있나요?
 답변: 학생들이 '예' 라고 대답하면, VEX Competition 웹사이트로 안내하고 올해의 챌린지 동영상을 보여줄 수 있습니다.