IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社オージス総研の特許一覧

特許7080009サーバ装置、制御システム、コンピュータプログラム及び通信方法
<>
  • 特許-サーバ装置、制御システム、コンピュータプログラム及び通信方法 図1
  • 特許-サーバ装置、制御システム、コンピュータプログラム及び通信方法 図2
  • 特許-サーバ装置、制御システム、コンピュータプログラム及び通信方法 図3
  • 特許-サーバ装置、制御システム、コンピュータプログラム及び通信方法 図4
  • 特許-サーバ装置、制御システム、コンピュータプログラム及び通信方法 図5
  • 特許-サーバ装置、制御システム、コンピュータプログラム及び通信方法 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-05-26
(45)【発行日】2022-06-03
(54)【発明の名称】サーバ装置、制御システム、コンピュータプログラム及び通信方法
(51)【国際特許分類】
   H04L 12/28 20060101AFI20220527BHJP
【FI】
H04L12/28 500C
H04L12/28 ZIT
【請求項の数】 6
(21)【出願番号】P 2017014752
(22)【出願日】2017-01-30
(65)【公開番号】P2018124679
(43)【公開日】2018-08-09
【審査請求日】2019-09-17
【審判番号】
【審判請求日】2021-05-24
(73)【特許権者】
【識別番号】000103482
【氏名又は名称】株式会社オージス総研
(74)【代理人】
【識別番号】100114557
【弁理士】
【氏名又は名称】河野 英仁
(74)【代理人】
【識別番号】100078868
【弁理士】
【氏名又は名称】河野 登夫
(72)【発明者】
【氏名】近藤 貴俊
【合議体】
【審判長】角田 慎治
【審判官】富澤 哲生
【審判官】林 毅
(56)【参考文献】
【文献】米国特許出願公開第2008/0133541(US,A1)
【文献】特表2015-500520(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/28
(57)【特許請求の範囲】
【請求項1】
パブリッシュ/サブスクライブ型のメッセージの送受信をパブリッシャ又はサブスクライバである複数のクライアント装置との間で行なうサーバ装置において、
前記メッセージの対象である1又は複数のトピックと対応付けられた文字列であるラベルを記憶する記憶部と、
前記クライアント装置から受信した前記メッセージにおけるプロトコル上の1つのフィールドに、前記ラベルを含む制御文が含まれているか否かを、前記制御文の始まりを示す特定の文字列の有無によって判断する判断部と、
該判断部により制御文が含まれていると判断された場合、該制御文に含まれる前記ラベルの解析を行なう解析部と、
解析結果に基づき特定されるラベルに対応するトピックを対象として前記メッセージに対応する処理を実行するメッセージ処理部と
を備えることを特徴とするサーバ装置。
【請求項2】
前記制御文は、ラベルに対する条件式を含み、
前記解析部は、該条件式によりトピックを抽出する抽出部を有し、
前記メッセージ処理部は、抽出されたトピックを対象としてメッセージを送信する
ことを特徴とする請求項1に記載のサーバ装置。
【請求項3】
前記1つのフィールドは、前記メッセージにおけるトピックフィールドである
請求項1又は2に記載のサーバ装置。
【請求項4】
パブリッシュ/サブスクライブ型のメッセージ送受信により、情報端末装置から制御対象デバイスの動作を制御する制御システムにおいて、
請求項1から請求項3のいずれか1つに記載のサーバ装置を含み、
前記トピックは、前記制御対象デバイスを識別するデバイスのラベルであり、
前記情報端末装置はクライアント装置として、前記制御文を含む前記メッセージを前記サーバ装置へ送信し、
前記メッセージ処理部は、受信した前記メッセージへの前記解析部による解析結果に基づき特定されるラベルに対応するトピックへ前記制御文を含む前記メッセージを発行する
ことを特徴とする制御システム。
【請求項5】
通信部及び記憶部を備えるコンピュータに、パブリッシュ/サブスクライブ型のメッセージの送受信を実行させるコンピュータプログラムにおいて、
前記コンピュータに、
前記メッセージの対象である1又は複数のトピックに対応付けられた文字列であるラベルを記憶させておき、
前記通信部により受信した前記メッセージにおけるプロトコル上の1つのフィールドに、前記ラベルを含む制御文が含まれているか否かを、前記制御文の始まりを示す特定の文字列の有無によって判断するステップ、
該ステップにより制御文が含まれていると判断された場合、該制御文に含まれる前記ラベルの解析を行なうステップ、及び、
解析結果に基づき特定されるラベルに対応するトピックを対象として前記メッセージに対する処理ステップ
を実行させることを特徴とするコンピュータプログラム。
【請求項6】
パブリッシュパブリッシュ/サブスクライブ型のメッセージの送受信をパブリッシャ又はサブスクライバである複数のクライアント装置との間で行なうサーバ装置における通信方法において、
前記サーバ装置は、
前記メッセージの対象である1又は複数のトピックに対応付けられた文字列であるラベルを記憶しておき、
前記クライアント装置から受信した前記メッセージにおけるプロトコル上の1つのフィールドに、前記ラベルを含む制御文が含まれているか否かを、前記制御文の始まりを示す特定の文字列の有無によって判断し、
制御文が含まれていると判断された場合、該制御文に含まれる前記ラベルの解析を行ない、
解析結果に基づき特定されるラベルに対応するトピックを対象として前記メッセージに対する処理を行なう
ことを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、パブリッシュ/サブスクライブ型のメッセージの送受信を制御するサーバ装置、該サーバ装置を用いる制御システム、コンピュータプログラム及び通信方法に関する。
【背景技術】
【0002】
簡素な構成で更に通信量が少なくて済むパブリッシュ(Publish )/サブスクライブ(Subscribe )型(以下、Pub/Sub 型という)のメッセージ送受信システムが、IOT(Internet of Things )システム等の種々の分野で利用されている。Pub/Sub 型のメッセージ送受信では、メッセージ(データ)の送信者であるパブリッシャ(publisher )と、メッセージの受信者であるサブスクライバ(subscriber)との間のメッセージの送受信をブローカ(broker)と呼ばれるサーバが仲介する。そしてそのメッセージ送受信の仲介には、トピックと呼ばれるメッセージの送信先を区別するための情報が利用される。まずサブスクライバがトピックを指定し、該トピックを送信先とするメッセージを購読する。この購読という処理によりブローカではサブスクライバの識別情報とトピックの識別情報とが対応付けられる。パブリッシャがトピックを指定してメッセージを送信した場合、ブローカはこれを指定されたトピックに対応するサブスクライバへ配信する。これによりパブリッシャは宛先(サブスクライバ)が誰で何人いるかなどを意識することなくメッセージを送信することができる。
【0003】
特許文献1にはPub/Sub 型のメッセージ送受信システムに関し、トピックの具体例を認識していないユーザのサブスクライバからも自然言語要求によって所望のメッセージを購読できるようにするシステムが提案されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特表2011-515770号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
Pub/Sub 型メッセージ送受信システムでは、サブスクライバの講読時のトピックの指定の際にワイルドカードを用いることにより、共通の識別情報を含むトピックについてまとめて指定ができる仕組みが提供されている。例えば、MQTT(MQ Telemetry Transport)モデルではワイルドカードとして「# 」、「+ 」等を用い、サブスクライバは共通の文字列を同一階層に含むトピックをまとめて指定することができる。しかしながら、現状のPub/Sub 型メッセージ送受信システムでは、MQTTのみならず他のシステムにおいても、パブリッシャ側からのワイルドカードを用いたトピックの指定は実施されていない。
【0006】
本発明は斯かる事情を鑑みてなされたものであり、パブリッシャからメッセージをまとめて送信することを可能として通信量を低減させることができるサーバ装置、該サーバ装置を用いる制御システム、コンピュータプログラム及び通信方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本開示の一態様に係るサーバ装置は、Pub/Sub 型のメッセージの送受信をパブリッシャ又はサブスクライバである複数のクライアント装置との間で行なうサーバ装置において、前記メッセージの対象である1又は複数のトピックと対応する識別情報を記憶する記憶部と、前記クライアント装置から受信したパブリッシュ又はサブスクリプションメッセージに制御文が含まれているか否かを判断する判断部と、該判断部により制御文が含まれていると判断された場合、該制御文に含まれる前記識別情報の解析を行なう解析部と、前記識別情報の解析結果に基づき特定される識別情報に対応するトピックを対象として前記パブリッシュ又はサブスクリプションメッセージに対応する処理を実行するメッセージ処理部とを備える。
【0008】
本開示の一態様では、前記制御文は、識別情報の条件式を含み、前記解析部は、該条件式によりトピックを抽出する抽出部を有し、前記メッセージ処理部は、抽出されたトピックを対象としてメッセージを送信する。
【0009】
本開示の一態様に係る制御システムは、Pub/Sub 型のメッセージ送受信により、情報端末装置から制御対象デバイスの動作を制御する制御システムにおいて、前記サーバ装置を含み、前記トピックは、前記制御対象デバイスを識別するデバイス識別情報であり、前記情報端末装置はクライアント装置として、前記制御文を含むパブリッシュメッセージを前記サーバ装置へ送信し、前記メッセージ処理部は、受信したパブリッシュメッセージへの前記解析部による解析結果に基づき特定される識別情報に対応するトピックへ前記指示を含むパブリッシュメッセージを発行する。
【0010】
本開示の一態様に係るコンピュータプログラムは、通信部及び記憶部を備えるコンピュータに、パブリッシュ/サブスクライブ型のメッセージの送受信を実行させるコンピュータプログラムにおいて、前記コンピュータに、前記メッセージの対象である1又は複数のトピックに付されている識別情報を記憶させておき、前記クライアント装置から受信したパブリッシュ又はサブスクリプションメッセージに制御文が含まれているか否かを判断するステップ、該ステップにより制御文が含まれていると判断された場合、該制御文に含まれる前記識別情報の解析を行なうステップ、及び、前記識別情報の解析結果に基づき特定される識別情報に対応するトピックを対象として前記パブリッシュ又はサブスクリプションメッセージに対する処理ステップを実行させる。
【0011】
本開示の一態様に係る通信方法は、パブリッシュ/サブスクライブ型のメッセージの送受信をパブリッシャ又はサブスクライバである複数のクライアント装置との間で行なうサーバ装置における通信方法において、前記サーバ装置は、前記メッセージの対象である1又は複数のトピックに付されている識別情報を記憶しておき、前記クライアント装置から受信したパブリッシュ又はサブスクリプションメッセージに制御文が含まれているか否かを判断し、制御文が含まれていると判断された場合、該制御文に含まれる前記識別情報の解析を行ない、前記識別情報の解析結果に基づき特定される識別情報に対応するトピックを対象として前記パブリッシュ又はサブスクリプションメッセージに対する処理を行なう。
【発明の効果】
【0012】
本開示のサーバ装置によれば、パブリッシャとブローカとの間の通信量が低減される。また、1のパブリッシャからのメッセージが複数のサブスクライバへ送信される際の時間差を軽減させることができる。また、パブリッシャから目的に即した制御文にてメッセージを送信することができるから、簡素なメッセージ送受信システムを利用しつつ、より複雑な処理を実現することができる。
【図面の簡単な説明】
【0013】
図1】本実施の形態におけるHEMSの概要を示す説明図である。
図2】本実施の形態におけるHEMSサーバの内部構成を示すブロック図である。
図3】記憶部に記憶されている情報の一例を示す説明図である。
図4】ラベルとトピックとの間の対応関係を示す説明図である。
図5】HEMSサーバの制御部により実行されるメッセージ処理手順の一例を示すフローチャートである。
図6】本実施の形態のHEMSサーバによる効果を示す概略図である。
【発明を実施するための形態】
【0014】
以下、本開示のサーバ装置についてその実施の形態を示す図面に基づいて具体的に説明する。なお以下の実施の形態では、本開示のサーバ装置をHEMS(Home Energy Management System )に適用した例を挙げて説明する。
【0015】
図1は、本実施の形態におけるHEMSの概要を示す説明図である。HEMSは、HEMSサーバ1(サーバ装置)と、屋内ネットワーク2と、制御機器3(クライアント装置)と、事業者ネットワーク4と、通信端末装置5(クライアント装置)とを含む。
【0016】
屋内ネットワーク2及び制御機器3は、HEMSの適用対象である建物(住宅)に配設されている。制御機器3は、家庭用の電子機器に屋内ネットワーク2を介してメッセージを受信する通信部及びメッセージに含まれる制御情報を抽出する通信制御部を加えて構成されるものである。HEMSにおいて制御機器3は例えば照明機器であり、又は、冷房機器若しくは暖房機器である。屋内ネットワーク2は有線又は無線を問わない。HEMSサーバ1は、制御機器3及び屋内ネットワーク2と同様に建物内に配置されていてもよいが、屋内ネットワーク2と安全に通信接続が可能であれば建物外、即ち事業者ネットワーク4に接続されたサーバセンタ内に配置されていてもよいし、機能毎に分散して配置されていてもよい。
【0017】
屋内ネットワーク2は、ルータ等の通信機器を介して事業者ネットワーク4に接続されている。事業者ネットワーク4は、通信キャリアが提供する通信回線でもよいし、その他の事業者が提供する通信回線でもよいし、所謂インターネットであってもよい。事業者ネットワーク4についても有線又は無線を問わない。そして事業者ネットワーク4は、通信キャリア又はインターネットと接続されており、ユーザが保持する所謂スマートフォン等である通信端末装置5(クライアント装置)から事業者ネットワーク4を介してHEMSサーバ1へ通信接続が可能である。なお通信端末装置5は、他にタブレット型端末など、有線又は無線による通信機能を備える通信装置であればよい。
【0018】
図2は、本実施の形態におけるHEMSサーバ1の内部構成を示すブロック図である。HEMSサーバ1はサーバコンピュータを用い、制御部10、記憶部11、一時記憶部12、及び通信部13を備える。制御部10はCPU(Central Processing Unit )、クロック等を用いて記憶部11に記憶されているサーバプログラム1Pに基づいた各処理を実行し、汎用サーバコンピュータをPub/Sub 型メッセージ通信システムにおけるブローカ(broker)として機能させる。HEMSサーバ1は詳細には、MQTTモデルにおけるメッセージのブローカとして機能する。なおMQTTモデルには限られない。一時記憶部12はDRAM(Dynamic Random Access Memory)等の揮発性メモリを用いて制御部10の処理により生成される情報を一時的に記憶する。
【0019】
記憶部11は、例えばハードディスク又はフラッシュメモリ等の不揮発性メモリを用いる。記憶部11は、サーバプログラム1Pのほか、制御部10が参照する情報を記憶する。記憶部11は、Pub/Sub 型メッセージ通信システムにおけるトピックを夫々識別する情報及びトピックの文字列自体を記憶し、更に、後述するラベルとトピックとの間の関係を記憶する(図3参照)。また、ラベルの文字列とトピックの文字列に含まれる情報との間の関係を辞書として記憶しておいてもよい。
【0020】
通信部13は、事業者ネットワーク4及び屋内ネットワーク2を介した通信接続を実現するデバイスである。具体的にはネットワークカード又は無線通信デバイスである。
【0021】
制御機器3は、上述した通り電子機器に通信部及び通信制御部を加えて構成されている。通信部は無線又は有線によりHEMSサーバ1と通信が可能であり、通信制御部の処理によってPub/Sub 型メッセージ通信システムにおけるサブスクライバ(subscriber)として機能する。通信制御部は、HEMSサーバ1から受信するメッセージから、自機器への制御内容を取り出し、制御内容に応じて電子機器の動作制御を行なう。例えば制御機器3が照明機器である場合、通信制御部はメッセージからオン/オフ等の制御内容を取り出し、電子機器が備える制御部へスイッチ情報又は明るさの調整を指示する制御信号を出力する。制御機器3が冷房機器若しくは暖房機器、又は空気調節装置である場合、通信制御部はメッセージからオン/オフ等の制御内容を取り出し同様にして制御信号を出力する。
【0022】
通信端末装置5は、制御部、記憶部、及び無線通信(又は有線通信)により情報を送受信する通信部を少なくとも備える。通信端末装置5は上述したように所謂スマートフォン又はタブレット型端末であるから他に液晶パネル又は有機ELディスプレイ等を用いた表示部51、スピーカ及びマイクロフォン等を用いる音声処理部、物理ボタン及びディスプレイ内蔵のタッチパネル等を用いた操作部52を備える。なお表示部51、操作部52及び音声処理部は、後述するインタフェース画面による操作等、ユーザからの操作を受け付ける機能が不要な場合には必須ではない。
【0023】
通信端末装置5の記憶部には、HEMS用のクライアントプログラムが記憶されている。通信端末装置5の制御部は、クライアントプログラムに基づきPub/Sub 型メッセージ通信システムにおけるパブリッシャ(publisher )として機能する。特に通信端末装置5においてはHEMSにて各制御機器3へ制御の指示を受け付けるインタフェース画面を表示部51に表示させるプログラムが記憶されている。インタフェース画面には照明機器のオン/オフの切り替え、冷房機器若しくは暖房機器、又は空気調節装置のオン/オフ、設定温度を受け付けるアイコン等が含まれるようにしてある。
【0024】
このように構成されるHEMSにて、HEMSサーバ1、通信端末装置5、及び制御機器3間でのメッセージの送受信及び制御手順について説明する。
【0025】
まずHEMSサーバ1の記憶部11には、通信端末装置5のユーザ(アカウント)に対応する建物に対応するトピック(topic )及びトピックに対応するラベルのリストが記憶されている。図3は、記憶部11に記憶されている情報の一例を示す説明図である。記憶部11にはトピックとして制御機器3を夫々識別する機器識別情報が記憶されている。図3の例では機器識別情報として、MQTTに則り「/ 」によって階層化された文字列が記憶されている。具体的には図1の建物に所属する制御機器3を識別するべく建物を識別する「houseA」の後に夫々「/1F/kitchen/light, /1F/living/light, /living/air-conditioner,...」のようにして機器識別情報が記憶されている。また他の建物(houseB)に所属する制御機器3について「houseB/1F/living/light」、「houseB/1F/restroom/light」等の機器識別情報が記憶されている。また、他の建物の階層、区画、又は部屋毎に「buildingA 」、「buildingB 」、「buildingA/10/」等の上位階層とそれらに続く制御機器3に夫々対応する機器識別情報が記憶されてある。各トピックはHEMSの管理者により予め定義されて設定されているものである。図3の例であればMQTTに則り「/ 」を用いて階層化されていれば管理者権限を持つユーザによって自由に設定が可能である。
【0026】
そして本実施の形態においては記憶部11にはラベル(label )の情報(識別情報)のリストが記憶されている。更にラベル情報には図3に示す通り、トピックとの対応関係が予め登録されて記憶されている(label-topic )。例えば「HA_ALL_LIGHT」というラベルには「houseA」を上位層として「light 」の文字列を最下層に含むトピック群「houseA/1F/kitchen/light, houseA/1F/living/light, houseA/1F/restroom/light, houseA/2F/bedroom/light, houseA/2F/room1/light, ...」との関係が記憶されている。また、「HA_PATTERN1 」いうラベルと「houseA/1F/kitchen/light, houseA/1F/living/air-conditioner」との関係が記憶されている。
【0027】
なおラベルは記憶されているトピック群から対象のトピックを抽出することを可能とするものであればよく、トピックに含まれる要素そのものをラベルとして用いてもよい。図4は、ラベルと抽出されるトピックとの間の対応関係を示す説明図である。図4に示す対応関係は、図3のようにラベル及びトピックの情報が記憶されている場合に、指定されるラベルによって抽出されるトピックの例を示している。まず図4に示すように、予めラベルとトピックとの対応関係が記憶されているラベル「HA_ALL_LIGHT」が指定された場合当然に、対応するトピック群「houseA/1F/kitchen/light, houseA/1F/living/light, houseA/1F/restroom/light, houseA/2F/bedroom/light, houseA/2F/room1/light, ...」が抽出される。それ以外に予め対応関係が記憶されていないラベルであっても、例えばラベルとして「1F」が指定された場合、図4に示すように、「1F」の要素を含むトピックが対応するものとして抽出可能である。このように、トピックに含まれる要素をラベルとして指定した場合には、要素がいずれの階層に含まれていても抽出できる点が従来とは異なる。要素をラベルとして用いてトピックと対応付けることができるから、例えばMQTTにおけるワイルドカード「+ 」とは異なり、その要素がいずれの階層に含まれていてもこれを含むトピックを特定することができる。
【0028】
更に図4では、要素をラベルとして指定できることで後述するように、要素を論理式に含めた制御文(図4の例であれば「houseA&light」)により、特定のトピックを抽出することが可能であることが示されている。図3を参照すれば図4に示すように「houseA」及び「light 」には夫々図4の右側に挙げられるトピックが対応するから、上述の論理式に対応するトピックとして、トピック群「houseA/1F/kitchen/light, houseA/1F/living/light, houseA/1F/restroom/light, houseA/2F/bedroom/light, houseA/2F/room1/light」が抽出可能である。このようにトピックに含まれる要素を識別する情報をラベルとして指定することにより、所望のトピックの抽出が可能になる。要素を識別する情報は図4に示す例のような文字列でなくともよい。例えば「houseA」は「0x0010」、「living」は「0x01」、「light」は「0x10」と夫々識別情報が付与されており、それらの識別情報をラベルとしてもよい。なお図4に示す対応関係をそのまま記憶部11に予め記憶しておくようにしてもよく、この場合図4中の左側部分がラベルのリストに対応する。
【0029】
図3に示したラベルは、パブリッシャとして機能する通信端末装置5から、ブローカで独自の意味に解釈することが許可されている「$SYS/ 」から始まるトピックとしてHEMSサーバ1へ送信される。通信端末装置5は、当該特定のトピックの後の文字列にラベルを用いた条件式を制御文として含めて送信する。例えば、図3の例で示した例であれば、通信端末装置5の表示部51におけるインタフェース画面上で建物(houseA)内の全ての電灯を点灯させるための「全灯」というアイコンがタップされた場合、制御部は「$SYS/HA_ALL_LIGHT 」を指定してその後、制御内容(ON又はOFF)を示すデータ(payload)を含むメッセージをHEMSサーバ1へ向けて送信する。他に、後述するようにラベルを用いた論理式を条件式としてもよい。なお制御内容を示すデータは、より情報量が少ないものが好ましく、制御内容の種類毎にトピックが定義されていてもよい。例えば照明機器のオン/オフの切り替えは「houseA/1F/living/light/onoff」、明るさ調整は「houseA/1F/living/light/luminosity」のように区別しておく。同様にして空調機器のオン/オフの切り替えは「houseA/2F/bedroom/air-conditioner/onoff」、モード設定は「houseA/2F/bedroom/air-conditioner/mode」、温度設定は「houseA/2F/bedroom/air-conditioner/temperature」のように区別しておくようにしてもよい。
【0030】
このようにパブリッシャからメッセージが送信されるとHEMSサーバ1は、以下のように処理を実行する。図5は、HEMSサーバ1の制御部10により実行されるメッセージ処理手順の一例を示すフローチャートである。
【0031】
HEMSサーバ1の制御部10は、通信部13によりパブリッシャからのメッセージを受信する(ステップS1)。制御部10は受信したメッセージの文字列解析を行ない、所定の「$SYS/ 」から始まるトピックか否かにより、受信したメッセージにラベルに係る制御文が含まれているか否かを判断する(ステップS2)。
【0032】
S2にて制御文が含まれていると判断された場合(S2:YES)、制御部10は、「$SYS/ 」以降の文字列を制御文として抽出して一時記憶し(ステップS3)、抽出した文字列を記憶部11に記憶されたラベル情報を参照して制御文を解析する(ステップS4)。なおステップS4にて制御部10は、文字列をラベルの条件式として解釈する。条件式に用いられる論理演算子は記憶部11に予め記憶しておき、これらを参照して解釈を実行する。
【0033】
制御部10は、制御文の解析に基づき対応するトピックを抽出し(ステップS5)、抽出したトピックに対して、ステップS1で受信したメッセージに対応するメッセージをパブリッシャからのメッセージとして発行し(ステップS6)、処理を終了する。
【0034】
ステップS6によりHEMSサーバ1内でメッセージが発行されると、対応するトピックを指定して購読している制御機器3へメッセージが送信される。制御機器3からは各トピックのメッセージそのものがパブリッシャである通信端末装置5から送信されたのか、ブローカであるHEMSサーバ1から送信されたのかは区別できずともよい。なおHEMSサーバ1から制御機器3へのメッセージ送信(発行)は、MQTTにおける「retain」の機能を用いるようにしてもよい。例えば制御機器3が数十ミリ秒~数秒等の時間間隔で間欠的に起動するなどして消費電力を低減させて動作する場合、HEMSサーバ1からのメッセージを即時受信できない可能性がある。この場合「retain」機能のような制御内容の最新情報を保持する機能を用いることにより、間欠的にメッセージを受信する制御機器3でも対応が可能となる。
【0035】
ステップS2にて制御文が含まれていないと判断された場合(S2:NO)、制御部10は、他のPub/Sub 型メッセージ送受信の処理を行ない(ステップS7)、処理を終了する。
【0036】
上述したように通信端末装置5から「$SYS/HA_ALL_LIGHT 」のメッセージが送信された場合、HEMSサーバ1の制御部10はステップS1にてこれを受信するとステップS2にて「$SYS/ 」の存在により制御文が含まれると判断する(S2:YES)。そして制御部10は、制御文が含まれると判断し(S2:YES)、「HA_ALL_LIGHT」を制御文として抽出する(S3)。制御部10は、ステップS4にて参照したラベルのリストと制御文「HA_ALL_LIGHT」が一致すると解析できるので、ステップS5にてラベルに対応するトピック群「houseA/1F/kitchen/light, houseA/1F/living/light, houseA/1F/restroom/light, houseA/2F/bedroom/light, houseA/2F/room1/light, ...」を抽出する。制御部10は、ステップS6にて抽出した各トピック夫々についてメッセージを発行する。これにより、建物内の照明機器である制御機器3全てに対して一斉に制御が実行される。
【0037】
また例えば、通信端末装置5から「$SYS/houseA&1F&(living|kitchen) 」のメッセージが送信された場合、HEMSサーバ1の制御部10はステップS1にてこれを受信するとステップS2にて「$SYS/ 」の存在により制御文が含まれると判断する(S2:YES)。そして「houseA&1F&(living|kitchen)&light 」を制御文として抽出する(S3)。参照されるトピックから制御文は『「houseA」の「1F」の「living」又は「kitchen 」の「light 」』と解析できるから(S4)、これにより制御部10は、記憶されているトピック(図3)の内「houseA/1F/kitchen/light, houseA/1F/living/light 」を抽出する(S5)。制御部10は、ステップS5にて抽出した各トピック夫々についてメッセージを発行する。これにより、建物内の1階におけるキッチン及びリビングの照明機器である制御機器3に対して制御が実行される。
【0038】
更に例えば、通信端末装置5から「$SYS/houseA&!(1F&restroom)」のメッセージが送信された場合、HEMSサーバ1の制御部10はステップS1にてこれを受信するとステップS2にて制御文が含まれると判断し(S2:YES)、「houseA&!(1F&restroom)」を制御文として抽出する(S3)。参照されるトピックから制御文は『「houseA」の「1F」の「restroom」以外全部』と解析できる(S4)。これにより制御部10は、記憶されているトピック(図3)の内「houseA/1F/restroom/light」を除く、「houseA/1F/kitchen/light, houseA/1F/living/light, houseA/1F/living/air-conditioner, houseA/1F/living/heater, houseA/2F/bedroom/light, houseA/2F/bedroom/air-conditioner, houseA/2F/room1/light 」を抽出する(S5)。制御部10は、ステップS5にて抽出した各トピック夫々についてメッセージを発行する。これにより、建物内の2階の寝室以外の制御機器3全ての制御が実行される。
【0039】
図6は、本実施の形態のHEMSサーバ1による効果を示す概略図である。図6(A)は、本実施の形態におけるHEMSサーバ1と、通信端末装置5及び制御機器3との間のメッセージの送受信を示している。図6(B)は、従来のPub/Sub 型のブローカ、パブリッシャ、及びサブスクライバ間でのメッセージの送受信を、同様のHEMSに適用した例を示している。そして図6の例では、上述した例の内、建物内の全ての照明機器に対応するトピックにメッセージを送信する場合を例にして説明する。
【0040】
建物内の全ての照明機器に対応するトピックにメッセージを送信するためには、図6(A)で示す本実施の形態のHEMSサーバ1を用いる場合は上述したように、パブリッシャである通信端末装置5からは「$SYS/HA_ALL_LIGHT 」のメッセージが送信されるのみである。HEMSサーバ1では内部にて、対応する各トピックを対象とするメッセージが発行され、サブスクライバである制御機器3は自身に対応するトピックのメッセージを受信する。これに比して従来Pub/Sub 型の一例として使用されているMQTTでは、サブスクライバから講読時にトピックを指定する場合にワイルドカード(「# 」又は「+ 」)を用いることはできたが、パブリッシャからのトピックの指定にワイルドカードの使用は実施されていない。また、仮にパブリッシャからMQTTにおける「# 」又は「+ 」を使用したとしても図3に示したように、同じ要素を含むトピックでも階層構造が異なる場合には「# 」及び「+ 」の解釈が異なる。したがって図6(B)に示すように、パブリッシャは対応するトピックを全て予め記憶しておいた上でそれらを指定してメッセージを各々送信しなければならないからパブリッシャとブローカとの間の通信量が増大する。
【0041】
このようにして本開示のHEMSサーバ1におけるラベルを使用したトピックの抽出処理により、通信端末装置5からHEMSサーバ1へのメッセージの送信はトピック毎ではなく、制御の目的に即した制御文の送信1回で済む。これにより通信端末装置5とHEMSサーバ1との間の通信量が低減される。IOTシステムが適用されれば制御機器3の数の膨大化は容易に想定されることである。更にはHEMSのようなシステムにおけるメッセージ送受信には通信速度が遅い帯域が利用される可能性が高いから、制御に係る通信量の低減は非常に効果的である。これに加え、パブリッシャからの1回のメッセージ送信で、複数のサブスクライバがメッセージを受信できることから、対象となる制御機器3へのメッセージの同報性が向上する。例えば図6(B)に示したように5以上のトピック、仮に10以上のトピック全てに同じ制御内容(例えば電源ON)をメッセージとして送信しようとする場合には、1つ目のメッセージと最後のメッセージとの間に少なからず時差が発生する。しかしながら図6(A)に示したように通信端末装置5からのメッセージは1回で、HEMSサーバ1の内部で複数のトピック宛てにメッセージを送信する場合に発生する時差は僅かである。しかもHEMSサーバ1と制御機器3との間のメッセージの送受信は従前と変わらない。このようにPub/Sub 型のメッセージ送受信を用いた比較的簡素な制御システムにおいても、ラベルの導入で通信量低減を実現した上で更には同報性の向上が期待できる。
【0042】
本実施の形態で示したようにラベルは、制御の目的に即してメッセージの送信先(範囲)を限定するために用いられている。ラベルとトピックとの関係をその目的に応じて適切に対応付けることにより、通信端末装置5(パブリッシャ)からは制御文を含む1つのメッセージの送信にて、その制御文に対応するトピックの組み合わせによって複雑な処理を実現することも可能となる。パブリッシャが簡素な処理のみ行なえる程度の処理能力を持つハードウェア(一定時間毎に検知結果を送信するセンサ)である場合には特に、このような処理の簡素化は効果的である。
【0043】
本実施の形態では、通信端末装置5をパブリッシャ、制御機器3をサブスクライバとして説明した。しかしながら当業者であれば当然に、制御機器3は同時にパブリッシャでもあり、通信端末装置5も同時にサブスクライバとしても動作するようにしてもよいことは理解できる。例えば制御機器3が照明機器であればその制御状態(例えば照明機器の点灯状態/消灯状態)をメッセージのデータ部分として送信し、通信端末装置5にて所望の制御機器3の制御状態を知ることが可能である。
【0044】
なお本実施の形態では、本開示のサーバ装置をHEMSに適用した例を示したが、このような小規模な制御システムのみに適用されるものではない。複数拠点の工場設備内の制御機器を一又は複数のメンテナンス用クライアント装置から制御するシステムにも適用可能である。この場合制御対象の拠点毎、設備毎、ライン毎、装置の種類毎などの制御対象の範囲を絞って1つのメッセージで同時的に制御を行なうか、逆に、対象の装置又はセンサからのメッセージを送信させてメンテナンスに用いるなどの制御が可能になる。その他例えば制御システムのみならず、情報の範囲を絞って収集する情報収集システムにも適用可能である。各所に設けられたセンサから送信されるメッセージを地域、時間帯等を限定して受信できるようにするなどにより、必要な情報のみを提供するなどのサービスへの適用等が考えられる。
【0045】
本開示の実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0046】
1 HEMSサーバ(サーバ装置)
10 制御部
11 記憶部
1P サーバプログラム(コンピュータプログラム)
13 通信部
3 制御機器(クライアント装置)
5 情報端末装置(クライアント装置)
図1
図2
図3
図4
図5
図6