以下では、本発明の実施の形態に係る位置推定システム及び受信端末について、図面を用いて詳細に説明する。なお、以下に説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。したがって、以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置及び接続形態などは、一例であり、本発明を限定する趣旨ではない。よって、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
また、各図は、模式図であり、必ずしも厳密に図示されたものではない。また、各図において、同じ構成部材については同じ符号を付している。
(実施の形態)
[1.位置推定システムの概要及び適用例]
まず、本実施の形態に係る位置推定システムの概要及び適用例について、図1を用いて説明する。図1は、本実施の形態に係る位置推定システム1の適用例を示す図である。
本実施の形態に係る位置推定システム1は、可視光通信を利用して受信端末の位置を推定するシステムである。
可視光通信は、可視光帯域の光(すなわち、可視光)を用いて、所定の情報を送受信する技術である。具体的には、送信側では、所定の情報を用いて可視光を変調することにより、所定の情報を可視光に重畳させて送信し、受信側では、送信された可視光を受光して復調することにより、変調に用いた情報を取得する。なお、可視光は、例えば、波長が380nm〜780nmの光である。
本実施の形態に係る位置推定システム1は、例えば、図1に示すように、所定の空間内を移動するロボット2の位置を推定することに適用することができる。所定の空間は、例えば、1以上の照明装置10が設けられた空間であり、具体的には、建築物の内部、又は、屋根若しくは天井がある空間などである。
当該空間には、図1に示すように複数の照明装置10が設けられている。例えば、複数の照明装置10は、2m〜3m間隔で天井3に配置されている。なお、当該間隔は、一般的な照明設計に基づく間隔であり、天井3が高いなどの設置環境に応じて適宜変更することができる。
なお、天井3は、複数の照明装置10が設けられた壁面の一例である。複数の照明装置10は、床4又は壁5に設けられてもよい。
複数の照明装置10は、可視光通信の送信機であり、それぞれが固有の識別情報が重畳された照明光(具体的には、可視光)を発する。識別情報は、複数の照明装置10のそれぞれに割り当てられた固有の可視光IDである。可視光IDは、例えば、照明装置10の位置を示す位置情報である。図1では、6個の照明装置10を示しており、それぞれにID1〜ID6が可視光IDとして割り当てられている。
ロボット2は、移動体の一例であり、例えば、自走式の搬送車である。ロボット2は、床4上を走行して、所定の物品などを搬送する。例えば、ロボット2は、病院又は工場内で薬剤及び検体などを人手の代わりに全自動で搬送する。
ロボット2は、例えば、天井3と、床4と、壁5とに囲まれた空間内を移動する。なお、ロボット2は、壁5に設けられたドア6から隣の空間に移動してもよい。
ロボット2には、受信端末20が取り付けられている。例えば、受信端末20は、ロボット2の頭頂部に設けられている。これにより、天井3に設けられた照明装置10からの照明光を受光しやすくすることができる。
受信端末20は、可視光通信の受信器であり、例えば、照明装置10が発する照明光を受光することで、照明光に重畳された識別情報を受信する。受信端末20は、受信した識別情報に基づいて、自身の位置を推定する。ロボット2は、受信端末20によって推定された位置に基づいて、進むべき方向などを決定することができ、物品の搬送をスムーズに行うことができる。
本実施の形態では、照明装置10が天井3に設けられており、天井3と受信端末20との間には、受信端末20の受光を妨げる恐れのある障害物(例えば、人間又は備品など)が少ない。このため、位置推定システム1は、周囲の環境の変化の影響を受けにくく、ロバスト性が高いシステムである。
[2.位置推定システムの詳細な構成]
続いて、本実施の形態に係る位置推定システム1の詳細な構成について、図2を用いて説明する。図2は、本実施の形態に係る位置推定システム1の構成を示すブロック図である。
本実施の形態に係る位置推定システム1は、図2に示すように、1以上の照明装置10と、受信端末20と、サーバ装置30とを備える。なお、図2では、1つのみの照明装置10を示している。
[2−1.照明装置]
照明装置10は、可視光送信部11と、制御部12とを備える。
可視光送信部11は、照明光を所定の照明エリアに照射する。このとき、複数の照明装置10のそれぞれの照明エリアは、互いに異なっている。複数の照明エリアは、一部が互いに重複していてもよい。
可視光送信部11は、例えば、直列に接続された複数のLED(Light Emitting Diode)により構成され、照明光を発生する。可視光送信部11は、照明光を照射することで、当該照明光に重畳された固有の可視光IDを繰り返し送信する。
可視光送信部11は、例えば、固有の可視光IDを示すフレームを一定の周期で繰り返し送信する。各フレームは、当該フレームの先頭を示すプリアンブルと、当該フレームのタイプを示すタイプ情報と、任意の情報(ここでは、可視光ID)を示すペイロードと、当該フレームの誤り検出符号(例えば、CRC(Cyclic Redundancy Check)符号)とを含む固定長のデータである。
制御部12は、照明光に可視光IDを重畳させる。例えば、制御部12は、可視光送信部11が備える複数のLEDのうち少なくとも1つのLEDの点灯及び消灯を制御する。これにより、複数のLEDを流れる電流量が変化し、照明光の明暗が発生する。可視光IDを用いて点灯及び消灯を制御することにより、可視光IDが照明光の明暗として送信される。つまり、可視光IDが照明光に重畳される。
また、制御部12は、光強度変調として、本実施の形態では、N(2以上の整数)値のパルス位置変調(PPM:Pulse Position Modulation)が用いられる。例えば、4PPMでは、一定時間長の1シンボルで2ビットが表現される。可視光通信に用いられる変調方法などは、例えば、電子情報技術産業協会規格(JEITA)のCP−1223「可視光ビーコンシステム」に規定されている。
[2−2.受信端末]
受信端末20は、可視光受信部21と、駆動部22と、制御部23と、撮影部24と、姿勢センサ25と、距離センサ26と、加速度センサ27と、無線部28と、提示部29とを備える。
可視光受信部21は、所定の受光方向に指向性を有する受光部21aを有する。受光部21aは、例えば、所定の範囲から入射される光のみを受信する。所定の範囲は、例えば、平面角が30度〜120度の範囲である。
受光部21aは、照明光を受光し、受光した照明光を光電変換することで、電気信号を生成して出力する。受光部21aは、例えば、フォトダイオード、フォトトランジスタ、フォトコンダクタなどである。具体的には、受光部21aは、フォトダイオードなどに照明光を集光する光学レンズなどの集光部を有する。これにより、受光部21aは、所定の受光方向に指向性を有する。
可視光受信部21は、受光部21aが生成した電気信号を復調することで、照明光に重畳された可視光IDを取得する。
駆動部22は、受光方向を変更する。例えば、駆動部22は、互いに直交する2軸のそれぞれを軸として、可視光受信部21を回動させる。2軸は、例えば、左右方向及び上下方向である。つまり、駆動部22は、可視光受信部21をパン及びチルトすることができる。パンは、上下方向を軸とした左右方向への回動であり、チルトは、左右方向を軸とした上下方向への回動である。回動の具体例については、図5A〜図6Bを用いて後で説明する。
なお、上下方向は、受信端末20を所定の設置面に設置した場合に、当該設置面に垂直な方向である。左右方向は、受信端末20を設置面に設置した場合に、当該設置面に平行な方向である。つまり、受信端末20を水平面に設置した場合には、上下方向及び左右方向はそれぞれ、鉛直方向及び水平方向になる。
制御部23は、駆動部22を制御する。具体的には、制御部23は、駆動部22を制御して受光方向を1以上の照明装置10に向けることで、1以上の照明装置10から発せられた照明光を受光部21aに受光させる。
このとき、例えば、制御部23は、撮影部24によって取得された撮影画像から1以上の照明装置10の位置を推定し、推定した1以上の位置に受光方向が向くように駆動部22を制御することで、受光方向を1以上の照明装置10に向ける。例えば、制御部23は、推定した1以上の位置に、撮影画像の中心に近い順で受光方向が向くように駆動部22を制御する。
制御部23は、受光部21aが受光した照明光に重畳された可視光IDと、当該照明光を受光部21aが受光したときの受光方向とを用いて、受信端末20の位置を算出する。具体的には、制御部23は、異なる位置に配置された2つの照明装置10の位置を利用した三角測量により、受信端末20の位置を算出する。このとき、例えば、制御部23は、距離センサ26によって取得された距離情報をさらに用いて、受信端末20の位置を算出する。
三角測量の詳細については、図7A及び図7Bを用いて後で説明する。
撮影部24は、1以上の照明装置10を撮影することで、撮影画像を取得する。撮影部24は、例えば、1以上の照明装置10を同時に撮影する。言い換えると、撮影画像には、1以上の照明装置10が含まれる。例えば、撮影部24は、広範囲を撮影可能な広角カメラであり、具体的には、魚眼カメラである。撮影部24は、例えば、受信端末20の天頂方向を中心として1以上の照明装置10を撮影する。これにより、撮影画像の中心が天頂になる。
姿勢センサ25は、受光部21aの傾きを検知する。例えば、姿勢センサ25は、水平方向に対する受光部21aの傾きを検知する。受信端末20が水平面を移動している場合、姿勢センサ25が検出する傾きは、駆動部22による上下方向の回動角(すなわち、チルト角θ)に相当する。受信端末20が斜面を移動している場合、姿勢センサ25が検出する傾きは、駆動部22による上下方向の回動角と斜面の角度との合計に相当する。姿勢センサ25は、例えば、ジャイロセンサである。
距離センサ26は、1以上の照明装置10までの距離、又は、天井3までの距離を示す距離情報を取得する。距離センサ26は、例えば、赤外線センサ、又は、ステレオカメラである。
例えば、距離センサ26は、受光部21aの近傍に設けられ、受光部21aの受光方向と平行な方向への距離を測定する。これにより、受光部21aの受光方向が照明装置10に向けられた場合に、距離センサ26は、照明装置10までの距離を測定することができる。
加速度センサ27は、受信端末20の移動を検知する移動検知部の一例である。加速度センサ27は、受信端末20の加速度を検知する。例えば、加速度センサ27は、3軸加速度センサである。
なお、受信端末20は、加速度センサ27の代わりに、ロボット2の車輪の駆動を検知する駆動検知部を備えてもよい。
無線部28は、サーバ装置30と無線通信を行う。例えば、無線部28は、Wi−Fi(登録商標)、Bluetooth(登録商標)又はZigBee(登録商標)などの無線通信規格に対応する通信モジュール又は通信インタフェースである。
無線部28は、可視光受信部21によって取得された可視光IDをサーバ装置30に送信する。そして、無線部28は、サーバ装置30から、送信した可視光IDに対応する照明位置情報を取得する。照明位置情報は、送信した可視光IDを発した照明装置10の位置を示す情報である。例えば、照明位置情報は、フロア番号と、フロア内の二次元座標とを示す。あるいは、照明位置情報は、フロア番号と、緯度及び経度とを示してもよい。
また、無線部28は、端末位置情報を送信する。端末位置情報は、制御部23によって算出された受信端末20の位置を示す情報である。つまり、端末位置情報は、受信端末20の現在位置を示している。端末位置情報は、照明位置情報と同様に、フロア番号と、フロア内の二次元座標とを示す。端末位置情報は、フロア番号と、緯度及び経度とを示してもよい。
無線部28は、送信した端末位置情報に対応する環境情報を取得する。環境情報は、例えば、端末位置情報が示す位置の周囲の障害物を示す情報である。例えば、環境情報は、近くに壁5があること、あるいは、ドア6があることなどを示す情報である。
提示部29は、算出された受信端末20の位置に応じた情報を提示する。例えば、提示部29は、無線部28によって取得された環境情報をユーザに提示する。提示部29は、例えば、スピーカー、バイブレータ、ディスプレイなどであり、音、振動又は光などで環境情報をユーザに提示する。例えば、提示部29は、壁5があることを示す環境情報に基づいて、「壁があります」などという音声データを生成して出力する。
また、提示部29は、さらに、端末位置情報をユーザに提示してもよい。これにより、ユーザは、現在位置を知ることができる。
なお、図1に示すように、ロボット2に受信端末20が設けられている場合は、受信端末20は、提示部29を備えていなくてもよい。
[2−3.サーバ装置]
サーバ装置30は、位置推定システム1の情報提供機器である。サーバ装置30は、無線部31と、無線情報管理部32と、記憶部33とを備える。
無線部31は、受信端末20と無線通信を行う。例えば、無線部31は、Wi−Fi、Bluetooth又はZigBeeなどの無線通信規格に対応する通信モジュール又は通信インタフェースである。具体的には、無線部31は、受信端末20の無線部28と同じ無線通信規格に基づいた無線通信を行う。
無線部31は、受信端末20から送信された可視光IDを取得する。そして、無線部31は、取得した可視光IDに対応する照明位置情報を送信する。また、無線部31は、受信端末20から送信された端末位置情報を取得する。そして、無線部31は、取得した端末位置情報に対応する環境情報を送信する。
無線情報管理部32は、無線部31が取得した情報に基づいて、当該情報に対応する情報を記憶部33から読み出して取得する。例えば、無線情報管理部32は、無線部31が取得した可視光IDに対応する照明位置情報を、記憶部33に記憶されている照明位置データベース33aを参照することで取得する。また、無線情報管理部32は、無線部31が取得した端末位置情報に対応する環境情報を、記憶部33に記憶されている環境情報データベース33bを参照することで取得する。
記憶部33は、照明位置データベース33aと、環境情報データベース33bとを記憶している。記憶部33は、例えば、HDD(Hard Disk Drive)、フラッシュメモリなどの不揮発性記録媒体である。
ここで、照明位置データベース33aと、環境情報データベース33bとの一例について、図3A及び図3Bを用いて説明する。
図3Aは、本実施の形態に係る照明位置データベース33aを示す図である。
照明位置データベース33aは、可視光IDと、当該可視光IDが割り当てられた照明装置10の位置とを対応付けたデータベースである。図3Aに示すように、照明装置10の位置、すなわち、照明位置情報は、三次元座標で示される。具体的には、照明装置10の位置は、フロア数と、フロア内での二次元位置を示すX座標及びY座標とで表される。例えば、照明位置データベース33aは、フロア毎に、フロア内の照明装置10の位置を示すフロアマップに相当する。なお、X座標及びY座標の代わりに、緯度及び経度を用いてもよい。
例えば、図3Aに示す例では、ID1が割り当てられた照明装置10は、3階のフロア内の(150,100)の位置に配置されていることを表している。また、ID2が割り当てられた照明装置10は、3階のフロア内の(150,200)の位置に配置されていることを表している。他の可視光IDが割り当てられた照明装置についても同様である。
図3Bは、本実施の形態に係る環境情報データベース33bを示す図である。
環境情報データベース33bは、位置情報と、環境情報とを対応付けたデータベースである。図3Bに示すように、位置情報は、例えば、三次元座標で示される。環境情報は、位置情報が示す位置の周囲の様子を示す情報である。具体的には、環境情報は、「壁」、「ドア」、「障害物」などのロボット2にとって移動の障害になるものが近くにあることを示している。例えば、環境情報は、ロボット2にとって危険なものを示す危険情報を含んでいる。
環境情報は、危険に対する回避方法を示す回避情報をさらに含んでもよい。例えば、「壁5」によって進むことができない場合は、環境情報は、壁5の方向には進入禁止であることを示す進入禁止情報を回避情報として含んでいる。この場合、受信端末20は、進入禁止情報に基づいて、壁5の方向への移動を禁止する。あるいは、環境情報は、壁5を迂回するための情報、例えば、ドア6の位置を示す情報を含んでもよい。この場合、受信端末20は、ドア6の方向へロボット2の進路を向けることができる。
なお、位置情報は、X座標及びY座標、並びに、フロア数の少なくとも1つを示せばよい。例えば、1行目の(0,任意,3)のように、Y座標が任意の値で示されてもよい。この場合、無線情報管理部32は、フロア数が“3”であり、X座標が“0”である端末位置情報を取得された場合、当該端末位置情報は(0,任意,3)に相当するので、対応する「壁あり」という環境情報を読み出すことができる。
また、記憶部33は、例えば、受信端末20の移動履歴を示す移動履歴情報を記憶してもよい。移動履歴情報は、例えば、受信端末20から受信した端末位置情報と、時刻情報とを対応付けて示す情報である。
[3.受信端末の構成]
続いて、本実施の形態に係る受信端末20の構成について、図4〜図6Bを用いて説明する。
図4は、本実施の形態に係る受信端末20の概観斜視図である。
図5Aは、本実施の形態に係る受信端末20の基準位置を示す側面図である。図5Bは、本実施の形態に係る受信端末20がチルト角θで回動したときの位置を示す側面図である。
図6Aは、本実施の形態に係る受信端末20の基準位置を示す上面図である。図6Bは、本実施の形態に係る受信端末20がパン角φで回動したときの位置を示す上面図である。
図5A〜図6Bにおいて、軸Pは、受信端末20の左右方向に平行な軸であり、軸Qは、受信端末20の上下方向に平行な軸である。軸Pと軸Qとは、互いに直交する。
図4に示すように、受信端末20は、受信器100と、チルト駆動部110と、パン駆動部120と、筐体130と、魚眼カメラ140とを備える。
受信器100は、例えば、略直方体状の筐体である。受信器100には、受光部101が設けられている。また、図示しないが、受信器100には、姿勢センサ25及び距離センサ26が設けられている。受光部101は、図2に示す受光部21aに相当する。
受信器100は、チルト駆動部110に取り付けられている。このとき、受光部101は、チルト駆動部110との取り付け面とは反対側に設けられ、照明光が受光可能な状態にある。
チルト駆動部110及びパン駆動部120は、図2に示す駆動部22に相当する。チルト駆動部110は、軸Pを回動軸として上下方向に回動、すなわち、チルトする。パン駆動部120は、軸Qを回動軸として左右方向に回動、すなわち、パンする。チルト駆動部110及びパン駆動部120は、制御部23によってそれぞれ独立に制御される。
チルト駆動部110は、パン駆動部120に回動可能に取り付けられている。パン駆動部120は、筐体130に回動可能に取り付けられている。チルト駆動部110及びパン駆動部120が回動することで、連動して受信器100も回動する。
筐体130は、例えば、略円柱状の筐体である。筐体130には、例えば、通信モジュール(図2に示す無線部28)、マイコン(図2に示す制御部23)、加速度センサ27が内蔵されている。筐体130の形状は一例であって、いかなるものでもよい。筐体130は、例えば、プラスチックなどの樹脂材料から構成される。
魚眼カメラ140は、図2に示す撮影部24に相当する。魚眼カメラ140は、例えば、15fpsなどのフレームレートで撮影する。魚眼カメラ140は、高フレームレートでの撮影を行う必要はなく、例えば、60fps以下のフレームレートでの撮影ができれば十分である。したがって、魚眼カメラ140としては、市販の安価なカメラを利用することができる。
図5A及び図5Bに示すように、受信器100は、軸Pを回動軸として上下方向に回動、すなわち、チルトする。具体的には、制御部23による制御に基づいて、チルト駆動部110が上下方向に回動することにより、受信器100はチルトする。これにより、受光部101の受光方向102を上下方向に傾けることができる。
例えば、図5Aに示すように、受光部101の受光方向102が軸Qに一致する場合を、受信端末20の基準位置とみなす。すなわち、この場合、チルト角θは0度である。チルト角θは、図5Bに示すように、軸Qと受光方向102とがなす角度で示される。チルト角θは、例えば、−90度〜+90度の値で示される。つまり、チルト駆動部110は、例えば、±90度の回動が可能である。
なお、受光方向102は、例えば、受光部101の受光強度が最も高い光の入射方向である。具体的には、受光部101の中心を通り、受信器100の受光部101が露出した面に垂直な方向である。受光部101は、受光方向102を中心とした所定の範囲(具体的には、所定の立体角)内の光を受光することができる。
また、図6A及び図6Bに示すように、受信器100は、軸Qを回動軸として左右方向に回動、すなわち、パンする。具体的には、制御部23による制御に基づいて、パン駆動部120が左右方向に回動することにより、受信器100はパンする。これにより、受光部101の受光方向102を左右方向に変更することができる。
例えば、図6Aに示すように、受光部101の所定方向103が軸Pに一致する場合を、受信端末20の基準位置とみなす。すなわち、この場合、パン角φは0度である。パン角φは、図6Bに示すように、軸Pと所定方向103とがなす角度で示される。パン角φは、例えば、−180度〜+180度の値で示される。つまり、パン駆動部120は、例えば、±180度の回動が可能である。あるいは、パン駆動部120は、回転することができてもよい。
なお、所定方向103は、予め定められた任意の方向である。例えば、照明位置を定義するのに用いたX軸及びY軸に平行な方向でもよい。あるいは、所定方向103は、東西南北などの絶対的な方向でもよい。あるいは、所定方向103は、ロボット2の進行方向でもよい。本実施の形態では、所定方向103がY軸正方向である場合について説明する。
[4.三角測量]
続いて、本実施の形態に係る三角測量を用いた位置推定の詳細について、図7A〜図10を用いて説明する。
[4−1.天井と床とが水平の場合]
まず、天井3と床4とが水平である場合について、図7A及び図7Bを用いて説明する。図7A及び図7Bはそれぞれ、本発明の実施の形態に係る位置推定システムにおける三角測量を説明するための斜視図及び上面図である。
図7Aに示すように、天井3には、第1照明装置10aと、第2照明装置10bとが互いに異なる位置に設けられている。例えば、第1照明装置10aは、第1位置(80,60)に配置され、第2照明装置10bは、第2位置(10,30)に配置されている。第1照明装置10a及び第2照明装置10bはそれぞれ、照明装置10と同じ構成を有する。
第1照明装置10aは、第1識別情報の一例であるID1が重畳された第1照明光を発する。第2照明装置10bは、第2識別情報の一例であるID2が重畳された第2照明光を発する。
本実施の形態では、制御部23は、ID1に基づいて第1位置をサーバ装置30から取得する。制御部23は、ID2に基づいて第2位置をサーバ装置30から取得する。具体的には、制御部23は、無線部28を介して、第1位置及び第2位置を示す照明位置情報をサーバ装置30から取得する。さらに、制御部23は、取得した第1位置及び第2位置と、第1照明光を受光部21aが受光したときの第1受光方向と、第2照明光を受光部21aが受光したときの第2受光方向とを用いた三角測量により、受信端末20の位置を算出する。
なお、以下では説明を簡単にするため、受信端末20が静止した状態で2つの可視光ID(具体的には、ID1及びID2)を取得した場合について説明する。
まず、制御部23は、駆動部22を制御することで、受光部21aの受光方向を第1照明装置10aに向ける。具体的には、制御部23は、受光方向を向けるべき位置である第1照明装置10aのおよその位置を撮影画像から決定し、決定した位置に受光方向を向ける。これにより、受光部21aは、第1照明装置10aが発する第1照明光を受光する。例えば、受光時のチルト角はθ1であり、パン角はφ1である。可視光受信部21は、受光部21aが受光した第1照明光に重畳されたID1を取得する。
受信端末20から天井3までの高さ、具体的には、図7Aに示す受信端末20から天頂部200までの高さをHとする。なお、天頂部200は、受信端末20の天頂方向と天井3との交点であり、具体的には、図5Aに示す受信端末20の軸Qと天井3との交点である。天井3と床4とが平行である場合は、高さHは固定の値であるので、例えば、制御部23が高さHを予め記憶していてもよい。あるいは、距離センサ26により高さHを測定してもよい。
このとき、制御部23は、第1照明装置10aと天頂部200との間の距離L1を、(式1)を用いて算出する。
(式1)L1=Htanθ1
これにより、図7Bに示すように、受信端末20は、上面視において、第1照明装置10aを中心とした半径L1(=Htanθ1)の第1円211の円周上に位置していることが分かる。
続いて、制御部23は、駆動部22を制御することで、受光部21aの受光方向を第2照明装置10bに向ける。これにより、受光部21aは、第2照明装置10bが発する第2照明光を受光する。例えば、受光時のチルト角はθ2であり、パン角はφ2である。可視光受信部21は、受光部21aが受光した第2照明光に重畳されたID2を取得する。
制御部23は、第2照明装置10bと天頂部200との間の距離L2を、(式2)を用いて算出する。
(式2)L2=Htanθ2
これにより、図7Bに示すように、受信端末20は、上面視において、第2照明装置10bを中心とした半径L2(=Htanθ2)の第2円212の円周上に位置していることが分かる。
以上のことから、受信端末20の平面内の位置は、第1円211の円周と第2円212の円周との2つの交点201及び202のいずれかに決定される。
さらに、制御部23は、パン角φ1及びφ2を用いて受信端末20の位置を一意に算出することができる。例えば、図7BにおいてY軸方向がパン角の基準(0度)である場合を想定する。このとき、受信端末20が交点201に位置するとき、パン角φ1及びφ2は、ともに90度未満の値になるのに対して、受信端末20が交点202に位置するとき、パン角φ1及びφ2は、とも90度以上の値となる。このように、例えば、パン角φ1及びφ2の大きさを判定することで、受信端末20の平面内の位置を算出することができる。具体的には、図7A及び図7Bに示す例では、交点201に受信端末20が位置していることが分かる。
以上のようにして、制御部23は、第1照明装置10a及び第2照明装置10bに対する相対的な受信端末20の位置を算出する。
さらに、制御部23は、無線部28を介して、ID1及びID2をサーバ装置30に送信することで、サーバ装置30から、第1照明装置10aの第1位置及び第2照明装置10bの第2位置を取得する。そして、制御部23は、第1位置及び第2位置を用いて、受信端末20の絶対位置を算出する。
なお、受信端末20は、実際には、移動しながら照明光を受信するので、2つの照明装置10から照射された2つの照明光(具体的には、第1照明光及び第2照明光)をそれぞれ受光する時刻(タイミング)は異なっている。つまり、2つの照明光を受光する間に受信端末20が移動するので、三角測量を行う際に、受信端末20の移動量を考慮に入れることで、より高精度に受信端末20の位置を算出することができる。
具体的には、制御部23は、第1照明光を受光した第1時刻と、第2照明光を受光した第2時刻との間に受信端末20が移動した移動量を、加速度センサ27の検知結果に基づいて算出する。そして、制御部23は、算出した移動量を用いて、受信端末20の位置を算出する。
例えば、第1時刻と第2時刻との間に、受信端末20が所定の移動方向に距離dだけ移動した場合を想定する。この場合、第1円211の中心である第1照明装置10aが、当該所定の移動方向に距離dだけ移動した位置にあるとみなせばよい。なお、移動方向は、例えば、加速度センサ27によって取得することができる。
なお、例えば、制御部23は、加速度センサ27が受信端末20の移動を検知しない状態で駆動部22を制御してもよい。つまり、制御部23は、受信端末20が静止している状態で駆動部22を制御してもよい。これにより、受信端末20が移動しないので、移動量を用いた補正を行わなくてもよい。
[4−2.床が斜めの場合]
次に、床が斜めである場合について、図8を用いて説明する。図8は、本実施の形態に係る位置推定システム1において床4aが斜めになっている場合の三角測量を説明するための図である。
床4aが斜めになっている場合、水平な床4の場合と同様に、第1照明装置10aから天頂部200までの距離L1と、第2照明装置10bから天頂部200までの距離L2とを算出すればよい。床の傾きをθとし、受信端末20から第1照明装置10aまでの距離をD1、第2照明装置10bまでの距離をD2としたとき、距離L1及びL2はそれぞれ、(式3)及び(式4)で表される。
(式3) L1=D1sin(θ1−θ)
(式4) L2=D2sin(θ2+θ)
一方で、受信端末20から天頂部200までの距離Hは、(式5)で表される。
(式5) H=D1cos(θ1−θ)=D2cos(θ2+θ)
したがって、例えば、(式5)の右の等式を解くことにより、θをθ1、θ2、D1及びD2で表すことができる。なお、θ1及びθ2は、可視光IDの受光時のチルト角として取得することができる。また、D1及びD2は、距離センサ26によって取得することができる。
これにより、制御部23は、(式3)〜(式5)を用いて、L1及びL2を算出することができる。したがって、制御部23は、図7A及び図7Bの場合と同様に、受信端末20の位置を算出することができる。
なお、このとき、距離センサ26は、D1及びD2のいずれか一方の代わりに、天頂部200までの距離Hを取得してもよい。あるいは、姿勢センサ25によって床4aの傾きθを直接測定してもよい。
[4−3.天井が斜めの場合]
次に、天井が斜めである場合について、図9を用いて説明する。図9は、本実施の形態に係る位置推定システム1において天井3aが斜めになっている場合の三角測量を説明するための図である。
天井3aが斜めになっている場合、水平な天井3の場合と同様に、第1照明装置10aから天頂軸200aまでの距離L1と、第2照明装置10bから天頂軸200aまでの距離L2とを算出すればよい。なお、天頂軸200aは、受信端末20と天頂部200とを結ぶ直線、すなわち、受信端末20の天頂方向である。受信端末20から第1照明装置10aまでの距離D1と、第2照明装置10bまでの距離D2とを用いて、距離L1及びL2はそれぞれ、(式6)及び(式7)で表される。
(式6) L1=D1sinθ1
(式7) L2=D2sinθ2
なお、(式6)及び(式7)はそれぞれ、(式3)及び(式4)において、床の傾きθを0度とした式である。
したがって、距離センサ26がD1及びD2を取得することにより、制御部23は、(式6)及び(式7)を用いて距離L1及び距離L2を算出することができる。よって、制御部23は、図7A及び図7Bの場合と同様に、受信端末20の位置を算出することができる。
[4−4.床と天井とが斜めの場合]
次に、床と天井との両方が斜めである場合について、図10を用いて説明する。図10は、本実施の形態に係る位置推定システム1において床4aと天井3aが斜めになっている場合の三角測量を説明するための図である。
床4a及び天井3aが斜めになっている場合、水平な床4及び天井3の場合と同様に、第1照明装置10aから天頂軸200aまでの距離L1と、第2照明装置10bから天頂軸200aまでの距離L2とを算出すればよい。床4aの傾きをθとすると、距離L1及びL2は、図8の場合と同様に、(式3)及び(式4)で示される。
したがって、制御部23は、(式3)〜(式5)を用いて、L1及びL2を算出することができる。したがって、制御部23は、図7A及び図7Bの場合と同様に、受信端末20の位置を算出することができる。
なお、このとき、姿勢センサ25によって床4aの傾きθを直接測定してもよい。
[5.受光方向を向ける順序]
続いて、制御部23が撮影画像に基づいて、受光部21aの受光方向を向ける順序を決定する動作について図11を用いて説明する。
図11は、本実施の形態に係る撮影部24(魚眼カメラ140)によって取得された撮影画像を示す図である。撮影画像には、天井3と、天井3に配置された複数の照明装置10とが含まれる。例えば、図11に示すように、撮影画像には、12個の照明装置10(図中では、それぞれの可視光IDがIDa〜IDlと示されている)が含まれている。
制御部23は、撮影画像から1以上の照明装置10を検出する。具体的には、まず、制御部23は、撮影画像を二値化する。例えば、制御部23は、画素毎に、撮影画像の画素値(例えば、輝度値)を所定の閾値と比較する。そして、制御部23は、閾値より小さい画素の輝度値を0に変換し、閾値以上の画素の輝度値を所定値(例えば、最大値)に変換することで、撮影画像を二値化する。
これにより、例えば、閾値を適切な値に設定することで、撮影画像のうち高輝度領域を抽出することができる。抽出された高輝度領域は、照明装置10に起因するものであるので、高輝度領域の位置が照明装置10の位置に相当する。
次に、制御部23は、撮影画像の中心に近い順で、検出した照明装置10の位置の優先度を設定する。なお、撮影部24は、受信端末20の天頂方向を中心として撮影を行うので、撮影画像の中心は、天頂部200に相当する。つまり、制御部23は、天頂部200に近い順で、検出した照明装置10の位置の優先順位を設定する。
例えば、図11に示す例では、IDfの照明装置10が中心に最も近く、最優先される。次に、IDgの照明装置10が2番目に中心に近く、2番目に優先される。
制御部23は、優先順位に従って、検出された方向に受光方向を傾ける。具体的には、制御部23は、まず、IDfの照明装置10の方向に受光方向を向けるように駆動部22を制御する。次に、制御部23は、IDgの照明装置10の方向に受光方向を向けるように駆動部22を制御する。
以上のように、本実施の形態では、天頂部200に近い照明装置10からの照明光を優先的に受光するように、受光部21aを傾ける。天頂部200に近い照明装置10からの照明光は、光強度が強いので、受光した照明光から可視光IDを容易に復調することができる。これにより、例えば、可視光通信のエラーなどの発生を抑制することができ、位置推定の精度を高めることができる。
[6.動作]
続いて、本実施の形態に係る位置推定システム1の動作について、図12を用いて説明する。図12は、本実施の形態に係る位置推定システム1の動作を示すフローチャートである。具体的には、図12は、受信端末20の動作を示している。
まず、撮影部24(魚眼カメラ140)は、天井3を撮影することで、撮影画像を取得する(S10)。具体的には、天井3に配置された複数の照明装置10を撮影する。これにより、例えば、図11に示す撮影画像が取得される。
次に、制御部23は、撮影部24によって取得された撮影画像を二値化する(S12)。例えば、制御部23は、撮影画像の画素毎に、輝度値と閾値とを比較して、閾値より小さい画素の輝度値を0に変換し、閾値以上の画素の輝度値を所定値に変換することで、撮影画像を二値化する。
次に、制御部23は、高輝度領域を検出する(S14)。具体的には、制御部23は、二値化された撮影画像の非0の画素の集合を、高輝度領域として検出する。このとき、制御部23は、画素の集合が一定以上の大きさの領域である場合に、当該領域を高輝度領域として検出してもよい。高輝度領域が照明装置10の位置に相当する。すなわち、制御部23は、照明装置10の位置を検出する。
照明装置10が検出された場合(S16でYes)、制御部23は、駆動部22を制御して、検出された照明装置10の位置に受光方向を向ける(S18)。このとき、制御部23は、撮影画像に基づいて、天頂部200に近い順で受光方向を向ける。例えば、制御部23は、撮影画像から照明装置10のおよその位置を推定し、推定した位置に応じてチルト角θ及びパン角φを決定し、駆動部22を制御する。
なお、このとき、床が水平である場合は、撮影画像の中心が天頂部200に一致するが、例えば、図8及び図10に示す床4aのように、床が斜めの場合は、撮影画像の中心は天頂部200に一致しない。
このため、例えば、姿勢センサ25によって検知された受信端末20の傾きに基づいて、制御部23は、撮影画像から天頂部200の位置を決定する。具体的には、制御部23は、距離センサ26によって取得された天井3までの距離と、受信端末20の傾きとに基づいて、撮影画像の中心からのずれ量を算出することで、天頂部200の位置を決定する。
受光部21aは、受光方向が照明装置10に一致した場合に、照明装置10から照明光を受光する(S20)。そして、可視光受信部21は、受光した照明光から可視光IDを取得する。
次に、距離センサ26は、受光した照明光を発した照明装置10までの距離を測定することで、距離情報を取得する(S22)。なお、取得した距離情報及び可視光IDは、例えば、制御部23が読み出し可能なメモリに一時的に保持される。
三角測量に必要な数の可視光IDが取得されていない場合(S24でNo)、ステップS18に戻り、制御部23は、次の照明装置10の位置に受光方向が向くように、駆動部22を制御する。なお、三角測量に必要な数は、例えば、2である。
三角測量に必要な数の可視光IDが取得された場合(S24でYes)、制御部23は、照明装置10に対する受信端末20の相対位置を算出する(S26)。具体的には、図7A及び図7Bで説明したように、受光方向(角度)と距離とを用いた三角測量に基づいて、制御部23は、受信端末20の相対位置を算出する。
次に、制御部23は、無線部28を介して、サーバ装置30に問い合わせを行う(S28)。具体的には、制御部23は、可視光受信部21が取得した可視光IDをサーバ装置30に送信することで、可視光IDに対応する照明位置情報の要求を行う。
次に、制御部23は、無線部28を介して、サーバ装置30から送信される照明位置情報を取得する(S30)。これにより、制御部23は、可視光IDに対応する照明装置10の位置を取得することができる。
制御部23は、取得した照明位置情報に基づいて、受信端末20の絶対位置を算出する(S32)。具体的には、制御部23は、三角測量に基づいて算出した相対位置と、照明位置情報が示す照明装置10の位置とに基づいて、受信端末20の絶対位置を算出する。
次に、制御部23は、無線部28を介して、算出した絶対位置を示す端末位置情報をサーバ装置30に送信する(S34)。サーバ装置30では、例えば、受信した端末位置情報を時刻情報に対応付けて、移動履歴情報として記憶部33に記憶する。
次に、制御部23は、無線部28を介して、送信した端末位置情報に対応する環境情報をサーバ装置30から取得する(S36)。
最後に、制御部23は、算出した受信端末20の位置に基づいて、例えば、ロボット2の移動方向の制御を行う(S38)。また、制御部23は、取得した環境情報に応じた制御を行う。例えば、制御部23は、ロボット2に壁5を回避させるように、壁5とは異なる方向へロボット2の移動方向を向けるように、ロボット2の駆動部を制御する。
ここで、例えば、三角測量で受信端末20の位置を算出するためには、少なくとも2つの可視光IDと、当該2つの可視光IDを取得したときの受光方向とが必要である。しかしながら、受信端末20の位置によっては、1つの可視光IDしか受信できない場合、あるいは、可視光IDを1つも受信できない場合も想定される。
これらの場合は、例えば、制御部23は、過去の移動履歴情報(又は、受信できた1つの可視光ID)と、加速度センサ27によって検出された加速度とに基づいて、受信端末20の位置を推定してもよい。例えば、制御部23は、直前に算出された受信端末20の位置と、加速度に基づいて算出された受信端末20の移動量とに基づいて、現在位置を推定することができる。
また、このとき、制御部23は、撮影部24によって取得された撮影画像を位置の推定に利用することもできる。例えば、制御部23は、天井3に配置された照明装置10の形状及び配置情報を用いることで、大まかな位置を推定することができる。
したがって、図12に示すように、照明装置10が検出されなかった場合(S16でNo)、例えば、制御部23は、無線部28を介して、サーバ装置30に問い合わせを行う(S40)。具体的には、制御部23は、照明装置10が検出できなかったことをサーバ装置30に通知する。制御部23は、例えば、サーバ装置30から直前の受信端末20の位置情報を取得し(S42)、取得した位置情報と加速度とに基づいて、受信端末20の現在位置を推定する(S44)。
以上のように、図12に示す動作を繰り返すことで、受信端末20(及びロボット2)は、自身の位置を算出しながら移動することができる。これにより、ロボット2の正確な自律移動が可能となる。
なお、天井3には、可視光通信を行わない照明装置が設けられている場合もある。この場合、ステップS20で可視光受信部21は、可視光IDを取得できない。したがって、距離情報を取得しなくてもよいので、制御部23は、ステップS22を行わずに次の照明装置の位置に受光方向を向けるように、駆動部22を制御してもよい。
[7.まとめ]
以上のように、本実施の形態に係る位置推定システム1は、各々が、固有の識別情報が重畳された照明光を発する1以上の照明装置10と、照明光を受光することで、識別情報を受信する受信端末20とを備え、受信端末20は、所定の受光方向に指向性を有する受光部21aと、受光方向102を変更する駆動部22と、駆動部22を制御する制御部23とを備え、制御部23は、駆動部22を制御して受光方向102を変更することで、1以上の照明装置10から発せられた照明光を受光部21aに受光させ、受光部21aが受光した照明光に重畳された識別情報と、当該照明光を受光部21aが受光したときの受光方向102とを用いて、受信端末20の位置を算出する。
これにより、駆動部22が受光部21aの受光方向を変更することで、容易に受光方向を照明装置10に向けることができる。このとき、受光部21aは、受光方向に指向性を有するので、狭い範囲の照明光を受光することができ、当該照明光に重畳された可視光IDを容易に取得することができる。例えば、受光した照明光を電気信号に変換し、変換した電気信号を復調することで、可視光IDを取得することができる。つまり、従来のように、空間分離を用いた撮影画像の画像処理を行わなくて済むので、低処理量で、受信端末20の位置を推定することができる。
また、指向性を有する受光部21aは、例えば、光学レンズとフォトダイオードとなどの安価な部品を組み合わせることで形成することができる。つまり、従来のように高フレームレートの魚眼レンズなどの高い性能を有する部品を必要としないので、安価に受信端末20の位置を推定することができる。
また、例えば、受信端末20は、さらに、撮影画像を取得する撮影部24を備え、制御部23は、撮影部24によって取得された撮影画像から1以上の照明装置10の位置を推定し、推定した1以上の位置に受光方向102が向くように、駆動部22を制御する。
これにより、撮影部24によって取得された撮影画像を利用して照明装置10の位置を推定し、受光方向を向ける方向を決定するので、素早く可視光IDを取得することができる。したがって、短期間に多くの可視光IDを取得することができるので、受信端末20の位置を精度良く推定することができる。
また、例えば、制御部23は、推定した1以上の位置に、撮影画像の中心に近い順で受光方向102が向くように、駆動部22を制御する。
これにより、撮影画像の中心に近い順で照明装置10に受光方向を向けるので、例えば、1つの照明装置10に受光方向を向けた後、次の照明装置10に受光方向を向けるのに要する時間が短くて済む。したがって、短期間で多くの可視光IDを取得することができるので、受信端末20の位置を精度良く推定することができる。
また、例えば、撮影部24は、受信端末20の天頂方向を中心として1以上の照明装置10を同時に撮影できるように設けられた広角カメラ又は魚眼カメラである。
これにより、受信端末20の天頂方向に近い順で照明装置10に受光方向を向けるので、より強度の強い照明光を受光することができ、可視光IDを精度良く取得することができる。つまり、可視光IDを誤認識する可能性が低減し、受信端末20の位置を精度良く推定することができる。
また、例えば、1以上の照明装置10は、第1識別情報が重畳された第1照明光を発する第1照明装置10aと、第1照明装置10aと異なる位置に配置され、第2識別情報が重畳された第2照明光を発する第2照明装置10bとを含み、制御部23は、第1識別情報に基づいて第1照明装置10aが配置された第1位置を取得し、第2識別情報に基づいて第2照明装置10bが配置された第2位置を取得し、第1位置及び第2位置と、第1照明光を受光部21aが受光したときの第1受光方向と、第2照明光を受光部21aが受光したときの第2受光方向とを用いた三角測量により、受信端末20の位置を算出する。
これにより、第1照明装置10aの第1位置と第2照明装置10bの第2位置とに基づいた三角測量により、受信端末20の位置を精度良く算出することができる。
また、例えば、受信端末20は、さらに、受信端末20の移動を検知する加速度センサ27を備え、制御部23は、さらに、第1照明光を受光した第1時刻と、第2照明光を受光した第2時刻との間に受信端末20が移動した移動量を、加速度センサ27の検知結果に基づいて算出し、算出した移動量をさらに用いて、受信端末20の位置を算出してもよい。
これにより、2つの可視光IDを受信する間に受信端末20が移動した場合であっても、受信端末20が移動した移動量を用いることで、受信端末20の位置を精度良く算出することができる。
また、例えば、受信端末20は、さらに、受信端末20の移動を検知する加速度センサ27を備え、制御部23は、加速度センサ27が受信端末20の移動を検知しない状態で駆動部22を制御してもよい。
これにより、2つの可視光IDを受信する間に受信端末20が移動しないので、移動量を考慮せずに済み、受信端末20の位置を算出するのに要する処理量を削減することができる。
また、例えば、受信端末20は、さらに、1以上の照明装置10までの距離、又は、1以上の照明装置10が設けられた天井3までの距離を示す距離情報を取得する距離センサ26を備え、制御部23は、距離情報をさらに用いて、受信端末20の位置を算出してもよい。
これにより、距離センサ26が照明装置10までの距離などを取得するので、例えば、天井3又は床4が傾いている場合でも、受信端末20の位置を精度良く算出することができる。
また、例えば、受信端末20は、さらに、受光部21aの傾きを検知する姿勢センサ25を備え、制御部23は、姿勢センサ25の検知結果に基づいて、受信端末20の天頂方向を決定し、決定した天頂方向に近い順で、1以上の照明装置10に受光方向102が向くように、駆動部22を制御してもよい。
これにより、姿勢センサ25が受光部21aの傾きを検知することで、受信端末20の天頂方向を決定するので、例えば、床4が傾いている場合でも、受信端末20の天頂方向を精度良く決定することができる。よって、例えば、上述したように天頂方向に近い順で受光方向を向けることで、短期間で多くの可視光IDを取得することができ、受信端末20の位置を精度良く推定することができる。
また、例えば、受信端末20は、移動体に設けられている。
これにより、例えば、ロボット2などの移動体の位置を推定することができる。したがって、本実施の形態に係る位置推定システム1を、移動体の自律移動の制御、又は、後述するようなナビゲーションに利用することができる。
[8.別の適用例]
上述したように、位置推定システム1を、ロボット2などの自律移動を行う移動体の制御に適用する例について説明したが、例えば、人間のナビゲーションに適用することもできる。
図13は、本実施の形態に係る位置推定システム1の適用例を示す図である。例えば、図13に示すように、本実施の形態に係る位置推定システム1は、老人300のナビゲーションを行うのに適用することができる。例えば、駅のホームなどの公共の場に複数の照明装置10が配置されており、老人300が所持する杖310に受信端末20が取り付けられている。
図14は、本変形例に係る受信端末20が取り付けられた杖310を示す図である。杖310は、例えば、一本杖である。なお、杖310は、松葉杖、ロフストランドクラッチ、多脚杖などでもよい。あるいは、杖310は、視覚障害者が有する白杖でもよい。杖310は、例えば、木材、金属、プラスチックなどから構成される。
図14に示すように、杖310は、把持部311を備える。
把持部311は、老人300が把持する部分であり、グリップ状の握り込み形状を有する。具体的には、把持部311は、U字形状を有する。
杖310の上部、すなわち、把持部311側の先端部に、受信端末20が設けられている。老人300が杖310の把持部311を把持した場合に、受信端末20が老人300の手によって覆われないように、把持部311より上方に受信端末20が設けられている。
これにより、照明装置10によって老人300の上方から照射される照明光を受信端末20が受光するのを妨げにくくすることができる。
以上の構成により、例えば、老人300が駅のホームの線路に近づきすぎた場合には、提示部29が老人300に線路が近いことを提示する。具体的には、提示部29は、バイブレータ又はスピーカーであり、振動又は音(ブザー音又は音声など)によって老人300に提示する。
あるいは、提示部29は、受信端末20が算出した絶対位置に基づいた位置情報を老人300に提示してもよい。例えば、制御部23は、駅名、ホームの番号などを受信端末20の絶対位置に基づいてサーバ装置30から取得し、提示部29が音声などによって老人300に提示してもよい。
これにより、例えば、点字ブロックなどに頼らずに、老人300又は視覚障害者をナビゲーションすることができる。
例えば、従来から利用されている点字ブロックは、上に人又は物などの障害物が置かれている場合があり、常に点字ブロックが利用できるとは限らない。例えば、雪国などでは、屋外の点字ブロックは、雪によって覆われている場合もある。
また、駅などでは、点字ブロックは線路際に配置されていることが多く、老人300などにとっては危険な位置に配置されている。さらに、点字ブロックは、進むべき経路を簡単に示しているに過ぎず、情報性が少ない。つまり、点字ブロックは、その傍にある物(例えば、建物の種別)などを示すことができず、リアルタイム性に乏しい。
これらの問題に対して、本実施の形態では、受信端末20が可視光通信によって取得した可視光IDに基づいて受信端末20の位置を算出するので、可視光通信を行う照明装置10が設けられている空間では、自由に案内することができる。つまり、点字ブロックの場合は、設置された点字ブロックの経路に沿ってしか案内できないのに対して、本実施の形態によれば、空間内を自由に案内することができる。
また、環境情報を提示することができるので、例えば、環境情報をリアルタイムに更新することで、人が居る場所に応じた情報を適宜提示することができる。
以上のように、例えば、受信端末20は、さらに、算出された受信端末20の位置に応じた情報を提示する提示部29を備える。
これにより、受信端末20と共に移動する人に、例えば、位置情報又は危険情報などを提示して案内することができる。
なお、受信端末20は、杖310に限らず、老人300が着用する衣服(例えば、帽子、ヘルメット、上着など)、又は、老人300が乗る車椅子などに設けてもよい。このとき、老人300の上方から照射される照明光が遮られないような位置に受信端末20が設けられることが好ましい。
(変形例)
以下では、本実施の形態に係る位置推定システム1の変形例について、図15を用いて説明する。図15は、本変形例に係る位置推定システム1の動作を示すフローチャートである。
上記の実施の形態では、受信端末20が撮影部24を備える構成について説明したが、受信端末20は、撮影部24を備えなくてもよい。上記の実施の形態では、撮影画像に基づいて照明装置10の位置を推定し、推定した方向に受光方向を向けていたが、本変形例では、撮影部24を備えないので、撮影画像に基づいた照明装置10の位置を推定することができない。したがって、本変形例では、受光方向をスキャンして様々な方向に向けることで、照明装置10からの照明光を受光する。
まず、図15に示すように、制御部23は、駆動部22を制御して受光方向をスキャンする(S112)。例えば、制御部23は、パン角φを固定にし、チルト角θを変更する。照明装置10が見つからなければ(S16でNo)、すなわち、照明光を受光しなければ、パン角φを所定の角度(例えば、5度)ずらして、チルト角θを変更する。このように、照明装置10からの照明光を受光するまで、パン角φとチルト角θとを変更する。
照明装置10が見つかった場合(S16でYes)、以降の処理(S20〜S38)は、図12に示す処理と同じである。
なお、図15に示す例では、端末位置情報の送信(S34)及び環境情報の取得(S36)を行なっていない。また、照明装置10が見つからない場合に、サーバ装置30への問い合わせ(S40)から絶対位置の算出(S44)までの処理も行なっていない。これらの処理は必須ではないので、実行してもしなくてもいずれでもよい。
以上のように、撮影部24を備えない場合は、照明装置10を見つけるまでに時間を要するものの、実施の形態と同様に、受信端末20の位置を算出し、所定の制御に利用することができる。
(その他)
以上、本発明に係る位置推定システム及び受信端末について、上記実施の形態及びその変形例に基づいて説明したが、本発明は、上記の実施の形態に限定されるものではない。
例えば、位置推定システム1は、1つのみの照明装置10を備えていてもよい。この場合、受信端末20は、照明装置10から所定距離の位置にあることは分かる。具体的には、受信端末20は、照明装置10を中心として、半径が所定距離の円周上に位置している。このように、1つのみの照明装置10の場合であっても、受信端末20のおおよその位置を推定することができる。
このとき、例えば、受信端末20が所定の直線上を移動するなど、受信端末20の移動経路が限定されている場合には、当該移動経路と、上記円周との交点に位置していることが分かる。したがって、1つのみの照明装置10の場合であっても、より精度良く受信端末20の位置を推定することができる。
また、例えば、撮影部24は、1以上の照明装置10を分けて撮影してもよい。例えば、撮影部24は、天頂より前方部分と天頂より後方部分とを交互に撮影してもよい。これにより取得された2枚の撮影画像から照明装置10の位置を推定してもよい。
また、例えば、受信端末20は、複数の受光部を備え、それぞれの受光方向を独立して変更してもよい。これにより、複数の照明装置10から同時に複数の照明光を受光することができる。したがって、三角測量によって受信端末20の位置を算出する際に、受信端末20の移動量を考慮に入れずに済むので、算出に要する処理量を削減することができる。
また、例えば、ロボット2が、同じ経路を繰り返し移動する搬送車(搬送ロボット)である場合、受信端末20を照明装置10の保守点検に利用することもできる。例えば、受信端末20は、同じ経路を繰り返し移動するので、照明装置10からの照明光、及び、可視光IDを繰り返し受信する。
したがって、受信端末20は、例えば、受光した照明光の強度を定期的にサーバ装置30に送信することで、サーバ装置30は、照明光の強度の経時変化を管理することができる。これにより、サーバ装置30は、例えば、照明光の強度の低下などを検出することができ、照明装置10の保守点検に利用することができる。
その他、各実施の形態に対して当業者が思いつく各種変形を施して得られる形態や、本発明の趣旨を逸脱しない範囲で各実施の形態における構成要素及び機能を任意に組み合わせることで実現される形態も本発明に含まれる。