M 중등 핵심 4차시 확장 6차시 25점 루브릭

설계하고, 만들고, 코드로 달린다.

중학교 「미래 수송기기」 수업입니다. 우리 팀 전기차를 만들고 mBlock, Python, 센서로 움직입니다.

무엇을? 친환경 전기자동차를 설계하고 제작합니다.
어떻게? 문제 찾기 → 차체 만들기 → 블록 → Python → 센서.
끝나면? 미션 코스를 달리고 발표합니다.
미래 수송기기 설계에서 코딩 미션까지 이어지는 흐름 문제 정의, 차체 제작, 블록과 Python 코딩, 센서 미션이 화살표로 이어진 학습 다이어그램입니다. 문제 제작 코딩
  • 1단계
    문제를 찾고 콘셉트 선택
  • 2단계
    차체와 바퀴 제작
  • 3단계
    코드와 센서로 미션

6-Lesson Roadmap

한눈에 보는 M 로드맵

정규 4차시로 들어가고, 시간이 있으면 Python과 자율주행까지 넓힙니다.

1 ?

미래 수송기기 문제 정의

자동차 문제를 찾고 우리 팀 콘셉트를 고릅니다.

IDEA 노트토의
수업 열기 →
2

차체 설계와 제작

스케치하고 골판지 차체와 바퀴를 만듭니다.

설계제작
수업 열기 →
3

mBlock으로 제어하기

모터, 서보, LED 블록을 코드와 연결해 봅니다.

mBlockArduino 코드
수업 열기 →
4 Py

Python으로 확장하기

변수와 반복으로 주행 순서를 직접 씁니다.

Python변수·반복
수업 열기 →
5

센서 자율주행

초음파나 적외선 값을 보고 스스로 움직입니다.

조건센서
수업 열기 →
6 🏁

미션 수행·발표·평가

장애물, 오르막, 박스 운송을 시험하고 발표합니다.

미션25점 평가
수업 열기 →
?문제 정의
설계
제작
순차
반복
if조건
x변수
센서

Mission Choice

미션은 팀이 고르고 고칩니다

센서 미션을 고르고, 마지막에는 수행평가 코스로 확인합니다.

🚧장애물 회피

초음파 거리가 가까우면 멈추고 방향을 바꿉니다.

임계값 정하기 회피 동작 고치기

라인 트레이싱

적외선 line1, line2 값을 보고 좌우를 보정합니다.

검은선 읽기 속도 조절

📦최종 코스

장애물+오르막 또는 박스 운송을 3분 안에 도전합니다.

라인오버 줄이기 발표 준비
콘셉트 정하기
차체 움직이기
코드 3번 시험
개선점 말하기

Teacher Detail

교사용 자세히

준비물, OS·드라이버, 지도안 원문, 워크시트, 루브릭은 닫아 두었습니다.

운영·환경 상세 정규 4차시 진입, 6차시 확장, 도구 사다리, 성취기준 주의와 커리큘럼 표를 보존합니다.

중학교 기술 교과 4차시 정규 연계

학교 정규 수업·수행평가 흐름에 맞춘 엘리오 교육 콘텐츠입니다. B2B 패키지로 공급/이관합니다.

4차시 + 6차시 확장안

중3 기술·가정 「미래수송기기(친환경 전기자동차) 만들기」 4차시(2019 수행평가) 원자료가 출발점입니다. 정규 교과에는 4차시 핵심안으로 진입합니다. 운영 시간이 있으면 mBlock 코드생성, Python 텍스트 코딩(신설), 자율주행까지 6차시로 확장합니다.

도구 사다리

스마트폰 앱(개념 복습) → mBlock(블록 + Arduino 코드생성·텍스트 코드 관찰) → Python BLE SDK elio / Python UART SDK elio-uart(센서 상태 읽기) + Entry(블록 대안·저학년 하향 호환).

구성·평가

3인 1모둠 · 1작품. 평가는 25점(개인 활동지 10 + 모둠 활동 15)입니다. 성취기준 코드 [9정…][9기가…]는 NCIC 실제 대조 전 예시로 (대조필요) 표기입니다.

영상 운영

mBlock·Python 텍스트 코딩 전용 수업 영상은 공개채널에 없어 관련 개념은 앱·블럭리 영상으로 대체하거나 교사 라이브 코딩으로 진행합니다.

드라이버·OS

mBlock 차시는 PC + USB 시리얼 케이블, Python 차시는 Python 3와 pyserial, BLE 동글 또는 USB-UART 어댑터 경로를 선택합니다. 세부 준비물은 차시별 지도안에 보존했습니다.

차시 제목 핵심 활동 주도구
1 미래 수송기기 문제 정의 내연기관차 문제점 분석, 개선 아이디어·콘셉트 선정(IDEA 노트) 워크시트·토의
2 차체 설계와 제작 스케치·부품도·치수 계획, 골판지 차체 제작(벨크로 탈부착) 설계·제작
3 mBlock으로 제어하기 DC·서보·LED 블록 제어, Upload 모드 Arduino 코드 관찰 mBlock
4 Python으로 확장하기 SDK로 모터 제어, 변수·for/while·time.sleep 주행 시퀀스 Python(BLE/UART)
5 센서 자율주행 (초음파·적외선) 센서 값 조건 분기, 장애물 회피 또는 라인 트레이싱 mBlock / Python UART
6 미션 수행·발표·평가 장애물+오르막 / 박스 운송 미션, 발표·상호평가·성찰 발표·평가
6차시 지도안 원문 학습목표, 성취기준, 준비물, 전개, 안전, 평가/루브릭, 수업 영상을 차시별로 보존합니다.

각 차시는 6칸 지도안입니다. 영상 출처 = 박스파이터 공개채널.

1

미래 수송기기 문제 정의

학습목표
기존 디젤/가솔린 수송기기의 문제점을 3가지 이상 분석하고 친환경 전기자동차로의 개선 아이디어를 제시한다. 자율주행 수송기기가 사회에 미칠 영향을 예측해 설명한다.
성취기준 (2022 개정)
[9정03-XX] 실생활 문제 해결 알고리즘·프로그램 설계·구현 계열 (대조필요) · 기술·가정 수송기술 [9기가-XX] (대조필요)
준비물
엘리오 보드 1개(모둠), IDEA 노트(워크시트), 필기구, 자(30cm), (전시) 완성 작품 사진·영상.
전개 (45분)
도입5(내연기관차 vs 전기차 문제의식) · 시연10(예시 영상·6차시 목표 안내) · 실습25(IDEA 노트: 문제점 3+ · 개선안 · 모둠 콘셉트 선정) · 정리5(콘셉트 공유·다음 차시 예고).
안전
토의·작성 중심(없음). 전시 작품의 모터·배터리 취급 주의만 안내.
평가/루브릭
개인(10): "기존 자동차 분석·대안" 반영. 모둠(15): "문제 발견·개선" 착수.
2

차체 설계와 제작

학습목표
수송기기의 차체·바퀴를 스케치·부품도로 설계하고 치수를 계획한다. 골판지로 차체를 제작하고 엘리오·모터를 안전하게 배치한다.
성취기준 (2022 개정)
기술·가정 제조·수송기술 [9기가-XX] 설계·제작 계열 (대조필요) · [9정01-XX] 컴퓨팅 시스템 구성(입력·처리·출력·구동) 계열 (대조필요)
준비물
엘리오 보드, DC모터 2개, A3 골판지 3장/모둠, 자·칼·가위, 빨대, 벨크로, 꾸미기 재료. (교사 전담) 글루건.
전개 (45분)
도입5(콘셉트 리뷰) · 시연10(420×320mm 도면·부품도·벨크로 탈부착 시연) · 실습25(스케치·부품도·골판지 절단 조립, 바퀴 1세트 창의 제작, 엘리오·DC모터 벨크로 부착) · 정리5(진척 점검·다음 차시 예고).
안전
칼·가위 자세·방향 지도. 글루건은 교사 전담(학생 직접 사용 금지). 절단 부스러기 정리·손 베임 주의.
평가/루브릭
개인(10): "설계·디자인", "타이어(바퀴) 제작 계획". 모둠(15): "디자인/바퀴 표현".

▶ DC모터 영상으로 모터·바퀴 배치 개념을 참고합니다.

3

mBlock으로 제어하기 (블록 → Arduino 코드생성)

학습목표
mBlock 블록으로 엘리오의 DC모터·서보·LED(IO)를 제어한다. 블록이 생성한 Arduino(텍스트) 코드를 관찰하여 블록과 코드의 대응을 설명한다.
성취기준 (2022 개정)
[9정03-XX] 순차·반복·선택 구조 프로그램 작성 계열 (대조필요) · [9정01-XX] 센서·액추에이터 피지컬 컴퓨팅 계열 (대조필요)
준비물
엘리오 보드, 조립한 차체, PC(mBlock) + USB 시리얼 케이블(Live/Upload 모드), 엘리오 mBlock 확장 elio.s2e. (참고) 시리얼 115200 bps.
전개 (45분)
도입5(조종 vs 코드 제어) · 시연10(확장 설치·연결, sendDC/sendServo/sendIO 블록, Live vs Upload 모드 차이) · 실습25(전진·정지·좌/우회전·서보 조향·LED, Upload 생성 Arduino 코드 캡처·대응 표시) · 정리5(시퀀스 시연·다음 차시 예고).
안전
모터 구동 시 바퀴에 손·머리카락·옷 말림 주의, 주행 구역 확보. USB 커넥터 방향 확인.
평가/루브릭
개인(10): "제작/발표 참여". 모둠(15): "동력 전달/구동".

▶ mBlock 전용 영상은 공개채널에 없어 블록 제어 개념을 앱·블럭리 영상으로 대체합니다.

4

Python으로 확장하기 (텍스트 코딩)

학습목표
Python 엘리오 SDK로 모터를 제어하는 프로그램을 작성한다. 변수·반복(for/whiletime.sleep으로 주행 시퀀스를 구현한다.
성취기준 (2022 개정)
[9정03-XX] 텍스트 기반 프로그래밍 언어로 프로그램 작성 계열 (대조필요) · [9정03-XX] 변수·연산·제어구조 활용 계열 (대조필요)
준비물
엘리오 보드, PC(Python 3), pyserial. 경로 택1 — (A) BLE SDK elio(pip install elio) + Nordic USB 동글(필수), (B) UART SDK elio-uart + USB-UART 어댑터(세대3 ELIO_52810). ⚠ 두 SDK는 프로토콜이 달라 호환 안 됨.
전개 (45분)
도입5(블록=코드 조각 조립 복습) · 시연10(교사 라이브 코딩, BLE 기본형) · 실습25(전진 2초→정지, for 사각형 주행, 변수 power 속도 조절) · 정리5(포트·동글 오류 해결 공유·다음 차시 예고). 회전은 좌/우 모터 부호 반대(dc1=100, dc2=-100).
안전
주행 실행 전 주변 정리(장애물·낙하 방지). while True 코드에는 반드시 정지 조건·Ctrl+C 안내.
평가/루브릭
개인(10): "제작/발표 참여" + 코드 작성 완성도. 모둠(15): "문제 발견·개선"(디버깅).

텍스트 코딩 차시 — 영상 없음, 교사 라이브 코딩

Python 텍스트 코딩 전용 수업 영상은 공개채널에 없습니다. 영상을 생략하고 교사 시연으로 대체합니다. 시연 기본형(BLE SDK):

import elio, time
e = elio.Elio()
e.open()                       # 동글 포트 자동 검색
e.sendInit()
e.sendPower(dc1=100, dc2=100)  # 전진
time.sleep(1)
e.sendPower(dc1=0, dc2=0)      # 정지
e.close()

워크시트 코드란: ① 전진 2초→정지 ② for로 사각형 주행(전진→회전 4회) ③ 변수 power로 속도 조절.

5

센서 자율주행 (초음파·적외선)

학습목표
초음파(거리)·적외선(라인) 센서 값을 읽어 조건에 따라 스스로 주행하는 프로그램을 만든다. 장애물 회피 또는 라인 트레이싱 중 하나를 구현한다.
성취기준 (2022 개정)
[9정03-XX] 센서 입력에 따른 선택·반복 구조 계열 (대조필요) · [9정01-XX] 센서·액추에이터 피지컬 컴퓨팅 계열 (대조필요) · [9정04-XX] 인공지능/자율 시스템 원리·영향 계열 (대조필요)
준비물
엘리오 보드(초음파·라인 센서), 차체, PC. mBlock 센서 블록(decideToUseSensor + 초음파 거리 reporter) 또는 Python UART SDK(ch.sensorConfig(...)ch.readStatus()sonic_cm/line1/line2 읽기).
전개 (45분)
도입5(자율주행 원리 = 센서→판단→구동) · 시연10(센서 연결·활성화, 값 읽어 조건 분기, Python UART 예) · 실습25(모둠 택1: (A) 장애물 회피(초음파<임계값→회전) / (B) 라인 트레이싱(line1/line2 좌·우 보정), 임계값·속도 튜닝·시험 주행) · 정리5(실패 원인 토의·미션 준비).
안전
자율 주행 중 예측 못한 이동 → 코스 밖 낙하·충돌 주의, 정지 버튼·조건 필수. 무한 루프 정지 방법 재확인.
평가/루브릭
개인(10): "자율주행 상용화 영향 예측"(성찰). 모둠(15): "문제 발견·개선", "미션 통과" 준비.

▶ Python UART 자율주행 예시는 워크시트 코드 작성란에서 sonic_cm 임계값·속도를 채워 구현합니다.

6

미션 수행·발표·평가

학습목표
완성한 수송기기로 미션(장애물+오르막 / 박스 운송)을 수행한다. 설계·제작·코딩 과정을 발표하고 개선점을 성찰한다.
성취기준 (2022 개정)
[9정03-XX] 프로그램 실행·평가·개선 계열 (대조필요) · 기술·가정 문제해결·의사소통 [9기가-XX] 계열 (대조필요)
준비물
완성 작품, 미션 코스(폭 30cm 도로·장애물·오르막·이삿짐 박스), 초시계, 평가표(루브릭), 발표 자료.
전개 (45분)
도입5(미션 규칙·평가 기준) · 시연10(코스 시범, 라인오버·감점·3분 규칙: Mission 1 폭 30cm 도로·장애물 회피·오르막, 라인 이탈 3회당 1점 감점, 3분 초과 실패 / Mission 2(선택) 이삿짐 박스 운송 3분 내, 부착·적재 금지) · 실습25(모둠별 미션·발표·상호 평가) · 정리5(우수작 공유·자율주행 영향 토의·소감).
안전
미션 코스 관람 시 주행 경로 침범 금지, 오르막·낙하 구간 보조.
평가/루브릭
개인(10): 분석·대안/설계·디자인/바퀴 계획/제작·발표 참여/영향 예측. 모둠(15): 동력 전달·구동/디자인·바퀴/문제 발견·개선/발표/미션 통과.

▶ 마무리 감상용(선택).

평가 루브릭 원문 중3 미래수송기기 수행평가 25점, 개인 활동지 10점 + 모둠 활동 15점을 보존합니다.

A. 개인 활동지 (10점)

# 평가 요소 배점 상 (만점) 연계 차시
1기존 자동차 분석·대안2문제점 3+ 구체적, 개선안 타당1
2설계·디자인2스케치·부품도 치수까지 명확2
3타이어(바퀴) 제작 계획2창의 바퀴 아이디어·근거 제시2
4제작·발표 참여2제작·코딩·발표 적극 기여3~6
5자율주행 상용화 영향 예측2긍정·우려 균형 있게 예측1·5·6
소계10

B. 모둠 활동 (15점)

# 평가 요소 배점 상 (만점) 연계 차시
1동력 전달·구동3전진·회전·정지 안정적 구동3·4
2디자인·바퀴 표현3콘셉트 일관·창의 바퀴 완성도 高2
3문제 발견·개선3오류·실패를 분석해 개선 반영4·5
4발표3설계·코드·문제해결 논리적 발표6
5미션 통과3Mission 1(또는 2) 성공6
소계15

미션 채점 규칙

Mission 1 (장애물 + 오르막): 폭 30cm 도로, 장애물1 회피, 오르막(장애물2) 통과. 라인 이탈 3회당 1점 감점. 옆으로 떨어지면 라인오버 1회 → 장애물 앞으로 이동 후 재도전. 3분 초과 시 실패.

Mission 2 (이삿짐 박스 운송 · 선택): 3분 내 운송. 박스 부착·적재 금지, 이동 중 떨어지면 라인오버 1회. 미션 해결 위해 구조 개조 가능.

⚠ 성취기준 코드는 NCIC 실제 대조 전 예시 (대조필요)이며, mBlock·Python 텍스트 코딩 전용 영상은 공개채널 미제공(교사 라이브 코딩 대체)입니다. 상세 배점·채점표는 루브릭.md를 따릅니다.

학생 워크시트 원문 트랙 M 학생용 차시별 활동지, 개인 기록과 모둠 기록 항목을 보존합니다.

트랙 M 학생용 워크시트를 차시별 활동지로 옮겼습니다. 개인 기록과 모둠 기록을 함께 남깁니다.

기본 정보

학교/학년/반모둠명
모둠원(3인)나의 이름
나의 역할
1

미래 수송기기 문제 정의 (IDEA 노트)

#문제점왜 문제인가
1
2
3
  • 개선 아이디어: 친환경 전기자동차로 어떻게 해결할지 자유 서술합니다.
  • 우리 모둠 수송기기 콘셉트: 개인안(용도·특징), 모둠 선정안, 선정 이유를 씁니다.
  • 자율주행 수송기기가 사회에 미칠 영향: 긍정 1가지와 부정·우려 1가지를 예측합니다.
2

차체 설계와 제작

스케치란 — 420×320mm 개념 도면 칸에 등각/사투상도로 그리기
부품모양가로(mm)세로(mm)개수비고
차체(바닥)골판지
앞바퀴창의 제작 세트
뒷바퀴창의 제작 세트
엘리오 자리벨크로 부착
DC모터 자리벨크로 부착
  • □ 골판지 절단 전 크기 계획 완료
  • □ 앞/뒷바퀴 1세트 팀 아이디어로 창의 제작
  • □ 엘리오·DC모터를 벨크로로 탈부착(글루건 부착 금지)
  • □ 차체 균형·무게중심 확인
3

mBlock으로 제어하기

목표 동작사용 블록값(예)
전진DC1로 정하기 / DC2로 정하기dc1=100, dc2=100
정지DC로 정하기0, 0
좌회전DC로 정하기(한쪽 반전)dc1=100, dc2=-100
우회전DC로 정하기dc1=-100, dc2=100
서보 조향SV로 정하기각도=
LED 켜기IO로 정하기포트=, 값=
  • 블록 조립 순서: 시작 → 전진 → 회전 → 정지 흐름으로 그립니다.
  • Upload 모드로 생성된 Arduino 코드 일부를 붙이고, sendDC 블록과 대응하는 코드 줄을 표시합니다.
  • 알게 된 점: 블록과 코드의 관계를 한 문장으로 정리합니다.
4

Python으로 확장하기 (텍스트 코딩)

코드 빈칸 활동

전진 값, 시간, 반복 횟수, 회전 방향을 채워 주행 코드를 완성합니다.

import elio, time
e = elio.Elio()
e.open()
e.sendInit()
e.sendPower(dc1=____, dc2=____)
time.sleep(____)
e.sendPower(dc1=0, dc2=0)
e.close()
  • for 반복으로 전진→회전을 4번 수행해 사각형 주행을 만듭니다.
  • power 변수에 0~100 값을 넣어 속도를 조절합니다.
  • 좌회전/우회전 때 DC1·DC2 부호가 어떻게 달라지는지 정리합니다.
5

센서 자율주행 (초음파·적외선)

  • 선택 미션: □ 장애물 회피(초음파) / □ 라인 트레이싱(적외선 line1/line2)
  • 의사코드: 반복 → 센서 값 읽기 → 조건 판단 → 회피 또는 직진 동작을 씁니다.
  • Python UART 코드 작성란에는 sonic_cm 임계값과 회피·직진 모터 값을 채웁니다.
시도임계값(cm)속도결과(성공/실패·이유)
1
2
3
6

미션 수행·발표

미션시도소요시간라인오버 횟수성공?문제·개선
Mission 1 (장애물+오르막)1
Mission 12
Mission 2 (박스 운송·선택)1
  • 발표 준비: 콘셉트·특징, 가장 어려웠던 점과 해결 방법, 코드에서 자랑하고 싶은 부분을 정리합니다.
  • 최종 성찰: 설계·제작·코딩에서 배운 점, mBlock과 Python의 차이, 자율주행 상용화의 긍정/우려, 다시 만든다면 개선할 점을 씁니다.

중등 텍스트 코딩 트랙, 학교·자유학기·동아리에 맞게 설계합니다.

운영 시간과 하드웨어(BLE 동글 / UART 어댑터)에 맞춰 차시·SDK 경로를 조율합니다. 지도안·워크시트·루브릭·영상을 제공합니다.