以下、本発明に係る電力線通信装置の実施形態について、図面を用いて詳しく説明する。
(第1の実施形態)
図1は、第1の実施形態に係る電力線通信装置101の構成を示すブロック図である。図1において、電力線通信装置101は、電源供給部102と、電源部103と、カプラ104と、通信制御部105と、通信I/F106と、記憶部107とで構成される。
電源供給部102は、電力線151から電力線通信装置101で必要な電力を受け取り電源部103に出力する。同時に、電源供給部102は、カプラ104と電力線151との間でPLC信号を入出力する。ここで、PLC信号とは、通信制御部105が作成するデータフレームや制御フレームなどの伝送フレームを所定の変調方式で変調したPLC専用の信号のことである。
電源部103は、電源供給部102から受け取った電力を必要な電圧に変換して電力線通信装置101の各部に供給する。
カプラ104は、PLC信号を電力線151に重畳するためのPLCインターフェースを構成し、通信制御部105から出力されるPLC信号を電力線151側に出力し、電力線151側から入力するPLC信号を通信制御部105に出力する。
通信制御部105は、電力線通信装置101全体の動作を制御する。また、通信制御部105は、通信I/F106から入力するユーザーデータをデータフレームに生成してPLC信号に変調する。或いは、通信制御部105で生成した制御フレームをPLC信号に変調する。そして、PLC信号に変調されたデータフレームや制御フレームなどの伝送フレームは、カプラ104および電源供給部102を介して電力線151に送信される。逆に、通信制御部105は、電力線151から電源供給部102およびカプラ104を介して受信するPLC信号をデータフレームや制御フレームに復調する。復調された制御フレームは制御情報に応じて処理し、データフレームの場合はユーザーデータに分解して通信I/F106に出力する。この時、通信I/F106がLANインターフェースである場合、通信制御部105は、ユーザーデータをイーサネットフレームに形成して出力する。
通信I/F105は、例えば、LANを介して、パソコン(PC),BR(ブロードバンドルータ),IP電話機などの通信機器を接続するためのインターフェースである。
記憶部107は、フラッシュメモリなどで構成され、装置IDやMACアドレスなどの認証情報の他に、通信制御部105が処理する際に必要なパラメータやテーブルなどが記憶される。尚、記憶部107に記憶されているパラメータやテーブルは、通信制御部105によって書き換えられ、適宜更新される。特に本実施形態では、通信経路を含む自装置の通信可能相手情報が登録情報として記憶され、他装置の通信可能相手情報に応じて適宜更新される。
ここで、通信制御部105の構成について、図2を用いて詳しく説明する。図2は、通信制御部105の内部構成を描いたブロック図である。通信制御部105は、PLC通信部108と、端末通信部109、制御部110とで構成される。尚、図2に示した通信制御部105は、電力線通信装置101に接続される各通信機器が通信I/F106を介してLANなどで接続される場合の一例であり、電力線通信装置101が各通信機器に内蔵されている場合は、制御部110が各通信装置の制御部に含まれるので、端末通信部109はなくても構わない。
図2において、PLC通信部108は、制御部110が生成するPLCフレームをウェーブレット変調方式などPLC所定の方式で変調し、変調されたPLC信号を送信信号としてカプラ104に出力する。一方、カプラ104から入力するPLC信号を受信信号として復調し、復調されたPLCフレームを制御部110に出力する。尚、PLCフレームはPLC用の伝送フレームで、各製造メーカーで異なるフレームフォーマットを有するが、例えば図3(a)に示すように、宛先と送信元を記載したPLCヘッダと、ペイロードのデータが制御データかユーザーデータかを示すFlagと、ペイロード部分などで構成される。尚、PLC用の伝送フレームの代わりに、図3(b)に示すように、LANで用いられるイーサネットフレームを用いても構わない。この場合は、宛先(DA)と、送信元(SA)と、通常はフレームの長さを示すTypeフィールドなどで構成される。尚、図3において、エラーチェック用のFCS(Frame Check Sequence)などは省略してある。
ここで、本実施形態では、図3(a)のPLCフレームのFlagフィールドや、図3(b)のイーサネットフレームのTypeフィールドなどの未定義部分を利用して、ペイロード部分が制御データかユーザーデータかを示すように予め定義しておく。例えば、PLCフレームのTypeフィールドが1の場合やイーサネットフレームのTypeフィールドが1535の場合はそのフレームが制御データを扱う制御フレームであることを示し、これ以外の場合はユーザーデータを扱うデータフレームであることを示すと定義しておく。
図2において、端末通信部109は、通信I/F106を介して接続される各通信機器との間でユーザーデータを送受信し、制御部110に入出力する。制御部110は、端末通信部109が各通信機器から受信したユーザーデータを受け取ってPLCフレームに変換し、PLC通信部108およびカプラ104を介して電力線151に出力する。また、電力線151およびカプラ104を介してPLCフレームを受信してユーザーデータに変換し、通信I/F106を介して接続される各通信機器に出力する。
このようにして、電力線通信装置101に接続されるパソコン,ブロードバンドルータ、IP電話機などの各通信機器は、電力線151を介して通信することができる。
次に、電力線通信装置101を家庭で用いる場合の接続例について、図4を用いて説明する。図4において、家屋201の一階には、部屋202と、部屋203と、部屋204と、部屋205とがあり、各部屋にはそれぞれ電源コンセント206と、電源コンセント207と、電源コンセント208と、電源コンセント209とが配置され、これらの電源コンセントは、分電盤210を介して接続されている。また、分電盤210は電気メータ211を介して屋外の電柱に接続される。
図4において、部屋202の電源コンセント206には、IP電話機212と、ドア213部分に設置されたネットワーク対応の監視カメラ214とが接続されている。また、部屋203の電源コンセント207には、通信機能付のAV機器215が接続され、部屋204の電源コンセント208には、パソコン216が接続され、部屋205の電源コンセント209には、ブロードバンドルータ(BR)217が接続されている。BR217はFTTHを提供する光ファイバ218に接続され、プロバイダ経由でインターネット219に接続される。尚、図4において、IP電話機212,監視カメラ214,通信機能付のAV機器215,パソコン216,BR217などは、図1で説明した電力線通信装置101の機能を含むものとする。従って、図1で説明した電力線通信装置101を有するIP電話機212,監視カメラ214,通信機能付のAV機器215,パソコン216,BR217などは、各電源コンセントから家屋201内の電力線および分電盤210を介して相互に通信することができる。また、外部のインターネットにアクセスする場合は、BR217を経由して、接続することができる。
ところが、分電盤210の配線形態や、電子レンジなどノイズの多い家電製品を電源コンセント206,電源コンセント207,電源コンセント208および電源コンセント209で使用した場合に、IP電話機212,監視カメラ214,通信機能付のAV機器215,パソコン216,BR217などで、相互に通信することができない装置が生じることがある。本実施形態では、このような場合でも、相互に通信することが可能なようになっている。
次に、本実施形態に係る電力線通信装置101の通信方法について説明する。図5は、電力線通信装置101と同じ構成の4つの電力線通信装置A,B,C,Dが電力線151を介して接続されている様子を示している。
図5において、先ず、4つの電力線通信装置A,B,C,Dは、電力線151に接続して電源を投入すると、電力線151にビーコンを送出する。ここで、ビーコンは、各電力線通信装置のIDやMACアドレスなどを含む装置情報を示す信号である。このビーコンは、図1の通信制御部105の制御部110の指令によってPLC通信部108が電力線151側に送出される。例えば、図5において、電力線通信装置AはビーコンA−bcを出力する。同様に、電力線通信装置BはビーコンB−bcを出力し、電力線通信装置CはビーコンC−bcを出力し、電力線通信装置DはビーコンD−bcを出力する。そして、他装置からビーコンを受信した場合は、ビーコンを受信したことを示すACK信号を返す。尚、ACK信号は、図1の通信制御部105の制御部110の指令によってPLC通信部108が電力線151側に送出し、電力線151側から送られてきたACK信号はPLC通信部108で受信する。また、ACK信号にもACK信号を送信する装置の装置情報が付加されており、この装置情報によって、ACK信号を受信した電力線通信装置は、どの電力線通信装置と通信可能なのかを知ることができる。
例えば、電力線通信装置Aが送信したビーコンに対して、電力線通信装置BからのみACK信号が返ってきた場合は、電力線通信装置Aは電力線通信装置Bとは通信できるが、電力線通信装置CおよびDとは通信できない。また、電力線通信装置Bが送信したビーコンに対して、電力線通信装置AおよびCからACK信号が返ってきた場合は、電力線通信装置Bは電力線通信装置AおよびCとは通信できるが、電力線通信装置Dとは通信できない。さらに、電力線通信装置Cが送信したビーコンに対して、電力線通信装置BおよびDからACK信号が返ってきた場合は、電力線通信装置Cは電力線通信装置BおよびDとは通信できるが、電力線通信装置Aとは通信できない。また、電力線通信装置Dが送信したビーコンに対して、電力線通信装置CからのみACK信号が返ってきた場合は、電力線通信装置Dは電力線通信装置Cとだけ通信できるが、電力線通信装置AおよびBとは通信できない。
従って、図5に示した4つの電力線通信装置A,B,C,D間では、電力線通信装置AとBとの間でデータAB−datのデータ通信ができ、電力線通信装置BとCとの間でデータBC−datのデータ通信ができ、電力線通信装置CとDとの間でデータCD−datのデータ通信ができる。この組み合わせ以外は、直接、電力線通信装置間でデータ通信を行うことができない。
このようにして、各電力線通信装置の通信制御部105の制御部110は、初期接続時にビーコンを送出し、ACK信号が返ってくるか否かによって、通信可能相手の装置情報(通信可能相手情報)を得ることができる。尚、上記の説明では、制御部110は、初期接続時にビーコンを送出して、自装置が通信可能な相手装置の情報を得るようにしたが、初期接続時以外にも定期的にビーコンを送出するようにして、通信可能相手情報を更新するようにしても構わない。ここで、制御部110は、請求項の初期接続部として動作する。
図1の通信制御部105の制御部110は、得られた自装置の通信可能相手情報を自装置の記憶部107に記憶する。ここで、電力線通信装置Bの場合の記憶部107に記憶する自装置の通信可能相手情報のテーブル例を図6に示す。電力線通信装置Bは、ACK信号を受け取った電力線通信装置AおよびCとのみ通信可能なので、受け取ったACK信号に記載されていた装置名と装置IDとを対応付けてテーブルに記載する。尚、ここでは、分かり易いように、装置名も記憶するようにしたが装置IDのみを記憶するようにしても構わない。ここで、制御部110は、請求項の通信可能相手情報作成部として動作する。
一方、制御部110は、自装置の通信可能相手情報をPLC制御フレームに格納して、PLC通信部108を介して自装置の通信可能相手に送信する。図6の場合は、電力線通信装置AおよびCに対して送信する。この時のPLC制御フレームの構成例を図7(a)に示す。図7(a)は図3(a)のPLCフレームを基本構成としたフレームフォーマットで、宛先(電力線通信装置AまたはCのID)と送信元(電力線通信装置BのID)を記載したPLCヘッダと、Flagフィールド以降のデータが制御データであることを示すFlag値(例えば、Flag=1)が記載される。尚、PLCヘッダに電力線通信装置AおよびCを宛先として指定せずに、ブロードキャストしても構わない。ここで、制御部110は、請求項の通信可能相手情報送受信部として動作する。
このようにして送信された通信可能相手情報を記載したPLC制御フレームを受信した他装置の制御部110は、電力線通信装置Bがどの装置と通信可能かを知ることができる。例えば、図7(a)のPLC制御フレームを受け取った場合は、電力線通信装置Bが電力線通信装置AおよびCと通信できることが分かる。尚、上記の説明では装置IDを用いたが、図7(b)に示すように、各電力線通信装置のMACアドレス(MAC−A,MAC−B,MAC−Cなど)を用いても構わない。この場合は、ビーコンやACK信号に記載する装置情報として、装置IDではなくMACアドレスを用い、図6に示した自装置の通信可能相手情報のテーブル例においても、装置IDではなくMACアドレスを用いる。
このようにして、各電力線通信装置の制御部110は、自装置が通信可能な相手装置の通信可能な相手装置を知ることができるので、直接、通信できない電力線通信装置に対しても、いずれかの電力線通信装置を介することによって通信可能であることがわかる。
尚、上記の図7(a)および図7(b)の説明では、PLC制御フレームの例について説明したが、イーサーネットフレームを用いても構わない。この場合は、図7(c)および図7(d)に示すように、先に説明したPLC制御フレームで送信する自己装置IDや自己装置MACアドレスおよび通信可能相手IDや通信可能相手MACアドレスの情報をイーサーネットフレームのデータフィールドに載せるだけでよい。尚、この場合は、イーサーネットフレームのTypeフィールドの未使用部分を予め定義しておけばよい。例えば、Type=1535の場合は制御フレームであることを示すと定義しておけば、Typeフィールドの値を確認して、Type=1535であればデータフィールドに搭載されたデータが通信可能相手情報であることがわかる。
次に、図1の通信制御部105の制御部110は、先に得られた自装置の通信可能相手情報と、他装置から送られてきた他装置の通信可能相手情報とから階層状に通信可能な電力線通信装置をマッピングし、新たに他装置経由を含む通信可能相手情報を得る。制御部110は、これを登録情報として記憶部107に記憶する。同時に、登録情報は新たな自装置の通信可能相手情報として他装置に送信される。
ここで、電力線通信装置Bの場合の記憶部107に記憶する自装置の通信可能相手情報のマッピング例を図8に示す。図8において、階層aの電力線通信装置Bは、自装置の通信可能相手情報から電力線通信装置AおよびCとのみ通信可能なので、電力線通信装置AおよびCを自装置の次の階層bにマッピングする。さらに、階層cの電力線通信装置Cから受け取った通信可能相手情報より、電力線通信装置Cは電力線通信装置BおよびDと通信可能であることがわかるので、電力線通信装置Dを電力線通信装置Cの次の階層cにマッピングする。このように、電力線通信装置Bは、電力線通信装置Cから受け取った通信可能相手先情報によって、電力線通信装置Bが直接通信できない電力線通信装置Dの存在が明らかになり、電力線通信装置Cを経由して電力線通信装置Dと通信できることがわかる。尚、ここでは、分かり易いように各装置をツリー状に描いたが、記憶部107には(B,A)および(B,C,D)のようなデータ列のテーブルを登録情報として記憶しても構わない。また、制御部110は、他装置から新たな通信可能相手情報を受信する度に登録情報を更新し、更新する毎に上記の処理を繰り返し行う。ここで、制御部110は、請求項の登録情報作成部および登録情報送受信部として動作する。
このようにして、電力線通信装置Bは、自装置の記憶部107に記憶された登録情報を参照することによって、直接通信できない電力線通信装置Dに対してユーザーデータを送信する経路を知ることができる。
次に、電力線通信装置Bが電力線通信装置Dにユーザーデータを送信する場合の方法について説明する。この時のPLCデータフレームの構成例を図9(a)および図9(b)に示す。図9(a)および図9(b)は、図3(a)のPLCフレームを基本構成としたフレームフォーマットで、現在のPLCフレームの仮宛先と送信元を記載したPLCヘッダと、Flagフィールドを基本とする。Flagフィールドは、Flagフィールドの後ろにユーザーデータのデータフィールドがあるか最終宛先を示す宛先フィールドがあるかことを示すフラグである。例えば、Flag=0の場合は、図9(b)に示すように、Flagフィールドの後ろにユーザーデータがあり、Flag=2の場合は、図9(a)に示すように、Flagフィールドの後ろに宛先フィールドがあることを示す。
このようにして、PLCデータフレームを受信した各電力線通信装置は、Flagフィールドを読み出して、自装置が最終宛先なのか、自装置が仮宛先で最終宛先が他にあるのか否かを知ることができる。例えば、図9(a)のPLCデータフレームを電力線通信装置Cが受信した場合は、電力線通信装置Cの制御部105は、宛先フィールドを見て、最終宛先が電力線通信装置Dであることを知り、PLCヘッダの仮宛先を電力線通信装置Dに書き換えたPLCデータフレームをPLC通信部108を介して電力線通信装置Dに送信する。このPLCデータフレームを受信した電力線通信装置Dの制御部105は、PLCヘッダの仮宛先と、宛先フィールドの最終宛先とが同じ電力線通信装置Dであることから、自装置が最終宛先であると判断して、受信したPLCデータフレームに搭載されているデータをユーザーデータとして、電力線通信装置Dの端末通信部109および通信I/F106を介して接続されている通信機器に出力する。
また、例えば、図9(b)のPLCデータフレームを電力線通信装置Cが受信した場合は、電力線通信装置Cの制御部105は、Flagフィールドの値より宛先フィールドがないことを検知し、自装置の電力線通信装置Cが最終宛先である直接通信としてこのPLCデータフレーム受信する。受信したPLCデータフレームに搭載されているデータは、ユーザーデータとして、電力線通信装置Cの端末通信部109および通信I/F106を介して接続されている通信機器に出力される。
尚、図9(a)では装置IDを用いたが、図9(c)に示すように、各電力線通信装置のMACアドレスを用いても構わない。この場合は、ビーコンやACK信号に記載する装置情報として、装置IDではなくMACアドレス(MAC−DやMAC−Bなど)を用い、図6に示した自装置の通信可能相手情報のテーブル例や図7に示したPLC制御フレームなどにおいても、装置IDではなくMACアドレスを用いる。
次に、図10のフローチャートを用いて、一連の通信動作について説明する。尚、図10のフローチャートの各処理は、図1の通信制御部105に予め記憶されたプログラムに従って実行される。尚、実際には、図3の通信制御部105の中の制御部110により実行される。また、図5で説明したビーコンによる初期接続は終了しているものとする。つまり、各電力線通信装置は、自装置の通信可能相手情報と、他装置から送られてきた他装置の通信可能相手情報とから階層状に通信可能な電力線通信装置をマッピングした結果を登録情報として、各装置の記憶部107に記憶している。ここでは、図8に示したマッピング構成の場合を例に挙げ、送信元の装置を電力線通信装置B、宛先の装置を電力線通信装置Dとした場合について説明する。
(ステップS101)通信制御部105は、送信処理を開始する。例えば、通信制御部105は、通信I/F106に接続されている通信装置から送信ユーザーデータを受け取った場合に送信処理を開始する。つまり、通信I/F106に接続されている通信装置から受け取ったユーザーデータをPLCデータフレームに生成する。この時、電力線通信装置Bの場合は、PLCヘッダには、宛先の装置IDは電力線通信装置DのID−Dが記載され、送信元の装置IDは電力線通信装置BのID−Bが記載されている。
(ステップS102)通信制御部105は、記憶部107に記憶されている登録情報を参照し、直接通信可能であるか否かを判別する。例えば、電力線通信装置Bの場合、図8で説明したような階層状にマッピングされた登録情報を見て、送信先の装置が電力線通信装置Aであるか電力線通信装置Cであるか電力線通信装置Dであるかに応じて、直接通信可能であるか否かを判別する。
(ステップS103)ステップS102の処理結果が直接通信可能である場合はステップS107に進み、直接通信可能でない場合はステップS104に進む。例えば、図8の場合に、送信先の装置が電力線通信装置Aである場合は、直接通信可能なのでステップS107に進み、送信先の装置が電力線通信装置Dである場合は、直接通信できないのでステップS104に進む。
(ステップS104)通信制御部105は、通信I/F106に接続されている通信装置から受け取ったユーザーデータをPLCデータフレームに生成する際に、最終宛先と送信元情報を追加する。例えば、図8の場合に、送信先の装置が電力線通信装置Dである場合は、図9(a)に示したPLCデータフレームを生成する。
(ステップS105)通信制御部105は、記憶部107に記憶されている登録情報を参照し、仮宛先を決める。例えば、最終宛先が電力線通信装置Dの場合、図8の登録情報から電力線通信装置Cを経由すればよいことがわかるので、仮宛先は電力線通信装置Cとなる。
(ステップS106)通信制御部105は、生成するPLCデータフレームのPLCヘッダに記載する宛先を仮宛先の電力線通信装置Cの装置ID(ID−C)とする。例えば、ステップS101で生成されたPLCデータフレームのPLCヘッダに記載されている宛先の電力線通信装置Dの装置ID(ID−D)を仮宛先の電力線通信装置Cの装置ID(ID−C)に変更する。尚、仮宛先とは、直接通信できる次の装置の宛先のことである。
(ステップS107)通信制御部105は、PLCデータフレームを所定の方式で変調して、カプラ104および電源供給部102を介して電力線151に送信する。例えば、ステップS103からジャンプしてきた場合は、直接通信可能な送信先へのPLCデータフレームが送信され、ステップS106からきた場合は、仮宛先に書き換えられたPLCデータフレームが送信される。
このようにして、送信処理が実行される。次に、送信処理で送信されたPLCデータフレームの受信処理について、送信処理と同じ図10を用いて説明する。ここで、受信処理は、先に電力線通信装置Bが送信したPLCデータフレームを電力線通信装置Cで受信する場合について説明する。
(ステップS108)通信制御部105は、受信処理を開始する。例えば、通信制御部105は、電力線151から電源供給部102およびカプラ104を介してPLC信号を受信する。
(ステップS109)通信制御部105は、受信したPLC信号をPLCデータフレームに復調する。
(ステップS110)通信制御部105は、復調したPLCデータフレームのFlagフィールドの値を識別する。例えば、先に図9で説明したように、Flag=0の場合はFlagフィールドの後ろにユーザーデータがあることを示す。Flag=2の場合はFlagフィールドの後ろに宛先フィールドがあることを示す。
(ステップS111)通信制御部105は、ステップS110の識別結果より、経路情報が付加されているか否かを判別する。例えば、Flag=0の場合は経路情報なしと判断してステップS113に進み、Flag=2の場合は経路情報ありと判断してステップS112に進む。
(ステップS112)通信制御部105は、Flagフィールドの後ろに宛先フィールドを読み取って、自装置が最終宛先装置か否かを判別する。自装置が最終宛先装置である場合は送信側の処理であるステップS105に進み、自装置が最終宛先装置でない場合はステップS113に進む。
例えば、図9(a)の場合は、最終宛先装置ID(ID−D)が自装置IDであるか否かを判別する。ここで、自装置が電力線通信装置Cである場合は、自装置IDは(ID−C)なので最終宛先装置ID(ID−D)と一致せず、最終宛先ではないと判断してステップS105に進む。また、自装置が電力線通信装置Dである場合は、自装置IDは(ID−D)なので最終宛先装置ID(ID−D)と一致し、最終宛先であると判断してステップS113に進む。
(ステップS113)通信制御部105は、自装置宛のデータフレームをユーザーデータに分解して通信I/F106に出力する。例えば、通信I/F106がLANインターフェースである場合、ユーザーデータをイーサネットフレームに形成して出力する。
(ステップS114)一連の送信処理または受信処理を終了する。尚、送信するユーザーデータを通信I/F106から入力する毎に上記の一連の送信処理が実行され、或いは、電力線151から電源供給部102およびカプラ104を介してPLC信号を受信する毎に上記の一連の受信処理が実行される。
このように、本実施形態に係る電力線通信装置101は、初期接続時或いは定期的に自装置が通信可能な他装置を示す通信可能相手情報を作成して送受信することにより、直接通信できない最終宛先までの経路を知ることができる。また、ユーザデータの伝送フレームの仮宛先を更新しながら中継するので、簡単な処理で効率の良い経路を選択し、直接通信できない最終宛先までユーザデータを伝送することができる。ここで、図10のフローチャートで制御部110が行う処理は、請求項の伝送フレーム作成部および伝送フレーム送受信部として動作する場合の一例である。
尚、図8のマッピング例では、階層a,階層b,階層cの3階層しかなく、各電力線通信装置に通信する経路も1つしかなかったが、図11のマッピング例のように、階層a,階層b,階層c,階層dの4階層で、電力線通信装置Eや電力線通信装置Gなど複数の通信経路が存在する場合もある。図11において、階層aの電力線通信装置Bは、自装置の通信可能相手情報から電力線通信装置A,C,Dと通信可能なので、電力線通信装置A,C,Dを自装置の次の階層bにマッピングする。
次に、電力線通信装置A,C,Dから受け取った通信可能相手情報より、電力線通信装置Aの先には電力線通信装置Gがあることがわかるので、電力線通信装置Gを電力線通信装置Aの次の階層cにマッピングする。また、電力線通信装置Cの先には電力線通信装置Eがあることがわかるので、電力線通信装置Eを電力線通信装置Cの次の階層cにマッピングする。同様に、電力線通信装置Dの先には電力線通信装置E,Fがあることがわかるので、電力線通信装置E,Fを電力線通信装置Dの次の階層cにマッピングする。ところが、図11の電力線通信装置Eの場合は、電力線通信装置Cまたは電力線通信装置Dを経由する2つの経路が存在し、いずれも同じ階層cにある。このような場合、電力線通信装置Bの制御部110は、任意にいずれかの経路を選択するようにしても構わないし、経由する装置IDが番号である場合は番号の小さい方から選択するようにしても構わない。
尚、電力線通信装置Bは、階層cにある電力線通信装置E,F,Gからは通信可能相手先情報を直接受信することができないが、電力線通信装置Dは、電力線通信装置Fから受け取った通信可能相手先情報によって、電力線通信装置Fの先に電力線通信装置G,Hがあることを知ることができるので、電力線通信装置Dの記憶部107の登録情報には電力線通信装置G,Hがマッピングされる。
そこで、電力線通信装置Bは、電力線通信装置Dの登録情報を受け取った時に、電力線通信装置Fの先に電力線通信装置G,Hがあることを知り、電力線通信装置Bは、図11に示すようなマッピング情報を作成することができる。そして、電力線通信装置Bはの制御部110は、このマッピング情報を電力線通信装置Bの登録情報として記憶部107に記憶する。
このように、電力線通信装置Bは、電力線通信装置Dと、電力線通信装置Fとを経由して電力線通信装置G,Hと通信することができる。ところが、図11の電力線通信装置Gの場合は、階層cと階層dに存在する。このような場合、電力線通信装置Bの制御部110は、階層数の浅い電力線通信装置Aを経由して電力線通信装置Gと通信する経路を選択する。
(第2の実施形態)
次に、第2の実施形態に係る電力線通信装置101について説明する。尚、本実施形態に係る電力線通信装置101の構成は、第1の実施形態で説明した図1および図2と同じである。また、自装置の通信可能相手情報と、他装置から送られてきた他装置の通信可能相手情報とから階層状に通信可能な電力線通信装置をマッピングし、新たに他装置経由を含む通信可能相手情報を登録情報として記憶部107に記憶すると共に、登録情報を新たな自装置の通信可能相手情報として他装置に送信する。また、他装置から新たな通信可能相手情報を受信する度に登録情報を更新する動作も第1の実施形態と同じである。
本実施形態が第1の実施形態と異なるのは、第1の実施形態の図9のPLCデータフレームと図10の送受信処理のフローチャートである。ここでは、第1の実施形態と異なる部分についてのみ説明し、第1の実施形態の説明と重複する説明は省略する。
図12は、本実施形態におけるデータフレームの構成を示す図である。本実施形態では、イーサネットフレームフォーマットを基本構成としたフレームフォーマットである。SAは送信元アドレスのフィールドを示し、DAは宛先アドレスのフィールドを示し、両アドレスの後にはTypeフィールドが付加されている。そして、SA,DA,Typeの3つのフィールドで1つの送受信単位毎のヘッダ部分を構成し、最初の送信元アドレスSAaから最終宛先アドレスDAzまで送受信単位毎のヘッダ部分が連結されている。ここで、Typeフィールドは、Typeフィールドの後ろに付加ヘッダがあるか否かを示すフラグである。例えば図3(b)で説明したように、Type=0の場合はTypeフィールドの後ろにユーザーデータがあり、Type=1535の場合はTypeフィールドの後ろに付加ヘッダが連結されていることを示す。図12(a)の場合は、Type301およびType302は後に付加ヘッダが連結されているので、上記の例ではType=1535となり、Type303や、図12(b)のType304は後がデータフィールドになっているので、上記の例ではType=0となる。このようにして、付加ヘッダが連結されているか否かを判別することができる。尚、図12(a)のフレームフォーマットは、直接通信ができず、他装置を経由して伝送する必要がある場合のデータフレームの例である。一方、図12(b)のフレームフォーマットは、直接通信が可能な装置に伝送する場合のデータフレームの例である。
図12(a)の場合は、電力線通信装置aから電力線通信装置zにデータを伝送する場合のヘッダの例を示している。電力線通信装置aは、電力線通信装置zに直接通信できないので、先ず電力線通信装置aから電力線通信装置bに送信し、次に電力線通信装置bから電力線通信装置cに送信し、順に電力線通信装置を経由し、最後に電力線通信装置yから電力線通信装置zに送信して最終宛先の電力線通信装置zに到達する。尚、このような通信経路は、第1の実施形態で説明したように、記憶部107に記憶されている登録情報から得ることができる。
このようにして、イーサネットデータフレームを受信した各電力線通信装置は、Typeフィールドを読み出して、次に転送するための付加ヘッダがあるか否かを知ることができる。例えば、図12(a)のデータフレームを電力線通信装置bが受信した場合は、電力線通信装置bの制御部105は、最初のType301を見て、次に転送するための付加ヘッダがあることを知り、自己宛のヘッダ部分305を削除したイーサネットデータフレームをPLC通信部108を介して電力線通信装置cに送信する。次にこのデータフレームを受信した電力線通信装置cの制御部105は、Type302を見て、次に転送するための付加ヘッダがあることを知り、自己宛のヘッダ部分306を削除したイーサネットデータフレームをPLC通信部108を介して次の電力線通信装置に送信する。このようにして、ヘッダ部分を削除しながらデータフレームの転送を繰り返し、最後にはデータフレーム307が残る。データフレーム307は、電力線通信装置yから最終宛先の電力線通信装置zに送信するデータフレームで、Type303の後のデータフィールドには、最初の電力線通信装置aから電力線通信装置zに送ったユーザーデータが搭載されている。電力線通信装置zは、受信したデータフレームに搭載されているデータをユーザーデータとして、電力線通信装置zの端末通信部109および通信I/F106を介して接続されている通信機器に出力する。
次に、図13のフローチャートを用いて、第2の実施形態に係る電力線通信装置101の一連の通信動作について説明する。尚、図13のフローチャートの各処理は、図1の通信制御部105に予め記憶されたプログラムに従って実行される。また、図5で説明したビーコンによる初期接続は終了しているものとする。つまり、各電力線通信装置は、自装置の通信可能相手情報と、他装置から送られてきた他装置の通信可能相手情報とから階層状に通信可能な電力線通信装置をマッピングした結果を登録情報として、各装置の記憶部107に記憶している。
(ステップS201)通信制御部105は、送信処理を開始する。例えば、通信制御部105は、通信I/F106に接続されている通信装置から送信ユーザーデータを受け取った場合に送信処理を開始する。つまり、通信I/F106に接続されている通信装置から受け取ったユーザーデータをイーサネットデータフレームに生成する。この時、例えば、図12で説明したように、電力線通信装置aから電力線通信装置zにデータフレームを送信する場合、図12(b)のようなデータフレームが生成される。
(ステップS202)通信制御部105は、記憶部107に記憶されている登録情報を参照し、直接通信可能であるか否かを判別する。例えば、電力線通信装置aから電力線通信装置zに直接通信可能であるか否かを判別する。
(ステップS203)ステップS202の処理結果が直接通信可能である場合はステップS205に進み、直接通信可能でない場合はステップS204に進む。
(ステップS204)通信制御部105は、通信I/F106に接続されている通信装置から受け取ったユーザーデータをデータフレームに生成する際に、経由する電力線通信装置のヘッダを付加する。例えば、図12(a)で説明したように、経由する装置間の送信元アドレス(SA)と宛先アドレス(DA)とTypeフィールドとからなる1つの送受信単位毎のヘッダを付加する。尚、これらの付加ヘッダは、最終宛先までの付加ヘッダを含めて最初の送信元で作成される。
(ステップS205)通信制御部105は、付加ヘッダが付加されたデータフレームを所定の方式で変調して、カプラ104および電源供給部102を介して電力線151に送信する。例えば、ステップS203からジャンプしてきた場合は、直接通信可能な送信先へのデータフレームが送信され、ステップS210からきた場合は、付加ヘッダの一部が削除されたデータフレームが送信される。
このようにして、送信処理が実行される。次に、送信処理で送信されたデータフレームの受信処理について、送信処理と同じ図13を用いて説明する。
(ステップS206)通信制御部105は、受信処理を開始する。例えば、通信制御部105は、電力線151から電源供給部102およびカプラ104を介してPLC信号を受信する。
(ステップS207)通信制御部105は、受信したPLC信号をイーサネットデータフレームに復調する。
(ステップS208)通信制御部105は、復調したデータフレームのTypeフィールドの値を識別する。例えば、先に図12で説明したように、Type=0の場合はTypeフィールドの後ろにユーザーデータがあることを示す。Type=1535の場合はTypeフィールドの後ろに付加ヘッダがあることを示す。
(ステップS209)通信制御部105は、ステップS110の識別結果より、付加ヘッダがあるか否かを判別する。付加ヘッダがある場合はステップS210に進み、付加ヘッダがない場合はステップS211に進む。
(ステップS210)通信制御部105は、付加ヘッダの一部(自装置宛の付加ヘッダ)を削除する。例えば、図12(a)のデータフレームを電力線通信装置bが受信した場合は、電力線通信装置bの制御部105は、自己宛のヘッダ部分305を削除する。
(ステップS211)通信制御部105は、自装置宛のデータフレームをユーザーデータに分解して通信I/F106に出力する。例えば、通信I/F106がLANインターフェースである場合、ユーザーデータをイーサネットフレームに形成して出力する。
(ステップS212)一連の送信処理または受信処理を終了する。尚、送信するユーザーデータを通信I/F106から入力する毎に上記の一連の送信処理が実行され、或いは、電力線151から電源供給部102およびカプラ104を介してPLC信号を受信する毎に上記の一連の受信処理が実行される。
このように、本実施形態に係る電力線通信装置101は、第1の実施形態と同様に、初期接続時或いは定期的に自装置が通信可能な他装置を示す通信可能相手情報を作成して送受信することにより、直接通信できない最終宛先までの経路を知ることができる。また最初の送信元の装置において、最初の送信元の装置から最終宛先の装置まで経由する順番に並べたデータフレームを作成し、途中の経由する装置は、データフレームに付加された付加ヘッダが残っているか否かのチェックと自装置宛の付加ヘッダの削除とを行うだけで最終宛先まで伝送することができる。ここで、図13のフローチャートで制御部110が行う処理は、請求項の伝送フレーム作成部および伝送フレーム送受信部として動作する場合の一例である。
以上、各実施形態で説明してきたように、本発明に係る電力線通信装置101は、自装置が通信可能な他装置を示す通信可能相手情報を作成して送受信することにより、直接通信できない最終宛先までの経路を知ることができる。また、ユーザデータの伝送フレームの宛先情報を更新しながら中継することにより、簡単な処理で効率の良い経路を選択し、直接通信できない最終宛先までユーザデータを確実に伝送することができる。
尚、本発明は、その精神またはその主要な特徴から逸脱することなく他の多様な形で実施することができる。そのため、上述した実施形態はあらゆる点で単なる例示に過ぎず、限定的に解釈してはならない。本発明は、特許請求の範囲によって示されるものであって、本発明は明細書本文にはなんら拘束されない。さらに、特許請求の範囲の均等範囲に属する変形や変更は、全て本発明の範囲内である。