以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、以下で説明する実施の形態は、いずれも包括的又は具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序等は、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態1)
[1.通信システムの概要]
まず、図1を参照しながら、本実施の形態に係る通信システム2の概要について説明する。図1は、本実施の形態に係る通信システム2の概要を示す図である。
図1に示すように、通信システム2は、例えば台車4が工場等の第1の棟T1、第2の棟T2、・・・、第nの棟Tnの間を自動走行する搬送システムに適用される。
第1の棟T1、第2の棟T2、・・・、第nの棟Tnはそれぞれ、互いに異なる第1のエリアA1、第2のエリアA2、・・・、第nのエリアAnに位置している。また、第1の棟T1、第2の棟T2、・・・、第nの棟Tnの各内部にはそれぞれ、互いに異なるネットワークアドレス体系を有する第1の無線ネットワークN1、第2の無線ネットワークN2、・・・、第nの無線ネットワークNnが構築されている。
第1の無線ネットワークN1、第2の無線ネットワークN2、・・・、第nの無線ネットワークNnの各々は、例えばIEEE802.11シリーズに準拠した無線ネットワークであり、2.4GHz帯又は5GHz帯のWiFi(登録商標)で構築されている。第1の無線ネットワークN1、第2の無線ネットワークN2、・・・、第nの無線ネットワークNnの各ネットワークアドレス体系はそれぞれ、例えば「172.25.100.0/24」、「172.25.200.0/24」、・・・、「172.25.xxx.0/24」である。
第1の棟T1の内部には、複数の第1の通信装置EQ1a,EQ1b及び第1のアクセスポイントAP1が配置されている。第1のアクセスポイントAP1は、例えばケーブルを用いた有線LAN(Local Area Network)で構築された有線ネットワークを介して、複数の第1の通信装置EQ1a,EQ1bの各々と接続されている。また、第1のアクセスポイントAP1は、台車4が第1の棟T1の内部に存在する(すなわち、第1のエリアA1に存在する)場合に、第1の無線ネットワークN1を介して台車4の中継装置8(後述する)と無線接続されている。複数の第1の通信装置EQ1a,EQ1bの各々は、台車4が第1の棟T1の内部に存在する場合に、第1のアクセスポイントAP1及び台車4の中継装置8を介して、台車4の台車モジュール6(後述する)との間で通信パケットを送受信する。
第2の棟T2の内部には、複数の第2の通信装置EQ2a,EQ2b及び第2のアクセスポイントAP2が配置されている。第2のアクセスポイントAP2は、例えばケーブルを用いた有線LANで構築された有線ネットワークを介して、複数の第2の通信装置EQ2a,EQ2bの各々と接続されている。また、第2のアクセスポイントAP2は、台車4が第2の棟T2の内部に存在する場合に、第2の無線ネットワークN2を介して台車4の中継装置8と無線接続されている。複数の第2の通信装置EQ2a,EQ2bの各々は、台車4が第2の棟T2の内部に存在する場合に、第2のアクセスポイントAP2及び台車4の中継装置8を介して、台車4の台車モジュール6との間で通信パケットを送受信する。
同様に、第nの棟Tnの内部には、複数の第nの通信装置EQna,EQnb及び第nのアクセスポイントAPnが配置されている。第nのアクセスポイントAPnは、例えばケーブルを用いた有線LANで構築された有線ネットワークを介して、複数の第nの通信装置EQna,EQnbの各々と接続されている。また、第nのアクセスポイントAPnは、台車4が第nの棟Tnの内部に存在する場合に、第nの無線ネットワークNnを介して台車4の中継装置8と無線接続されている。複数の第nの通信装置EQna,EQnbの各々は、台車4が第nの棟Tnの内部に存在する場合に、第nのアクセスポイントAPn及び台車4の中継装置8を介して、台車4の台車モジュール6との間で通信パケットを送受信する。
台車4は、例えば荷物等を搬送するための搬送台車である。台車4は、上位コントローラ(図示せず)からの指示に基づいて、第1の棟T1、第2の棟T2、・・・、第nの棟Tnに亘って設置されたレール(図示せず)に沿って自動走行する。台車4には、台車モジュール6(ローカル通信装置の一例)及び中継装置8が搭載されている。
台車モジュール6は、例えば台車4の走行等を制御するための通信モジュールであり、ローカルネットワーク10を介して中継装置8との間でローカル接続されている。
中継装置8は、いわゆる無線ブリッジであり、ローカルネットワーク10を介して台車モジュール6とローカル接続されている。ローカルネットワーク10は、例えばケーブルを用いた有線LANで構築された有線ネットワークである。ローカルネットワーク10のネットワークアドレス体系は、例えば「192.168.1.0/24」である。
中継装置8は、台車4が第m(m=1,2,・・・,n)の棟Tmの内部に存在する場合に、複数の第mの通信装置EQma,EQmbの各々と台車モジュール6との通信を中継する。すなわち、中継装置8は、第mの無線ネットワークNm及びローカルネットワーク10を介して、第mの通信装置EQma(又はEQmb)及び台車モジュール6の一方から送信された通信パケットを他方に転送する。
例えば、中継装置8は、台車4が第1の棟T1の内部に存在する場合には、第1の無線ネットワークN1を介して複数の第1の通信装置EQ1a,EQ1bの各々と無線接続される。これにより、中継装置8は、第1のアドレス変換テーブルTB1(後述する)に基づいて、複数の第1の通信装置EQ1a,EQ1bの各々及び台車モジュール6の一方から送信された通信パケットを他方に転送する。
その後、台車4が第1の棟T1の内部から第2の棟T2の内部に移動した場合には、中継装置8と複数の第1の通信装置EQ1a,EQ1bの各々との無線接続が切断され、且つ、第2の無線ネットワークN2を介した中継装置8と複数の第2の通信装置EQ2a,EQ2bの各々との無線接続が確立される。これにより、中継装置8は、第2のアドレス変換テーブルTB2(後述する)に基づいて、複数の第2の通信装置EQ2a,EQ2bの各々及び台車モジュール6の一方から送信された通信パケットを他方に転送する。
[2.中継装置の機能構成]
次に、図2〜図4を参照しながら、中継装置8の機能構成について説明する。図2は、本実施の形態に係る中継装置8の機能構成を示すブロック図である。図3は、本実施の形態に係る第1のアドレス変換テーブルTB1の一例を示す図である。図4は、本実施の形態に係る第2のアドレス変換テーブルTB2の一例を示す図である。
図2に示すように、中継装置8は、取得部12と、判定部14と、記憶部16(第1の記憶部及び第2の記憶部の一例)と、通信部18と、更新部20とを有している。
取得部12は、例えば上位コントローラから送信された信号に基づいて、台車4の現在位置(すなわち、中継装置8の現在位置)を示す位置情報を取得する。例えば、台車4が第1の棟T1の内部に存在する場合には、取得部12は、台車4の現在位置が第1の棟T1の内部にあることを示す位置情報を取得する。取得部12は、取得した位置情報を判定部14に出力する。あるいは、取得部12は、台車4の現在位置として、上位コントローラから棟番号を取得するのではなく、中継装置8単独で台車4の現在位置を測位してもよい。
判定部14は、取得部12からの位置情報に基づいて、台車4の現在位置を判定する。判定部14は、判定結果を通信部18に出力する。
記憶部16は、第1のアドレス変換テーブルTB1、第2のアドレス変換テーブルTB2、・・・、第nのアドレス変換テーブルTBnを記憶するメモリである。第1のアドレス変換テーブルTB1、第2のアドレス変換テーブルTB2、・・・、第nのアドレス変換テーブルTBnはそれぞれ、第1の無線ネットワークN1、第2の無線ネットワークN2、・・・、第nの無線ネットワークNnに対応するアドレス変換テーブルである。
第1のアドレス変換テーブルTB1は、第1の無線ネットワークN1を介した通信に用いられるIPアドレス(ネットワークアドレスの一例)と、ローカルネットワーク10を介した通信に用いられるIPアドレスとの対応関係を示すアドレス変換テーブルである。第1のアドレス変換テーブルTB1は、例えば図3に示すようなデータテーブルである。
図3に示す例では、第1のアドレス変換テーブルTB1の1行目には、台車モジュール6に関する情報が格納されている。具体的には、第1のアドレス変換テーブルTB1の1行目には、a)台車モジュール6のエントリ番号「1」、b)台車モジュール6に割り当てられた第1の無線ネットワークN1におけるIPアドレス「172.25.100.1」、c)台車モジュール6に割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.1」、及び、d)台車モジュール6に関する情報が更新された時刻を示す更新時刻「STATIC」(時刻情報の一例)が格納されている。
なお、エントリ番号は、第1のアドレス変換テーブルTB1に登録(エントリ)された順番を示す番号である。例えばエントリ番号「1」は、第1のアドレス変換テーブルTB1に1番目に登録されたことを示している。また、更新時刻「STATIC」は、上書きされない固定の更新時刻であることを示している。
第1のアドレス変換テーブルTB1の2行目には、中継装置8に関する情報が格納されている。具体的には、第1のアドレス変換テーブルTB1の2行目には、a)中継装置8のエントリ番号「2」、b)中継装置8に割り当てられた第1の無線ネットワークN1におけるIPアドレス「172.25.100.254」、c)中継装置8に割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.254」、及び、d)中継装置8に関する情報が更新された時刻を示す更新時刻「STATIC」が格納されている。
なお、中継装置8のIPアドレス「172.25.100.254」は、第1の無線ネットワークN1を介した、中継装置8と第1の通信装置EQ1a(又はEQ1b)との間のみにおける通信に用いられる。また、中継装置8のIPアドレス「192.168.1.254」は、ローカルネットワーク10を介した、中継装置8と台車モジュール6との間のみにおける通信に用いられる。
第1のアドレス変換テーブルTB1の3行目には、ブロードキャスト通信に関する情報が格納されている。具体的には、第1のアドレス変換テーブルTB1の3行目には、a)ブロードキャスト通信のエントリ番号「3」、b)ブロードキャスト通信に割り当てられた第1の無線ネットワークN1におけるIPアドレス(ブロードキャストアドレス)「172.25.100.255」、c)ブロードキャスト通信に割り当てられたローカルネットワーク10におけるIPアドレス(ブロードキャストアドレス)「192.168.1.255」、及び、d)ブロードキャスト通信に関する情報が更新された時刻を示す更新時刻「STATIC」が格納されている。ここで、ネットワークアドレスが決まれば、当該ネットワークアドレスのブロードキャストアドレスも決まる。例えば、ネットワークアドレス体系が「192.168.1.0/24」のネットワークであれば、ブロードキャストアドレスは「192.168.1.255」等である。
なお、第1のアドレス変換テーブルTB1への登録は必ずしも必須ではないが、本実施の形態に係る第1のアドレス変換テーブルTB1では、ネットワークアドレス及びネットワークアドレス内のブロードキャストアドレスを新規割り当てができないIPアドレスとして明示的にエントリに含めている。すなわち、ネットワークアドレス体系が「192.168.1.0/24」のネットワークでは、ネットワーク自体を表すアドレス「192.168.1.0」及びブロードキャストアドレス「192.168.1.255」は割り当て禁止で、これら以外のIPアドレス「192.168.1.1」から「192.168.254」までの254個の中から重複しないように割り当てることができる。
第1のアドレス変換テーブルTB1の4行目には、第1の通信装置EQ1aに関する情報が格納されている。具体的には、第1のアドレス変換テーブルTB1の4行目には、a)第1の通信装置EQ1aのエントリ番号「4」、b)第1の通信装置EQ1aに割り当てられた第1の無線ネットワークN1におけるIPアドレス「172.25.100.2」、c)第1の通信装置EQ1aに割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.2」、及び、d)第1の通信装置EQ1aに関する情報が更新された時刻を示す更新時刻「t1」が格納されている。
第1のアドレス変換テーブルTB1の5行目には、第1の通信装置EQ1bに関する情報が格納されている。具体的には、第1のアドレス変換テーブルTB1の5行目には、a)第1の通信装置EQ1bのエントリ番号「5」、b)第1の通信装置EQ1bに割り当てられた第1の無線ネットワークN1におけるIPアドレス「172.25.100.10」、c)第1の通信装置EQ1bに割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.3」、及び、d)第1の通信装置EQ1bに関する情報が更新された時刻を示す更新時刻「t2」が格納されている。なお、更新時刻「t2」により示される時刻は、更新時刻「t1」により示される時刻よりも遅い時刻である。
図3に示す例では、第1のアドレス変換テーブルTB1のエントリ番号「6」以降は、空き領域となっている。また、更新時刻が「STATIC」となっているエントリ番号「1」、「2」及び「3」の各情報は、上書きされない情報である。すなわち、第1のアドレス変換テーブルTB1に空き領域が存在しない場合に、第1のアドレス変換テーブルTB1に新しい情報を登録しようとする際には、更新時刻が「STATIC」となっていないエントリ番号「4」以降の各情報のうち、最も古い更新時刻の情報(例えばエントリ番号「4」の情報)に上書きされる。
第2のアドレス変換テーブルTB2は、第2の無線ネットワークN2を介した通信に用いられるIPアドレスと、ローカルネットワーク10を介した通信に用いられるIPアドレスとの対応関係を示すアドレス変換テーブルである。第2のアドレス変換テーブルTB2は、例えば図4に示すようなデータテーブルである。
図4に示す例では、第2のアドレス変換テーブルTB2の1行目には、台車モジュール6に関する情報が格納されている。具体的には、第2のアドレス変換テーブルTB2の1行目には、a)台車モジュール6のエントリ番号「1」、b)台車モジュール6に割り当てられた第2の無線ネットワークN2におけるIPアドレス「172.25.200.1」、c)台車モジュール6に割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.1」、及び、d)台車モジュール6に関する情報が更新された時刻を示す更新時刻「STATIC」が格納されている。
第2のアドレス変換テーブルTB2の2行目には、中継装置8に関する情報が格納されている。具体的には、第2のアドレス変換テーブルTB2の2行目には、a)中継装置8のエントリ番号「2」、b)中継装置8に割り当てられた第2の無線ネットワークN2におけるIPアドレス「172.25.200.254」、c)中継装置8に割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.254」、及び、d)中継装置8に関する情報が更新された時刻を示す更新時刻「STATIC」が格納されている。
なお、中継装置8のIPアドレス「172.25.200.254」は、第2の無線ネットワークN2を介した、中継装置8と第2の通信装置EQ2a(又はEQ2b)との間のみにおける通信に用いられる。
第2のアドレス変換テーブルTB2の3行目には、ブロードキャスト通信に関する情報が格納されている。具体的には、第2のアドレス変換テーブルTB2の3行目には、a)ブロードキャスト通信のエントリ番号「3」、b)ブロードキャスト通信に割り当てられた第1の無線ネットワークN1におけるIPアドレス「172.25.200.255」、c)ブロードキャスト通信に割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.255」、及び、d)ブロードキャスト通信に関する情報が更新された時刻を示す更新時刻「STATIC」が格納されている。
第2のアドレス変換テーブルTB2の4行目には、第2の通信装置EQ2aに関する情報が格納されている。具体的には、第2のアドレス変換テーブルTB2の4行目には、a)第2の通信装置EQ2aのエントリ番号「4」、b)第2の通信装置EQ2aに割り当てられた第2の無線ネットワークN2におけるIPアドレス「172.25.200.2」、c)第2の通信装置EQ2aに割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.12」、及び、d)第2の通信装置EQ2aに関する情報が更新された時刻を示す更新時刻「t3」が格納されている。
第2のアドレス変換テーブルTB2の5行目には、第2の通信装置EQ2bに関する情報が格納されている。具体的には、第2のアドレス変換テーブルTB2の5行目には、a)第2の通信装置EQ2bのエントリ番号「5」、b)第2の通信装置EQ2bに割り当てられた第2の無線ネットワークN2におけるIPアドレス「172.25.200.10」、c)第2の通信装置EQ2bに割り当てられたローカルネットワーク10におけるIPアドレス「192.168.1.13」、及び、d)第2の通信装置EQ2bに関する情報が更新された時刻を示す更新時刻「t4」が格納されている。なお、更新時刻「t4」により示される時刻は、更新時刻「t3」により示される時刻よりも遅い時刻である。
図4に示す例では、第2のアドレス変換テーブルTB2のエントリ番号「6」以降は、空き領域となっている。また、更新時刻が「STATIC」となっているエントリ番号「1」、「2」及び「3」の各情報は、上書きされない情報である。すなわち、第2のアドレス変換テーブルTB2に空き領域が存在しない場合に、第2のアドレス変換テーブルTB2に新しい情報を登録しようとする際には、更新時刻が「STATIC」となっていないエントリ番号「4」以降の各情報のうち、最も古い更新時刻の情報(例えばエントリ番号「4」の情報)に上書きされる。
ここで、図3の第1のアドレス変換テーブルTB1と図4の第2のアドレス変換テーブルTB2とに新規に割り当てられるIPアドレスの割り当て方法は、棟(T1,T2等)に依存するものではなく、台車モジュール6が複数の棟内に存在する通信装置をあたかも1つのローカルネットワーク10内に存在する通信装置であるかのように通信できる必要がある。そのために、ローカルネットワーク10のネットワークアドレス体系「192.168.1.0/24」の254個のIPアドレス(上述した「192.168.1.0」及び「192.168.1.255」を除く)の中から、通信装置毎にIPアドレスが重複しないように割り当てる。例えば、第1の棟T1に80台の通信装置が存在し、第2の棟T2に100台の通信装置が存在する場合を考える。これら合わせて180台の通信装置があたかも1つのネットワーク内に存在するかのように、台車モジュール6が各通信装置と通信しようとする際には、中継装置8が格納する複数(例えば2個)のアドレス変換テーブルにおいて、180個分の重複しないIPアドレスを割り当てる必要がある。このように、台車モジュール6があたかも1つのネットワーク内に存在する通信装置と通信しているかのように認識するためには、通信装置個々のIPアドレスは重複することなく、一意に識別される必要があるからである。
図2の説明に戻り、通信部18は、ローカルネットワーク10を介して、台車モジュール6との間で有線通信する。また、通信部18は、台車4が第m(m=1,2,・・・,n)の棟Tmの内部に存在する場合に、第mの無線ネットワークNmを介して、複数の第mの通信装置EQma,EQmbの各々との間で無線通信する。この時、通信部18は、判定部14からの判定結果に基づいて、記憶部16から、台車4が存在する第mの棟Tmの内部に構築された第mの無線ネットワークNmに対応する第mのアドレス変換テーブルTBmを読み出す。例えば、通信部18は、台車4が第1の棟T1の内部に存在する場合には、記憶部16から第1のアドレス変換テーブルTB1を読み出し、読み出した第1のアドレス変換テーブルTB1に基づいて、複数の第1の通信装置EQ1a,EQ1bの各々及び台車モジュール6の一方から送信された通信パケットを他方に転送する。
更新部20は、台車4が第m(m=1,2,・・・,n)の棟Tmの内部に存在する場合に、通信部18が受信したARP(Address Resolution Protocol)パケットに基づいて、記憶部16に記憶された第mのアドレス変換テーブルTBmを更新する。更新部20の具体的な処理については後述する。
[3.中継装置の処理]
[3−1.第1のアドレス変換テーブルの更新処理]
次に、図5を参照しながら、更新部20による第1のアドレス変換テーブルTB1の更新処理について説明する。図5は、本実施の形態に係る中継装置8における、第1のアドレス変換テーブルTB1の更新処理の流れを示すフローチャートである。
以下、台車4が例えば第2の棟T2の内部から第1の棟T1の内部に移動してきた場合における、第1のアドレス変換テーブルTB1の更新処理について説明する。この時、第1のアドレス変換テーブルTB1には、少なくとも、図3に示すエントリ番号「1」、「2」及び「3」の各情報が予め格納されているものとする。なお、エントリ番号「1」、「2」及び「3」の各情報は、更新部20により予め第1のアドレス変換テーブルTB1に登録される。
第1の棟T1の内部に配置された第1の通信装置EQ1aは、ARPパケット(ARPリクエスト)をブロードキャストで送信する。このARPパケットには、送信元IPアドレスを示す情報として、第1の通信装置EQ1aの第1の無線ネットワークN1におけるIPアドレス「172.25.100.2」が含まれている。
図5に示すように、中継装置8の通信部18は、第1の無線ネットワークN1を介して、第1の通信装置EQ1aからのARPパケットを受信する(S101)。更新部20は、記憶部16に記憶された第1のアドレス変換テーブルTB1を参照することにより、受信されたARPパケットに含まれるIPアドレス「172.25.100.2」が第1のアドレス変換テーブルTB1に既に登録されているか否かを判断する(S102)。
例えば図3に示すように、IPアドレス「172.25.100.2」が第1のアドレス変換テーブルTB1にエントリ番号「4」として既に登録されている場合には(S102でYES)、更新部20は、エントリ番号「4」の更新時刻を「t1」から現在時刻(例えば「t5」)に更新する(S103)。
第1のアドレス変換テーブルTB1の更新を終了する場合は(S104でYES)、処理を終了する。一方、第1のアドレス変換テーブルTB1の更新を継続して行う場合は(S104でNO)、上述したステップS101に戻る。
図5のステップS102に戻り、IPアドレス「172.25.100.2」が第1のアドレス変換テーブルTB1に登録されていない場合には(S102でNO)、更新部20は、第1のアドレス変換テーブルTB1に空き領域が存在するか否かを判断する(S105)。
第1のアドレス変換テーブルTB1に空き領域が存在する場合には(S105でYES)、更新部20は、IPアドレス「172.25.100.2」を第1のアドレス変換テーブルTB1の空き領域に新規登録する(S106)。この時、例えば第1のアドレス変換テーブルTB1のエントリ番号「4」が空き領域である場合には、更新部20は、第1のアドレス変換テーブルTB1のエントリ番号「4」に、第1の無線ネットワークN1におけるIPアドレス「172.25.100.2」を新規登録する。
さらに、更新部20は、第1のアドレス変換テーブルTB1において、IPアドレス「172.25.100.2」に対応するローカルネットワーク10におけるIPアドレスとして「192.168.1.2」を登録し、且つ、IPアドレス「172.25.100.2」の更新時刻(例えば「t1」)を登録する(S107)。この時、更新時刻は、IPアドレス「172.25.100.2」と紐付けて登録される。その後、上述したステップS104に進む。
図5のステップS105に戻り、第1のアドレス変換テーブルTB1に空き領域が存在しない場合には(S105でNO)、更新部20は、IPアドレス「172.25.100.2」を、第1のアドレス変換テーブルTB1に登録されている各情報の中から、最も古い更新時刻の第1の無線ネットワークN1におけるIPアドレスに上書きする(S108)。例えば、第1のアドレス変換テーブルTB1に登録されている各情報のうち、エントリ番号「4」の更新時刻が最も古い場合には、エントリ番号「4」に既に登録されている第1の無線ネットワークN1におけるIPアドレス(例えば「172.25.100.20」)に上書きすることにより、第1の無線ネットワークN1におけるIPアドレス「172.25.100.2」を新規登録する。
次に、更新部20は、第1のアドレス変換テーブルTB1において、IPアドレス「172.25.100.2」に対するローカルネットワーク10におけるIPアドレスとして、他と重複しないIPアドレス(例えば「192.168.1.2」)を登録する。これにより、台車モジュール6は、各棟の通信装置が全て同じローカルネットワーク10のネットワーク体系「192.168.1.0/24」内における個別の通信装置であるかのように認識することができる。
さらに、更新部20は、第1のアドレス変換テーブルTB1において、IPアドレス「172.25.100.2」の更新時刻(例えば「t6」)を登録する(S107)。その後、上述したステップS104に進む。
なお、例えば第1の通信装置EQ1bがARPパケットをブロードキャストで送信した際には、上述と同様に、このARPパケットに含まれる第1の通信装置EQ1bの第1の無線ネットワークN1におけるIPアドレス「172.25.100.10」が第1のアドレス変換テーブルTB1に既に登録されているか否かを判断し(S102)、以下、ステップS103〜S107を実行すればよい。
[3−2.第1の通信装置から台車モジュールへの通信パケットの転送処理]
次に、図6及び図7を参照しながら、第1の通信装置EQ1aから台車モジュール6への通信パケットの転送処理について説明する。図6は、本実施の形態に係る中継装置8における、第1の通信装置EQ1aから台車モジュール6への通信パケットの転送処理を説明するための図である。図7は、本実施の形態に係る中継装置8における、第1の通信装置EQ1aから台車モジュール6への通信パケットの転送処理の流れを示すフローチャートである。
以下、図6及び図7を参照しながら、台車4が第1の棟T1の内部に存在する場合における、第1の通信装置EQ1aから台車モジュール6への通信パケットの転送処理について説明する。
図7に示すように、取得部12は、台車4の現在位置を示す位置情報を取得する(S201)。判定部14は、取得部12からの位置情報に基づいて、台車4の現在位置が第1の棟T1の内部にある(すなわち、第1のエリアA1にある)と判定する(S202)。
通信部18は、判定部14からの判定結果に基づいて、記憶部16から、台車4が存在する第1の棟T1の内部に構築された第1の無線ネットワークN1に対応する第1のアドレス変換テーブルTB1を読み出す(S203)。
図6に示す例では、第1の通信装置EQ1aは、第1の無線ネットワークN1を介して、台車モジュール6のIPアドレス「172.25.100.1」を宛先IPアドレスとし、且つ、第1の通信装置EQ1aのIPアドレス「172.25.100.2」を送信元IPアドレスとする通信パケットを台車モジュール6に送信する。
なお、第1の通信装置EQ1aは、第1の無線ネットワークN1を介して、ブロードキャスト通信のIPアドレス「172.25.100.255」を宛先IPアドレスとし、且つ、第1の通信装置EQ1aのIPアドレス「172.25.100.2」を送信元IPアドレスとする通信パケットをブロードキャストで送信してもよい。
通信部18は、第1の通信装置EQ1aからの通信パケットを受信したか否かを判定する(S204)。通信部18は、第1の通信装置EQ1aからの通信パケットを受信していない場合には(S204でNO)、ステップS204を再度実行する。
ステップS204において、通信部18は、第1の通信装置EQ1aからの通信パケットを受信した場合には(S204でYES)、通信パケットの送信元IPアドレス(例えば、「172.25.100.2」)が第1のアドレス変換テーブルTB1に登録されているか否かを判定する(S205)。通信パケットの送信元IPアドレスが第1のアドレス変換テーブルTB1に登録されていない場合には(S205でNO)、通信部18は、当該通信パケットを破棄する(S206)。
ステップS205において、通信パケットの送信元IPアドレスが第1のアドレス変換テーブルTB1に登録されている場合には(S205でYES)、通信部18は、第1のアドレス変換テーブルTB1に基づいて、通信パケットの宛先IPアドレス及び送信元IPアドレスの各々を、第1の無線ネットワークN1におけるIPアドレスからローカルネットワーク10におけるIPアドレスに変換する(S207)。
図6に示す例では、通信部18は、第1のアドレス変換テーブルTB1に基づいて、通信パケットの宛先IPアドレスをIPアドレス「172.25.100.1」からIPアドレス「192.168.1.1」に変換し、且つ、通信パケットの送信元IPアドレスをIPアドレス「172.25.100.2」からIPアドレス「192.168.1.2」に変換する。また、更新部20は、第1のアドレス変換テーブルTB1の該当エントリ番号の更新時刻を更新する(S208)。
なお、第1の通信装置EQ1aが第1の無線ネットワークN1を介して通信パケットをブロードキャストで送信した場合には、通信部18は、第1のアドレス変換テーブルTB1に基づいて、通信パケットの宛先IPアドレスをIPアドレス「172.25.100.255」からIPアドレス「192.168.1.255」に変換し、且つ、通信パケットの送信元IPアドレスをIPアドレス「172.25.100.2」からIPアドレス「192.168.1.2」に変換する。また、更新部20は、第1のアドレス変換テーブルTB1の該当エントリ番号の更新時刻を更新する(S208)。
その後、通信部18は、変換した通信パケットの宛先IPアドレス及び送信元IPアドレスに基づいて、通信パケットを再構成し(S209)、再構成した通信パケットを台車モジュール6に送信する(S210)。
図6に示す例では、中継装置8の通信部18は、ローカルネットワーク10を介して、台車モジュール6のIPアドレス「192.168.1.1」を宛先IPアドレスとし、且つ、第1の通信装置EQ1aのIPアドレス「192.168.1.2」を送信元IPアドレスとする通信パケットを台車モジュール6に送信する。
台車4が第1の棟T1の内部から他の棟(例えば第2の棟T2)の内部に移動した場合には(S211でYES)、処理を終了する。この時、更新部20は、図3に示す第1のアドレス変換テーブルTB1のエントリ番号「4」以降の各情報を消去してもよい。一方、台車4が第1の棟T1の内部から他の棟の内部に移動していない場合には(S211でNO)、上述したステップS204に戻る。
なお、本実施の形態では、台車4が第1の棟T1の内部に存在する場合について説明したが、台車4が他の棟の内部に存在する場合にも、上述した処理に倣った処理が実行される。例えば、台車4が第m(m=1,2,・・・,n)の棟Tmの内部に存在する場合には、通信部18は、記憶部16から、台車4が存在する第mの棟Tmの内部に構築された第mの無線ネットワークNmに対応する第mのアドレス変換テーブルTBmを読み出す(S203)。
通信部18は、第mの通信装置EQmaからの通信パケットを受信した場合には(S204でYES)、通信パケットの送信元IPアドレスが第mのアドレス変換テーブルTBmに登録されているか否かを判定する(S205)。通信パケットの送信元IPアドレスが第mのアドレス変換テーブルTBmに登録されている場合には(S205でYES)、通信部18は、第mのアドレス変換テーブルTBmに基づいて、通信パケットの宛先IPアドレス及び送信元IPアドレスの各々を、第mの無線ネットワークNmにおけるIPアドレスからローカルネットワーク10におけるIPアドレスに変換する(S207)。また、更新部20は、第1のアドレス変換テーブルTB1の該当エントリ番号の更新時刻を更新する(S208)。その後、上述したステップS209〜S211を実行すればよい。
[3−3.台車モジュールから第1の通信装置への通信パケットの転送処理]
次に、図8及び図9を参照しながら、台車モジュール6から第1の通信装置EQ1aへの通信パケットの転送処理について説明する。図8は、本実施の形態に係る中継装置8における、台車モジュール6から第1の通信装置EQ1aへの通信パケットの転送処理を説明するための図である。図9は、本実施の形態に係る中継装置8における、台車モジュール6から第1の通信装置EQ1aへの通信パケットの転送処理の流れを示すフローチャートである。
以下、図8及び図9を参照しながら、台車4が第1の棟T1の内部に存在する場合における、台車モジュール6から第1の通信装置EQ1aへの通信パケットの転送処理について説明する。
図9に示すように、取得部12は、台車4の現在位置を示す位置情報を取得する(S301)。判定部14は、取得部12からの位置情報に基づいて、台車4の現在位置が第1の棟T1の内部にあると判定する(S302)。
通信部18は、判定部14からの判定結果に基づいて、記憶部16から、台車4が存在する第1の棟T1の内部に構築された第1の無線ネットワークN1に対応する第1のアドレス変換テーブルTB1を読み出す(S303)。
図8に示す例では、台車モジュール6は、ローカルネットワーク10を介して、第1の通信装置EQ1aのIPアドレス「192.168.1.2」を宛先IPアドレスとし、且つ、台車モジュール6のIPアドレス「192.168.1.1」を送信元IPアドレスとする通信パケットを第1の通信装置EQ1aに送信する。
なお、台車モジュール6は、ローカルネットワーク10を介して、ブロードキャスト通信のIPアドレス「192.168.1.255」を宛先IPアドレスとし、且つ、台車モジュール6のIPアドレス「192.168.1.1」を送信元IPアドレスとする通信パケットをブロードキャストで送信してもよい。
通信部18は、台車モジュール6からの通信パケットを受信したか否かを判定する(S304)。通信部18は、台車モジュール6からの通信パケットを受信していない場合には(S304でNO)、ステップS304を再度実行する。
ステップS304において、通信部18は、台車モジュール6からの通信パケットを受信した場合には(S304でYES)、通信パケットの宛先IPアドレス(例えば、「192.168.1.2」)が第1のアドレス変換テーブルTB1に登録されているか否かを判定する(S305)。通信パケットの宛先IPアドレスが第1のアドレス変換テーブルTB1に登録されていない場合には(S305でNO)、通信部18は、当該通信パケットを破棄する(S306)。
ステップS305において、通信パケットの宛先IPアドレスが第1のアドレス変換テーブルTB1に登録されている場合には(S305でYES)、通信部18は、第1のアドレス変換テーブルTB1に基づいて、通信パケットの宛先IPアドレス及び送信元IPアドレスの各々を、ローカルネットワーク10におけるIPアドレスから第1の無線ネットワークN1におけるIPアドレスに変換する(S307)。
図8に示す例では、通信部18は、第1のアドレス変換テーブルTB1に基づいて、通信パケットの宛先アドレスをIPアドレス「192.168.1.2」からIPアドレス「172.25.100.2」に変換し、且つ、通信パケットの送信元アドレスをIPアドレス「192.168.1.1」からIPアドレス「172.25.100.1」に変換する。
なお、台車モジュール6がローカルネットワーク10を介して通信パケットをブロードキャストで送信した場合には、通信部18は、第1のアドレス変換テーブルTB1に基づいて、通信パケットの宛先IPアドレスをIPアドレス「192.168.1.255」からIPアドレス「172.25.100.255」に変換し、且つ、通信パケットの送信元IPアドレスをIPアドレス「192.168.1.1」からIPアドレス「172.25.100.2」に変換する。
その後、通信部18は、変換した通信パケットの宛先IPアドレス及び送信元IPアドレスに基づいて、通信パケットを再構成し(S308)、再構成した通信パケットを第1の通信装置EQ1aに送信する(S309)。
図8に示す例では、通信部18は、第1の無線ネットワークN1を介して、第1の通信装置EQ1aのIPアドレス「172.25.100.2」を宛先IPアドレスとし、且つ、台車モジュール6のIPアドレス「172.25.100.1」を送信元IPアドレスとする通信パケットを第1の通信装置EQ1aに送信する。
台車4が第1の棟T1の内部から他の棟(例えば第2の棟T2)の内部に移動した場合には(S310でYES)、処理を終了する。この時、更新部20は、図3に示す第1のアドレス変換テーブルTB1のエントリ番号「4」以降の各情報を消去してもよい。一方、台車4が第1の棟T1の内部から他の棟の内部に移動していない場合には(S310でNO)、上述したステップS304に戻る。
なお、本実施の形態では、台車4が第1の棟T1の内部に存在する場合について説明したが、台車4が他の棟の内部に存在する場合にも、上述した処理に倣った処理が実行される。例えば、台車4が第m(m=1,2,・・・,n)の棟Tmの内部に存在する場合には、通信部18は、記憶部16から、台車4が存在する第mの棟Tmの内部に構築された第mの無線ネットワークNmに対応する第mのアドレス変換テーブルTBmを読み出す(S303)。
通信部18は、第mの通信装置EQmaからの通信パケットを受信した場合には(S304でYES)、通信パケットの宛先IPアドレスが第mのアドレス変換テーブルTBmに登録されているか否かを判定する(S305)。通信パケットの宛先IPアドレスが第mのアドレス変換テーブルTBmに登録されている場合には(S305でYES)、通信部18は、第mのアドレス変換テーブルTBmに基づいて、通信パケットの宛先IPアドレス及び送信元IPアドレスの各々を、第mの無線ネットワークNmにおけるIPアドレスからローカルネットワーク10におけるIPアドレスに変換する(S307)。その後、上述したステップS308〜S310を実行すればよい。
[4.効果]
上述したように、通信部18は、記憶部16に記憶された第1のアドレス変換テーブルTB1、第2のアドレス変換テーブルTB2、・・・、第nのアドレス変換テーブルTBnのうち、台車4の移動先のネットワークアドレス体系に応じたアドレス変換テーブルを用いて通信パケットを転送する。これにより、台車4が異なるネットワークアドレス体系のエリア間を移動した場合であっても、シームレスに通信を行うことができる。
(実施の形態2)
本実施の形態において、実施の形態1で説明した工場内の機器が有するARPテーブルのエントリを、より適切に生成及び維持する技術について説明する。
図10は、本実施の形態に係る中継装置の機能構成を示すブロック図である。
図10に示すように、中継装置8は、取得部12と、判定部14と、記憶部16と、通信部18と、更新部20と、生成部22とを有している。上記構成要素のうち、生成部22を除く構成要素は、実施の形態1における同名の構成要素と同じであるので詳細な説明を省略する。
生成部22は、中継装置8のIPアドレスとMAC(Media Access Control)アドレス(物理アドレスの一例)とを含む第1のフレームを生成し、また、台車モジュール6のIPアドレスとMACアドレスとを含む第2のフレームを生成する処理部である。また、生成部22は、生成した第1のフレーム及び第2のフレームを通信部18によって送信する。
中継装置8が第1の無線ネットワークN1に接続、つまり、第1のアクセスポイントAP1に接続した場合には、第1のフレームに含まれるIPアドレスは、中継装置8のIPアドレスから第1のアドレス変換テーブルTB1によって変換されたアドレスである。また、この場合、第2のフレームに含まれるIPアドレスは、台車モジュール6のIPアドレスから第1のアドレス変換テーブルTB1によって変換されたアドレスである。
一方、中継装置8が第2の無線ネットワークN2に接続、つまり、第2のアクセスポイントAP2に接続した場合には、第1のフレームに含まれるIPアドレスは、中継装置8のIPアドレスから第2のアドレス変換テーブルTB2によって変換されたアドレスである。また、この場合、第2のフレームに含まれるIPアドレスは、台車モジュール6のIPアドレスから第2のアドレス変換テーブルTB2によって変換されたアドレスである。
このようにすることで、中継装置8は、第1のアドレス変換テーブル及び第2のアドレス変換テーブルのうち、中継装置8の移動先のネットワークアドレス体系に応じたアドレス変換テーブルによって変換されたネットワークアドレスと物理アドレスとを含むエントリを、接続先のアクセスポイントのARPテーブルに登録できる。仮に上記エントリがARPテーブルに登録されないとすれば、その後に移動先のネットワークから中継装置8への通信が発生するときに、その通信に必要なARP解決がなされることで上記エントリがARPテーブルに登録されることになるが、そのARP解決には若干の時間を要し、その時間の分だけ通信が遅延する。中継装置8は、上記のようにエントリをARPテーブルに登録することによって、上記遅延を未然に回避し、通信発生時にアクセスポイントが遅延なく中継装置に転送できるようにする効果がある。
生成部22は、さらに、第1の無線ネットワークN1又は第2の無線ネットワークN2に接続した状態で所定時間を経過するごとに、第1のフレーム及び第2のフレームを生成して通信部18によって送信してもよい。
このようにすることで、中継装置8は、無線ネットワークに接続した状態が継続しているときに接続先のネットワークアドレス体系に応じたアドレス変換テーブルによって変換されたネットワークアドレスと物理アドレスとを含むエントリの、ARPテーブルにおける更新時刻を新たに登録できる。仮に上記の更新時刻の登録がなされないとすれば、無線ネットワークに接続した状態で通信が所定時間行われなかった場合に、ARPテーブルの上記エントリが消去され得る。上記エントリが消去されると、移動先のネットワークから中継装置8への新たな通信が発生するときに、その通信に必要なARP解決がなされることで上記エントリがARPテーブルに登録されることになるが、そのARP解決に要する時間の分だけ通信が遅延する。中継装置8は、上記のようにARPテーブルのエントリが消去されないように維持することによって、上記遅延を未然に回避し、通信発生時にアクセスポイントが遅延なく中継装置に転送できるようにする効果がある。
なお、上記の第1のフレーム及び第2のフレームは、一例としてGARP(Gratuitous ARP)フレームにより実現され得るものであり、以降ではこの場合を説明する。GARPフレームは、一般にIPアドレスの重複確認等のために用いられるフレームであるが、GARPフレームを受信した装置がARPテーブルのエントリを生成すること、又は、既に存在しているエントリの更新時刻を新たに登録することを利用して、第1のアクセスポイント又は第2のアクセスポイントのARPテーブルのエントリの生成又は維持をさせることができる。
GARPフレームを用いる場合、中継装置8が第1の無線ネットワークN1に接続した場合には、第1のフレームは、送信元IPアドレスフィールドとターゲットIPアドレスフィールドとの両方に、中継装置8のIPアドレスから第1のアドレス変換テーブルTB1によって変換されたIPアドレスが設定されたARPフレームである、GARPフレームである。また、この場合、第2のフレームは、送信元IPアドレスフィールドとターゲットIPアドレスフィールドとの両方に、台車モジュール6のIPアドレスから第1のアドレス変換テーブルTB1によって変換されたアドレスが設定されたARPフレームである、GARPフレームである。
一方、中継装置8が第2の無線ネットワークN2に接続した場合には、第1のフレームは、送信元IPアドレスフィールドとターゲットIPアドレスフィールドとの両方に、中継装置8のIPアドレスから第2のアドレス変換テーブルTB2によって変換されたIPアドレスが設定されたARPフレームである、GARPフレームである。また、この場合、第2のフレームは、送信元IPアドレスフィールドとターゲットIPアドレスフィールドとの両方に、台車モジュール6のIPアドレスから第2のアドレス変換テーブルTB2によって変換されたアドレスが設定されたARPフレームである、GARPフレームである。
以降において、中継装置8のアドレスが格納されるGARPフレームについて説明する。なお、台車モジュール6のアドレスが格納されるGARPフレームについては、以下の説明における「中継装置8」を「台車モジュール6」と読み替えることで同様の説明が成立する。
図11は、本実施の形態に係るGARPパケットのパケットフィールドを示す説明図である。図11の(a)は、中継装置8が第1の無線ネットワークN1に接続した場合に送信されるGARPフレームであり、図11の(b)は、中継装置8が第2の無線ネットワークN2に接続した場合に送信されるGARPフレームのARPパケット部分である。
図11の(a)に示されるGARPフレームは、MACヘッダ50と、ARPパケット51とを含む。
MACヘッダ50は、宛先MACアドレスと送信元MACアドレスとを含む。これらは従来のMACフレームにおけるものと同じである。
ARPパケット51は、送信元MACアドレスフィールド52と、送信元IPアドレスフィールド53と、ターゲットMACアドレスフィールド54と、ターゲットIPアドレスフィールド55とを含む。
送信元MACアドレスフィールド52には、中継装置8の通信部18のMACアドレス(図11の(a)において「MAC(8)」と記載)が記載されている。
送信元IPアドレスフィールド53及びターゲットIPアドレスフィールド55には、中継装置8のIPアドレスから第1のアドレス変換テーブルTB1によって変換されたIPアドレス(図11の(a)において「IP(TB1(8))」と記載)が記載されている。
ターゲットMACアドレスフィールド54は、一例としてオールゼロのMACアドレスが記載されている。ターゲットMACアドレスフィールド54には、どのようなMACアドレスが記載されていてもよい。
第1のアクセスポイントAP1は、図11の(a)に示されるGARPフレームを受信すると、受信したGARPフレームの送信元MACアドレスフィールド52に記載されたMACアドレスと、送信元IPアドレスフィールド53に記載されたIPアドレスとを含むエントリがARPテーブルに含まれていない場合には、ARPテーブルに当該エントリを生成し、その生成時の時刻を当該エントリの更新時刻に登録する。上記エントリが既にARPテーブルに存在している場合には、現在の時刻を当該エントリの更新時刻に登録することで当該エントリを更新する。
図11の(b)に示されるGARPフレームのARPパケット部分は、図11の(a)に示されるGARPフレームのARPパケット51と同様に、送信元MACアドレスフィールド52と、送信元IPアドレスフィールド53と、ターゲットMACアドレスフィールド54と、ターゲットIPアドレスフィールド55とを含む。ただし、図11の(a)に示されるGARPフレームのARPパケット51と異なり、送信元IPアドレスフィールド53及びターゲットIPアドレスフィールド55に、中継装置8のIPアドレスから第2のアドレス変換テーブルTB2によって変換されたIPアドレス(図11の(b)において「IP(TB2(8))」と記載)が記載されている。なお、MACヘッダは、図11の(a)に示されるものと同じである。なお、図11に示されたGARPパケットのフィールドは、第1のフレームのみならず、台車モジュールのMACアドレス、IPアドレスに関する第2フレームも同様である。
第2のアクセスポイントAP2は、図11の(b)に示されるGARPフレームを受信すると、受信したGARPフレームの送信元MACアドレスフィールド52に記載されたMACアドレスと、送信元IPアドレスフィールド53に記載されたIPアドレスとを含むエントリがARPテーブルに含まれていない場合には、ARPテーブルに当該エントリを生成し、更新時刻に、現在時刻を登録する。上記エントリが既にARPテーブルに存在している場合には、当該エントリの更新時刻に、現在時刻を登録することで当該エントリを更新する。
このようにして、中継装置8が接続されたアクセスポイントのARPテーブルのエントリが生成又は維持される。
図12は、本実施の形態に係る中継装置8によるGARPパケットの送信処理の流れを示すフローチャートである。
図12において、中継装置8は、当初、第1のアクセスポイントAP1に接続されているとする。
ステップS401において、生成部22は、台車モジュール6のIPアドレスとMACアドレスとを取得する。
ステップS402において、生成部22は、中継装置8のIPアドレスとMACアドレスとを取得する。
ステップS403において、生成部22は、タイマにより時間計測を開始する。
ステップS404において、生成部22は、中継装置8の接続先のアクセスポイントが変更されたか否かを判定する。具体的には、生成部22は、中継装置8の接続先のアクセスポイントが、第1のアクセスポイントAP1から第2のアクセスポイントAP2に変更されたか否かを判定する。接続先のアクセスポイントが変更された場合(ステップS404でYes)には、ステップS406に進み、そうでない場合(ステップS404でNo)には、ステップS405に進む。なお、中継装置8がどのアクセスポイントにも接続していない状態から、いずれかのアクセスポイントに接続した状態になった場合にも、接続先のアクセスポイントが変更されたと判定されることとする。
例えば、実施の形態1における図7のステップS202で台車4の現在位置が第1の棟T1内にあると判定された場合、又は、図9のステップS302で台車4の現在位置が第2の棟T2内にあると判定された場合に、生成部22は、中継装置8の接続先のアクセスポイントが変更されたと判定する。
ステップS405において、生成部22は、タイマによる時間計測を開始してから所定時間を経過したか否かを判定する。所定時間は、アクセスポイントが通信に使われていないARPエントリを削除するまでの時間より短いことが必要であるが、より好ましくは、通信が遅延することを未然に回避できる程度にARPエントリを維持できる状態に保つための時間である。所定時間は、例えば、10分〜20分程度である。所定時間を経過した場合(ステップS405でYes)には、ステップS406に進み、そうでない場合(ステップS405でNo)には、ステップS404に進む。
ステップS406において、生成部22は、ステップS401及びS402で取得したIPアドレス及びMACアドレスを用いてGARPフレームを生成する。具体的には、生成部22は、上記第1のフレームに相当するGARPフレームと、上記第2のフレームに相当するGARPフレームとを生成する。生成されるGARPフレームは、中継装置8が第1の無線ネットワークN1に接続されているか、又は、第2の無線ネットワークN2に接続されているかによって上記のように異なるIPアドレスを含んでいる。
ステップS407において、生成部22は、ステップS406で生成したGARPフレームを送信する。
ステップS408において、生成部22は、タイマをリセットすることで、新たな時間計測を開始する。ステップS408を終えたらステップS404に進む。
次に、通信システム2全体の処理を説明する。
図13は、本実施の形態に係る中継装置8によるGARPパケットの送信時の通信システム2の処理を示すシーケンス図である。
図13において、中継装置8は、当初、どのアクセスポイントとも接続していなかったとする。
ステップS501及びS511において、中継装置8と、第1のアクセスポイントAP1とは、通信リンクを確立することで互いに接続する。
ステップS502において、中継装置8は、GARPフレームを送信する。この送信は、図12のステップS404で接続先のアクセスポイントが変更されたと生成部22が判定したことに基づいてステップS407でなされたものである。第1のアクセスポイントAP1は、送信されたGARPフレームを受信する。
ステップS512において、第1のアクセスポイントAP1は、受信したGARPフレームに含まれているIPアドレス及びMACアドレスを対応付けたエントリをARPテーブルに生成する。
ステップS503において、中継装置8は、GARPフレームを送信する。この送信は、図12のステップS404で接続先のアクセスポイントが変更されておらず、かつ、ステップS405で計測開始から所定時間を経過したと生成部22が判定したことに基づいてステップS407でなされたものである。第1のアクセスポイントAP1は、送信されたGARPフレームを受信する。
ステップS513において、第1のアクセスポイントAP1は、受信したGARPフレームに含まれているIPアドレス及びMACアドレスを対応付けたエントリの更新時刻に現在時刻を登録する。
その後、台車4及び中継装置8が第1の棟T1から第2の棟T2に移動すると、中継装置8は、第1のアクセスポイントAP1との接続を切断し(ステップS504及びS514)、第2のアクセスポイントAP2と通信リンクを確立することで接続する(ステップS505及びS521)。その後、上記ステップS502及びS512と同様に、中継装置8から第2のアクセスポイントAP2へのGARPフレームの送信と、第2のアクセスポイントAP2でのARPテーブルのエントリの生成がなされる。
以上の一連の処理により、中継装置8は、接続先のアクセスポイントが変更されたとき、及び、接続先のアクセスポイントが変更されずに所定時間が経過したときに、GARPフレームを送信する。これにより、接続先のアクセスポイントが有するARPテーブルのエントリがない場合に当該エントリを新たに生成することでその後の通信を遅延なく、つまり早期に開始することができる。また、接続先のアクセスポイントが有するARPテーブルに当該エントリが存在しているときには、当該エントリが時間経過により消去されることを回避し、これにより、その後に通信に遅延が発生したり、通信ができなかったりすることを回避することができる。
(他の変形例等)
以上、本発明の中継装置及び中継装置の制御方法について、実施の形態に基づいて説明したが、本発明は、上記実施の形態に限定されるものではない。上記実施の形態に対して当業者が思い付く変形を施して得られる形態、及び、上記実施の形態における構成要素を任意に組み合わせて実現される別の形態も本発明に含まれる。
上記実施の形態では、第1の記憶部及び第2の記憶部を1つの記憶部16で構成したが、これに限定されず、第1の記憶部及び第2の記憶部をそれぞれ異なる2つの記憶部で構成してもよい。
上記実施の形態では、中継装置8の判定部14は、台車4(中継装置8)の現在位置がいずれの棟にある(存在する)のかを判定する場合(図7のS202及び図9のS302)には、上位コントローラから送信された信号に基づいて、台車4(中継装置8)の現在位置を示す位置情報を取得するよう構成したが、これに限定されない。例えば、判定部14は、台車4自らが取得可能な位置情報(例えば、GPS(Global Positioning System)等)を取得し、取得した位置情報と棟の位置情報(ここでの位置情報とは、一定の範囲を示す位置情報)とに基づいて、台車4がいずれの棟にあるかを判定するように構成してもよい。
なお、上記実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPU又はプロセッサ等のプログラム実行部が、ハードディスク又は半導体メモリ等の記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記実施の形態の中継装置を実現するソフトウェアは、次のようなプログラムである。
すなわち、第1のエリアに配置された第1の通信装置及び第2のエリアに配置された第2の通信装置のいずれかとそれぞれ第1の無線ネットワーク及び第2の無線ネットワークを介して接続され、且つ、ローカル通信装置とローカルネットワークを介して接続される中継装置の制御方法であって、前記第1の通信装置及び前記ローカル通信装置の各々の、前記第1の無線ネットワークを介した通信に用いられるネットワークアドレスと前記ローカルネットワークを介した通信に用いられるネットワークアドレスとの対応関係を示す第1のアドレス変換テーブルを第1の記憶部に記憶するステップと、前記第2の通信装置及び前記ローカル通信装置の各々の、前記第2の無線ネットワークを介した通信に用いられるネットワークアドレスと前記ローカルネットワークを介した通信に用いられるネットワークアドレスとの対応関係を示す第2のアドレス変換テーブルを第2の記憶部に記憶するステップと、前記中継装置の現在位置を示す位置情報を取得するステップと、取得された前記位置情報に基づいて、前記中継装置の現在位置を判定するステップと、前記中継装置の現在位置が前記第1のエリアにあると判定された場合には、前記第1のアドレス変換テーブルに基づいて前記第1の通信装置及び前記ローカル通信装置の一方から送信された通信パケットを他方へ転送し、前記中継装置の現在位置が前記第2のエリアにあると判定された場合には、前記第2のアドレス変換テーブルに基づいて前記第2の通信装置及び前記ローカル通信装置の一方から送信された通信パケットを他方へ転送するステップと、を含む中継装置の制御方法をコンピュータに実行させるプログラムである。