본문 바로가기

IT/Programming

Intel Edison으로 IoT 시작하기


각종 사물에 센서와 통신기능을 내장하여 인터넷을 연결하는 기술을 사물 인터넷 또는 Iot (Internet Of Things)라고 한다. 단순히 사물에 연결성을 부여하는 것을 넘어 스마트 홈, 스마트 팩토리와 같이 기존 영역에도 큰 변화를 불러오고 있다.

(일례로, 얼마전 설치한 정수기엔 WIFI가 내장되어 있어 어디서든 정수기의 상태와 간단한 조작을 전용앱을 통해 할 수 있다.)


이와 같은 IoT 디바이스를 직접 DIY로 구성하고 또 작동 로직을 프로그래밍할 수 있도록 나온 제품들이 있다

Rasberry PI, Arduino, Intel Edison등 작은 보드에 여러가지 센서들을 장착하여 사용할 수 있도록 하는 제품들인데, POC (Proof Of Concept)을 진행하거나 각종 Prototype을 만들기에 적당하다. 


이중에서 Intel에서 내놓은 Intel Edison를  소개하고자 한다.



Intel Edison은 2014년에 발표된 50$ 정도의 가격과 SD카드 크기 수준의 작은 칩이다. 하지만 이 싸고 작은 칩안에 Dual Core 1G Ram, 4G Flash, Wifi, Bluetooth LE가 내장되어 있다. 소비전력은 0.5W 보다 작은 정도이다. 시중의 스마트폰 충전기보다 적은 양이다.

OS는 Yocto Linux v1.6, Arduino IDE, Eclipse (C, C++, Phyton), Intel XDK (Node.JS, HTML5)와 같은 개발 플랫폼을 지원한다. 인텔은 웹사이트를 통해 리눅스 (Linux)와 Mac OSX, 윈도우를 위한 IDE, 에디슨 SDK 등을 지원한다.


즉, Linux를 돌리고 Linux안에서 지원되는 각종 플랫폼과 서비스를 이 작은 칩안에서 돌릴 수 있다는 말이다. 그것도 Bluetooth와 무선 인터넷을 통한 연결형 서비스를 말이다.



 Arduino와 완벽히 호환되는 Arduino Breakout Kit 번들을 사면 에디슨 칩을 해당 Breakout Board에 장착해서 사용할 수 있다. 스타트 킷으로 포함된 각종 센서들을 사용하여, 기본적인 작동 방식을 학습해 볼 수 있다.




여러가지 방법으로 Edison을 이용하기 위해 각종 IDE나 프로그램 언어를 사용할 수 있겠지만, 기본적으로 Intel과 Arduino에서 제공하는 IDE를 사용하면, 기본적으로 제공하는 라이브러리에 쉽게 접근해 Edison과 Arduino를 작동할 수 있다.






Intel XDK를 사용하면, Node.js Application을 Bracket 기반의 에디터에서 작성하고, Edison에 Serial로 연결해서 Upload할 수 있다. 센서를 작동시킬 수 있는 mraa라는 기본 라이브러리를 제공하여, LED를 작동시키는 기본 동작부터, LCD나 NFC 칩을 UART라는 시리얼 통신으로 작동시킬 수 있는 프로그램을 javascript로 작성할 수 있다.



Arduino IDE를 사용하면 Sketch라는 프로그램을 C와 유사한 형식의 Arduino 언어를 통해 작성할 수 있다.


일단 여기까지 Intel Edison의 특징과 사용방법을 간단하게 살펴보았다. 다음 시간에는 Intel Edison을 사용하여 각종 센서를 작동시키거나 센서의 값들을 가지고 활용할 수 있는 예제를 살펴보도록 하겠다.