(1)通信システムの構成
図1には、本発明の実施形態に係る通信システムが示されている。通信システムは、パケット通信を行う第1無線装置10および第2無線装置12を備える。各無線装置は、例えば、特定小電力無線機の規格に従って、使用周波数帯、送受信電力等が設計される。パケット通信にはデータ通信と制御通信がある。データ通信では、音声データ、画像データ、テキストデータ等の通信対象データを含むデータパケットが、一方の無線装置から他方の無線装置に送信される。制御通信では、データ通信を行う際の周波数チャネルまたは通信レートを設定するための制御パケットが第1無線装置10および第2無線装置12の間で送受信される。
第1無線装置10および第2無線装置12の間のデータ通信は、A周波数帯に含まれるAチャネルと、B周波数帯に含まれるBチャネルの両者を用いた冗長通信によって行われる。すなわち、一方の無線装置は、同一の通信対象データを含むデータパケットをAチャネルの無線信号およびBチャネルの無線信号で送信する。他方の無線装置は、AチャネルおよびBチャネルのうち、先にデータパケットが受信された方のデータパケットから通信対象データを取得し、後に受信されるデータパケットを用いない。
各無線装置が特定小電力無線機の規格に従って設計されている場合、例えば、A周波数帯およびB周波数帯は、400MHz帯、920MHz帯、1.2GHz帯、2.4GHz帯等の特定小電力無線機に対して定められている複数の周波数帯から選ばれる。また、後述のように、各無線装置が3つ以上の複数の周波数帯を用いる場合には、これら複数の周波数帯は、特定小電力無線機に対して定められている複数の周波数帯から選ばれる。
(2)冗長通信
図2には、データ通信の例がシーケンスチャートによって示されている。この図では、Aチャネルでのパケットの送信が実線で示され、Bチャネルでのパケットの送信が破線で示されている。
第1無線装置10は、Aチャネルでデータパケットを送信すると共に(S101)、Bチャネルでデータパケットを送信する(S102)。第2無線装置12では、Aチャネルでデータパケットが先に受信されるため、第2無線装置12はそのデータパケットから通信対象データを取得する(S103)。Aチャネルでデータパケットが受信されてから時間taが経過した時に、第2無線装置12はBチャネルでデータパケットを受信する。第2無線装置12は、そのデータパケットに含まれている通信対象データが、先に受信したデータパケットに含まれていた通信対象データと同一であることを認識すると、Bチャネルで受信されたデータパケットを破棄する(S104)。ここで、データパケットの破棄は、データパケットを消去することの他、データパケットに関する処理を実行しないことを含む。第2無線装置12は、Aチャネルでデータパケットを受信したことに応答して、Aチャネルでアクノリッジパケットを送信する(S105)。また、第2無線装置12は、Bチャネルでデータパケットを受信したことに応答して、Bチャネルでアクノリッジパケットを送信する(S106)。第1無線装置10は各アクノリッジパケットを受信し、AチャネルおよびBチャネルのそれぞれで送信されたデータパケットが第2無線装置12で受信されたことを認識する。
また、ステップS107およびS108に示されているように、第1無線装置10がAチャネルでデータパケットを送信すると共に(S107)、Bチャネルでデータパケットを送信した場合において(S108)、Aチャネルで送信したデータパケットが、通信状況の不良により第2無線装置12で受信されなかったものとする。この場合、第2無線装置12は、Bチャネルで受信されたデータパケットから通信対象データを取得する(S109)。第2無線装置12は、Bチャネルでデータパケットを受信したことに応答して、Bチャネルでアクノリッジパケットを送信する(S110)。第1無線装置10はアクノリッジパケットを受信し、Bチャネルで送信されたデータパケットが第2無線装置12で受信されたことを認識する。
ステップS111およびS112において、第1無線装置10は、Bチャネルでデータパケットを送信すると共に(S111)、Aチャネルでデータパケットを送信する(S112)。第2無線装置12では、Bチャネルでデータパケットが先に受信されるため、第2無線装置12はそのデータパケットから通信対象データを取得する(S113)。Bチャネルでデータパケットが受信されてから時間tbが経過した時に、第2無線装置12は、Aチャネルでデータパケットを受信する。第2無線装置12は、そのデータパケットに含まれている通信対象データが、先に受信したデータパケットに含まれていた通信対象データと同一であることを認識すると、Aチャネルで受信されたデータパケットを破棄する(S114)。第2無線装置12は、Bチャネルでデータパケットを受信したことに応答して、Bチャネルでアクノリッジパケットを送信する(S115)。また、第2無線装置12は、Aチャネルでデータパケットを受信したことに応答して、Aチャネルでアクノリッジパケットを送信する(S116)。第1無線装置10は各アクノリッジパケットを受信し、BチャネルおよびAチャネルのそれぞれで送信されたデータパケットが第2無線装置12で受信されたことを認識する。
ここでは、第1無線装置10から第2無線装置12にデータパケットを送信する処理について説明したが、第2無線装置12から第1無線装置10にデータパケットを送信する処理も同様にして行われる。また、音声データ、画像データ、テキストデータ等は、複数のデータパケットに分けて送信される。そのため、送信側の無線装置から受信側の送信装置には、複数のデータパケットが所定時間間隔で順次送信される。
このような冗長通信によれば、同一の通信対象データを含むデータパケットが、AチャネルおよびBチャネルの両方で一方の無線装置から送信される。他方の無線装置は、先に受信されたデータパケットから通信対象データを取得する。これによって、一方のチャネルの通信状況が良好でない場合には、他方のチャネルによって一方の無線装置から他方の無線装置に通信対象データが送信されるため、データ通信の信頼性が向上する。
(3)通信条件変更処理の概要
第1無線装置10および第2無線装置12は、AチャネルおよびBチャネルのうち一方のチャネルの通信状況が良好でない場合、通信条件変更処理を実行する。すなわち、通信状況が良好である他方のチャネルによるデータ通信を停止して代わりに制御通信を行い、その制御通信によって、通信状況が良好でない一方のチャネルを同一周波数帯内の別のチャネルに変更する。
例えば、Aチャネルa1による通信の状況が良好でない場合、Bチャネルb1によるデータ通信を停止してBチャネルb1による制御通信を行い、Aチャネルa1をA周波数帯内の別のAチャネルa2に変更する。Aチャネルa2での通信状況が良好でない場合、Aチャネルa2をA周波数帯内の別のAチャネルa3に変更する。このようにして通信状況が良好になるまでA周波数帯内のAチャネルを変更する。
変更先のチャネルの選択は、後述の優先度決定処理によって求められた優先度に基づいて行われる。すなわち、第1無線装置10および第2無線装置12は制御通信を実行し、A周波数帯内の複数のチャネルのうち現時点で用いているチャネルを除いて優先度が最も大きいものを選択し、その選択したチャネルにAチャネルを変更する。そのチャネルでの通信状況が良好でない場合には、次に優先度が大きいチャネルを選択し、その選択したチャネルにAチャネルを変更する。Aチャネルを変更した後、通信状況が良好になった場合に、第1無線装置10および第2無線装置12は、Bチャネルb1によるデータ通信を再開し、冗長通信を再開する。なお、A周波数帯内のチャネルに優先度が同一のものがある場合には、例えば、チャネルの番号が小さいものが優先的に選択される。あるいは、優先度が同一の複数のチャネルから無作為に1つが選択されてもよい。
同様に、Bチャネルb1による通信の状況が良好でない場合、第1無線装置10および第2無線装置12は、Aチャネルa1によるデータ通信を停止してAチャネルa1による制御通信を行い、Bチャネルb1をB周波数帯内の別のBチャネルb2に変更する。Bチャネルb2での通信状況が良好でない場合、Bチャネルb2をB周波数帯内の別のBチャネルb3に変更する。このようにして通信状況が良好になるまでBチャネル周波数帯内のBチャネルを変更する。
Aチャネルを変更する場合と同様、変更先のチャネルの選択は、後述の優先度決定処理によって求められた優先度に基づいて行われる。すなわち、第1無線装置10および第2無線装置12は制御通信を実行し、B周波数帯内の複数のチャネルのうち現時点で用いている周波数を除いて優先度が最も大きいものを選択し、その選択したチャネルにBチャネルを変更する。そのチャネルでの通信状況が良好でない場合には、次に優先度が大きいチャネルを選択し、その選択されたチャネルにBチャネルを変更する。Bチャネルを変更した後、通信状況が良好になった場合に、第1無線装置10および第2無線装置12は、Aチャネルa1によるデータ通信を再開し、冗長通信を再開する。B周波数帯内のチャネルに優先度が同一のものがある場合には、例えば、チャネルの番号が小さいものが優先的に選択される。あるいは、優先度が同一の複数のチャネルから無作為に1つが選択されてもよい。
データ通信における通信状況が良好であるか否かの判定は、アクノリッジパケットが受信された頻度や、受信信号の大きさ等に基づいて行われる。例えば、通信状況の測定値としての判定パラメータに対し、通信失敗の度に規定値を加算し、通信成功の度に規定値を減算する。具体的な例として、データパケットを送信する側の無線装置は、データパケットの送信に対し、アクノリッジパケットが受信されなかった場合には判定パラメータに規定値を加算する。そして、データパケットに対するアクノリッジパケットが受信された場合には、通信状況の判定パラメータから規定値を減算する。判定パラメータは、データパケットを所定回数だけ送信するごとに初期値にリセットしてもよい。このようにして求められた判定パラメータが所定の閾値以上となった場合に、通信状況が良好でないとの判定をする。
(4)優先度決定処理
(4−1)基本的な処理
優先度決定処理について図3を参照して説明する。この図では、第1無線装置10および第2無線装置12のそれぞれに対し、下方向に伸びる時間軸が示されている。各時間軸上には、チャネルを表す符号が長方形の枠内に示されている。第1無線装置10は、Aチャネル無線部14(Ach無線部14)、Bチャネル無線部16(Bch無線部16)、および測定用受信部18を備える。同様に、第2無線装置12は、Aチャネル無線部20、Bチャネル無線部22、および測定用受信部24を備える。第1無線装置10および第2無線装置12のそれぞれが備えるAチャネル無線部は、A周波数帯でパケットの送受信を行う。第1無線装置10および第2無線装置12のそれぞれが備えるBチャネル無線部は、B周波数帯でパケットの送受信を行う。第1無線装置10および第2無線装置12のそれぞれが備える測定用受信部は、A周波数帯およびB周波数帯の両方の周波数帯でパケットを受信する。A周波数帯のチャネルには、Aチャネルα1〜αNが定められており、B周波数帯のチャネルには、Bチャネルβ1〜βMが定められている。ただし、NおよびMは、2以上の整数である。
第1無線装置10および第2無線装置12のそれぞれにおけるAチャネル無線部およびBチャネル無線部は、データ通信および制御通信のいずれも行っていない時間帯に優先度決定処理を実行する。
優先度決定処理では、第2無線装置12の測定用受信部24は、第1無線装置10のAチャネル無線部14またはBチャネル無線部16から送信されたテストパケットを受信し、第2無線装置12は、テストパケットの受信状況に基づいて通信品質を測定する。また、第1無線装置10の測定用受信部18は、第2無線装置12のAチャネル無線部20またはBチャネル無線部22から送信されたテストパケットを受信し、第1無線装置10は、テストパケットの受信状況に基づいて通信品質を測定する。通信品質は数値で表されるものとし、例えば、受信信号レベルが採用される。
図3のステップS201〜S212には、第2無線装置12の測定用受信部24が、第1無線装置10のBチャネル無線部16から送信されたテストパケットを受信し、第2無線装置12がテストパケットの受信状況に基づいてB周波数帯の各チャネルの通信品質を測定する処理が示されている。また、ステップS213〜S216には、第2無線装置12の測定用受信部24が、第1無線装置10のAチャネル無線部14から送信されたテストパケットを受信し、第2無線装置12がテストパケットの受信状況に基づいてA周波数帯の各チャネルの通信品質を測定する処理が示されている。
初めに、第1無線装置10のBチャネル無線部16および第2無線装置12のBチャネル無線部22のチャネルは、Bチャネルβ10に設定されている。また、第2無線装置12の測定用受信部24のチャネルは、AチャネルαNに設定されている。
第1無線装置10のBチャネル無線部16は、Bチャネルβ10で設定パケットを送信する(S201)。この設定パケットは、第2無線装置12の測定用受信部24のチャネルをBチャネルβ1に設定する指令情報を含む。第2無線装置12のBチャネル無線部22は設定パケットを受信する。第2無線装置12は、受信された設定パケットに含まれる指令情報に基づいて、測定用受信部24のチャネルをBチャネルβ1に設定する(S202)。これによって、測定用受信部24のチャネルはAチャネルαNからBチャネルβ1に変更される。
第1無線装置10のBチャネル無線部16は、ステップS201で送信した設定パケットによって特定されるBチャネルβ1にチャネルを設定し、テストパケットを送信する(S203)。第2無線装置12の測定用受信部24はテストパケットを受信する。第2無線装置12は、テストパケットを受信したときの受信信号に基づいて受信品質を測定し記憶する(S204)。第1無線装置10は、Bチャネル無線部16がテストパケットを送信した後、Bチャネル無線部16のチャネルをBチャネルβ1からβ10に戻す。
次に、第1無線装置10のBチャネル無線部16は、Bチャネルβ10で設定パケットを送信する(S205)。この設定パケットは、第2無線装置12の測定用受信部24のチャネルをBチャネルβ2に設定する指令情報を含む。第2無線装置12のBチャネル無線部22は設定パケットを受信する。第2無線装置12は、受信された設定パケットに含まれる指令情報に基づいて、測定用受信部24のチャネルをBチャネルβ2に設定する(S206)。これによって、測定用受信部24のチャネルはBチャネルβ1からBチャネルβ2に変更される。ステップS203およびS204と同様の処理によって、第1無線装置10は第2無線装置12にテストパケットを送信し(S207)、第2無線装置12は、テストパケットを受信したときの受信信号に基づいて受信品質を測定し記憶する(S208)。第1無線装置10は、Bチャネル無線部16がテストパケットを送信した後、Bチャネル無線部16のチャネルをBチャネルβ2からβ10に戻す。また、ステップS201〜S204およびステップS205〜S208と同様の処理によって、第2無線装置12はBチャネルβ3についての受信品質を測定し記憶する(S209〜S212)。
第1無線装置10のBチャネル無線部16、第2無線装置12のBチャネル無線部22、および測定用受信部24は、テストパケット送信用のBチャネルをβ1,β2,・・・βMの順に変更しながらこのような受信品質測定処理を繰り返す。これによって、第2無線装置12は各Bチャネルについて受信品質を測定する。なお、Bチャネルを変更する順序は、β1,β2,・・・βMの順序に限られず任意である。
次に、Aチャネルについて受信品質を測定する処理について説明する。以下の説明では、第2無線装置12が各Bチャネルについて受信品質を測定した後、第1無線装置10のAチャネル無線部14および第2無線装置12のAチャネル無線部20のチャネルは、Aチャネルα5に設定されているものとする。また、第2無線装置12の測定用受信部24のチャネルは、AチャネルβMに設定されているものとする。
第1無線装置10および第2無線装置12は、各Bチャネルについて受信品質を測定する処理と同様の処理によって、各Aチャネルについても受信品質を測定する。第1無線装置10のAチャネル無線部14は、Aチャネルα5で設定パケットを送信する(S213)。この設定パケットは、第2無線装置12の測定用受信部24のチャネルをAチャネルα1に設定する指令情報を含む。第2無線装置12のAチャネル無線部20は設定パケットを受信する。第2無線装置12は、受信された設定パケットに含まれる指令情報に基づいて、測定用受信部24のチャネルをAチャネルα1に設定する(S214)。これによって、測定用受信部24のチャネルはBチャネルβMからAチャネルα1に変更される。
第1無線装置10のAチャネル無線部14は、ステップS213で送信した設定パケットによって特定されるAチャネルα1にチャネルを設定し、テストパケットを送信する(S215)。第2無線装置12の測定用受信部24はテストパケットを受信する。第2無線装置12は、テストパケットを受信したときの受信信号に基づいて受信品質を測定し記憶する(S216)。第1無線装置10は、Aチャネル無線部14がテストパケットを送信した後、Aチャネル無線部14のチャネルをAチャネルα1からα5に戻す。
第1無線装置10のAチャネル無線部14、第2無線装置12のAチャネル無線部20、および測定用受信部24は、Aチャネルをα1,α2,・・・αNの順に変更しながらこのような処理を繰り返す。これによって、第2無線装置12は各Aチャネルについて受信品質を測定する。なお、Aチャネルを変更する順序は、α1,α2,・・・αNの順序に限られず任意である。
ここでは、第1無線装置10から第2無線装置12にテストパケットを送信し、第2無線装置12が各Aチャネルおよび各Bチャネルについて受信品質を決定する処理(以下、1・2方向測定処理という。)について説明した。この1・2方向測定処理に加えて、テストパケットの送信側と受信側とを逆にして、第2無線装置12から第1無線装置10にテストパケットを送信し、第1無線装置10が各Aチャネルおよび各Bチャネルについて受信品質を測定する処理(以下、2・1方向測定処理という。)も同様にして行われる。この場合、図3において第1無線装置10が実行するとされている処理を第2無線装置12が実行し、第2無線装置12が実行するとされている処理を第2無線装置12が実行すればよい。
第1無線装置10および第2無線装置12が1・2方向測定処理を1回実行することによって、第2無線装置12は、各チャネルについて第1無線装置10から第2無線装置12に向かう1・2通信方向についての通信品質を測定し記憶する。第2無線装置12は、1・2通信方向についての通信品質に基づいて、各チャネルの優先度を決定し記憶する。優先度は、通信品質が良好である程、大きい値とする。通信品質が受信信号レベルによって表される場合には、受信信号レベルが大きい程、優先度が大きい値となる。
また、第1無線装置10および第2無線装置12が2・1方向測定処理を1回実行することによって、第1無線装置10は、各チャネルについて第2無線装置12から第1無線装置10に向かう2・1通信方向への通信品質を測定し記憶する。第1無線装置10および第2無線装置12が2・1方向測定処理を実行することによって、第1無線装置10は、各チャネルについて第2無線装置12から第1無線装置10に向かう2・1通信方向についての通信品質を測定し記憶する。第1無線装置10は、2・1通信方向についての通信品質に基づいて、各チャネルの優先度を決定し記憶する。
このようにして第2無線装置12が決定する優先度は、1・2通信方向についての通信品質に基づくものであり、第1無線装置10が決定する優先度は、2・1通信方向についての通信品質に基づくものである。第1無線装置10および第2無線装置12は、次のような処理によって、1・2通信方向および2・1通信方向の双方向についての通信品質に基づいて優先度を決定してもよい。
(4−2)双方向についての通信品質に基づく優先度
1・2方向測定処理では1・2通信方向のみにデータパケットが送信される。そのため、1・2方向測定処理のみでは、第2無線装置12は2・1通信方向についての通信品質を取得することはできない。同様に、2・1方向測定処理のみでは、第1無線装置10は1・2通信方向についての通信品質を取得することはできない。
そこで、1・2通信方向および2・1通信方向の双方向についての通信品質を第1無線装置10および第2無線装置12のそれぞれが取得するため、第1無線装置10および第2無線装置12は、1・2方向測定処理および2・1方向測定処理の両者を繰り返し実行する。
第1無線装置10は、繰り返し実行される2・1方向測定処理の過程において最後に測定した各チャネルの通信品質を、実際に用いられる通信品質として記憶してもよい。また、第1無線装置10は、過去に遡って所定回数に亘って測定した通信品質の平均値をチャネルごとに求めて、実際に用いられる通信品質として記憶してもよい。過去の測定回数が所定回数に満たない場合は、例えば、その測定回数に亘って測定された通信品質の平均値をチャネルごとに求めて、実際に用いられる通信品質として記憶する。
同様に、第2無線装置12は、繰り返し実行される1・2方向測定処理の過程において最後に測定した各チャネルの通信品質を、実際に用いられる通信品質として記憶してもよい。また、第2無線装置12は、過去に遡って所定回数について測定した通信品質の平均値をチャネルごとに求めて、実際に用いられる通信品質として記憶してもよい。過去において行った通信品質の測定回数が所定回数に満たない場合は、例えば、その測定回数に亘って測定された通信品質の平均値をチャネルごとに求めて、実際に用いられる通信品質として記憶する。
2・1通信方向についての通信品質を取得した後に1・2方向測定処理を実行する第1無線装置10は、2・1通信方向についての通信品質をテストパケットに含ませてそのテストパケットを送信する。すなわち、テストパケット送信方向とは逆方向の通信品質をそのテストパケットに含ませる。この通信品質は、先に実行した2・1方向測定処理によって第1無線装置10が記憶したものである。第2無線装置12は、このテストパケットを受信して品質測定を行うと共に、このテストパケットから2・1通信方向の通信品質を取得し記憶する。
例えば、1・2方向測定処理を示す図3のステップS203で第1無線装置10は、Bチャネルβ1についての2・1通信方向の通信品質を含むテストパケットを送信する。第2無線装置12は、このテストパケットを受信して品質測定を行うと共に(S204)、このテストパケットからBチャネルβ1についての2・1通信方向の通信品質を取得し記憶する。
また、ステップS207で第1無線装置10は、Bチャネルβ2についての2・1通信方向の通信品質を含むテストパケットを送信する。第2無線装置12は、このテストパケットを受信して品質測定を行うと共に(S208)、このテストパケットからBチャネルβ2についての2・1通信方向の通信品質を取得し記憶する。第1無線装置10および第2無線装置12は、その他のBチャネルについても同様の処理を実行する。さらに、第1無線装置10は、ステップS215でAチャネルα1についての2・1通信方向の通信品質を含むテストパケットを送信する。第2無線装置12は、このテストパケットを受信して品質測定を行うと共に(S216)、このテストパケットからAチャネルα1についての2・1通信方向の通信品質を取得し記憶する。第1無線装置10および第2無線装置12は、その他のAチャネルについても同様の処理を実行する。
同様に、1・2通信方向についての通信品質を取得した後に2・1方向測定処理を実行する第2無線装置12は、テストパケットに1・2通信方向についての通信品質を含ませてそのテストパケットを送信する。この通信品質は、先に実行した1・2方向測定処理によって第2無線装置12が記憶したものである。第1無線装置10は、このテストパケットを受信して品質測定を行うと共に、このテストパケットから1・2通信方向の通信品質を取得し記憶する。
このような処理によって、第1無線装置10および第2無線装置12は、Aチャネルα1〜αNおよびBチャネルβ1〜βMのそれぞれについて、1・2通信方向および2・1通信方向の双方向についての通信品質を記憶する。
第1無線装置10および第2無線装置12は、双方向についての通信品質に基づいて、次のように各チャネルの優先度を求める。例えば、第1無線装置10および第2無線装置12は、1・2通信方向および2・1通信方向のうち、通信品質が良好でない劣性方向の通信品質に基づいて、各チャネルの優先度を求める。この場合、第1無線装置10および第2無線装置12は、劣性方向の通信品質が良好である程、優先度を大きい値とする。
また、第1無線装置10および第2無線装置12は、1・2通信方向についての通信品質および2・1通信方向についての通信品質の平均値である双方向品質平均値に基づいて、各チャネルの優先度を求めてもよい。通信品質の値が大きい程、通信品質が良好であることを示す場合、第1無線装置10および第2無線装置12は、双方向品質平均値が大きい程、優先度を大きい値とする。
1・2通信方向についての通信品質と、2・1通信方向についての通信品質とは異なる場合がある。そして、第1無線装置10と第2無線装置12との間では、双方向でパケットの送受信が行われる。したがって、一方の通信方向についての通信品質に基づいて優先度を決定したのでは、通信状況を適切に反映した優先度が求められず、通信条件変更処理における変更先のチャネルとして適切なチャネルが選択されない場合がある。上述のように、1・2通信方向および2・1通信方向の双方向についての通信品質に基づいて各チャネルの優先度を決定することで、変更先のチャネルが適切に選択されるため、制御通信におけるチャネルの変更回数が減少する。これによって、通信条件変更処理が迅速かつ適切に行われる。
(4−3)データ通信および制御通信と共に優先度決定処理を実行する場合
上述のように、第1無線装置10および第2無線装置12は、A周波数帯およびB周波数帯の両方を用いて冗長通信方式によるデータ通信を行う。また、第1無線装置10および第2無線装置12は、A周波数帯およびB周波数帯のうち一方を用いた制御通信を行う。ここでは、データ通信および制御通信と共に優先度決定処理を実行する場合について説明する。
第1無線装置10および第2無線装置12は、データ通信を行う必要があると、優先度決定処理を一時的に停止する。図4には、データ通信開始指令(S307)およびデータ通信/制御通信(S308およびS309)と示されている時間帯で優先度決定処理が一時的に停止される例が示されている。第2無線装置12がBチャネルβ1について優先度を求めるステップS301〜S304の処理は、図3に示されているステップS201〜S204の処理と同様である。
図4には、ステップS305で第1無線装置10のBチャネル無線部16が設定パケットを送信した後に、データ通信が開始される例が示されている。データ通信を開始すべき旨のデータ通信開始指令が第1無線装置10に与えられると、第1無線装置10は第2無線装置12との間で冗長通信方式によるデータ通信を実行する(S308およびS309)。データ通信開始指令は、例えば、ユーザの操作によって、あるいは外部の装置から出力された制御情報によって第1無線装置10に与えられる。
図4に示されているステップS308およびS309のデータ通信/制御通信は、データ通信が中断されて制御通信が行われ、再びデータ通信が行われる通信条件変更処理を含む。
制御通信では、データ通信が開始された時に記憶されている優先度に基づいて、チャネルの変更が行われる。例えば、Aチャネルを変更する場合には、第1無線装置10および第2無線装置12は、A周波数帯内の複数のチャネルのうち優先度が最も大きいものを選択し、その選択したチャネルにAチャネルを変更する。そのチャネルでの通信状況が良好でない場合には、次に優先度が大きいチャネルを選択し、その選択したチャネルにAチャネルを変更する。Aチャネルが変更された後に通信状況が良好になった場合に、第1無線装置10および第2無線装置12は、その変更後のAチャネルと、制御通信に用いられたBチャネルとによるデータ通信を開始し、冗長通信を再開する。
同様に、Bチャネルを変更する場合には、第1無線装置10および第2無線装置12は、B周波数帯内の複数のチャネルのうち優先度が最も大きいものを選択し、その選択したチャネルにBチャネルを変更する。そのチャネルでの通信状況が良好でない場合には、次に優先度が大きいチャネルを選択し、その選択したチャネルにBチャネルを変更する。Bチャネルが変更された後、通信状況が良好になった場合に、第1無線装置10および第2無線装置12は、その変更後のBチャネルと、制御通信に用いられたAチャネルとによるデータ通信を開始し、冗長通信を再開する。
図4には、ステップS308およびS309におけるデータ通信において、Aチャネルα5の通信状況が良好でなくなり、Bチャネルβ10を用いた制御通信によって、Aチャネルがα5からα7に変更された例が示されている。ステップS308およびS309のデータ通信または制御通信が終了した後は、第1無線装置10および第2無線装置12のAチャネル無線部のチャネルはAチャネルα7に設定されている。また、第1無線装置10および第2無線装置12のBチャネル無線部のチャネルはBチャネルβ10に設定されている。
第1無線装置10のBチャネル無線部16は、ステップS305で送信した設定パケットによって特定されるBチャネルβ2にチャネルを設定し、テストパケットを送信する(S310)。第2無線装置12の測定用受信部24はテストパケットを受信する。第2無線装置12は、テストパケットを受信したときの受信信号に基づいて受信品質を測定し記憶する(S311)。第1無線装置10は、Bチャネル無線部16がテストパケットを送信した後、Bチャネル無線部16のチャネルをBチャネルβ2からβ10に戻す。
このように、データ通信または制御通信を行う必要があるときは、第1無線装置10および第2無線装置12は優先度決定処理を中断し、データ通信または制御通信が完了した後に、優先度決定処理を再開する。すなわち、第1無線装置10および第2無線装置12は、データ通信および制御通信のいずれも行っていない時間帯に優先度決定処理を実行して、各Aチャネルおよび各Bチャネルについて通信品質を求める処理(1・2方向測定処理および2・1方向測定処理)を繰り返す。
優先度決定処理の中断は、一方の無線装置が設定パケットを送信するステップ、他方の無線装置が設定パケットを受信し、その設定パケットに従ってチャネルを設定するステップ、一方の無線装置がテストパケットを送信するステップ、または、他方の無線装置がテストパケットについて受信品質を測定するステップのうちいずれのステップの直後に行われてもよい。ただし、データ通信を実行する前に、各無線装置は、それぞれのAチャネル無線部およびBチャネル無線部のチャネルを、データ通信用のチャネルに設定する。
(5)通信条件変更処理の具体例
通信条件変更処理の具体例について説明する。図5には、通信条件変更処理のタイミングチャートが示されている。図5(A−1)には、第1無線装置および第2無線装置によって用いられるAチャネルが示されている。図5(A−2)には、図5(A−1)で示されているAチャネルでの通信状況が示されている。縦軸の値「1」は通信状況が良好であることを示し、値「0」は通信状況が良好でないことを示す。図5(A−3)には、図5(A−1)で示されているAチャネルによって行われる通信が、データ通信であるか制御通信であるかが示されている。
同様に、図5(B−1)には、第1無線装置および第2無線装置によって用いられるBチャネルが示されている。この図に示されている処理は、図4におけるステップS308およびS309に対応する。図5(B−2)には、図5(B−1)で示されているBチャネルでの通信状況が示されている。図5(B−3)には、図5(B−1)で示されているBチャネルによって行われる通信が、データ通信であるか制御通信であるかが示されている。
時刻t0から時刻t1までにおいて、第1無線装置は、Aチャネルα1とBチャネルβ1を用いた冗長通信によって第2無線装置にデータパケットを順次送信している。すなわち、第1無線装置は、データパケットをAチャネルα1の無線信号およびBチャネルβ1の無線信号によって第2無線装置に順次送信し、データ通信を行っている。第1無線装置はAチャネルα1およびBチャネルβ1において同一の通信対象データを含むデータパケットを送信する。
時刻t0から時刻t1までの間、Aチャネルα1およびBチャネルβ1のいずれについても通信状況は良好である。図5(A−2)に示されているように、時刻t1にAチャネルα1での通信状況が良好でなくなると、第1無線装置は、図5(A−3)および(B−3)に示されているように、Aチャネルでのデータ通信を続行しつつも、Bチャネルβ1でのデータ通信を停止し制御通信を開始する。制御通信は、例えば、次のようにして行われる。
第1無線装置および第2無線装置のそれぞれは、優先度決定処理によってAチャネルα1〜αNについて優先度を既に求めており、さらに、Bチャネルβ1〜βMについて優先度を既に求めているものとする。第1無線装置は、Aチャネルα1を除き、優先度が最も大きいAチャネルを変更先のAチャネルとして選択する。ここでは、Aチャネルα1の次に優先度が大きいAチャネルがα8であるものとする。第1無線装置は、Bチャネルβ1の無線信号によってチャネル変更要求パケットを第2無線装置に送信する。チャネル変更要求パケットは、チャネルを変更すべき周波数帯を特定する情報、変更先のチャネルを特定する情報等を含む。ここでは、チャネル変更要求パケットは、チャネルを変更すべき周波数帯としてA周波数帯を特定する情報を含み、変更先のチャネルとしてAチャネルα8を特定する情報を含む。
チャネル変更要求パケットを受信した第2無線装置は、Bチャネルβ1でのデータ通信を停止する。そして、A周波数帯のチャネルをAチャネルα1からAチャネルα8に変更すると共に、チャネル変更了承パケットをBチャネルβ1の無線信号によって第1無線装置に送信する。チャネル変更了承パケットを受信した第1無線装置は、A周波数帯のチャネルをAチャネルα1からAチャネルα8に変更する。これによって、時刻t2に第1無線装置および第2無線装置によって用いられるA周波数帯のチャネルがAチャネルα1からAチャネルα8に変更される。
この後、A周波数帯のチャネルでの通信状況は良好となったため、第1無線装置および第2無線装置は、所定の制御用パケットを相互に送受信し、時刻t3に冗長通信方式によるデータ通信を再開する。
時刻t3から時刻t4までの間、Aチャネルα8およびBチャネルβ1のいずれについても通信状況は良好である。図5(B−2)に示されているように、時刻t4にBチャネルβ1での通信状況が良好でなくなると、第1無線装置は、図5(B−3)および(A−3)に示されているように、Bチャネルでのデータ通信を続行しつつも、Aチャネルα8でのデータ通信を停止し制御通信を開始する。制御通信は、例えば、次のようにして行われる。
第1無線装置は、Bチャネルβ1を除き、優先度が最も大きいBチャネルを変更先のBチャネルとして選択する。ここでは、Bチャネルβ1を除いて優先度が最も大きいBチャネルがβ5であるものとする。第1無線装置は、Aチャネルα8の無線信号によってチャネル変更要求パケットを第2無線装置に送信する。チャネル変更要求パケットを受信した第2無線装置は、Aチャネルα8でのデータ通信を停止する。そして、B周波数帯のチャネルをBチャネルβ1からBチャネルβ5に変更すると共に、Aチャネルα8の無線信号によってチャネル変更了承パケットを第1無線装置に送信する。チャネル変更了承パケットを受信した第1無線装置は、B周波数帯のチャネルをBチャネルβ1からBチャネルβ5に変更する。これによって、時刻t5に第1無線装置および第2無線装置によって用いられるB周波数帯のチャネルがBチャネルβ1からBチャネルβ5に変更される。
このとき、B周波数帯のチャネルでの通信状況は良好でないため、第1無線装置および第2無線装置は、同様の通信処理によってチャネルの変更を行う。Bチャネルβ1およびβ5を除いて優先度が最も大きいBチャネルがβ3である場合、時刻t6にB周波数帯のチャネルがBチャネルβ5からBチャネルβ3に変更される。
この後、B周波数帯のチャネルでの通信状況は良好となったため、第1無線装置および第2無線装置は、所定の制御用パケットを相互に送受信し、時刻t7に冗長通信方式によるデータ通信を再開する。
なお、通信条件変更処理において、第2無線装置がデータパケットの送信側である場合には、上記の説明において第1無線装置が実行する処理を第2無線装置が実行し、第1無線装置が実行する処理を第2無線装置が実行する。また、AチャネルおよびBチャネルの両方の通信状況が良好でない場合、第1無線装置および第2無線装置は通信条件変更処理を実行しない。
このように、通信条件変更処理では、制御通信を実行する各無線装置が、複数のチャネルのうち現時点で用いているチャネルを除いて優先度が最も大きいものを選択し、その選択したチャネルにAチャネルまたはBチャネルを変更する。そのチャネルでの通信状況が良好でない場合には、残りのチャネルのうち優先度が最も大きいチャネルを選択し、その選択したチャネルにAチャネルBチャネルを変更する。各無線装置は、チャネルの変更を通信状況が良好となるまで行う。この通信条件変更処理では、通信状況が良好である方のチャネルを用いて、通信状況が良好でない方のチャネルが変更されるため、チャネルの変更が確実に行われる。これによって、パケット通信の成功率の低下が抑制される。
(6)無線装置のハードウエア
図6には通信システムに用いられる無線装置26のハードウエアが示されている。無線装置26は、図1に示される第1無線装置10および第2無線装置12として用いられる。無線装置26は、無線部28、信号処理ユニット32および記憶部34を備える。無線部28は、受信されたパケットを信号処理ユニット32に出力し、信号処理ユニット32から出力されたパケットを送信する。無線部28は、Aチャネル無線部36、Bチャネル無線部38および測定用受信部30を備える。Aチャネル無線部36およびBチャネル無線部38のそれぞれは、無線信号を送信する送信部39、および無線信号を受信する受信部41を備える。Aチャネル無線部36およびBチャネル無線部38は、それぞれ、AチャネルおよびBチャネルの無線信号を送受信することでパケットの送受信を行う。このように、周波数帯ごとに無線部を個別に設けることで、各無線部が処理する無線信号の周波数帯域が狭くなり、ハードウエアの設計または製造が容易となる。なお、各無線部が、複数の周波数帯に亘る無線信号を処理可能な場合には、複数の周波数帯に対して共通の無線部が設けられてもよい。測定用受信部30は、AチャネルおよびBチャネルの無線信号を受信することでパケットを送受する。
信号処理ユニット32は、通信処理部40、通信品質測定部48、テスト実行部50、および優先度決定部52を備える。信号処理ユニット32は、プログラムに従った演算処理を実行するプロセッサを備えていてもよい。この場合、信号処理ユニット32は、演算処理によってこれらの構成要素を仮想的に実現する。すなわち、信号処理ユニット32が備える各構成要素は、プログラムに従った演算処理を実行することで実現される各機能を示している。なお、各構成要素はハードウエアによって個別に構成されてもよい。
通信処理部40は、データ通信部42、制御部44および制御通信部46を備え、無線部28と共に、複数の周波数帯を用いて他の無線装置(パケット通信装置)との間で無線通信を行う。通信処理部40は、データ通信の他、必要に応じて制御通信を行って通信条件変更処理を実行する。
データ通信部42は、データパケットを生成して無線部28に出力し、無線部28から出力されたデータパケットおよびアクノリッジパケットを取得する。データ通信部42は無線部28と共に、AチャネルおよびBチャネルを用いた冗長通信を実行する。
データ通信において制御部44は、AチャネルおよびBチャネルのそれぞれについて通信状況を監視する。通信状況の監視は、例えば、通信状況の測定値としての判定パラメータに対し、通信失敗の度に規定値を加算し、通信成功の度に規定値を減算することで行われる。具体的な例として、通信状況の監視は次のようにして行われる。制御部44は、データパケットの送信に対し、アクノリッジパケットが無線部28で受信されず、アクノリッジパケットがデータ通信部42で取得されなかった場合には判定パラメータに規定値を加算する。そして、アクノリッジパケットが無線部28で受信され、アクノリッジパケットがデータ通信部42で取得された場合には判定パラメータから規定値を減算する。判定パラメータは、データパケットを所定回数だけ送信するごとに初期値にリセットしてもよい。このようにして求められる測定値が所定の閾値以上となった場合に、通信状況が良好でないとの判定をする。
制御部44は、AチャネルおよびBチャネルのうち、一方のチャネルによる通信状況が良好でない場合、通信条件変更処理を実行する。通信条件変更処理において制御部44は、データ通信部42を制御して通信状況が良好である良好チャネルによるデータ通信を停止し、さらに、制御通信部46を制御して良好チャネルによる制御通信を実行させる。制御通信部46は、記憶部34に記憶された優先度を用いて、通信状況が良好でないチャネルを変更するための制御通信を実行する。
通信品質測定部48、テスト実行部50および優先度決定部52は、無線部28と共に優先度決定処理を実行する。
通信品質測定部48は、通信処理部40が用いる複数種のチャネル(データ通信条件)について通信品質を測定する。すなわち、通信品質測定部48は、複数の異なるチャネルのそれぞれについて無線部28で受信された各テストパケットを無線部28から取得するテスト処理と、異なるチャネルについて取得された複数のテストパケットのそれぞれの受信信号レベル(受信状況)に基づいて通信品質を測定する測定処理とを実行する。通信品質測定部48は、各チャネルについて測定された通信品質を記憶部34に記憶する。
テスト実行部50は、他の無線装置(パケット通信装置)に対しチャネルを設定させる設定パケットを生成し、その設定パケットを無線部28に送信させる設定処理と、他の無線装置に通信品質を測定させるためのテストパケットを生成し、設定パケットが定めるチャネルでそのテストパケットを無線部28に送信させるテスト送信処理とを実行する。
優先度決定部52は、各チャネルについて記憶部34に記憶された通信品質に基づいて、各チャネルの優先度を求め、各チャネルについて求めた優先度を記憶部34に記憶する。
(7)通信条件として通信レートを変更する処理
上記では、通信条件変更処理において、通信状況が良好でない一方のチャネルを、同一周波数帯内の別のチャネルに変更するものとした。このような処理に代えて、通信状況が良好でない一方のチャネルの通信レート(単位時間当たりに伝送される情報量)を変更する処理を実行してもよい。例えば、AチャネルおよびBチャネルのうち一方による通信状況が良好でない場合、通信状況が良好なチャネルによる制御通信を行い、通信状況が良好でない一方のチャネルにおける通信レートを小さくする。第1無線装置がデータパケットの送信側であり、Aチャネルの通信状況が良好でない場合、制御通信は次のようにして行われる。
図1に示された第1無線装置10は、Bチャネルの無線信号によって通信レート変更要求パケットを第2無線装置12に送信する。通信レート変更要求パケットは、変更後の通信レートを示す情報等を含む。ここでは、通信レート変更要求パケットは、変更後の通信レートとして、通常の通信レートよりも値が小さい低通信レートを示す情報を含む。通信レート変更要求パケットを受信した第2無線装置12は、Aチャネルの通信レートを低通信レートに変更すると共に、Bチャネルの無線信号によって通信レート変更了承パケットを第1無線装置10に送信する。通信レート変更了承パケットを受信した第1無線装置10は、Aチャネルの通信レートを低通信レートに変更する。これによって、Aチャネルの通信レートが低通信レートに変更される。
なお、制御通信を実行する各無線装置は、Aチャネルの通信レートを低通信レートに変更した後、所定時間経過後に、通信レートを元の通常の値に戻す処理を実行してもよい。これによって、一時的な通信状況の劣化に対処することができると共に、通信可能な情報量が長時間に亘って低下することが回避される。この場合、第1無線装置10は、Bチャネルの無線信号によって通信レート変更要求パケットを第2無線装置12に送信する。このチャネル変更要求パケットは、変更後の通信レートとして、通常の通信レートを示す情報を含む。通信レート変更要求パケットを受信した第2無線装置12は、Aチャネルの通信レートを通常の通信レートに変更すると共に、Bチャネルの無線信号によって通信レート変更了承パケットを第1無線装置10に送信する。通信レート変更了承パケットを受信した第1無線装置10は、Aチャネルの通信レートを通常の通信レートに変更する。これによって、Aチャネルの通信レートが通常の通信レートに戻される。
通信レートを変更する通信条件変更処理において、第2無線装置12がデータパケットの送信側である場合には、上記の説明において第1無線装置10が実行する処理を第2無線装置12が実行し、第1無線装置10が実行する処理を第2無線装置12が実行する。Bチャネルの通信状況が良好でない場合、各無線装置は、上記の説明においてAチャネルとBチャネルとが入れ換えられた処理を実行する。
通信レートを変更する場合、図6に示される制御部44は、データ通信部42を制御して通信状況が良好である良好チャネルによるデータ通信を停止し、さらに、制御通信部46を制御して良好チャネルによる制御通信を実行させる。この制御通信によって、良好でないチャネルにおける通信レートが変更される。
(8)3つ以上の周波数帯を用いた通信
上記では、第1無線装置10および第2無線装置12が、2つの周波数帯を用いて通信を行う処理について説明した。各無線装置は3つ以上の周波数帯を用いて通信を行ってもよい。この場合、第1無線装置10および第2無線装置12は、複数の周波数帯のそれぞれに含まれるチャネルによって冗長通信を行う。複数の周波数帯のうち、一つの周波数帯(第1周波数帯)を用いたデータ通信の状況が所定条件を満たさなくなった場合には、データパケットの送信側の無線装置は、他の周波数帯(第2周波数帯)を用いたデータ通信を停止する。そして、第2周波数帯を用いた制御通信によって、第1周波数帯を用いたデータ通信の通信条件を変更する。データパケットの送信側の無線装置は、第1周波数帯を用いたデータ通信の状況が所定条件を満たすようになるまで通信条件の変更を繰り返し行う。第1周波数帯を用いたデータ通信の状況が所定条件を満たしたときに、第1無線装置10および第2無線装置12は冗長通信を再開する。
3つ以上の周波数帯を用いた通信を行う場合、各無線装置は、パケットを送受信する無線部を各周波数帯ごとに備えるものとしてもよい。1つの実施形態として、各無線装置は、Aチャネル無線部およびBチャネル無線部に加え、各周波数帯に対する無線部を追加した構成とする。
(9)チャネルおよび通信レートの両方を変更する通信条件変更処理
上記では、通信条件変更処理においてチャネル変更する処理、および、通信レートを変更する処理について説明した。これらの処理は組み合わせてもよい。すなわち、チャネルを変更する処理、および通信レートを変更する処理を適宜組み合わせた処理を実行してもよい。
この場合、優先度決定処理では、第1無線装置および第2無線装置は、複数種の通信レートのそれぞれについて、1・2方向測定処理および2・1方向測定処理を実行する。すなわち、第1無線装置および第2無線装置は、第1の通信レートR1については、テストパケットを送信する際の通信レートをR1として、1・2方向測定処理および2・1方向測定処理を実行する。また、第1無線装置および第2無線装置は、第2の通信レートR2については、テストパケットを送信する際の通信レートをR2として、1・2方向測定処理および2・1方向測定処理を実行する。以降、同様にして、第iの通信レートRiについては、テストパケットを送信する際の通信レートをRiとして、1・2方向測定処理および2・1方向測定処理を実行する。
これによって、第1無線装置および第2無線装置は、Aチャネルα1〜αNおよびBチャネルβ1〜βMの各チャネルに対し、複数種の通信レートのそれぞれについて、1・2通信方向の優先度および2・1通信方向の優先度を求める。
制御通信を実行する第1無線装置および第2無線装置は、通信状況が良好でない一方のチャネルを同一周波数帯内の別のチャネルに変更すると共に、必要に応じて通信レートも変更する。
変更先のチャネルおよび通信レートの選択は、優先度決定処理によって求められた優先度に基づいて行う。すなわち、Bチャネルを用いたA周波数帯に対する制御通信では、A周波数帯内の複数のチャネルと、複数の通信レートとの複数通りの組み合わせ(以下、チャネルおよび通信レートの組を通信条件という。)のうち、現時点で用いている通信条件を除いて優先度が最も大きいものを選択する。そして、A周波数帯の通信条件をその選択された通信条件に変更する。変更後の通信条件での通信状況が良好でない場合には、次に優先度が大きい通信条件を選択し、A周波数帯の通信条件をその選択された通信条件に変更する。通信条件が変更された後、通信状況が良好になった場合に、第1無線装置および第2無線装置は、Bチャネルによるデータ通信を再開し、冗長通信を再開する。
同様に、Aチャネルを用いたB周波数帯に対する制御通信では、B周波数帯の複数の通信条件のうち、現時点で用いている通信条件を除いて優先度が最も大きいものを選択する。そして、B周波数帯の通信条件をその選択された通信条件に変更する。変更後の通信条件での通信状況が良好でない場合には、次に優先度が大きい通信条件を選択し、B周波数帯の通信条件をその選択された通信条件に変更する。通信条件が変更された後、通信状況が良好になった場合に、第1無線装置および第2無線装置は、Aチャネルによるデータ通信を再開し、冗長通信を再開する。