平成 28 年度 卒業論文

論文題目
大学食堂における iBeacon を用いた
混雑度把握システムの検討

指導教員

名古屋工業大学

工学部健司

准教授

伊藤宏隆

助教

情報工学科

平成 25 年度入学25115099 番

名前崇史

土井舟橋

i

目次

第 1 章 はじめに

1

1.1

研究の背景

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1

1.2

研究の目的

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

第 2 章 Bluetooth に関する技術

3

2.1

Bluetooth Low Energy（BLE） . . . . . . . . . . . . . . . . . . . . . . . .

32.2

iBeacon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3

第 3 章 食堂混雑度把握システム

53.1

クライアントアプリケーション . . . . . . . . . . . . . . . . . . . . . . . .

53.2

サーバーソフトウェア . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6

第 4 章 実地実験

104.1

実験方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4.2

実験結果と考察 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

第 5 章 むすび

15

謝辞

16

参考文献

17

1

第1章

1.1

はじめに

研究の背景

近年、スマートフォンの普及に伴い，位置情報を利用したサービスやシステムが広く使用されている．例えば，GPS を用いて指定の場所までリアルタイムに案内するナビゲーションシステムや，子供や家族の位置を共有して安全を確認する見守りアプリケーションがある [1]．このように，屋外での位置情報は広く利用され，多数のアプリケーションが開発，配布されている．しかし，GPS の届かない屋内の位置情報を利用したサービスやシステムは，まだ少ない．
屋内での位置推定の技術は，例えば Bluetooth Low Energy（BLE）を使って電波を発信する Beacon とスマートフォンやタブレットを受信装置とした位置情報の推定する方法がある [2]．また，無線 LAN の複数のアクセスポイントからの距離を電波強度または伝搬時間から測定し，端末の位置を推定する Wi-Fi 測位という技術もある [3]．加速度や磁気，角速度等の各種センサーから取得した値をもとに，対象の移動速度や移動方向を測定することで，対象物の現在位置を特定していく自立航法測位という技術もある [3]．さらには，屋内に GPS 衛星を補完する送信機を設置し，そこから発信される電波を受信することで正確に位置を求める IMES 方式のシステムもある [3]．これらは，一例であり，現在，位置情報の精度向上やスムーズな測位を目指し，複数の方法を組み合わせて用いる等，実用化に向けた実証実験が多数行われている．例えば，BLE シグナルによる測位と端末センサを利用した相対的位置測位技術である PDR を組み合わせたハイブリット屋内相違手法の基礎検討がされている [4]．
屋内測位システムが注目される中，iBeacon[5] は 2013 年 9 月に Apple 社によって提唱された．これは，BLE を用いてスマートフォンの領域への入退出と近接検知を低電力かつ低コストに実現することができるサービスである．iBeacon を使用した事例として，株式会社ジークスの「iBeacon による出退勤在席管理システム」がある [6]．これは，オフィスなどにビーコン端末を設置し，スマートフォンを持ち歩くだけで入室管理，勤怠管理，現在地検索がおこなえる．そのため，オフィスのへ最初の入室と最後の退出を管理して，出勤・退勤を自動で記録することが可能となっている．また，大日本印刷株式会社が開発したスタンプラリーサービス「Sitekicker+（サイトキッカープラス） for スタンプラリー」がある [7]．これは，ビーコンデバイス付近のスタンプポイントに近づくと，デバイスから情報を自動的に受信して，スタンプを集めることができるサービスである．これにより，利用者が最小限の手間でスタンプラリーをおこなうことができる．さらには，大学の第1章はじめに

2

研究室在室管理システムの自動化 [8] にも用いられている．このように，iBeacon が様々な分野で使用されていることを確認できる．

1.2研究の目的

名古屋工業大学では，出欠確認用 IC カードリーダーに学生証をかざすことで出席を登録できる学生の出欠管理をするシステムを導入している [9]．最近，この出欠管理システ
ムに，BLE による出席登録システムを追加した．現在，大学敷地内には，約 1500 台のiBeacon が設置されている．このビーコンを用いた新たな出欠登録は，スマートフォンアプリケーション「Nitech ピロリン」を利用しておこなう．このアプリケーションで，学生生活がより便利になると予想される．
ところで，大学食堂は 1ヵ所しかないため，利用時間が集中するといった問題が発生する．解決方法としては，ピーク時よりも早く行ったり，遅く行ったりすることがあげられる．しかし，日によって時間割は異なり，大学は中学や高校よりも休講や補講，時間割変更も多く予測が難しい．また，学部卒業研究生や大学院生になると決められた時間割による行動よりも研究室を中心とした行動が多くなり，各自の都合で行動が異なる．そのため，その日その時の現状を知ることができればよいと考えた．そこで，iBeacon の電波を受信して現在の位置情報をサーバーに伝えるクライアントアプリケーションを作成する．
サーバーは大学食堂にいるクライアントアプリケーション利用人数から現在の混雑度を推定し，食堂の外にいるクライアントアプリケーション利用者にも混雑度を提示する．食堂の外にいる人にもリアルタイムで混雑状況を知らせることで，自主的な利用時間の分散を促し，食堂利用の快適性を高めたい．
第 2 章では，Bluetooth に関する技術についての説明し，第 3 章では実装したクライア
ントアプリケーションの詳細とサーバーソフトウェアの詳細について述べる．第 4 章では，本システムの評価実験とその結果と考察について述べる．第 5 章では，本研究のまとめと今後の課題について述べる．

3

第 2 章 Bluetooth に関する技術

2.1

Bluetooth Low Energy（BLE）

BLE とは，近距離無線通信技術 Bluetooth 規格の一つである．これは，Bluetooth Special
Interset Group（Bluetooth SIG）により策定され，Bluetooth4.0 規格以降に搭載されており，超低電力での稼働が可能である．BLE は，ノキア社が独自無線規格として開発した近接通信技術である Wibree から派生した規格のため，Bluetooth3.0 以前とは互換性がない．そのため，Bluetooth4.0 以降が搭載された端末では従来の Bluetooth3.0 も合わせて利用できるように実装されていることが多い．
周波数は，2.4GHz 帯を使用して，周波帯域を 2MHz 幅 40 個のチャンネルに分割して利用している．そのチャンネルの内，3 つを BLE デバイスの発見と接続に利用するアドバタイズメント・チャンネル，残りを接続後のデータ通信に利用するデータチャンネルに割り当てている．また，干渉や混信を避けるための方法として，周波数ホッピングを利用している．これにより，特定のチャンネルが Wi-fi と衝突していて通信できなくても，一定時間後にチャンネルが切り替わればデータ通信が継続できる．

BLE では，デバイスとデバイスが通信をおこなう方法として，ブロードキャストとコネクションの二つが定義されている．ブロードキャストは，ある BLE デバイスから別のデバイスに対して，一方的にデータを送信するための通信方法である．ある BLE デバイスが，一定周期でデータを発信し続け，別のデバイスがそれをスキャン・受信することによってデータのやり取りをおこなう．この通信方法において，データを発信するデバイスをブロードキャスター，データを受信するデバイスをオブザーバーと呼ぶ．あるひとつのブロードキャスターが，不特定のオブザーバーに対して，同時に同じデータを発信することが特徴である．コネクションは，ある BLE デバイスと別の BLE デバイスとの間で，相互にデータを送受信するための通信方法である．ブロードキャストと異なり，データの送受信は，コネクションに参加したデバイス間のみでプライベートにおこなわれる．

2.2

iBeaconiBeacon は Apple 社によって提案されている BLE を利用した位置検出と近接検出の技術である．この技術は，BLE のブロードキャスト通信を利用している．送信端末をペリフェラル，受信端末をセントラルと呼び，ペリフェラルが情報を発信することをアドバタ

第2章

Bluetooth に関する技術

4

イズという．ペリフェラルからアドバタイズされた電波をセントラルが受信し，その電波内容に応じてセントラルが処理を実行することが一般的なながれになっている．

iBeacon には大きくふたつの機能があり，領域への入退出を検出することと，ペリフェラル端末とセントラル端末の近接の程度を検出することである．領域の入退出は，ペリフェラル端末が発する電波が届いているか否かで判定をおこなう．ペリフェラル端末が発する電波が届く範囲の領域に入ったセントラル端末は識別情報を検出する．識別情報を監視しているアプリケーションがセントラル端末上に存在すると，ペリフェラル端末の領域に入ったことをアプリケーションに通知する．また，ペリフェラル端末の領域から外れ，識別情報を受信できなくなると，ペリフェラル端末の領域から出たことを通知する．近接の程度の検出では，ペリフェラル端末が発する電波の受信強度（RSSI）を利用して，おおよその距離を推測する．ビーコンからの受信信号強度は距離が離れるほど弱くなり，理想的には距離の 2 乗に反比例する．しかし，実際の受信信号強度は距離以外でも変化するため，推定した距離は正確ではない．なお，iBeacon は，iOS7.0 以降，Android4.3 以降が対応している．

5第3章

3.1

食堂混雑度把握システム

クライアントアプリケーション

本システムの目的は，遠隔からはわからない食堂の混雑度を遠隔からリアルタイムに把握することにある．この目的を達成するためシステムは，各利用者（学生）が所持する携帯端末にインストールするクライアントアプリケーションと，クライアントからデータを集計して現状をクライアントに提示するサーバーソフトウェアにより構成する．また，クライアントアプリケーションには大きく分けて 2 つの機能がある．食堂への入退出を検知しその情報をサーバーに送信することと，食堂の外から食堂の混雑度を閲覧できるようにすることの二つである．なお今回は，Android 端末を用いて開発をおこなう．
食堂への入退出の検知をおこなうためには，iBeacon（ビーコン）の検知をおこなう必要がある．ここでは，Radius Networks 社の AltBeacon[10] というライブラリを使用する．
食堂のビーコンの検知をするにあたり，ビーコンの領域への侵入を検知したのちにビーコンの近接検知を行う．これは，ビーコン領域への侵入を検知した時点では，検知したビーコンとの距離がわからないためである．図 3.1 のように，検知したビーコンのなかで，端末との距離が最も近いものが食堂内のビーコンであるなら食堂へ入場したものとして情報をサーバー送信にする．また，図 3.2 のように食堂の中にいた状態から，端末との距離が最も近いビーコンが食堂内のビーコンでなくなるか，ビーコンを検知できなくなったとき，食堂から退出したものとする．このビーコンの近接検知により食堂の中か外かを判断し，誤検知を少なくすることを目標としている．この近接検知の基準にはビーコンとの距離（distance）を用いる．これは，ビーコンの 1m 離れた位置で測定される送信電力（TxPower）と受信電波強度（RSSI）より，以下の式から求める．

T xP ower − RSSI
20
distance = 10A
A =(3.1)(3.2)

食堂の中か外かの判定をおこなうための処理は，20 秒間隔で実施して，現在の状態に変化があるかないかの確認をする．食堂への入場または退場を確認した際，情報をサーバーへ送信する必要がある．また，当該利用者にも確認のために入退場の通知をおこなう．サーバーへの送信は，非同期処理で入退場を検知したときにおこなう．また，入退場の通知はクライアントアプリケーションの画面内で，食堂の中か外かの表示を切り替えることでおこなう．

第3章

食堂混雑度把握システム

6

次節で説明するサーバーソフトウェアは，全てのクライアントアプリケーション利用者からの情報を集計し，食堂にいるシステム利用者数と，推定食堂利用者人数，混雑度の 3
段階評価，推定人数の推移の 4 項目をクライアントアプリケーションに掲示する．クライ
アントアプリケーションの画面例を図 3.3 に示す．画面の上部から順に，現在のシステム利用者が食堂の中か外か，食堂にいるシステム使用者の人数，この人数から推測される食堂利用人数，混雑度の 3 段階評価，過去に食堂いたと推測される人数の推移，食堂の混雑状況を更新するためのボタンが表示されている．ボタンを押したときに図 3.4 のようにサーバーにリクエストを送信し，サーバー側からレスポンスをもらい，各データを表示する．

3.2

サーバーソフトウェア

サーバーソフトウェアには，Apache ソフトウェア財団の Apache HTTP Sever[11] を利用する．クライアントアプリケーションは，各自の情報を提供し，また全体で集計された情報を受け取る．本サーバーの役割は，食堂の今いる人数のカウントとクライアントアプリケーションからの混雑度を閲覧するリクエストに対してレスポンスすることである．
レスポンスする情報は，食堂の混雑度をより分かりやすくするための工夫が必要である．
そこで，本サーバーでは食堂にいるシステム利用者から食堂の混雑度の推測や評価をおこなう．また，レスポンスする情報は，文字だけでなく，図の表示やグラフを作成して表示することで直観的に分かるような工夫をおこなう．
食堂の混雑度を把握する上で，食堂にいるシステム利用者の人数だけでなく，本システ
ムを利用していない食堂利用者も考慮しなくてはならない．そこで食堂にいると予測される人数を推定し，その人数をもとに食堂の混雑度を 3 段階で提示する．また，過去 30 分の 10 分間隔の推定人数の推移も提示する．食堂にいるシステム利用者数と，推定食堂利用人数，混雑度の 3 段階評価，推定人数の推移の 4 項目を提供する．食堂にいると予想される人数は，2016 年 4 月時点で前述の Nitech ピロリンの利用率が全学生の 5%であったことから，同程度の導入率を想定し，食堂にいるシステム利用者の 20 倍と推定する．食堂の混雑度の表示は，食堂の座席数との割合から算出する．座席数の 5 割以上で少し混雑しているとし，8 割以上で混雑しているとする．過去のログの表示は，サーバー側で 10 分間隔でログをとり，それを提供することで，今後の食堂の混雑度の参考にできる．

第3章

食堂混雑度把握システム

図 3.1: 食堂に入場したときのシステムの動作

図 3.2: 食堂から退場したときのシステムの動作

7

第3章

食堂混雑度把握システム

図 3.3: クライアントアプリケーション画面の一例

8

第3章

食堂混雑度把握システム

図 3.4: 食堂の混雑状況を確認するときのシステムの動作

9

10

第4章

4.1

実地実験

実験方法

実地実験では，実際にクライアントアプリケーションをインストールした Android 端末が正常に動作するか大学食堂とその周辺にて実験をおこなった．正常な動作とは，食堂内でビーコンの検知がおこなわれ，食堂の中であると通知されることと，食堂の外では食堂の中であると誤検知されないことである．また，食堂の中か外かの状態が変化したとき，サーバーに正しく情報が送信されているか確認をおこなう．
実験では，Android 端末 18 台を利用し疑似的に食堂の利用者の移動を再現する．具体的にはまず，食堂の東扉から 2 台から 5 台づつ端末をもった実験者が入場していく．全員（全端末）が入場するまで，退場する端末はない．続いて，実験者は指定時間経過後に東扉から順に退場していく．同様に，再入場する端末はない．入場退場の都度，実際の食堂内端末数，ビーコン確認状況，サーバーへの通信有無を記録しておく．この記録の時刻は実験開始から順に番号付けしておく．図 4.1 に，入退場した位置とビーコンの位置を示す．
東扉を選択した理由は，食堂で配膳を終えた学生が会計後に通過する場所に近いためである．なお，実験は図 4.2 のように端末を手で持った状態もしくはテーブルの上においた状態でおこなう．また，食堂に入場した際，一つのテーブルに集まるのではなく，食堂全体に分散するように分かれる．食堂に入場したのちに，座席に座った時点でビーコンの検知がおこなわれているかの確認する．なお，ビーコンの検知するタイミングのズレにより，検知の確認後に食堂の中であると通知された場合も入場が確認された端末であるとする．
食堂からの退場の検知は，大学会館の外まで移動し，食堂の外であると通知されれかの確認をおこなう．加えて，その時点でサーバーに情報が送信がされているかどうかの確認をおこなう．この確認は，実験に使用した端末とは異なる端末を利用し，同時に入退場した全ての端末に通知されるかどうか確認後，もしくは一定時間経過後におこなう．また，食堂利用者がよく通過すると考えられる食堂の南の道路では，誤検知がないかどうかの確認をおこなう．図 4.3 のように道路に立った状態で誤検知がないかどうかの確認をする．

4.2

実験結果と考察

食堂への入場の実験結果を表 1 に示す．食堂からの退場の実験結果を表 2 に示す．なお，食堂への入場は端末 18 台を用い，食堂からの退場には食堂への入場が検知がされた端末

15 台を本実験の対象とした．

第4章

実地実験

11

実験結果の表 4.1 より，食堂への入場が確認された端末は，18 台中 16 台と 88%が正しく検知ができた．正しく検知されなかった端末については，食堂の端であったために食堂の外のビーコンの受信電波強度が強かったために，クライアントアプリケーションが正しく動作していなかったことが原因と推定される．サーバーへの送信が確認された端末は，10 台と全体の端末数の 55%かつ食堂への入場が確認された端末の 62%にとどまった．この正しくサーバーに送信された割合が低くなった原因は，サーバーとの通信に名古屋工業大学の Wi-fi を使用したことがあげられる．大学会館の外から食堂に入った際，食堂内のWi-fi からアクセスされるが，端末が Wi-fi の認証が完了して接続するまでの間に，サーバーにアクセスしたことが原因であると推定される．
実験結果の表 4.2 より，食堂からの退場が確認された端末は，食堂への入場が検知された端末の 100%であった．この結果により，入場が正しく検知された端末は，退場も正しく検知されるといえる．サーバーへの送信が確認された端末は，12 台と対象とした端末の 80%となり，食堂への入場時のサーバーへの送信と比べて，高い割合を示した．高い割合を示した理由は，食堂内の Wi-fi に接続された状態で外に出たからだと考えられる．一方，サーバーに正しく送信されなかった 3 台の端末は，食堂内の Wi-fi の接続が切れてしまったからだと考えられる．
食堂の南側の道路でおこなった食堂への入退場への誤検知の検証については，一度も誤検知をしなかった．誤検知をしなかった要因として，道路沿いの街頭の下にあるビーコンが食堂内にあるビーコンより受信電波強度が強いことが考えられる．この結果より，本クライアントアプリケーションは，食堂の中か外かを判別できているといえる．
この食堂とその周辺での実験結果より，食堂への入退場の検知の項目に関しては，本クライアントアプリケーションが有用であると考えられる．また，食堂の中か外かの判定には，検知できるビーコンとの距離の比較が適していると推測できる．しかし，サーバーへの送信をおこなう点では，課題の残る結果となった．サーバーへの送信が正常におこなえない場合，食堂の混雑度の把握に影響がでるため改善が必要である．実際に食堂にいるクライアントアプリケーション利用者より少ない人数しかカウントされないため，実際の混雑度との齟齬が発生し，正しい情報を提供できない状況になっている．これを改善するた
めには，Wi-fi の接続が確認されてから 10 秒程度サーバーに情報の送信をおこなわないように変更することや，携帯会社のキャリアの回線を利用してサーバーに情報を送信できるように変更することがあげられる．これらの変更により，サーバーへの送信が正しくおこなわれると考えられる．
以上から，サーバーへの送信方法の見直し等改善の余地はあるものの，食堂の内か外かの判定は概ね正しく判定できたと判断できる．また，食堂の混雑度把握に重要な項目や機能を洗い出し，今後さらなる開発を重ねることで，より実用可能なものに仕上がることが期待できる．

第4章

実地実験

12

記録時刻

時刻 1時刻 2時刻 3時刻 4時刻 5時刻 6

食堂へ入場した端末の合計数

2710121518

食堂への入場が確認された端末数

269111316

サーバーへの送信が確認された端末数

2458910

表 4.1: 食堂へ入場するときの検知実験の結果（台）

記録時刻

時刻 7時刻 8時刻 9時刻 10時刻 11

食堂から退場した端末の合計数

35101215

食堂から退場が確認された端末数

35101215

サーバーへの送信が確認された端末数

358912

表 4.2: 食堂から退場するときの検知実験の結果（台）

13
実地実験
第4章

図 4.1: 食堂への入退場の流れとビーコンの位置

第4章

実地実験

14

図 4.2: 食堂の中での実験風景

図 4.3: 食堂の外での実験風景

15第5章むすび

本研究では，食堂を待ち時間なく，より快適に利用できること目指し，iBeacon を利用した大学食堂の混雑度把握システムの検討をおこなった．システムを構築するにあたり，クライアントアプリケーションとサーバーを構築した．クライアントアプリケーションがインストールされた端末が食堂の中か外かを自動で判別をおこない，サーバーと連携することで食堂の人数をカウントする．また，クライアントアプリケーションでは，サーバーにリクエストすることで食堂の混雑状況を確認することができる．
食堂の中か外かの自動判定では，iBeacon の近接検知の機能を用いて，正確に食堂の中か外かを判定する．実証実験と通して，近接検知の機能が食堂の中か外かの判定に有用であるとの結果が得られた．また，本システムの改良や追加項目の洗い出しができた．サー
バーとの通信をおこなうところでは，確実にサーバーと通信をおこない正確なクライアン
トアプリケーション利用者の人数を数えられるようにしたい．また，サーバーへの送信が正しくおこなわれるようになった後に，再び実証実験をおこない本システムの有用性を確認したい．本システムでは，ビーコンの検知にあたりスマートフォンの消費電力については考えていないが，食堂の混雑が予想される昼頃に限定して運用をおこなうなど，ビーコンの検知や通信の面以外でも改良が必要と考えられる．このように改良を進めていくことで，より実用的なシステムの構築ができると考える．また，クライアントアプリケーショ
ンは Android 向けに作成したものであり，iOS を搭載した端末には対応していない．そのため，iOS ユーザーには対応しておらず，利用できるユーザーが限られる．この問題を解決するためには，iOS 対応のアプリケーション作成をおこなう必要がある．このように，機能の改良や拡張，対応端末の追加をおこない，より使いやすいシステムの構築を期待する．

16

謝辞

本研究を進めるにあたって，日頃から多大な御尽力を頂き，御指導を賜りました名古屋工業大学，舟橋健司 准教授，伊藤宏隆 助教に心から感謝致します．また，本研究の実験を実施するにあたり，株式会社 NTT Docomo 東海支社のご協力を頂きました．森木亮
子様，蔵原正和様，ほか皆様に深く感謝致します．最後に，本研究に多大な御協力頂きました舟橋研究室諸氏に深く感謝致します．

17

参考文献

[1] Life360, Inc.， Life360 ，https://www.life360.com/[2] 古館達也，堀川三好，工藤大希，岡本東， Bluetooth Low Energy ビーコンを用いた屋内測位手法に関する研究 ，FIT2015（第 14 回情報科学技術フォーラム）[3] 中尾浩一， 屋内測位技術の動向について，http://www.apptec.co.jp/technicalreport/pdf/vol22/treport vol 22-09.pdf[4] 石塚宏紀，上坂大輔，黒川茂莉，渡邉孝文，松村茂樹，小野智弘， BLE シグナルと PDRによるハイブリッド屋内測位手法の基礎検討 ，IEICE Technical Report MoNA2014-10[5] Apple 社， iBeacon for Developers ，https://developer.apple.com/ibeacon/[6] 株 式 会 社 ジ ー ク ス ， iBeacon に よ る 出 退 勤 在 席 管 理 シ ス テ ム，

http://www.zyyx.jp/abs/[7] 大日本印刷株式会社， Sitekicker+（サイトキッカープラス） for スタンプラリー ，
http://www.dnp.co.jp/news/10096646 2482.html[8] 田中健，諏訪敬祐， 研究室在室管理システム自動化における iBeacon の活用 ，東京都市大学横浜キャンパス情報メディアジャーナル 2015. 4 第 16 号

[9] 名 古 屋 工 業 大 学 情 報 基 盤 セ ン タ ー ， 学 生 出 欠 管 理 シ ス テ ム 基 本 設 計 書
https://www.cc.nitech.ac.jp/public/develop/nit-kihonsekkei.pdf[10] Radius Networks 社， AltBeacon ， http://altbeacon.org/[11] Apache ソフトウェア財団， Apache HTTP Server ，https://httpd.apache.org/，