Skip to main content
교사 포털

배경

화성 탐사차: 표면 작업 단원에서는 VEXcode GO 프로젝트를 구축하여 문제를 해결하는 방법에 대해 학습합니다. 퍼서비어런스 로버와 2020년 화성 탐사선의 활동은 학생들이 VEXcode GO와 Code Base를 사용하여 해결할 과제에 대한 영감으로 사용됩니다. 그들이 만든 프로젝트는 샘플을 수집하고 '매장'하기 위해 올바른 순서로 진행되어야 합니다.

NASA의 2020년 화성 탐사 임무

NASA의 2020년 화성 탐사 임무는 화성 탐사의 최우선 과학 목표인 생명, 기후, 지질, 인간에 대한 문제를 다룹니다. 퍼서비어런스 로버는 화성 탐사에 필요한 데이터를 수집하기 위해 표면 작업을 완료할 예정입니다.

화성 표면과 근처에 화성 탐사선이 있는 모습. 흙바닥에 남은 타이어 자국은 차량이 어디를 주행했는지 보여줍니다.
출처: NASA/JPL

로버란 무엇인가?

로버는 행성이나 다른 천체(달과 같은)의 단단한 표면을 이동하도록 설계된 장치입니다. 일부 로버는 우주 승무원을 수송하도록 설계되었고, 다른 로버는 부분적 또는 완전 자율 로봇입니다. 이러한 로봇은 일반적으로 지형에 대한 정보를 수집하고 바위, 흙, 토양, 심지어 액체의 샘플을 수집하는 임무를 맡습니다.

화성의 퍼서비어런스 탐사선을 확대한 모습. 큰 바퀴와 다양한 센서, 기계팔이 부착되어 있습니다.
출처: NASA/JPL-Caltech

표면 작전이란 무엇인가?

표면 작업은 로버가 화성에서 완료할 과학적 연구입니다. 이러한 모든 활동은 지질학적 샘플을 찾고, 수집하고, 저장하는 데 중점을 두고 있습니다. 우선, Perseverance는 눈길을 끄는 바위를 찾을 것입니다. 암석이 고대 생명체의 화학적 흔적을 보존했을 가능성이 있거나 미생물 생명체가 살 수 있는 환경에 의해 변형되었을 가능성이 있는 경우 해당 암석은 설득력이 있다고 간주될 수 있습니다.

Perseverance는 매력적인 암석을 식별한 후 샘플을 뚫어 밀봉된 튜브에 넣고 표면에 저장합니다. 이 임무에 사용된 저장소 캐싱은 여러 개의 샘플을 같은 위치에 남겨두거나 묻어두는 방식입니다. 그러면 미래의 임무는 이 샘플을 회수하여 모두 모아 지구의 과학자들에게 돌려보낼 수 있을 것입니다.

수열이란 무엇인가?

순서는 행동이 수행되는 구체적인 순서입니다. 어떤 행동이나 사건은 순서대로 다음 행동으로 이어진다. 코드 베이스에 있어서 시퀀싱은 중요합니다. 로봇은 명령에 따라 정확히 움직이기 때문입니다.

이 애니메이션에서는 프로젝트가 맨 위의 {When started} 블록으로 시작하여 각 블록이 위에서 아래로 순서대로 실행되는 모습을 볼 수 있습니다. 코드 베이스는 GO 필드에서 325밀리미터(mm) 동안 전진한 후 2초간 기다린 후 LED 범퍼에서 색상이 빛납니다. 블록 주변의 녹색 강조 표시 기능은 그 순간 어떤 블록이 실행되고 있는지를 나타냅니다. 이를 통해 학생들은 코드 베이스의 동작을 특정 VEXcode GO 블록과 연결하기 위한 즉각적인 피드백을 얻을 수 있습니다.

프로젝트 시퀀싱 단계

  1. 먼저, 목표를 정하세요. 무엇을 해야 할까요? 예를 들어, 시작부터 첫 번째 샘플까지 주행합니다.

    두 개의 기호로 시작 위치와 객체의 위치를 표시하는 GO 필드의 위에서 아래로 본 모습. 물체는 시작 위치 바로 위에 있으며, 목표는 시작 위치에서 물체에 도달하는 것입니다.
    객체
    로 이동

     

  2. 그런 다음 목표를 달성하는 데 필요한 단계를 세분화하고, 이러한 단계를 달성하는 데 필요한 블록을 식별합니다. 여기에서 샘플에 도달하려면 325밀리미터(mm)를 앞으로 이동한 다음, 샘플을 수집 중임을 나타내기 위해 LED 범퍼 센서를 빨간색으로 켜고, 샘플을 수집하기 위해 3초간 기다린 다음, 샘플이 수집되었음을 나타내기 위해 LED 범퍼 센서의 빛이 멈추거나 꺼집니다. [운전], [대기], [범퍼 색상 설정] 블록을 사용하여 이를 달성할 수 있습니다.

    VEX코드 GO 블록 3개. 첫 번째는 '100mm 전진'이라고 적힌 Drive For 블록이고, 두 번째는 '1초간 기다리세요'라고 적힌 Wait 블록이고, 세 번째는 '범퍼를 빨간색으로 설정하세요'라고 적힌 Set Bumper Color 블록입니다.
    [운전], [대기], [범퍼 색상 설정] 블록

     

  3. 다음으로, 일치하는 블록을 작업 공간으로 끌어와 위에서 아래로 {When started} 블록에 부착하여 프로젝트 순서를 계획합니다. 각 블록을 추가할 때마다 이전에 분석한 단계에 맞게 매개변수를 변경합니다.다음 지침에 따라 VEXcode GO 블록 솔루션의 예를 들어 보겠습니다. 시동을 걸면 325mm를 주행하고 범퍼 색상을 빨간색으로 설정한 후 3초간 기다린 후 범퍼 색상을 꺼짐으로 설정합니다.

     

  4. "시작"을 선택하여 프로젝트를 테스트하고 코드베이스가 첫 번째 단계에서 식별된 목표를 달성하는지 확인합니다.

    VEXcode GO 도구 모음에는 Brain과 Step 아이콘 사이에 빨간색 상자로 시작 버튼이 표시되어 있습니다.
    '시작'을 선택하세요

     

프로젝트를 변경하려면 매개변수를 변경하거나 프로젝트에 블록을 추가 및 제거한 후 다시 테스트하기만 하면 됩니다.

VEXcode GO란 무엇인가요?

VEXcode GO는 VEX GO 로봇과 통신하는 데 사용되는 코딩 환경입니다. 학생들은 드래그 앤 드롭 인터페이스를 사용하여 로봇의 동작을 제어하는 VEXcode GO 프로젝트를 만듭니다. 각 블록의 용도는 모양, 색상, 라벨과 같은 시각적 단서를 사용하여 식별할 수 있습니다. VEXcode GO를 사용하는 방법에 대한 자세한 내용 VEX 라이브러리의 VEXcode GO 섹션을 참조하세요.

이 단원에서는 다음 VEXcode GO 블록이 사용됩니다.

VEX코드 GO 블록 행동
VEXcode GO 시작 시 블록.
{When start} 블록은 프로젝트가 시작될 때 첨부된 블록 스택을 실행하기 시작합니다.
VEXcode GO Drive For 블록에는 '100mm만큼 전진'이라고 적혀 있습니다.
[Drive for] 블록은 Drivetrain을 주어진 거리만큼 전진 또는 후진으로 이동합니다. 타원에 값을 입력하여 드라이브트레인이 얼마나 이동할지 설정합니다.
VEXcode GO Turn For 블록에는 '90도 우회전'이라고 적혀 있습니다.
[회전] 블록은 드라이브트레인을 지정된 거리만큼 회전시킵니다. 타원에 값을 입력하여 드라이브트레인이 얼마나 회전할지 설정합니다.
VEXcode GO 대기 블록에는 '1초간 기다리세요'라는 문구가 적혀 있습니다.
[대기] 블록은 프로젝트의 다음 블록으로 이동하기 전에 특정 시간 동안 기다립니다.
VEX코드 GO 범퍼 색상 블록 설정 '범퍼를 빨간색으로 설정'이라고 적혀 있습니다.
[범퍼 색상 설정] 블록은 LED 범퍼의 색상을 설정합니다.