(実施の形態1)
以下、本開示の実施の形態に係る制御システムについて、図面を参照しながら説明する。本実施の形態に係る制御システムは、機器の設置場所に機器とともに設置され、前記機器の利用者の撮像画像を示す画像情報を生成し、生成した画像情報とともに設置場所を識別する第1識別情報を送出する撮像装置と、第1識別情報を含むビーコンフレームを設置場所へ送信するビーコン送信部と、ビーコンフレームを取得すると、ビーコンフレームに含まれる第1識別情報を抽出し、抽出した第1識別情報と自装置を識別する第2識別情報とを送出する端末装置と、を備える。また、制御システムは、前述の第1識別情報と、第1識別情報とともに送出された前記第2識別情報と、の組合せに基づいて、機器の設置場所に存在する利用者を特定する利用者特定部と、前述の画像情報と、画像情報とともに送出された第1識別情報と、の組合せに基づいて、設置場所に存在する利用者を推定する利用者推定部と、を備える。更に、制御システムは、第1識別情報と第2識別情報との組合せに基づいて特定された利用者に対応する機器の設定を示す機器設定情報を優先的に選択し、選択した機器設定情報に基づいて、機器を制御する機器制御部を備える。
本実施の形態に係る制御システムは、図1に示すように、建物H内の複数の部屋R1、R2、R3それぞれに設置された機器4A、4B、4Cを制御するクラウドサーバ1と、センサユニット2A、2B、2Cと、環境センサ3A、3B、3Cと、利用者P1、P2、P3それぞれが所持する端末装置5A、5B、5Cと、を備える。ここで、機器4は、建物H内に設けられた局所ネットワークNW2に接続されている。この局所ネットワークNW2は、無線LAN(Local Area Network)または有線LANで構成され、ゲートウェイ装置6も接続されており、ブロードバンドルータ(以下、「BBR」と称する。)8を介してインターネットのような広域ネットワークNW1に接続されている。なお、局所ネットワークNW2の一部が、例えばBluetooth、ZigBee、Wi-SUN等の無線規格に適合した通信方式で通信するものであってもよい。また、ゲートウェイ装置6が無く、機器4A、4B、4CがBBR8を介して直接クラウドサーバ1と通信するものであってもよい。端末装置5は、局所ネットワークNW2に接続されるとともに広域ネットワークNW1にも接続されている。また、広域ネットワークNW1には、気象情報を管理する気象サーバ9が接続されている。センサユニット2は、機器4A、4B、4Cが設置された部屋R1、R2、R3それぞれに機器4A、4B、4Cとともに設置されている。また、環境センサ3A、3B、3Cも各部屋R1、R2、R3に設置されている。なお、部屋R1、R2、R3、センサユニット2A、2B、2C、環境センサ3A、3B、3C、機器4A、4B、4C、端末装置5A、5B、5Cは、それぞれ、3つに限定されるものではない。また、利用者P1、P2、P3も3人に限定されるものではない。また、部屋Rがある程度の広さがある場合、部屋R内を複数のエリアに分けて、複数のエリアそれぞれに各別にセンサユニット2、環境センサ3を設置してもよい。或いは、複数の機器4A、4B、4Cをグループ化してもよい。
機器4(4A、4B、4C)は、例えばいわゆる家庭用ルームエアコンのような空気調和機、床暖房機器、照明器具、電動カーテン等であり、それぞれ、局所ネットワークNW2に接続するための通信アダプタを有する。各機器4は、クラウドサーバ1から送信された制御情報を、ゲートウェイ装置6を介して取得すると、取得した制御情報に基づいて動作する。また、各機器4は、機器4の設定が利用者により変更されると、その変更後の機器設定を示す変更後機器設定情報を含む設定変更通知情報を生成して、ゲートウェイ装置6を介してクラウドサーバ1へ送信する。ゲートウェイ装置6は、クラウドサーバ1から送信される制御情報を取得すると、取得した制御情報を、その制御情報による制御対象となる機器4へ送信する。また、ゲートウェイ装置6は、各機器4から送信される前述の設定変更通知情報を取得すると、取得した設定変更通知情報をクラウドサーバ1へ送信する。
環境センサ3(3A、3B、3C)は、自機が設置された部屋R(R1、R2、R3)内の温度のような環境パラメータを検出する。なお、環境センサ3は、自機が設置された部屋Rの温度のみならず、湿度、明るさ等の他の環境パラメータを検出するものであってもよい。環境センサ3は、クラウドサーバ1から環境パラメータを示す環境情報の送信を要求する環境情報要求情報を取得すると、これに応じて、環境パラメータを検出し、検出した環境パラメータを示す環境情報を生成する。また、環境センサ3は、自機が設置されている部屋Rと同じ部屋Rに設置されたセンサユニット2を識別するユニット識別情報を記憶している。そして、環境センサ3は、検出した環境パラメータを示す環境情報を、自機が記憶しているセンサユニット2のユニット識別情報とともにクラウドサーバ1へ送信する。
気象サーバ9は、地球上における予め設定された複数の地域それぞれにおける気象条件を示す気象情報を管理する。気象サーバ9は、クラウドサーバ1から気象情報の送信を要求する気象情報要求情報を取得すると、これに応じて、気象情報要求情報に対応する地域の気象情報を特定する。ここで、気象情報要求情報には、例えば建物Hが存在する地域の住所を示す住所情報が含まれており、気象サーバ9は、この住所情報が示す地域の気象情報を特定する。そして、気象サーバ9は、特定した気象情報をクラウドサーバ1へ送信する。
センサユニット2は、図2に示すように、無線モジュール202と、赤外線センサ203と、センサユニット2の動作を制御する制御部201と、を有する。無線モジュール202は、例えばIEEE802.11ahに準拠した無線LAN規格に適合する通信方式で通信するものであり、アンテナ(図示せず)と、信号処理部(図示せず)と、送信回路(図示せず)と、を有する。ここで、信号処理部は、例えばDSP(Digital Signal Processor)により実現され、制御部201から転送されてきたビーコンフレームに基づいてベースバンド信号を生成して送信回路へ出力する。また、送信回路は、信号処理部から入力されるベースバンド信号を用いてキャリア信号を変調することにより、送信するビーコンフレームに対応する無線信号を生成し、生成した無線信号を、アンテナを介して送出する。赤外線センサ203は、入射する赤外線を検出し、検出した信号を制御部201へ入力する。
制御部201は、例えばセンサユニット2専用の集積回路から構成され、図3に示すように、ビーコンフレームを生成するビーコン生成部211と、生成されたビーコンフレームを、無線モジュール202を介してブロードキャスト送信するビーコン送信部212と、を有する。ここで、ビーコンフレームには、センサユニット2を識別するユニット識別情報が含まれる。このユニット識別情報は、センサユニット2が設置された設置場所である部屋R(R1、R2、R3)を識別する識別情報に相当するものであり、センサユニット2に予め付与されたBSSID(Basic Service Set Identifier)、MAC(Media Access Control)アドレス等が含まれる。また、制御部201は、赤外線センサ203から入力される信号に基づいて熱画像を形成する画像形成部213と、形成された熱画像を示す画像情報をユニット識別情報とともにクラウドサーバ1へ送信する画像送信部214と、を有する。画像形成部213は、クラウドサーバ1から送信される撮像指示情報を取得すると、赤外線センサ203から入力される信号に基づいて熱画像を形成する。ここで、画像送信部214は、画像情報およびユニット識別情報を、ゲートウェイ装置6を介してクラウドサーバ1へ送信する。このように、センサユニット2は、機器4の利用者の熱画像のような撮像画像を示す画像情報を生成し、生成した画像情報とともにユニット識別情報を送出する撮像装置として機能する。
端末装置5は、例えばスマートフォンであり、図2に示すように、CPU(Central Processing Unit)501と、主記憶部502と、補助記憶部503と、通信部506と、無線モジュール507と、これらを互いに接続するバス509と、を備える。主記憶部502は、RAM(Random Access Memory)のような揮発性メモリを有し、CPU501の作業領域として使用される。補助記憶部503は、半導体フラッシュメモリのような不揮発性メモリであり、CPU501が各種処理を実行するためのプログラムを記憶する。通信部506は、広域ネットワークNW1に接続され、CPU501から転送される情報を、広域ネットワークNW1を介してクラウドサーバ1へ送信したり、クラウドサーバ1から広域ネットワークNW1を介して受信した情報をCPU501へ転送したりする。無線モジュール507は、例えばIEEE802.11ahに準拠した無線LAN規格に適合する通信方式で通信するものであり、アンテナ(図示せず)と、受信回路(図示せず)と、信号処理部(図示せず)と、を有する。受信回路は、アンテナを介して無線信号を受信し、受信した無線信号に対応する信号を復調してベースバンド信号を生成して信号処理部へ出力する。信号処理部は、例えばDSPにより実現され、受信回路から入力されるベースバンド信号に基づいて受信回路が受信したセンサユニット2から送信される無線信号に対応するビーコンフレームを生成してCPU501へ転送する。
CPU501は、補助記憶部503が記憶するプログラムを主記憶部502に読み出して実行することにより、図3に示すように、ビーコン取得部511、識別情報抽出部512および識別情報通知部513として機能する。ビーコン取得部511は、センサユニット2から送信されるビーコンフレームが無線モジュール507において受信が検知されるまでビーコンフレームを探索する。そして、ビーコン取得部511は、ビーコンフレームの受信が検知されると、無線モジュール507から入力されるビーコンフレームを識別情報抽出部512へ転送する。また、ビーコン取得部511は、クラウドサーバ1から送信されるビーコン探索指示情報を取得すると、再びビーコンフレームの探索を開始する。
識別情報抽出部512は、ビーコンフレームに含まれるユニット識別情報を抽出し、抽出したユニット識別情報を識別情報通知部513に通知する。識別情報通知部513は、抽出されたユニット識別情報と端末装置5を所持する機器4の利用者を識別する利用者識別情報とを、通信部506を介してクラウドサーバ1へ送信する。ここで、利用者識別情報としては、端末装置5に付与されたMACアドレスを採用することができる。
クラウドサーバ1は、機器4を制御する制御装置として機能するものであり、図2に示すように、CPU101と、主記憶部102と、補助記憶部103と、通信部106と、計時部108と、各部を接続するバス109と、を備える。CPU101は、例えばマルチコアプロセッサである。主記憶部102は、揮発性メモリであり、CPU101の作業領域として使用される。補助記憶部103は、不揮発性メモリを有し、ROM、ストレージとして機能し、クラウドサーバ1の各種機能を実現するためのプログラムを記憶する。通信部106は、広域ネットワークNW1を介して機器4と通信したり、広域ネットワークNW1を介して端末装置5と通信したりする。計時部108は、例えばRTC(Real Time Clock)を有する。或いは、計時部108が、クラウドサーバ1からアクセス可能なNTP(Network Time Protocol)サーバ(例えばntp.nict.jp)と通信して計時した時刻を修正するものであってもよい。
CPU101は、補助記憶部103が記憶するプログラムを主記憶部102に読み出して実行することにより、図4に示すように、識別情報取得部111、利用者特定部112、画像取得部113、人物画像抽出部114、利用者推定部115、利用者推定モデル生成部116、環境情報取得部117、気象情報取得部118、機器設定推定部119、機器設定補正部120、機器制御部121、設定変更通知取得部122、機器設定推定モデル生成部123および確認時期管理部124として機能する。また、図2に示す補助記憶部103は、図4に示すように、機器設置場所記憶部131と、利用者推定モデル記憶部132と、在室状況記憶部133と、環境情報記憶部134と、気象情報記憶部135と、機器設定推定モデル記憶部136と、機器設定記憶部137と、を有する。機器設置場所記憶部131は、例えば図5Aに示すように、建物H内の部屋R1、R2、R3それぞれに設置された機器4の機器識別情報を、設置された部屋R1、R2、R3に機器4とともに設置されたセンサユニット2のユニット識別情報に対応づけて記憶する。図5Aに示す例では、リビングである部屋R1に空気調和機、照明器具、床暖房機器が設置されており、それらの機器4の機器識別情報が、部屋R1の識別情報となる部屋R1に設置されたセンサユニット2のユニット識別情報BSSID[0]に対応づけられていることを示している。
図4に戻って、利用者推定モデル記憶部132は、センサユニット2から送信される画像情報から利用者を推定するための利用者推定モデルを示す利用者推定モデル情報を記憶する。利用者推定モデルは、例えば畳み込みニューラルネットワーク(Convolutional Neural Network)であって、図5Bに示すように、入力層L110と、畳み込み層L121と、プーリング層L122と、全結合層L123と、出力層L130と、を含み、畳み込み層L121とプーリング層L122とが繰り返す構造を有する。畳み込み層L121、プーリング層L122および全結合層L123は、それぞれ複数のノードから構成されている。入力層L110は、人物画像抽出部114により抽出された熱画像を構成する画素の画素数に等しい数のノードを有し、出力層L130は、部屋Rに存在する利用者P1、P2、P3の組合せの数と同数のノードを有する。即ち、出力層L130は、部屋Rに利用者P1、P2、P3のいずれか1人が存在する場合、部屋Rの利用者P1、P2、P3のうちのいずれか2人が存在する場合、利用者P1、P2、P3全てが部屋Rに存在する場合それぞれに対応するノードを有する。この場合、利用者推定モデル記憶部132は、畳み込み層L121、プーリング層L122の数、隠れ層全体における各畳み込み層L121、プーリング層L122の位置、畳み込み層L121において使用する複数の畳み込みフィルタの数、各畳み込みフィルタのサイズおよび重み係数を示す情報を記憶する。ここで、入力層L110は、人物画像を構成する複数の画素それぞれに対応する入力ノードを有し、各ノードには各画素の画素値が入力される。畳み込み層L121の各ノードの複数の畳み込みフィルタそれぞれに対応する出力z[i,j,l,m]は、下記式(1)の関係式で表される。
ここで、(i,j)は、畳み込み層L121から出力されるマップにおける各画素の座標に相当し、lは、畳み込み層L121の位置を示す。また、mは、畳み込みフィルタの識別番号を示し、h[p,q,m]は、識別番号mの畳み込みフィルタの重み係数を示す。更に、b[i,j,m]は、複数のフィルタそれぞれにおける各画素値に加わるバイアス値を示す。Hは、畳み込みフィルタの縦横の長さを示し、フィルタサイズがH画素×H画素であることを示す。式(1)は、lに位置する畳み込み層が、l-1に位置する層から入力されるマップの各画素値がz[i,j,l-1]の場合に出力するマップの各画素値を表している。f(*)は、活性化関数を示す。活性化関数としては、ロジスティック関数、シグモイド関数、正規化線形関数等が用いられる。
プーリング層L122は、畳み込み層L121から出力されるマップについて予め設定されたサイズの正方領域それぞれにおける最大値または平均値を算出し、算出した最大値または平均値を画素値とすることにより、畳み込み層L121から出力されるマップよりもサイズの小さいマップを出力する。全結合層L123は、マップを構成する複数の画素を利用者の数と同数のノードそれぞれに対応する値を出力する。出力層L130は、例えばソフトマックス関数を用いた処理を実行することにより、全結合層L123に属するノードからの出力に基づいて、人物画像抽出部114により抽出された熱画像に対応する人物が各利用者P1、P2、P2であることの確率を要素とする確率ベクトルを出力する。そして、利用者推定部115は、確率の最も高い要素に対応する利用者P1、P2、P2を、熱画像が示す利用者P1、P2、P2と推定する。
在室状況記憶部133は、例えば図6Aに示すように、各部屋R1、R2、R3に存在する利用者P1、P2、P3それぞれを識別する利用者識別情報を、各部屋R1、R2、R3に設置されたセンサユニット2A、2B、2Cそれぞれのユニット識別情報と、各部屋R1、R2、R3に設置された機器4の機器識別情報とに対応づけて記憶する。図6Aに示す例では、利用者P1、P2、P3に利用者識別情報IDU1、IDU2、IDU3が付与されており、それぞれ、部屋R1(リビング)、部屋R2(ダイニング)、部屋R3(寝室)に居ることを表している。利用者識別情報としては、例えば前述の端末識別情報を採用することができる。
環境情報記憶部134は、部屋R1、R2、R3それぞれに設置された環境センサ3により検出された環境パラメータを示す環境情報を、ユニット識別情報に対応づけて記憶する。気象情報記憶部135は、気象サーバ9から送信された気象情報を記憶する。
機器設定推定モデル記憶部136は、環境情報と、気象情報と、利用者識別情報と、から機器4の設定を推定するための機器設定推定モデルを示す機器設定推定モデル情報を記憶する。機器設定推定モデルは、例えば順伝播型のニューラルネットワークである。この場合、機器設定推定モデル記憶部136は、機器設定推定モデルのノード数、層数、各ノードに対応する重み係数および活性化関数それぞれを示す情報を記憶する。この機器設定推定モデルは、図6Bに示すように入力層L210、隠れ層L220および出力層L230を有する。入力層L210には、環境情報と、気象情報と、利用者識別情報と、が入力される。
隠れ層L220は、予め設定された数M[j]のノードx[j,i](1≦i≦M[j]、M[j]は正の整数)を含むN(Nは正の整数)個の層から構成されている。即ち、隠れ層L220は、各ノード列同士が繋がれた構造を有する。ここで、各ノードx[j,i]の出力y[j,i]は、下記式(2)の関係式で表される。
ここで、W[j,i,k]は、重み係数を示し、f(*)は、活性化関数を示す。活性化関数としては、ロジスティック関数、シグモイド関数、正規化線形関数等が用いられる。隠れ層L220は、ノードに入力される情報が前の層の各ノードの出力それぞれに重み係数を乗じたものの総和となっている。そして、総和を引数とする活性化関数の出力が次の層へ伝達される。出力層L230は、例えばソフトマックス関数を用いた処理を実行し、隠れ層L220の最終層からの出力y[j,i]に基づいて、機器4それぞれについて、複数種類の設定それぞれを利用者P1、P2、P3が採用する確率を要素とする確率ベクトルを出力する。そして、機器設定推定部119は、確率の最も高い要素に対応する機器4の設定を、利用者P1、P2、P3が好む機器4の設定と推定する。
機器設定記憶部137は、機器設定推定部119により推定された機器4の設定を示す機器設定情報を、対応する機器4の機器識別情報に対応づけて記憶する。
図4に戻って、識別情報取得部111は、端末装置5から送信されるユニット識別情報および利用者識別情報を取得し、取得したユニット識別情報および利用者識別情報を利用者特定部112に通知する。また、識別情報取得部111は、確認時期管理部124から在室状況確認時期が到来したことを通知されると、センサユニット2に対してビーコンフレームの探索を指示するビーコン探索指示情報をセンサユニット2へ送信することにより、センサユニット2から送信されるユニット識別情報を取得する。
利用者特定部112は、ユニット識別情報と、ユニット識別情報とともに送出された利用者識別情報と、の組合せに基づいて、機器4が設置された部屋R1、R2、R3に存在する利用者を特定する。利用者特定部112は、例えば部屋R1に設置されたセンサユニット2Aのユニット識別情報とともに利用者P1の利用者識別情報とが識別情報取得部111から通知されると、センサユニット2Aが設置された部屋R1に存在する利用者を、通知された利用者識別情報で識別される利用者P1と特定する。そして、利用者特定部112は、ユニット識別情報と、特定した利用者を識別する利用者識別情報と、を互いに対応づけて、在室状況記憶部133に記憶させる。また、利用者特定部112は、ユニット識別情報と、特定した利用者を識別する利用者識別情報と、を利用者推定モデル生成部116に通知する。
画像取得部113は、センサユニット2から送信される画像情報とユニット識別情報とを取得し、取得した画像情報を人物画像抽出部114に通知するとともに、ユニット識別情報を利用者推定部115に通知する。
人物画像抽出部114は、画像取得部113から通知される画像情報が示す熱画像から利用者P1、P2、P3の熱画像を抽出する。人物画像抽出部114は、例えば予め部屋R1、R2、R3に利用者P1、P2、P3が不在の状態でセンサユニット2から送信された画像情報が示す熱画像をリファレンス画像として保持している。そして、人物画像抽出部114は、部屋R1、R2、R3に利用者P1、P2、P3が存在する場合の画像情報が画像取得部113から通知されると、通知された画像情報が示す熱画像のうち、リファレンス画像との温度差が予め設定された差分温度閾値以上の領域を利用者P1、P2、P2の画像として抽出する。人物画像抽出部114が抽出した画像は、利用者P1、P2、P3の身長、頭の大きさ、腕、足の長さ等の体格上の特徴が反映されたものとなる。また、人物画像抽出部114は、抽出した画像から、更に領域内における温度が人間の体温に近い35℃以上38℃以下の部分を更に抽出するものであってもよい。人物画像抽出部114は、抽出した利用者P1、P2、P3の熱画像を示す抽出画像情報を利用者推定部115に通知する。また、人物画像抽出部114は、熱画像から利用者P1、P2、P3を含む人物の熱画像を抽出できなかった場合、抽出画像情報の利用者推定部115への通知を行わない。
利用者推定部115は、人物画像抽出部114から通知される抽出画像情報と、センサユニット2から前述の画像情報とともに送出されたユニット識別情報と、の組合せに基づいて、センサユニット2が設置された部屋R1、R2、R3に存在する利用者P1、P2、P3を推定する。利用者推定部115は、利用者推定モデル記憶部132が記憶する利用者推定モデル情報が示す利用者推定モデルを用いて、抽出画像情報が示す熱画像から、利用者P1、P2、P3を推定する。利用者推定部115は、推定した利用者を識別する利用者識別情報を、画像取得部113から通知されるユニット識別情報に対応づけて在室状況記憶部133に記憶させる。ここで、利用者推定部115は、利用者特定部112により利用者識別情報が在室状況記憶部133に記憶される場合、在室状況記憶部133への利用者識別情報の記憶を回避する。即ち、在室状況記憶部133には、利用者特定部112により特定されたユニット識別情報と利用者識別情報との組合せが優先的に記憶される。また、利用者推定部115は、画像取得部113が取得した画像情報と当該画像情報とともに送出されたユニット識別情報との組合せに基づいて、利用者の部屋R1、R2、R3における存否を推定する。具体的には、利用者推定部115は、人物画像抽出部114から部屋R1、R2、R3に対応する抽出画像情報が通知されない場合、部屋R1、R2、R3には少なくとも利用者P1、P2、P3が存在しないと推定し、利用者P1、P2、P3が不在であることを示すNULL値情報を、ユニット識別情報に対応づけて在室状況記憶部133に記憶させる。
利用者推定モデル生成部116は、利用者特定部112により特定される利用者を識別する利用者識別情報と、センサユニット2から送信された画像情報と、を用いて、前述の利用者推定モデルを生成する。利用者推定モデル生成部116は、利用者特定部112により特定された利用者と利用者推定部115により推定された利用者とが異なると判定される毎に、利用者特定部112により特定された利用者を識別する利用者識別情報と人物画像抽出部114により抽出された熱画像を示す抽出画像情報とを用いて、利用者推定モデルを示す利用者推定モデル情報を生成する。具体的には、利用者推定モデル生成部116は、まず、利用者推定モデル記憶部132が記憶する利用者推定モデル情報が示す利用者推定モデルを用いて、抽出画像情報が示す熱画像から、人物画像抽出部114により抽出された熱画像が示す人物が利用者P1、P2、P2であることの確率を要素とする確率ベクトルを算出する。次に、利用者推定モデル生成部116は、利用者特定部112により特定された利用者(例えば利用者P1)の確率が他の利用者(例えば利用者P2、P3)の確率に比べて高くなるように要素を設定した教師ベクトルを生成する。例えば、利用者推定モデル生成部116は、利用者特定部112により特定された利用者P1の確率を0よりも大きい数に設定し、他の利用者の確率を0に設定した教師ベクトルを生成する。そして、利用者推定モデル生成部116は、利用者推定モデル記憶部132が記憶する利用者推定モデル情報が示す利用者推定モデルを用いて算出した確率ベクトルの各要素と、前述の教師ベクトルの各要素との誤差を算出する。そして、利用者推定モデル生成部116は、算出された誤差に基づく誤差逆伝播法(バックプロパゲーション)により利用者推定モデルの畳み込み層L121で用いる複数のフィルタそれぞれの重み係数および全結合層L123における重み係数を決定し、決定した重み係数を示す情報を含む利用者推定モデル情報で利用者推定モデル記憶部132が記憶する利用者推定モデル情報を更新する。
環境情報取得部117は、環境センサ3に対して前述の環境情報の送信を要求する環境情報要求情報を環境センサ3へ送信することにより、環境センサ3から送信される環境情報と環境センサ3と同じ部屋R1、R2、R3に設置されたセンサユニット2を識別するユニット識別情報と、を取得する。そして、環境情報取得部117は、取得した環境情報とユニット識別情報とを、互いに対応づけて環境情報記憶部134に記憶させる。気象情報取得部118は、気象サーバ9に対して建物Hが存在する地域の気象条件を示す気象情報の送信を要求する気象情報要求情報を生成する。そして、気象情報取得部118は、生成した気象情報要求情報を気象サーバ9へ送信することにより、気象サーバ9から送信される気象情報を取得する。そして、気象情報取得部118は、取得した気象情報を気象情報記憶部135に記憶させる。
機器設定推定部119は、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する部屋R1、R2、R3に存在する利用者P1、P2、P3を識別する利用者識別情報と、に基づいて、部屋R1、R2、R3に設置された機器4の設定を推定する。機器設定推定部119は、機器設置場所記憶部131が記憶する機器識別情報の中から利用者P1、P2、P3が存在する部屋R1、R2、R3に設置されたセンサユニット2のユニット識別情報に対応づけられた機器識別情報を特定する。そして、機器設定推定部119は、機器設定推定モデル記憶部136が記憶する機器設定推定モデル情報が示す機器設定推定モデルを用いて、前述の環境パラメータ、気象情報および利用者識別情報から、特定した機器識別情報で識別される機器4それぞれの設定を推定する。機器設定推定部119は、推定した機器4それぞれの設定を示す機器設定情報を、対応する部屋R1、R2、R3に設置されたセンサユニット2を識別するユニット識別情報に対応づけて機器設定記憶部137に記憶させる。ここで、利用者特定部112、或いは、利用者推定部115により1つの部屋R(R1、R2、R3)に複数の利用者P(例えば利用者P1、P2、P3)が存在すると特定または推定されたとする。このとき、在室状況記憶部133は、1つの部屋R(R1、R2、R3)に存在する複数の利用者(例えば利用者P1、P2、P3)それぞれの利用者識別情報を、1つの部屋R(R1、R2、R3)に設置されたセンサユニット2のユニット識別情報に対応づけて記憶している。この場合、機器設定推定部119は、複数の利用者(例えば利用者P1、P2、P3)それぞれに対応するその部屋R(R1、R2、R3)の機器4(4A、4B、4C)の設定を推定する。従って、機器設定推定部119は、例えば部屋R1に3人の利用者P1、P2、P3が存在する場合、3人の利用者P1、P2、P3それぞれに対応する3種類の機器4の設定を推定する。
機器設定補正部120は、部屋R1、R2、R3に複数の利用者P1、P2、P3が存在する場合、機器設定記憶部137が記憶する機器設定情報のうち、環境パラメータに関する機器4の設定値を示す機器設定情報について、複数の利用者P1、P2、P3それぞれに対応する機器設定情報が示す機器4の設定値の代表値を算出する。ここで、環境パラメータに関する機器4の設定値としては、空気調和機の設定温度および風量、照明器具の照度等が挙げられる。一方、環境パラメータに関連しない設定値としては、電動カーテンの開閉動作のタイミング、空気調和機、照明装置の動作開始、停止のタイミング等が挙げられる。また、代表値としては、複数の利用者P1、P2、P3それぞれに対応する機器設定情報が示す機器4の設定値の平均値、中間値、最大値、最小値等を採用することができる。そして、機器設定補正部120は、算出した代表値を用いて、機器設定記憶部137が記憶する、複数の利用者P1、P2、P3が存在する部屋R(R1、R2、R3)に設置された機器4の設定値を補正する。具体的には、機器設定補正部120は、部屋R(R1、R2、R3)に存在する複数の利用者についての環境パラメータに関する機器4の設定値が互いに異なる場合、その部屋Rに設置された機器4の設定値を算出した代表値に決定する。また、機器設定補正部120は、電動カーテンの開閉動作のタイミング、空気調和機、照明装置の動作開始、停止のタイミング等の設定については、複数の利用者P1、P2、P3の設定をそのまま残す。
機器制御部121は、利用者特定部112により特定された利用者P1、P2、P3に対応する機器4の設定を示す機器設定情報を優先的に選択し、選択した機器設定情報に基づいて、機器4を制御する。機器制御部121は、機器設定記憶部137が記憶する機器設定情報に基づいて、機器4の動作を制御するための制御情報を生成して機器4へ送信する。また、機器制御部121は、在室状況記憶部133が記憶する部屋R(R1、R2、R3)のユニット識別情報に対応する利用者識別情報に基づいて、利用者推定部115により利用者P1、P2、P3が部屋R(R1、R2、R3)に不在と推定されている場合、当該部屋R(R1、R2、R3)に設置された機器4を停止させるための制御情報を生成して当該機器4へ送信する。なお、機器4が電動カーテン、空気調和機、照明器具であり、それらの機器4が設置された部屋Rに複数の利用者P1、P2、P3が存在する場合、機器制御部121は、各利用者P1、P2、P3それぞれに対応する機器4の設定に基づいて、電動カーテンを開動作させるための制御情報、空気調和機、照明器具を動作開始させるための制御情報を連続して機器4へ送信する場合がある。この場合、機器4が電動カーテンであれば、機器4は、先にクラウドサーバ1から取得した制御情報に基づいて開動作を実行した後に更に機器4に開動作させるための制御情報を取得したとき、そのまま開状態を維持する。また、機器4が空気調和機または照明器具であれば、機器4は、先にクラウドサーバ1から取得した制御情報に基づいて動作開始した後に更に機器4を動作開始させるための制御情報を取得したとき、そのまま動作を継続する。即ち、機器4は、同じ制御情報を重複して連続取得した場合、後に取得した制御情報は無視して動作を継続する。
設定変更通知取得部122は、機器4から送信される設定変更通知情報を取得すると、取得した設定変更通知情報に含まれる変更後の機器4の設定を示す変更後機器設定情報を抽出し、抽出した変更後機器設定情報を機器設定推定モデル生成部123に通知する。
機器設定推定モデル生成部123は、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する各部屋R1、R2、R3に存在する利用者の利用者識別情報と、設定変更通知取得部122から通知される変更後機器設定情報と、を用いて、前述の機器設定推定モデルを生成する。機器設定推定モデル生成部123は、設定変更通知取得部122から変更後機器設定情報が通知される毎に、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する利用者識別情報と、通知された変更後機器設定情報と、を用いて、機器設定推定モデルを示す機器設定推定モデル情報を生成する。具体的には、機器設定推定モデル生成部123は、まず、機器設定推定モデル記憶部136が記憶する機器設定モデル情報が示す機器設定推定モデルを用いて、前述の環境パラメータ、気象情報および利用者識別情報から、機器4の複数種類の設定それぞれについて利用者P1、P2、P2が採用する確率を要素とする確率ベクトルを算出する。次に、機器設定推定モデル生成部123は、通知された変更後機器設定情報が示す機器4の設定の確率が他の機器4の設定の確率に比べて高くなるように要素を設定した教師ベクトルを生成する。例えば、機器設定推定モデル生成部123は、変更後機器設定情報が示す機器4の設定の採用の確率を0よりも大きい数に設定し、他の機器4の設定の採用の確率を0に設定した教師ベクトルを生成する。そして、機器設定推定モデル生成部123は、機器設定推定モデル記憶部136が記憶する機器設定推定モデル情報が示す機器設定推定モデルを用いて算出した確率ベクトルの各要素と、前述の教師ベクトルの各要素との誤差を算出する。そして、機器設定推定モデル生成部123は、算出された誤差に基づく誤差逆伝播法(バックプロパゲーション)により機器設定推定モデルを構成する重み係数を決定し、決定した重み係数を示す情報を含む機器設定推定モデル情報で機器設定推定モデル記憶部136が記憶する機器設定推定モデル情報を更新する。
確認時期管理部124は、予め設定された部屋R1、R2、R3それぞれにおける利用者P1、P2、P3の在室状況を確認する在室状況確認時期を管理しており、在室状況確認時期が到来する毎に、在室状況確認時期が到来したことを識別情報取得部111および画像取得部113に通知する。
次に、本実施の形態に係る制御システムの動作について図7から図11を参照しながら説明する。まず、図7に示すように、利用者が部屋R1、R2、R3に入室した状態で、センサユニット2が前述のビーコンフレームを生成し(ステップS1)、生成されたビーコンフレームが、センサユニット2から端末装置5へ送信されたとする(ステップS2)。この場合、端末装置5は、取得したビーコンフレームに含まれるセンサユニット2のユニット識別情報を抽出する(ステップS3)。次に、抽出されたユニット識別情報と端末装置5を所持する利用者を識別する利用者識別情報とが、端末装置5からクラウドサーバ1へ送信される(ステップS4)。一方、クラウドサーバ1は、ユニット識別情報と利用者識別情報とを取得すると、取得したユニット識別情報と利用者識別情報との組合せに基づいて、機器4が設置された部屋R1、R2、R3に存在する利用者を特定する。そして、クラウドサーバ1は、取得したユニット識別情報と特定した利用者の利用者識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS5)。
続いて、前述の撮像指示情報が、クラウドサーバ1からセンサユニット2へ送信される(ステップS6)。一方、センサユニット2は、撮像指示情報を取得すると、センサユニット2が設置された部屋R1、R2、R3内を撮像して得られる熱画像を示す画像情報を生成する(ステップS7)。その後、生成された画像情報とセンサユニット2のユニット識別情報とが、センサユニット2からクラウドサーバ1へ送信される(ステップS8)。一方、クラウドサーバ1は、画像情報およびユニット識別情報を取得すると、取得した画像情報が示す部屋R1、R2、R3の熱画像の中から利用者P1、P2、P3の熱画像を抽出する熱画像抽出処理を実行する(ステップS9)。ここで、画像情報が示す熱画像は、例えば図8に示すような熱画像G1であり、クラウドサーバ1は、熱画像G1から利用者P1、P2、P3に対応する領域の熱画像G11を抽出する。図7に戻って、次に、クラウドサーバ1は、抽出した熱画像と、センサユニット2から画像情報とともに取得したユニット識別情報と、の組合せに基づいて、センサユニット2が設置された部屋R1、R2、R3に存在する利用者P1、P2、P3を推定する(ステップS10)。ここで、クラウドサーバ1が、推定した利用者が、端末装置5から送信されたユニット識別情報と利用者識別情報との組合せに基づいて特定した利用者と異なると判定したとする(ステップS11)。この場合、クラウドサーバ1は、端末装置5から送信されたユニット識別情報と利用者識別情報との組合せに基づいて特定した利用者の利用者識別情報と、前述の画像情報と、を用いて、利用者推定モデル情報を生成する。そして、クラウドサーバ1は、生成した利用者推定モデル情報で、利用者推定モデル記憶部132が記憶する利用者推定モデル情報を更新する(ステップS12)。
続いて、環境センサ3に対して環境情報の送信を要求する環境情報要求情報が、クラウドサーバ1から環境センサ3へ送信される(ステップS13)。一方、環境センサ3は、環境情報要求情報を取得すると、環境センサ3が設置された部屋R1、R2、R3の環境パラメータを検出し、検出した環境パラメータを示す環境情報を生成する(ステップS14)。その後、生成された環境情報が、環境センサ3からクラウドサーバ1へ送信される(ステップS15)。ここで、クラウドサーバ1は、環境情報を取得すると、取得した環境情報を環境情報記憶部134に記憶させる。次に、図9に示すように、クラウドサーバ1が、気象サーバ9に対して気象情報の送信を要求する気象情報要求情報を生成し(ステップS16)、生成された気象情報要求情報が、クラウドサーバ1から気象サーバ9へ送信される(ステップS17)。一方、気象サーバ9は、気象情報要求情報を取得すると、取得した気象情報要求情報に含まれる住所情報に基づいて、建物Hが存在する地域の気象条件を示す気象情報を特定する(ステップS18)。続いて、特定された気象情報が、気象サーバ9からクラウドサーバ1へ送信される(ステップS19)。ここで、クラウドサーバ1は、気象情報を取得すると、取得した気象情報を気象情報記憶部135に記憶させる。
その後、クラウドサーバ1は、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する部屋R1、R2、R3に存在する利用者P1、P2、P3の利用者識別情報と、に基づいて、部屋R1、R2、R3に設置された機器4の設定を推定する(ステップS20)。そして、機器設定推定部119は、推定した機器4それぞれの設定を示す機器設定情報を、対応する部屋R1、R2、R3に設置されたセンサユニット2を識別するユニット識別情報に対応づけて機器設定記憶部137に記憶させる(ステップS21)。ここで、クラウドサーバ1は、部屋R1、R2、R3に複数の利用者P1、P2、P3が存在する場合、機器設定記憶部137が記憶する機器設定情報のうち、環境パラメータに関する機器4の設定値を示す機器設定情報について、複数の利用者P1、P2、P3それぞれに対応する機器設定情報が示す機器4の設定値の代表値を算出し、算出した代表値を用いて、機器設定記憶部137が記憶する、複数の利用者P1、P2、P3が存在する部屋R1、R2、R3に設置された機器4の設定値を補正する。次に、クラウドサーバ1が、機器設定記憶部137が記憶する機器設定情報に基づいて、機器4の動作を制御するための制御情報を生成し(ステップS22)、生成された制御情報が、クラウドサーバ1から機器4へ送信される(ステップS23)。一方、機器4は、クラウドサーバ1から送信される制御情報を取得すると、取得した制御情報に基づいて動作する(ステップS24)。
また、予め設定された在室状況確認時期が到来すると、端末装置5に対してビーコンフレームの探索を指示するビーコン探索指示情報が、クラウドサーバ1から端末装置5へ送信される(ステップS25)。ここで、利用者P1、P2、P3が端末装置5を所持していない場合、クラウドサーバ1は、端末装置5から送信されるユニット識別情報および利用者識別情報を取得できない。続いて、前述の撮像指示情報が、クラウドサーバ1からセンサユニット2へ送信される(ステップS26)。一方、センサユニット2は、撮像指示情報を取得すると、センサユニット2が設置された部屋R1、R2、R3内を撮像して得られる熱画像を示す画像情報を生成する(ステップS7)。その後、前述のステップS8からS10までの一連の処理が実行される。次に、図10に示すように、クラウドサーバ1は、取得したユニット識別情報と推定した利用者の利用者識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS27)。次に、前述のステップS13からS24までの一連の処理が実行される。
また、利用者P1、P2、P3が部屋R1、R2、R3に設置された機器4の設定を手動で変更する機器設定変更操作を行ったとする。この場合、機器4は、変更後の機器4の設定を示す変更後機器設定情報を含む設定変更通知情報を生成する(ステップS28)。続いて、図11に示すように、生成された設定変更通知情報が、機器4からクラウドサーバ1へ送信される(ステップS29)。一方、クラウドサーバ1は、設定変更通知情報を取得すると、取得した設定変更通知情報に含まれる変更後機器設定情報を抽出し、抽出した変更後機器設定情報と、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する利用者識別情報と、を用いて、機器設定推定モデル情報を生成する。そして、クラウドサーバ1は、生成した機器設定推定モデル情報で、機器設定推定モデル記憶部136が記憶する機器設定推定モデル情報を更新する(ステップS30)。
また、利用者P1、P2、P3が部屋R1、R2、R3から退出した後、前述の在室状況確認時期が到来したとする。この場合、前述のビーコン探索指示情報が、クラウドサーバ1から端末装置5へ送信される(ステップS25)。ここで、利用者P1、P2、P3が部屋R1、R2、R3に不在であるため、クラウドサーバ1は、端末装置5から送信されるユニット識別情報および利用者識別情報を取得できない。その後、前述の撮像指示情報が、クラウドサーバ1からセンサユニット2へ送信される(ステップS26)。一方、センサユニット2は、撮像指示情報を取得すると、センサユニット2が設置された部屋R1、R2、R3内を撮像して得られる熱画像を示す画像情報を生成する(ステップS7)。その後、生成された画像情報とセンサユニット2のユニット識別情報とが、センサユニット2からクラウドサーバ1へ送信される(ステップS8)。一方、クラウドサーバ1は、画像情報およびユニット識別情報を取得すると、取得した画像情報が示す熱画像から利用者P1、P2、P3の熱画像を抽出する処理を実行する(ステップS31)。ここで、部屋R1、R2、R3内に利用者が不在であるため利用者P1、P2、P3の熱画像が抽出できず、クラウドサーバ1は、利用者P1、P2、P3が不在であると判定する(ステップS32)。次に、クラウドサーバ1は、利用者P1、P2、P3が不在である部屋R1、R2、R3に設置された機器4を停止させるための制御情報を生成する(ステップS33)。続いて、生成された制御情報が、クラウドサーバ1から機器4へ送信される(ステップS34)。一方、機器4は、制御情報を取得すると、取得した制御情報に基づいて動作を停止する(ステップS35)。
次に、本実施の形態に係るクラウドサーバ1が実行する機器制御処理について図12および図13を参照しながら説明する。この機器制御処理は、例えばクラウドサーバ1において機器制御処理を実行するためのプログラムが起動されたことを契機として開始される。まず、確認時期管理部124は、予め設定された利用者P1、P2、P3の部屋R1、R2、R3での在室状況を確認する在室状況確認時期が到来したか否かを判定する(ステップS101)。ここで、確認時期管理部124は、在室状況確認時期が到来したと判定すると(ステップS101:Yes)、その旨を識別情報取得部111に通知する。そして、識別情報取得部111は、前述のビーコン探索指示情報を端末装置5へ送信する(ステップS102)。次に、後述のステップS105の処理が実行される。一方、確認時期管理部124が、未だ在室状況確認時期が到来していないと判定すると(ステップS101:No)、識別情報取得部111は、端末装置5から送信されるユニット識別情報および利用者識別情報を取得したか否かを判定する(ステップS103)。ここで、識別情報取得部111が、ユニット識別情報および利用者識別情報を取得していないと判定すると(ステップS103:No)、後述のステップS124の処理が実行される。一方、識別情報取得部111が、ユニット識別情報および利用者識別情報を取得したと判定すると(ステップS103:Yes)、利用者特定部112は、取得したユニット識別情報と利用者識別情報との組合せに基づいて、機器4が設置された部屋R1、R2、R3に存在する利用者を特定する。そして、利用者特定部112は、取得したユニット識別情報と特定した利用者の利用者識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS104)。
続いて、画像取得部113は、センサユニット2に対して部屋R1、R2、R3内の熱画像の撮像を指示する撮像指示情報をセンサユニット2へ送信することにより(ステップS105)、センサユニット2から送信される部屋R1、R2、R3内の熱画像を示す画像情報とユニット識別情報とを取得する(ステップS106)。その後、人物画像抽出部114は、取得した画像情報が示す部屋R1、R2、R3の熱画像の中から利用者P1、P2、P3の熱画像を抽出する熱画像抽出処理を実行する(ステップS107)。ここで、人物画像抽出部114は、熱画像抽出処理を実行した結果、利用者P1、P2、P3の熱画像の抽出に失敗した場合、利用者識別情報の利用者推定部115への通知を回避する。その後、利用者推定部115は、部屋R1、R2、R3内に利用者P1、P2、P3が不在であるか否かを判定する(ステップS108)。ここで、利用者推定部115は、人物画像抽出部114から利用者識別情報が通知されない場合、部屋R1、R2、R3内に利用者P1、P2、P3が不在と判定する。利用者推定部115は、部屋R1、R2、R3内に利用者P1、P2、P3が不在と判定すると(ステップS108:Yes)、部屋R1、R2、R3内に利用者P1、P2、P3が不在であることを示すNULL値情報を、ユニット識別情報に対応づけて在室状況記憶部133に記憶させる。そして、機器制御部121は、在室状況記憶部133が記憶するユニット識別情報に対応してNULL値情報が記憶されている場合、そのユニット識別情報で識別されるセンサユニット2が設置された部屋R1、R2、R3に設置された機器4の動作を停止させるための制御情報を生成し、生成した制御情報を機器4へ送信する(ステップS109)。次に、再びステップS101の処理が実行される。
一方、利用者推定部115は、部屋R1、R2、R3内に利用者P1、P2、P3が存在すると判定すると(ステップS108:No)、抽出した熱画像と、センサユニット2から画像情報とともに取得したユニット識別情報と、の組合せに基づいて、センサユニット2が設置された部屋R1、R2、R3に存在する利用者P1、P2、P3を推定する(ステップS110)。次に、利用者推定部115は、端末装置5から送信された利用者識別情報を取得しているか否かを判定する(ステップS111)。ここで、利用者推定部115は、端末装置5から送信された利用者識別情報を取得していないと判定すると(ステップS111:No)、推定した利用者の利用者識別情報とセンサユニット2から送信されたユニット識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS112)。一方、利用者推定部115が、端末装置5から送信された利用者識別情報を取得したと判定したとする(ステップS111:Yes)。この場合、利用者推定モデル生成部116は、利用者推定部115により推定された利用者が、利用者特定部112により特定された利用者と異なるか否かを判定する(ステップS113)。ここで、利用者推定モデル生成部116が、利用者推定部115により推定された利用者と利用者特定部112により特定された利用者とが同じであると判定したとする(ステップS113:No)。この場合、利用者推定部115は、推定した利用者の利用者識別情報とユニット識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS112)。一方、利用者推定モデル生成部116が、利用者推定部115により推定された利用者と利用者特定部112により特定された利用者とが異なると判定したとする(ステップS113:Yes)。この場合、利用者推定モデル生成部116は、利用者特定部112により特定された利用者の利用者識別情報と、前述の画像情報と、を用いて、利用者推定モデル情報を生成する。そして、利用者推定モデル生成部116は、生成した利用者推定モデル情報で、利用者推定モデル記憶部132が記憶する利用者推定モデル情報を更新する(ステップS114)。
続いて、図13に示すように、環境情報取得部117は、環境センサ3に対して環境情報の送信を要求する環境情報要求情報を環境センサ3へ送信する(ステップS115)。これにより、環境情報取得部117は、環境センサ3から送信される、環境センサ3により検出された環境パラメータを示す環境情報を取得し、取得した環境情報を環境情報記憶部134に記憶させる(ステップS116)。その後、気象情報取得部118は、気象サーバ9に対して気象情報の送信を要求する気象情報要求情報を生成して気象サーバ9へ送信する(ステップS117)。これにより、気象情報取得部118は、気象サーバ9から送信される気象情報を取得し、取得した気象情報を気象情報記憶部135に記憶させる(ステップS118)。
次に、機器設定推定部119は、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する部屋R1、R2、R3に存在する利用者P1、P2、P3の利用者識別情報と、に基づいて、部屋R1、R2、R3に設置された機器4の設定を推定する(ステップS119)。続いて、機器設定推定部119は、推定した機器4それぞれの設定を示す機器設定情報を、対応する部屋R1、R2、R3に設置されたセンサユニット2を識別するユニット識別情報に対応づけて機器設定記憶部137に記憶させる(ステップS120)。その後、機器設定補正部120は、在室状況記憶部133が記憶する利用者識別情報を参照して、部屋R1、R2、R3に複数の利用者P1、P2、P3が存在するか否かを判定する(ステップS121)。ここで、機器設定補正部120が、部屋R1、R2、R3に利用者P1、P2、P3が1人だけ存在すると判定すると(ステップS121:No)、後述のステップS123の処理が実行される。一方、機器設定補正部120は、部屋R1、R2、R3に複数の利用者P1、P2、P3が存在すると判定すると(ステップS121:Yes)、複数の利用者P1、P2、P3が存在する部屋R1、R2、R3に設置された機器4の設定値を補正する(ステップS122)。具体的には、機器設定補正部120は、機器設定記憶部137が記憶する機器設定情報のうち、環境パラメータに関する機器4の設定値を示す機器設定情報について、複数の利用者P1、P2、P3それぞれに対応する機器設定情報が示す機器4の設定値の代表値を算出する。そして、機器設定補正部120は、算出した代表値を用いて、機器設定記憶部137が記憶する、複数の利用者P1、P2、P3が存在する部屋R1、R2、R3に設置された機器4の設定値を補正する。
次に、機器制御部121は、機器設定記憶部137が記憶する機器設定情報に基づいて、機器4の動作を制御するための制御情報を生成し、生成した制御情報を機器4へ送信する(ステップS123)。続いて、設定変更通知取得部122は、機器4から送信される設定変更通知情報を取得したか否かを判定する(ステップS124)。ここで、設定変更通知取得部122が、機器4から送信される設定変更通知情報を取得していないと判定すると(ステップS124:No)、後述のステップS126の処理が実行される。一方、設定変更通知取得部122は、機器4から送信される設定変更通知情報を取得したと判定したとする(ステップS124:Yes)。この場合、機器設定推定モデル生成部123は、取得した設定変更通知情報に含まれる変更後機器設定情報を抽出し、抽出した変更後機器設定情報と、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する利用者識別情報と、を用いて、機器設定推定モデル情報を生成する。そして、機器設定推定モデル生成部123は、生成した機器設定推定モデル情報で、機器設定推定モデル記憶部136が記憶する機器設定推定モデル情報を更新する(ステップS125)。続いて、環境情報取得部117は、予め設定された機器設定更新時期が到来したか否かを判定する(ステップS126)。ここで、環境情報取得部117は、機器設定更新時期が到来したと判定すると(ステップS126:Yes)、再びステップS115の処理を実行する。一方、環境情報取得部117は、未だ機器設定更新時期が到来していないと判定すると(ステップS126:No)、再びステップS101の処理が実行される。
以上説明したように、本実施の形態に係る制御システムによれば、利用者特定部112が、センサユニット2のビーコン送信部212から機器4が設置された部屋R(R1、R2、R3)へ送信されたビーコンフレームに含まれるセンサユニット2(2A、2B、2C)を識別するユニット識別情報と、ビーコンフレームを取得した端末装置5を識別する利用者識別情報と、の組合せに基づいて、利用者P(P1、P2、P3)を特定する。また、利用者推定部115が、利用者Pの熱画像を示す画像情報に基づいて、利用者Pを推定する。そして、機器制御部121が、利用者特定部112により特定されたユニット識別情報で識別される部屋Rに存在する利用者Pに対応する機器設定情報を優先的に選択し、選択した機器設定情報に基づいて、機器4を制御する。これにより、利用者Pに対応する機器設定情報が適切に選択されるので、利用者Pの嗜好を反映した機器4の制御を行うことができる。即ち、センサユニット2で撮像された熱画像を用いた利用者Pの推定と、センサユニット2から送出されるビーコンフレームを用いた利用者Pの特定と、を組み合わせることにより、利用者Pの推定精度を高めることができるので、利用者Pに適した設定で機器4を制御することができる。従って、利用者Pにとって快適な環境を提供できる。
また、本実施の形態に係る利用者推定部115は、センサユニット2から送出された画像情報およびユニット識別情報の組合せに基づいて利用者Pの部屋Rにおける存否を推定し、機器制御部121が、利用者Pが部屋Rに不在と推定されると、その部屋Rに設置された機器4を停止させる。これにより、利用者Pが部屋Rから退出した際、それに応じて機器4の動作が停止されるので、利用者の部屋R退出時における機器4の動作の停止忘れを防止でき、ひいては機器4での消費電力を低減できる。
更に、本実施の形態に係る利用者推定部115は、利用者特定部112により特定された利用者と、前記画像情報に基づいて推定した利用者と、が互いに異なる場合、利用者特定部112により特定された利用者を、対象となる部屋Rに存在する利用者Pとし、推定した利用者の利用者識別情報の在室状況記憶部133に記憶させることを回避する。これにより、在室状況記憶部133には、利用者特定部112により特定された利用者の利用者識別情報が優先的に記憶される。従って、機器設定推定部119は、より正確な利用者の在室状況に基づいて機器4の設定を推定することができるので、利用者Pにとってより適切な環境を提供できる。
また、本実施の形態に係る利用者推定モデル生成部116は、端末装置5から送信されるユニット識別情報と利用者識別情報の組合せに基づいて特定された利用者と、センサユニット2から送信される画像情報に基づいて推定した利用者と、が互いに異なる場合、利用者推定モデル情報を生成し、生成した利用者推定モデル情報で利用者推定モデル記憶部132が記憶する利用者推定モデル情報を更新する。これにより、画像情報から利用者Pを推定する際の推定精度を漸次向上させていくことができる。従って、例えば利用者Pが端末装置5を所持せずに部屋Rに入室した場合、或いは、端末装置5の電源がオフ状態の場合において、利用者Pを精度良く推定することが可能となる。
更に、本実施の形態に係る機器設定推定部119は、環境センサ3により検出された環境パラメータと、気象サーバ9から取得した気象情報と、在室状況記憶部133が記憶する利用者識別情報と、に基づいて、機器4の設定を推定する。これにより、機器4の設定を利用者Pが存在する部屋Rの環境或いは季節を考慮した形で機器4の設定を推定することができるので、利用者にとってより快適な環境を提供することができる。
また、本実施の形態に係る環境設定推定モデル生成部123は、設定変更通知取得部122が前述の設定変更通知情報を取得する毎に、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、在室状況記憶部133が記憶する利用者識別情報と、設定変更通知情報に含まれる変更後機器設定情報と、を用いて、機器設定推定モデル情報を生成し、生成した機器設定推定モデル情報で機器設定推定モデル記憶部136が記憶する機器設定推定モデル情報を更新する。これにより、機器設定推定部119が、機器設定推定モデルを用いて、利用者Pの嗜好に応じて機器4の設定を推定する際の推定精度を漸次向上させていくことができるので、利用者にとってより快適な環境を提供することができる。
更に、本実施の形態に係る機器設定補正部120は、部屋Rに複数の利用者Pが存在する場合、部屋Rの環境パラメータに関する機器4の設定値を示す機器設定情報について、複数の利用者Pそれぞれに対応する機器設定情報が示す機器4の設定値の代表値を算出する。そして、機器設定補正部120は、算出した代表値を機器4の設定値とする。これにより、互いに嗜好の異なる複数の利用者Pが同じ部屋Rに存在する場合でも各利用者Pが不快と感じることのない環境を提供することができる。
(実施の形態2)
本実施の形態に係る制御システムは、端末装置が、部屋R1、R2、R3における利用者P1、P2、P3の在室状況を確認するためのビーコンフレームの探索を行うビーコン探索時期を管理し、センサユニットが、部屋R1、R2、R3を撮像する撮像時期を管理する点が実施の形態1と相違する。
図14に示すように、本実施の形態に係るセンサユニット2002および端末装置2005は、それぞれ、在室状況確認時期を管理するために時刻を計時する計時部208、508を備える。なお、図14において、実施の形態1と同様の構成については図3と同一の符号を付している。計時部208、508は、例えばRTCを有するものである。端末装置2005のビーコン取得部2511は、計時部508により計時される時刻に基づいて、在室状況管理時期が到来したと判定すると、無線モジュール507を介してセンサユニット2002から送信されるビーコンフレームを探索する。センサユニット2002の画像形成部2213は、計時部208により計時される時刻に基づいて、在室状況管理時期が到来したと判定すると、赤外線センサ203から入力される信号に基づいて熱画像を形成する。また、本実施の形態に係るクラウドサーバ2001は、図4に示す実施の形態1に係るクラウドサーバ1について確認時期管理部124が無い構成を有する。以下、クラウドサーバ2001の各機能構成については、図4と同一の符号を用いて説明する。
次に、本実施の形態に係る制御システムの動作について図15を参照しながら説明する。なお、図15において、実施の形態1と同様の処理については、図7、図9から図11と同一の符号を付している。まず、利用者P(P1、P2、P3)が部屋R(R1、R2、R3)に入室した状態で、センサユニット2002が前述のビーコンフレームを生成し(ステップS1)、生成されたビーコンフレームが、センサユニット2002から端末装置2005へ送信される(ステップS2)。ここで、前述のビーコン探索時期が到来すると、端末装置2005は、センサユニット2002から送信されるビーコンフレームを取得し、取得したビーコンフレームに含まれるユニット識別情報を抽出する(ステップS2001)。次に、抽出されたユニット識別情報と端末装置2005を所持する利用者Pを識別する利用者識別情報とが、端末装置2005からクラウドサーバ2001へ送信される(ステップS2002)。一方、クラウドサーバ2001は、ユニット識別情報と利用者識別情報とを取得すると、取得したユニット識別情報と利用者識別情報との組合せに基づいて、機器4が設置された部屋Rに存在する利用者Pを特定する。そして、クラウドサーバ2001は、取得したユニット識別情報と特定した利用者Pの利用者識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS5)。
続いて、前述の撮像時期が到来すると、センサユニット2002は、センサユニット2002が設置された部屋R内を撮像して得られる熱画像を示す画像情報を生成する(ステップS2003)。その後、生成された画像情報とセンサユニット2002のユニット識別情報とが、センサユニット2002からクラウドサーバ2001へ送信される(ステップS2004)。その後、ステップS9以降の一連の処理が実行される。
次に、本実施の形態に係るクラウドサーバ2001が実行する機器制御処理について図16を参照しながら説明する。なお、図16において、実施の形態1と同様の処理については図12および図13と同一の符号を付している。まず、識別情報取得部111は、端末装置2005から送信されるユニット識別情報および利用者識別情報を取得したか否かを判定する(ステップS2101)。ここで、識別情報取得部111は、ユニット識別情報および利用者識別情報を取得していないと判定すると(ステップS2101:No)、後述のステップS2103の処理が実行される。一方、識別情報取得部111が、ユニット識別情報および利用者識別情報を取得したと判定したとする(ステップS2101:Yes)。この場合、利用者特定部112は、取得したユニット識別情報と利用者識別情報との組合せに基づいて、機器4が設置された部屋R1、R2、R3に存在する利用者を特定する。そして、利用者特定部112は、取得したユニット識別情報と特定した利用者の利用者識別情報とを互いに対応づけて在室状況記憶部133に記憶させる(ステップS2102)。
次に、画像取得部113は、センサユニット2002から送信される部屋R1、R2、R3内の熱画像を示す画像情報とユニット識別情報とを取得したか否かを判定する(ステップS2103)。ここで、画像取得部113が、センサユニット2002から送信される画像情報とユニット識別情報とを取得していないと判定すると(ステップS2103:No)、ステップS124の処理が実行される。一方、画像取得部113が、センサユニット2002から送信される画像情報とユニット識別情報とを取得したと判定したとする(ステップS2103:Yes)。この場合、人物画像抽出部114は、取得した画像情報が示す部屋R1、R2、R3の熱画像の中から利用者P1、P2、P3の熱画像を抽出する熱画像抽出処理を実行する(ステップS107)。その後、ステップS108以降の一連の処理が実行される。
以上説明したように、本実施の形態に係る制御システムでは、端末装置が、部屋R1、R2、R3における利用者P1、P2、P3の在室状況を確認するためのビーコンフレームの探索を行うビーコン探索時期を管理し、センサユニット2002が、部屋R1、R2、R3を撮像する撮像時期を管理する。これにより、クラウドサーバ2001において実施の形態1で説明した在室状況確認時期を管理する必要が無くなるため、その分、クラウドサーバ2001の機能構成の簡素化を図ることができる。
(実施の形態3)
本実施の形態に係る制御システムは、複数の利用者P1、P2、P3それぞれについて予め設定された機器設定情報を記憶する機器設定リスト記憶部を備えており、機器制御部が、機器設定リスト情報の中から、推定された利用者に対応する機器設定情報を特定し、特定した機器設定情報に基づいて、機器を制御する点で実施の形態1と相違する。即ち、本実施の形態に係る制御システムは、実施の形態1で説明した機器設定推定部を備えていない点で実施の形態1と相違する。
本実施の形態に係る制御システムのハードウェア構成は、実施の形態1で説明した制御システムのハードウェア構成と同様である。従って、本実施の形態に係る制御システムのハードウェア構成については適宜図2に示す符号を用いて説明する。本実施の形態に係るクラウドサーバ3001のCPU101は、補助記憶部103が記憶するプログラムを主記憶部102に読み出して実行することにより、図17に示すように、識別情報取得部111、利用者特定部112、画像取得部113、人物画像抽出部114、利用者推定部115、利用者推定モデル生成部116、環境情報取得部117、気象情報取得部118、機器設定選択部3119、機器設定補正部120、機器制御部121、設定変更通知取得部3122および確認時期管理部124として機能する。なお、図17において、実施の形態1と同様の構成については図4と同一の符号を付している。また、補助記憶部103は、機器設置場所記憶部131と、利用者推定モデル記憶部132と、在室状況記憶部133と、環境情報記憶部134と、気象情報記憶部135と、機器設定リスト記憶部3136と、機器設定記憶部137と、を有する。機器設定リスト記憶部3136は、例えば図18に示すような機器設定情報のリストを示す機器設定リスト情報を記憶する。この機器設定リスト情報は、利用者P1、P2、P3それぞれについて各部屋R1、R2,R3に設置された各機器4の設定を示す機器設定情報を、各部屋R1、R2、R3に対応するユニット識別情報、各部屋R1、R2、R3に設置された機器4の機器識別情報および季節を示す時期情報に対応づけたものである。また、図18に示すような機器設定リスト情報は、環境センサ3より検出される環境パラメータの複数種類の範囲と、複数種類の気象条件と、の組合せそれぞれについて準備されている。そして、機器設定リスト記憶部3136は、環境パラメータの複数種類の範囲と複数種類の気象条件との組合せそれぞれに対応する機器設定リスト情報の全てを、環境パラメータの複数種類の範囲と複数種類の気象条件との組合せに対応づけて記憶している。
機器設定選択部3119は、環境情報記憶部134が記憶する環境情報が示す環境パラメータが属す環境パラメータの範囲と、気象情報記憶部135が記憶する気象情報が示す気象条件と、の組合せを特定する。次に、機器設定選択部3119は、機器設定リスト記憶部3136が記憶する複数の機器設定リスト情報の中から、特定した環境パラメータの範囲と気象条件との組合せに対応する機器設定リスト情報を選択する。そして、機器設定選択部3119は、在室状況記憶部133が記憶する利用者識別情報を参照して、各部屋R1、R2、R3に存在する利用者を特定し、選択した機器設定リスト情報の中から、特定した利用者P1、P2、P3が存在する部屋R1、R2、R3に設置された機器4についての特定した利用者P1、P2、P3に対応する機器設定情報を選択する。機器設定選択部3119は、選択した機器設定情報を機器設定記憶部137に記憶させる。
設定変更通知取得部3122は、機器4から送信される設定変更通知情報を取得すると、取得した設定変更通知情報に含まれる変更後の機器4の設定を示す変更後機器設定情報を抽出し、抽出した変更後機器設定情報を用いて、機器設定リスト記憶部3136が記憶する設定変更通知情報に対応する機器設定リスト情報を更新する。これにより、機器制御部121が、機器4を制御した後、利用者がその機器4の設定を変更した場合、機器設定リスト情報が上書き更新される形でフィードバックされ最適化されていく。
次に、本実施の形態に係るクラウドサーバ3001が実行する機器制御処理について図19を参照しながら説明する。なお、図19において、実施の形態1と同様の処理については、図12および図13と同一の符号を付している。本実施の形態にかかるこの機器制御処理は、まず、実施の形態1で図12を用いて説明したステップS101からS114までの一連の処理が実行される。次に、図19に示すように、環境情報取得部117は、環境センサ3に対して環境情報の送信を要求する環境情報要求情報を環境センサ3へ送信する(ステップS115)。次に、ステップS116からS118までの一連の処理が実行された後、機器設定選択部3119は、環境情報記憶部134が記憶する環境情報が示す環境パラメータと、気象情報記憶部135が記憶する気象情報と、在室状況記憶部133が記憶する部屋R1、R2、R3に存在する利用者P1、P2、P3の利用者識別情報と、に基づいて、部屋R1、R2、R3に設置された機器4の設定を選択する(ステップS3101)。続いて、ステップS120からS123までの一連の処理が実行される。
その後、設定変更通知取得部3122は、機器4から送信される設定変更通知情報を取得したか否かを判定する(ステップS124)。ここで、設定変更通知取得部3122が、機器4から送信される設定変更通知情報を取得していないと判定すると(ステップS124:No)、後述のステップS126の処理が実行される。一方、設定変更通知取得部3122は、機器4から送信される設定変更通知情報を取得したと判定したとする(ステップS124:Yes)。この場合、設定変更通知取得部3122は、取得した設定変更通知情報に含まれる変更後機器設定情報を抽出し、抽出した変更後機器設定情報を用いて、機器設定リスト記憶部3136が記憶する設定変更通知情報に対応する機器設定リスト情報を更新する(ステップS3102)。続いて、環境情報取得部117は、予め設定された機器設定更新時期が到来したか否かを判定する(ステップS126)。ここで、環境情報取得部117は、機器設定更新時期が到来したと判定すると(ステップS126:Yes)、再びステップS115の処理を実行する。一方、環境情報取得部117は、未だ機器設定更新時期が到来していないと判定すると(ステップS126:No)、再びステップS101の処理が実行される。
以上説明したように、本実施の形態に係る制御システムでは、クラウドサーバ3001において、機器4の設定を推定する処理を行う必要が無いので、その分、クラウドサーバ3001の処理負荷を軽減できる。また、利用者がその機器4の設定を変更した場合、その変更後の機器4が機器設定リスト情報にフィードバックされるので、機器4の設定が最適化されていく。従って、利用者にとって最適な機器4の設定が実現され易いという利点がある。
以上、本開示の実施の形態について説明したが、本開示は前述の実施の形態によって限定されるものではない。例えば各実施の形態において、センサユニット2、2002が、部屋R1、R2、R3の実際の画像を撮像するカメラを備えるものであってもよい。
各実施の形態では、クラウドサーバ1、2001、3001が、部屋R1、R2、R3に複数の利用者P1、P2、P3が存在する場合、環境パラメータに関する機器4の設定値を示す機器設定情報について、複数の利用者P1、P2、P3それぞれに対応する機器設定情報が示す機器4の設定値の代表値を用いて、機器設定記憶部137が記憶する機器4の設定値を補正する機器設定補正部120を備える例について説明した。但し、これに限らず、例えば、クラウドサーバ1、2001、3001が、部屋R1、R2、R3に複数の利用者P1、P2、P3が存在する場合、その部屋R1、R2、R3に設置された機器4の設定を、複数の利用者P1、P2、P3から任意に選択した1人に対応する機器4の設定を選出して機器設定記憶部137に記憶させる機器設定選出部を備えるものであってもよい。
各実施の形態では、機器設定推定部119は、部屋R(R1、R2、R3)に利用者P1、P2、P3が複数存在する場合、機器設定推定モデルを用いて、複数の利用者P1、P2、P3それぞれについて機器4の設定を推定し、機器設定補正部120が、複数の利用者P1、P2、P3それぞれについて推定された機器4の設定を示す機器設定情報に基づいて、部屋Rに設置された機器4の設定を決定する例について説明した。但し、これに限らず、機器設定推定部119が、部屋R1、R2、R3に利用者P1、P2、P3が複数存在する場合、機器設定推定モデルを用いて、複数の利用者P1、P2、P3の組合せに応じた機器4の設定を直接推定する構成であってもよい。機器設定推定部119は、例えば利用者P1、P2、P3について、機器設定推定モデルを用いて、利用者P1、P2、P3のいずれかが1人だけ部屋Rに存在する場合の機器4の設定、利用者P1、P2、P3のうのいずれかが2人だけ部屋Rに存在する場合の機器4の設定、利用者P1、P2、P3の全てが部屋Rに存在する場合の機器4の合計7つのケースそれぞれについて機器4の設定を推定するものであってもよい。
実施の形態3では、設定変更通知取得部3122が、機器4から送信される設定変更通知情報に含まれる変更後の機器4の設定を示す変更後機器設定情報を抽出し、抽出した変更後機器設定情報を用いて、機器設定リスト記憶部3136が記憶する機器設定リスト情報を更新する例について説明した。但し、これに限らず、例えばクラウドサーバが、建物H内の環境パラメータに関する機器4の設定値を示す機器設定情報について、設定変更通知取得部3122が抽出した変更機器設定情報が示す機器4の設定値と変更前の機器4の設定値との平均値を算出し、算出した平均値を用いて機器設定リスト情報を更新するリスト更新部を備えるものであってもよい。
また、本開示に係るクラウドサーバ1、2001、3001の各種機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現されてもよい。この場合、ソフトウェアまたはファームウェアは、プログラムとして記述され、プログラムを、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory)、DVD(Digital Versatile Disc)およびMO(Magneto-Optical Disc)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、前述の各機能を実現することができるコンピュータを構成してもよい。そして、各機能をOS(Operating System)とアプリケーションとの分担、またはOSとアプリケーションとの協同により実現する場合等には、OS以外の部分のみを記録媒体に格納してもよい。
さらに、搬送波に各プログラムを重畳し、ネットワークを介して配信することも可能である。例えば、ネットワーク上の掲示板(BBS,Bulletin Board System)に当該プログラムを掲示し、ネットワークを介して当該プログラムを配信してもよい。そして、これらのプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、前述の処理を実行できるように構成してもよい。