eyemovic inc.

Works blog仕事の取り組み・ビジョン

2013.11.25

Raspberry Pi で iBeacon を試してみよう!

システム班、恒例の「Raspberry Pi で遊んでみた」シリーズ 第3回目となる今回は

「Raspberry Pi で iBeacon を試してみよう!」

ということで、一部業界で話題騒然の iBeacon を試すべく色々と実験してみました。

iBeacon とは何ですか?

「iBeacon」とは、Bluetooth4.0 や Bluetooth LE(Low Energy)を用いた近距離無線通信技術のひとつです。

アップル社の発表で、話題となった技術のため、iOS端末上だけでしか動作しないイメージが
あるかもしれませんが、Bluetooth4.0 を搭載した Android 端末でも動作させることが可能です。

この iBeacon を用いることでどのようなことが可能になるかというと

・商品情報やクーポンの表示
店舗内のある商品の近くに、端末をもったユーザーが近づくと自動で、商品のクーポンや商品情報を表示することができます。

・お客様の動きを解析
端末をもっているお客様がどのように店舗内を回遊しているかを、iBeacon を通してロギングすることで解析することができます。

・自動で決済
店舗内の購入する商品をアプリを通して選ぶことで、退店したタイミングで自動で決済することができます。

この他に、来店ポイントを自動で付与や、道案内などユーザーの位置を活用した様々なアイデアが試みられています。

早速、試してみる

iBeacon は、Bluetooth を使った技術なので、Raspberry Pi に接続するための
Bluetooth ドングルを購入いたしました。

購入したのは、Planex 社の Bluetooth Ver.4.0+EDR/LE対応 小型USBアダプタ BT-Micro4 です。
まずはこちらを、Raspberry Pi に接続して認識させます。

b_IMG_1157

 

以下、Raspbian での設定例です。

まずはじめに各種ライブラリをインストールします。

つづいて、 Bluez をインストールします。
オープンソースの Bluetooth プロトコルスタックです。

 インストールが完了したら、Bluetooth の状態をチェックします。

 上で、「UP RUNNING」の箇所が「DOWN」となっている場合は、Bluetooth を起動します。

 

Raspberry Pi の設

Raspberry Pi 側を、iBeacon の ペリフェラルとして動作させます。

ペリフェラルというのは、Bluetoothに関連する用語で、セントラルに複数のペリフェラルが接続されます。アドバタイズとは、ペリフェラルから周囲に通知をすることとなります。
泣いている(アドバタイズ)子供(ペリフェラル)を探している親(セントラル)のイメージが近いように思われます。

bluez-ibeacon をインストールします。

 make した ibeacon を実行します。

 UUIDなどを設定してアドバタイズを実行します。

 これで Raspberry Pi 側の設定はひとまず完了です。

 

iPhone の設定

まずはじめに、iBeacon を動作させるためのアプリをダウンロードします。
ダウンロードするアプリはこちらの「Locate for iBeacon」になります。
(ソースコード含め試してみたい場合は、こちらの「AirLocate」をダウンロードして下さい。)

 

Locate for iBeacon を起動して、「Locate iBeacon」をタップします。
すると、一覧に先ほど Raspberry Pi のペリフェラルの情報が表示されています。
ペリフェラルをタップすると、詳細情報が表示されます。

IMG_1148

 

 

詳細情報の「Distance(距離)」をタップしたところ、24mと表示されました。
実際どれくらい離れているかというと、右の写真ぐらいの距離約1mぐらいです。

Untitled 1

 

距離が全然あっていないので、詳細画面で「Cariburate」をタップします。
すると、1mぐらい離れたところに端末を置いて、30秒から1分ぐらい待てと説明が書かれておりました。
再度「Cariburate」をタップして、キャリブレーションを実行します。

 

Untitled 2

キャリブレーション後に再度、距離をチェック、多少精度が高くなったかなという感じです。

 

Untitled 3

 

今後のこの iBeacon を活用した事例が色々と出てきそうなので、弊社では引き続き、
研究・調査を進めていきます。

参考サイト

How to Make an iBeacon Out of a Raspberry Pi

Turn a Raspberry Pi into an iBeacon

愛媛県松山市でWeb開発一筋15年、700サイト以上の構築実績!

Webサイト制作・システム開発・スマホアプリ開発・組込ソフトウェア開発ならアイムービックにお任せ下さい。