JP2011114779A - 端末装置および通信方法 - Google Patents
端末装置および通信方法 Download PDFInfo
- Publication number
- JP2011114779A JP2011114779A JP2009271566A JP2009271566A JP2011114779A JP 2011114779 A JP2011114779 A JP 2011114779A JP 2009271566 A JP2009271566 A JP 2009271566A JP 2009271566 A JP2009271566 A JP 2009271566A JP 2011114779 A JP2011114779 A JP 2011114779A
- Authority
- JP
- Japan
- Prior art keywords
- terminal device
- slot
- message
- terminal
- communication
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/54—Systems for transmission via power distribution lines
- H04B3/548—Systems for transmission via power distribution lines the power on the line being DC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5038—Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
Abstract
【課題】フレーム長が端末IDより短い場合であっても、通信アドレスおよびスロットの割り当てを自動で行う。
【解決手段】親機100および子機200がスロットを利用して通信する通信方法であって、子機200が、第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを親機100に送信するステップ(S203、S204)と、親機100が、第1〜第nの要求メッセージを受信し、第1〜第nの子機ID片をそれぞれ第1〜第nの選択端末ID片として含む第1〜第nの応答メッセージを送信するステップ(S104、S106)と、親機100が、通信アドレスとスロットとを含むアドレス通知メッセージを送信するステップ(S107)と、子機200が、第1〜第nの選択端末ID片が第1〜第nの子機ID片に等しい場合に、通信アドレスとスロットとを子機200の通信インタフェース210に設定するステップ(S208)とを含む。
【選択図】図9
【解決手段】親機100および子機200がスロットを利用して通信する通信方法であって、子機200が、第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを親機100に送信するステップ(S203、S204)と、親機100が、第1〜第nの要求メッセージを受信し、第1〜第nの子機ID片をそれぞれ第1〜第nの選択端末ID片として含む第1〜第nの応答メッセージを送信するステップ(S104、S106)と、親機100が、通信アドレスとスロットとを含むアドレス通知メッセージを送信するステップ(S107)と、子機200が、第1〜第nの選択端末ID片が第1〜第nの子機ID片に等しい場合に、通信アドレスとスロットとを子機200の通信インタフェース210に設定するステップ(S208)とを含む。
【選択図】図9
Description
本発明は、直流の電力線を通信線として使用する端末装置、および当該端末装置を用いる通信方法に関する。
近年、家庭内のAC(交流)100Vの電力線を通信路としても利用することで、電力線により端末装置に電力を供給しつつ、併せて通信も可能とするPLC(Power Line Communications)技術が開発されている。さらには、特許文献1に示すように、DC(直流)電力線への転用も進んでいる。
一方、特許文献2に示す発明のように、自転車に搭載する表示装置、変速スイッチ、変速装置等の端末装置を、DC電力線を兼ねた通信路で接続し、通信路によってこれらの端末装置に電源を供給するとともに、端末装置間で通信を行う装置が開発されている。特許文献2においては、各端末装置はアナログ信号を出力し、通信を行っている。しかしながら、上述したDC電力線を通信路として利用するPLC技術をこの分野に適用することで、各端末装置がデジタル通信によって情報を交換することも可能となる。
このような自転車用ネットワークにおける通信では、最大の送信遅延時間が保証できることが重要である。これは、例えばユーザーが変速スイッチを操作してから、実際に変速装置によってギアが選択されるまでの所要時間に直接関わるためである。
最大の送信遅延時間を保証するためには、各端末装置が一定の時間以内に必ず送信権を獲得できることが必要である。このような通信制御方式の1つとして、送信権巡回方式がある。
特許文献3は、送信権巡回方式を採用する通信制御方式の一例を示す。特許文献3によると、ネットワークがビジー状態であるかアイドル状態であるかを検出するバス状態検出手段と、ネットワークがアイドル状態であるときに単位アイドル時間まで繰り返しカウントするカウント手段と、カウント手段による単位アイドル時間を検出するたびにインクリメントするパラメータが、自己に割り当てられた固有のノードID0を初期値とする自己のノードIDと一致したときに送信フレームを生成する制御手段と、制御手段によって生成された送信フレームをネットワーク上に送信する送信手段と、ネットワーク上の他の端末装置から送信された送信フレームを受信する受信手段とを設け、制御手段は受信手段により受信した送信フレーム内に含まれる固有のノードID0を抽出し、パラメータを固有のノードID0に更新する特徴を持つ。
この手法によれば、送信権が各端末装置を一定の順序で巡回するため、フレーム長と接続する端末台数の上限とをそれぞれ決定すれば、各端末装置は、一定の時間以内に必ず送信権が得られる。
なお、ネットワークがアイドル状態である場合の待ち時間である単位アイドル時間と、いずれかの端末装置が送信フレームを送信している時間とを、可変長のスロットと言い換えることもできる。この場合、送信権は該当スロットの到来に等しく、送信権を得た端末装置は到来したスロットに割り当てられた端末装置に等しい。
しかしながら、上記に示した通信制御方式では、通常のデータ通信を行う前に、各端末装置に通信アドレスだけでなく、固有のノードIDも割り当てる必要がある。固有のノードIDは、予め固定で決定しておくわけにはいかない。
例えば、自転車のネットワークに接続される端末装置は、ユーザーの使用状況に応じてネットワークに接続し、あるいは、ネットワークから取り外されるといったことが頻繁に行われる場合も想定される。また、ユーザーの利便性の点からも、通信アドレスおよび固有のノードIDなどのパラメータの設定は、ユーザーの手を介さずに、自動的に実施されることが望まれる。
さらに、DC電力線を通信路として使用する、自転車用のネットワークに接続される端末装置は、消費電力およびチップのサイズを抑えるため、通信速度は低速で、それゆえフレーム長も短く、端末装置に固有の端末IDよりも短い場合が多い。このため、複数の端末装置が同時に通信アドレスおよびスロットの割り当てを要求した場合、通信端末を特定することが困難となる。
そこで、本発明は、フレーム長が端末IDより短い場合であっても、通信アドレスおよびスロットの割り当てを自動で行うことができる端末装置および通信方法を提供することを目的とする。
上記課題を解決するため、本発明に係る端末装置(子機)は、直流の電力線を通信路として用い、当該通信路を時間的に分割したスロットを利用して他の端末装置と通信を行う端末装置であって、前記他の端末装置との通信を制御する制御部と、前記電力線の信号から受信信号を分離し、所定の送信信号を前記電力線の信号に重畳する分離混合部と、前記分離混合部によって分離された受信信号を前記制御部に出力し、かつ、前記制御部による制御に基づいて前記送信信号を前記分離混合部に出力する通信インタフェースとを備え、前記制御部は、自端末装置を識別するための端末IDを第1〜第n(nは2以上の整数)の子機ID片に分割し、当該第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを順次、前記送信信号として出力し、前記他の端末装置から前記分離混合部および前記通信インタフェースを介して、前記第1〜第nの要求メッセージに対する応答であり、第1〜第nの選択端末ID片をそれぞれ含む第1〜第nの応答メッセージを順次、前記受信信号として受信し、受信した第1〜第nの応答メッセージに含まれる第1〜第nの選択端末ID片が前記第1〜第nの子機ID片に一致した場合に、前記他の端末装置から送信されるアドレス通知メッセージに含まれる通信アドレスとスロット番号とを前記通信インタフェースに設定する。
これにより、子機は、端末IDを複数の子機ID片に分割することで、フレーム長が端末IDより短い場合でも端末IDを、他の端末装置である親機に送信することができる。さらに、子機は、親機からの応答メッセージに含まれる選択端末ID片が子機ID片に一致した場合に、親機によって自端末装置が選択されたと判断することで、複数の子機が通信路を利用している場合であっても、親機から通信アドレスとスロットとを取得することが可能となる。
また、前記制御部は、前記第1〜第nの応答メッセージのうちの第m(1≦m≦n)の応答メッセージに含まれる第mの選択端末ID片が、前記第1〜第nの要求メッセージのうちの第mの要求メッセージに含まれる第mの子機ID片と一致しない場合、前記第mの要求メッセージより後の要求メッセージの送信を中止してもよい。
これにより、複数の子機が要求メッセージを送信している場合において、子機ID片と選択端末ID片とが一致しない場合、親機によって他の子機が選択されたと判断して、要求メッセージの送信を中止することで、要求メッセージ同士の衝突を減少させることができる。したがって、処理時間を短縮させることが可能となる。
また、前記制御部は、乱数を用いて前記第mの要求メッセージの送信待ち時間を算出し、所定の時点から前記送信待ち時間が経過した後に、通信アドレスが割り当てられていない端末装置専用のスロットである特定スロットを用いて、前記第mの要求メッセージを送信してもよい。
これにより、乱数を用いることで、通信アドレスおよびスロットの割り当てを要求する端末装置の台数が多い場合であっても、要求メッセージ同士の衝突が減少し、処理時間を短縮させることが可能となる。
また、前記制御部は、さらに、前記第1〜第nの要求メッセージのそれぞれの前記送信待ち時間を算出するのに用いる乱数の最大値を、値が順に小さくなるように決定してもよい。
これによると、より後で送信する要求メッセージであるほど、送信待ち時間の最大値が小さくなり、処理時間を短縮することが可能となる。
また、前記制御部は、前記他の端末装置から定期的に送信される報知メッセージを受信したときから、前記第1の要求メッセージの送信待ち時間が経過した後に、前記第1の要求メッセージを送信してもよい。
これにより、アドレス割り当てを行うタイミングが明確化され、処理が容易となる。
また、前記制御部は、さらに、前記報知メッセージに含まれる、どの端末装置にも割り当てられていないスロットの数を示す空きスロット数に応じて、前記送信待ち時間を算出するのに用いる乱数の最大値を決定してもよい。
これにより、通信アドレスとスロットとが割り当てられた端末装置の台数が増えるほど、つまり、通信アドレスとスロットとを割り当てるべき端末装置の台数が少なくなるほど、送信待ち時間の最大値が小さくなり、処理時間を短縮することが可能となる。
また、前記報知メッセージは、前記他の端末装置を識別するための端末IDが分割された第1〜第p(pは2以上の整数)の親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを含み、前記制御部は、前記第1〜第pの親機ID片が以前と異なる値である場合に、前記通信インタフェースに設定した通信アドレスとスロット番号とを初期化してもよい。
これにより、通信アドレスおよびスロットが割り当て済みであって、通常のデータ通信が可能な状態において、親機が別の親機に入れ替わった場合でも、適切でない通信アドレスとスロットとを使い続けることを避けることができる。
また、前記制御部は、前記他の端末装置に前記第mの要求メッセージを送信した後、前記他の端末装置から前記第mの応答メッセージを受信する前に、前記報知メッセージを受信した場合、前記第mの要求メッセージより後の要求メッセージの送信を中止するとともに、前記第1の要求メッセージを再送信してもよい。
これにより、別途、応答メッセージのタイムアウト処理を設ける必要がなく、処理が容易となる。
また、前記制御部は、前記第1の要求メッセージを再送信する場合、前記第1の要求メッセージの送信待ち時間を算出するのに用いる乱数の最大値を、前記第1の要求メッセージの初回の前記送信待ち時間を算出するのに用いた乱数の最大値より、値が大きくなるように決定してもよい。
これにより、再送信を行う場合、複数の子機が送信する要求メッセージ同士が衝突する確率が減少し、処理時間が短縮される。
また、前記制御部は、ビーコン周期を構成する複数のスロットのうち、前記他の端末装置に割り当てられたスロットを除いたスロットを選択し、選択したスロットを用いて前記第mの要求メッセージを送信してもよい。
これにより、要求メッセージの送信待ち時間が短縮され、処理時間を短縮することが可能となる。
また、前記制御部は、前記他の端末装置から特定メッセージを受信した場合に、前記通信インタフェースに設定した通信アドレスと、前記通信インタフェースに設定したスロット番号が示すスロットとを用いて、通常のデータ通信を開始してもよい。
これにより、例えば、通信アドレスとスロットとの割り当てが終了するまでデータ通信を行わないようにすることで、要求メッセージとデータ通信のためのパケットとが衝突することを防ぎ、処理時間を短縮させることが可能となる。
また、前記特定メッセージは、ビーコンであってもよい。
これにより、端末装置が通信を開始するためのメッセージを別途送信する必要がなく、処理が容易になる。
また、前記制御部は、前記他の端末装置に、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを送信し、前記他の端末装置から前記アドレス通知メッセージを受信した場合に、当該アドレス通知メッセージに含まれる通信アドレスと、前記スロット要求メッセージに含まれるスロット要求数のスロット番号とを前記通信インタフェースに設定してもよい。
これにより、子機は、新たにメッセージ交換を行うことなく、複数のスロットを取得することが可能となる。
また、前記制御部は、前記他の端末装置から、どの端末装置にも割り当てられていない空きスロットの少なくとも一部を示す空きスロット情報を含むメッセージを受信した場合、当該空きスロット情報が示す空きスロットに相当する期間において、前記通信インタフェースの通信機能を停止してもよい。
これにより、どの端末装置にも割り当てられていないスロットにおいては通信機能を停止させて消費電力を低減することが可能となる。
また、前記制御部は、自端末装置を識別するための端末IDの下位側から順に、それぞれ前記第1〜第nの子機ID片となるように分割してもよい。
これにより、確率的に早期に端末ID片の不一致を検出する端末装置が多くなり、要求メッセージの衝突頻度が減少し、割り当てに要する時間を短縮することができる。
また、本発明に係る端末装置(親機)は、また、直流の電力線を通信路として用い、当該通信路を時間的に分割したスロットを利用して他の端末装置と通信を行う端末装置であって、前記他の端末装置との通信を制御する制御部と、前記電力線の信号から受信信号を分離し、所定の送信信号を前記電力線の信号に重畳する分離混合部と、前記分離混合部によって分離された受信信号を前記制御部に出力し、かつ、前記制御部による制御に基づいて、前記送信信号を前記分離混合部に出力する通信インタフェースとを備え、前記制御部は、前記他の端末装置から前記分離混合部および前記通信インタフェースを介して、前記他の端末装置を識別するための端末IDが分割された第1〜第n(nは2以上の整数)の端末ID片をそれぞれ含む第1〜第nの要求メッセージを順次受信し、かつ、受信した第1〜第nの要求メッセージに対する応答であり、前記第1〜第nの端末ID片をそれぞれ含む第1〜第nの応答メッセージを順次ブロードキャスト送信し、前記第1〜第nの応答メッセージを全て送信した場合、前記他の端末装置に割り当てる通信アドレスとスロット番号とを含むアドレス通知メッセージをブロードキャスト送信する。
これにより、親機は、フレーム長が端末IDより短い場合でも、他の端末装置である子機の端末IDが分割された第1〜第nの端末ID片を全て受信することで、子機の端末IDを知ることができる。さらに、親機が、第1〜第nの端末ID片をそれぞれ含む応答メッセージを全て送信した場合に、子機は自分が親機によって選択されたと判断することができるので、親機は、子機に通信アドレスとスロットとを割り当てることが可能となる。
また、前記制御部は、さらに、前記他の端末装置に前記第1の要求メッセージを送信させるための報知メッセージを、定期的にブロードキャスト送信してもよい。
これにより、アドレス割り当て処理を行うタイミングが明確化され、処理が容易になる。
また、前記制御部は、どの端末装置にも割り当てていないスロットの数を示す空きスロット数を含む前記報知メッセージを送信してもよい。
これにより、子機は、空きスロット数に応じて、要求メッセージの送信待ち時間を調整することができ、処理時間を短縮できる。
また、前記制御部は、前記第1〜第nの応答メッセージのうちの第m(1≦m≦n)の応答メッセージを送信してから、所定の期間が経過した後に前記報知メッセージを再びブロードキャスト送信してもよい。
これにより、子機において、別途、応答メッセージのタイムアウト処理を設ける必要がなく、処理が容易となる。
また、前記制御部は、自端末装置を識別するための端末IDが分割された第1〜第p(pは2以上の整数)の親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを前記報知メッセージとして送信してもよい。
これにより、定期的に親機の端末IDを全ての子機に通知することで、通信アドレスおよびスロットが割り当て済みであって、通常のデータ通信が可能な状態において、親機が別の親機に置き換わった場合でも、親機が置き換わったことを子機に通知することが可能となる。
また、前記制御部は、通信アドレスとスロットとを前記他の端末装置へ割り当てる割り当て処理が完了したか否かを判定し、前記割り当て処理が完了したと判定した場合に、通常のデータ通信が開始可能になったことを通知するための特定メッセージをブロードキャスト送信してもよい。
これにより、すでに通信アドレスとスロットとが割り当てられた端末装置が送信するデータ通信のためのパケットと、アドレス割り当てのためのメッセージとが衝突することを防ぎ、処理時間が短縮される。
また、前記特定メッセージは、ビーコンであってもよい。
これにより、端末装置が通信を開始するためのメッセージを別途送信する必要がなく、処理が容易になる。
また、前記制御部は、前記他の端末装置から、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを受信した場合、前記スロット要求数のスロット番号を含む前記アドレス通知メッセージをブロードキャスト送信してもよい。
これにより、子機が複数のスロットを要望する場合でも、別途メッセージ交換を行うことなく、複数のスロットを割り当てることが可能となる。
また、前記制御部は、どの端末装置にも割り当てられていない空きスロットの少なくとも一部を示す空きスロット情報を含むメッセージを送信し、かつ、前記空きスロット情報が示す空きスロットに相当する期間において、前記通信インタフェースの通信機能を停止してもよい。
これにより、空きスロットがあれば消費電力を低減することが可能となる。
また、前記制御部は、複数のスロットを割り当てる場合、ビーコン周期を構成する複数のスロットのうち、先頭側または後ろ側から順に前記他の端末装置を含む1つ以上の他の端末装置に割り当てるスロットを決定してもよい。
これにより、空きスロットは常に連続したスロットで構成され、効率良い省電力化を行うことが可能となる。
また、前記端末装置は、自転車に搭載可能であり、互いに通信する部品であってもよい。
これにより、自転車の部品間で最大遅延時間が保証された制御通信が可能となる。
また、本発明に係る通信方法は、また、直流の電力線を通信路として用いるネットワークにおいて、第1の端末装置および第2の端末装置が前記通信路を時間的に分割したスロットを利用して通信する通信方法であって、前記第2の端末装置が、当該第2の端末装置を識別するための端末IDを第1〜第n(nは2以上の整数)の子機ID片に分割し、当該第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを順次、前記第1の端末装置に送信する要求メッセージ送信ステップと、前記第1の端末装置が、前記第1〜第nの要求メッセージを順次受信し、かつ、受信した第1〜第nの要求メッセージに対する応答であり、前記第1〜第nの子機ID片をそれぞれ第1〜第nの選択端末ID片として含む第1〜第nの応答メッセージを順次、ブロードキャスト送信する応答メッセージ送信ステップと、前記第1の端末装置が、前記第1〜第nの応答メッセージを送信した後に、前記第2の端末装置に割り当てる通信アドレスとスロット番号とを含むアドレス通知メッセージを送信するアドレス通知メッセージ送信ステップと、前記第2の端末装置が、前記アドレス通知メッセージを受信するアドレス通知メッセージ受信ステップと、前記第2の端末装置が、前記第1〜第nの選択端末ID片が前記第1〜第nの子機ID片に等しい場合に、前記アドレス通知メッセージに含まれる通信アドレスとスロット番号とを、前記第2の端末装置の通信インタフェースに設定するアドレス設定ステップとを含む。
これにより、第2の端末装置である子機は、フレーム長が端末IDよりも短い場合でも、端末IDを複数の子機ID片に分割することで、第1の端末装置である親機に送信することができる。さらに、子機は、親機からの応答メッセージに含まれる選択端末ID片が子機ID片に一致した場合に、親機によって自端末装置が選択されたと判断することで、複数の子機が通信路を利用している場合であっても、親機は、子機に通信アドレスとスロットとを割り当てることが可能となる。
また、前記要求メッセージ送信ステップでは、前記第2の端末装置が、前記第1〜第nの応答メッセージを順次受信し、前記第1〜第nの応答メッセージのうちの第m(1≦m≦n)の応答メッセージに含まれる第mの選択端末ID片が、当該第2の端末装置の第mの子機ID片に一致しない場合、前記第1〜第nの要求メッセージのうちの第mの要求メッセージより後の要求メッセージの送信を中止してもよい。
これにより、要求メッセージ同士が衝突する確率が減少し、処理時間を短縮できる。
また、前記通信方法は、さらに、前記第2の端末装置が、乱数を用いて前記第mの要求メッセージの送信待ち時間を算出する送信待ち時間算出ステップを含み、前記要求メッセージ送信ステップでは、所定の時点から前記送信待ち時間が経過した後に、通信アドレスが割り当てられていない端末装置専用のスロットである特定スロットを用いて、前記第mの要求メッセージを送信してもよい。
これにより、複数の子機が要求メッセージを送信する場合であっても、メッセージ同士が衝突する確率が減少し、処理時間を短縮できる。
また、前記送信待ち時間算出ステップでは、さらに、前記第1〜第nの要求メッセージのそれぞれの送信待ち時間を算出するのに用いる乱数の最大値を、値が順に小さくなるように決定してもよい。
これにより、要求メッセージを送信する端末装置の台数の減少にあわせて送信待ち時間も減少するため、処理時間を短縮できる。
また、前記通信方法は、さらに、前記第1の端末装置が、前記第1の要求メッセージを送信させるための報知メッセージを定期的にブロードキャスト送信する報知メッセージ送信ステップを含み、前記要求メッセージ送信ステップでは、前記第2の端末装置が、前記報知メッセージを受信したときから、前記第1の要求メッセージの送信待ち時間が経過した後に、前記第1の要求メッセージを送信してもよい。
これにより、アドレス割り当て処理を行うタイミングが明確化され、処理が容易となる。
また、前記報知メッセージ送信ステップでは、どの端末装置にも割り当てていないスロットの数を示す空きスロット数を含む前記報知メッセージを送信し、前記送信待ち時間算出ステップでは、前記空きスロット数に応じて、前記送信待ち時間を算出するのに用いる乱数の最大値を決定してもよい。
これにより、通信アドレスとスロットとの割り当てを行う端末装置の減少に従い、送信待ち時間が短縮されるため、処理時間を短縮できる。
また、前記報知メッセージ送信ステップでは、前記第mの応答メッセージを送信してから、所定の期間が経過した後に前記報知メッセージを再び送信し、前記要求メッセージ送信ステップでは、前記第mの要求メッセージを送信した後、前記第mの応答メッセージを受信する前に、前記報知メッセージを受信した場合、前記第mの要求メッセージの後の要求メッセージの送信を中止するとともに、前記第1の要求メッセージを再送信してもよい。
これにより、子機は応答メッセージのタイムアウトのための特別な機構を持つ必要がなく、実装が簡単になる。
また、前記送信待ち時間算出ステップでは、前記第1の要求メッセージを再送信する場合、前記第1の要求メッセージの送信待ち時間を算出するのに用いる乱数の最大値を、前記第1の要求メッセージの初回の送信待ち時間を算出するのに用いた乱数の最大値より、値が大きくなるように決定してもよい。
これにより、再送信時は、複数の子機が送信したアドレス要求メッセージ同士が衝突する確率が減少し、処理時間を短縮できる。
また、前記報知メッセージ送信ステップでは、前記第1の端末装置を識別するための端末IDを第1〜第p(pは2以上の整数)の親機ID片に分割し、当該第1〜第pの親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを前記報知メッセージとして送信し、前記通信方法は、さらに、前記第2の端末装置が、前記報知メッセージを受信し、受信した報知メッセージに含まれる前記第1〜第pの親機ID片が以前と異なる値である場合に、前記第2の端末装置の通信インタフェースに設定した通信アドレスとスロット番号とを初期化する初期化ステップを含んでもよい。
これにより、全ての子機に定期的に親機の端末IDを通知でき、通信アドレスおよびスロットが割り当て済みであって、通常のデータ通信が可能な状態中において親機が変更された場合でも、子機は親機の変更を検出し、不適切な通信アドレスを使用し続けることを避けることができる。
また、前記要求メッセージ送信ステップでは、ビーコン周期を構成する複数のスロットのうち、前記第1の端末装置に割り当てられたスロットを除いたスロットを、乱数を用いて選択し、選択したスロットを用いて前記第mの要求メッセージを送信してもよい。
これにより、1ビーコン周期で1つの要求メッセージを送信するため、処理時間が短縮される。
また、前記通信方法は、さらに、前記第1の端末装置が、通信アドレスとスロットとを前記第2の端末装置へ割り当てる割り当て処理が完了したか否かを判定し、前記割り当て処理が完了したと判定した場合に、通常のデータ通信が開始可能になったことを通知するための特定メッセージをブロードキャスト送信する特定メッセージ送信ステップと、前記第2の端末装置が、前記特定メッセージを受信した場合に、前記通信インタフェースに設定した通信アドレスと、前記通信インタフェースに設定したスロット番号が示すスロットとを用いて、通常のデータ通信を開始する通信開始ステップとを含んでもよい。
これにより、すでに通信アドレスとスロットとが割り当てられた端末装置が送信するデータ通信のためのパケットと、アドレス割り当てのためのメッセージとが衝突することを防ぎ、処理時間が短縮される。
また、前記特定メッセージは、ビーコンであってもよい。
これにより、端末装置が通信を開始するためのメッセージを別途送信する必要がなく、処理が容易になる。
また、前記通信方法は、さらに、前記第2の端末装置が、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを送信するスロット要求メッセージ送信ステップと、前記第1の端末装置が、前記スロット要求メッセージを受信した場合、前記第2の端末装置に割り当てる、前記スロット要求数のスロットを決定するスロット決定ステップとを含んでもよい。
これにより、一度に複数のスロットを割り当てる場合でも、別途メッセージ交換を行うことなく割り当てることが可能となる。
また、前記通信方法は、さらに、前記第1の端末装置が、どの端末装置にも割り当てられていない空きスロットの少なくとも一部を示す空きスロット情報を含むメッセージを送信する空きスロット情報送信ステップと、前記第2の端末装置が、前記空きスロット情報を含むメッセージを受信し、前記空きスロット情報が示す空きスロットに相当する期間において、前記第2の端末装置の通信インタフェースの通信機能を停止する省電力ステップとを含んでもよい。
これにより、空きスロットがあれば端末装置の消費電力を抑えることが可能となる。
また、前記アドレス通知メッセージ送信ステップでは、複数のスロットを割り当てる場合、ビーコン周期を構成する複数のスロットのうち、先頭側または後ろ側から順に前記他の端末装置を含む1以上の他の端末装置に割り当てるスロットを決定してもよい。
これにより、空きスロットは常に連続したスロットで構成され、効率良い省電力化を行うことが可能となる。
また、前記要求メッセージ送信ステップでは、前記第2の端末装置の端末IDを、下位側から順に前記第1〜第nの子機ID片となるように分割してもよい。
これにより、確率的に早期に端末ID片の不一致を検出する端末装置が多くなり、アドレス要求メッセージの衝突頻度が減少し、処理時間が短縮される。
また、前記第1および第2の端末装置は、自転車に搭載可能であり、互いに通信する部品であってもよい。
これにより、自転車の部品間で送信権巡回型通信制御を用いた通信が可能となる。
本発明に係る端末装置および通信方法によれば、端末装置固有の端末IDよりもフレーム長が短い場合であっても、効率良く通信アドレスとスロットとを端末装置に割り当てることが可能となる。
以下では、本発明に係る端末装置、および通信方法について実施の形態に基づいて詳細に説明する。なお、以下の実施の形態では、特に必要なとき以外は同一または同様な部分の説明を原則として繰り返さない。
(実施の形態1)
実施の形態1に係る通信方法は、第1の端末装置である親機および第2の端末装置である子機が通信路を時間的に分割したスロットを利用して通信する通信方法であって、子機が、第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを親機に送信するステップと、親機が、第1〜第nの要求メッセージを受信し、第1〜第nの子機ID片をそれぞれ第1〜第nの選択端末ID片として含む第1〜第nの応答メッセージを送信するステップと、親機が、通信アドレスとスロットとを含むアドレス通知メッセージを送信するステップと、子機が、アドレス通知メッセージを受信するステップと、子機が、選択端末ID片が子機ID片に等しい場合に、通信アドレスとスロット番号とを子機の通信インタフェースに設定するステップとを含むことを特徴とする。
実施の形態1に係る通信方法は、第1の端末装置である親機および第2の端末装置である子機が通信路を時間的に分割したスロットを利用して通信する通信方法であって、子機が、第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを親機に送信するステップと、親機が、第1〜第nの要求メッセージを受信し、第1〜第nの子機ID片をそれぞれ第1〜第nの選択端末ID片として含む第1〜第nの応答メッセージを送信するステップと、親機が、通信アドレスとスロットとを含むアドレス通知メッセージを送信するステップと、子機が、アドレス通知メッセージを受信するステップと、子機が、選択端末ID片が子機ID片に等しい場合に、通信アドレスとスロット番号とを子機の通信インタフェースに設定するステップとを含むことを特徴とする。
まず、実施の形態1に係る端末装置が適用されるネットワークの構成について説明する。
図1は、本発明の実施の形態1における自転車ネットワークの構成の一例を示す図である。図1に示す自転車ネットワークは、複数の端末装置(親機100と、子機200および子機300)と、通信路400と、バッテリー500とを備える。
実施の形態1においては、複数の端末装置はそれぞれ、自転車に搭載可能な部品であって、親機100、子機200および子機300として動作する。通信路400は、複数の端末装置(親機100、子機200および子機300)間で通信を行うための通信路である。通信路400はさらに、DC電流の電力線でもある。バッテリー500は、電力線でもある通信路400を介して、複数の端末装置(親機100、子機200および子機300)のそれぞれに電力を供給する。
次に、各端末装置(親機100、子機200および子機300)の詳細な説明をする前に、実施の形態1における通信方式について、図2を用いて説明する。図2は、本発明の実施の形態1におけるスロットの構成の一例を示す図である。
実施の形態1では、送信権巡回型通信制御を用いる。送信権巡回型通信制御では、通信路をスロットに時分割し、各スロットに、送信権を持つ1台の端末装置を割り当てる。
各端末装置(親機100、子機200および子機300)は、常に通信路400を監視しており、通信路400がビジーでない状態が所定の時間だけ経過すると、次のスロットへ移行したとみなす。一方、通信路400がビジーであった場合、各端末装置(親機100、子機200および子機300)は、いずれかの端末装置がメッセージを送信中であるとみなし、通信路400が一旦ビジーでない状態になればメッセージの送信が完了し、次のスロットへ移行したとみなす。
なお、後述するように実施の形態1では、メッセージ長が全て等しいため、通信路400がビジーであることを検出してから所定の時間経過した場合を次のスロットへ移行したとみなしてもよい。このようにして各端末装置(親機100、子機200および子機300)は、今はどのスロットであるかを自律的に判断する。
そして、各端末装置(親機100、子機200および子機300)は、送信すべきデータが存在する場合に、自端末装置が送信権を持つスロットの時刻になったときに、データを送信する。各スロットに割り当てる端末装置を高々1つとすると、通信路400上での衝突を回避し、再送が発生しない。各端末装置での同期合わせのため、親機100は、周期的にビーコン、もしくはビーコン識別情報を含むメッセージ(以下、ビーコン付きメッセージ)を送信する。親機100を除く端末装置(子機200および子機300)は、ビーコンまたはビーコン付きメッセージの受信により同期合わせを行う。
図2において、スロット0〜31は、スロットを識別するスロット番号である。親機100は、32スロットごとにビーコンまたはビーコン付きメッセージを送信する。このスロット0〜31に相当する期間をビーコン周期と呼ぶ。つまり、ビーコン周期は、複数のスロット(ここでは、32個のスロット)から構成される。ビーコン周期の先頭から順にスロット番号を、スロット0、スロット1…のように割り当てる。
ビーコン周期の最初のスロットであるスロット0は、ビーコンスロットである。ビーコンスロットには、必ず親機100が割り当てられる。親機100は、ビーコンスロットを用いて、ビーコンを送信する。
ビーコン周期の最後のスロットであるスロット31は、共用スロットである。共用スロットは、通信アドレスが割り当てられていない端末装置専用のスロットである特定スロットである。スロットが割り当てられていない端末装置は、共用スロットを用いて親機100と通信し、スロットの割り当てを行う。
なお、共用スロットを使用する端末装置の台数は1台に限定されないため、それぞれの端末装置から送信されたメッセージ同士の衝突が発生し得る。なお、本実施の形態における共用スロットは、ビーコン周期の最後のスロットに設けているため、仮にメッセージ同士の衝突が発生した場合でも、同じビーコン周期においてはビーコンスロット(スロット0)や通常スロット(スロット1〜30)の動作には影響を与えない。
スロット1〜スロット30は、通常スロットである。各子機に1スロットずつが割り当てられ、各子機が割り当てられたスロットを用いてメッセージを送信する。なお、子機台数が30台未満の場合、割り当てられないスロットが発生するが、本実施の形態においては親機、子機とも1端末装置当たり1スロットのみ割り当てるものとし、空きスロットにはどの端末装置も割り当てないままとする。
次に、各端末装置が送信するフレームについて、図3A〜図3Cを用いて説明する。図3Aは、実施の形態1において、端末装置(親機100、子機200および子機300)が送信するフレーム構造の一例を示す図である。図3Bは、実施の形態1において、フレームの種別を示すtypeの構成の一例を示す図である。図3Cは、実施の形態1において、ペイロードに含まれる制御メッセージの構成の一例を示す図である。
図3Aに示すように、フレームは、DA(Destination Address)、SA(Source Address)、type、ペイロード、CRC(Cyclic Redundancy Check)から構成される。
DAは、宛先アドレスであり、6bit長のサイズを持つ。宛先アドレスが0〜31の場合、DAは、それぞれ0x00〜0x1Fとなる。また、宛先アドレスがブロードキャストアドレスの場合、DAは、0x3Fとなる。
SAは、送信元アドレスであり、DAと同様に6bit長のサイズを持つ。送信元アドレスが0〜31の場合、SAは、それぞれ0x00〜0x1Fとなる。また、端末装置が通信アドレスを付与される前にフレームを送信する場合、SAは、0x3Fとなる。
typeは、フレームの種別を表し、2bit長のサイズを持つ。図3Bに示すように、typeは、メッセージ種別、およびビーコン識別子から構成される。メッセージ種別は、ペイロードに格納されたメッセージの種別を示している。メッセージ種別が、0ならばデータメッセージが、1ならば制御メッセージがペイロードに格納されている。ビーコン識別子は、フレームがビーコンであるか否かを示している。ビーコン識別子が、0ならば通常のフレーム、1ならばビーコンとして機能するフレームである。
ペイロードは、4byte長のサイズを持ち、メッセージを格納する。メッセージは、データメッセージまたは制御メッセージである。メッセージの区別は、上述のメッセージ種別により識別される。
データメッセージは、フリーフォーマットである。データメッセージは、端末装置への通信アドレスおよびスロットが割り当てられた後に実行することが可能な通常のデータ通信に利用される。
制御メッセージは、図3Cに示すフォーマットを持つ。制御メッセージは、端末装置への通信アドレスおよびスロットの割り当て処理に利用される。制御メッセージは、1byte長のメッセージヘッダと、3byte長のメッセージボディとから構成される。メッセージヘッダは、制御メッセージの種類を識別する識別子であるメッセージIDと拡張情報とから構成される。拡張情報は、通常は0が設定される。また、メッセージボディは、メッセージIDごとに構造が規定される。
以上説明したように、各端末装置(親機100、子機200および子機300)は、1つのスロットを用いて、4byte長のメッセージを送信することで、他の端末装置との通信を行う。
続いて、図4〜図6を用いて、親機100、子機200および子機300の構成について詳しく説明する。図4は、実施の形態1における端末装置の一例である親機100の詳細な構成を示す図である。図5は、実施の形態1における端末装置の一例である子機200の詳細な構成を示す図である。図6は、実施の形態1における端末装置の別の一例である子機300の詳細な構成を示す図である。
まず、図4を用いて、親機100の構成について詳しく説明する。図4に示すように、親機100は、通信インタフェース110と、制御部120と、分離混合部130と、自転車部品140(ここでは、サイクルコンピュータ)とを備える。
通信インタフェース110は、通信路400を介して他の端末装置(子機200および子機300)と通信するためのインタフェースである。具体的には、通信インタフェース110は、分離混合部130によって電力線の信号から分離された受信信号を制御部120に出力する。また、通信インタフェース110は、制御部120からの制御に基づいて、所定の送信信号を分離混合部130に出力する。より具体的には、通信インタフェース110は、制御部120によって通信アドレスおよびスロット番号が設定され、設定されたスロット番号が示すスロットを利用して、設定された通信アドレスを宛先としてデータの送信を行う。
制御部120は、他の端末装置(ここでは、子機200および子機300)との通信を制御する。具体的には、制御部120は、通信インタフェース110を介して、他の端末装置が備える制御部との間で制御メッセージの送受信を行う。また、自転車部品140が他の端末装置が備える自転車部品との間でデータ通信を行うにあたり、制御部120は、自転車部品140に代わって通信処理を行う。
分離混合部130は、通信インタフェース110からの送信信号を電力線の信号と重畳して混合信号として通信路400に出力する。また逆に、分離混合部130は、通信路400上の混合信号を受信信号と電力線の信号とに分離する。そして、分離混合部130は、通信信号を通信インタフェース110に出力するとともに、親機100を構成する各部に電力信号を供給することで、各部に電力を供給する。
自転車部品140は、親機100においてはサイクルコンピュータが接続されている。サイクルコンピュータは一例であり、自転車部品140の種別が本発明に影響を及ぼすものではない。
ここで、制御部120のより詳細な構成について説明する。図1に示すように、制御部120は、メッセージ交換部121と、ID管理部122と、アドレス管理部123とを備える。
メッセージ交換部121は、自転車部品140から送信すべきデータと宛先とを受け取った場合、通信インタフェース110を介して、受け取ったデータをデータメッセージとして送信する。また、メッセージ交換部121は、通信インタフェース110を介して、他の端末装置から親機100宛のデータメッセージを受信すると、自転車部品140に受け渡す。
さらに、メッセージ交換部121は、他の端末装置のメッセージ交換部と通信を行うための制御データを生成し、通信インタフェース110を介して、制御メッセージとして送信する。また、メッセージ交換部121は、通信インタフェース110を介して、他の端末装置上のメッセージ交換部からの制御メッセージを受信すると、受信した制御メッセージに基づいた動作を行う。
このように、メッセージ交換部121は、自転車部品同士のデータ通信と、メッセージ交換部同士の制御通信とを行う。
ID管理部122は、親機100を他の端末装置と区別するための識別子である端末IDを保有する。親機100の端末IDを、ここでは特に親機IDと呼ぶ。図7は、各端末装置(親機100、子機200および子機300)の端末IDの一覧の一例を示す図である。ID管理部122は、図7に示すように、親機IDとして「00:0F:1F:D7:72:91」を保持する。
アドレス管理部123は、アドレス管理テーブルを用いて、スロット番号と割り当てる通信アドレスとの組を保持する。図8Aは、初期状態のアドレス管理テーブルの一例を示す図である。図8Bは、子機を登録した状態のアドレス管理テーブルの一例を示す図である。アドレス管理テーブルは、スロットごとに有効/無効フラグ、通信アドレス、および端末IDを保持する。
有効/無効フラグは、対応するスロット全体が有効(=割り当て済み)か、無効(=未割り当て)かを示すフラグである。
通信アドレスは、対応するスロットに割り当てる子機に対して付与する予定の通信アドレス、または、対応するスロットに割り当てた子機に対して付与した通信アドレスを示す。有効/無効フラグが無効の場合、付与する予定の通信アドレスを示し、有効の場合、付与した通信アドレスを示す。なお、図8Aでは説明を容易にするために通信アドレスをスロットと同じ値としたが、両者が同じ値である必要はない。
端末IDは、対応するスロットに割り当てた子機の端末IDを示す。有効/無効フラグが有効である場合のみ、端末IDの値は有効である。図8Bには、スロット1に子機200の端末IDを登録した場合のアドレス管理テーブルを示している。
なお、親機100においては、通信インタフェース110に対し、スロット0および通信アドレス0が割り当てられている。ここでスロット0はビーコンスロットであり、親機100がビーコンを周期的に送信するために必須のスロットである。通信アドレスは、システム内で決定しておれば、特に0に限定されることはない。
続いて、図5を用いて、子機200の構成について詳しく説明する。
図5に示すように、子機200は、親機100と同様に、通信インタフェース210と、制御部220と、分離混合部230と、自転車部品240(ここでは、変速スイッチ)とを備える。なお、通信インタフェース210、分離混合部230はそれぞれ、親機100が備える通信インタフェース110、分離混合部130と同様のため、説明を省略する。
自転車部品240は、実施の形態1では、一例として自転車の変速スイッチである。変速スイッチは、ユーザーの操作により入力された変速情報を含むデータメッセージを、自転車部品140(サイクルコンピュータ)を介し、後述する自転車部品340(変速装置)へ通知する。
制御部220は、メッセージ交換部221と、ID管理部222とを備える。
メッセージ交換部221は、親機100におけるメッセージ交換部121と同様に、自転車部品240が他の端末装置上の自転車部品との間でデータメッセージの通信を行うためのデータ通信と、メッセージ交換部221自体が、他の端末装置上のメッセージ交換部との間で制御メッセージの通信を行うための制御通信とを行う。実施の形態1においては、メッセージ交換部221は、親機100のメッセージ交換部121との間で制御メッセージの通信を行い、通信インタフェース210に設定すべき通信アドレスとスロット番号とを取得する。さらには、メッセージ交換部221は、取得した通信アドレスとスロット番号とを通信インタフェース210に設定し、また、当該設定の解除あるいは初期化を行う。
ID管理部222は、子機200の端末IDを保有する。図7に示す例では、ID管理部222は、端末IDとして「00:0F:1F:D7:72:92」を保持する。
なお、初期状態においては、通信インタフェース210には通信アドレスは設定されておらず、通信インタフェース210は、アドレス未設定時の設定値0x3Fを使用する。また、通信インタフェース210は、初期状態において、共用スロット(スロット31)を使用する。
次に、図6を用いて、子機300の構成について詳しく説明する。
図6に示すように、子機300も子機200と同様に、通信インタフェース310と、制御部320と、分離混合部330と、自転車部品340(ここでは、変速装置)とを備える。なお、通信インタフェース310、分離混合部330はそれぞれ、子機200が備える通信インタフェース210、分離混合部230と同様のため、説明を省略する。
自転車部品340は、実施の形態1では、一例として自転車の変速装置であり、自転車部品240(変速スイッチ)からのデータメッセージに従って、自転車のギアを切り替える。
制御部320も子機200の場合と同様に、メッセージ交換部321、ID管理部322を備える。図7に示す例では、ID管理部322は、端末IDとして「00:0F:1F:D7:72:93」を保持する。
なお、初期状態においては、通信インタフェース310には通信アドレスは設定されておらず、通信インタフェース310は、子機200と同様に、アドレス未設定時の設定値0x3Fを使用する。また、通信インタフェース310は、初期状態において、共用スロット(スロット31)を使用する。
したがって、初期状態において子機200および子機300が親機100に送信したメッセージは、通信アドレスおよびスロットからは、どの子機が送信したメッセージであるかを、親機100は判別できない。同様に、親機100も、あるメッセージを子機200のみに送信することも、子機300のみに送信することもできない。各端末装置(親機100、子機200および子機300)が、特定の端末装置にメッセージを送信するためには、通信アドレスおよびスロットを割り当てる必要がある。
次に、図9〜図12を用いて、親機100が子機200および子機300に通信アドレスとスロットを割り当てるアドレス割り当て方法について説明する。
図9は、実施の形態1における各端末装置(親機100、子機200および子機300)間の動作を示すシーケンス図である。図10は、実施の形態1における端末装置の一例である親機100の動作を示すフローチャートである。図11は、実施の形態1における端末装置の一例である子機200のアドレス割り当て時の動作を示すフローチャートである。図12は、実施の形態1における端末装置の一例である子機200のアドレス割り当て後の動作を示すフローチャートである。
図9および図10に示すように、親機100は、通信路400を介して接続される全ての子機(図1の例では、子機200および子機300)に、親機100を識別するための親機IDを送信する(S101、S102)。親機IDは、図7に示すように全体で6byte長のサイズである。
しかしながら、図3Cに示すように制御メッセージのメッセージボディのサイズは3byte長である。このため、親機100の制御部120は、図13に示すように、親機IDを、メッセージボディのサイズである3byte長のサイズとなる第1の親機ID片と第2の親機ID片とに分割する。そして、制御部120は、親機IDが分割された第1の親機ID片および第2の親機ID片をそれぞれ制御メッセージに含めて順次送信する。
したがって、まず、親機100は、通信路400を介して接続される全ての子機に対して、第1の親機ID片を含む第1の親機ID報知メッセージをブロードキャスト送信する(S101)。具体的には、親機100のメッセージ交換部121は、ID管理部122から第1の親機ID片「D7:72:91」を取得し、取得した第1の親機ID片をメッセージボディに含む第1の親機ID報知メッセージを生成する。このとき、宛先にブロードキャストアドレス(0x3F)を指定し、生成した第1の親機ID報知メッセージを通信インタフェース110に出力する。
通信インタフェース110は、第1の親機ID報知メッセージを、スロット0の時刻が到来するときに、SAが0x0、DAが0x3F(ブロードキャストアドレス)、typeのメッセージ種別が1(制御)、ACKが0(通常)、ビーコン識別子が1(ビーコン)の状態で、通信路400に出力する。
子機200および子機300では、子機200のメッセージ交換部221および子機300のメッセージ交換部321は、通信インタフェース210および310を介して、第1の親機ID報知メッセージを受信する(S201)。そして、メッセージ交換部221および321はそれぞれ、第1の親機ID報知メッセージに含まれる第1の親機ID片を取り出し、一時保存する。
次に、親機100は、通信路400を介して接続された全ての子機に、第2の親機ID片を含む第2の親機ID報知メッセージをブロードキャスト送信する(S102)。具体的には、親機100のメッセージ交換部121は、ID管理部122から第2の親機ID片「00:0F:1F」を取得し、取得した第2の親機ID片をメッセージボディに含む第2の親機ID報知メッセージを生成する。このとき、宛先にブロードキャストアドレス(0x3F)を指定し、生成した第2の親機ID報知メッセージを通信インタフェース110に出力する。
子機200および子機300では、子機200のメッセージ交換部221および子機300のメッセージ交換部321は、第2の親機ID報知メッセージを受信する(S202)。そして、メッセージ交換部221および321はそれぞれ、第2の親機ID報知メッセージに含まれる第2の親機ID片を取り出し、第1の親機ID片と合わせて、一時保存する。これにより、子機200および子機300において、親機100の親機IDは「00:0F:1F:D7:72:91」であることが判明する。
続いて、子機200および子機300では、メッセージ交換部221および321は、親機100から通信アドレスとスロット番号とを取得するためのアドレス要求メッセージを親機100に送信する。ここで、子機200および子機300が親機100に送信するアドレス要求メッセージには、親機100が送信元を判定できるように、自端末の端末IDを含める必要がある。しかしながら、メッセージボディ長(3byte)<端末ID長(6byte)のため、一度に送信することはできない。
そこで、子機200および子機300は、端末IDをメッセージボディ長以下となるよう、それぞれの端末IDを第1の端末ID片(第1の子機ID片)と第2の端末ID片(第2の子機ID片)とに分割する。子機200および子機300は、第1の端末ID片を第1のアドレス要求メッセージとして、第2の端末ID片を第2のアドレス要求メッセージとして、親機100に送信する。
例えば、図13に示すように、子機200の第1の端末ID片は「D7:72:92」であり、子機200の第2の端末ID片は「00:0F:1F」である。子機300の第1の端末ID片は「D7:72:93」であり、子機300の第2の端末ID片は「00:0F:1F」である。
ここで、メッセージ交換部221および321は、子機200および300の端末IDを下位側から順に、第1の子機ID片、第2の子機ID片…となるように分割する。これにより、端末IDの下位側の方が上位側より、各端末装置間で異なっている場合が多いため、より早く端末IDの一致/不一致を判定することができる。
したがって、まず、メッセージ交換部221および321は、第1のアドレス要求メッセージを送信する(S203)。具体的には、メッセージ交換部221および321は、まず、乱数を用いて第1のアドレス要求メッセージを送信するまでの送信待ち時間を算出する。
図9においては、メッセージ交換部221が算出した送信待ち時間がt21であり、メッセージ交換部321が算出した送信待ち時間がt31である。図9に示すように、例えば、t21<t31となる関係がある。
次に、メッセージ交換部221および321は、所定の時点から、算出した送信待ち時間が経過するのを待つ。例えば、メッセージ交換部221および321は、第2の親機ID報知メッセージを受信した時点から、第1のアドレス要求メッセージの送信待ち時間が経過するのを待機する。メッセージ交換部221および321は、送信待ち時間の間に第1のアドレス応答メッセージを受信した場合、この第1のアドレス応答メッセージは別の子機宛のものであるため、以降の処理を取りやめ、再度、親機100から第1の親機ID報知メッセージを受信するのを待機する(S201に戻る)。
算出した送信待ち時間が経過すると、子機200および子機300のうち送信待ち時間の短い子機が、第1のアドレス要求メッセージを生成し、生成した第1のアドレス要求メッセージを送信する。図9に示す例では、送信待ち時間の短い子機200が処理を行う。
子機200のメッセージ交換部221は、ID管理部222から第1の端末ID片「D7:72:92」を取得し、取得した第1の端末ID片を含む第1のアドレス要求メッセージを生成する。そして、メッセージ交換部221は、親機100を宛先として、第1のアドレス要求メッセージを通信インタフェース210に出力する。
通信インタフェース210は、共用スロット(スロット31)の時刻が到来すると、SAが0x3F(通信アドレス未設定)、DAが0x0(親機100)、typeのメッセージ種別が1(制御)、ACKが0(通常)、ビーコン識別子が0(通常)の状態で、第1のアドレス要求メッセージを通信路400に出力する。一方、子機300のメッセージ交換部321は、子機200が第1のアドレス要求メッセージを送信した時点ではまだ送信待ちのままである。
親機100では、メッセージ交換部121は、第1のアドレス要求メッセージの受信を待つ(S103)。メッセージ交換部121は、所定の時間以内に第1のアドレス要求メッセージを受信した場合、受信した第1のアドレス要求メッセージから第1の端末ID片を抽出する。そして、メッセージ交換部121は、第1のアドレス要求メッセージに対する応答であり、第1の端末ID片を第1の選択ID片として含む第1のアドレス応答メッセージを生成し、全ての子機宛に送信する。
メッセージ交換部121は、所定の時間が経過しても第1のアドレス要求メッセージをいずれの子機からも受信しない場合、以降の処理を取りやめ、第1の親機ID報知メッセージを全ての子機に送信する(S101に戻る)。このように、メッセージ交換部121は、定期的に報知メッセージをブロードキャスト送信する。
なお、子機200および子機300が、第1のアドレス応答メッセージの受信待ちの場合に(S204)、第1の親機ID報知メッセージを受信した場合、子機200および子機300は、第1のアドレス応答メッセージの受信処理を中断するとともに、第1の親機ID報知メッセージの受信処理を行った後(S201)、第2の親機ID報知メッセージの受信を待機する(S202へ進む)。
子機200では、親機100から第1のアドレス応答メッセージを受信すると、子機200のメッセージ交換部221は、受信した第1のアドレス応答メッセージから第1の選択ID片を抽出し、第1の端末ID片と比較する。ここでは、第1の選択ID片と第1の端末ID片とは一致するため、メッセージ交換部221は、子機200の送信した第1のアドレス要求メッセージが親機100によって選択されたと判定する。
第1の選択ID片と第1の端末ID片とが不一致であった場合は、メッセージ交換部221は、他の端末装置から送信した第1のアドレス要求メッセージが親機100によって選択されたと判定し、以降の処理を取りやめ、第1の親機ID報知メッセージの受信を待機する(S201に戻る)。
一方、子機300においては、第1のアドレス要求メッセージの送信待ちの間に、第1のアドレス応答メッセージを受信したこととなる。このため、メッセージ交換部321は、第1のアドレス要求メッセージの送信処理を中止し、以降の処理を取りやめ、第1の親機ID報知メッセージの受信を待機する(S201に戻る)。
また、前述したように、子機200および子機300は、第1のアドレス応答メッセージの受信待ちの期間(S204)において第1の親機ID報知メッセージを受信した場合、メッセージ受信待ち期間がタイムアウトしたと判定する。そして、第1の親機ID報知メッセージの受信処理を行った後(S201)、第2の親機ID報知メッセージの受信を待機する(S202へ進む)。
次に、子機200では、第2のアドレス要求メッセージを送信する(S105)。具体的には、まず、子機200のメッセージ交換部221は、再び乱数を用いて第2のアドレス要求メッセージの送信待ち時間を算出する。図9においては、送信待ち時間はt22である。
なお、このとき(t22の算出用)の乱数が出力する最大値は、1回目(t21の算出)に用いた乱数が出力する最大値よりも小さい値となるよう、メッセージ交換部221は、乱数生成パラメータを設定することで、乱数の最大値を決定する。これは、既に第1のアドレス要求/応答メッセージのやり取りにより、第2のアドレス要求メッセージを送信する子機が他に存在する確率が、第1のアドレス要求メッセージを送信する場合よりも減少するためである。また、実施の形態1では2分割の場合について説明しているが、3分割、4分割と分割数が増えた場合も同様に、より後のアドレス要求メッセージの送信待ち時間を算出するための乱数であるほど、乱数が出力する最大値が小さくなるように、メッセージ交換部221は、乱数の生成パラメータを変更する。
メッセージ交換部221は、送信待ち時間を算出した後、次に、算出した送信待ち時間であるt22だけ送信を待つ。この待機期間中に第2のアドレス応答メッセージを受信した場合は、当該第2のアドレス応答メッセージは他の子機宛であるため、メッセージ交換部221は、以降の処理を取りやめ、第1の親機ID報知メッセージの受信を待機する(S201に戻る)。
メッセージ交換部221は、t22時間が経過した後、ID管理部222から第2の端末ID片「00:0F:1F」を取得し、取得した第2の端末ID片を含む第2のアドレス要求メッセージを生成して通信インタフェース210に出力する。通信インタフェース210は、共用スロット(スロット31)の時刻が到来した場合、第2のアドレス要求メッセージを親機100に送信する。
親機100では、メッセージ交換部121は、第2のアドレス要求メッセージの受信を待つ(S105)。メッセージ交換部121が第2のアドレス要求メッセージを受信した場合、受信した第2のアドレス要求メッセージから第2の端末ID片を抽出する。そして、メッセージ交換部121は、抽出した第2の端末ID片を第2の選択ID片として含む第2のアドレス応答メッセージを全ての子機に対して送信する(S106)。
一方、所定の時間が経過しても第2のアドレス要求メッセージを受信しない場合は、メッセージ交換部121は、以降の処理を取りやめ、第1の親機ID報知メッセージを全ての子機に送信する(S101に戻る)。
子機200では、メッセージ交換部221は、第2のアドレス応答メッセージを受信した場合、受信した第2のアドレス応答メッセージから第2の選択ID片を抽出し、抽出した第2の選択ID片と第2の端末ID片とを比較する。両者が一致すれば、メッセージ交換部221は、自端末装置から送信した第2のアドレス要求メッセージが親機100によって選択されたと判定し、アドレス通知メッセージの受信を待機する(S207へ進む)。逆に、両者が一致しない場合は、メッセージ交換部221は、他の端末装置から送信した第2のアドレス要求メッセージが親機100によって選択されたと判定し、第1の親機 ID報知メッセージの受信を待機する(S201へ戻る)。
親機100では、メッセージ交換部121は、アドレス通知メッセージを生成して送信する(S107)。具体的には、まず、メッセージ交換部121は、第1の選択ID片「D7:72:92」と第2の選択ID片「00:0F:1F」とから構成される端末ID「00:0F:1F:D7:72:92」を保有する子機(ここでは、子機200)を対象とし、割り当てる通信アドレスとスロットとを決定する。具体的には、メッセージ交換部121は、アドレス管理部123が保持するアドレス管理テーブルを参照し、無効なスロットの中から1つを選び、選択したスロットと通信アドレスとを取得する。ここでは一例として、メッセージ交換部121は、アドレス管理テーブルの先頭側から最初の無効なスロットであるスロット1、通信アドレス1を選択する。
そして、メッセージ交換部121は、選択したスロットと通信アドレスとを含むアドレス通知メッセージを生成し、通信路400を介して接続されている全ての子機にアドレス通知メッセージを送信する。さらに、アドレス管理テーブルのスロット1に、端末ID「00:0F:1F:D7:72:92」を登録するとともに、有効/無効フラグを有効に設定する(S108)。これにより、アドレス管理テーブルは、図8Bに示すような状態になる。
子機200では、メッセージ交換部221は、アドレス通知メッセージを受信した場合、受信したアドレス通知メッセージから通信アドレスとスロットとを抽出する。上記の例では、通信アドレスとして1が、スロットとして1が抽出される。そして、メッセージ交換部221は、抽出した通信アドレスとスロットとを通信インタフェース210に設定する(S208)。
このように、子機200では、複数の選択ID片と複数の子機ID片とが全て一致した場合に、アドレス通知メッセージに含まれる通信アドレスとスロット番号とを通信インタフェース210に設定する。複数の選択ID片と複数の子機ID片との少なくとも1つが一致しない場合は、一致しなかった子機ID片を含むアドレス要求メッセージより後に送信する予定のアドレス要求メッセージの送信を中止する。
以上のように通信アドレスおよびスロット番号が設定された後は、通信インタフェース210を介して送信されるメッセージは、共用スロット(スロット31)ではなく、設定したスロット(スロット1)を用いて出力される。また、送信元アドレス(SA)も0x3Fではなく、0x1が設定される。つまり、子機200は、通信インタフェース210に設定した通信アドレスと、通信インタフェース210に設定したスロット番号が示すスロットとを用いて、親機100との間で通常のデータ通信を開始する。
一方、子機300のメッセージ交換部321は、アドレス通知メッセージを受信しても、すでに処理を途中で取りやめ、第1の親機ID報知メッセージの受信待ち(S201)の状態である。したがって、メッセージ交換部321は、アドレス通知メッセージを受信した場合であっても、受信したアドレス通知メッセージを破棄する。つまり、メッセージ交換部321は、アドレス通知メッセージ内に含まれる通信アドレスおよびスロットを設定することはない。
以上の処理を再度繰り返すことで、親機100は子機300に対しても、子機200と同様に通信アドレス2およびスロット2を割り当てることができ、メッセージ交換部321は、割り当てられた通信アドレス2およびスロット2を通信インタフェース310に設定する。また、親機100が子機300に対して上記の処理を行っている間であっても、既に通信アドレスとスロットとを割り当てられた子機200は、使用するスロットが重複しないため、親機100にデータを送信することが可能である。
なお、親機100は、動作中は、常に図10に示されるフローチャートの処理を繰り返す。また、新規にネットワークに追加された子機は、図11に示されるフローチャートの処理を行う。これにより、子機が追加されるたび、追加された子機に通信アドレスとスロットとを設定することができる。
さらに、通信アドレスとスロットとが割り当てられた子機200のメッセージ交換部221および子機300のメッセージ交換部321は、図12のフローチャートに従った動作を実行する。
子機200のメッセージ交換部221および子機300のメッセージ交換部321は、第1および第2の親機ID報知メッセージを受信する(S201、S202)。そして、メッセージ交換部221および321はそれぞれ、第1および第2の親機ID片を抽出し、抽出した第1および第2の親機ID片を合成することで、親機IDを生成する。
次に、メッセージ交換部221および321は、受信した第1および第2の親機ID報知メッセージから生成した親機IDが、以前に生成した親機IDと一致することを確認する(S209)。一致した場合、再び第1の親機ID報知メッセージの受信を待機する(S201に戻る)。
一致しない場合、通信路400上の親機100が別の親機に入れ替わったと判断し、メッセージ交換部221および321は、通信インタフェース210および310に設定した通信アドレスとスロット番号とを初期化する。以降、メッセージ交換部221および321は、図11に示すフローチャートに従って、入れ替わった親機に対して再度、通信アドレスおよびスロットの割り当てを要求する。
以上のようにして、ネットワークに接続された各端末装置に通信アドレスおよびスロットの割り当てを行う。具体的には、親機100のアドレス管理テーブルを更新するとともに、子機200および子機300が備える通信インタフェース210および310に通信アドレスおよぶスロットを設定する。
なお、実施の形態1では、親機100の端末ID、ならびに、子機200および300の端末IDを2分割したが、より多くの分割数に分割してもよい。例えば、親機100の端末IDを第1〜第p(pは2以上の整数)の親機ID片に分割してもよい。また、子機200および300の端末IDを第1〜第n(nは2以上の整数)の子機ID片に分割してもよい。そして、子機200および300は、分割した子機ID片をそれぞれ含む第1〜第nのアドレス要求メッセージを順次、出力する。同様に、親機100は、分割した親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを出力する。
そして、子機200および300は、第1〜第nのアドレス応答メッセージに含まれる第1〜第nの選択ID片が全て、子機ID片に一致した場合に、親機100から送信されるアドレス通知メッセージに含まれる通信アドレスとスロット番号とを通信インタフェース210および310に設定する。また、子機200および300は、第1〜第nのアドレス応答メッセージのうちの第m(1≦m≦n)のアドレス応答メッセージに含まれる第mの選択ID片が、第1〜第nのアドレス要求メッセージに含まれる第mの子機ID片に一致しない場合に、第mの要求メッセージより後の要求メッセージの送信を中止する。
以上により、実施の形態1に係る端末装置の一例である子機200および300は、端末IDを複数の子機ID片に分割することで、フレーム長が端末IDより短い場合でも端末IDを、他の端末装置である親機100に送信することができる。さらに、子機200および300は、親機100からの応答メッセージに含まれる選択ID片が子機ID片に一致した場合に、親機100によって自端末装置が選択されたと判断することで、複数の子機が通信路を利用している場合であっても、親機100から通信アドレスとスロットとを取得することが可能となる。
なお、第1または第2のアドレス要求メッセージを送信する際に(S203またはS205)、メッセージ交換部221および321のそれぞれが乱数を用いて算出した第1または第2のアドレス要求メッセージの送信待ち時間が近似または一致している場合が起こりうる。この場合、子機200および子機300が同じビーコン周期の共用スロットを用いてアドレス要求メッセージを送信する可能性がある。この場合、それぞれの子機から送信したアドレス要求メッセージは衝突し、親機100はアドレス要求メッセージを受信できない。
このため、親機100では、第1または第2のアドレス要求メッセージの受信待ち状態において(S103またはS105)、メッセージ交換部121は、第1または第2のアドレス要求メッセージを受信していないと判定し、第1の親機ID報知メッセージを送信する(S101に戻る)。子機200および子機300は、第1または第2のアドレス応答メッセージの受信待ちの際に(S204またはS206)、第1の親機ID報知メッセージを受信した場合、第2の親機ID報知メッセージの受信を待機する(S202に戻る)。
そして、メッセージ交換部221および321は、第1のアドレス要求メッセージの送信処理(S203)から再実行する。なお、再送信の際は、初回の算出に用いる乱数の最大値よりも、第1〜第nのアドレス要求メッセージの送信待ち時間を算出するための乱数の最大値が大きくなるよう、乱数生成パラメータを変更することで、乱数の最大値を決定する。これにより、再実行時に再びアドレス要求メッセージ同士が衝突する確率が減少する。
なお、実施の形態1においては、親機100が複数の第1のアドレス要求メッセージまたは複数の第2のアドレス要求メッセージを受信した場合、最初に受信したメッセージを選択したが、別の方法を用いて決定しても構わない。別の例としては、受信順序以外に、受信したメッセージに含まれる第1または第2の端末ID片の値が最大のもの、または最小のものを選択する方法がある。さらに、別の方法として、子機200および子機300が自端末装置の優先度を示す情報を保有している場合は、子機200および子機300においてメッセージ内の拡張領域に優先度を示す情報を設定し、親機100において最も優先度の高いメッセージを選択する方法がある。
また、子機200および子機300が自端末装置の優先度を示す情報を保有している場合、第1または第2のアドレス要求メッセージの各送信待ち時間を乱数から算出する際、優先度に応じて乱数が出力する最大値が変更されるように、乱数生成パラメータを変更してもよい。一例として、優先度が高いほど最大値が小さくなるよう、乱数生成パラメータを設定する。これにより、短い待ち時間で各メッセージを送信することができ、親機100によって優先度の高い子機が選択されやすくなる。
また、実施の形態1では、第1および第2のアドレス要求メッセージの送信待ち時間を算出するための乱数が出力する最大値が変わるよう、乱数の生成パラメータを変更したが、処理の簡単化のために、常に同じ生成パラメータを用いても構わない。同様に、アドレス要求メッセージ同士が衝突した後の再実行時に、同じ生成パラメータを用いた乱数からアドレス要求メッセージの送信待ち時間を求めても構わない。
また、実施の形態1では、スロット数を32としたが、それ以外のスロット数でも構わない。また、スロット31のみを共用スロットに割り当てたが、例えば、スロット30および31の2スロット、もしくは、3つ以上のスロットを共用スロットに割り当てても構わない。この場合、第1または第2のアドレス要求メッセージの送信待ち時間を短縮させることができる。
また、共用スロットとしてビーコン周期の最後のスロットであるスロット31を割り当てたが、逆に先頭側であるスロット1を割り当てても構わない。ただし、スロット1を共用スロットとして割り当てた場合において、複数の子機が送信したメッセージ同士が衝突を起こした場合、データ通信を行っている各端末装置間の通信に影響を及ぼすことがあるため、必ず1台ずつ子機を追加する必要がある。
また、親機100は、子機にアドレスとスロットとを割り当てた後で、アドレス管理テーブルを不揮発性メモリに保存し、次回親機100が起動した際に、不揮発性メモリに保存したアドレス管理テーブルに基づいて、順次、第1および第2の端末ID片と、通信アドレスおよびスロット番号を送信して、各子機に通信アドレスと送信スロットを通知しても構わない。より具体的には、親機100は、まず不揮発性メモリに保存したアドレス管理テーブルの先頭側から順に、第1の端末ID片、第2の端末ID片、通信アドレスとスロットをそれぞれ制御メッセージにて通知する。各子機は第1および第2の端末ID片が自端末の端末IDと一致する場合に、アドレスとスロットとを設定する。
親機100はさらに、不揮発性メモリに保存したアドレス管理テーブルに基づいて各子機にアドレスと送信スロットを通知した後に、第1の実施の形態で説明したアドレス割り当てを行っても構わない。
(実施の形態2)
実施の形態1では、通常のデータ通信に用いる通常スロットとは別に、アドレス割り当てに用いる共用スロットを設けた。このため、既に通信アドレスとスロットとを割り当てられた子機は、別の子機のアドレス割り当て中であっても、通信を行うことができた。一方、共用スロットの数が少ないと、一度に多くの端末に対して通信アドレスおよびスロットの割り当てを行う場合、アドレス要求が衝突する確率が増え、余分に時間がかかる場合がある。
実施の形態1では、通常のデータ通信に用いる通常スロットとは別に、アドレス割り当てに用いる共用スロットを設けた。このため、既に通信アドレスとスロットとを割り当てられた子機は、別の子機のアドレス割り当て中であっても、通信を行うことができた。一方、共用スロットの数が少ないと、一度に多くの端末に対して通信アドレスおよびスロットの割り当てを行う場合、アドレス要求が衝突する確率が増え、余分に時間がかかる場合がある。
そこで、実施の形態2においては、親機から特定メッセージを受信した場合に、通信インタフェースに設定した通信アドレスと、通信インタフェースに設定したスロット番号が示すスロットとを用いて、通常のデータ通信を開始する。具体的には、まずネットワークに接続された全ての端末に通信アドレスおよびスロットの割り当てを行う。通信アドレスおよびスロットの割り当て中は、割り当てのための制御メッセージのみ通信可能である。この間、各子機はたとえ通信アドレスとスロットとが割り当てられた端末であったとしても、通常のデータ通信を行うことはできない。全ての子機への割り当てが完了すると、親機からの指示に基づき、各子機は通常のデータ通信が可能となる。
実施の形態2におけるネットワーク構成および各端末装置の構成は、図1、図4〜図6に示す実施の形態1と同じであるため、説明を省略する。
以下では、図14〜17を用いて、実施の形態2における割り当て処理について説明する。
まず、初期状態における各端末装置の状態とスロットの構成とを説明する。初期状態において、親機100の通信インタフェース110には、通信アドレスは0、スロットは0が割り当てられている。子機200の通信インタフェース210および子機300の通信インタフェース310には、ともに通信アドレスは0x3F(未割り当て時の初期値)、スロットは31(未割り当て時の初期値)である。
また、アドレス割り当て処理中のスロットの構成を図14に示す。図14において、スロット0はビーコンスロットであり、親機100に割り当てられている。スロット1〜31は全て共用スロットであり、通信アドレスおよびスロットの割り当てのために使用する。図14に示すように、通常スロットが存在しないため、割り当て中は通常のデータ通信を行うことはできない。
また、通信アドレスおよびスロットの割り当て中は制御メッセージの送受信のみを行うため、通信インタフェース110はビーコンを送信しない。代わりに、通信インタフェース110を介して出力される制御メッセージには全てビーコン識別子がセットされており、子機にとってビーコンと同等の機能を果たす。
図15Aおよび図15Bは、実施の形態2における各端末装置(親機100、子機200および子機300)間の動作を示すシーケンス図である。図15Aは、通信アドレスおよびスロットの割り当て中の各端末装置間の動作を示すシーケンス図である。図15Bは、全ての子機に通信アドレスおよびスロットの割り当てが完了した後に行う、未使用スロットの通知処理を示すシーケンス図である。図16は、図15Aのシーケンス図に対応する親機100の動作を示すフローチャートである。図17は、図15Aのシーケンス図に対応する子機200および子機300の動作を示すフローチャートである。
まず、親機100では、メッセージ交換部121は、通信アドレスおよびスロットの割り当てを行うことを示す割り当て開始報知メッセージを生成する。そして、メッセージ交換部121は、通信路400を介して接続される全ての子機(子機200および子機300)にスロット0を用いて送信する(S301)。なお、割り当て開始報知メッセージは、メッセージIDのみが設定され、メッセージボディには0が設定される。
子機200および子機300では、メッセージ交換部221および321は、割り当て開始報知メッセージの受信を待機しており、割り当て開始報知メッセージを受信した場合、第1の端末ID片を含む第1のアドレス要求メッセージを生成する(S401)。さらに、メッセージ交換部221および321は、第1のアドレス要求メッセージを送信するためのスロットを、共用スロットであるスロット1〜31から乱数を用いて決定し、通信インタフェース210および310に設定する。通信インタフェース210および310は、設定されたスロットを用いて第1のアドレス要求メッセージを送信する(S402)。
一例として、メッセージ交換部221において決定したスロットがスロット10、メッセージ交換部321において決定したスロットがスロット20である場合を想定する。このとき、通信インタフェース210にはスロット10が設定され、スロット10を用いて第1のアドレス要求メッセージが親機100に送信される。同様に、通信インタフェース310にはスロット20が設定され、スロット20を用いて第1のアドレス要求メッセージが親機100に送信される。
親機100では、メッセージ交換部121は、スロット10において子機200からの第1のアドレス要求メッセージを受信する。また、スロット20において子機300からの第1のアドレス要求メッセージの受信を待つ(S302)。
メッセージ交換部121は、受信した第1のアドレス要求メッセージが1つの場合、当該第1のアドレス要求メッセージを選択する。受信した第1のアドレス要求メッセージが2つ以上の場合、メッセージ交換部121は、受信した2つ以上の第1のアドレス要求メッセージの中から1つを選択する。
ここでは、選択方法として、メッセージ交換部121は、最初に受信した第1のアドレス要求メッセージを選択する。1ビーコン周期分だけ受信待ちをしても第1のアドレス要求メッセージを受信しない場合は、メッセージ交換部121は、未割り当ての子機が存在しないか、あるいは、複数の子機のメッセージ同士が衝突したかのいずれかだと判断し、終了処理(S308)に進む。
実施の形態2においては、図15Aに示すように、子機200からの第1のアドレス要求メッセージと、子機300からの第1のアドレス要求メッセージとの計2つのメッセージを受信する。子機200からの第1のアドレス要求メッセージはスロット10で、子機300からの第1のアドレス要求メッセージはスロット20で送信されるため、最初に受信する子機200からのメッセージを選択する。
さらに、メッセージ交換部121は、選択した第1のアドレス要求メッセージに含まれる第1の端末ID片を抽出する。そして、抽出した第1の端末ID片を第1の選択ID片として含む第1のアドレス応答メッセージを生成し、子機200および子機300にスロット0を用いて送信する(S303)。このようにして、親機100が送信する第1のアドレス応答メッセージには、子機200の第1の端末ID片が含まれていることとなる。
子機200のメッセージ交換部221および子機300のメッセージ交換部321は、親機100から第1のアドレス応答メッセージの受信を待つ(S403)。
メッセージ交換部221および321は、第1のアドレス応答メッセージを受信し、受信した第1のアドレス応答メッセージから第1の選択ID片を抽出する。抽出した第1の選択ID片が第1の端末ID片と一致した場合は、メッセージ交換部221および321は、第2のアドレス要求メッセージの送信を行う(S404に進む)。
第1の選択ID片が第1の端末ID片と一致しない場合は、他の子機が送信したメッセージが親機100によって選択されたことを示しているため、メッセージ交換部221および321は、以降の処理を取りやめ、割り当て開始報知メッセージを受信するのを待機する(S401に戻る)。
さらに、メッセージ交換部221および321が、第1のアドレス応答メッセージではなく、割り当て開始報知メッセージを受信した場合は、他の子機が送信した第1のアドレス要求メッセージと、自端末装置が送信した第1のアドレス要求メッセージ同士とが衝突し、親機100が受信できなかったと判断する。そして、メッセージ交換部221および321は再度、乱数によりスロットを選択し、第1のアドレス要求メッセージを再送する(S402に戻る)。
実施の形態2においては、子機200のメッセージ交換部221では、第1のアドレス応答メッセージを受信し、受信した第1のアドレス応答メッセージに含まれる第1の選択ID片を抽出する。抽出した第1の選択ID片は第1の端末ID片と一致するため、第2のアドレス要求メッセージの送信を行う(S404に進む)。
一方、子機300のメッセージ交換部321は、同じく第1のアドレス応答メッセージを受信するが、第1の選択ID片は第1の端末ID片と一致しない。このため、メッセージ交換部321は、以降の処理を取りやめ、割り当て開始報知メッセージを受信するのを待機する(S401に戻る)。
子機200のメッセージ交換部221は、ID管理部222から第2の端末ID片を取得し、取得した第2の端末ID片を含む第2のアドレス要求メッセージを生成する。さらに、メッセージ交換部221は、親機100に送信するスロットを、共用スロットであるスロット1〜31から乱数によって決定(一例として、ここでは、スロット15を選択)し、決定したスロットを通信インタフェース210に設定する。通信インタフェース210は、スロット15の時刻が到来すると、親機100に対して第2のアドレス要求メッセージを送信する(S404)。
親機100では、メッセージ交換部121は、第2のアドレス要求メッセージの受信を待つ(S304)。
メッセージ交換部121は、受信した第2のアドレス要求メッセージが1つのみの場合は、当該第2のアドレス要求メッセージを選択する。受信した第2のアドレス要求メッセージが2つ以上の場合は、メッセージ交換部121は、最初に受信したメッセージを選択する。また、1ビーコン周期分待っても第2のアドレス要求メッセージを受信しない場合は、複数の子機からのメッセージが衝突したものと判定し、第1のアドレス応答メッセージを再送する(S303に戻る)。
実施の形態2においては、メッセージ交換部121は、子機200からの第2のアドレス要求メッセージのみを受信する。このため、受信した第2のアドレス要求メッセージを選択して第2の端末ID片を抽出する。そして、メッセージ交換部121は、抽出した第2の端末ID片を第2の選択ID片として含む第2のアドレス応答メッセージを、スロット0を用いて子機200および子機300に送信する(S305)。
子機200では、メッセージ交換部221は、第2のアドレス応答メッセージの受信を待つ(S405)。メッセージ交換部221が、第2のアドレス応答メッセージを受信し、受信した第2のアドレス応答メッセージから抽出した第2の選択ID片が第2の端末ID片と一致した場合は、アドレス通知メッセージの受信を待機する(S406に進む)。
第2の選択ID片が第2の端末ID片と一致しない場合は、他の子機が送信したメッセージが選択されているため、メッセージ交換部221は、割り当て開始報知メッセージを受信するのを待機する(S401に戻る)。
なお、子機200では、第2のアドレス応答メッセージの待機中(S405)に受信したメッセージが、第1のアドレス応答メッセージであった場合、第2のアドレス要求メッセージが他の子機のメッセージと衝突したと考えられる。このため、メッセージ交換部221は、乱数によりスロットを選択し、第1のアドレス要求メッセージを再送信する(S405)。
実施の形態2では、メッセージ交換部221は、第2のアドレス応答メッセージを受信し、さらに、第2の選択ID片が第2の端末ID片と一致する。このため、メッセージ交換部221は、アドレス通知メッセージの受信を待機する(S406に進む)。
一方、子機300のメッセージ交換部321も第2のアドレス応答メッセージを受信するが、この時点では、割り当て開始報知メッセージの受信待ち(S401)である。したがって、メッセージ交換部321は、受信した第2のアドレス応答メッセージを破棄する。
親機100では、メッセージ交換部121は、アドレス通知メッセージを生成し、生成したアドレス通知メッセージを子機200および子機300に送信する(S305)。具体的には、まず、アドレス管理部123は、空きスロットのうち最も先頭側にあるスロット1を選択し、スロット1の通信アドレス1とともにメッセージ交換部121に出力する。
以降、アドレス管理部123は、別の子機に対して割り当てるスロットと通信アドレスとを決定する際、スロット2、スロット3…のように空きスロットの先頭側から順にスロットを選択する。例えば、子機3台にスロットを割り当てた場合、スロット1〜3が割り当てたスロット、スロット4〜31が空きスロットとなる。このようにスロットを選択することで、空きスロットの連続数が最大となり、後述する省電力処理を行う上で、より消費する電力を削減することが可能となる。
メッセージ交換部121は、アドレス管理部123が出力したスロットと通信アドレスとを含むアドレス通知メッセージを生成し、スロット0を用いて子機200および子機300に送信する。
さらに、メッセージ交換部121は、実施の形態1と同様に、第1および第2の選択ID片から子機200の端末IDを生成し、アドレス管理部123に出力する。アドレス管理部123は、子機200の端末IDをアドレス管理テーブルに登録する(S307)。
子機200では、メッセージ交換部221は、アドレス通知メッセージを受信した場合、受信したアドレス通知メッセージからスロットと通信アドレスとを抽出する(S406)。そして、メッセージ交換部221は、抽出したスロットと通信アドレスとを通信インタフェース210に設定する(S407)。この結果、通信インタフェース210には、通信アドレス1、スロット1が設定され、割り当て処理は終了する。
以後、通信インタフェース210は、上記のように設定された通信アドレスとスロットとを用いてデータ通信を行うが、この時点では、まだ図14に示したように通常スロットが存在していないため、通常のデータ通信は行わない。
親機100のメッセージ交換部121は、アドレスおよびスロットの登録(S307)が終了した後、再び、割り当て開始報知メッセージの送信を行う(S301)。子機200は既に割り当て済みのため、割り当て開始報知メッセージを受信しても、受信した割り当て開始報知メッセージを破棄する。
一方、子機300は、割り当て開始報知メッセージの受信待ち状態にあるため(S401)、割り当て開始報知メッセージを受け取った場合、上記の処理を継続する。このようにして、子機300には、スロット2と通信アドレス2とが付与され、通信インタフェース310に設定される。
以上の処理を繰り返すことで、ネットワーク上の全ての子機に対してスロットと通信アドレスとが割り当てられる。
全ての子機にスロットと通信アドレスとが割り当てられた場合、親機100が割り当て開始報知メッセージを送信しても、どの子機も第1のアドレス要求メッセージを送信しない。このため、親機100のメッセージ交換部121は、メッセージ受信なしのため、割り当て処理の終了条件を満たしているか否かを判定する(S308)。
メッセージ交換部121は、終了条件として、連続して第1のアドレス要求メッセージを受信しない回数が所定の回数以上であるかを確認する。所定の回数以上となった場合、メッセージ交換部121は、全ての子機に対する割り当てが終了したと判定し、割り当て処理を終了する。
逆に、所定の回数未満の場合は、複数の子機が乱数により選択したスロットが重複し、メッセージの衝突により受信しなかったものと判断し、再度割り当て開始メッセージを送信する(S301)。このように、上記所定の回数は、衝突の発生を考慮し、十分大きな回数とする。
以上のようにして、割り当て処理が終了すると、親機100と子機200および子機300とは、図15Bのメッセージシーケンス図に示す動作を実行する。図15Bのメッセージシーケンス図に示す動作は、通信アドレスおよびスロットの割り当て結果を用いて、親機100、子機200および子機300の消費電力を削減するために行われる。
親機100のアドレス管理部123は、割り当ての結果、空きスロットの情報をメッセージ交換部121に出力する。ここでは、スロット0が親機100、スロット1が子機200、スロット2が子機300に割り当てられているため、アドレス管理部123は、空きスロット情報として、スロット3〜31を出力する。
メッセージ交換部121は、空きスロット情報を受け取ると、受け取った空きスロット情報を含む空きスロット通知メッセージを生成し、子機200および子機300に送信する(S311)。さらに、メッセージ交換部121は、通信インタフェース110に、空きスロット情報を設定する。
さらに、メッセージ交換部121は、通信インタフェース110に、通常のデータ通信を開始しても問題が発生しないよう、ビーコンの送信開始を設定する。これにより、スロット構成は、図18に示す構成となる。
図18では、スロット0がビーコンスロットで親機100に割り当てられている。スロット1〜31は、通常のデータ通信が可能な通常スロットである。ここでは、通常スロットのうち、スロット1が子機200、スロット3が子機300に割り当てられている。残りのスロット4〜31は、どの端末装置にも割り当てられていない空きスロットである。
子機200および子機300では、メッセージ交換部221および321は、空きスロット通知メッセージを受信した場合、空きスロット情報を抽出する。そして、メッセージ交換部221および321は、抽出した空きスロット情報を通信インタフェース210および310に設定する(S411)。
空きスロット情報としてスロット3〜31が設定された通信インタフェース110、210および310は、スロット3〜31に相当する期間は、通信機能を停止し消費電力を抑える。スロット3〜31では、どの端末装置もメッセージ送信またはデータ通信を行わない。また、通信機能を停止する時間はスロット数から算出することができ(例えば、1スロットに相当する時間×空きスロットのスロット数)、通信機能を復帰させた後もスロットの同期に問題は発生しない。
さらに、メッセージ交換部221および321は、親機100からのビーコンを特定メッセージとして受信した場合に、それぞれに割り当てられたスロットを用いて通常のデータ通信を行う。
このように、子機においてはビーコン周期内で送信すべきスロットを乱数によって選択し、アドレス要求を送信することで、実施の形態1に比べ、より高速に通信アドレスとスロットとを割り当てることができる。また、全ての子機に通信アドレスおよびスロットの割り当てを行った後で、空きスロット情報を全ての子機に送信し、各子機において空きスロットの区間の通信インタフェースの処理を停止させることで、消費電力を低減することが可能となる。
なお、実施の形態2においては、親機100が複数の第1のアドレス要求メッセージまたは複数の第2のアドレス要求メッセージを受信した場合、最初に受信したメッセージを選択したが、別の選択方法によって決定しても構わない。別の例としては、受信順序以外に、受信したメッセージに含まれる第1または第2の端末ID片の値が最大のもの、または最小のものを選択する方法がある。さらに、別の方法として、子機200および子機300が自端末装置の優先度を示す情報を保有している場合、子機200および子機300においてメッセージ内の拡張領域に優先度を示す情報を設定し、親機100において最も優先度の高いメッセージを選択する方法がある。
また、実施の形態2では、親機100がアドレスの割り当て処理の完了を判定する際に用いた所定の回数は、割り当てた子機の台数によらず、一律の値であったが、この所定の回数を、通信アドレスおよびスロットを割り当てた子機の台数に基づいて決定してもよい。例えば、通信アドレスおよびスロットを割り当てた子機の台数が多いほど、所定の回数を小さな値に設定してもよい。これは、通信アドレスおよびスロットを割り当てた子機の台数が多いほど、割り当てられていない子機の台数が少なく、したがって、子機が送信する第1または第2のアドレス要求メッセージ同士が連続して衝突する確率も低くなるためである。
また、実施の形態2では、子機にデータ通信可能であることを通知する特定メッセージとしてビーコンを用いたが、特定の制御メッセージを特定メッセージとして用いてもよい。
また、子機200および子機300が自端末装置の優先度を示す情報を保有している場合、乱数によりスロットを選択する際、生成する乱数の最大値を優先度によって変更してもよい。この場合、優先度が高いほど最大値が小さく、先頭側のスロットを用いて第1または第2のアドレス要求メッセージを送信することとなる。
なお、実施の形態2においては、アドレス管理部123は、空きスロットのうち先頭側から順に連続するスロットを選択したが、後ろ側から順に連続するスロットを選択しても構わない。
また、実施の形態2においては、割り当て終了後のスロット構成を図18に示すように、ビーコンスロットおよび通常スロットのみで構成したが、実施の形態1で示した図2のように、さらに、共用スロットを設けても構わない。共用スロットを設けた場合、親機100は、空きスロット情報に共用スロットを含めない。例えば、図2に示す共用スロット(スロット31)を設けた場合、親機100が通知する空きスロット情報はスロット3〜30となる。
さらに、割り当て終了後は、上記共用スロットを用いて、実施の形態1と同じ処理を行うことにより、割り当て処理終了後に追加された子機に対しても、既に割り当て済みの子機のデータ通信を阻害することなく、追加された子機に対する通信アドレスおよびスロットの割り当てを行うことが可能となる。この場合、親機100および子機200は、定期的に送信する報知メッセージに空きスロット通知メッセージを含めて送信する。
すなわち、親機100は、第1および第2の親機ID報知メッセージと、空きスロット通知メッセージを定期的に送信する。全ての子機は、定期的に空きスロット通知メッセージを受信する。そして、空きスロット情報が変更されたことを検出した場合、空きスロット情報を通信インタフェースに設定することで、空きスロット情報を適切に反映することが可能である。
(実施の形態3)
実施の形態3に係る通信方法では、親機ID報知メッセージまたはアドレス割り当て開始メッセージなどの報知メッセージを送信する際に、どの端末装置にも割り当てていないスロットの数を示す空きスロット数を含む報知メッセージを送信する。そして、空きスロット数に応じて、送信待ち時間を算出するのに用いる乱数の最大値を決定することを特徴とする。
実施の形態3に係る通信方法では、親機ID報知メッセージまたはアドレス割り当て開始メッセージなどの報知メッセージを送信する際に、どの端末装置にも割り当てていないスロットの数を示す空きスロット数を含む報知メッセージを送信する。そして、空きスロット数に応じて、送信待ち時間を算出するのに用いる乱数の最大値を決定することを特徴とする。
実施の形態3におけるネットワーク構成、および各端末装置の構成は、図1、図4〜図6に示す実施の形態1と同じであるため、説明を省略する。以下では、実施の形態1と異なる部分を中心に説明する。
図9および図10に示す親機ID報知処理(S101およびS102)において、メッセージ交換部121は、アドレス管理部123が管理するアドレス管理テーブルにアクセスし、空きスロット数を取得する。ここでは初期状態であるので、空きスロット数は30となる。
そして、メッセージ交換部121は、取得した空きスロット数を第1および第2の親機ID報知メッセージ内の拡張領域に設定し、ブロードキャスト送信する。もちろん、ここで、実施の形態1で説明したように、第1および第2の親機ID報知メッセージを用いて親機100の第1および第2の親機ID片を送信しても構わない。
図9および図10に示す親機ID受信処理(S201およびS202)において、子機200および子機300は、空きスロット数を含む第1および第2の親機ID報知メッセージを受信した場合、第1のアドレス要求メッセージの送信待ち時間、および第2のアドレス要求メッセージの送信待ち時間を算出するための乱数の最大値を、空きスロット数に基づき設定する。一例として、第1のアドレス要求メッセージの送信待ち時間を算出するための乱数の最大値は、空きスロット数と同じ値に、第2のアドレス要求メッセージの送信待ち時間を算出するための乱数の最大値は、空きスロット数の1/2に設定する。例えば、空きスロット数が30であった場合、それぞれ30と15になり、空きスロット数が28に減少すると、それぞれ28と14となる。
以降、子機200および子機300は、親機ID受信処理(S201およびS202)において設定した乱数を用いて、それぞれの送信待ち時間を算出する。乱数の最大値が空きスロット数に応じて減少するため、それぞれの送信待ち時間が確率的に減少し、全体の処理時間が低減される。
以上示したように、親機100は、第1および第2の親機ID報知メッセージを用いて子機200および子機300に空きスロット数を通知する。そして、子機200および子機300は、親機100から取得した空きスロット数に基づいて、第1および第2のアドレス要求メッセージの送信待ち時間を算出するための乱数の最大値を決定する。
実施の形態3においては、接続できる端末台数が高々30台までに制限されるため、空きスロット数の減少は、すなわち、第1および第2のアドレス要求メッセージを送信する端末台数も減少したことを示す。このため、メッセージの衝突確率を上げることなく、送信待ち時間を削減し、処理時間を抑えることが可能となる。
なお、実施の形態3においては、空きスロット数を送信したが、1台の端末装置に複数のスロットを割り当てた場合を想定し、最大の登録台数(ここでは30台)から送信時点での登録台数を差し引いた値を、空きスロット数の代わりに送信しても構わない。
(実施の形態4)
実施の形態4に係る通信方法は、子機が、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを送信し、親機が、スロット要求メッセージを受信した場合、子機に割り当てるスロット要求数のスロットを決定することを特徴とする。つまり、親機が、1つの子機に複数のスロットを割り当てることを特徴とする。
実施の形態4に係る通信方法は、子機が、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを送信し、親機が、スロット要求メッセージを受信した場合、子機に割り当てるスロット要求数のスロットを決定することを特徴とする。つまり、親機が、1つの子機に複数のスロットを割り当てることを特徴とする。
実施の形態4におけるネットワーク構成、および各端末装置の構成は、図1、図4〜図6に示す実施の形態1と同じであるため、説明を省略する。以下では、実施の形態1と異なる部分を中心に説明する。
実施の形態4では、子機200および子機300は、アドレス要求メッセージに割り当てを希望するスロット数を設定し、親機100に送信する。スロット数は、スループットの要求条件から決定される。
例えば、端末装置にスロット1のみを割り当てた場合、1ビーコン周期あたり、1回のデータ通信しかできないが、スロット1とスロット2との計2個のスロットを割り当てた場合、1ビーコン周期あたり2回のデータ通信ができる。したがって、連続的にデータ送信を行う場合、スループットが増加する。
ここでは、子機200が2個のスロットを要求する場合を例に挙げ、図9および図10を用いて説明する。
子機200または子機300は、第2のアドレス要求メッセージの送信処理(S205)において、第2のアドレス要求メッセージの拡張領域に、割り当てを希望するスロットの数であるスロット要求数(ここでは、2個のスロット)を設定して、親機100に送信する。つまり、子機200または子機300は、最後の端末IDを含むアドレス要求メッセージの拡張領域にスロット要求数を設定する。なお、子機200または子機300は、いずれの端末IDを含むアドレス要求メッセージの拡張領域にスロット要求数を設定してもよい。
親機100は、第2のアドレス要求メッセージを受信すると、受信メッセージから、割り当てを希望するスロット要求数を取得する(S105)。親機100は、図8Aに示すアドレス管理テーブルを参照し、スロット1〜30が空きスロットであることから、2個のスロットを確保できることを確認する。そして、実施の形態1と同様に、子機200の第2の端末ID片を含む第2のアドレス応答メッセージをブロードキャスト送信する(S106)。
親機100は、さらに、スロット1および2を確保し、アドレス管理テーブルのスロット1および2について、端末IDとして子機200の端末IDを、通信アドレスを共にスロット1に記載された値である1に登録する。さらに、親機100は、設定した通信アドレス1と、スロット1および2をアドレス通知メッセージにてブロードキャスト送信する(S107およびS108)。
子機200は、第2のアドレス応答メッセージを受信し、受信した第2のアドレス応答メッセージに含まれる第2の選択ID片と第2の端末ID片とが一致することから、2個のスロットが確保できたことを確認する(S206)。さらに、子機200は、アドレス通知メッセージを受信し、メッセージ内に設定された通信アドレス1と、スロット1および2とを通信インタフェース210に設定する(S207およびS208)。
以上、説明したように、子機200および子機300は、割り当てを希望するスロットの数であるスロット要求数をアドレス要求メッセージに設定して親機100に送信する。そして、親機100は、アドレス要求メッセージに設定されたスロット数を確保してアドレス応答メッセージを返すことで、通信アドレスに加えて複数のスロットを割り当てることが可能となる。これにより、別途スロットを確保するためのメッセージが不要となり、処理時間を短縮することが可能となる。
なお、実施の形態4においては、子機200および子機300は、第1および第2のアドレス要求メッセージを送信する際の送信待ち時間については、実施の形態に等しいものとして説明したが、子機200および子機300が割り当てを希望するスロット要求数に応じて、送信待ち時間を算出するための乱数が出力する最大値が変更されるよう、乱数生成パラメータを変更しても構わない。一例として、子機200および子機300は、割り当てを希望するスロット要求数が多いほど、最大値を小さくするように生成パラメータを変更する。これにより、一度に多くのスロットを必要とする端末装置が選択されやすくなり、スロットの確保が容易になる。
なお、実施の形態4では、子機200および子機300は、スロット要求数のみを指定したが、スロット数に加えてスロットの配置を指定してもよい。スロットの配置とは、連続したスロットであること、あるいは、ビーコン周期内で均等に分散したスロットであることなどを示す情報である。一例として、子機200または子機300は、ビーコン周期内で均等に分散した2個のスロットを希望する場合、拡張領域に分散したスロットであることを示すフラグと、スロット要求数2を設定し、親機100に送信する。メッセージを受信した親機100は、均等に分散したスロットを示すフラグがセットされているため、2個のスロットとしてスロット1とスロット16とを確保し、アドレス通知メッセージにて子機200または子機300に通知する。これにより、スロットの間隔はちょうどビーコン周期の1/2となり、自端末に送信権が巡回するまでに生じる遅延時間を1/2に低減させることが可能となる。このように、分散した配置のスロットを確保するよう指定することで、遅延時間を短縮させることが可能となる。
さらには、分散したスロットの取得を希望する子機200または300は、スロットを優先的に確保できるよう、第1および第2のアドレス要求メッセージの送信待ち時間を算出するための乱数が出力する最大値が小さくなるよう、乱数生成パラメータを変更しても構わない。分散したスロットを確保する場合、通常よりもスロットの配置に関する制限が多く、スロットが余っていてもうまく均等に分散したスロットが取得できない場合が発生する。このため、このような子機を優先的に選択し、先にスロットを確保することで、効率的なスロットの割り当てを行う。
以上、本発明に係る端末装置および通信方法について、実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を当該実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
なお、本発明は、上述したように、端末装置および通信方法として実現できるだけではなく、本実施の形態の通信方法をコンピュータに実行させるためのプログラムとして実現してもよい。また、当該プログラムを記録するコンピュータ読み取り可能なCD−ROMなどの記録媒体として実現してもよい。さらに、当該プログラムを示す情報、データまたは信号として実現してもよい。そして、これらプログラム、情報、データおよび信号は、インターネットなどの通信ネットワークを介して配信されてもよい。
また、本発明は、端末装置を構成する構成要素の一部または全部を、1個のシステムLSI(Large Scale Integration)から構成してもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROMおよびRAMなどを含んで構成されるコンピュータシステムである。
本発明は、直流電流の電力線を通信路として使用する通信端末装置に適用することができ、例えば、自転車用部品などに適用することができる。
100 親機
110、210、310 通信インタフェース
120、220、320 制御部
121、221、321 メッセージ交換部
122、222、322 ID管理部
123 アドレス管理部
130、230、330 分離混合部
140、240、340 自転車部品
200、300 子機
400 通信路
500 バッテリー
110、210、310 通信インタフェース
120、220、320 制御部
121、221、321 メッセージ交換部
122、222、322 ID管理部
123 アドレス管理部
130、230、330 分離混合部
140、240、340 自転車部品
200、300 子機
400 通信路
500 バッテリー
Claims (43)
- 直流の電力線を通信路として用い、当該通信路を時間的に分割したスロットを利用して他の端末装置と通信を行う端末装置であって、
前記他の端末装置との通信を制御する制御部と、
前記電力線の信号から受信信号を分離し、所定の送信信号を前記電力線の信号に重畳する分離混合部と、
前記分離混合部によって分離された受信信号を前記制御部に出力し、かつ、前記制御部による制御に基づいて前記送信信号を前記分離混合部に出力する通信インタフェースとを備え、
前記制御部は、
自端末装置を識別するための端末IDを第1〜第n(nは2以上の整数)の子機ID片に分割し、当該第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを順次、前記送信信号として出力し、
前記他の端末装置から前記分離混合部および前記通信インタフェースを介して、前記第1〜第nの要求メッセージに対する応答であり、第1〜第nの選択端末ID片をそれぞれ含む第1〜第nの応答メッセージを順次、前記受信信号として受信し、
受信した第1〜第nの応答メッセージに含まれる第1〜第nの選択端末ID片が前記第1〜第nの子機ID片に一致した場合に、前記他の端末装置から送信されるアドレス通知メッセージに含まれる通信アドレスとスロット番号とを前記通信インタフェースに設定する
端末装置。 - 前記制御部は、前記第1〜第nの応答メッセージのうちの第m(1≦m≦n)の応答メッセージに含まれる第mの選択端末ID片が、前記第1〜第nの要求メッセージのうちの第mの要求メッセージに含まれる第mの子機ID片と一致しない場合、前記第mの要求メッセージより後の要求メッセージの送信を中止する
請求項1記載の端末装置。 - 前記制御部は、乱数を用いて前記第mの要求メッセージの送信待ち時間を算出し、所定の時点から前記送信待ち時間が経過した後に、通信アドレスが割り当てられていない端末装置専用のスロットである特定スロットを用いて、前記第mの要求メッセージを送信する
請求項2記載の端末装置。 - 前記制御部は、さらに、前記第1〜第nの要求メッセージのそれぞれの前記送信待ち時間を算出するのに用いる乱数の最大値を、値が順に小さくなるように決定する
請求項3記載の端末装置。 - 前記制御部は、前記他の端末装置から定期的に送信される報知メッセージを受信したときから、前記第1の要求メッセージの送信待ち時間が経過した後に、前記第1の要求メッセージを送信する
請求項3記載の端末装置。 - 前記制御部は、さらに、前記報知メッセージに含まれる、どの端末装置にも割り当てられていないスロットの数を示す空きスロット数に応じて、前記送信待ち時間を算出するのに用いる乱数の最大値を決定する
請求項5記載の端末装置。 - 前記報知メッセージは、前記他の端末装置を識別するための端末IDが分割された第1〜第p(pは2以上の整数)の親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを含み、
前記制御部は、前記第1〜第pの親機ID片が以前と異なる値である場合に、前記通信インタフェースに設定した通信アドレスとスロット番号とを初期化する
請求項6記載の端末装置。 - 前記制御部は、前記他の端末装置に前記第mの要求メッセージを送信した後、前記他の端末装置から前記第mの応答メッセージを受信する前に、前記報知メッセージを受信した場合、前記第mの要求メッセージより後の要求メッセージの送信を中止するとともに、前記第1の要求メッセージを再送信する
請求項5記載の端末装置。 - 前記制御部は、前記第1の要求メッセージを再送信する場合、前記第1の要求メッセージの送信待ち時間を算出するのに用いる乱数の最大値を、前記第1の要求メッセージの初回の前記送信待ち時間を算出するのに用いた乱数の最大値より、値が大きくなるように決定する
請求項8記載の端末装置。 - 前記制御部は、ビーコン周期を構成する複数のスロットのうち、前記他の端末装置に割り当てられたスロットを除いたスロットを選択し、選択したスロットを用いて前記第mの要求メッセージを送信する
請求項2記載の端末装置。 - 前記制御部は、前記他の端末装置から特定メッセージを受信した場合に、前記通信インタフェースに設定した通信アドレスと、前記通信インタフェースに設定したスロット番号が示すスロットとを用いて、通常のデータ通信を開始する
請求項10記載の端末装置。 - 前記特定メッセージは、ビーコンである
請求項11記載の端末装置。 - 前記制御部は、前記他の端末装置に、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを送信し、前記他の端末装置から前記アドレス通知メッセージを受信した場合に、当該アドレス通知メッセージに含まれる通信アドレスと、前記スロット要求メッセージに含まれるスロット要求数のスロット番号とを前記通信インタフェースに設定する
請求項1記載の端末装置。 - 前記制御部は、前記他の端末装置から、どの端末装置にも割り当てられていない空きスロットの少なくとも一部を示す空きスロット情報を含むメッセージを受信した場合、当該空きスロット情報が示す空きスロットに相当する期間において、前記通信インタフェースの通信機能を停止する
請求項1記載の端末装置。 - 前記制御部は、自端末装置を識別するための端末IDの下位側から順に、それぞれ前記第1〜第nの子機ID片となるように分割する
請求項1〜14のいずれか1項に記載の端末装置。 - 直流の電力線を通信路として用い、当該通信路を時間的に分割したスロットを利用して他の端末装置と通信を行う端末装置であって、
前記他の端末装置との通信を制御する制御部と、
前記電力線の信号から受信信号を分離し、所定の送信信号を前記電力線の信号に重畳する分離混合部と、
前記分離混合部によって分離された受信信号を前記制御部に出力し、かつ、前記制御部による制御に基づいて、前記送信信号を前記分離混合部に出力する通信インタフェースとを備え、
前記制御部は、
前記他の端末装置から前記分離混合部および前記通信インタフェースを介して、前記他の端末装置を識別するための端末IDが分割された第1〜第n(nは2以上の整数)の端末ID片をそれぞれ含む第1〜第nの要求メッセージを順次受信し、かつ、受信した第1〜第nの要求メッセージに対する応答であり、前記第1〜第nの端末ID片をそれぞれ含む第1〜第nの応答メッセージを順次ブロードキャスト送信し、
前記第1〜第nの応答メッセージを全て送信した場合、前記他の端末装置に割り当てる通信アドレスとスロット番号とを含むアドレス通知メッセージをブロードキャスト送信する
端末装置。 - 前記制御部は、さらに、前記他の端末装置に前記第1の要求メッセージを送信させるための報知メッセージを、定期的にブロードキャスト送信する
請求項16記載の端末装置。 - 前記制御部は、どの端末装置にも割り当てていないスロットの数を示す空きスロット数を含む前記報知メッセージを送信する
請求項17記載の端末装置。 - 前記制御部は、前記第1〜第nの応答メッセージのうちの第m(1≦m≦n)の応答メッセージを送信してから、所定の期間が経過した後に前記報知メッセージを再びブロードキャスト送信する
請求項18記載の端末装置。 - 前記制御部は、自端末装置を識別するための端末IDが分割された第1〜第p(pは2以上の整数)の親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを前記報知メッセージとして送信する
請求項19記載の端末装置。 - 前記制御部は、通信アドレスとスロットとを前記他の端末装置へ割り当てる割り当て処理が完了したか否かを判定し、前記割り当て処理が完了したと判定した場合に、通常のデータ通信が開始可能になったことを通知するための特定メッセージをブロードキャスト送信する
請求項16記載の端末装置。 - 前記特定メッセージは、ビーコンである
請求項21記載の端末装置。 - 前記制御部は、
前記他の端末装置から、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを受信した場合、前記スロット要求数のスロット番号を含む前記アドレス通知メッセージをブロードキャスト送信する
請求項16記載の端末装置。 - 前記制御部は、どの端末装置にも割り当てられていない空きスロットの少なくとも一部を示す空きスロット情報を含むメッセージを送信し、かつ、前記空きスロット情報が示す空きスロットに相当する期間において、前記通信インタフェースの通信機能を停止する
請求項16記載の端末装置。 - 前記制御部は、複数のスロットを割り当てる場合、ビーコン周期を構成する複数のスロットのうち、先頭側または後ろ側から順に前記他の端末装置を含む1つ以上の他の端末装置に割り当てるスロットを決定する
請求項16記載の端末装置。 - 前記端末装置は、自転車に搭載可能であり、互いに通信する部品である
請求項1〜25のいずれか1項に記載の端末装置。 - 直流の電力線を通信路として用いるネットワークにおいて、第1の端末装置および第2の端末装置が前記通信路を時間的に分割したスロットを利用して通信する通信方法であって、
前記第2の端末装置が、当該第2の端末装置を識別するための端末IDを第1〜第n(nは2以上の整数)の子機ID片に分割し、当該第1〜第nの子機ID片をそれぞれ含む第1〜第nの要求メッセージを順次、前記第1の端末装置に送信する要求メッセージ送信ステップと、
前記第1の端末装置が、前記第1〜第nの要求メッセージを順次受信し、かつ、受信した第1〜第nの要求メッセージに対する応答であり、前記第1〜第nの子機ID片をそれぞれ第1〜第nの選択端末ID片として含む第1〜第nの応答メッセージを順次、ブロードキャスト送信する応答メッセージ送信ステップと、
前記第1の端末装置が、前記第1〜第nの応答メッセージを送信した後に、前記第2の端末装置に割り当てる通信アドレスとスロット番号とを含むアドレス通知メッセージを送信するアドレス通知メッセージ送信ステップと、
前記第2の端末装置が、前記アドレス通知メッセージを受信するアドレス通知メッセージ受信ステップと、
前記第2の端末装置が、前記第1〜第nの選択端末ID片が前記第1〜第nの子機ID片に等しい場合に、前記アドレス通知メッセージに含まれる通信アドレスとスロット番号とを、前記第2の端末装置の通信インタフェースに設定するアドレス設定ステップとを含む
通信方法。 - 前記要求メッセージ送信ステップでは、
前記第2の端末装置が、前記第1〜第nの応答メッセージを順次受信し、前記第1〜第nの応答メッセージのうちの第m(1≦m≦n)の応答メッセージに含まれる第mの選択端末ID片が、当該第2の端末装置の第mの子機ID片に一致しない場合、前記第1〜第nの要求メッセージのうちの第mの要求メッセージより後の要求メッセージの送信を中止する
請求項27記載の通信方法。 - 前記通信方法は、さらに、
前記第2の端末装置が、乱数を用いて前記第mの要求メッセージの送信待ち時間を算出する送信待ち時間算出ステップを含み、
前記要求メッセージ送信ステップでは、
所定の時点から前記送信待ち時間が経過した後に、通信アドレスが割り当てられていない端末装置専用のスロットである特定スロットを用いて、前記第mの要求メッセージを送信する
請求項28記載の通信方法。 - 前記送信待ち時間算出ステップでは、さらに、前記第1〜第nの要求メッセージのそれぞれの送信待ち時間を算出するのに用いる乱数の最大値を、値が順に小さくなるように決定する
請求項29記載の通信方法。 - 前記通信方法は、さらに、
前記第1の端末装置が、前記第1の要求メッセージを送信させるための報知メッセージを定期的にブロードキャスト送信する報知メッセージ送信ステップを含み、
前記要求メッセージ送信ステップでは、
前記第2の端末装置が、前記報知メッセージを受信したときから、前記第1の要求メッセージの送信待ち時間が経過した後に、前記第1の要求メッセージを送信する
請求項29記載の通信方法。 - 前記報知メッセージ送信ステップでは、どの端末装置にも割り当てていないスロットの数を示す空きスロット数を含む前記報知メッセージを送信し、
前記送信待ち時間算出ステップでは、前記空きスロット数に応じて、前記送信待ち時間を算出するのに用いる乱数の最大値を決定する
請求項31記載の端末方法。 - 前記報知メッセージ送信ステップでは、前記第mの応答メッセージを送信してから、所定の期間が経過した後に前記報知メッセージを再び送信し、
前記要求メッセージ送信ステップでは、前記第mの要求メッセージを送信した後、前記第mの応答メッセージを受信する前に、前記報知メッセージを受信した場合、前記第mの要求メッセージの後の要求メッセージの送信を中止するとともに、前記第1の要求メッセージを再送信する
請求項31記載の端末方法。 - 前記送信待ち時間算出ステップでは、前記第1の要求メッセージを再送信する場合、前記第1の要求メッセージの送信待ち時間を算出するのに用いる乱数の最大値を、前記第1の要求メッセージの初回の送信待ち時間を算出するのに用いた乱数の最大値より、値が大きくなるように決定する
請求項33記載の端末方法。 - 前記報知メッセージ送信ステップでは、前記第1の端末装置を識別するための端末IDを第1〜第p(pは2以上の整数)の親機ID片に分割し、当該第1〜第pの親機ID片をそれぞれ含む第1〜第pの親機ID報知メッセージを前記報知メッセージとして送信し、
前記通信方法は、さらに、
前記第2の端末装置が、前記報知メッセージを受信し、受信した報知メッセージに含まれる前記第1〜第pの親機ID片が以前と異なる値である場合に、前記第2の端末装置の通信インタフェースに設定した通信アドレスとスロット番号とを初期化する初期化ステップを含む
請求項31記載の通信方法。 - 前記要求メッセージ送信ステップでは、ビーコン周期を構成する複数のスロットのうち、前記第1の端末装置に割り当てられたスロットを除いたスロットを、乱数を用いて選択し、選択したスロットを用いて前記第mの要求メッセージを送信する
請求項28記載の通信方法。 - 前記通信方法は、さらに、
前記第1の端末装置が、通信アドレスとスロットとを前記第2の端末装置へ割り当てる割り当て処理が完了したか否かを判定し、前記割り当て処理が完了したと判定した場合に、通常のデータ通信が開始可能になったことを通知するための特定メッセージをブロードキャスト送信する特定メッセージ送信ステップと、
前記第2の端末装置が、前記特定メッセージを受信した場合に、前記通信インタフェースに設定した通信アドレスと、前記通信インタフェースに設定したスロット番号が示すスロットとを用いて、通常のデータ通信を開始する通信開始ステップとを含む
請求項27記載の通信方法。 - 前記特定メッセージは、ビーコンである
請求項37記載の通信方法。 - 前記通信方法は、さらに、
前記第2の端末装置が、割り当てを要求するスロットの数であるスロット要求数を含むスロット要求メッセージを送信するスロット要求メッセージ送信ステップと、
前記第1の端末装置が、前記スロット要求メッセージを受信した場合、前記第2の端末装置に割り当てる、前記スロット要求数のスロットを決定するスロット決定ステップとを含む
請求項27記載の通信方法。 - 前記通信方法は、さらに、
前記第1の端末装置が、どの端末装置にも割り当てられていない空きスロットの少なくとも一部を示す空きスロット情報を含むメッセージを送信する空きスロット情報送信ステップと、
前記第2の端末装置が、前記空きスロット情報を含むメッセージを受信し、前記空きスロット情報が示す空きスロットに相当する期間において、前記第2の端末装置の通信インタフェースの通信機能を停止する省電力ステップとを含む
請求項27記載の通信方法。 - 前記アドレス通知メッセージ送信ステップでは、複数のスロットを割り当てる場合、ビーコン周期を構成する複数のスロットのうち、先頭側または後ろ側から順に前記他の端末装置を含む1以上の他の端末装置に割り当てるスロットを決定する
請求項27記載の通信方法。 - 前記要求メッセージ送信ステップでは、前記第2の端末装置の端末IDを、下位側から順に前記第1〜第nの子機ID片となるように分割する
請求項27〜41のいずれか1項に記載の通信方法。 - 前記第1および第2の端末装置は、自転車に搭載可能であり、互いに通信する部品である
請求項27〜42のいずれか1項に記載の通信方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009271566A JP2011114779A (ja) | 2009-11-30 | 2009-11-30 | 端末装置および通信方法 |
PCT/JP2010/003902 WO2011064911A1 (ja) | 2009-11-30 | 2010-06-11 | 端末装置および通信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009271566A JP2011114779A (ja) | 2009-11-30 | 2009-11-30 | 端末装置および通信方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011114779A true JP2011114779A (ja) | 2011-06-09 |
Family
ID=44066026
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009271566A Pending JP2011114779A (ja) | 2009-11-30 | 2009-11-30 | 端末装置および通信方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2011114779A (ja) |
WO (1) | WO2011064911A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013046138A (ja) * | 2011-08-23 | 2013-03-04 | Honda Motor Co Ltd | 電力線通信システム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102030785B1 (ko) * | 2019-04-26 | 2019-10-10 | 주식회사그린존시큐리티 | 의사난수를 이용한 IoT 디바이스의 데이터 난독화를 위한 장치 및 이를 위한 방법 |
JPWO2020250728A1 (ja) * | 2019-06-10 | 2020-12-17 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0828716B2 (ja) * | 1988-03-16 | 1996-03-21 | 富士通株式会社 | パシッブ形式バス通信方式の端末番号付与方式 |
JPH03204066A (ja) * | 1989-12-29 | 1991-09-05 | Nec Corp | ネットワーク・アドレス設定方法 |
JPH0750619A (ja) * | 1993-01-14 | 1995-02-21 | Sanyo Electric Works Ltd | 車両内通信システム |
JPH11331949A (ja) * | 1998-05-19 | 1999-11-30 | Nec Eng Ltd | データ伝送方式 |
JP4012851B2 (ja) * | 2003-04-16 | 2007-11-21 | 矢崎総業株式会社 | 情報処理端末、送信権巡回システム、送信権巡回方法、及び送信権獲得プログラム |
-
2009
- 2009-11-30 JP JP2009271566A patent/JP2011114779A/ja active Pending
-
2010
- 2010-06-11 WO PCT/JP2010/003902 patent/WO2011064911A1/ja active Application Filing
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013046138A (ja) * | 2011-08-23 | 2013-03-04 | Honda Motor Co Ltd | 電力線通信システム |
Also Published As
Publication number | Publication date |
---|---|
WO2011064911A1 (ja) | 2011-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6625641B2 (ja) | 近隣認識ネットワーク(nan)データパスにおけるトラフィックアドバタイズメント | |
US9025578B2 (en) | MAC protocol for multi-channel wireless networks | |
JP6633077B2 (ja) | 近隣認識ネットワーク(nan)データパスにおけるトラフィックアドバタイズメント | |
JP2018502496A (ja) | 近隣認識ネットワーク(nan)データパスにおけるトラフィックアドバタイズメント | |
WO2015080287A1 (ja) | 通信処理装置、集積回路、無線通信端末、メモリーカード、無線通信装置、無線通信方法および無線通信システム | |
TW201633830A (zh) | 鄰域感知網路(nan)資料路徑中的訊務廣告(二) | |
TW201637392A (zh) | 鄰域感知網路(nan)資料路徑中的訊務廣告(五) | |
TW201633831A (zh) | 鄰域感知網路(nan)資料路徑中的訊務廣告(六) | |
WO2011064911A1 (ja) | 端末装置および通信方法 | |
CN113411868B (zh) | 一种对讲机组网方法、装置、计算机设备和存储介质 | |
US9787584B2 (en) | Data transmission reservation method and apparatus, data reception method and apparatus, and data transmission and reception system in receiver-initiated asynchronous medium access control protocol | |
JP2005516502A (ja) | 通信システムにおけるトラフィック・チャネルの割当 | |
JP5631845B2 (ja) | 無線lanアクセス制御方法および無線lanシステム | |
JP2012160826A (ja) | 無線lanアクセス制御方法および無線lanシステム | |
JP6407118B2 (ja) | 通信用基地局および端末装置 | |
JP7177972B2 (ja) | ハンドオーバ処理 | |
JP7193859B2 (ja) | 基地局及び通信方法 | |
KR20120038361A (ko) | 슬롯 관리 장치 및 방법 | |
US20170118751A1 (en) | Management method for wireless network and network management node | |
JP2006033070A (ja) | データ伝送制御方法 | |
CN113242537A (zh) | 基于蓝牙智能组网的红外图像传输方法 | |
US20190116617A1 (en) | Methods, Systems and Computer Program Products for Slotted-Aloha Collision Improvement by Population Density Timeslot Selection Per Radio Frequency Propagation Pathloss | |
US20110097997A1 (en) | Transmission Method and Related Apparatus for Reducing Radio Resource Overhead | |
KR102424820B1 (ko) | 토큰 링 방식을 이용한 가변 주기 비콘 기반의 무선 네트워크 다중 접속 프로토콜 시스템 및 전송 방법 | |
WO2023185406A1 (zh) | 一种通信方法和装置 |