본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

[현장] ‘머글’ 기자, 아두이노로 사물인터넷 첫발 떼다

OSS 게시글 작성 시각 2015-01-22 18:05:19 게시글 조회수 3342

2015년 01월 20일 (화)

ⓒ 블로터닷넷, 안상욱 기자 nuribit@bloter.net



1월16일 불금 저녁, 한국마이크로소프트(MS)가 기자를 불러모았습니다. 사물인터넷(IoT·Internet of Things)을 보도하는 기자에게 사물인터넷이 무엇인지 알려주겠다고 했습니다. 불금이라고 해도 딱히 할 일 없기에 일단 신청했습니다. 금요일 오후 4시. 광화문 칼바람을 가르며 경복궁이 바로 내려다 보이는 더케이트윈타워로 향했습니다.


조금 늦게 강의실에 들어섰는데 깜작 놀랐습니다. MS가 준비한 자리가 가득찼더군요. 사물인터넷에 기자들이 얼마나 관심이 많은지 느껴졌습니다. 저는 늦은 덕분에 제일 앞자리에 앉았습니다. 에반젤리스트로 기술 교육에 앞장 서는 김영욱 MS 부장이 일일 교사로 나섰습니다.


김영욱 한국마이크로소프트 부장이 1월16일 오후 서울 광화문 MS 본사에 보인 기자에게 아두이노로 사물인터넷 기본 원리를 설명했다.
▲ 김영욱 한국마이크로소프트 부장이 1월16일 오후 서울 광화문 MS 본사에 보인 기자에게 아두이노로 사물인터넷 기본 원리를 설명했다.


김영욱 부장은 이날 강의가 “‘머글’을 위한 강의”라고 설명했습니다. 머글은 ‘해리포터’에 나오는 말입니다. 마법사가 아닌 일반인을 뜻하죠. 기계에 숨을 불어넣는 프로그래밍이라는 마법을 전혀 다룰줄 모르는 기자들을 머글로 보고 그만큼 쉽게 알려주겠다는 얘기였습니다. 김 부장은 “다음주에 중학생을 상대로 교육을 진행할 예정인데 그 아이들보다 더 모른다고 생각하고 쉽게 설명하겠다”라고 선언했습니다. 뼛속부터 문돌이인 저도 근심을 한 움큼 덜었습니다.


본격적인 수업에 앞서 원래 사물인터넷이 무엇인지 설명해야 하는데, 이 단계는 그냥 넘어갔습니다. 수강생이 기자니까요. 바로 본론으로 들어갑니다. 김영욱 부장은 머글 기자에게 사물인터넷을 알려줄 교재로 아두이노를 골랐습니다.


손바닥만 한 아두이노 기판
▲ 손바닥만 한 아두이노 기판


아두이노는 이탈리아 말로 ‘친한 친구’라는 뜻입니다. 전문 개발자가 아니라도 쉽고 간단히 기기를 만들고 프로그램을 짜 작동시켜볼 수 있는 오픈소스 하드웨어입니다. 김영욱 부장은 손바닥만 한 아두이노 기판을 들어보이곤 “1만2천원짜리 아두이노 하나가 예전 애플2 컴퓨터보다 성능이 뛰어나다”라고 말했습니다.


사물인터넷, 사실 별거 아닙니다. 사물이 인터넷에 연결된다는 것뿐이죠. 커피잔이 인터넷에 연결돼 내가 하루에 커피를 몇잔 마셨는지 알려주는 거, 그게 사물인터넷입니다. 사물인터넷 기기를 만드는 법도 간단합니다. 컵에 아두이노 같은 전자회로를 달고 프로그램을 짜넣어 원하는 기능을 하도록 만들면 되죠. 모든 사물인 전자회로를 품고 인터넷에 연결되는 세상이 바로 사물인터넷입니다. 김영욱 부장은 사물인터넷의 원리를 직접 손으로 만지며 깨치도록 아두이노를 교보재로 골랐습니다.


아두이노로 뭔가 만들려면 크게 세가지를 준비해야 합니다. 기계가 있어야 하고요. 컴퓨터에 아두이노 개발 환경을 설치해야 합니다. 마지막으로 아두이노로 뭔가 만드는 사람이 모인 커뮤니티가 있습니다. 김영욱 부장이 알려준 웹사이트에 접속해 아두이노 개발 프로그램을 컴퓨터에 설치합니다. 이고잉님 생활코딩 강의를 들을 때 자바 배운다고 이클립스를 깐 적 있는데요. 복잡한 화면에 압도당한 기억이 납니다. 아두이노 개발 프로그램은 안 그렇더군요. 윈도우 메모장마냥 간단합니다. 첫인상부터 친근한 느낌적 느낌입니다.








아두이노 기판에 마이크로 USB 선을 꽂아 컴퓨터에 연결합니다. 전원이 들어옵니다. 컴퓨터와 연결 상태를 확인합니다. 아두이노는 USB를 가상 시리얼 포트로 인식한답니다. 그래서 옛날옛적에 보던 com 포트에 연결된다네요. 1~4번 가운데 몇번 포트에 연결됐는지 확인하고 아두이노 개발 프로그램에 알려줘야 프로그램을 짤 수 있습니다.








김영욱 부장이 프레젠테이션 화면에 외계어를 띄웁니다. C언어라고 합니다. 무슨 뜻인지 모르나 일단 받아적습니다. 실행 단추를 누르니, 어머나, 아두이노 기판 위에 붙은 작은 LED에 빨간 불이 깜빡입니다. 출력핀에 새끼 손톱만 한 LED 전구를 꽂으니 불빛이 더 잘 보입니다. 제가 아두이노에 숨을 불어넣은 겁니다. 프로그래밍이라는 마법으로요. 김영욱 부장 얼굴에 호그와트 덤블도어 교장이 겹쳐 보입니다. 강의실 여기저기서 작은 감탄사가 터져나옵니다.


MS_Arduino_IoT_Media_Academy_09


흥을 돋은 뒤 김영욱 부장은 아까 적은 외계어를 설명하기 시작했습니다. 13번 핀을 출력핀이라고 정한 뒤, 1초에 한번씩 전구를 13번 핀에 전기를 보냈다 끊었다 반복하는 간단한 프로그램이었습니다. 진짜 마법사(개발자)가 보면 코웃음칠 만한 일이지만 처음 직접 짠 코드로 하드웨어를 조작해 본 저는 수업에 빠져들었습니다. 외계어도 한줄씩 차분히 들여다보니 어떻게 작동하는지 대강 감이 왔습니다.


아두이노는 작습니다. 작은 기판 위에 빼곡히 칩이 붙어 있습니다. 입출력 단자가 몇개 붙어있지만 이걸로 복잡한 회로를 만들기는 무리죠. 이럴 때는 ‘빵판(Breadboard)’을 씁니다. 빵판은 길쭉한 바둑판 같은 회로판입니다. 미리 회선을 깔아둬 사용자가 납땜 안 하고도 회로를 구성해볼 수 있습니다. 선 두개를 끄집어내 빵판과 아두이노를 연결했습니다. 아까처럼 LED 전구가 깜빡입니다.






내친김에 한발 더 나가봅니다. 이번에는 덧셈·뺄셈을 이용해 LED 전구가 서서히 켜졌다 천천히 꺼지게 만들었습니다. 숨을 들이쉬고 내쉬듯 불빛이 한층 자연스러워보입니다. 김영욱 부장은 이걸 ‘반딧불이’라고 불렀습니다.


''++'은 1씩 더하는 거고 '--'는 1씩 빼는 겁니다.'
▲ ”‘++’은 1씩 더하는 거고 ‘–’는 1씩 빼는 겁니다.”


이번에는 조금 더 복잡합니다. 단추를 누르면 불이 들어오게 만듭니다. 아두이노의 디지털 입력 기능을 활용합니다. 기판에 잉여 전기(노이즈)가 흐르기 때문에 그냥 전선만 이으면 전구가 잘못 작동하기도 한답니다. 그래서 저항을 달아 잉여 전기가 아두이노로 흘러가지 않게 만듭니다. 단추가 제대로 작동하지 않아 잠깐 애를 먹었는데요. 보조 선생님으로 나서 늦게까지 수고해 준 MSP(Microsoft Student Partner) 학생들 덕분에 금방 문제를 해결했습니다. MSP 학생은 김영욱 부장이 짠 코드가 잘못됐다고 꼬집을 정도로 실력자더라고요.


수업 중에 '멘붕'이 오면 MSP(Microsoft Student Partner)가 달려와 도와줬다. 내 옆자리 베타뉴스 안병도 기자님이 도움을 받는 모습
▲ 수업 중에 ‘멘붕’이 오면 MSP(Microsoft Student Partner)가 달려와 도와줬다. 내 옆자리 베타뉴스 안병도 기자님이 도움을 받는 모습


짜잔! 단추를 누르면 불이 들어와요
▲ 짜잔! 단추를 누르면 불이 들어와요


아두이노의 꽃은 센서입니다. 각종 센서를 달면 손바닥만 한 아두이노도 스마트폰 못지 않은 기능을 구현할 수 있습니다. 주변 밝기를 인식하는 조도 센서와 스피커를 달아 주변 밝기에 따라 소리를 내도록 만들었습니다. 초음파 센서를 달아 주변 사물과 거리가 가까워지면 경고음을 내는 기기도 만들어봤습니다.






저녁 9시까지 4시간을 꽉 채운 수업은 불금이 아깝지 않았습니다. 프로그래밍 언어를 전혀 모르는 ‘머글’이었던 저도 프로그램을 짜 하드웨어를 제어하는 원리를 어렴풋이 이해할 수 있었습니다. 김영욱 부장은 아두이노로 회로를 만들고 3D프린터로 케이스를 짜 넣으면 꽤 그럴듯한 시제품까지 만들 수 있다고 하더군요.


MS는 이런 사물인터넷 강의를 따로 교육을 받기 힘든 지역사회 학생들에게도 제공합니다. 오는 23일부터 24일까지 이틀 동안 경기도 양평군 드림투게더 새싹꿈터에 지역 아동센터에 다니는 중·고등학생 20명을 초대해 이번에 ‘머글’ 기자들에게 알려줬던 프로그램을 가르쳐줄 예정입니다. 이름은 ‘유스스파크 IoT 캠프’입니다. MS가 사회공헌 활동으로 운영하는 청소년 지원 프로그램 ‘유스스파크’의 일환이죠. 저를 도와줬던 MSP 대학생 멘토 10명이 선생님으로 함께 합니다.




※ 본 내용은 (주)블로터 앤 미디어(http://www.bloter.net)의 저작권 동의에 의해 공유되고 있습니다.
Copyright ⓒ 블로터 앤 미디어. 무단전재 및 재배포 금지



[원문출처 : http://www.bloter.net/archives/218450]

맨 위로
맨 위로