무선 센서 네트워크는 센서를 갖춘 초소형 무선 통신 단말들이 모여 구성되는 네트워크이다. 정확한 용어는 몰랐더라도, 지면이나 TV를 통해 유사한 개념이 많이 소개되었으므로 이 책을 읽으시는 독자라면 낯선 것만은 아니라고 생각된다.
매우 추운 겨울, A가 외출을 마친 후 자신의 아파트로 돌아가고 있다. 아파트 단지에 들어가는 순간, 코트에 부착된 아주 작은 무선 단말이 온도 센서를 통해 감지된 A의 체온과 현재 기온을 주위로 전송하고, 이 정보가 A의 집을 관리하는 중앙 관리 단말까지 전달된다. 중앙 관리 단말은 A가 집에 들어오기도 전에 미리 난방 장치를 켜서 방 안 온도를 관리하고, 물을 데워 둔다. A는 집에 들어가자마자 따뜻한 온수로 샤워를 하고, 적당한 온도의 방에서 휴식을 취할 수 있었다.
위 이야기는 일견 CF에서나 가능할 것 같지만, 실제로 센서 네트워크를 통해 쉽게 구축할 수 있는 일례일 뿐이다. 센서 네트워크는 무한한 가능성을 지니고 있으며, 미래 유비쿼터스 사회의 핵심이 될 기술 중 하나이다. 많은 연구 기관과 기업체들이 센서 네트워크 연구에 투자를 아끼지 않고 있으며, 신 기술 개발과 무선 단말의 소형화가 급속도로 이루어지고 있기도 하다. 그러나 하드웨어 기술이 어느 정도 성숙 단계에 접어들고 있음에 비해, 아직 미성숙 단계인 소프트웨어 기술이 본격적인 상용화의 발목을 잡고 있다.
이 책에서는 센서 네트워크를 운영하기 위한 초소형 운영체제인 NanoQplus와 Tiny OS에서의 프로그래밍 방법을 소개하고 있다. NanoQplus는 한국전자통신연구원에서 개발한 국산 운영체제로 앞으로 많은 활용이 기대되고 있으며, TinyOS는 현재 가장 널리 쓰이는 운영체제이다. C 혹은 자바를 어느 정도 다룰 줄 알며 센서 네트워크에 대해 추상적으로 알고 있는 독자를 대상으로 하였으므로, 제한된 지면에서 깊은 내용까지 다루기는 힘들었으나 최대한 많은 것을 담기 위해 노력하였다. 특히 TinyOS에 비해 관련 기술 문서나 개발 노하우 축적이 부족한 NanoQplus에 대해 많은 심혈을 기울였다. 이 책을 시작으로 하여 많은 좋은 자료들이 나올 것으로 기대한다.
이 책은 크게 NanoQplus를 소개한 1부와 TinyOS를 소개한 2부로 나눌 수 있다. 각각의 장에서는 다음과 같은 내용을 다루고 있다.
1장: NanoQplus와 NanoQplus 구조를 간략하게 소개하고 있다.
2장: NanoQplus로 프로그램을 개발하기 위한 환경을 구축하는 방법을 설명하고 있다.
3장: 간단한 예제를 통해 NanoQplus를 이용한 프로그래밍 방법을 소개하고, 기본적인 API를 설명하고 있다.
4장: 센서 네트워크를 구축하기 위해 필요한 내용들을 익히기 위해 실제로 센서 네트워크를 구성해본다.
5장: 새로운 라우팅 프로토콜의 개발을 통해 NanoQplus의 네트워크 프로토콜 스택의 구성요소와 네트워크 프로토콜의 개념에 대하여 알아본다.
6장: TinyOS를 소개하고, TinyOS 개발 환경을 구축하는 방법을 설명하고 있다.
7장: 간단한 예제들을 분석하여 nesC를 이용한 TinyOS 프로그래밍을 소개하고 있다.
8장: TinyOS를 이용해 화재 감시 관리 프로그램을 구축함으로써 실제 센서 네트워크에 대한 개념과 구축 방법을 소개하고 있다