[ Part3. 아이비콘 프로토타입 ]
아이비콘 프로토타입 개발 후기
이 글은 이번 ‘아이비콘’ 프로젝트를 진행하며 우리가 직접 경험한 비콘 개발에 대한 후기 입니다. 비콘 기술에 대한 전문적인 이해를 높이고 스스로가 실험 해볼 수 있는 가이드가 되기를 희망합니다.
1. iBeacon + Open Source Based Hardware
아이비콘을 활용한 서비스를 구축하기 위해서는 비콘 센서가 필요합니다. 우리가 비콘 센서를 활용하거나 관련 어플리케이션을 개발하기 위해서는 크게 다음과 같은 3가지 방법을 생각해 볼 수 있습니다.
애플의 모바일 디바이스를 비콘 센서로 활용아이폰(4S 이후), 아이패드(3세대이후), 아이패드 미니(1세대 이후), 아이팟 터치(5세대 이후)에는 블루투스4.0 모듈이 탑재되어 있어서 개발자 계정이 있다면 바로 아이비콘 관련 개발을 진행할 수 있습니다. iOS 개발은 일반적으로 맥OS에서 진행을 하는데 여기에서 특별한 점은 iOS 시뮬레이터를 이용하여 테스트를 하는 것에 일부 제한이 있다는 것입니다.
예전에는 맥에 탑재된 블루투스 모듈을 이용하거나 외부의 블루투스 동글을 이용하면 시뮬레이터에서도 블루투스 관련 개발 테스트를 진행 할 수 있었습니다. 하지만 최근의 맥OS와 Xcode에서는 애플이 인증한 블루투스 칩이 내장된 디바이스에서만 테스트 할 수 있게 되었습니다.
따라서 인터넷에서 아이비콘 관련 개발 정보들을 검색해보면, 과거 맥OS에서 블루투스 동글을 연결하여 iOS 시뮬레이터를 구동하는 정보들을 찾아 볼 수 있지만, 최근 애플 정책의 변화로 인해 시뮬레이터를 통한 블루투스 개발에는 제약이 있는 상태입니다. 맥북 프로 OSX의 개발 환경에서 내장되어 있는 블루투스 모듈을 비활성화 시킨 뒤 CSR과 브로드컴의 USB 블루투스 동글을 각각 활성화하여 테스트를 진행한 결과에서도 제약이 있음을 확인 할 수 있었습니다.현재 맥북을 비롯한 애플 디바이스에 탑재된 블루투스 모듈은 브로드컴에서 제조된 칩을 사용하는데 이외에도 CSR, TI 등 다양한 칩 벤더사가 부품을 제조하고 있습니다. 따라서 모델에 따라 애플이 인증한 블루투스 칩을 사용한 동글 제품을 사용해서 시뮬레이터를 구동하는 과정은 추가적으로 테스트 해봐야 할 것 같습니다.
Estimote의 제품과 같은 완제품 비콘 센서를 구매이들 제품은 보통 리튬 배터리를 내장하여 1~2년 정도 사용할 수 있는 스펙을 가지고 있으며 개발자를 위한 SDK를 제공하여 서비스 제공자의 목적에 맞게 다양한 형태로 개발 할 수 있습니다. 이 때의 비콘 센서는 단순히 신호를 발생하는 기능만 하기 때문에 실제로 이를 활용하는 것은 App 개발을 통해서 이루어 진다고 할 수 있습니다. 최근 국내에서는 SK 텔레콤이 비콘 센서 4종류를 출시하면서 하드웨어를 포함한 상황별 서비스를 제공하고 있고, 많은 솔루션 업체들이 위치 기반 마케팅 시장을 선점하기 위해 다양한 서비스 플랫폼을 선보이고 있습니다.
특히 최근에 출시된 ‘estimote stikers’의 경우 뒷 면의 접착제를 이용하여 센서를 어디에나 부착할 수 있도록 제작되었습니다. 비콘 신호 뿐만 아니라 온도와 움직임을 감지하는 센서가 추가로 장착되어 있어 물체의 움직임 분석, 특정 사물의 접근 유무, 분실 방지 등 다양한 용도로 활용할 수 있습니다. 예를 들어 매장에서 공간에 따른 개별적인 부가 서비스의 제공은 물론 ‘소비자가 어떠한 특정 상품에 관심을 가지며 더 많은 접촉을 하는지’ 등의 확장된 정보도 얻을 수 있습니다. 이처럼 제품 형태로 출시된 비콘 센서와 SDK를 이용하면 관련 제품 및 서비스를 보다 손쉽게 개발 할 수 있습니다.
아두이노, 라즈베리파이와 같은 오픈 소스 기반의 하드웨어와 별도의 블루투스 개발 모듈을 이용현재 TI(Texas Instruments)에서는 애플의 공식 인증을 받은 블루투스 칩을 탑재한 개발 키트와 아이비콘 센서로 사용 가능한 다양한 개발 보드를 출시한 상태인데 이외에도 여러 제조사의 제품들이 출시 되어 있습니다. 따라서 이들 제품들을 적절히 활용하여 개발하는 방법을 생각해 볼 수 있습니다.
개발 키트나 오픈 소스 기반의 하드웨어 개발 보드를 활용하는 경우, 크기나 배터리 사용 등의 측면에서 전용 비콘 센서와 비교하여 다소 불리한 부분도 있겠지만 추가 기능을 포함하는 프로토타입 개발에는 쉽게 접근 가능한 장점이 있습니다. 예를 들어 와이파이, NFC 등의 다른 통신과 연동하거나 비콘 신호에 반응하는 모터, 센서 등의 다양한 물리적 아웃 풋 장치를 동작시키는 등의 어플리케이션을 제작해 볼 수 있을 것 입니다. 따라서 오픈 소스 기반의 하드웨어를 활용하는 경우에는 본격적인 제품 개발 하기 위한 전 단계로서의 테스트 과정, 아이비콘을 활용한 다양한 경험을 제공하는 프로젝트에 적합하다고 할 수 있습니다. 특히 애플의 블루투스 관련 액세서리는 엄격한 절차를 거친 뒤 공식적인 구매 경로를 통해 인증된 칩을 이용하여 개발되고 있으므로, 본격적인 제품 개발 전의 프로토타입 용도로 사용하는 것도 좋은 방법입니다. 다양한 형태의 개발 보드들을 이용한다면 비콘의 기능이 포함된 다양한 어플리케이션을 빠르게 개발 할 수 있을 것입니다.
2. iBeacon Sensor Prototype
실제 오픈 소스기반의 개발 보드(Raspberry Pi, Arduino Yun, Bluno)를 비콘 센서로 활용할 수 있는지 알아 보고자 진행한 테스트 후기 입니다. 우선 앱 스토어에 올라온 아이비콘 앱을 다운받아 하드웨어와 데이터를주고 받는 과정을 테스트하고, 간단한 형태의 iOS 프로토타입 앱을 제작하여 실제 개발 보드와 함께 동작하는 환경을 구현하고자 하였습니다. 전체적인 테스트는 맥OS 환경에서 진행되었고, iOS 프로토타입 어플리케이션은 아이폰과 아이패드를 이용하였습니다.
블루투스4.0이 내장된 개발 보드를 활용한 iBeacon 동작 테스트
아이비콘의 센서로 활용하기 위한 개발 보드로는‘Bluno’라는 제품을 이용하여 전반적인 프로토타입 테스트를 진행하였습니다. 이 제품은 아두이노 우노(UNO)에 TI에서 제작된 블루투스 칩(CC2541)이 내장된 제품으로, 아이비콘 개발 키트로 제작된 다른TI 사의 제품과 동일한 칩을 사용하고 있습니다. 아이비콘의 센서는 자기만의 고유 ID인 UUID(사람의 주민등록번호 개념과 유사)를 가지고 있어, 이 신호를 지속적으로 발산하여 자신의 존재를 다른 디바이스가 감지할 수 있도록 하고 있습니다. 따라서 개발보드에 UUID를 비롯한 비콘 관련 설정을 완료한 뒤 센서로서의 기능을 위한 테스트를 수행하여 실제 거리변화에 따른 신호의 변화를 확인해 보았습니다.테스트용 앱을 통해 아이폰 디바이스와 비콘 센서간의 거리 표시 기능에 대한 오차는 크게 발생하지 않음을 확인 할 수 있었습니다. 전반적으로 실제 두 기기간의 거리는 표시되고 있는 값과 큰 오차를 보이지 않았지만 두 장치를 매우 근접하게 놓은 경우(약5cm 이하)에는 오차가 발생함을 알 수 있었습니다. 아이비콘은 기본적으로 ‘Far, Near, Immediate’의 3단계로 거리에 따른 범위를 구분하고 있기 때문에, 이는 향후 아이비콘 서비스에 있어 거리에 따른 차별화된 정보 제공의 기준이 된다고 할 수 있습니다.
한편 인상적이었던 점은 사무실 내 공간에서 다른 층으로 이동하기 전까지 많은 장애물이 있었음에도 신호가 거의 끊기지 않고 지속적으로 거리를 측정했던 점입니다. 실내 기반의 서비스를 목표로 하고 있는 다양한 장애 요소를 극복할 수 있는 신뢰성이 중요한데 이러한 점에서는 매우 안정적인 동작을 하는 것으로 보여집니다.
인증되지 않은USB 블루투스4.0 동글로 인한 연결 실패 사례
프로토타입 테스트는 몇 가지 단계를 거쳐 진행되었는데 그 중 처음 작업은 USB 블루투스4.0 모듈을 테스트 하는 것이었습니다. 개발보드로 테스트하려 했던 제품들이 총3가지였는데 Bluno는TI에서 제작된 블루투스 칩에 내장된 제품이고, 나머지 두 개발 보드(라즈베리파이, 아두이노Yun)는 기본적으로 모듈이 없는 제품입니다. 따라서 이 두 제품을 위해 USB 동글을 이용하여 블루투스 기능을 사용하려고 했던 것입니다.
이미 TI 제작된 칩을 내장한 개발보드가 있었기 때문에 나머지 두 개발보드를 위한 USB 동글은 브로드 컴과 CSR에서 제작한 제품을 선정하였습니다. 블루투스4.0 동글은 실제로 제품마다 가격차가 발생하는데 그 이유는 실제로 지원하는 프로파일의 종류가 다르기 때문입니다. 우리가 구매했던 모델은 기본적으로 Mac과 윈도우 호환이되는 것으로 인터넷을 통해 비교적 저렴하고 쉽게 구매할 수 있는 제품이었습니다. 테스트는 맥에서USB 동글을 이용하여 iOS 시뮬레이터를 구동하는 것과, 실제 개발보드에 연결하여 비콘 센서로서의 동작을 테스트 하는 것으로 진행되었습니다. 이를 위해 맥북에 내장된 블루투스 모듈을 비활성하고 외부의 USB 동글 블루투스를 활성화를 통해 시도해보았습니다.
하지만 이 과정에서 블루투스 모듈은 일반적인 맥북에서의 블루투스 사용(마우스 사용, 데이터 전송)에는 이상 없이 동작하지만, 시뮬레이터를 이용하기 위한 개발 환경으로서는 제약 요소가 있음을 알게 되었습니다. 또한 아두이노 Yun과 라즈베리파이와의 연결 과정에서도 USB 블루투스 모듈은 비콘 센서로 활용하기 위한 설정단계까지 진행은 되지만, 최종적으로 비콘 센서로 활용하는 과정에서 정상적인 동작을 하지 않고 문제가 발생함을 확인할 수 있었습니다. 이러한 문제는 블루투스 동글의 애플 인증 여부, 펌웨어 버전 등과 관련된 것으로 보여집니다.
결론적으로 두 개의 블루투스 동글 제품은 최신 버전의 펌웨어를 적용해도 정상적으로 동작하지 않았습니다. 현재 시중에 나와있는 대다수의 제품들은 블루투스 버전과 지원하는 프로파일, 펌웨어 버전 등을 명시하고 있지만 특별히 아이비콘을 지원하는 표시는 찾기가 어렵습니다. 따라서 USB 동글을 활용하여 비콘 센서를 개발 할 때 기능에 따라 2배 이상 차이가 나는 고급형의 제품일지라도, 비콘으로 활용하는 것에는 제약이 있을 수 있습니다. 해외 사이트에서 아이비콘과 관련하여 오픈 소스 기반의 개발 보드와 USB 동글 형태의 블루투스를 연결하는 정보를 찾아보면 일부 적용이 가능한 것으로 보이는 제품들이 있습니다. 하지만 이 제품들의 판매 사이트에서도 아이비콘 관련 인증 여부에 관한 정확한 표시가 없기 때문에 이와 관련된 문제는 실제로 테스트하면서 확인해봐야 할 부분입니다.
3. iBeacon App Prototype
아이비콘은 신호를 발생하는 비콘 센서와 신호를 받아 특정한 서비스를 제공하는 어플리케이션으로 구성되어 있습니다. 따라서 오픈 소스 기반의 개발보드를 이용하여 비콘 센서를 제작하고 여기서 발생되는 신호를 바탕으로 무엇인가 정보를 제공하는 어플리케이션을 만들어 볼 필요가 있었습니다. 이를 위해 기능 구현에 초첨을 맞춘 간단한 앱을 제작하였습니다. 테스트 앱은 아이비콘에 적합한 다양한 서비스를 고민하면서 실제 어떤 식으로 앱을 사용하게 될지 예측해 볼 수 있는 것에 초점을 맞추었습니다.
이를 위해 아이패드를 찾아주는 ‘Find My iPad’ 라는 앱을 제작하여 ‘Far, Near, Immediate’ 3단계로 구분된 거리 감지 범위에서의 동작, 비콘 센서가 감지되었을 때의 동작들을 테스트 하였습니다. 이 앱은 아이폰이 비콘 센서 근처에 접근하면 주변에 비콘 센서가 있음을 알려주는 ‘Notification’ 기능과 앱을 실행 시키면 아이패드와 아이폰의 거리를 표시하고, 간단한 텍스트와 ‘녹색, 노란색, 적색’의3단계로 구분된 색상을 통해 상태를 표시하는 형태로 구성되어 있습니다. 이를 통해 실내에서 내 아이패드가 얼마나 떨어졌는지 확인 할 수 있고, 일정 거리를 벗어나거나 근처에 감지되었을 때 알림을 통해 쉽게 찾을 수 있도록 도와줍니다.이 앱은 아이패드와의 거리와 간단한 알림을 표시하는 프로토타입으로 간단한 기능만을 가지고 있습니다. 하지만 이 과정에서 블루투스 4.0과 아이비콘의 가능성을 확인하고, 이를 활용하는 다양한 서비스를 고민하는 계기가 되었습니다. 최근 사물인터넷(IoT, Internet of Things) 시장에서 ‘놀이동산에서 미아 방지를 위한 서비스’, ‘애완동물 위치 서비스’ 등의 중요한 물건이나 사람, 동물 등의 위치를 찾아주는 제품/서비스들이 급속히 증가하고 있습니다. 이들은 모두 유사한 기술 기반을 베이스로 다양한 서비스를 접목시킨 사례들입니다. 이처럼 아이비콘을 활용한다면 실내외를 구분하지 않고, 공간이라는 개념 속에서 다양한 응용 서비스들을 구현할 수 있게됩니다. 따라서 이번 프로토타입을 통한 기술 구현의 이해 과정은 향후 재미있는 서비스/제품을 만들어가는 의미있는 첫 단계였다고 생각합니다.
무엇이 미래를 미래답게 만드는가?
(현재글) Part3. 아이비콘 프로토타입 개발 후기
'비즈니스 트렌드(BUSINESS Trend) > 공장자동화(IoT)' 카테고리의 다른 글
스마트 밴드 DIY - RetroBand 만들기 (0) | 2015.01.25 |
---|---|
Make Your Own Wearable Activity Tracker with a 3D Printed Case (0) | 2015.01.25 |
전 세계 수십 개 기업이 시장에 비콘을 내놓고 있습니다. (0) | 2015.01.14 |
사물인터넷전망 일부 (0) | 2015.01.14 |
구글, 애플 그 다음 IOT 시대의 별은? (0) | 2015.01.14 |