位置情報ブログ

位置情報(特に屋内測位)、空間情報科学についての情報をまとめます。ふつうのブログはこちら→ http://yumulog.hatenablog.com/

1行もコードを書かずにiBeaconで遊んでみる

この記事は、iBeacon Advent Calendar 2013 の1日目です。

どうも、@ です。フリーランスエンジニアです。つい先日まで、PlaceEngine というWi-Fi測位技術を開発する Koozyt という会社で働いていており、iBeaconをはじめとする屋内測位技術に興味があります。ただ、まだこれから広まっていく段階ということもあり、まだ情報があまりように思われます。ということで、iBaecon Advent Calendar を立ち上げてみました。

立ち上げた責任を持って1日目の記事を投稿します。

iBeacon とは

iBeacon とは、Bluetooth Low Energy(BLE) を用いた、iOS での近距離無線測位の仕組みです。Bluetooth の電場強度の情報を使って、数m単位でのざっくりとした位置を測定することができます。

というのが超概要の説明で、詳細は、 以下のブログが完璧すぎるくらいまとまってるので、こちらも

コードを書かずにiBeaconで遊んでみる

本当はサンプルコードの一つでも書こうかと思っていたのですが、時間的余裕がなかったのと(反省。。。)、これまた iBeaconの解説 - Reinforce-Lab.'s Blog に素晴らしいサンプルコードが公開されています。そこで、方針を変えて、コードを書かずに、というかXcodeも立ち上げずに、iBeacon を触ってみる方法を紹介します。

Estimote Virtual Beacon という iOS アプリを使って、iBeacon を試してみます。

Estimote は、Bluetooth のビーコンを発信する iBeacon 互換のデバイスで、夏から pre-order を受け付け、先日配送がはじまりました。

Estimote Virtual Beacon を使えば、Estimote ビーコンの検出デモに加え、Estimote のエミュレータ機能も備えているので、Estimote の実機がなくても、iOS7 デバイスが2つあれば、iBeacon の発信と検出を試すことができます。

まず、発信側の設定。 アプリを立ち上げ、Beacons を選択

Turn this device into a beacon を選択

Estimote を模した画面が表示されればOK

検出側の端末でも同じくアプリを立ち上げ。 まずは Beacon をタップ。レーダー画面に、先ほど立ち上げた Virtual Beacon のデバイスのアイコンが見えます。 デバイスのアイコンをタップすると、UUIDや信号強度などの詳細情報が見れます。

トップに戻り、Distance Demo をタップ、先ほどと同じくレーダー画面でデバイスのアイコンを選択。 すると、デバイス間の距離を示すデモが開始します。デバイスを手に持って動いたりして、測位精度を把握することができます。

トップに戻り、次は、Proximity をタップ、またレーダー画面でデバイスのアイコンを選択。 ビーコン発信端末のすぐそば(店内の特定の棚みたいなのを想定しているのだと思う)にいるかどうかで表示画面が変わる、近接検知のデモ。

トップに戻り、最後に、Notification をタップ、レーダー画面でデバイスのアイコンを選択。

「20m 離れろ」と書いてあるので、離れます。ふつうのお家だと、20m離れるためには屋外に出ることになります。離れると画面が変わり、再び近づくとクーポン風の画面が表示されるという、お店への来店検知デモです。*1

という感じで、Estimote のデモアプリを使うだけでも、動作の概要と精度の感覚を掴むことができます。Estimote SDK は、このデモアプリも含めてソースコードが公開されているので、このデモの動作を踏まえて開発の参考にできると思います。

最後に。Advent Calendar 参加者まだまだ募集中なので、登録よろしくお願いします!

*1:API Document http://estimote.com/api/tutorials/notification.html に書かれているデモと違うっぽい?