Vol.05 - HubSpot

Vol.05
DevicePlus 電子工作マニュアル
~Raspberry Piを活用してみよう(上級編)~
iBeacon1個だけであらゆるモノをIoTデバイスに変身!
ラズベリーパイとiBeaconで作るコーヒー休憩お知らせマシン
http://deviceplus.jp/
もくじ
当電子工作マニュアルは、以下の内容で構成しております。
● 所要時間:180 分 ● レベル:★★★★☆
● 部材費用:約 7,000 円
はじめに………………………………………………………………………………………………… 2
iBeacon1 個であらゆるモノを IoT デバイスに変身!
~ラズベリーパイと iBeacon で作るコーヒー休憩お知らせマシン~
必要なもの……………………………………………………………………………………………… 2
iBeacon って何?… …………………………………………………………………………………… 3
iBeacon の活用事例… …………………………………………………………………………………
iBeacon の利用が可能な端末や環境… ………………………………………………………………
iBeacon のしくみ… ……………………………………………………………………………………
iBeacon のビーコン信号が発信する情報… …………………………………………………………
iBeacon の届く範囲とエリア分け… …………………………………………………………………
iBeacon の特徴まとめ… ………………………………………………………………………………
ラズベリーパイで iBeacon を利用してみる… ………………………………………………………
3
3
3
4
5
5
5
必要なライブラリのインストール…………………………………………………………………… 5
Bluetooth デバイスをラズベリーパイにインストール… ………………………………………… 6
ラズベリーパイを iBeacon として動かす… ………………………………………………………… 7
ラズベリーパイを iBeacon としてビーコン信号を発信する(アドバタイジング)する… …… 7
他の端末でビーコン信号を確認する………………………………………………………………… 8
ラズベリーパイを受信側で利用する場合…………………………………………………………… 9
iBeacon チップを用意する… ………………………………………………………………………… 9
ラズベリーパイの受信コマンド…………………………………………………………………… 10
コーヒー休憩お知らせデバイスの実装…………………………………………………………… 10
iBeacon 発信側の準備… …………………………………………………………………………… 11
受信側ラズベリーパイの準備……………………………………………………………………… 11
まとめ………………………………………………………………………………………………… 13
参考・関連リンク…………………………………………………………………………………… 14
はじめに
iBeacon(アイビーコン)というキーワードが、
昨年から技術系の雑誌や、ウェブサイトでよく見
ら れ る よ う に な り ま し た。iBeacon は、iPhone
をはじめとする Apple 社の iOS バージョン 7 以
降に搭載された低電力、低コストを特徴とする
Bluetooth…Low…Energy(BLE) を技術基盤とした通
信プロトコルで、ワイヤレス技術では、今最も注
目されている技術のひとつでしょう。
iBeacon は、ビーコン電波を発信する端末を安価
に用意できること、電池などの省電力で長期間運用
できること、発信端末から受信端末までどれくら
い 近 い か を Immediate/Near/Far/Unknown と
いった 4 つレベルで取得できるなどの特徴があり
ます。2014 年後半から、iBeacon 対応の iPhone
を持つユーザーが多くなったことや、Android4.3
から iBeacon を利用する BLE 機能の API が搭載さ
れたことなどを理由に、iBeacon の活用事例が見
られるようになりました。
iBeacon は、一定間隔で複数カ所に端末を設置す
ることで、位置情報を特定でき、GPS 電波の届か
ない屋内の位置情報を利用するサービスなどと親
和性が高いことがあげられます。駅やデパートと
いった施設内の案内機能や、店内の入店を自動的
に確認して、クーポンを発行するといった、活用
の場が広がる可能性を持った技術です。
本マニュアルでは、iBeacon がどのように利用で
き る の か? Bluetooth と 何 が 違 う の か? と い う
iBeacon の基本的な使い方を紹介するとともに、
ラズベリーパイで iBeacon を利用するためのラ
イブラリ BlueZ の使い方を解説します。また、実
例として、iBeacon… 1 個からできる IoT デバイス
「コーヒー休憩お知らせマシン」を作成します。
iBeacon1 個であらゆるモノを IoT デバイスに変身!
~ラズベリーパイと iBeacon で作るコーヒー休憩お知らせマシン~
必要なもの
表 1 使用する部品一覧
品名
型名・仕様
数量
参考価格
ラズベリーパイ 2…Model…B
Raspberry…Pi2…Model…B
1
3,240 円
MyBeacon…Fun
MB005…Ac…Applix
1
1,000 円
ブレッドボード
BB-601
1
130 円
ブレッドボード・ジャンパワイヤ
EIC-J-L
1…
330 円
電池ボックス単 3 × 2 本用
BH-321-1AS
1
60 円
ピンヘッダ 1 × 40
ピンヘッダ 1 × 40
1
40 円
Bluetooth…4.0…USB…MICRO…ADAPTER
BSBT4D09BK…BUFFALO
1
1,400 円
PC ファン
静音ファン
1
620 円
※参考価格は、2015 年 4 月現在
2
iBeacon って何?
iBeacon は iOS7 か ら 搭 載 さ れ た 近 距 離 無 線
通信用の新技術または通信プロトコルの名称で
す。iBeacon は 現 在 ワ イ ヤ レ ス の キ ー ボ ー ド や
マウス、ヘッドホンなどで利用している人も多い
Bluetooth を低電力での通信を可能に拡張した仕
様 の Bluetooth… Low… Energy(BLE) を ベ ー ス と す
る技術のため、低電力で運用できることはもちろ
んのこと、その発信端末が低コストで導入できる
こともメリットの一つとしてあげられています。
「iBeacon」の名称は先頭の小文字の「i」から連想
される方も多いように、Apple 社が商標を持つ技
術です。
図 2 JR 東日本の駅構内ナビ
(http://www.jreast-app.jp/s-navi/)
iBeacon の利用が可能な端末や環境
iBeacon は、iPhone や iPad な ど で は、iOS7 以
上…、Android では AndroidOS4.3 から Bluetooth
の BLE 機能に関する API が利用可能になったので、
Bluetooth デバイスが BLE 対応であれば Android
でも利用が可能になりました。
iBeacon のしくみ
iBeacon と Bluetooth の違いと
他のビーコン端末の違い
図 1 iOS:iBeacon について
(https://support.apple.com/ja-jp/HT202880)
iBeacon の活用事例
ここ 1 年で iBeacon に対応したスマートフォン端
末が増えた背景もあり、多くの企業で iBeacon を利
用したサービスが登場しています。特に、iBeacon
は屋内の位置情報を取得することができるため、多
くの公共施設や商業施設が、施設案内、情報提示ア
プリとしてリリースをしています。
JR 東 日 本 が 2014 年 12 月 か ら 2015 年 2 月 ま
で実証実験が行った「東京駅構内ナビ」では、東
京駅の構内案内アプリとして、地下 1 階と 1 階に
iBeacon 端末を約 160 個設置し、アプリを起動し
ているユーザーの現在地の周辺マップと、目的地ま
でのルート案内をするナビゲーションアプリを提供
しています。
iBeacon では、ビーコン信号を発信する発信機と、
その信号を受信する受信機が必要となります。
1. iPhone の場合もっとも古い機種で
iPhone4 が iOS7 の導入が可能
2. iPhone の場合もっとも古い機種で
iPhone4 が iOS7 の導入が可能
よく間違いやすいのが、iBeacon は Bluetooth の
ようにデータの送受信はできず、発信端末は基本
的にビーコン信号を発信するだけということです。
図 3 iBeacon と Bluetooth の違い
3
デパートの法人名、major がデパート内の階数に分
けたグループなど)として利用想定されています。
この値は任意の情報となります。
また、他のビーコン端末が各社から発売されていま
すが、iBeacon とそれら端末の違いは、iBeacon
の規格に準拠しているかどうかです。iBeacon の
規格では、少なくとも 100 ミリ秒ごとに 1 回以上
のビーコン信号を発信する必要があります。この
ビーコン信号を発信することを、iBeacon では「ア
ドバタイズ」と呼び、ビーコン信号の内容は端末
の識別情報を発信することが定められています。
minor
16bit からなるビーコンの識別子です。major 同様
unsigned integer の形式で、major よりもさらに
細かくグループ分け (major がデパートの階だとす
ると、その階ごとに入っている店舗などを指定 ) を
する際などに利用想定しています。この値も major
同様任意の情報となります。
iBeacon のビーコン信号が発信する情報
proximity UUID
128bit からなるビーコンの識別子です。128bit の
UUID で表現し、ビーコンそのものを識別するため
の ID や、法人などの組織などの識別に利用される
ことが想定されています。この値は必須の情報とな
ります。
Measured Power
ビーコン発信機と受信機器の距離が 1m だと仮定
した場合の信号受信強度(RSSI:Received Signal
Strength Indicator)です。基本的に iBeacon では
この強度を元に発信機と受信機の距離を測定してい
ます。
major
Mac の場合、ターミナルの「uuidgen」コマンド
で 128bit のユニークな UUID キーを作成するこ
とが可能です。16bit からなるビーコンの識別子で
す。Proximity UUID とは違い 16bit の unsigned
integer 形式の値で、proximity UUID が組織など
の単位に比べて、
major はその中のグループ分け(例
としてデパートで利用する際、proximityUUID が
例として、とあるデパート内で、iBeacon を利用
したアプリを使って、ユーザーがそれぞれエレベー
ター、エスカレーター、階段などの利用頻度を計測
するようなシーンの場合は、下記のような表の構成
で iBeacon 端末を設定します。
iBeacon 発信端末から発せられるビーコン信号の強
さ(距離)に応じて 4 種類の状態を取得できます。
表 2 iBeacon 情報設定の例
1階
UUID
4
3階
7408A8BD-046B-43E0-95D4-0D5963984EF4
Major
Minor
2階
1
2
3
エレベーター
10
10
10
エスカレーター
20
20
20
階段
30
30
30
図 4…iBeacon の届く範囲とエリア分けのイメージ
iBeacon の届く範囲とエリア分け
iBeacon の特徴まとめ
Immediate エリア
・Apple 社が商標を持つ BLE をベースとした
近距離無線通信技術。
・低コスト、低電力で運用が可能。
・iBeacon を利用できるのは iOS では iOS7 から、
Android では 4.3 から。
・iBeacon1 つだけあっても何もできない。
信号を受けて処理を行う端末・サービスが必要。
・スマートフォンで利用するには Bluetooth を
オンにする必要がある。
・端末から発信されるビーコン信号は proximity
UUID(必須)
、major(任意)
、minor(任意)の
識別情報とMeasured Powerのビーコン信号強度。
・iBeacon で取得できるエリアの状態は
Immediate、Near、Far、Unknown の 4 つ。
もっとも近い位置にいるときに受信できる状態で
す。電波強度によりますが、大体 10cm 以内の距
離に受信端末を近づけた場合にこの状態を取得で
きます。スマートフォンなどを iBeacon 端末にか
ざしてクーポンを利用するなどといった使い方が
できます。
Near エリア
Immediate よりも少し遠く、約 1m 以内での状態
を取得できます。店舗の入り口などに端末を設置
して、人が出入りしたかなどを検出するといった
利用が考えられます。
Far エリア
距離を測ることのできるもっとも広い範囲のエリア
が Far になり、約 10m 以内の状態を取得できます。
Far は Immediate や Near よりも範囲が広いため、
屋内などでは建物の構造の影響で誤差がでるので気
をつけましょう。店舗内に人がいるかどうかの判断
や、店舗前を通り過ぎるユーザーに対して情報を発
信するなどの使い方の他、複数の発信端末を一定の
距離でおくことで、屋内のユーザーの位置を割り出
すなどの使い方ができます。
Unknown エリア
ビーコン信号は受信できているが距離を測定でき
ない状態で表示されます。Unknown は Far より
も遠ざかったときに検出される他、電波の干渉な
どで一時的に受信ができない場合や Measured…
Power が高すぎるなどの場合も Unknown として
判定されるので、アプリを開発する際は気をつけ
る必要があります。
5
ラズベリーパイで iBeacon を
利用してみる
ラズベリーパイで iBeacon を利用してみましょう。
その前にラズベリーパイで iBeacon を利用するた
めの下準備をします。
図 6……BlueZ のインストール
Bluetooth デバイスを
ラズベリーパイにインストール
図 5…BlueZ……http://www.bluez.org/
※ 2015 年 4 月現在の BlueZ 最新版は 5.30 です。
必要なライブラリのインストール
ラズベリーパイで Bluetooth デバイスを扱うため
に、blueZ というオープンソースの Bluetooth プ
ロトコルスタックを利用します。BlueZ は Linux
や Android などで手軽に Bluetooth を制御するた
めのライブラリです。
下記 URL から最新の BlueZ をダウンロードして、
インストールします。
インストール完了後、一度再起動してください。
BlueZ のインストールが完了したら、Bluetooth
デバイスをラズベリーパイに装着します。
Bluetooth デバイスは低消費電力モード (BLE…-…
Low…Energy…feature) 対応のものを利用してく
ださい。本マニュアルでは、バッファロー社の
Bluetooth…4.0+EDR/LE 対応…USB マイクロアダ
プターを利用します。
写真 1…バッファロー…Bluetooth…4.0+EDR/LE 対応…USB マ
$… sudo… aptitude… install… libglib2.0-dev…
libdbus-1-dev… libudev-dev… libical-dev…
libreadline6-dev
$… wget… http://www.kernel.org/pub/linux/
bluetooth/bluez-5.30.tar.xz
$…tar…xvJf…bluez-5.30.tar.xz
$…cd…bluez-5.30
$… ./configure… –disable-systemd… –enablelibrary
$…make
$…sudo…make…install
イクロアダプター
写真 2…USB ポートに Bluetooth デバイスを装着
BlueZ のインストール完了後の再起動が完了し
たことを確認して、Bluetooth デバイスが認識さ
れているか確認します。図7のように「hciXX:」
(XX には数字がはいる)の表示がされていれば
Bluetooth デバイスが認識されている状態です。
6
Bluetooth デバイスを確認する
$…hciconfi…g
ラズベリーパイを iBeacon として動かす
Bluetooth デバイスの準備ができたら、下記
BlueZ のコマンドで iBeacon として動かします。
BlueZ では基本的に下記のコマンドを利用します。
BlueZ の主なコマンド
図 7…Bluetooth デバイスがインストールされているか確認
hciconfi…g
-…Bluetooth デバイスの設定コマンド
hcitool[ オプション ]…コマンド…[ パラメーター ]…
-…通信を制御するためのコマンド
dev…–…ローカルデバイスの表示
scan…–…リモートデバイスを探索
name…–…リモートデバイスの名前を取得
info…–…リモートデバイスの情報を取得
Bluetooth デバイスを起動する
$…sudo…hciconfi…g…hci0…up
$…sudo…hciconfi…g…hci0…noscan
$…sudo…hciconfi…g…hci0…leadv…3
これで、Bluetooth デバイスから電波の送受信が
可能になったので、いよいよ iBeacon としてビー
コン信号を送受信します。
ラズベリーパイを iBeacon としてビーコン信号を発信する(アドバタイジング)する
図 8…ラズベリーパイをビーコン発信端末として利用
図 9…コマンド内のビーコン信号の割り当て
7
ラズベリーパイを iBeacon 発信端末として利用す
る場合、下記のコマンドで、ビーコン信号を発信
できます。
ラズベリーパイとスマートフォンの距離を離した
り、近づけたりすると Immediate ~ Far などへ
と状態が変わります。
ビーコン信号の発信(アドバタイズ)
$sudo…hcitool…-i…hci0…cmd…0x08…0x0008…1E…
02…01…1A…1A…FF…4C…00…02…15…0A…CE…38…33…
32…13…AA…E2…98…F1…34…6D…A3…F3…89…72…00…
00…00…00…C8…00
信号の内容は図 9 の通りです。色のついた部分を、
各自定めた仕様に書き換えてご利用ください。
また、下記コマンドにてアドバタイズを終了でき
ます。
写真 3…ラズベリーパイから iBeacon 信号をキャッチ
図 10…デバイスの起動から iBeacon 信号の送信
アドバタイズの終了
$…sudo…hciconfi…g…hci0…noleadv
他の端末でビーコン信号を確認する
ラズベリーパイから正しくビーコン信号が発信さ
れているかを確認します。iPhone または Android
で iBeacon を確認できるアプリの「iBeacon…
Scanner」を使います。iBeacon…Scanner をイン
ストールして起動すると、画面右下に緑色の枠の
ボタンがあるので、それを押すと周囲の iBeacon
端末を探索できます。
図 11…iBeacon…Scanner
8
図 12…Immediate と Near を検出
ラズベリーパイを受信側で利用する場合
図 13…ラズベリーパイをビーコン受信端末として利用
前項とは逆に、別の iBeacon から発信されている
ビーコン信号をラズベリーパイで受信する場合に
ついて解説します。
iBeacon チップを用意する
WAKE に接続されているスイッチが On になった
タイミング(WAKE が立ち上がったとき)で、30
秒間ビーコン信号が発信されるパターンとなりま
す。
iBeacon の発信端末は、iPhone や Android でも
比較的簡単なプログラムを書くだけで実装ができ
ます。本マニュアルでは、電子工作に応用が可能
な Applix 社の MyBeacon…Fun…MB005…Ac(以
降 MyBeacon…Fun)を利用します。MyBeacon…
Fun では、センサやスイッチをつないで、任意の
タイミングでビーコン信号を発信できる仕組みに
なっています。回路の接続方式によって、ビーコ
ンの発信タイミングを変えられます。
MyBeacon Fun の信号パターン
http://www.aplix.co.jp/?page_id=9351
図 14…MyBeacon の On/Off… 制御のパターン表
写真 4…MyBeacon…Fun
MyBeacon…Fun はサイズが縦 34mm ×横 34mm
×高さ 4.4mm と非常にコンパクトで、必要な電
源電圧が DC1.8V ~ 3.6V なので、電池で長期間
駆動することが可能です。
今回は、MyBeacon の On/Off… 制御パターンの中
で、パターン 1 を利用します。パターン 1 では、
図 15…MyBeacon 信号パターン 1
9
コマンドを実行すると、発見できた iBeacon 信号
の情報が表示されます。表示される内容は、図 16
の通りです。
写真 5…MyBeacon パターン 1 回路
この回路では、青色のリード線がスイッチになっ
ています。リード線同士をつなげると、30 秒間ビー
コン信号が発信されます。
図 16…ビーコン信号を受信
ラズベリーパイの受信コマンド
ラズベリーパイで iBeacon 信号を受信するには、
下記のコマンドを使います。hcidump コマンドで、
Bluetooth デバイスのログを吐き出すように設定
し、その後 hcitool…lescan でビーコン信号を発信
している端末を探索します。
iBeacon 信号を受信する
$…sudo…hcidump…–R…&
$…sudo…hcitool…lescan
これで、受信ができるようになりましたが、この
ままでは他のプログラムから利用するのが大変な
ので、ログを整理するシェルスクリプトを利用し
て動作させます。
$…sudo…wget…http://developer.radiusnetworks.
com/ibeacon/idk/ibeacon_scan
$…sudo…chmod…755…ibeacon_scan
$…sudo…apt-get…install…bc
$…./ibeacon_scan
これでラズベリーパイを利用して、iBeacon の送
受信ができるようになりました。
コーヒー休憩お知らせマシンの実装
図 17…システム構成
10
これまでの内容を踏まえて iBeacon を使った例を
紹介します。コーヒーメーカーに iBeacon を設置
し、オフィス内の誰かが休憩所でコーヒーを入れ
たことをスイッチで検知してビーコン信号を発信
します。ビーコン信号は他の人のデスクなどに置
かれた受信端末側で、ラズベリーパイを通じて誰
かの休憩をコーヒーの香りで教えてくれるマシン
を作成します。
このデバイスでは、オフィス内の仲間と休憩のタ
イミングを「視覚」
「音声」といった伝え方ではな
く、
「香り」という気配で、お知らせします。もと
もと、このデバイスは椎尾一郎氏、美馬のゆり氏
ら の「Meeting…Pot…Project」 を 参 考 に し て い ま
す(http://siio.jp/projects/pot/)
。Meeting…Pot…
Project は 2001 年に発表され、当時は独自のシス
テムで構築されていましたが、今回、iBeacon とラ
ズベリーパイで電子工作しましょう。
写真 6…今回利用したコーヒーメーカー
iBeacon 発信側の準備
iBeacon 発信端末をコーヒーメーカーに装着しま
す。スイッチ部分は下記図のように、コーヒーメー
カーにカップが置かれたときの重さを利用して、ス
イッチが入るようにします。前項で紹介したように、
MyBeacon の回路パターン 1 を採用することで、
スイッチが入ってから 30 秒間ビーコン信号は発信
されます。ラズベリーパイで確認する前に、スマー
トフォンで信号が正しく受信できるか確認します。
受信側ラズベリーパイの準備
ラズベリーパイの準備をします。ケースには、加
工のしやすいコーヒー用の紙コップを利用します。
紙コップの中には、香りの元となるコーヒー豆(今
回はインスタントコーヒーの粉を使いました)と、
香りを送るためのファンを設置します。ファンと
ラ ズ ベ リ ー パ イ の 接 続 は GPIO ピ ン を 利 用 し ま
す。(GPIO の利用については DevicePlus のラズ
ベ リ ー パ イ 連 載 第 9 回 目 http://deviceplus.jp/
hobby/ ラズベリーパイ _entry_009/ もしくは、
ダウンロード資料初級編を参照してください。)
香 り を 送 風 す る PC フ ァ ン は ラ ズ ベ リ ー パ イ の
GPIO の 6 番ピン(GND)と 2 番ピン(GPIO2)
に接続します。
下記のコマンドでファンを制御します。Echo コマ
ンドで GPIO の 2 番ピンに対して、出力をオンオ
フします。
GPIO 利用準備~
ファンを起動して 30 秒後停止
$…echo…2…>…/sys/class/gpio/export
$… echo… 1… >… /sys/class/gpio/gpio2/value;…
sleep… 30s;… echo… 0… >… /sys/class/gpio/
gpio2/value
ファンの動作が確認できたら、実際にラズベリー
写真 7…iBeacon 発信端末をコーヒーメーカーに装着
図 17…スイッチが入るしくみ
11
パイで受信した時にファンが回るように先ほどの ibeacon_scan のコマンド内に組み込みます。
#!/bin/bash
# iBeacon Scan by Radius Networks
if [[ $1 == "parse" ]]; then
packet="echo 2 > /sys/class/gpio/export"
capturing=""
count=0
while read line
do
count=$[count + 1]
if [ "$capturing" ]; then
if [[ $line =~ ^[0-9a-fA-F]{2}\ [0-9a-fA-F] ]]; then
packet="$packet $line"
else
if [[ $packet =~ ^04\ 3E\ 2A\ 02\ 01\ .{26}\ 02\ 01\ .{14}\ 02\ 15 ]]; then
UUID=`echo $packet | sed 's/^.\{69\}\(.\{47\}\).*$/\1/'`
MAJOR=`echo $packet | sed 's/^.\{117\}\(.\{5\}\).*$/\1/'`
MINOR=`echo $packet | sed 's/^.\{123\}\(.\{5\}\).*$/\1/'`
POWER=`echo $packet | sed 's/^.\{129\}\(.\{2\}\).*$/\1/'`
UUID=`echo $UUID | sed -e 's/\ //g' -e 's/^\(.\{8\}\)\(.\{4\}\)\(.\{4\}\)\(.\{4\}\)\(.\
{12\}\)$/\1-\2-\3-\4-\5/'`
MAJOR=`echo $MAJOR | sed 's/\ //g'`
MAJOR=`echo "ibase=16; $MAJOR" | bc`
MINOR=`echo $MINOR | sed 's/\ //g'`
MINOR=`echo "ibase=16; $MINOR" | bc`
POWER=`echo "ibase=16; $POWER" | bc`
POWER=$[POWER - 256]
if [[ $2 == "-b" ]]; then
echo "$UUID $MAJOR $MINOR $POWER"
else
echo "UUID: $UUID MAJOR: $MAJOR MINOR: $MINOR POWER: $POWER"
fi
packet = `echo 1 > /sys/class/gpio/gpio2/value; sleep 30s; echo 0 > /sys/class/gpio/
gpio2/value`
fi
capturing=""
packet=""
fi
fi
if [ ! "$capturing" ]; then
if [[ $line =~ ^\> ]]; then
packet=`echo $line | sed 's/^>.\(.*$\)/\1/'`
capturing=1
fi
fi
done
else
sudo hcitool lescan --duplicates 1>/dev/null &
if [ "$(pidof hcitool)" ]; then
sudo hcidump --raw | ./$0 parse $1
fi
fi
12
準備ができたら、実際に動作を確認してみます。
コーヒーメーカーにカップを置いた瞬間 iBeacon
信号が発信されて、紙コップのファンが回りコー
ヒーの良い香りがデスク周りに広がりました!休
憩室が別室などの広いオフィスなどで利用した際
は、デバイスからコーヒー香りが、ほどよい休憩
タイミングを知らせてくれます。
写真 8…紙コップ内に設置するファン
写真 9…紙コップの中にインスタントコーヒーの豆
図 18…ラズベリーパイとファンの回路
写真 10…コーヒー休憩お知らせデバイス完成!
まとめ
図 19…RaspberryPi2…ModelB の GPIO
(http://www.element14.com/community/docs/
DOC-73950/l/raspberry-pi-2-model-b-gpio-40-pinblock-pinout)
本マニュアルでは、ラズベリーパイを利用して
iBeacon の送受信の方法と、iBeacon を利用して
「コーヒー休憩お知らせデバイス」を作成しました。
iBeacon は、低電力で低コストなため、手軽に面
白いデバイスやサービスが実装できると思います。
今回作成した「コーヒー休憩お知らせデバイス」は、
スイッチ自体は簡単な仕組みですが、この仕組み
を生活シーンに応用すると、部屋のドアの開閉を
検知してラズベリーパイから指令を出す、光セン
サや温度センサと組み合わせて一定以上の温度に
なったら iBeacon を通じて熱中症予防アラートを
発信するといった電子工作ができますね。
今回利用した Applix 社の MyBeacon…Fun…MAKERS…
ZONE では、上記にあげた例の他、ウェブサイトに
応用例が紹介されているので、興味のある方はぜひご
覧ください。
MyBeacon Fun MAKERS ZONE
http://www.aplix.co.jp/?page_id=9351
13
参考・関連リンク
ラズベリーパイを iBeacon 化してみた。 - 気のむくままに
http://jyun1.blogspot.jp/2013/12/i-beacon-make-by-raspberry-pi.html
●
ラズベリーパイで iBeacon を検知する – Qiita
http://qiita.com/katsuyoshi/items/9d5417495a47c4b15ac1
●
ラズベリーパイ で iBeacon を試してみよう!
https://www.eyemovic.com/blog_it/4269.php
●
hcitool と hcidump で確認
http://rpd7.tomolog.info/knowledge/raspberrypi/07_hcitool.html
●
Meeting Pot アンビエントディスプレイによるコミュニケーション支援
http://siio.jp/projects/pot/
●
14
お問い合わせ
[email protected]
掲載記事利用上のご注意
掲載された回路、技術、プログラムなどを利用して生じた
全ての不利益、損害、事故などDevicePlus編集部・ローム株式会社は責任を負いかねます。