以下に添付図面を参照して、本発明にかかるアドレス対応表生成方法、ルーティングテーブル生成方法、制御装置、アドレス対応表生成プログラムおよびルーティングテーブル生成プログラムの最良な実施の形態を詳細に説明する。なお、本発明はこれらの実施の形態に限定されるものではない。
本実施の形態について、添付図面を参照して説明する。本実施の形態にかかる警備システムは、複数のネットワークからなるシステムのアドレス対応表やルーティングテーブルを、利用者がネットワーク構成を意識する必要なく容易に設定するものである。
まず、本発明が適用される警備システムの構成例について説明する。図1は、本実施の形態にかかる警備システムを含む監視システムの構成を示すブロック図である。図2は、本実施の形態にかかる警備システムの一部の構成を示すブロック図である。
本実施の形態にかかる監視システム10は、警備システム100と、監視センタ200とを備え、警備システム100と監視センタ200とは、電話回線、無線ネットワーク、インターネットなどのネットワーク300を介して接続されている。
監視センタ200は、警備システム100とデータの送受信を行うものである。また、監視センタ200は、警備システム100の図示しないセンサが異常を検知し、警備システム100から送信された警報を受信した場合に、待機中の警備員に対して異常が検知された監視領域への出動を指示するとともに、必要に応じて警察や消防など関係機関への通報を行うセンタである。
本実施の形態にかかる警備システム100は、メインユニット101と、末端ユニット102、103、105、107、109、111、113、115(以下、すべての末端ユニットを示す場合は、末端ユニット102等という)と、ノード増設ユニット104、106、108、110、112、114(以下、すべてのノード増設ユニットを示す場合は、ノード増設ユニット104等という)と、を備えている。メインユニット101と、末端ユニット102等と、ノード増設ユニット104等とは、それぞれ複数のネットワークで接続されている。なお、各ノードには、警備システム10全体で一意となるユニットアドレスが予めロータリースイッチ等を用いて手動で設定されている。
メインユニット101は、警備システム100での階層の異なる複数のネットワークを総合的に管理するノードである。また、メインユニット101は、さらに図2に示すように、設計データ受信部1011と、ローカルアドレス設定部1012と、データ送受信部1013と、位置情報生成部1014と、ネットワーク番号付与部1015と、アドレス対応表生成部1016と、ルーティングテーブル生成部1017と、アドレス対応表記憶部1018と、ルーティングテーブル記憶部1019と、ネットワーク情報記憶部1020と、を備えている。メインユニット101は、本発明にかかる制御装置を構成するものである。
設計データ受信部1011は、ネットワーク300を介して監視センタ200から設計データを受信するものである。ここで、設計データとは、警備システム100の構成を示すデータである。具体的には、警備システム100全体のネットワークに接続されている末端ユニットの接続数とノード増設ユニットの接続数とが示されている。ここで、末端ユニットとは、1つのネットワークに接続され、さらに下位のネットワークに接続されることがないあるネットワークの末端のノードである。ノード増設ユニットとは、ネットワークを増設するノードであり、上位のネットワークと下位のネットワークとのデータのやりとりを中継するものである。なお、設計データは、監視センタ200から受信するほかに、直接FD(Flexible Disk)等の記憶媒体から読込んでもよい。
ローカルアドレス設定部1012は、メインユニット101が接続されているネットワーク(以下、メインユニット101の自ネットワークという)に接続されているノード、すなわちメインユニット101、末端ユニット102、103、ノード増設ユニット104、108に、自ネットワーク内で一意となるようなアドレス(以下、ローカルアドレスという)を設定するものである。なお、かかる処理は、トークンパッシング方式によってアクセス制御を行う既知のARCNETの機能を用いてもよい。
データ送受信部1013は、警備システム100内に接続されているノードとのデータの送受信を行うものである。
位置情報生成部1014は、警備システム100内に接続されている各ノードからアドレス情報を取得し、警備システム100内のネットワークにおけるノード増設ユニットの位置を示すノード増設位置情報を生成するものである。ここで、アドレス情報とは、ユニットアドレスとローカルアドレスの組合せをいい、ノード増設位置情報とは、メインユニット101から当該ノード増設ユニットに接続するまでに経由するノード増設ユニットのアドレス情報を示したものである。詳細は、後述する。
ネットワーク番号付与部1015は、位置情報生成部1014によって生成されたノード増設位置情報によって表されたノード増設ユニットが接続されているネットワークに対して、ネットワーク番号を付与するものである。
アドレス対応表生成部1016は、各ノード増設ユニットから受信したネットワーク番号とアドレス情報とに基づいて、アドレス対応表を生成し、アドレス対応表記憶部1018に格納するものである。ここで、アドレス対応表とは、各ノードのユニットアドレスに、ネットワーク番号およびローカルアドレスを対応付けたものである。このアドレス対応表を参照することにより、各ノードが接続されているネットワークおよび当該ネットワーク内でのアドレスを把握することができる。
アドレス対応表記憶部1018は、ノードのユニットアドレスと、ネットワーク番号およびローカルアドレスとを対応付けて記憶するものである。図3は、アドレス対応表記憶部に記憶されているアドレス対応表の一例を示す説明図である。
ルーティングテーブル生成部1017は、位置情報生成部1014によって生成されたノード増設位置情報と、ネットワーク番号付与部1015によって生成されたネットワーク番号とからルーティングテーブルを生成し、ルーティングテーブル記憶部1019に格納するものである。ここで、ルーティングテーブルとは、メインユニットやノード増設ユニット、末端ユニットが保持するデータを送信するための送信先に関する経路情報である。
ルーティングテーブル記憶部1019は、ルーティングテーブル生成部1017によって生成されたルーティングテーブルを記憶するものである。図4は、ルーティングテーブル記憶部に記憶されているルーティングテーブルの一例を示す説明図である。
ネットワーク情報記憶部1020は、メインユニット101自身のアドレス情報およびネットワーク番号(以下、ネットワーク情報という)を格納するものである。また、アドレス情報のうちのユニットアドレスは、手動で設定された時点でネットワーク情報記憶部1020に予め格納されている。
末端ユニット102は、上述したようにネットワークの末端のノードであり、メインユニットやノード増設ユニット以外のノードである。末端ユニット102は、図2に示すように、データ送受信部1021と、ルーティングテーブル記憶部1022と、ネットワーク情報記憶部1023と、を備えている。また、他の末端ユニットも、末端ユニット102と同様の機能、構成を備えている。末端ユニットは、本発明にかかる末端装置を構成するものである。
データ送受信部1021は、メインユニット101、すなわち上位のノードからの要求に従って、ユニットアドレスを送信し、メインユニット101のローカルアドレス設定部1012によって設定されたローカルアドレスを受信し、ネットワーク情報記憶部1023に格納するものである。
ルーティングテーブル記憶部1022は、メインユニット101から送信されたルーティングテーブルを記憶するものである。上述したメインユニット101におけるルーティングテーブル記憶部1019と同様の機能、構成を備える。
ネットワーク情報記憶部1023は、末端ユニット102自身のネットワーク情報を記憶するものである。また、ネットワーク情報のうちのユニットアドレスは、手動で予め設定された時点でネットワーク情報記憶部1023に格納されている。
ノード増設ユニット104は、さらに図2に示すようにデータ送受信部1041と、ローカルアドレス設定部1042と、アドレス情報生成部1043と、ネットワーク番号抽出部1044と、ルーティングテーブル生成部1045と、ルーティングテーブル記憶部1046と、ネットワーク情報記憶部1047と、を備えている。なお、他のノード増設ユニットも、ノード増設ユニット104と同様の機能、構成を備えている。ノード増設ユニットは、本発明にかかる副制御装置を構成するものである。
データ送受信部1041は、上位または下位のネットワークに接続されている他のノードとのデータを送受信するものである。ローカルアドレス設定部1042は、ノード増設ユニット104によって増設されたネットワーク(下位のネットワーク)を構成するノード、すなわち末端ユニット105、ノード増設ユニット104、106に対して自ネットワーク内で一意となるようなアドレス、すなわちローカルアドレスを設定するものである。なお、かかる処理は、上述した既知であるARCNET通信方式の機能を用いてもよい。
アドレス情報生成部1043は、下位のネットワークからアドレス情報を受信した場合に、アドレス情報に自アドレス情報を追加し、新たなアドレス情報を生成するものである。ネットワーク番号抽出部1044は、上位のノード増設ユニットから送信されたノード増設位置情報およびネットワーク番号から、自ネットワークのネットワーク番号を抽出するものである。ルーティングテーブル生成部1045は、メインユニット101から受信したノード増設位置情報から自ネットワークのルーティングテーブルを生成するものである。
ルーティングテーブル記憶部1046は、上位のネットワークのルーティングテーブルおよび下位のネットワークのルーティングテーブルを記憶するものである。上位のネットワークのルーティングテーブルは、メインユニット101によって生成され、送信される。下位のネットワークのルーティングテーブルは、ルーティングテーブル生成部1045によって生成される。ルーティングテーブル記憶部1046は、上述したメインユニット101におけるルーティングテーブル記憶部1019と同様の構成である。
ネットワーク情報記憶部1047は、ノード増設ユニット104自身のネットワーク情報を記憶するものである。また、ネットワーク情報のうちのユニットアドレスは、手動で予め設定された時点でネットワーク情報記憶部1047に格納される。
次に、以上のように構成されている警備システムによるアドレス対応表生成処理について説明する。図5−1、図5−2、図5−3は、メインユニット、ノード増設ユニットが行うアドレス対応表生成処理手順を示すフローチャートである。なお、処理手順を分かりやすくするために、メインユニット101と、ノード増設ユニット104と、ノード増設ユニット106とのやりとりに絞ったフローチャートとする。なお、メインユニット101とノード増設ユニット108や、ノード増設ユニット108とノード増設ユニット110等の処理は、これから詳述する処理手順と同様の処理が行われる。
まず、メインユニット101の電源がONにされることにより、メインユニット101が起動する。メインユニット101のローカルアドレス設定部1012は、各ネットワーク内のノードに対してネットワーク内で一意に定まるローカルアドレスを自動設定する(ステップS501)。具体的には、メインユニット101のローカルアドレス設定部1012および各ノード増設ユニットのローカルアドレス設定部が、各ノード増設ユニットの下位のネットワークに接続されている各ノードに対して、当該ネットワーク内で一意に定まるアドレスを割当てることによって実現する。各ノードに対して一意に定められたローカルアドレスは、例えばノード増設ユニット104の場合はネットワーク情報記憶部1047に格納される。なお、上述したようにARCNETの機能を用いて実現してもよい。
次に、設計データ受信部1011は、監視センタ200から送信された設計データを受信する(ステップS502)。図1に示す警備システム100の設計データは、“ノード増設ユニットの数量:6、末端ユニットの数量:8”となる。データ送受信部1013は、全ノードに対してアドレス情報の返信要求をブロードキャストする(ステップS503)。
ノード増設ユニット104のデータ送受信部1041は、アドレス情報の返信要求を受信する(ステップS504)。データ送受信部1041は、アドレス情報をメインユニット101に送信する(ステップS505)。具体的には、ネットワーク情報記憶部1047に格納されているノード増設ユニット104のユニットアドレス“UA004”とローカルアドレス“AA004”をメインユニット101に送信する。なお、末端ユニットは、アドレス情報を返信しない。
データ送受信部1041は、ノード増設ユニット106のデータ送受信部にアドレス情報の返信要求を送信する(ステップS506)。なお、ノード増設ユニット104は、自ネットワーク内の全ノードに対して、アドレス情報の返信要求を送信する。ノード増設ユニット106のデータ送受信部は、ノード増設ユニット104から送信されたアドレス情報の返信要求を受信する(ステップS507)。ノード増設ユニット106のデータ送受信部は、ノード増設ユニット106自身のアドレス情報を送信する(ステップS508)。具体的には、ネットワーク情報記憶部に格納されているノード増設ユニット106のユニットアドレス“UA006”とローカルアドレス“AA003”をノード増設ユニット104に送信する。
ノード増設ユニット104において、データ送受信部1041は、ノード増設ユニット106から送信されたノード増設ユニット106のアドレス情報を受信する(ステップS509)。アドレス情報生成部1043は、ノード増設ユニット106から送信されたノード増設ユニット106のアドレス情報にノード増設ユニット104自身のアドレス情報を追加した新たなアドレス情報を生成する(ステップS510)。データ送受信部1041は、新たなアドレス情報をメインユニット101に送信する(ステップS511)。
メインユニット101において、データ送受信部1013は、ノード増設ユニット104から送信されたアドレス情報を受信する(ステップS512)。位置情報生成部1014は、ノード増設ユニットの接続数のアドレス情報が返信されたか否かを判断する(ステップS513)。ノード増設ユニットの接続数のアドレス情報が返信されていないと判断した場合には(ステップS513:No)、ステップS512に戻り、さらにアドレス情報を受信する。
ノード増設ユニットの接続数のアドレス情報が返信されたと判断した場合には(ステップS513:Yes)、位置情報生成部1014は受信されたアドレス情報からノード増設位置情報を生成する(ステップS514)。ネットワーク番号付与部1015は、生成されたノード増設位置情報によって位置が特定されたノード増設ユニットに対してネットワーク番号を付与する(ステップS515)。全ノード増設ユニットに対してノード増設位置情報とネットワーク番号を送信する(ステップS516)。
ノード増設ユニット104において、データ送受信部1041は、ノード増設位置情報とネットワーク番号を受信する(ステップS517)。ネットワーク番号抽出部1044は、ノード増設位置情報から、自アドレス情報を廃棄する(ステップS518)。ネットワーク番号抽出部1044は、自アドレス情報を廃棄したノード増設位置情報のうち、アドレス情報が存在しなくなったノード増設位置情報に対応するネットワーク番号をネットワーク情報記憶部1047に格納する(ステップS519)。この場合、ネットワーク番号“02”が格納される。データ送受信部1041は、自アドレス情報を廃棄したノード増設位置情報のうち、先頭のアドレス情報がノード増設ユニット106のアドレス情報であるノード増設位置情報とネットワーク番号をノード増設ユニット106に送信する(ステップS520)。
ノード増設ユニット106において、データ送受信部は、ノード増設位置情報とネットワーク番号を受信する(ステップS521)。ネットワーク番号抽出部は、ノード増設位置情報から、自アドレス情報を廃棄する(ステップS522)。ネットワーク番号抽出部は、ネットワーク番号をネットワーク情報記憶部に格納する(ステップS523)。
メインユニット101において、データ送受信部1013は、自ネットワーク内の各ノードにネットワーク番号を送信する(ステップS524)。メインユニット101の自ネットワークのネットワーク番号は“01”とする。なお、各ノードは、メインユニット101から送信されたネットワーク番号をネットワーク情報記憶部に格納する。
ノード増設ユニット104において、データ送受信部1041は、下位のネットワーク内の各ノードにネットワーク番号を送信する(ステップS525)。ここで、ノード増設ユニット104の下位のネットワークのネットワーク番号は、ネットワーク情報記憶部1047に下位のネットワークのネットワーク番号として記憶されている“02”である。なお、各ノードは、ノード増設ユニット104から送信されたネットワーク番号をネットワーク情報記憶部に格納する。さらに、データ送受信部1041は、下位のネットワークの各ノードから送信されたネットワーク情報を受信する(ステップS526)。
ノード増設ユニット106において、データ送受信部は、下位のネットワーク内の各ノードにネットワーク番号を送信する(ステップS527)。ここで、ノード増設ユニット106の下位のネットワークのネットワーク番号は、ネットワーク情報記憶部に下位のネットワークのネットワーク番号として記憶されている“04”である。なお、各ノードは、ノード増設ユニット106から送信されたネットワーク番号をネットワーク情報記憶部に格納する。さらに、データ送受信部は、下位のネットワークの各ノードから送信されたネットワーク情報を受信する(ステップS528)。データ送受信部は、下位のネットワークの各ノードから送信されたネットワーク情報をノード増設ユニット104に送信する(ステップS529)。
ノード増設ユニット104において、データ送受信部1041は、ノード増設ユニット106から送信されたネットワーク情報を受信する(ステップS530)。データ送受信部1041は、各ノードから送信されたネットワーク情報およびノード増設ユニット106から送信されたネットワーク情報をメインユニット101に送信する(ステップS531)。
メインユニット101において、データ送受信部1013は、各ノードから送信されたネットワーク情報およびノード増設ユニット104から送信されたネットワーク情報を受信する(ステップS532)。アドレス対応表生成部1016は、受信したネットワーク情報からアドレス対応表を生成し(ステップS533)、アドレス対応表記憶部1018に格納する(ステップS534)。
図6は、アドレス対応表生成処理におけるアドレス情報の送信順序をネットワークの階層に対応させた説明図である。図5−1〜図5−3で説明したアドレス対応表生成処理では、まずメインユニット101は、1階層目のネットワークに接続されている全ノードに対してアドレス情報の返信要求をし、ノード増設ユニットからのアドレス情報を受信する。次に、メインユニット101は、2階層目のネットワークに接続されている全ノードに対してアドレス情報の返信要求をし、ノード増設ユニットからのアドレス情報を受信する。さらに、順々にn階層目のネットワークに接続されている全ノード増設ユニットのアドレス情報を受信して、システム上に接続されている全ノード増設ユニットのアドレス情報を収集し、アドレス対応表を生成する。
このように、全ネットワーク内で一意に定まるユニットアドレスを予め各ノードに設定しておくことにより、利用者がネットワーク構成を意識する必要なく、アドレス対応表が生成される。よって、利用者はネットワークに接続されるノードの総数を把握し、各ノードに接続順序に対応するユニットアドレスのみを設定すれば、各ノードにネットワーク番号等の煩雑な設定を行うことなく、ネットワーク内の各ノードへのアクセスが可能となる。また、既に構築されているネットワーク環境に、新たにノードを接続する場合においても、ネットワーク構成を把握する必要なく、新たに接続するノードにユニットアドレスを設定してネットワークに接続することにより、ネットワーク環境を構築することができる。
特に、警備システムでは、既に警備対象となっている建物において新たに警備対象のテナントが増えたり、監視カメラを増設する場合に、警備システム全体で接続されているユニット数を把握し、新たに接続する機器に対してユニットアドレスを設定することによって、容易にネットワーク環境の設定を行うことができる。
次に、アドレス対応表生成処理の他の処理例について説明する。図7は、メインユニット、ノード増設ユニットが行うアドレス対応表生成処理手順を示すフローチャートである。かかる処理では、アドレス情報の返信を要求している階層にノード増設ユニットが接続されている場合、当該ノード増設ユニットの下位のネットワークに接続されているノードに対して返信を要求し、下位のノードからの返信を待って、上位のノード増設ユニットにアドレス情報を返信する点が図5−1〜図5−3で示した処理と異なる。なお、ステップS701〜ステップS702、ステップS711以降の処理は、上述した図5−1〜図5−3のステップS501〜ステップS502、ステップS524以降の処理と同様であるため、図5−1〜図5−3およびその説明を参照し、ここでは、異なる部分のみ説明する。
メインユニット101のデータ送受信部1013は、全ノードに対してアドレス情報の返信要求をブロードキャストする(ステップS703)。ノード増設ユニット104のデータ送受信部1041は、アドレス情報の返信要求を受信する(ステップS704)。データ送受信部1041は、ノード増設ユニット106にアドレス情報の返信要求を送信する(ステップS705)。ノード増設ユニット106のデータ送受信部は、アドレス情報の返信要求を受信する(ステップS706)。ノード増設ユニット106は、さらに下位のノードにアドレス情報の返信要求を送信し、所定の時間返信がなかった場合に、データ送受信部はアドレス情報をノード増設ユニット104に送信する(ステップS707)。
ノード増設ユニット104は、ノード増設ユニット106から送信されたアドレス情報を受信し(ステップS708)、アドレス情報生成部1043は、ノード増設ユニット106から送信されたノード増設ユニット106のアドレス情報にノード増設ユニット104自身のアドレス情報を追加した新たなアドレス情報を生成する(ステップS709)。データ送受信部1041は、新たなアドレス情報およびノード増設ユニット104自身のアドレス情報をメインユニット101に送信する(ステップS710)。メインユニット101において、データ送受信部1013は、ノード増設ユニット104から送信されたアドレス情報を受信する(ステップS711)。
このように、ノード増設ユニット104において、下位のノード増設ユニットから送信されるアドレス情報を待って、さらにノード増設ユニット104自身のアドレス情報と下位のノード増設ユニットから送信されたアドレス情報をメインユニット101に送信することによって、ノード増設ユニットの接続数をカウントすることなく、全ノード増設ユニットのアドレス情報を収集することができる。
図8は、アドレス対応表生成処理におけるアドレス情報の送信順序をネットワークの階層に対応させた説明図である。図7で説明したようにアドレス対応表生成処理では、メインユニット101は、1階層目のネットワークに接続されているノードに対して個々にアドレス情報の返信を要求する。1階層目のネットワークにノード増設ユニットが接続されている場合は、当該ノード増設ユニットの下位のネットワークに接続されているノードに対してアドレス情報の返信を要求する。さらに、最下位の階層であるn階層目までアドレス情報の返信を要求された時点で、順次上位のノード増設ユニットにアドレス情報を送信し、最終的にメインユニット101に対して全ノード増設ユニットのアドレス情報が送信され、メインユニット101はアドレス対応表を生成する。
図9は、本実施の形態にかかる警備システムにおけるアドレス対応表生成処理におけるアドレス情報の送信順序をネットワークの階層に対応させた説明図である。図7で説明したように、図9に示すメインユニット101は、ネットワークに接続されている全ノードに対してアドレス情報の返信要求を送信する。メインユニット101からアドレス情報の返信要求を受信したノード増設ユニット104は、下位のネットワークに接続されている全ノードに対してアドレス情報の返信要求を送信する。ノード増設ユニット104からアドレス情報の返信要求を受信したノード増設ユニット106は、下位のネットワークに接続されている全ノードに対してアドレス情報の返信要求を送信する。
ノード増設ユニット106は、下位のネットワークに接続されている全ノード増設ユニットからのアドレス情報の受信を待って、所定の時間が経過した場合には、下位のネットワークにノード増設ユニットが接続されていないと判断し、ノード増設ユニット106自身のアドレス情報をノード増設ユニット104に送信する。ノード増設ユニット104は、下位のネットワークに接続されている全ノード増設ユニットからのアドレス情報の受信を待って、ノード増設ユニット104自身のアドレス情報および下位のネットワークに接続されているノード増設ユニット106のアドレス情報をメインユニット101に送信する。
ノード増設ユニット108についても、同様に下位のネットワークへのアドレス情報の返信要求に対するノード増設ユニットの返信を待って、メインユニット101にアドレス情報を送信する。これにより、メインユニット101では、システムに接続されているノード増設ユニットの接続数をカウントすることなく、全ノード増設ユニットのアドレス情報を収集することができる。
次に、以上のように構成されている警備システムによるルーティングテーブル生成処理について説明する。図10−1、図10−2は、メインユニット、ノード増設ユニットが行うルーティングテーブル生成手順を示すフローチャートである。なお、処理手順を分かりやすくするために、メインユニット101と、ノード増設ユニット104と、ノード増設ユニット106とのやりとりに絞ったフローチャートとする。なお、メインユニット101とノード増設ユニット108や、ノード増設ユニット108とノード増設ユニット110等の処理についても、これから詳述する処理と同様の処理が行われる。
まず、メインユニット101において、ルーティングテーブル生成部1017は、ノード増設位置情報からルーティングテーブルを生成する(ステップS1001)。詳細は、後述する。次に、ルーティングテーブル生成部1017は、生成されたルーティングテーブルをルーティングテーブル記憶部1019に格納する(ステップS1002)。データ送受信部1013は、ルーティングテーブルを自ネットワーク内の全ノードに送信する(ステップS1003)。ノード増設ユニット104において、データ送受信部1041は、ルーティングテーブルを受信し(ステップS1004)、ルーティングテーブル記憶部1046に上位のネットワークのルーティングテーブルとして格納する(ステップS1005)。
メインユニット101において、データ送受信部1013は、ノード増設ユニット104にノード増設位置情報を送信する(ステップS1006)。ノード増設ユニット104において、データ送受信部1041はノード増設位置情報を受信する(ステップS1007)。ルーティングテーブル生成部1045は、自ユニット、すなわちノード増設ユニット104用のノード増設ユニットデータを生成する(ステップS1008)。
次に、ルーティングテーブル生成部1045は、自ユニット用のノード増設ユニットデータと、下位のネットワークのアドレスからルーティングテーブルを生成し(ステップS1009)、ルーティングテーブル記憶部1046に下位のネットワークのルーティングテーブルとして格納する(ステップS1010)。データ送受信部1041は、自ネットワーク内の全ノードにルーティングテーブルを送信する(ステップS1011)。ノード増設ユニット106のデータ送受信部は、ルーティングテーブルを受信し(ステップS1012)、ルーティングテーブル記憶部に上位のネットワークのルーティングテーブルとして格納する(ステップS1013)。
このように、全ネットワーク内で一意に定まるユニットアドレスを予め各ノードに設定しておくことにより、利用者がネットワーク構成を意識する必要なく、ルーティングテーブルが生成される。よって、ネットワークに接続されるノードの総数を把握して各ノードにユニットアドレスのみを設定すれば、ノードごとにネットワーク番号の設定等の煩雑な作業を行うことなく、ルーティングテーブルが構築され、ネットワーク内の各ノードへの効率的なアクセスが可能となる。
特に、警備システムにおいて、新たに警備対象のテナントが増えたり、監視カメラを増設したりした場合に、警備システム全体で接続されている機器数を把握しておけば、機器に対して利用者が煩雑な作業を行うことなく、容易にネットワーク環境を設定することができる。
次に、図5−1、図5−2に示したアドレス対応表生成処理について、警備システム100の構成を用いて説明する。図11は、各ノードにユニットアドレスが設定された一例を示す説明図である。例えば、メインユニット101には、ユニットアドレスとして“UA001”が設定され、末端ユニット115には、ユニットアドレス“UA015”が設定されている。このように、ユニットアドレスは、利用者がネットワークの構成を意識する必要はなく、警備システムに接続されている機器数のみを意識して接続数に対応するアドレスを設定すれば、ネットワークに関する設定が可能となる。よって、新たにユニットを増設する際には、ユニットアドレスとして“UA016”を設定して接続すればよい。
まず、メインユニット101の電源がONにされることにより、メインユニット101が起動する。メインユニット101のローカルアドレス設定部1012は、各ネットワーク内のノードに対してネットワーク内で一意に定まるローカルアドレスを自動設定し、各ノードのネットワーク情報記憶部に格納する(ステップS501)。図12は、各ノードにローカルアドレスが設定された一例を示す説明図である。例えば、最上位のネットワークを構成するメインユニット101、末端ユニット102、末端ユニット103、ノード増設ユニット104、ノード増設ユニット108に対して、ネットワークで一意になるようなローカルアドレス“AA001”〜“AA005”が設定される。ノード増設ユニット104やノード増設ユニット108については、下位のネットワークにも接続されているため、下位のネットワークでのローカルアドレスとして、ノード増設ユニット104には、さらに“AA001”が設定され、ノード増設ユニット108には、“AA001”が設定される。
次に、メインユニット101の設計データ受信部1011は、監視センタ200から設計データを受信する(ステップS502)。ここでは、設計データは、“ノード増設ユニットの数量:6、末端ユニットの数量:8”となる。位置情報生成部1014は、全ノードに対してアドレス情報の返信要求をブロードキャストする(ステップS503)。図13は、メインユニット101が自ネットワークの全ノードにアドレス情報の返信要求をブロードキャストした例を示す説明図である。
全ノードのデータ送受信部、例えばノード増設ユニット104のデータ送受信部1041は、アドレス情報の返信要求を受信する(ステップS504)。アドレス情報の返信要求を受信したノードがノード増設ユニットである場合、データ送受信部1041は、アドレス情報をメインユニット101に送信する(ステップS505)。図14は、ノード増設ユニットがアドレス情報を送信した例を示す説明図である。最上位のネットワークでは、ノード増設ユニット104およびノード増設ユニット108から、アドレス情報が送信されることとなる。例えば、ノード増設ユニット104から送信されるアドレス情報は、ユニットアドレス“UA004”とローカルアドレス“AA004”である。メインユニット101は、ノード増設ユニット104およびノード増設ユニット108から送信されたアドレス情報を受信する(ステップS512)。図15は、メインユニットが1階層目のノード増設ユニットから受信したアドレス情報を示す説明図である。
ノード増設ユニット104のデータ送受信部1041は、全ノードに対してアドレス情報の返信要求を送信する。一例として、ノード増設ユニット106にアドレス情報の返信要求を送信する(ステップS506)。図16は、ノード増設ユニット104、108が自ネットワークの全ノードにアドレス情報の返信要求を送信した例を示す説明図である。例えば、ノード増設ユニット106のデータ送受信部は、ノード増設ユニット104から送信されたアドレス情報の返信要求を受信する(ステップS507)。ノード増設ユニット106の送受信部は、アドレス情報を送信する(ステップS508)。具体的には、アドレス情報は、ユニットアドレス“UA006”とローカルアドレス“AA003”である。図17は、2階層目のノード増設ユニットがアドレス情報を送信した例を示す説明図である。ここで、図18は、ノード増設ユニット106から送信されたアドレス情報を示す説明図である。図19は、ノード増設ユニット110およびノード増設ユニット112から受信したアドレス情報を示す説明図である。
ノード増設ユニット104のデータ送受信部1041は、ノード増設ユニット106から送信されたアドレス情報を受信し(ステップS509)、アドレス情報生成部1043は、ノード増設ユニット106から送信されたアドレス情報にノード増設ユニット104自体のアドレス情報を追加したアドレス情報を生成する(ステップS510)。図20は、上位のノード増設ユニットによって生成されるアドレス情報の構成を示す説明図である。図20に示すように、配下のアドレス構成に自ノード増設ユニットのアドレス情報を追加した構成のアドレス情報を生成し、さらに上位のノード増設ユニットに送信する。データ送受信部1041は、生成されたアドレス情報をメインユニット101に送信する(ステップS511)。
メインユニット101のデータ送受信部1013は、送信されたアドレス情報を受信する(ステップS512)。図21は、1階層目のノード増設ユニットが2階層目のノード増設ユニットのアドレス情報を送信した例を示す説明図である。図22は、2階層目のノード増設ユニットのアドレス情報を示す説明図である。
さらに、ステップS507〜ステップS512と同様の処理となるが、3階層目のノード増設ユニットのアドレス情報を取得する処理について説明する。ノード増設ユニット106のデータ送受信部は、全ノードに対してアドレス情報の返信要求を送信する。この場合、末端ユニット107にアドレス情報の返信要求が送信される。図23は、2階層目のノード増設ユニットが自ネットワークの全ノードにアドレス情報の返信要求を送信した例を示す説明図である。例えば、末端ユニット107のデータ送受信部は、ノード増設ユニット106から送信されたアドレス情報の返信要求を受信する。しかし、末端ユニット107は、ノード増設ユニットではないため、アドレス情報を送信しない。図24は、3階層目のノード増設ユニットがアドレス情報を送信した例を示す説明図である。この場合、ノード増設ユニット114のみがアドレス情報を送信する。図25は、ノード増設ユニット114から送信されたアドレス情報を示す説明図である。
ノード増設ユニット112のデータ送受信部は、ノード増設ユニット114から送信されたアドレス情報を受信し、アドレス情報生成部は、上述した図20と同様にノード増設ユニット114から送信されたアドレス情報にノード増設ユニット112自体のアドレス情報を追加したアドレス情報を生成する。図26は、上位のノード増設ユニットによって生成されるアドレス情報の構成を示す説明図である。図26に示すように、配下のノード増設ユニット114のアドレス構成にノード増設ユニット112のアドレス構成を追加した構成のアドレス情報を生成し、さらに上位のノード増設ユニット108に送信する。図27は、2階層目のノード増設ユニットがアドレス情報を送信した例を示す説明図である。ノード増設ユニット112のデータ送受信部は、生成されたアドレス情報をノード増設ユニット108のデータ送受信部に送信する。
ノード増設ユニット108のデータ送受信部は、ノード増設ユニット112から送信されたアドレス情報を受信する。図28は、上位のノード増設ユニットによって生成されるアドレス情報の構成を示す説明図である。ノード増設ユニット108のアドレス情報生成部は、ノード増設ユニット112からの受信データであるアドレス情報にノード増設ユニット108自体のアドレス情報を追加したアドレス情報を生成する。図29は、ノード増設ユニット108によって生成されるアドレス情報の構成を示す説明図である。図29に示すアドレス情報が生成され、さらに最上位のメインユニット101に送信される。図30は、1階層目のノード増設ユニットがアドレス情報を送信した例を示す説明図である。
図31は、n階層のネットワークを示す説明図である。図31に示すようなn階層のネットワークであっても、上述したように配下のアドレス情報を次々に追加していくことにより、最下位のノード増設ユニットの位置情報を得ることができる。図32は、n階層のノード増設ユニットの位置情報の構成を示す説明図である。
メインユニット101の位置情報生成部1014は、ノード増設ユニットの接続数のアドレス情報が返信されたか否かを判断する(ステップS513)。ノード増設ユニットの接続数のアドレス情報が返信されていないと判断した場合には(ステップS513:No)、ステップS512に戻り、さらにアドレス情報を受信する。なお、所定の時間が経過しても、返信しないノード増設ユニットがある場合は、さらにブロードキャストで送信を要求してもよい。図33は、全ネットワークの全ノードに送信要求をブロードキャストした例を示す説明図である。ノード増設ユニットは、送信要求を受信すると、自ネットワークのノードに対してブロードキャストで転送する。ブロードキャストによる送信要求の後、一定時間経過しても応答がない場合は、異常として監視センタに通知する。
ノード増設ユニットの接続数のアドレス情報が返信されたと判断した場合には(ステップS513:Yes)、位置情報生成部1014は受信されたアドレス情報からノード増設位置情報を生成する(ステップS514)。ネットワーク番号付与部1015は、生成されたノード増設位置情報によって位置が特定されたノード増設ユニットに対してネットワーク番号を付与する(ステップS515)。図34は、ノード増設位置情報に対してネットワーク番号を付与した一例を示す説明図である。なお、最上位のネットワークはネットワーク番号が“01”となる。メインユニット101のデータ送受信部1013は、全ノード増設ユニットに対してノード増設位置情報とネットワーク番号を送信する(ステップS516)。図35は、メインユニットからノード増設位置情報とネットワーク番号を送信するノード増設ユニットを示す説明図である。
具体的には、図34に示すようなノード増設位置情報とネットワーク番号とからなる1列分のデータ、すなわちノード増設位置情報“004、004”、ネットワーク番号“02”を、ノード増設位置情報の先頭のローカルアドレス“004”のノード、すなわちノード増設ユニット104に送信される。
ノード増設ユニット104のデータ送受信部1041は、ノード増設位置情報とネットワーク番号を受信する(ステップS517)。データ送受信部1041は、ノード増設位置情報から自身のアドレス情報を廃棄し(ステップS518)、ノード増設位置情報に送信先が存在しなければ、ネットワーク情報記憶部1047にネットワーク番号を格納する(ステップS519)。具体的には、ネットワーク番号として“02”が格納される。
図36は、ローカルアドレス“004”のノード、すなわちノード増設ユニット104に送信されるノード増設位置情報とネットワーク番号とを示す説明図である。網掛け領域のデータは、上述したとおり、ノード増設ユニット104自身のアドレス情報を廃棄すれば、送信先が存在しないため、ノード増設ユニット104宛のデータであり、ネットワーク番号“02”は、ノード増設ユニット104のネットワーク番号である。2番目の領域のデータは、ノード増設ユニット104自身のアドレス情報を廃棄しても、“003”、“006”のデータが存在するため、ノード増設ユニット104の下位のネットワークのローカルアドレス“003”、すなわちノード増設ユニット106に送信される。
図37は、ノード増設ユニット106に送信されたノード増設位置情報とネットワーク番号とを示す説明図である。送信されたデータは、ノード増設ユニット106自身のアドレス情報を廃棄すれば、送信先が存在しないため、ノード増設ユニット106宛のデータであり、ネットワーク番号“04”は、ノード増設ユニット106のネットワーク番号となる。
図38は、ローカルアドレス“005”のノード、すなわちノード増設ユニット108に送信されるノード増設位置情報とネットワーク番号とを示す説明図である。ノード増設ユニット108において、ノード増設ユニット108のアドレス情報である“005”、“008”を廃棄すると、網掛け領域は送信先が残らないため、かかるデータはノード増設ユニット108宛のデータであり、ネットワーク番号“03”は、ノード増設ユニット108のネットワーク番号となる。
2番目の領域のデータは、ノード増設ユニット108自身のアドレス情報を廃棄しても、“003”、“010”のデータが存在するため、ノード増設ユニット108の下位のネットワークのローカルアドレス“003”、すなわちノード増設ユニット110に送信される。また、3番目と4番目の領域のデータは、ノード増設ユニット108自身のアドレス情報を廃棄しても、“004”、“012”および“004”、“012”、“003”、“014”のデータが存在するため、ノード増設ユニット108の下位のネットワークのローカルアドレス“004”、すなわちノード増設ユニット112に送信される。
図39は、ノード増設ユニット110に送信されるノード増設位置情報とネットワーク番号とを示す説明図である。送信されたデータは、ノード増設ユニット110自身のアドレス情報を廃棄すれば、送信先が存在しないため、ノード増設ユニット110宛のデータであり、ネットワーク番号“05”は、ノード増設ユニット110のネットワーク番号となる。
図40は、ノード増設ユニット112に送信されるノード増設位置情報とネットワーク番号とを示す説明図である。網掛け領域のデータは、ノード増設ユニット112自身のアドレス情報を廃棄すれば、送信先が存在しないため、ノード増設ユニット112宛のデータであり、ネットワーク番号“06”は、ノード増設ユニット112のネットワーク番号となる。2番目の領域のデータは、ノード増設ユニット112自身のアドレス情報を廃棄しても、“003”、“014”のデータが存在するため、ノード増設ユニット112の下位のネットワークのローカルアドレス“003”、すなわちノード増設ユニット114に送信される。
図41は、ノード増設ユニット114に送信されるノード増設位置情報とネットワーク番号とを示す説明図である。網掛け領域のデータは、ノード増設ユニット114自身のアドレス情報を廃棄すれば、送信先が存在しないため、ノード増設ユニット114宛のデータであり、ネットワーク番号“07”は、ノード増設ユニット114のネットワーク番号となる。
図5−3のフローチャートに戻り、メインユニットのデータ送受信部1013は、自ネットワーク内の各ノードにネットワーク番号を送信する(ステップS524)。また、ノード増設ユニット104のデータ送受信部1041は、自ネットワーク内の各ノードにネットワーク番号を送信する(ステップS525)。ノード増設ユニット106のデータ送受信部は、自ネットワーク内の各ノードにネットワーク番号を送信する(ステップS527)。図42は、メインユニットおよび各ノード増設ユニットが自ネットワーク内の全ノードにネットワーク番号を送信する例を示す説明図である。例えば、ノード増設ユニット104は、下位のネットワークのネットワーク番号“02”を自ネットワーク内の各ノード、すなわち末端ユニット105、ノード増設ユニット106に送信する。各ノードは、ネットワーク情報記憶部にネットワーク番号を格納する。
ノード増設ユニット104のデータ送受信部1041は、自ネットワークの各ノードからネットワーク情報を受信し(ステップS526)、メインユニット101に送信する(ステップS531)。また、ノード増設ユニット106のデータ送受信部は、自ネットワークの各ノードからネットワーク情報を受信し(ステップS528)、ノード増設ユニット104に送信する(ステップS529)。ノード増設ユニット104のデータ送受信部1041は、ノード増設ユニット106から送信されたネットワーク情報を受信し(ステップS530)、メインユニット101に送信する(ステップS531)。メインユニットは、各ノードから送信されるネットワーク情報を受信する(ステップS532)。
メインユニット101のアドレス対応表生成部1016は、受信したネットワーク情報からアドレス対応表を生成し(ステップS533)、アドレス対応表記憶部1018に格納する(ステップS534)。このようにして生成されたアドレス対応表は、上述した図3に示される。
図43は、警備システム100における各ノードのユニットアドレス、ローカルアドレスおよびネットワーク番号を示す説明図である。上述した処理により、ユニットアドレスのみが設定されていた警備システムの各ノードに対して、ネットワーク番号とローカルアドレスが設定され、メインユニットにおいてアドレス対応表が保持される。
次に、このような設定がなされた警備システムの各ノード増設ユニットに対して、ルーティングテーブルを設定する処理を図10−1および図10−2を参照して説明する。
まず、メインユニット101のルーティングテーブル生成部1017は、ノード増設位置情報とネットワーク番号からルーティングテーブルを生成する(ステップS1001)。ここで、ルーティングテーブルを生成する具体的な処理について説明する。図44は、ノード増設位置情報にメインユニット101のアドレス情報を追加した例を示す説明図である。ルーティングテーブル生成部1017は、ノード増設位置情報のデータにメインユニット101のアドレス情報である“001”、“001”を追加する。図45は、ノード増設位置情報とネットワーク番号から先頭のアドレス情報を除外するとともに、先頭のアドレス情報を保持した例を示す説明図である。図44に示したノード増設位置情報から、先頭のアドレス情報である“001”、“001”を除外し、先頭のアドレス情報“001”、“001”を別途保持する。
図46は、ノード増設位置情報とネットワーク番号、先頭のアドレス情報からルーティングテーブルを生成する例を示す説明図である。ルーティングテーブルは、ネットワーク番号とノード増設位置情報の先頭のアドレス情報とを組み合わせることによって生成する。さらに、ネットワーク番号がないネットワーク(この場合は“01”)は自ネットワークであるから、別途保持しているアドレス情報を対応させ、ネットワーク番号“01”、ローカルアドレス“001”、ユニットアドレス“001”をルーティングテーブルに加える。これにより、メインユニット101のルーティングテーブルが生成される。
次に、ルーティングテーブル生成部1017は、生成されたルーティングテーブルをルーティングテーブル記憶部1019に格納する(ステップS1002)。データ送受信部1013は、ルーティングテーブルを自ネットワーク内の全ノードに送信する(ステップS1003)。図47は、メインユニット101が自ネットワークの全ノードに対してルーティングテーブルを送信した例を示す説明図である。図47に示すように、メインユニット101は、末端ユニット102、末端ユニット103、ノード増設ユニット104、ノード増設ユニット108にルーティングテーブルを送信する。但し、ルーティングテーブルを受信したノード増設ユニットは、下位のネットワークのノードにルーティングテーブルを転送しない。
ノード増設ユニット104のデータ送受信部1041は、ルーティングテーブルを受信し(ステップS1004)、ルーティングテーブル記憶部1046に上位のネットワークのルーティングテーブルとして格納する(ステップS1005)。なお、他のノードも、ルーティングテーブルを受信し、ルーティングテーブル記憶部に上位のネットワークのルーティングテーブルとして格納する。
メインユニット101のデータ送受信部1013は、ノード増設ユニット104にノード増設位置情報とネットワーク番号を送信する(ステップS1006)。図48は、メインユニットからノード増設ユニットにノード増設位置情報とネットワーク番号を送信する例を示す説明図である。図48に示すように、メインユニット101は、ノード増設ユニット104およびノード増設ユニット108にノード増設位置情報とネットワーク番号を送信する。図49は、ノード増設ユニット104およびノード増設ユニット108に送信されたノード増設位置情報とネットワーク番号の一例を示す説明図である。
ノード増設ユニット104での処理を説明すると、データ送受信部1041はノード増設位置情報とネットワーク番号を受信する(ステップS1007)。ルーティングテーブル生成部1045は、自ユニット、すなわちノード増設ユニット104用のノード増設ユニットデータを生成する(ステップS1008)。まず、ルーティングテーブル生成部1045は、図49に示すノード増設位置情報をデータ長でソートし、データ長が最も短いデータを廃棄する。この場合、アドレス情報が“004”、“004”と“005”、“008”のデータが廃棄される。
図50は、各ノード増設ユニットで保持するデータの例を示す説明図である。次に、ルーティングテーブル生成部1045は、図49においてデータを廃棄し、残ったノード増設位置情報とネットワーク番号のうち、先頭のアドレス情報がノード増設ユニット104の上位のネットワークのアドレス情報と同一のデータを保持する。図50において、(1)のデータは、ノード増設ユニット104が保持するデータであり、(2)のデータはノード増設ユニット108が保持するデータである。図51は、データを保持するノード増設ユニットを示す説明図である。
図52は、ノード増設位置情報とネットワーク番号から先頭のアドレス情報を除外するとともに、先頭のアドレス情報を保持した例を示す説明図である。図52に示すように、それぞれのノード増設ユニットのルーティングテーブル生成部は、ノード増設位置情報とネットワーク番号から先頭のアドレス情報を除外する。図53は、先頭のアドレス情報を下位のアドレス情報と置換した例を示す説明図である。例えば、ノード増設ユニット104は図52の示した先頭のアドレス情報“004”、“004”を下位のネットワークのアドレス情報“001”、“004”に置換する。図54は、アドレス情報を置換する例を示す説明図である。上述した処理は、さらに下位のノード増設ユニットについても同様の処理が行われる。
ここで、最下位のノード増設ユニットであるノード増設ユニット106での処理について説明する。図55は、ノード増設ユニット106の受信データおよびノード増設ユニット106の位置を示す説明図である。図55に示すように、ノード増設ユニット106が受信するデータのノード増設位置情報が、自身のアドレス情報のみである場合は、さらに下位にノード増設ユニットが接続されていないことを意味する。ノード増設ユニット106のルーティングテーブル生成部は、ルーティングテーブルを生成する。図56は、ノード増設ユニット106におけるルーティングテーブル生成処理手順を示す説明図である。ノード増設ユニット106のルーティングテーブル生成部は、ノード増設位置情報から先頭のアドレス情報を取り出す。さらに、取り出されたアドレス情報を下位のアドレス情報で置換する。置換されたアドレス情報を用いて、ルーティングテーブルを生成する。
ノード増設ユニット106のデータ送受信部は、自ネットワークの全ノードにルーティングテーブルを送信する。図57は、ノード増設ユニット106がルーティングテーブルを送信する例を示す説明図である。末端ユニット107には、図56に示すルーティングテーブルが送信され、末端ユニット107は、送信されたルーティングテーブルをルーティングテーブル記憶部に格納する。図56に示すように、末端ユニット107から他のネットワークにデータを送信する場合には、ローカルアドレス“001”、ユニットアドレス“006”のノード増設ユニット106にデータを送信することになる。
図58は、警備システムにおける各ノードのユニットアドレス、ネットワーク番号およびローカルアドレスを示す説明図である。上述したルーティングテーブル生成処理手順によって生成されたルーティングテーブルについて説明する。まず、ネットワーク番号“01”の各ノード、すなわちメインユニット101、末端ユニット102、末端ユニット103、ノード増設ユニット104、ノード増設ユニット108のルーティングテーブル記憶部には、上述した図46に示すルーティングテーブルが格納されている。
図59は、ネットワーク番号02のルーティングテーブルを示す説明図である。図59に示すルーティングテーブルは、ネットワーク番号“02”の各ノード、すなわちノード増設ユニット104、末端ユニット105、ノード増設ユニット106のルーティングテーブル記憶部に格納されている。図60は、ネットワーク番号03のルーティングテーブルを示す説明図である。図60に示すルーティングテーブルは、ネットワーク番号“03”の各ノード、すなわちノード増設ユニット108、末端ユニット109、ノード増設ユニット110、ノード増設ユニット112のルーティングテーブル記憶部に格納されている。
図61は、ネットワーク番号04のルーティングテーブルを示す説明図である。図61に示すルーティングテーブルは、ネットワーク番号“04”の各ノード、すなわちノード増設ユニット106、末端ユニット107のルーティングテーブル記憶部に格納されている。図62は、ネットワーク番号05のルーティングテーブルを示す説明図である。図62に示すルーティングテーブルは、ネットワーク番号“05”の各ノード、すなわちノード増設ユニット110、末端ユニット111のルーティングテーブル記憶部に格納されている。
図63は、ネットワーク番号06のルーティングテーブルを示す説明図である。図63に示すルーティングテーブルは、ネットワーク番号“06”の各ノード、すなわちノード増設ユニット112、末端ユニット113、ノード増設ユニット114のルーティングテーブル記憶部に格納されている。図64は、ネットワーク番号07のルーティングテーブルを示す説明図である。図64に示すルーティングテーブルは、ネットワーク番号“07”の各ノード、すなわちノード増設ユニット114、末端ユニット115のルーティングテーブル記憶部に格納されている。
図10−2のフローチャートに戻り、ルーティングテーブル生成部1045は、自ユニット用のノード増設ユニットデータと、下位のネットワークのアドレスから上述したようなルーティングテーブルを生成し(ステップS1009)、ルーティングテーブル記憶部1046に下位のネットワークのルーティングテーブルとして格納する(ステップS1010)。
データ送受信部1041は、自ネットワーク内の全ノードにルーティングテーブルを送信する(ステップS1011)。ノード増設ユニット106のデータ送受信部は、ルーティングテーブルを受信し(ステップS1012)、ルーティングテーブル記憶部に上位のネットワークのルーティングテーブルとして格納する(ステップS1013)。
なお、本実施の形態では、警備システム100を例として説明したが、警備システムに限るものではなく、複数のネットワークにパーソナルコンピュータやサーバ装置、プリンタ、複合機が接続されているオフィスシステムなど、複数のネットワークでのネットワーク環境の設定を行う場合に適用することができる。
また、上述した構成や機能は、自由に組み合わせて、適用することができる。