시퀀스 프로그래밍 - VEXcode IQ
교사 도구 상자
-
이 활동의 목적
팔과 발톱을 사용하여 프로그래밍하면 로봇이 앞으로, 뒤로, 왼쪽 또는 오른쪽으로 이동하는 대신 다른 작업을 완료할 수 있습니다. 이 활동에서 학생들은 물체에 접근하고, 물건을 잡고, 들어 올리고, 움직이는 데 필요한 올바른 동작 순서를 배운다. 물체는 빈 알루미늄 캔 또는 빈 물병일 수 있습니다. 이 활동을 통해 학생들은 패키지 대시 챌린지 (Package Dash Challenge) 를 준비하게 됩니다. 패키지 대시 챌린지 (Package Dash Challenge) 에서 학생들은 개략적인 코스 주위로 물건을 들고 이동해야 합니다. 학생들은 의사 코드를 사용하여 경로를 계획합니다.
이 활동에 사용된 [Spin for] 및 [Spin to position] 블록 또는 기타에 대한 자세한 내용은 VEXcode IQ 내의 도움말 정보를 참조하세요. 기본 제공 도움말 도구에 대한 자세한 내용을 보려면 여기를 클릭하세요.
다음은 학생들이 이 활동에서 무엇을 할 것인지에 대한 개요이다.
-
팔 움직이기 및 발톱 열기 튜토리얼 동영상을 시청하세요.
-
의사 코드 (Google Doc/.docx/.pdf) 를 사용하여 개체에 접근, 잡기, 들어 올리기 및 이동하는 데 필요한 단계를 설명합니다.
-
VEXcode IQ를 사용하여 의사 코드로 준비한 순서를 프로그래밍하십시오.
-
프로젝트를 다운로드, 실행 및 테스트하여 프로젝트가 의도한 대로 수행되는지 확인합니다.
시퀀스를 프로그래밍해 봅시다!
이 활동에서는 물체를 잡고 들어 올리고 움직이기 위해 로봇이 수행해야 하는 일련의 움직임에 대한 계획을 설명합니다.
먼저 발톱과 팔 프로그래밍에 대한 두 가지 튜토리얼 비디오를 검토합니다. 그런 다음 객체에 접근, 포착 및 들어올리는 올바른 단계 순서를 식별하고 의사 코드를 사용하여 해당 프로젝트를 계획합니다. 그런 다음
계획을 세우는 데 도움이 되는 의사 코드를 사용하여 프로젝트를 만들고, 다운로드하고, 실행합니다!
-
필요한 하드웨어, 엔지니어링 노트북 및 VEXcode IQ를 다운로드하여 준비하십시오.
교사 팁
학생이 VEXcode IQ를 처음 사용하는 경우, 이 탐색 중에 언제든지 튜토리얼을 참조할 수 있습니다. 튜토리얼은 툴바에 있습니다.
| 수량 | 필요한 재료 |
|---|---|
| 1 |
벡스 IQ 슈퍼 키트 |
| 1 |
VEXcode IQ |
| 1 |
엔지니어링 노트 |
| 1 |
미터 스틱 또는 눈금자 |
| 1 |
Clawbot (Drivetrain 2-motor) 템플릿 예시 프로젝트 |
| 1 |
알루미늄 캔 또는 빈 물병 |
교사 팁
학생들을 위해 각 문제 해결 단계를 모델링합니다.
1단계: 탐험 준비하기
활동을 시작하기 전에 다음 각 항목을 준비하셨나요? 빌더는 다음 각 사항을 확인해야 합니다.
- 모든 모터와 센서가 올바른 포트에 연결되어 있습니까?
- 스마트 케이블이 모든 모터와 센서에 완전히 삽입되어 있습니까?
- 뇌가 켜져 있습니까?
- 배터리가 충전되었나요?
- 라디오가 로봇 뇌에 삽입되어있습니까?
2단계: 경로 계획 시작하기
로봇이 이동할 경로를 계획하기 전에 먼저 팔 움직이기 및 VEXcode IQ에서 발톱 열기 튜토리얼 비디오를 검토하십시오.
- 암 이동 튜토리얼 비디오

- 클로 튜토리얼 비디오 열기

이제 엔지니어링 노트에 의사 코드 (Google Doc / .docx / .pdf ) 를 사용하여 빈 물병이나 알루미늄 캔과 같은 물체에 접근하고, 잡고, 들어 올리는 올바른 단계 순서를 작성하십시오.
- 이 문제에서 염두에 두어야 할 부분은 다음과 같습니다.
- 먼저 물체가 로봇에서 얼마나 멀리 떨어져 있는지 밀리미터 단위로 측정해야 합니다. 로봇이 얼마나 앞뒤로 움직여야 하는지 결정하려면 이 정보가 필요합니다.
- 운동 범위와 물체의 크기에 따라 발톱이 얼마나 열리고 닫혀야 하는지 확인하십시오. 자세한 내용은 플레이 섹션의 이전 페이지를 참조하세요.
- 힌트: 장치 메뉴를 열고 내부 개체와 함께 발톱이 몇 도 닫힐지 확인합니다.
- 팔이 물체를 운반하기 위해 얼마나 멀리 올라갈지 확인하십시오.
- 물체에 접근하면 발톱이 이미 열려 있어야 합니다. 발톱을 닫은 상태에서 물체에 접근하면 닫힌 발톱이 물체를 넘어뜨릴 수 있습니다.
- 로봇은 또한 발톱에서 물체를 잡고 물체를 위로 올린 다음 반대 방향으로 움직여 물체를 재배치한 다음 물체를 다시 아래로 놓고 놓아야 합니다.
교사 팁
- 의사 코드
연습
학생들이 의사 코드 (Google Doc/.docx/.pdf) 와 프로젝트 계획에 사용되는 방법에 익숙하지 않은 경우, 제공된 링크에서 설명합니다. 의사 코드를 검토하기 위한 채점표 (Google Doc/.docx/.pdf) 를 사용할 수 있으며 다음에 학생들에게 의사 코드를 작성하도록 요청할 때 Rethink 섹션에서 다시 제공됩니다. 의사 코드를 작성할 수 있는 이 기회는 나중에 의사 코드 채점표를 계획하고 공유하는 연습으로 생각할 수 있습니다.
교사 도구 상자
-
솔루션
물체와 로봇 사이의 거리는 학생 또는 그룹에 따라 다를 수 있습니다. 학생들이 의사 코드를 작성하기 전에 거리를 측정하고 있는지 확인하십시오. 처음 발톱이 열리고 물체를 잡기 위해 닫힐 때 동일한 정도 측정값이 없다는 점에
유의하십시오. 발톱이 물체를 닫고 있기 때문에 발톱을 부수지 않아야 하므로 발톱이 물체를 감싸고 나면 각도가 멈춰야 합니다.
팔은 물체를 효과적으로 운반할 수 있도록 지면을 충분히 위로 올려야 합니다.
학생들이 필요로 하는 올바른 일련의 단계는 다음과 같다. 이 예에서 측정된 거리는 15mm였습니다. 이는 학생 또는 그룹별로 변경될 수 있습니다.
-
발톱을 75도 엽니다.
-
15mm 전방으로 구동하여 물체에 접근합니다.
-
발톱을 60도 각도로 닫아 물건을 잡습니다.
-
물체를 들어 올리려면 팔을 315도 올립니다.
-
물체를 새 위치로 이동하려면 역방향으로 15mm 주행하십시오.
-
물체를 다시 아래로 내리려면 팔을 315도 내립니다.
-
발톱을 60도 열어 물체를 놓습니다.
교사 팁
- 이것은 프로그래밍의 시작 활동이므로 교사는 단계를 모델링한 다음 학생들에게 동일한 작업을 완료하도록 요청해야 합니다. 그런 다음 교사는 학생들이 올바른 단계를 따르고 있는지 확인하기 위해 학생들을 모니터링해야 한다.
- 학생들이 Clawbot (Drivetrain2-motor) 템플릿을 선택했는지 확인합니다.
- 학생들에게 VEXcode IQ 내의 예제 페이지에서 선택할 수 있는 몇 가지 선택이 있음을 지적할 수 있습니다. 로봇을 만들고 사용할 때 다양한 템플릿을 사용할 수 있습니다.
- 학생들에게 프로젝트 이름에 이니셜을 추가하도록 요청할 수 있습니다. 이렇게 하면 학생들에게 제출하도록 요청하면 프로젝트를 차별화하는 데 도움이 됩니다.
- 학생들이 물체와 로봇 사이의 거리를 밀리미터 (mm) 단위로 측정하는지 확인하십시오.
3단계: 시퀀스 프로그래밍
- Clawbot (Drivetrain 2-motor) 템플릿 예제 프로젝트를 엽니다.

- 예제 프로젝트를 여는 데 도움이 필요하면 VEXcode IQ 블록에서 예제 프로젝트 및 템플릿 사용 튜토리얼 비디오를 참조하십시오.

- 프로젝트 이름을 변경하고 '시퀀스' 로 저장합니다.

- 프로젝트 이름 변경 및 저장에 대한 도움말은 VEXcode IQ에서 프로젝트 이름 지정 및 저장 튜토리얼을 참조하십시오.
- 이제 의사 코드를 사용하여 프로젝트를 만듭니다. 먼저 코멘트를 사용하여 의사 코드를 삽입하여 프로젝트를 요약하십시오. 아래 예시가 참고 문헌입니다. 물체의 거리와 크기에 따라 정도 및 거리 측정이 다를 수 있습니다.

- [Drive], [Spin for] 및 [Spin to position] 블록을 사용하여 의사 코드를 기반으로 프로젝트를 생성합니다. 암 모터의 위치를 0으로 재설정하고 클로 모터에 3초 타임아웃을 포함시키는 것을 잊지
마십시오. 아래 이미지를 프로젝트 구성 방법의 예로
사용하십시오. 다음 프로젝트는 완료되지 않았지만 완전히 프로그래밍해야 합니다.
- 프로젝트가 완료되면 프로젝트가 어떻게 진행될지 예측하세요. 예상 결과를 엔지니어링 노트에 기록하세요.
4단계: 프로젝트를 테스트합니다!
이제 접근하고, 잡고, 들어올리고, 반대하는 프로젝트를 만들었습니다. 테스트해 봅시다!
프로젝트가 의도한 대로 진행되었나요? 의사 코드를 최종 프로젝트와 비교하여 관찰한 내용을 엔지니어링 노트에 기록하고 다음 질문에 답하십시오.
- 프로젝트에 로봇이 물건을 잡고, 들어 올리고, 움직일 수 있었나요?
- 이 일련의 움직임이 중요한 이유는 무엇입니까?
교사 도구 상자
-
솔루션
학생들의 프로젝트는 물체와 로봇에서 얼마나 멀리 떨어져 있는지에 따라 달라집니다. 학생들은 자신의 의사 코드와 의사 코드를 기반으로 프로그래밍된 프로젝트에 대해 생각할 수 있어야 합니다. 의사 코드 또는 프로그래밍으로 인해 오류가 발생했습니까? 학생들은 의사 코드를 통해 프로젝트 내에서 어떤 단계가 잘못되었는지 확인해야 합니다.
이 활동은 학생들에게 운동 순서가 중요하다는 것을 강조해야 한다. 움직임을 다른 순서로 다시 정렬하면 로봇이 물체를 집어서 움직이지 않을 수 있습니다. 예를 들어, 발톱을 먼저 열지 않으면 로봇이 물체에 접근할 때 물체를 넘어뜨릴 수 있습니다.
다음은 해결 방법의 예입니다.
학습 연장
-
[모터 정지 설정] 차단
학생들이 로봇을 프로그래밍하여 더 무거운 물건을 들어 올리고 운반하는 경우, 이 물체는 무게 때문에 팔을 아래로 끌 수 있습니다.
이 경우 [모터 정지 설정] 블록을 사용하여 중력과 물체의 무게로 인해 팔이 떨어지지 않도록 할 수 있습니다. 이 블록은 프로젝트 초기에 사용할 수 있으며 프로젝트의 나머지 부분에서 향후 모든 모터 블록에 적용됩니다.
[모터 정지 설정] 블록에는 세 가지 설정이 있습니다.
- 브레이크는 모터를 즉시 정지시킵니다.
- 코스트는 모터를 점진적으로 회전시켜 멈춥니다.
- 길게 누르면 모터가 즉시 정지하고 움직이면 정지 위치로 돌아갑니다.