이제 첫 번째 로봇 간 메시징 프로젝트를 만들었으니, 여러 개의 메시지를 보내볼 차례입니다! 이번 수업에서는 한 로봇에서 다른 로봇으로 여러 개의 메시지를 보내는 프로젝트를 만드는 방법을 알아봅니다.
아래 영상을 시청하여 자세한 내용을 알아보세요.
- 로봇이 두 개 이상의 메시지를 보내고 받을 수 있는 프로젝트를 만듭니다.
- "선입선출"(FIFO) 개념이 메시지가 수신되고 처리되는 순서를 어떻게 결정하는지 설명합니다.
- 반복 루프와 조건문을 사용하여 여러 메시지를 확인합니다.
이제 영상을 시청했으니, 생각을 일기에 적어보세요. 다음 질문에 답하면 사고의 방향을 잡고 전체 학급 토론을 준비하는 데 도움이 됩니다.
- 여러 개의 메시지를 보내는 것을 통해 로봇이 복잡한 동작을 수행하도록 코딩하는 것이 가능할까요?
- 영상에서 당신의 주장을 뒷받침하는 부분은 무엇입니까?
- 이 영상의 프로젝트는 이전 수업의 프로젝트와 비교했을 때 어떤 점이 비슷하거나 다릅니까?
- 영상에 나온 것과 같은 프로젝트를 계획할 때 무엇을 고려해야 하며, 그 이유는 무엇입니까?
- 여러 메시지를 포함하는 프로젝트를 만드는 것에 대해 어떤 질문이 있나요?
이제 영상을 시청했으니, 생각을 일기에 적어보세요. 다음 질문에 답하면 사고의 방향을 잡고 전체 학급 토론을 준비하는 데 도움이 됩니다.
- 여러 개의 메시지를 보내는 것을 통해 로봇이 복잡한 동작을 수행하도록 코딩하는 것이 가능할까요?
- 영상에서 당신의 주장을 뒷받침하는 부분은 무엇입니까?
- 이 영상의 프로젝트는 이전 수업의 프로젝트와 비교했을 때 어떤 점이 비슷하거나 다릅니까?
- 영상에 나온 것과 같은 프로젝트를 계획할 때 무엇을 고려해야 하며, 그 이유는 무엇입니까?
- 여러 메시지를 포함하는 프로젝트를 만드는 것에 대해 어떤 질문이 있나요?
학생들이 영상을 시청하고 연습하기 전에 전체 학급 토론 시간을 갖습니다. 제공된 질문에 대한 학생들의 답변을 토론의 기초로 삼으세요.
학생들의 반응을 칠판에 적어두면, 필요할 때 다시 볼 수 있습니다. 학생들에게 자신의 주장을 뒷받침하기 위해 일기에 있는 메모를 참조하도록 격려하세요.
지도 연습
영상을 시청하고 토론했으니 이제 연습할 차례입니다. 로봇이 여러 개의 메시지를 보내고 받을 수 있는 코딩 프로젝트에 협업하게 됩니다.
1단계: 아래와 같이 필드를 설정합니다.

2단계: 한 로봇이 다른 로봇에게 서로 다른 세 개의 물건을 집어 들고 각각 AprilTag ID 0으로 배달하도록 지시하는 메시지를 보내는 프로젝트를 만듭니다. 두 로봇이 작업을 완료할 수 있도록 협업하여 계획하고 코드를 작성합니다.
연습을 위한 자료:
활동을 완료하는 동안 추가 지원이 필요한 경우 여기에 링크된 리소스를 이용할 수 있습니다.
영상을 시청하고 토론했으니 이제 연습할 차례입니다. 로봇이 여러 메시지를 보내고 받을 수 있는 코딩 프로젝트에 협업하게 됩니다.
1단계: 아래와 같이 필드를 설정합니다.

2단계: 한 로봇이 다른 로봇에게 서로 다른 세 개의 물건을 집어 들고 각각 AprilTag ID 0으로 배달하도록 지시하는 메시지를 보내는 프로젝트를 만듭니다. 두 로봇이 작업을 완료할 수 있도록 협업하여 계획하고 코드를 작성합니다.
연습을 위한 자료:
활동을 완료하는 동안 추가 지원이 필요한 경우 여기에 링크된 리소스를 이용할 수 있습니다.
2단계 과제 카드를 배포합니다(Google / .docx / .pdf). 학생들이 프로젝트를 계획하고 코딩하는 동안 교실을 돌아다니며 다음과 같은 질문을 해보세요.
- 코딩에 관하여:
- 로봇 S가 보낸 모든 메시지를 로봇 R이 수신하도록 어떻게 보장하시나요?
- 로봇 R이 로봇 S의 메시지를 어떤 순서로 받을지 어떻게 알 수 있나요?
- 로봇 R이 집어 올려서 배달하는 물건의 순서를 바꾸고 싶다면 어떻게 해야 할까요?
- 로봇 S가 보내는 메시지를 바꾸면 로봇 R로부터 동일한 행동을 얻을 수 있을까요?
- 로봇 S가 보내는 메시지는 동일하게 유지하면서 로봇 R로부터 다른 행동을 얻을 수 있을까요?
- 협업에 관하여:
- 두 그룹 간에 여러분의 아이디어를 명확하게 전달하기 위해 무엇을 할 수 있나요?
- 모든 사람이 참여하도록 어떻게 보장하시나요?
학생들이 로봇 R이 세 개의 물체를 모두 집어 들고 운반하는 프로젝트를 만드는 데 어려움을 겪는다면, 페이지 상단의 영상을 다시 시청하여 학습 내용을 강화하도록 권장하세요.
마무리
이제 활동을 마쳤으니, 로봇이 여러 메시지를 보내고 받는 코딩 프로젝트에 대해 배운 내용을 공유할 차례입니다. 다음 질문에 답하여 저널에 적어 학습 내용을 되돌아보고 전체 학급 토론을 준비하세요.
- 로봇 S에서 로봇 R로 어떤 메시지를 보낼지 어떻게 결정하셨나요?
- 로봇 S에서 로봇 R로 보내는 메시지의 순서를 어떻게 결정하셨나요?
- 로봇 R은 로봇 S가 보낸 각 메시지에 어떻게 대응할 수 있을까?
- 프로젝트를 구축하는 동안 어떤 어려움에 직면했나요? 어떻게 협력해서 이를 극복하셨나요?
- 한 로봇에서 다른 로봇으로 여러 메시지를 보내는 프로젝트를 만드는 방법을 배우는 사람에게 어떤 조언을 해주시겠습니까?
이제 활동을 마쳤으니, 로봇이 여러 메시지를 보내고 받는 코딩 프로젝트에 대해 배운 내용을 공유할 차례입니다. 다음 질문에 답하여 저널에 적어 학습 내용을 되돌아보고 전체 학급 토론을 준비하세요.
- 로봇 S에서 로봇 R로 어떤 메시지를 보낼지 어떻게 결정하셨나요?
- 로봇 S에서 로봇 R로 보내는 메시지의 순서를 어떻게 결정하셨나요?
- 로봇 R은 로봇 S가 보낸 각 메시지에 어떻게 대응할 수 있을까?
- 프로젝트를 구축하는 동안 어떤 어려움에 직면했나요? 어떻게 협력해서 이를 극복하셨나요?
- 한 로봇에서 다른 로봇으로 여러 메시지를 보내는 프로젝트를 만드는 방법을 배우는 사람에게 어떤 조언을 해주시겠습니까?
학생들이 전체 학급 토론에서 학습 내용을 공유하도록 안내합니다. 학생들이 연습을 통해 학습 내용을 되돌아보고, 공통된 이해나 학습 목표에 도달하도록 돕습니다.
학생들이 일기에 답한 질문을 토론의 시작점으로 삼으세요. 학생들의 이해를 돕기 위해 후속 질문을 하세요.
- 여러 개의 메시지를 보내고 받는 경우:
- 각 메시지는 수신 로봇에서 어떤 행동을 유발했나요?
- 수신 로봇이 의도한 대로 응답하도록 어떻게 보장하셨나요?
- 예상대로 작동하지 않는 메시지가 있었나요? 어떻게 그 이유를 알아냈나요?
- 로봇이 여러 메시지를 보내도록 통신하는 다른 프로젝트가 유용할 수 있다고 생각하시나요?
- 협업에 관하여:
- 어떤 메시지를 어떤 순서로 보내야 할지 결정하기 위해 어떻게 협력하셨나요?
- 여러분의 그룹 내에서 계획이나 코딩을 할 때 의견 불일치가 있었나요? 어떻게 해결하셨나요?
다음 수업으로 넘어가려면 다음 > 선택하세요.