以下、本発明に係る実施形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、その説明を省略する。
(実施形態の構成)
図1は、実施形態に係る遠隔監視システムの構成を示す図である。図2は、実施形態に係る中継親装置の構成を示すブロック図である。図3は、端末管理データテーブルの構成を示す図である。図4は、収集データテーブルの構成を示す図である。図5は、第2通信部の動作を説明するための図である。
図1において、本発明の実施形態に係る遠隔制御システム1は、背景技術に係る中継装置X700−xの代わりに以下に説明する本発明の実施形態に係る中継親装置12を用いる点を除き、図10を用いて説明した遠隔制御システム1000と同様である。そのため、監視装置10、端末装置11、伝送路13及び中継装置700(700−y、700−z)の説明を省略する。なお、中継装置のうちの監視装置10に伝送路A13−aを介して通信可能に接続される中継装置を中継親装置と呼称することとし、中継装置のうちの中継親装置を介して監視装置10と端末装置11との間で通信信号を中継する中継装置を中継子装置と呼称することとする。この中継子装置は、背景技術の中継装置700と同一であり、中継子装置の参照符号に背景技術の中継装置における参照符号700を用いることとする。
図2において、実施形態に係る中継親装置12は、第1通信部21、中央処理部22、記憶部23及び第2通信部24を備えて構成される。
第1通信部21は、伝送路A13−aを用いて通信を行うための通信インターフェース回路であり、中央処理部22からのデータを伝送路A13−aの第1通信プロトコルに従った通信信号を生成すると共に伝送路A13−aからの通信信号を中央処理部22が処理可能な形式のデータに変換する。
中央処理部22は、例えば、マイクロプロセッサ等で構成され、後述のように、監視装置10から要求信号を受信した場合に管理下の端末装置11に代わって当該要求信号に応じた応答信号を生成して監視装置10に返信する際の処理を行うデータ送信処理部221、後述のように、中継子装置700に接続する端末装置11から状態データを収集する際の処理を行うデータ収集処理部222、及び、時を計ってデータ送信処理部221やデータ収集処理部222の要求に応じて現在時刻を出力する時計部223を備えると共に、各プログラムに従い第1通信部21、記憶部23及び第2通信部24を制御する。
記憶部23は、端末管理データ記憶部231及び収集データ記憶部232を備え、本中継親装置12を動作させるための制御プログラム等の各プログラム、最大リトライ回数等の各プログラムの実行に必要な情報等を記憶すると共に、中央処理部22に対する所謂ワーキングメモリである。記憶部23は、例えば、各プログラムやこれに必要な情報等を記憶する、例えばROM(Read Only Memory)やEEPROM(Electrically Erasable Programmable Read Only Memory)等の不揮発性の記憶素子、及び、ワーキングメモリとなる例えばRAM(Random Access Memory)等の揮発性の記憶素子を備えて構成される。最大リトライ回数は、要求信号の送信を中継親装置12がリトライする最大回数であり、仕様によって決定されるが、例えば、伝送路B13−bの伝送容量、伝送環境や伝送路B13−bに接続している中継子装置700の個数等を考慮して決定される。
端末管理データ記憶部231は、当該中継親装置12が管理する端末装置11に関する情報を登録する端末管理データテーブルを記憶する。
端末管理データテーブル30は、例えば、図3(A)に示すように、端末管理データテーブル30の各レコードを表すための番号を登録する管理番号フィールド301、当該中継親装置12が中継子装置700を介して管理する端末装置11(管理下の端末装置11)の端末装置IDを登録する登録端末装置IDフィールド302、及び、端末装置11から収集する状態データに関する情報を登録する端末データフィールド303の各フィールドを備えて構成され、当該中継親装置12が管理可能な端末装置11の個数分だけレコードが作成される。
図3(A)に示す例では、中継親装置12は、8個の端末装置11を管理可能とするため、8個のレコードが端末管理データテーブル30に用意され、そのうち、4個のレコードが端末装置ID=「3」、「4」、「5」及び「6」の端末装置11(11−c〜11−f)における端末装置11に関する情報を登録するために使用されている。なお、未使用のレコードにおける各フィールド301〜303には、未使用であることを示す記号列、図3(A)に示す例では「****」が登録される。
端末データフィールド303は、状態データに関する情報として、図3(A)に示す例では、状態データの種類を識別するための識別子であるデータIDを登録するデータIDフィールド3031、状態データのサイズをバイト(byte)単位で登録するデータサイズフィールド3032、及び、状態データを端末装置11から収集する時間間隔を秒(sec)単位で登録する収集周期フィールド3033の各サブフィールドを備えて構成される。例えば、データID=1は、状態データが照度であることを表し、データID=2は、状態データが温度であることを表し、データID=3は、状態データが湿球温度であることを表し、データID=4は、状態データが湿度であることを表し、データID=5は、状態データが電流であることを表し、データID=6は、状態データが電圧であることを表し、そして、データID=7は、状態データが電力であることを表す。また、このように収集周期フィールド3033を備えるので、状態データを収集する収集周期を各端末装置11の状態データの種類ごとに設定することができる。このため、経時変化が比較的小さい状態データに対して収集周期を経時変化が比較的大きい状態データよりも長く設定することができる。その結果、全ての状態データに対し同一の収集周期でその状態データを収集する場合よりも、通信トラフィックを抑制することができ、送受信に要する電力を抑制することができる。
図3(A)において、例えば、管理番号フィールド301に「2」が登録されているレコードにおける、登録端末装置IDフィールド302には「4」が登録され、データIDフィールド3031には「1」が登録され、データサイズフィールド3032には「2」が登録され、そして、収集周期フィールド3033には「10」が登録されている。このことより、中継親装置12は、端末装置ID=「4」の端末装置D11−dを管理し、この端末装置D11−dに対して10秒間隔で要求信号により2バイトの照度データを収集する。
ここで、1個の端末装置11が複数の物理量を検知する場合に対応するために、端末データフィールド303を複数備えるように端末管理データテーブル31を構成してもよい。図3(B)に示す例では、端末管理データテーブル31は、端末データAフィールド303−a、端末データBフィールド303−b及び端末データCフィールド303−cの3個の端末データフィールド303を備える。
図3(B)において、例えば、管理番号フィールド301に「3」が登録されているレコードにおける、登録端末装置IDフィールド302には「5」が登録され、端末データAフィールド303−aにおけるデータIDフィールド3031−aには「2」が登録され、データサイズフィールド3032−aには「4」が登録され、収集周期フィールド3033−aには「60」が登録され、端末データBフィールド303−bにおけるデータIDフィールド3031−bには「4」が登録され、データサイズフィールド3032−bには「4」が登録され、そして、収集周期フィールド3033−bには「60」が登録されている。このことより、中継親装置12は、端末装置ID=「5」の端末装置E11−eを管理し、この端末装置E11−eに対して、60秒間隔で要求信号により4バイトの温度データと、60秒間隔で要求信号により4バイトの湿度データを収集する。
収集データ記憶部232は、中継子装置700を介して端末装置11から状態データを収集するための設定情報を登録する収集データテーブルを記憶する。
収集データテーブル40は、例えば、図4(A)に示すように、収集データテーブル40の各レコードを表すための番号を登録する管理番号フィールド401、中継子装置700を介して管理する端末装置11と当該中継親装置12が通信可能であるか否かの状況を表す接続状況を登録する接続状況フィールド402、及び、端末装置11から状態データを収集するための設定情報に関する情報を登録する状態データフィールド403の各フィールドを備えて構成され、当該中継親装置12が管理可能な端末装置11の個数分だけレコードが作成される。ここで、端末管理データテーブル30における管理番号フィールド301と収集データテーブル40における管理番号フィールド401とは、連動しており、同じ管理番号のレコードは、同一の端末装置11に対するデータである。また、図4(A)の例では中継親装置12と端末装置11とが通信可能な接続状況にある場合には「OK」と登録され、中継親装置12と端末装置11とが通信不可能な接続状況にある場合には「NG」と登録される。
図4(A)に示す例では、中継親装置12は、端末管理データテーブル30と同様に、8個の端末装置11を管理可能とするため、8個のレコードが収集データテーブル40に用意され、そのうち、端末管理データテーブル30における管理番号「1」、「2」、「3」及び「4」のレコードに登録されている端末装置11(11−c〜11−f)に対して状態データを収集するための設定情報を登録するために4個のレコードが使用されている。なお、収集データテーブル40のレコード数は、本実施形態では、端末管理データテーブル30のレコード数と同数としたが、端末管理データテーブル30において使用されているレコード数(図3(A)では4個)と同数又はそれ以上のレコード数としてもよい。
状態データフィールド403は、端末装置11から状態データを収集するための設定情報に関する情報として、図4(A)に示す例では、監視装置10から要求信号を受信した時刻(アクセス時刻)を登録するアクセス時刻フィールド4031、監視装置10から順次に複数の要求信号を受信した場合に各アクセス時刻の時間間隔(アクセス周期)に対する平均値を秒(sec)単位で登録する平均アクセス周期フィールド4032、状態データを端末装置11から収集する時刻(収集時刻)を端末管理データテーブル30の収集周期に基づいて登録する収集時刻フィールド4033、平均アクセス周期フィールド4032に登録されているデータを収集周期に設定するために使用するカウンタ(アクセスカウンタ)の値を登録するアクセスカウンタフィールド4034、及び、端末装置11から収集した状態データを登録する取得データフィールド4035の各サブフィールドを備えて構成される。
図4(A)において、例えば、管理番号フィールド401に「2」が登録されているレコードにおける、接続状況フィールド402には「OK」が登録され、アクセス時刻フィールド4031には「19:00:01」が登録され、平均アクセス周期フィールド4032には「10」が登録され、収集時刻フィールド4033には「19:00:11」が登録され、アクセスカウンタフィールド4034には「5」が登録され、そして、取得データフィールド4035には「3200Lux」が登録されている。このことより、中継親装置12は、管理番号「2」即ち端末装置ID=「4」の端末装置D11−dに対して通信可能な状況にあり、監視装置10から要求信号を「19:00:01」に受信し、その平均アクセス周期が10秒であり、「19:00:11」に次回の状態データを収集する予定である。アクセスカウンタは、「5」であり、そして、中継親装置12が収集した状態データは、「3200Lux」である。ここで、収集データテーブル40の管理番号フィールド401における管理番号と、端末管理データテーブル30の管理番号フィールド301における管理番号とは、連動しており、収集データテーブル30の管理番号に基づいて端末管理データテーブル30を参照することによって、端末装置11を特定することができる。
なお、各フィールド401〜403には、データが登録されていないことを示す記号列、図4(A)に示す例では「−」が登録されている。
ここで、1個の端末装置11が複数の物理量を検知する場合に対応するために、端末管理データテーブル30と同様に、状態データフィールド403を複数備えるように収集データテーブル41を構成してもよい。図4(B)に示す例では、収集データテーブル41は、状態データAフィールド403−a、状態データBフィールド403−b及び状態データCフィールド403−cの3個の端末データフィールド403を備える。
図4(B)において、例えば、管理番号フィールド401に「3」が登録されているレコードにおける、接続状況フィールド402には「OK」が登録され、状態データAフィールド403−aのアクセス時刻フィールド4031−aには「19:00:55」が登録され、平均アクセス周期フィールド4032−aには「60」が登録され、収集時刻フィールド4033−aには「19:01:55」が登録され、アクセスカウンタフィールド4034−aには「0」が登録され、取得データフィールド4035−aには「25℃」が登録され、状態データBフィールド403−bのアクセス時刻フィールド4031−bには「19:00:55」が登録され、平均アクセス周期フィールド4032−bには「60」が登録され、収集時刻フィールド4033−bには「19:01:55」が登録され、アクセスカウンタフィールド4034−bには「0」が登録され、そして、取得データフィールド4035−bには「55%」が登録されている。このことより、中継親装置12は、管理番号「3」即ち端末装置ID=「5」の端末装置11に対して通信可能な状況にあり、監視装置10から要求信号を「19:00:55」に受信し、その平均アクセス周期が60秒であり、「19:01:55」に次回の状態データを収集する予定である。アクセスカウンタは、「0」であり、そして、中継親装置12が収集した状態データは、「25℃」及び「55%」である。なお、この例では、アクセス時刻、平均アクセス周期、収集時刻及びアクセスカウンタにおける各データは、状態データAフィールド403−a及び状態データBフィールド403−bにおいて同一であるが、後述するように、監視装置10が個別に要求信号を送信する場合等には異なる。
なお、状態データにおける収集データテーブル41と端末管理データテーブル31との対応関係は、図4(B)及び図3(B)に示す例では、状態データAフィールド403−aが端末データAフィールド303−aに対応し、状態データBフィールド403−bが端末データBフィールド303−bに対応し、そして、状態データCフィールド403−cが端末データCフィールド303−cに対応するように、テーブル内のその位置関係によって対応させているが、状態データフィールド403にデータIDフィールドをさらに設けて対応関係を表してもよい。
第2通信部24は、伝送路B13−bを用いて通信を行うための通信インターフェース回路であり、中央処理部22からのデータをカプセル化により伝送路B13−bの第2通信プロトコルに従った通信信号を生成すると共に、伝送路B13−bからの通信信号をデカプセル化して中央処理部22が処理可能な形式のデータに変換する。
即ち、第1通信プロトコルに従った通信信号は、図5(A)に示すように、第1通信プロトコルのヘッダ部501と第1通信プロトコルのペイロード部502と第1通信プロトコルのフッダ部503とを備えて構成されるが、伝送路B13−bに通信信号を送信する場合には、図5(D)に示すように、第2通信部24は、中央処理部22からこの第1通信プロトコルに従った形式のデータを第2通信プロトコルのペイロード部512に収容して、つまり、第1通信プロトコルに従った形式のデータの前に第2通信プロトコルのヘッダ部511を付け、第1通信プロトコルに従った形式のデータの後に第2通信プロトコルのフッダ部513を付けることによって(カプセル化)、伝送路B13−bに送信すべき通信信号を生成する。そして、伝送路B13−bから通信信号を受信して中央処理部22にデータを出力する場合には、第2通信プロトコルのペイロード部512からデータを取り出して、つまり、受信した通信信号から第2通信プロトコルのヘッダ部511及びフッダ部513を外すことによって(デカプセル化)、中央処理部22に出力すべきデータを生成する。
このように第1通信プロトコルから第2通信プロトコルへの変換は、カプセル化によって行われるので、第1通信プロトコルから第2通信プロトコルへ変換する際に、第1通信プロトコルの通信信号に収容されているデータを第2通信プロトコルのフォーマットに合わせて入れ替え等を行って第2通信プロトコルの通信信号を生成する必要がない。また、逆に、第2通信プロトコルから第1通信プロトコルへの変換は、デカプセル化によって行われるので、第2通信プロトコルから第1通信プロトコルへ変換する際に、第2通信プロトコルの通信信号に収容されているデータをそのまま取り出せばよい。このため、変換処理が容易であり、高速に処理することができる。
第1及び第2通信プロトコルのヘッダ部501、511は、通信信号の宛先やメッセージ番号等の通信信号を効率的に伝送させるための情報であるヘッダ情報を収容する部分であり、第1及び第2通信プロトコルのペイロード部502、512は、送信すべきデータを収容する部分であり、第1及び第2通信プロトコルのフッダ部503、513は、ヘッダ部501、511及びペイロード部502、512におけるデータの正当性をチェックするCRCやチェックサム等の情報、及び、通信信号の終了を示す情報(デミリタコード)等のフッダ情報を収容する部分である。
第1通信プロトコルと第2通信プロトコルとは、互いに異なる通信プロトコルであり、例えば、第1通信プロトコルは、RS485のデータ信号線プロトコルであり、第2通信プロトコルは、電力線通信プロトコル、微弱無線、特定小電力無線及びブルーツゥース(Bluetooth;登録商標)等の近距離無線プロトコルである。
次に、本実施形態の動作について説明する。
(実施形態の動作)
まず、中継子装置700を介して端末装置11から状態データを中継親装置12が収集する動作について説明する。図6は、中継子装置を介して端末装置から状態データを収集する動作を示すフローチャートである。
端末装置11の設置場所に起因して伝送路A13−aに直接接続できない場合や監視すべき箇所が増えたために端末装置11が増設される場合等のために、伝送路A13−aを介して監視装置10に通信可能に中継親装置12が配置され、例えば、その電源が投入されると、中継親装置12の中央処理部22は、端末管理データテーブル30のレコード数(管理番号の最大値)に合わせたレコード数の収集データテーブル40を記憶部23の収集データ記憶部232に生成し、初期化する。本実施形態では、中継親装置12における中央処理部22のデータ送信処理部221は、時計部223より現在時刻を取得すると共に、接続状況フィールド402及び状態データフィールド403をクリアし、取得した現在時刻と収集周期フィールド3033に登録されている収集周期とに基づいて収集時刻フィールド4033に次回の収集時刻を登録する。なお、端末管理テーブル30における登録端末装置IDフィールド302及び端末データフィールド303の各フィールド値は、例えば、中継親装置12を設置する施工者等によって図略の設定装置等を用いて登録される。
図6において、中央処理部22のデータ収集処理部222は、要求信号のリトライ送信回数を示すリトライ回数カウンタを「0」にセットすることによって、リトライ回数カウンタを初期化する(S11)。
次に、データ収集処理部222は、時計部223より時刻(現在時刻)を取得する(S12)。次に、データ収集処理部222は、取得した時刻と収集データテーブル40の収集時刻フィールド4033に登録されている時刻とが一致するか否かを各レコードごとに判断することによって、収集時刻であるか否かを判断する(S13)。
判断の結果、収集時刻のレコードがない場合(No)には、データ収集処理部222は、処理を処理S11に戻す。一方、判断の結果、収集時刻のレコードがある場合(Yes)には、データ収集処理部222は、当該収集時刻のレコードにおける管理番号に対応するレコードを端末管理データテーブル30から検索する。データ収集処理部222は、検索した端末管理データテーブル30のレコードにおける登録端末装置IDフィールド302、データIDフィールド3031及びデータサイズフィールド3032から端末装置ID、データID及びデータサイズを取得して、端末装置IDを宛先とする第1通信プロトコルのフォーマットに従った要求信号のデータを作成し、作成した要求信号のデータを第2通信部24に出力する(S14)。そして、データ収集処理部222は、第2通信部24を用いて要求信号を伝送路B13−bに送信する(S15)。
処理S14及び処理S15をより具体的に説明すると、この第1通信プロトコルのフォーマットに従った要求信号は、上述したように第1通信プロトコルのヘッダ部501、ペイロード部502及びフッダ部503を備えて構成され、図5(B)に示すように、通信信号の種別に関する情報を収容する信号種別部5021、データIDを収容するデータID部5022及びデータサイズを収容するデータサイズ部5023が第1通信プロトコルのペイロード部502に設けられる。このため、データ収集処理部222は、取得した端末装置IDを送信先通信アドレスとして第1通信プロトコルのヘッダ部501に収容し、状態データを要求するコマンドを表す情報(例えば「要求」)を信号種別部5021に収容し、取得したデータIDをデータID部5022に収容し、取得したデータサイズをデータサイズ部5023に収容することによって、第1通信プロトコルのフォーマットに従った要求信号を作成し、作成した要求信号を第2通信部24に出力する(S14)。
この第1通信プロトコルのフォーマットに従った要求信号が入力されると、第2通信部24は、図5(D)を用いて上述したようにこの要求信号をカプセル化して第2通信プロトコルに従った要求信号を生成し、伝送路B13−bに送信する(S15)。
伝送路B13−bを伝送する要求信号は、中継子装置700(図1に示す例では中継子装置Y700−y及び中継子装置Z700−z)に取り込まれる。中継子装置700は、その第2通信部701を用いてデカプセル化し、デカプセル化した要求信号の送信先通信アドレス(端末装置ID)が自己の管理する端末装置11であるか否か判断する。判断の結果、自己の管理する端末装置11である場合には、中継子装置700は、第1通信部702を用いて要求信号を伝送路13(図1の例では伝送路C13−c又は伝送路D13−d)に出力する。端末装置11(図1の例では端末装置C11−c及び端末装置D11−d、又は、端末装置E11−e及び端末装置F11−f)は、伝送路13を伝送する要求信号を取り込む。送信先通信アドレスが自己の端末装置IDに一致する場合には、端末装置11は、信号種別部5021に収容されている情報から状態データの要求であることを認識し、データID部5022に収容されている情報から返信すべき状態データの種類を認識し、データサイズ部5023に収容されている情報から返信すべき状態データのデータサイズを認識する。端末装置11は、これら情報に基づいて第1通信プロトコルに従った中継親装置12宛ての応答信号を作成し、伝送路13に送信する。
この第1通信プロトコルのフォーマットに従った応答信号は、上述したように第1通信プロトコルのヘッダ部501、ペイロード部502及びフッダ部503を備えて構成され、図5(C)に示すように、通信信号の種別に関する情報を収容する信号種別部5021、及び、状態データを収容する状態データ部5024が第1通信プロトコルのペイロード部502に設けられる。このため、端末装置11は、中継親装置12の通信アドレスを送信先通信アドレスとして第1通信プロトコルのヘッダ部501に収容し、状態データを応答する旨を表す情報(例えば「応答」)を信号種別部5021に収容し、状態データを状態データ部5024に収容することによって、第1通信プロトコルのフォーマットに従った応答信号を作成し、作成した応答信号を伝送路13に送信する。
この応答信号は、中継子装置700の第2通信部702によりカプセル化され第2通信プロトコルに従った応答信号で中継され、中継親装置12に返信される。
図6に戻って、データ収集処理部222は、所定の時間内に応答信号が第2通信部24によって受信されたか否かを判断する(S16)。この所定の時間は、中継親装置12から中継子装置700を介して端末装置11までに至る往復の通信時間等を考慮して決定される。
判断の結果、応答信号が受信されない場合(No)には、データ収集処理部222は、リトライ回数カウンタの値が最大リトライ回数に達しているか否かを判断する(S21)。判断の結果、最大リトライ回数に達している場合(Yes)には、当該端末装置11と通信可能に接続することができないと判断し、データ収集処理部222は、収集データテーブル40の当該端末装置11に対応するレコードにおける接続状況フィールド402に「NG」を登録し(S23)、後述の処理S19を実行する。一方、判断の結果、最大リトライ回数に未到達である場合(No)には、データ収集処理部222は、リトライ回数カウンタを1だけインクリメントし(S22)、処理を処理S14に戻し、再び要求信号を送信する処理を行う(要求信号のリトライ処理)。このようにリトライ回数カウンタが最大リトライ回数に達するまで、処理S14、処理S15、処理S16、処理S21及び処理S22を繰り返すことによって、要求信号の送信がリトライされる。
そして、処理S16における判断の結果、応答信号が受信された場合(Yes)には、データ収集処理部222は、第2通信部24でデカプセル化された応答信号が入力され、応答信号の送信元通信アドレス(端末装置ID)を端末管理データテーブル30の登録端末装置IDフィールドに登録するレコードを検索する。データ収集処理部222は、当該端末装置11と通信可能に接続されていると判断し、検索したレコードにおける接続状況フィールド402に「OK」を登録する(S17)。そして、データ収集処理部222は、検索したレコードの管理番号フィールド301に登録されている管理番号に対応する収集データテーブル40のレコードにおける取得データフィールド4035に応答信号の状態データを登録し、更新する(S18)。そして、データ収集処理部222は、処理S19を実行する。
処理S19において、データ収集処理部222は、収集データテーブル40の当該レコードにおける収集時刻フィールド4033の収集時刻を、端末管理データテーブル30の当該レコードにおける収集周期フィールド3033に登録されている収集周期に基づいて更新し、処理を処理S11に戻す。即ち、データ収集処理部222は、今回の収集時刻に収集周期を加算して、中継親装置12が端末装置11から状態データを次回に収集する次回の収集時刻を設定する。
このような処理S14乃至処理S23の処理が処理S13で収集時刻に該当する端末装置11に対してそれぞれ行われる。
このように中継親装置12は、端末管理データテーブル30の収集周期フィールド3033に登録されている収集周期で中継子装置700を介して端末管理データテーブル30の登録端末装置IDフィールド302に登録されている各端末装置11(管理下の端末装置11)から状態データを収集し、収集した状態データを収集データテーブル40の取得データフィールド4035に登録する。
そして、中継親装置12は、管理下の端末装置11宛ての要求信号を監視装置10から受信すると、この収集データテーブル40の取得データフィールド4035に登録されいる状態データを用いて応答信号を監視装置10に返信する。このように中継親装置12が管理下の端末装置11に代わって応答信号を監視装置10に返信するので、監視装置10からの要求信号は、背景技術で説明したように中継子装置700で通信プロトコルの変換等が行われることがない。よって、監視装置10からの要求信号に対する応答信号が遅延することはないので、監視装置10におけるタイムアウトの設定やリトライ回数の設定等の、通信信号を送受信するための各種設定を見直す必要がない。また、監視装置10が通信信号を送受信することに関しては、伝送路A13−aの第1通信プロトコルだけなので、複数の伝送媒体や複数の通信プロトコルを考慮する必要がないので、監視装置10を再設計する必要も生じない。さらに、このような監視装置10における各種設定の再設定や再設計を行う必要がないので、遠隔監視システム1を停止する必要もない。
従って、本実施形態に係る中継親装置12は、監視装置10を変更することなく、端末装置11を遠隔監視システム1に組み込むことができる。
上述のように、中継親装置12が監視装置10からの要求信号に対し管理下の端末装置11に代わって応答信号を返信するだけなら、状態データフィールド403が取得データフィールド4035のみで構成されたとしても、端末管理データテーブル30における収集周期フィールド3033に登録されている収集周期で端末装置11から状態データを取得し、取得した状態データを取得データフィールド4035に登録することができるから、これに対応することができる。
ところで、監視装置10が要求信号の送信周期を変更した場合には、応答信号に収容する状態データの要求信号に対するリアルタイム性を確保するためには、中継親装置12の端末管理データテーブル30における収集周期フィールド3033の収集周期もこれに合わせて更新する必要がある。このような更新を人手で行う場合には、入力ミスが生じる場合があり、また、手間がかかり煩わしい。特に、中継親装置12の管理下の端末装置11の個数が多い場合には、より入力ミスが生じ易く、また、大変な手間がかかり煩わしい。
そのため、本実施形態では、収集周期を監視装置10からの要求信号に適切に同期させるために、状態データフィールド403は、上記のアクセス時刻フィールド4031、平均アクセス周期フィールド4032及びアクセスカウンタフィールド4034の各サブフィールドを備える。
次に、監視装置10から要求信号を受信する場合の動作について説明し、応答信号の送信動作と収集周期の同期動作について説明する。図7は、監視装置から要求信号を受信する場合の動作を示すフローチャートである。
図7において、中央処理部22のデータ送信処理部221は、伝送路A13−a及び第1通信部21を介して監視装置10から要求信号を受信したか否かを判断する(S31)。判断の結果、要求信号が受信されていない場合(No)には、処理をこの処理S31に戻す。これによって、中継親装置12は、常時、監視装置10からの要求信号の受信を監視し、待ち受けている。
一方、判断の結果、要求信号が受信された場合(Yes)には、データ送信処理部221は、時計部223より時刻を取得する(S32)。
次に、データ送信処理部221は、要求信号に対応した応答信号を作成して監視装置10へ返信する(S33)。より具体的には、まず、データ送信処理部221は、受信した要求信号の第1通信プロトコルのヘッダ部501に収容されている送信先通信アドレス(端末装置ID)が端末管理データ記憶部231の端末管理データテーブル30における登録端末装置IDフィールド302に登録されているか否かを判断することによって、自己の管理下の端末装置11に対する要求信号であるか否かを判断する。判断の結果、登録端末装置IDフィールド302に登録されていない場合には、データ送信処理部221は、受信した要求信号を破棄し、処理を処理S31に戻す。一方、判断の結果、登録端末装置IDフィールド302に登録されている場合には、データ送信処理部221は、受信した要求信号の第1通信プロトコルのヘッダ部501に収容されている送信先通信アドレスが登録されているレコードにおける管理番号フィールド301の管理番号を取得する。データ送信処理部221は、収集データテーブル40からその管理番号フィールド401にこの取得した管理番号を登録するレコードを検索し、検索したレコードにおける取得データフィールド4035に登録されている状態データを取得する。そして、データ送信処理部221は、この取得した状態データを収容する応答信号を作成して監視装置10へ返信する。なお、図3(B)に示すように複数の端末データフィールド303を備える端末管理データテーブル31であって、これに対応して状態データフィールド403が複数の収集データテーブル41である場合には、データIDも考慮して要求信号に対応する状態データを検索する。このように中継親装置12は、その管理下の端末装置11に代わって、監視装置10からの要求信号に対して収集データ記憶部232に記憶されている状態データを用いて応答信号を作成して監視装置10に返信するので、要求信号に対して背景技術よりも迅速に応答することができる。よって、中継親装置12は、監視装置10を変更することなく、端末装置11を遠隔監視システム1に組み込むことができる。
次に、データ送信処理部221は、収集データテーブル40のアクセス時刻フィールド4031に登録されているアクセス時刻を処理S32で取得した時刻(取得時刻)から減算することによって、前回の要求信号の受信時刻から今回の要求信号の受信時刻までの時間間隔(アクセス周期)を計算する(S34)。即ち、データ送信処理部221は、(収集周期)=(取得時刻)−(アクセス時刻)を計算する。
次に、データ送信処理部221は、収集データテーブル40のアクセス時刻フィールド4031に取得時刻を登録することによって、アクセス時刻を更新する(S35)。
次に、データ送信処理部221は、処理S34で計算したアクセス周期(計算アクセス周期)、平均アクセス周期フィールド4032に登録されている平均アクセス周期、及び、アクセスカウンタフィールド4034に登録されているアクセスカウンタを用いて、平均アクセス周期を再計算する。そして、データ送信処理部221は、再計算した平均アクセス周期を平均アクセス周期フィールド4032に登録することによって、平均アクセス周期を更新する(S36)。
次に、データ送信処理部221は、処理S34の計算アクセス周期が処理S36の平均アクセス周期に対して所定の範囲内、例えば、±10%以内であるか否かを判断する(S37)。即ち、(平均アクセス周期)×0.9≦(計算アクセス周期)≦(平均アクセス周期)×1.1であるか否かを判断する。なお、所定の範囲は、収集周期を監視装置10からの要求信号に適切に同期させる精度に関係する数値であり、仕様により決定され、±10%に限らず、±7%や±5%でもよい。
判断の結果、所定の範囲内ではない場合(No)には、データ送信処理部221は、アクセスカウンタフィールド4034のアクセスカウンタをクリア、即ち、0にリセットする一方、判断の結果、所定の範囲内である場合(Yes)には、データ送信処理部221は、アクセスカウンタフィールド4034のアクセスカウンタを1だけインクリメントする。
次に、データ送信処理部221は、アクセスカウンタフィールド4034のアクセスカウンタの値が所定の閾値、例えば、10に達したか否かを判断する(S39)。この所定の閾値は、何回略同一のアクセス周期で要求信号が受信された場合に平均アクセス周期を収集周期に設定するかを決める数値であり、仕様により決定され、10に限らず、7や15等でもよい。
判断の結果、アクセスカウンタが所定の閾値に達していない場合(No)には、データ送信処理部221は、処理を処理S31に戻す。一方、判断の結果、アクセスカウンタが所定の閾値に達している場合(Yes)には、データ送信処理部221は、収集データテーブル40における平均アクセス周期フィールド4032に登録されている平均アクセス周期を、端末管理データテーブル30における収集周期フィールド3033に登録して収集周期に設定し(S40)、処理を処理S31に戻す。
このように動作することによって、本実施形態に係る中継親装置12は、監視装置10からの要求信号の受信周期に基づいて、要求信号が状態データを要求している端末装置11に対する収集周期を自動的に同期させることができる。
図1に示す遠隔監視システム1には、監視装置10、中継親装置12、2個の中継装置700(700−y、700−z)及び6個の端末装置11(11−a〜11−f)が記載されているが、監視装置10が端末装置C11−cの状態データを監視する場合について、図6及び図7を用いて説明した上述の動作をより具体的に説明する。
図8は、監視装置、中継親装置、中継装置及び端末装置における動作を示すシーケンス図である。なお、監視装置10は、端末装置C11−cの状態データをアクセス周期T1で取得するように設定され、また、中継親装置12は、初期状態であって、端末装置C11−cの状態データを収集周期T2(デフォルト値)で取得するように設定されている。また、平均アクセス周期を収集周期に設定する処理S39における所定の閾値は、10とする。さらに、処理S37の判断処理は、常に満たしているものとする。
図8において、監視装置10は、端末装置C11−cの状態データを取得すべく、要求信号を伝送路A13−aに送信する(C11−1)。この要求信号を受信した中継親装置12は、上述の処理S31乃至処理S33を実行することによって、収集データテーブル40を参照し、端末装置C11−cの状態データを収容する応答信号を監視装置10に返信する(C11−2)。そして、中継親装置12は、上述の処理S34乃至処理S36の実行を経て、処理S37で計算アクセス周期が平均アクセス周期に対して所定の範囲内であると判断され、処理S38でアクセスカウンタがインクリメントされて「1」になる。処理S39でアクセスカウンタ(=1)は、所定の閾値(=10)に達していないので、収集周期は、デフォルト値の収集周期T2のままである。
監視装置10は、端末装置C11−cの状態データを取得すべく、アクセス周期T1で要求信号を伝送路A13−aに順次に送信する(C12−1、C13−1、C14−1、・・・)。そして、この要求信号に応じて、中継親装置12は、処理S31乃至処理S33を実行することによって、応答信号を返信する(C12−2、C13−2、C14−2、・・・)と共に、処理S34乃至処理S40が実行され、アクセスカウンタが2、3、4、・・・のように1ずつカウンタアップされる。
一方、中継親装置12は、端末装置C11−cの状態データを取得すべく、上述の処理S11乃至処理S15を実行することによって、要求信号を伝送路B13−bに送信する(C101−1)。この要求信号は、中継装置Y700−y及び中継装置Z700−zに取り込まれるが、端末装置C11−cが中継装置Z700−zの管理下ではなく中継装置Y700−yの管理下であるので、中継装置Y700−yによって中継される(C101−2)。中継された要求信号は、端末装置C11−cで受信され、端末装置C11−cは、データIDに対応する状態データを収容する応答信号を伝送路C13−cに送信することによって返信する(C101−3)。この応答信号は、中継装置Y700−yで中継され(C101−4)、中継親装置12に受信される。中継親装置12は、上述の処理S16乃至処理23を実行することによって、応答信号の状態データを端末装置C11−cの状態データとして収集データテーブル40に登録すると共に、端末管理データテーブル30の収集周期T2に基づいて、次回の収集時刻を更新する。この場合の収集周期は、デフォルト値のままである。そして、中継親装置12は、デフォルト値の収集周期T2で順次に端末装置C11−cから状態データの収集を続ける(C102−1、・・・、C104−1)。
監視装置10がアクセス周期T1で順次に要求信号を送信し続けることによって(・・・、C19−1、C20−1)、これを受信する中継親装置12では、やがてアクセスカウンタが「10」となって、処理S39でアクセスカウンタ(=10)が所定の閾値(=10)に達したと判断され、処理S40で、端末装置C11−cに関し、収集データテーブル40における平均アクセス周期フィールド4032に登録されている平均アクセス周期T1が端末管理データテーブル30における収集周期フィールド3033に登録され、平均アクセス周期T1が収集周期に設定される。以後、中継親装置12は、新たに設定された収集周期T1で端末装置C11−cに対する要求信号を伝送路B13−bに送信する(C105−1)。
こうしてアクセス周期T1で順次に監視装置10から送信される要求信号(C21−1、C22−1、C23−1、・・・)に同期して、中継親装置12は、収集周期T1で順次に端末装置C11−cへ要求信号を送信する(C106−1、C107−1、・・・)。
このように図6及び図7を用いて説明した動作を中継親装置12が行うことによって、中継親装置12は、監視装置10からの要求信号における平均アクセス周期T1に、当該要求信号が状態データを要求している端末装置C11−cに対する収集周期を自動的に同期させることができる。
図9は、収集周期が平均アクセス周期に同期後における監視装置、中継親装置、中継装置及び端末装置における動作を示すシーケンス図である。
ところで、上述の動作によって、中継親装置12は、収集周期を平均アクセス周期に端末装置11ごとに同期させることができるが、次回の収集時刻は、今回の収集時刻に同期後の収集周期が加算されるだけなので、応答信号に収容される状態データは、必ずしも要求信号に対して直近に端末装置11が検知した状態データである保証がない。即ち、同期直後における監視装置10から要求信号を受信したアクセス時刻と端末装置11へ要求信号を送信する収集時刻との差tz(図9参照)がその後も維持され、監視装置10から要求信号を受信したアクセス時刻と端末装置11からの応答信号を受信する時刻(状態データを取得する時刻)との差ty(図9参照)が小さくない場合がある。
そこで、平均アクセス周期を収集周期に設定した直後における処理S19の処理において、次回の収集時刻をアクセス時刻に同期後の収集周期を加算し、保証時間txを減算することによって、要求信号に対して直近に端末装置11が検知した検出値にすることができる。即ち、(次回の収集時刻)=(アクセス時刻)+(同期後の収集周期)−(保証時間tx)である。この保証時間txは、監視装置10から要求信号を受信してから次に要求信号を受信するまでの間に、中継親装置12が端末装置11へ要求信号を送信しその応答信号を受信することができるように設定される。
なお、処理S19において、最初から(次回の収集時刻)=(アクセス時刻)+(収集周期)−(保証時間tx)により次回の収集時刻を設定するように構成すれば、要求信号に常に同期させることができるが、監視装置10の故障や伝送路A13−aの障害等の原因により、中継親装置12が要求信号を受信できなくなってしまうと、中継親装置12は、端末装置11から状態データを収集することができなくなってしまうことがあり得る。
そして、監視装置10から要求信号を受信したアクセス時刻と端末装置11からの応答信号を受信する時刻との差tyが小さいほど、監視装置10に返信する応答信号に収容される状態データは、当該要求信号に対して直近に端末装置11が検知した状態データとなる。このため、中継親装置12は、端末装置11へ要求信号を送信してから応答信号を受信するまでの所要時間tnを測定し、この所要時間tnにマージン時間tmを加算した時間を保証時間txとしてもよい。即ち、(保証時間tx)=(所要時間tn)+(マージン時間tm)である。マージン時間tmは、端末装置11への要求信号及び端末装置11からの応答信号が伝送する伝送路13におけるリトライ回数やタイムアウト時間等を考慮して決定される。このように設定すると結局、監視装置10から要求信号を受信したアクセス時刻と端末装置11からの応答信号を受信する時刻との差tyは、マージン時間tmとなる。監視装置10に返信する応答信号に収容される状態データは、当該要求信号に対してより直近に端末装置11が検知した状態データとなる。