빠른 답변

모터, 바퀴 또는 섀시를 부착하기 전에 블록 코딩으로 micro:bit의 내장 입력 및 출력을 가르치세요. 각 학습자가 센서당 하나의 프로그램을 작성, 다운로드 및 테스트한 다음 두 입력을 하나의 반응으로 결합하는 짧은 워크숍을 진행하세요. 이 순서는 로봇에 필요한 디버깅 습관을 길러주므로, 조립 단계가 문제 해결이 아닌 조립 자체가 됩니다.

대부분의 로봇 공학 워크숍은 같은 지점에서 실패합니다. 로봇이 조립되고 배터리 팩이 연결되었지만, 아무도 프로그램 읽기를 연습하지 않았기 때문에 아무것도 움직이지 않습니다. micro:bit는 버튼, LED 그리드 및 센서가 추가 하드웨어 없이 작동하기 때문에 이에 대한 좋은 해결책입니다. 보드만으로 micro bit 코딩 기초를 가르친 다음, 로직이 익숙해지면 모터를 추가할 수 있습니다.

이 워크숍 계획은 단일 출력에서 두 입력이 함께 작동하는 순서로 진행됩니다. 각 단계에는 초보자를 가장 자주 막히게 하는 실수가 포함되어 있어, 빌드 후에 발견하는 대신 주의를 기울일 수 있습니다.

첫 번째 세션 전에 준비할 사항

학습자 또는 쌍당 하나의 micro:bit, 블록 편집기가 열린 컴퓨터 또는 태블릿, 각 보드용 USB 케이블이 필요합니다. 학습자가 케이블로 파일을 다운로드할지 Bluetooth로 페어링할지 미리 결정하세요. 세션 중간에 방법을 전환하면 절약되는 시간보다 더 많은 시간이 소요됩니다. 블록 카테고리를 인쇄하거나 표시하여 초보자가 Input, Basic, Logic을 찾기 위해 헤매지 않도록 하세요.

첫 번째 세션에서는 보드 자체 외에 하드웨어를 사용하지 마십시오. 모터, 바퀴, 배터리 팩은 전원 및 배선 변수를 도입하여 코딩 실수를 숨깁니다. 깜빡이는 보드만 있는 섀시는 느슨한 리드선이 있을 수 있는 섀시보다 디버깅하기 쉽습니다.

  • 각 micro:bit에 이름이나 번호를 붙여 다운로드한 파일이 섞이지 않도록 하십시오.
  • 모든 USB 케이블을 미리 테스트하십시오. 충전 전용 케이블은 프로그램을 전송하지 않습니다.

단계 1: 의도적으로 하나의 출력을 발생시키십시오

LED 그리드로 시작하세요. 학습자에게 프로그램이 시작될 때 하나의 아이콘을 표시한 다음 다른 아이콘으로 변경하도록 요청하세요. 목표는 아직 창의성이 아니라 편집, 다운로드 및 실행 주기가 처음부터 끝까지 작동하는지 확인하는 것입니다. 학습자가 자신의 아이콘이 나타나는 것을 보면 도구가 더 이상 추상적으로 느껴지지 않습니다.

여기서 흔히 저지르는 실수는 다운로드 단계를 건너뛰고 보드가 스스로 업데이트되었다고 가정하는 것입니다. 각 학습자가 보드를 가리키며 실행되기 전에 무엇이 나타날지 예상하도록 하세요. 보드에 이전 아이콘이 표시되면 파일이 전송되지 않은 것입니다.

  • 체크포인트: 모든 학습자가 아이콘을 변경하고 자신의 보드에서 변경 사항을 확인할 수 있습니다.

단계 2: 입력으로 버튼 추가

이제 이벤트를 액션에 연결해 보세요. 버튼을 누르면 특정 아이콘이 표시되고, 다른 버튼을 누르면 다른 아이콘이 표시되어야 합니다. 이것이 바로 micro:bit 블록 코딩의 강점입니다. 블록은 원인과 결과 구조를 시각적으로 보여주므로 학습자는 이벤트가 액션 옆에 있는 것이 아니라 액션을 감싸고 있음을 알 수 있습니다.

주의해야 할 실수는 표시 블록을 버튼 이벤트 밖에 두는 것입니다. 그러면 버튼을 눌렀을 때가 아니라 즉시 아이콘이 나타납니다. 학습자에게 아이콘이 언제 나타나야 하는지 설명하게 한 다음, 해당 설명과 블록이 일치하는지 확인하세요.

  • 확인 지점: 각 버튼을 누르면 서로 다른 예측 가능한 결과가 나타납니다.

단계 3: 값 저장 및 변경

카운터로 사용할 변수를 도입하세요. 버튼을 누를 때마다 1씩 증가하며, 그 숫자가 그리드에 표시됩니다. 이는 micro:bit 초보자에게 개념적 도약입니다. 보드가 이제 버튼 누름 사이에 무언가를 기억합니다. 변수 이름은 score나 count처럼 짧고 의미 있게 지정하여 블록이 문장처럼 읽히도록 하세요.

흔한 실수는 이벤트 내에서 변수를 재설정하는 것입니다. 이렇게 하면 누를 때마다 카운트가 초기화되어 디스플레이가 1에 고정됩니다. 숫자가 증가하지 않는다면, change 블록이 있어야 할 자리에 set 블록이 있는지 찾아보세요.

  • 확인 지점: 버튼을 누를 때마다 숫자가 증가하고, 누름 사이에도 유지됩니다.

단계 4: 조건을 사용하여 두 입력 결합하기

버튼을 보드 흔들기 또는 조도 측정과 같은 두 번째 입력과 짝을 지으세요. 두 조건이 모두 참일 때만 동작이 실행되도록 조건을 사용하세요. 이는 실제 로봇 로직을 반영합니다. 충돌 센서와 타이머, 또는 조도 센서와 버튼이 기계의 다음 동작을 결정합니다.

여기서 실수는 두 입력을 개별적으로 테스트하고 결합된다고 가정하는 것입니다. 학습자는 조건이 작동함을 증명하기 위해 두 입력을 동시에 트리거해야 합니다. 하나의 입력만으로 동작이 실행된다면 조건이 실제로 동작을 감싸고 있지 않은 것입니다.

  • 체크포인트: 두 입력이 동시에 활성화될 때만 동작이 트리거됩니다.

단계 5: 감지-생각-실행 루프 구축하기

이제 지금까지 사용해 온 패턴을 공식화하세요: 입력을 읽고, 조건에 따라 결정을 내린 후, 출력을 생성합니다. 학습자들이 이 세 부분으로 구성된 루프를 종이에 작성하고 각 블록을 한 부분에 매칭하도록 하세요. 패턴에 이름을 붙이면 모터로의 전환이 훨씬 쉬워집니다. 모터는 단지 또 다른 출력일 뿐이기 때문입니다.

흔한 실수는 루프를 반복되는 것이 아니라 일회성 시퀀스로 취급하는 것입니다. 보드가 한 번 반응한 후 추가 입력을 무시하면, 프로그램은 시퀀스를 한 번만 실행하는 대신 계속 확인해야 합니다.

  • 체크포인트: 보드는 첫 번째 입력뿐만 아니라 반복되는 입력에도 계속 응답합니다.

단계 6: 로직이 작동한 후에만 모터를 추가하세요

학습자가 프로그램의 동작을 예측할 수 있게 되면 움직임을 도입하세요. 첫 번째 모터 프로그램은 의도적으로 단순하게 유지하세요: 한 방향, 한 지속 시간, 한 번의 정지. 코딩은 이미 익숙하므로, 실제 새로운 변수가 있는 배선과 전원에 주의를 집중하세요.

실수는 같은 시도에서 코드와 배선을 모두 변경하는 것입니다. 로봇이 잘못 작동하면 어떤 변경이 원인인지 알 수 없습니다. 한 가지를 변경하고 테스트한 후 다음을 변경하세요.

  • 체크포인트: 두 번째 동작을 추가하기 전에 로봇이 프로그램이 지시한 대로 정확히 움직이는지 확인하세요.

워크숍 순서 한눈에 보기

  1. 먼저 출력: LED 그리드에 아이콘 하나를 표시하고 다운로드 및 실행 주기가 작동하는지 확인합니다. 이전 아이콘이 계속 표시되면 파일이 전송되지 않은 것입니다.
  2. 다음으로 입력: 각 버튼을 누를 때마다 다른 아이콘을 트리거합니다. 아이콘이 누르지 않고 나타나면 표시 블록이 이벤트 외부에 있습니다.
  3. 세 번째 메모리: 변수를 사용하여 누름 횟수를 세고 숫자를 표시합니다. 카운트가 1로 유지되면 설정 블록이 이를 재설정하고 있습니다.
  4. 네 번째 조건: 작동이 실행되기 전에 두 개의 입력을 동시에 요구합니다. 두 입력을 하나씩이 아니라 함께 테스트하세요.
  5. 다섯 번째 루프: 감지-생각-행동 패턴을 작성하고 각 부분에 블록을 할당하세요. 한 번만 반응하면 프로그램이 반복되지 않습니다.
  6. 모터 지속 시간: 코드가 예측 가능해진 후에 하나의 움직임 동작을 추가하세요. 코드나 배선 중 하나만 변경하고, 절대 동시에 변경하지 마세요.

이 워크숍에 적합한 제품

  • 내 로봇 애완동물: 코딩 카멜레온: 컬러 센서, 적외선 센서, RGB LED가 장착되어 있으며, 컬러 액션 카드를 사용하여 애완동물을 프로그래밍하는 코딩 모드를 포함한 세 가지 독특한 플레이 모드로 코딩 및 프로그래밍할 수 있습니다. 블록 코딩 기초를 배운 후 유용한 다음 단계로, 단순한 LED 그리드 대신 센서와 컬러 출력을 통해 동일한 감지-생각-행동 패턴이 나타납니다.
  • Gecko Run: 7개 교체용 구슬 세트: 이 제품은 Gecko Run 구슬 트랙 시스템용 금속 교체용 구슬 7개 팩으로, 권장 연령은 8세 이상입니다. 워크숍에서 구슬 트랙 스테이션을 운영하는 경우, 예비 구슬이 있으면 부품이 가구 아래로 굴러가 세션이 중단되는 것을 방지할 수 있습니다.

빌드 단계 전에 코딩 단계를 실행하면 워크숍이 문제 해결 세션으로 변하지 않습니다. 프로그램이 무엇을 할지 예측할 수 있는 학습자는 논리와 배선을 동시에 접하는 학습자보다 훨씬 더 빠르게 로봇을 디버깅할 수 있습니다.