초등학교 재량활동시간에 라인트레이서를 이용한 C프로그래밍 학습모형
*문외식
1)진주교육대학교 컴퓨터교육과
요 약
최근 IT 및 융합기술 발달로 로봇이 컴퓨터를 대신하여 문제해결력, 알고리즘향상 학습을 위한 새로운 창의 성교구로 각광을 받고 있다. 본 연구에서는 초등학교 고학년생이 재량활동시간에 라인트레이서를 이용하여 프로 그래밍학습을 할 수 있도록 교육과정(12차시분)을 제안하고 성공 가능성을 평가하기 위해 차시별 학습결과물 중심으로 성취수준을 평가하였다. 결과로서, 실행오류의 분석을 통해 라인트레이서를 이용한 프로그래밍 학습이 컴퓨터프로그래밍 학습에 비해 창의성요소가 우수함을 확인하였다. 또한, 라인트레이서를 이용한 프로그래밍학 습 방법은 컴퓨터를 대신할 새로운 창의성 학습도구로 성공할 수 있는 가능성을 확인하였다.
키워드: 로봇, 라인트레이서, 프로그래밍, 교육과정, 평가
A C-Programming Learning Model Using a Line Tracer in Discretionary Activity Hours in Elementary Schools
Wae-shik Moon
Dept. of Computer Education, Chinju National University of Education
ABSTRACT
This study suggested an educational curriculum(12 class periods) in order for higher level elementary school students to learn programming in discretionary activity hours using a line tracer and evaluated achievement level based on the outcome of learning by class period to assess the possibility of success. As a result, it could confirm that the programming learning using the line tracer was more excellent in creativity than the computer programming learning. In addition, it has been found that the programming learning method using the line tracer had a potential to be successful as a new creative tool that could replace the computer.
Keywords: Robot, Line Tracer, Curriculum, Teaching materials, Evaluated
- 이 논문은 2011년 진주교육대학교 학술연구비 지원에 의한 것임 논문투고: 2011-08-16
논문심사: 2011-08-30
심사완료: 2011-11-08
1. 서 론
2010년 로봇산업실태 조사보고서에 의하면 국내에 서는 2009년 9074억원의 로봇시장이 형성되어 있으며 전년대비 성장률이 약 21% 증가하고 있다. 그중에서 도 청소로봇 및 교육용로봇 등 서비스로봇은 전년대 비 66.5% 성장하였다[11]. 이처럼 로봇이 국가의 신 성장 산업으로 폭발적으로 각광을 받고 있다. 수년전 부터 로봇을 창의성 학습교구로 사용했던 학원 등 사 교육 기관들이 점차 늘기 시작하여 현재 는 방과 후 학교에서 로봇을 활용한 학습이 초등학교에서는 80%
이상 채택하여 운영되고 있다[10]. 또한, 2008년 말부 터 STEAM(Science, Technology, Engineering, Arts, Mathematics)교육을 정규교과와 연계하여 로봇을 활 용하는 방안이 연구와 소규모 시법사업으로 활발히 진행되고 있으며 초등학교의 4-6학년 중심으로 로봇 을 활용한 수업지도안이 개발되고 있다.
특히, 2010년부터 지식경제부가 주관하는 로봇포럼에 서는 새로운 표준화된 플랫폼의 교육용로봇 개발에 대 한 논의가 활발히 진행 중에 있으며, 교육과학기술부에 서는 유치원교육에 교육용로봇을 이용한 창의성 학습방 법을 지원하고 있다[10]. 그러나 아직까지 초등학교에서 는 기존 컴퓨터에 비해 로봇을 활용한 교육환경(하드웨 어, 소프트웨어, 교육과정, 교재 등)이 재대로 구축되어 있지 않고 있다. 본 연구에서는 이러한 열악한 교육적 환경에서도 비교적 수월하게 학습 환경을 변경하여 로 봇학습을 할 수 있게 라인트레이서를 활용한 프로그래 밍 학습모형을 제안하고 이를 초등학생 6학년을 대상으 로 재량활동시간에 적용하고 성취수준을 평가하였다.
특히, 본 연구에서 학습 후 미션을 제시하고 이를 수행하는 과정과 결과물을 분석한 결과 본 논문에서 제안한 학습모형이 초등학교 재량활동시간, 특별활동 시간에 긍정적인 창의성 평가요소들이 컴퓨터 프로그 래밍 학습에 비해 우수함을 확인하였다.
2. 관련연구
2.1 라인트레이서란?
로봇이란 일반적으로 전기, 전자, 기계, 컴퓨터, 통
신 등의 다양한 공학기술의 복합체(융합기술)로 만 들어지고 인간의 일부분을 닮은 지능형 기계장치 로 인간이 요구하는 사항을 달성하기 위해 스스로 느끼고, 판단하며, 행동하여 결과를 얻는 기계라 할 수 있다[7]. 라인트레이서(Line tracer)란 Line (선)과 Tracer(추적자)의 합성어로 선을 따라 이동 하는 로봇을 말한다[7]. 라인트레이서는 제조공장 이나 물류창고 등의 산업현장 등에서 제품을 이동 시키는데 가장 많이 사용되는 메카니즘으로 프로 그래밍에 의해 동작하는 프로그래밍형 라인트레이 서와 단순히 하드웨어인 센서에 의해 동작하는 비 프로그래밍형 두 가지로 구별한다. 본 연구에서는 프로그래밍학습을 위해 Basic 및 C언어로 동작하 는 프로그래밍형 라인트레이서를 실험적 학습도구 로 선택하였다.
2.2 라인트레이서 구성 요소
라인트레이서의 일반적인 구성요소는 크게 기구부 와 제어부로 나눌 수 있으며 프로그래밍형 라인트레 이서의 개괄적인 외관은 (그림 1)과 같다.
특히, 제어부는 (그림 2)처럼 주제어를 담당하는 CPU를 중심으로 4가지 부분으로 구성되어 있다.
먼저, 주행의 기준인 라인과 로봇의 상대적인 위치 를 파악할 센서부가 있어야 하고, 센서부로부터 입 력된 정보를 기초로 로봇의 자세를 수정하고 모터 의 동작 명령을 계산하기 위한 제어부(알고리즘 수 행)가 필요하다. 또한, 알고리즘 수행 결과 출력된 전체 시스템을 동작시키기 위한 전원부가 추가로 필요하다[8].
(그림 1) 라인트레이서 일반적 형태
모 터 라
인
센 서
CPU
알고리즘 전원
왼쪽모터: 왼쪽바퀴
오른쪽모터: 오른쪽바퀴
(그림 2) 프로그래밍형 라인트레이서 구성도 2.2.1 주행 알고리즘
(그림 3)은 라인트레이서의 주행과 관련한 광센서 의 감지로 모터의 구동에 연관된 전체 주행 흐름을 나타낸 그림이다. 라인트레이서의 라인스켄 방법에 있어서 밝은 색은 빛을 반사하지만 검은색의 경우는 대부분의 빛이 흡수되어 반사광이 없다는 것을 스캔 한다. 따라서 이 반사광을 광센서로 감지하여 빛이 들어올 경우 모터를 작동시키고 반사광이 없을 때(검 은색 선에 센서가 위치 할 경우)는 정지하게 한다.
센서를 3개 만든 다음 검은 선이 중앙 센서에 오도록 하면 모터가 모두 회전하여 전진한다. 이 후 곡선부 에서 한쪽센서가 닿게 되면 검은 선을 감지한 센서쪽 의 모터는 정지하고 반대쪽 모터만 회전하여 곡선을 주행하게 된다. 이러한 원리로 라인스캐너는 검은 선 을 따라 이동한다[3].
(그림 3) 라인트레이서의 주행 흐름도
2.2.2 라인트레이서 동작 프로그램 언어
일반적으로 로봇을 동작시키는 프로그램은 컴퓨터 를 기반으로 하는 전통적 언어를 기초로 만들어져 있 다. 널리 알려진 Basic, C, Java등이 라인트레이서 동 작용 프로그램으로 사용되고 있으며 최근에는 프로그 래밍 작성이 편리하도록 시각적 화면(GUI)구성 방식 으로 명령어를 아이콘 모양의 함수로 만들어 단순히 드래그&드롭 형태로 프로그래밍 할 수 있어 복잡한 문법 및 명령어 그리고 번거로운 코딩문제를 해결할 수 있다. 본 연구에서는 초등학생들의 창의성 도구로 많이 사용하는 C언어를 기반으로 하는 ATmel AVR 툴인 AVR Studio4를 실험 및 학습용으로 선택하였 다. 이 언어는 컴퓨터기반 C언어에 비해 기능별로 많 은 함수 위주로 이루어져 있어 초등학생들이 가장 많 이 발생시키는 코딩오류를 많이 줄일 수 있는 장점이 있다.
(그림 4) 라인트레이서 동작 소프트웨어(AVR Studio4) 2.2.3 라인트레이서 프로그래밍 학습과정
라인트레이서 프로그래밍 과정은 일반 컴퓨터 프
로그래밍 과정과는 달리 제한된 기능을 수행하기 위
해 제작된 경우가 많아 지원되는 프로그램언어의 명
령어가 제한적이며 하드웨어 의존도가 높다는 것이
다소 제약점이 있다. 그러나 컴퓨터 프로그래밍 학습
에서 체험하지 못한 하드웨어 개념을 자연스럽게 이
해할 수 있으며 복잡하지 않은 문법과 제한된 명령어
는 초등학생들이 쉽게 학습할 수 있다는 큰 장점이 있다. 라인트레이서 프로그래밍을 하기 위해서는 하 드웨어와 함께 제공되는 전용 프로그래밍 환경을 사 용하는 것이 편리하며 초등학생들에게 프로그래밍 학 습을 위해서 프로그래밍환경을 설치하고 알고리즘 학 습과 창의적 프로그램 작성과정을 통해 초등학교 IT 교육의 본래 목적을 달성해야 하기 때문에 (그림 4) 와 같은 순서의 라인트레이서 동작 프로그래밍 학습 과정이 필요하다[4].
라인트레이서 하드웨어, 동작 원리이해, C명령어 학습
라인트레이서 조립, 컴파일환 경 이해
동작을 위한 프로그래밍하기 (P.C)
다운 로드
컴파일된 프로그램 라인 트레이서에 다운로드
요구대로 동작하는가?
요구대로 수행
라인트레이서 동작 종료 및 보 고서 작성
프 로 그 램 오 류 수 정
요구대로 수행하지 않음