배경
Mars Rover: Landing Challenge Unit은 학생들에게 문제를 해결하기 위해 VEXcode 123 프로젝트를 구축하도록 요청합니다. 이 단원에서는 Mars 2020 Perseverance rover와 같이 우주선 착륙을 시도하는 동안 과학자들이 사용하는 프로세스에서 영감을 얻은 챌린지에서 123 로봇 전면에 아이 센서를 사용하는 방법을 학생들에게 소개합니다. 학생들은 123 로봇을 코딩하여 장애물을 감지한 다음 착륙장에서 장애물이 발견되었음을 나타내는 색상을 발광합니다.
NASA의 Mars 2020 미션
NASA의 화성 2020 임무는 생명, 기후, 지질학, 인간 등 화성 탐사를 위한 우선 순위가 높은 과학 목표를 다룹니다. 그러나 인내 로버가 지표면에서 암석과 토양 샘플을 채취하는 임무를 시작하기 전에 로버는 레드 플래닛에 안전하게 착륙해야 합니다.
미항공우주국 (NASA) 에 따르면 지금까지 화성에 파견된 모든 우주 기관의 임무 중 약 40% 만이 성공했다고 합니다. 진입, 하강 및 착륙의 전체 과정은 몇 분 밖에 걸리지 않지만, 인내 로버를 운반하는 우주선은 거의 시속 20,000km (시속 약 12,500마일) 에서 0으로 감속하고 착륙할 개방되고 평평한 지역을 찾아야 합니다. 화성 표면은 거대한 충돌 크레이터, 절벽, 균열 및 들쭉날쭉한 바위와 같은 장애물로 가득합니다. 예측할 수 없는 바람은 더 많은 합병증을 유발할 수도 있습니다.
안전한 착륙을 보장하기 위해 인내 로버는 하강하는 동안 이미지를 촬영하고 해당 이미지를 지도와 비교합니다. 해당 지역이 과학자들에 의해 위험하다고 판단되었는지 신속하게 판단하고 개방된 지역의 토지를 조정할 수 있습니다. 아래 동영상을 시청하여 로버가 어떻게 착륙할 것으로 예상되는지 확인하세요.
이 유닛에서 학생들은 123 로봇을 코딩하여 123 필드의 착륙 지점에서 장애물을 감지하여 로버의 안전한 착륙을 보장합니다.
센서란?
센서는 본질적으로 로봇이 주변 세계를 이해하는 데 도움이 되는 장치입니다. 이것은 환경에 대한 데이터를 수집하고 보고하여 로봇이 결정을 내리거나 특정 행동을 수행하는 데 프로젝트에서 사용할 수 있습니다. 이 시퀀스는 Sense → Think → Act 결정 루프로 생각할 수 있습니다.
이 유닛에서 123 로봇은 123 필드의 물체를 감지하여 안전한 로버 착륙을 위해 영역을 지우는 데 도움을 줄 것입니다. 프로젝트 학생들은 눈 센서가 물체의 존재를 감지하고 VEXcode 123 명령이 눈 센서가 물체를 감지하는지 여부에 따라 생각하고 결정을 내린 다음 123 로봇이 로봇의 버튼을 켜면 작동하므로이 루프를 수행합니다.
눈 센서란?
123 로봇의 아이 센서는 흰색 화살표 아래 전면에 있습니다. 눈 센서는 물체의 유무와 색상 또는 밝기 수준을 감지하는 데 사용할 수 있습니다.

눈 센서는 적외선을 사용하여 물체를 감지합니다. 밝은 색상의 물체는 적외선을 반사하며 눈 센서에 의해 더 쉽게 감지됩니다. 어두운 색상의 물체는 적외선을 흡수하며 눈 센서도 이를 감지하지 못합니다. 장치 중에 장애물에 흰색 또는 밝은 색의 용지를 사용하여 눈 센서가 이러한 물체를 감지할 수 있도록 하십시오.
이 장치에서 눈 센서는 물체가 123 로봇의 경로에 있을 때 감지하는 데 사용됩니다. 123 로봇의 눈 센서 위치는 눈 앞에 있는 물체만 감지할 수 있음을 의미합니다. 123개의 로봇과 장애물을 학생들과 함께 배치하여 학생들이 성공할 수 있도록 자료를 준비할 때 이 점에 유의하십시오.
VEXcode 123으로 눈 센서를 코딩하는 방법에 대한 자세한 내용은 VEXcode 123 VEX 라이브러리를 사용하여 VEX 123 눈 센서 코딩 문서를 참조하십시오.
VEXcode 123이란 무엇입니까?
VEXcode 123은 123 로봇과 함께 사용되는 블록 기반 프로그래밍 언어입니다. 프로그래밍 언어는 기호가 동작을 나타내는 일련의 규칙입니다. 프로그래밍 언어는 프로젝트를 실행하기 위해 컴퓨터가 실행하는 단계별 지침을 따릅니다.
VEXcode 123으로 작업하는 방법에 대한 자세한 내용은 VEX 라이브러리의 VEXcode 123 섹션을 참조하십시오.
어떤 VEXcode 123 블록이 필요합니까?
VEXcode 123의 블록은 VEXcode 123에서 프로젝트를 생성하는 데 사용되는 123 로봇 명령을 나타냅니다. 다음은 이 유닛에서 사용되는 주요 블록 목록입니다.
| VEXcode 123 블록 | 행동 |
|---|---|
![]() |
{When started} 블록은 프로젝트가 시작될 때 첨부된 블록 스택을 실행하기 시작합니다. |
![]() |
[Drive until] 블록은 세 가지 조건 중 하나가 충족될 때까지 123 로봇을 구동합니다.
|
![]() |
[Turn for] 블록은 지정된 각도만큼 123 로봇을 왼쪽이나 오른쪽으로 돌립니다. |
![]() |
[Forever] 블록은 ‘C‘ 안에 포함된 모든 블록을 영원히 반복합니다. |
![]() |
[대기] 블록은 프로젝트의 다음 블록으로 이동하기 전에 특정 시간을 기다립니다. |
![]() |
[Glow] 블록은 123 로봇의 중앙에 표시등의 발광 색상을 설정합니다. |
[Drive until] 블록은 어떻게 작동하나요?
[Drive until] 블록은 반복적으로 상태를 확인하고 프로젝트 흐름을 제어합니다. [Drive until] 블록의 조건이 충족될 때까지 프로젝트는 스택의 다음 블록으로 이동하지 않습니다. 아래 표시된 프로젝트에서 123 로봇은 앞으로 주행하고 눈 센서가 물체를 감지했는지 계속 확인합니다. 눈 센서가 물체를 감지하면 123 로봇이 운전을 멈추고 다음 블록인 [Glow] 블록으로 이동합니다.
[Drive Until] 블록이 있는 123 로봇 주행을 정지시키는 조건을 설정할 수 있습니다. 이 장치는 "물체" 매개 변수를 사용하여 123 로봇 전면의 눈 센서가 물체를 감지하면 로봇이 운전을 중지합니다.
이 단원에서의 오픈 엔드 챌린지 준비
이 단원에서는 학생들에게 이전에 배운 내용을 사용하여 과제를 해결하기 위한 프로젝트를 생성하도록 요청합니다. 학생들에게 정기적으로 문제 해결에 도전하고 학습한 기술을 새로운 방식으로 적용하는 것이 중요하기 때문에, 학생들에게 도전하고 이러한 전략을 사용하여 회복탄력성을 키우고 도전을 통해 학생들을 안내하는 데 도움을 줄 것을 권장합니다. 다음은 학생들이 프로젝트를 실험하는 데 도움이 되는 몇 가지 제안입니다.
해결책을 제시하지 않고 피드백 제공 - 문제를 해결하는 동안 오류를 범하는 것은 예상되고 권장됩니다. “학습의 오류는 기회를 창출할 수 있으며, [그리고] 연결을 실현하는 데 도움이 될 수 있습니다.”1 학생들과 친숙한 문제 해결 프로세스를 만들면 문제를 식별하고 오류를 범할 때 앞으로 나아가는 방법을 알고 이를 통해 혼란과 좌절을 최소화하는 데 도움이 될 수 있습니다. 학생들과 함께 다음 문제 해결 주기를 사용하여 프로젝트 문제를 해결하고 자신만의 해결책을 생각해 본다.
- 문제 설명
- 학생에게 무엇이 잘못되었는지 설명해 달라고 한다. 학생들은 오류를 공유된 목표 또는 당면 과제와 다시 연관시킬 수 있어야 합니다.
- 123 로봇은 프로젝트에서 어떻게 움직이고 있습니까? 로봇은 어떻게 움직여야 할까요?
- 학생에게 무엇이 잘못되었는지 설명해 달라고 한다. 학생들은 오류를 공유된 목표 또는 당면 과제와 다시 연관시킬 수 있어야 합니다.
- 문제가 언제 어디서 시작되었는지 식별합니다.
- 학생이 문제를 처음 발견했을 때 물어본다.
- 프로젝트의 어떤 부분이 실행되고 있었습니까?
- 학생들이 프로젝트에서 오류가 있는 위치를 확인하는 데 어려움이 있는 경우, VEXcode 123에서 Project Stepping 기능을 사용하도록 권장하십시오. 프로젝트 스테핑 기능과 함께 제공되는 시각적 단서는 학생들이 한 번에 하나씩 실행되는 블록을 볼 수 있어 프로젝트 문제를 해결하는 데 도움이 될 수 있습니다. 이렇게 하면 오류를 일으킬 수 있는 블록을 더 잘 볼 수 있으므로 디버깅이 더 대상화되고 효율적인 프로세스가 될 수 있습니다. 프로젝트 스테핑 기능을 사용하는 방법에 대한 자세한 내용은 VEXcode 123 VEX 라이브러리에서 프로젝트 스테핑 을 참조하십시오.
- 학생이 문제를 처음 발견했을 때 물어본다.
- & 테스트 수정하기
- 학생들이 오류를 발견하면 프로젝트를 수정해야 합니다. 학생들은 각 편집을 통해 프로젝트를 테스트할 수 있습니다. 프로젝트가 성공하면 문제 해결 주기의 다음 단계로 넘어갈 수 있습니다. 프로젝트가 성공적이지 않으면 프로세스의 시작 부분으로 돌아가서 다시 시도할 수 있습니다.
- 반영
- 학생들에게 그 과정에서 저지르고 극복한 오류에 대해 생각해 보라고 한다.
- 어떤 오류가 있었나요? 이 실수에서 무엇을 배웠는가? 다음 번에 123 로봇을 코딩할 때 어떻게 도움이 될 수 있습니까?
- 학생들이 자신의 실수와 그 과정에서 배운 것을 인식하여 성장 사고 방식을 장려하도록 격려한다. 성장 사고 방식을 강조하면 학생들이 언제, 어떻게 지속해야 하는지, 언제 도움을 요청해야 하는지를 배우는 데 도움이 될 수 있다.2 학생들이 자신의 과정을 새로운 학습의 전조로 볼 수 있다면, 여기의 단계를 사용하여 자신의 학습을 진전시키고 반 친구들의 학습을 진전시킬 수 있다. 학생들이 이러한 문제를 접하고 자신의 오류를 숙고할 때, 자신의 오류와 과정을 동료 학생들과 공유하도록 격려한다. 이를 통해 학생들은 “서로를 위한 학습 자료” 가 될 수 있다.3
- 학생들에게 그 과정에서 저지르고 극복한 오류에 대해 생각해 보라고 한다.
착륙 구역 지우기 (실험실 2) 는 학생들이 도전 과제를 해결하기 위해 인내심을 갖도록 요구하는 개방형 탐험이 되도록 설계되었습니다. 이 랩에서는 [Forever] 블록이 있는 루프를 소개하고 학생들에게 프로젝트에서 루프를 사용하여 123 로봇 드라이브가 착륙 영역의 모든 장애물을 감지하도록 실험하도록 요청합니다 (VEX 123 필드). 프로젝트에서 루프를 사용하는 것이 학생들에게 새로운 경우, 루프를 효과적으로 사용하기 위해 프로젝트의 여러 반복이 필요할 수 있습니다. 이 섹션에 요약된 제안을 사용하여 학생들이 시행착오 과정을 준비하고 도전의 목표를 달성하기 위해 프로젝트를 해결하도록 돕는다. 플레이 파트 1과 2의 퍼실리테이션 섹션에는 실험실 2 챌린지를 통해 학생들을 안내하기 위한 추가적인 교육 지원이 포함되어 있습니다. 이 실습에서 요구되는 문제 해결 및 시행착오에 대한 지원을 제공하는 방법에 대한 계획을 세우면 학생들의 개별 요구 사항을 충족하는 데 도움이 될 수 있습니다.
효과적인 피드백이 학생들이 STEM Labs를 통해 일하면서 회복탄력성과 성장 마인드를 구축하는 데 어떻게 도움이 되는지에 대한 자세한 내용은 STEM Labs VEX Library의 Building Resilience 기사를 참조하십시오.
1 해티, 존, 셜리 클라크. 가시적 학습: 피드백. Routledge, Taylor & Francis Group, 2019.
2 Ibid.
3 Ibid, p. 121




![[대기] 블록](/stemlabs/sites/default/files/inline-images/%5BWait%5D.png)
