교사 도구 상자 - 이 활동의 목적
팔과 발톱을 사용하여 프로그래밍하면 로봇은 단순히 앞으로, 뒤로, 왼쪽 또는 오른쪽으로 움직이는 대신 다른 작업을 완료할 수 있습니다. 이 활동에서 학생들은 물체에 접근하고, 잡고, 들어올리고, 이동하는 데 필요한 올바른 동작 순서를 배웁니다. 물체는 빈 알루미늄 캔이나 빈 물병일 수 있습니다. 이 활동을 통해 학생들은 패키지 대시 챌린지(Package Dash Challenge)에 대비할 수 있으며, 여기서 학생들은 정해진 코스 주위에서 물건을 잡고 움직여야 합니다. 학생들은 의사코드를 사용하여 경로를 계획하게 됩니다.
이 활동에 사용된 [Spin for] 및 [Spin to position] 블록 또는 기타 블록에 대한 자세한 내용을 보려면 VEXcode IQ 내의 도움말 정보를 방문하세요. 내장된 도움말 도구에 대한 자세한 내용을 보려면 여기 클릭하세요.
다음은 학생들이 이 활동에서 수행할 작업에 대한 개요입니다.
-
팔 이동 및 Claw 튜토리얼 비디오를 엽니다.
-
의사 코드(Google Doc)를 사용하여 물체에 접근하고, 잡고, 들어올리고, 이동하는 데 필요한 단계를 간략하게 설명합니다.
-
VEXcode IQ를 사용하여 의사코드로 준비한 시퀀스를 프로그래밍하세요.
-
프로젝트를 다운로드하고 실행하고 테스트하여 의도한 대로 작동하는지 확인하세요.
시퀀스를 프로그래밍해 봅시다!
이 활동에서는 로봇이 물체를 잡고, 들어올리고, 이동하기 위해 수행해야 하는 일련의 움직임에 대한 계획을 개략적으로 설명합니다.
먼저 발톱과 팔 프로그래밍에 대한 두 개의 튜토리얼 비디오를 검토합니다. 그런 다음 물체에 접근하고, 잡고, 들어 올리는 올바른 단계 순서를 식별하고 의사 코드를 사용하여 해당 프로젝트를 계획합니다.
그런 다음 계획에 도움이 된 의사 코드를 사용하여 프로젝트를 생성, 다운로드 및 실행합니다!
-
필요한 하드웨어, 엔지니어링 노트북, VEXcode IQ가 다운로드되어 준비되었는지 확인하세요.
교사 팁
학생이 VEXcode IQ를 처음 사용하는 경우 탐색 중에 언제든지 튜토리얼을 참조할 수 있습니다. 튜토리얼은 도구 모음에 있습니다.
수량 | 필요한 재료 |
---|---|
1 |
VEX IQ 슈퍼 키트 |
1 |
VEX코드 IQ |
1 |
엔지니어링 노트북 |
1 |
미터 막대 또는 눈금자 |
1 |
Clawbot(Drivetrain 2-모터) 템플릿 예시 프로젝트 |
1 |
알루미늄 캔 또는 빈 물병 |
교사 팁
학생들을 위한 각 문제 해결 단계를 모델링합니다.
1단계: 탐사 준비
활동을 시작하기 전에 이러한 각 항목이 준비되어 있습니까? 빌더는 다음을 각각 확인해야 합니다.
-
모든 모터와 센서가 올바른 포트에 연결되어 있습니까?
-
스마트 케이블 이 모든 모터 및 센서에 완전히 삽입되었습니까?
-
Brain 이 켜져 있습니까?
-
배터리 이 충전되었습니까?
-
로봇브레인에 무선이되어 있나요?
2단계: 경로 계획 시작
로봇이 이동할 경로를 계획하기 전에 먼저 VEXcode IQ에서 팔 이동 및 발톱 열기 튜토리얼 비디오를 검토하세요.
- 팔 이동 튜토리얼 영상
- Claw 튜토리얼 비디오 열기
이제 엔지니어링 노트에서 의사 코드 (Google Doc / .docx / .pdf ) 사용하여 빈 물병과 같은 물체에 접근하고, 잡고, 들어 올리는 올바른 단계 순서를 작성하세요. 아니면 알루미늄 캔.
-
이 문제에서 염두에 두어야 할 부분은 다음과 같습니다.
-
먼저, 물체가 로봇으로부터 얼마나 멀리 떨어져 있는지 밀리미터 단위로 측정해야 합니다. 로봇이 얼마나 앞으로 또는 뒤로 움직여야 하는지 결정하려면 이 정보가 필요합니다.
-
동작 범위와 물체의 크기에 따라 클로가 열리고 닫혀야 하는 각도를 식별합니다. 자세한 내용은 재생 섹션의 이전 페이지를 참조하세요.
-
힌트: 장치 메뉴를 열고 클로가 내부 물체와 몇도 정도 닫히는지 확인하세요.
-
-
물체를 운반하기 위해 팔이 얼마나 위로 들어올려지는지 확인하십시오.
-
물체에 접근하면 클로가 이미 열려 있어야 합니다. 클로를 닫은 채 물체에 접근하면 닫힌 클로로 인해 물체가 넘어질 수 있습니다.
-
로봇은 또한 발톱으로 물체를 잡고, 위로 들어올리고, 반대 방향으로 움직여 물체를 재배치한 다음, 물체를 다시 내려 놓고 놓아야 합니다.
-
교사 팁 - 의사 코드 연습
학생들이 의사 코드(Google Doc/.docx/.pdf)에 익숙하지 않고 프로젝트 계획에 어떻게 사용되는지 제공된 링크에서 설명합니다. 의사코드 검토를 위한 루브릭 (Google Doc/.docx/.pdf) 사용할 수 있으며 학생들이 다음에 의사코드를 작성하도록 요청받을 때 다시 생각하기 섹션에서 다시 제공됩니다. 의사코드를 작성할 수 있는 이 기회는 나중에 의사코드 루브릭을 계획하고 공유하는 연습으로 간주될 수 있으며 이제 해당 연습에 도움이 될 수 있습니다.
교사 도구 상자 - 솔루션
물체와 로봇 사이의 거리는 학생이나 그룹에 따라 다를 수 있습니다. 의사 코드를 작성하기 전에 학생들이 거리를 측정하고 있는지 확인하십시오.
집게발을 처음 열었을 때와 물건을 잡기 위해 닫을 때의 정도 측정값이 동일하지 않다는 점에 유의하십시오. 클로가 물체에 닫혀 있고 물체를 뭉개서는 안 되기 때문에 클로가 물체를 감싸면 각도가 멈춰야 합니다.
팔은 물체를 효과적으로 운반할 수 있을 만큼 지면에서 충분히 들어 올려야 합니다.
학생들에게 필요한 올바른 일련의 단계는 다음과 같습니다. 이 예에서 측정된 거리는 15mm였습니다. 학생이나 그룹별로 변경될 수 있습니다.
-
클로를 75도 엽니다.
-
물체에 접근하려면 앞으로 15mm 이동하세요.
-
클로를 60도 닫아 물체를 잡습니다.
-
팔을 315도 들어올려 물건을 들어올립니다.
-
물체를 새로운 위치로 이동하려면 15mm 역방향으로 주행하십시오.
-
팔을 315도 낮추어 물체를 다시 내려 놓습니다.
-
클로를 60도 열어 물체를 놓습니다.
교사 팁
- 이것은 프로그래밍을 통한 시작 활동이므로 교사는 단계를 모델링한 다음 학생들에게 동일한 작업을 완료하도록 요청해야 합니다. 그런 다음 교사는 학생들이 단계를 올바르게 따르고 있는지 모니터링해야 합니다.
- 학생들이 Clawbot(Drivetrain2-motor) 템플릿을 선택했는지 확인하십시오.
- VEXcode IQ 내의 예제 페이지에서 선택할 수 있는 몇 가지 선택 항목이 있다는 점을 학생들에게 지적할 수 있습니다. 로봇을 만들고 사용하면서 다양한 템플릿을 사용할 기회를 갖게 됩니다.
- 학생들에게 프로젝트 이름에 자신의 이니셜을 추가하도록 요청할 수 있습니다. 이렇게 하면 학생들에게 프로젝트를 제출하도록 요청하는 경우 프로젝트를 차별화하는 데 도움이 됩니다.
- 학생들이 물체와 로봇 사이의 거리를 밀리미터(mm) 단위로 측정하는지 확인하세요.
3단계: 시퀀스 프로그래밍
-
Clawbot(Drivetrain 2-모터) 템플릿 예제 프로젝트를 엽니다.
-
예제 프로젝트를 여는 데 도움이 필요하면 VEXcode IQ 블록에서 예제 프로젝트 및 템플릿 사용 튜토리얼 비디오를 시청하세요.
-
프로젝트 이름을 바꾸고 '시퀀스'로 저장합니다.
-
프로젝트 이름 바꾸기 및 저장에 대한 도움말은 VEXcode IQ의 프로젝트 이름 지정 및 저장 튜토리얼을 참조하세요.
-
이제 의사 코드를 사용하여 프로젝트를 만듭니다. 먼저 의사코드를 삽입하는 주석을 사용하여 프로젝트 개요를 작성하세요. 아래 예시는 참고용입니다. 각도와 거리 측정은 물체의 거리와 크기에 따라 다를 수 있습니다.
-
[Drive], [Spin for] 및 [Spin to position] 블록을 사용하여 의사 코드를 기반으로 프로젝트를 만듭니다.
Arm 모터의 위치를 0으로 재설정하고 Claw 모터에 대한 3초 제한 시간을 포함하는 것을 잊지 마십시오.
프로젝트 구성 방법의 예로 아래 이미지를 사용하십시오. 다음 프로젝트는 완료되지 않았지만 완전히 프로그래밍해야 합니다.
-
프로젝트가 완료된 후에는 어떤 결과가 나올지 예측하세요. 엔지니어링 노트에 예측을 적어보세요.
4단계: 프로젝트 테스트!
이제 접근하고, 잡고, 들어올리고, 객체를 지정하는 프로젝트를 만들었으므로 테스트해 보겠습니다.
-
시퀀스 프로젝트를 다운로드하고 . 도움이 필요하면 VEXcode IQ에서 프로젝트 다운로드 및 실행 튜토리얼 비디오를 시청하세요. 다음 아이콘이 표시됩니다.
프로젝트가 의도한 대로 실행되었나요? 의사 코드를 최종 프로젝트와 비교하여 엔지니어링 노트에 관찰 내용을 작성하고 다음 질문에 답하세요.
-
프로젝트에 물체를 잡고, 들어올리고, 이동시키는 로봇이 있었나요?
-
이러한 일련의 동작이 중요한 이유는 무엇입니까?
교사 도구 상자 - 솔루션
학생들의 프로젝트는 물체와 로봇으로부터의 거리에 따라 달라집니다. 학생들은 자신의 의사코드와 이를 기반으로 프로그래밍된 프로젝트에 대해 성찰할 수 있어야 합니다. 의사 코드 또는 프로그래밍으로 인해 오류가 발생했습니까? 학생들은 의사 코드를 통해 프로젝트 내 어느 단계가 잘못되었는지 확인해야 합니다.
이 활동은 학생들에게 동작의 순서가 중요하다는 점을 강조해야 합니다. 움직임이 다른 순서로 재배치되면 로봇이 물체를 집어 옮기지 못할 수도 있습니다. 예를 들어, 발톱이 먼저 열리지 않으면 로봇이 물체에 접근할 때 물체를 넘어뜨릴 수 있습니다.
다음은 솔루션 예시입니다.
학습 확장 - [모터 정지 설정] 블록
학생들이 더 무거운 물체를 들어올리고 운반하도록 로봇을 프로그래밍하는 경우 이러한 물체는 무게 때문에 팔을 아래로 끌 수 있습니다.
이 경우 중력과 들어 올려진 물체의 무게로 인해 팔이 떨어지지 않도록 [모터 정지 설정] 블록을 사용할 수 있습니다. 이 블록은 프로젝트 초기에 사용할 수 있으며 프로젝트의 나머지 부분에서 향후 모든 모터 블록에 적용됩니다.
[모터 정지 설정] 블록에는 세 가지 설정이 있습니다.
-
브레이크 모터가 즉시 정지합니다.
-
Coast 모터가 서서히 회전하여 정지하도록 합니다.
-
Hold 모터가 즉시 정지하고 움직이면 정지 위치로 돌아갑니다.