(57)【要約】      （修正有）【課題】他の無線通信方式による干渉を受けて通信効率が低下することを抑えることができる無線通信装置、および無線通信方法を提供する。【解決手段】無線通信装置１は、送信部１７と、受信部２２と、送信タイミング指示部１６とを持つ。送信部１７は、第１の無線通信方式を用いて信号を送信する。受信部２２は、第１の無線通信方式が用いられた信号の受信と、第１の無線通信方式において使用される周波数帯域の一部を少なくとも含む周波数帯域を使用した信号であって、第１の無線通信方式による信号以外の信号の検出とを行う。送信タイミング指示部１６は、受信部２２が、第１の無線通信方式による信号以外の信号を検出してから所定の時間にわたって信号を検出しなかったときに、送信部１７に、第１の無線通信方式を用いた信号の送信を指示する。【選択図】図２
2015142206.tif 000002
【特許請求の範囲】
【請求項１】
第１の無線通信方式を用いて信号を送信する送信部と、
前記第１の無線通信方式が用いられた信号の受信と、前記第１の無線通信方式において使用される周波数帯域の一部を少なくとも含む周波数帯域を使用した信号であって、前記第１の無線通信方式による信号以外の信号の検出とを行う受信部と、
前記受信部が、前記第１の無線通信方式による信号以外の信号を検出してから所定の時間にわたって信号を検出しなかったときに、前記送信部に、前記第１の無線通信方式を用いた信号の送信を指示する送信タイミング指示部と
を有する無線通信装置。
【請求項２】
前記所定の時間は、前記第１の無線通信方式において使用される周波数帯域の一部を少なくとも含む周波数帯域を使用する第２の無線通信方式において、信号を受信してから応答を送信するまでの時間以上である、請求項１に記載の無線通信装置。
【請求項３】
前記第２の無線通信方式において、送信の要求があるときに、前記応答を検出してから次の送信を行うまでのバックオフ時間の最大値に応じたフレーム時間長を、前記送信部が送信する信号が表すフレームのフレーム時間長として、決定するフレーム長制御部を有する、請求項２に記載の無線通信装置。
【請求項４】
前記フレーム長制御部は、前記フレーム時間長を、前記送信部がフレームを送信した後、該フレームに対する応答を通信相手が送信完了する時刻が、前記バックオフ時間の最大値に対応する時刻以前となるように決定する、請求項３に記載の無線通信装置。
【請求項５】
前記送信部によるフレームの送信の成功率を表す値を算出する成功率計測部と、
前記成功率を表す値を参照して、前記送信部が送信する信号が表すフレームのフレーム時間長を変更するフレーム長制御部と
を有する、請求項１に記載の無線通信装置。
【請求項６】
前記送信部による送信の実効スループットを表す値を算出するスループット計測部と、
前記実効スループットを表す値を参照して、前記送信部が送信する信号が表すフレームのフレーム時間長を決定するフレーム長制御部と
を有する、請求項１に記載の無線通信装置。
【請求項７】
自装置からの信号が、前記第１の無線通信方式において使用される周波数帯域の一部を少なくとも含む周波数帯域を使用する第２の無線通信方式にて通信する他の装置に対して、干渉を与えているか否かを判定する干渉状態判定部を有し、
前記送信タイミング指示部は、前記干渉状態判定部が前記干渉を与えていないと判定したときは、送信したフレームに対する送達確認の応答を前記受信部が受信すると、前記送信部に続けてフレームを送信させる、請求項１に記載の無線通信装置。
【請求項８】
前記送信タイミング指示部は、前記受信部が前記第１の無線通信方式による信号以外の信号と判定した信号であっても、前記送信部が前記第１の無線通信方式を用いて送信した信号に対する応答が送信されるタイミングに受信された信号を、前記第１の無線通信方式による信号と見做す、請求項１に記載の無線通信装置。
【請求項９】
前記所定の時間は、前記第１の無線通信方式を用いた無線通信の通信相手における値と異なる、請求項１に記載の無線通信装置。
【請求項１０】
第１の無線通信方式が用いられた信号の送信を行う無線通信方法であって、
前記第１の無線通信方式において使用される周波数帯域の一部を少なくとも含む周波数帯域を使用した信号であって、前記第１の無線通信方式による信号以外の信号の検出を行う第１の過程と、
前記第１の過程により、前記第１の無線通信方式による信号以外の信号を検出してから、所定の時間にわたって、信号を検出しなかったときに、前記第１の無線通信方式を用いた信号の送信をする第２の過程と
を有する無線通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、無線通信装置、および無線通信方法に関する。
【背景技術】
【０００２】
従来、通信距離が数ｃｍ程度の近接通信の無線通信方式と、通信距離が数ｍ以上の近距離通信の無線通信方式となど、複数の無線通信方式の間で、周波数帯域が重複していることがある。この場合、一方の無線通信方式で通信している際に、他方の無線通信方式による信号の干渉を受けてしまい、通信効率が低下してしまうことがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１９９８６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、他の無線通信方式による干渉を受けて通信効率が低下することを抑えることができる無線通信装置、および無線通信方法を提供することである。
【課題を解決するための手段】
【０００５】
実施形態の無線通信装置は、送信部と、受信部と、送信タイミング指示部とを持つ。送信部は、第１の無線通信方式を用いて信号を送信する。受信部は、第１の無線通信方式が用いられた信号の受信と、第１の無線通信方式において使用される周波数帯域の一部を少なくとも含む周波数帯域を使用した信号であって、第１の無線通信方式による信号以外の信号の検出とを行う。送信タイミング指示部は、受信部が、第１の無線通信方式による信号以外の信号を検出してから所定の時間にわたって信号を検出しなかったときに、送信部に、第１の無線通信方式を用いた信号の送信を指示する。
【図面の簡単な説明】
【０００６】
【図１】第１の実施形態の無線通信システムの通信環境を示す概略ブロック図。
【図２】第１の実施形態の無線通信装置１の概略構成の一例を示すブロック図。
【図３】第１の実施形態の無線通信装置１の動作の一例を示すフロー図（その１）。
【図４】第１の実施形態の無線通信装置１の動作の一例を示すフロー図（その２）。
【図５】第１の実施形態の無線通信装置１の動作の一例を示すフロー図（その３）。
【図６】第１の実施形態の無線通信装置１がＤａｔａフレームを送信する処理を示すタイミング図。
【図７】第２の実施形態の無線通信装置１の概略構成の一例を示すブロック図。
【図８】第２の実施形態の無線通信装置１の動作の一例を示すフロー図。
【図９】第２の実施形態の無線通信装置１がＤａｔａフレームを送信する処理を示すタイミング図。
【図１０】第３の実施形態の無線通信装置１の概略構成の一例を示すブロック図。
【図１１】第３の実施形態の送信成功率計測部２５とフレーム長制御部１８ｂが行う処理の一例を示すフロー図。
【図１２】第４の実施形態の無線通信装置１の概略構成の一例を示すブロック図。
【図１３】第４の実施形態のフレーム長制御部１８ｃとスループット計測部２６による処理の一例を示すフロー図。
【図１４】第４の実施形態のフレーム時間長と実効スループットとの関係例を示すグラフ。
【図１５】第５の実施形態の無線通信装置１の概略構成の一例を示すブロック図。
【図１６】第５の実施形態の無線通信装置１の動作の一例を示すフロー図（その１）。
【図１７】第５の実施形態の無線通信装置１の動作の一例を示すフロー図（その２）。
【発明を実施するための形態】
【０００７】
以下、実施形態の無線通信装置、および無線通信方法を、図面を参照して説明する。
【０００８】
（第１の実施形態）
図１は、第１の実施形態に係る無線通信システムの通信環境を示す概略ブロック図である。本実施形態に係る無線通信システムは、無線通信装置１と、無線通信装置２とを含む。無線通信装置１と、無線通信装置２とは、ｍｍＦｌａｓｈ（登録商標）と呼ばれる第１の無線通信方式を用いて、通信エリア（電波到達範囲）３で通信を行っている。なお、ｍｍＦｌａｓｈは、近接ミリ波無線通信である。また、図１では、無線ＬＡＮ（ＩＥＥＥ８０２．１１ａｄ）と呼ばれる第２の無線通信方式用いて、無線通信装置４と無線通信装置と５が、通信エリア（電波到達範囲）６で無線通信を行っている。なお、無線ＬＡＮは、近距離無線通信である。ｍｍＦｌａｓｈと、無線通信装置４、５が用いている無線ＬＡＮとは、周波数帯域が重複している。
【０００９】
この場合、無線通信装置１、２による無線通信システムと、無線通信装置４、５による無線通信システムとの間での干渉に関する位置関係は、図１の位置関係Ａ、Ｂ、Ｃの３つがある。位置関係Ａ（Ｃａｓｅ  Ａ）では、お互いの通信エリアが重複していないため、それぞれのシステムが相手側のシステムから干渉を受けることなく無線通信を行うことができる。位置関係Ｂ（Ｃａｓｅ  Ｂ）では、無線通信装置１、２による無線通信システムは、無線通信装置４、５による無線通信システムの通信エリア６（電波到達範囲）の中に位置している。しかし、無線通信装置４、５による無線通信システムは、無線通信装置１、２による無線通信システムの通信エリア３には入っていない。このため、無線通信装置１、２による無線通信システムは、無線通信装置４、５による無線通信システムから干渉を受けるが、無線通信装置４、５による無線通信システムは、無線通信装置１、２による無線通信システムから干渉を受けない。位置関係Ｃ（Ｃａｓｅ  Ｃ）では、互いに相手システムの通信エリア（電波到達範囲）に位置しているため、双方のシステムが干渉を与え／受け合う。
【００１０】
図２は、無線通信装置１の概略構成の一例を示すブロック図である。なお、無線通信装置２の構成は、無線通信装置１の構成と同様であるので、説明を省略する。ただし、無線通信装置２では、後述する時間Ｔ０の値が、無線通信装置１とは異なる。これにより、無線通信装置１、２が同時にデータの送信を開始することを避けることができる。
無線通信装置１は、アンテナ１０、干渉状態判定部１１、受信部２２、タイマー１５、送信タイミング指示部１６、送信部１７、フレーム長制御部１８、バッファ部１９、入力端子２０、出力端子を含む。受信部２２は、キャリアセンス部１２と、復号部１３と、エラー検出部１４とを含む。
【００１１】
アンテナ１０は、無線通信装置２に対する信号の送信、および無線通信装置２からの信号の受信を行う。干渉状態判定部１１は、無線通信装置４、５による無線通信システムなど、他の無線通信システムとの位置関係が、上述のＣａｓｅ  Ａ、Ｂ、Ｃのいずれであるかを判定する。判定方法の一例を以下に示す。干渉状態判定部１１は、まず、キャリアセンス部１２が後述する搬送波を検出したときは、Ｃａｓｅ  Ｂ、Ｃのいずれかであり、検出しないときは、Ｃａｓｅ  Ａであると判定する。Ｃａｓｅ  Ｂ、Ｃのいずれかであると判定したときは、干渉状態判定部１１は、送信部１７に信号を送信させ、信号の送信が完了してからＤＩＦＳ（Distributed (coordination function) Interframe Space）の間に、キャリアセンス部１２が搬送波を検出したときは、Ｃａｓｅ  Ｂと判定し、検出しないときは、Ｃａｓｅ  Ｃと判定する。ＤＩＦＳとは、無線ＬＡＮにおいて、Ｂｕｓｙ状態のチャネルから信号電力が検出されなくなり、Ｉｄｌｅ状態に変化したと判断されるまでの時間間隔である。
【００１２】
キャリアセンス部１２は、アンテナ１０が受信した信号から、ｍｍＦｌａｓｈで使用される周波数帯域における搬送波を検出する。復号部１３は、キャリアセンス部１２が検出した搬送波の信号を復号し、該信号が表すビット列を得る。エラー検出部１４は、復号部１３により得られたビット列を、ｍｍＦｌａｓｈにおけるフレームと見做し、誤り検出を行う。誤り検出には、ＣＲＣ（Cyclic Redundancy Check；巡回冗長検査）を用いる。エラー検出部１４は、誤りを検出したときは、対象の信号は、ｍｍＦｌａｓｈによる信号以外の信号であると判定する。また、エラー検出部１４は、誤りを検出しなかったときは、対象の信号は、ｍｍＦｌａｓｈによる信号であると判定する。
【００１３】
タイマー１５は、キャリアセンス部１２が搬送波を検出しなくなってからの時間を計測し、キャリアセンス部１２が搬送波を検出しないまま、所定の時間Ｔ０が経過すると、送信タイミング指示部１６に通知する。時間Ｔ０は、本実施形態では４μｓであるが、ＳＩＦＳ（Short Interframe Space）よりも大きな値であればよい。ＳＩＦＳとは、無線ＬＡＮにおける、データフレームの送信完了から、ＡＣＫフレームの送信までの時間間隔であり、ＩＥＥＥ８０２．１１ａｄでは、３μｓである。さらに、時間Ｔ０は、ＤＩＦＳよりも小さな値であることが望ましい。なお、ＡＣＫフレームは、データフレームを受信した装置により送信される応答であり、データフレームに対する送達確認の応答である。
【００１４】
送信タイミング指示部１６は、干渉状態判定部１１が、Ｃａｓｅ  ＢまたはＣであると判定しているときは、データの送信タイミングを、送信部１７に指示する。指示する送信タイミングは、ｍｍＦｌａｓｈによる信号以外の信号を検出してから、所定の時間Ｔ０にわたって、キャリアセンス部１２が信号を検出しなかったときである。具体的には、送信タイミング指示部１６は、タイマー１５から所定の時間Ｔ０が経過したことを通知されると、エラー検出部１４による最後の誤り検出の結果を取得する。そして、送信タイミング指示部１６は、取得した誤り検出の結果が、誤りを検出したことを示しているときは、送信部１７に送信を指示する。すなわち、送信タイミング指示部１６は、タイマー１５から所定の時間Ｔ０が経過したことを通知されたときに、取得した誤り検出の結果が、誤りを検出したことを示しているときは、ｍｍＦｌａｓｈによる信号以外の信号を検出してから、所定の時間Ｔ０にわたって、信号を検出しなかったと判定する。
【００１５】
送信部１７は、送信タイミング指示部１６から送信を指示されると、バッファ部１９からフレームを取得する。送信部１７は、取得したフレームを変調することで、取得したフレームを表す信号を生成する。送信部１７は、生成した信号を、アンテナ１０を介して、無線通信装置２に送信する。フレーム長制御部１８は、予め記憶しているフレーム時間長Ｄを、バッファ部１９に設定する。このフレーム時間長Ｄは、無線ＬＡＮにおけるバックオフ時間の最大値に応じた値である。より具体的には、このフレーム時間長Ｄは、送信部１７が送信タイミング指示部１６により送信を指示されてフレームを送信したときに、そのフレームに対する応答（ＡＣＫフレーム）が無線ＬＡＮにおけるバックオフ時間の最大値以前となるフレーム時間長である。フレーム時間長Ｄの具体例については後述する。
【００１６】
バッファ部１９は、入力端子２０から入力されたデータから、フレーム時間長Ｄのフレームを生成し、キューに格納する。バッファ部１９は、送信部１７から要求があると、キューからフレームを取り出し、送信部１７に入力する。入力端子２０は、送信するデータの入力を受け付ける。出力端子２１は、エラー検出部１４が誤りを検出しなかったフレームのデータを出力する。
【００１７】
図３から図５は、無線通信装置１の動作の一例を示すフローチャートである。図３に示すフローチャートは、無線通信装置２との接続確立後からフレーム送信を含む処理を示す。まず、干渉状態判定部１１は、他の無線通信システムとの位置関係がＣａｓｅ  ＡであるかＣａｓｅ  ＢであるかＣａｓｅ  Ｃであるかの判定を行う（ステップＳａ１）。ステップＳａ１においてＣａｓｅ  ＢまたはＣと判定したとき、すなわち、他の無線通信システムを検出したときは（ステップＳａ２−Ｙｅｓ）、バッファ部１９は、送信するデータが保存されているか否かの判定を行う（ステップＳａ３）。
【００１８】
送信するデータが保存されていないと判定したときは（ステップＳａ３−Ｎｏ）、処理は、ステップＳａ５に進む。一方、ステップＳａ３にて、送信するデータが保存されていると判定したときは（ステップＳａ３−Ｙｅｓ）、バッファ部１９は、フレーム長制御部１８が設定したフレーム時間長Ｄのフレームを生成し、生成したフレームをキューに格納する（ステップＳａ４）。その後、処理は、ステップＳａ５に進む。上述したように、フレーム時間長Ｄは、フレームの送信完了が無線ＬＡＮにおけるバックオフ時間の最大値以前となるフレーム時間長である。フレーム時間長Ｄの具体例については、後述する。なお、バックオフ時間の最大値は、ＤＩＦＳと初期コンテンションウィンドウの最大値の和である。
【００１９】
ステップＳａ５では、キャリアセンス部１２が受信待ち受けを行う。そして、受信待ち受け中に、キャリアセンス部１２は、ＫｅｅｐＡｌｉｖｅタイマーがタイムアウトしたか否かの判定を行い（ステップＳａ６）、タイムアウトしているときは（ステップＳａ６−Ｙｅｓ）、接続の切断を行い（ステップＳａ１０）、処理を終了する。
【００２０】
一方、ステップＳａ６においてタイムアウトしていなければ、キャリアセンス部１２は、信号（搬送波）が検出されたか否かの判定を行う（ステップＳａ７）。信号が検出されていないときは（Ｓａ７−Ｎｏ）、処理は、ステップＳａ５へ戻り、キャリアセンス部１２は、受信待ち受けを継続する。一方、ステップＳａ７において、信号が検出さたときは（Ｓａ７−Ｙｅｓ）、復号部１３が検出された信号の復号を行う（ステップＳａ８）。復号が終了した後、エラー検出部１４が、復号部１３の復号結果に対して、ＣＲＣ誤り検出を行う（ステップＳａ９）。次に、エラー検出部１４は、ステップＳａ９のＣＲＣ誤り検出にて、誤りが検出されたか否かを判定する（ステップＳａ１１）。
【００２１】
ステップＳａ１１において、誤りが検出されたと判定したときは（ステップＳａ１１−Ｙｅｓ）、バッファ部１９はフレームを生成済みであるか否かの判定を行う（ステップＳａ１２）。送信データがバッファ部１９に入力されておらず、フレームを生成していないときは（ステップＳａ１２−Ｎｏ）、処理は、ステップＳａ５へ戻り、キャリアセンス部１２は、受信待ち受けを継続する。一方、ステップＳａ１２において、フレームを生成済みであると判定したときは（ステップＳａ１２−Ｙｅｓ）、キャリアセンス部１２は、ステップＳａ１１にて誤りが検出されたと判定した信号の受信レベル検出が終了したか否かを判定する（ステップＳａ１３）。ここで、受信レベル検出の終了とは、アンテナ１０が受信した信号の受信レベルが低く、キャリアセンス部１２が搬送波を検出できなくなることである。
【００２２】
受信レベル検出が終了するまで待ち、受信レベル検出が終了すると（ステップＳａ１３）、キャリアセンス部１２が、受信待ち受けを開始し（ステップＳａ１４）、タイマー１５が、Ｉｄｌｅ期間のカウントを開始する（ステップＳａ１５）。次に、キャリアセンス部１２は、受信待ち受けで、信号（搬送波）が検出されたか否かを判定する（ステップＳａ１６）。ステップＳａ１６にて、信号が検出されたと判定したとき、すなわちキャリアＢｕｓｙが検出されたときは（ステップＳａ１６−Ｙｅｓ）、処理は、ステップＳａ８へ戻り、復号部１３が復号を開始する。
【００２３】
一方、ステップＳａ１６にて、信号が検出されないと判定したとき、すなわちキャリアＩｄｌｅが検出されたときは（ステップＳａ１６−Ｎｏ）、タイマー１５は、カウントしているＩｄｌｅ期間が時間Ｔ０以上であるか否かを判定する（ステップＳａ１７）。ステップＳａ１７においてＩｄｌｅ期間が時間Ｔ０以上でないと判定したときは（ステップＳａ１７−Ｎｏ）、処理は、ステップＳａ１６に戻る。一方、ステップＳａ１７においてＩｄｌｅ期間が時間Ｔ０以上であると判定したときは（ステップＳａ１７−Ｙｅｓ）、タイマー１５は、Ｉｄｌｅ期間が時間Ｔ０以上となったことを、送信タイミング指示部１６に通知する。送信タイミング指示部１６は、エラー検出部１４がステップＳａ１１にて誤りありと判定しているので、キャリアセンス部１２および送信部１７に対して、送信モードへの切り替えを指示する（ステップＳａ１８）。
【００２４】
送信モードへの切り替えが完了すると、送信部１７は、バッファ部１９からフレームを取得して送信する（ステップＳａ１９）。送信部１７は、フレームの送信が完了すると、受信モードへの切り替えを行うとともに、キャリアセンス部１２に対して受信モードへの切り替えを指示する（ステップＳａ２０）。受信モードへの切り替えが完了すると、キャリアセンス部１２は、受信待ち受けを開始し、信号を検出したか否かを判定する（ステップＳａ２１）。信号を検出したと判定したときは（ステップＳａ２１−Ｙｅｓ）、処理は、ステップＳａ８へ戻り、復号部１３は、検出した信号の復号を行う。
【００２５】
一方、ステップＳａ２１において信号を検出しなかったと判定したときは（ステップＳａ２１−Ｎｏ）、ＡＣＫタイマーがタイムアウトしたか否かの判定を行う（ステップＳａ２２）。タイムアウトしていないと判定したときは（Ｓａ２２−Ｎｏ）、処理は、ステップＳａ２１に戻る。なお、ＡＣＫタイマーは、送信部１７がフレームの送信を完了してから、無線通信装置２が受信したフレームに対するＡＣＫを送信するまでの時間でタイムアウトする。一方、ステップＳａ２２にて、タイムアウトしたと判定したときは、処理は、ステップＳａ５へ戻る。
【００２６】
一方、ステップＳａ１１において、誤りなしと判定したときは（ステップＳａ１１−Ｎｏ）、エラー検出部１４は、誤り検出を行ったフレーム（受信フレーム）の種別を解析する（ステップＳａ２３）。解析の結果、受信フレームの種別がＡＣＫフレームであるときは（ステップＳａ２４−ＡＣＫ）、バッファ部１９は、最後に送信したフレームを、キューから削除する（ステップＳａ２５）。その後、処理は、ステップＳａ３に戻る。一方、ステップＳａ２３の解析の結果、受信フレームの種別がＤａｔａフレームであるときは（ステップＳａ２４−Ｄａｔａ）、送信部１７がＡＣＫフレームを送信する（ステップＳａ２６）。ＡＣＫフレームの送信が完了すると、送信部１７と、キャリアセンス部１２は、受信モードへ切り替える（ステップＳａ２７）。その後、処理は、ステップＳａ３に戻る。
【００２７】
一方、ステップＳａ１においてＣａｓｅ  Ａと判定したとき、すなわち他の無線通信システムを検出していないときは（ステップＳａ２−Ｎｏ）、バッファ部１９は、送信するデータが保存されているか否かの判定を行う（ステップＳａ２８）。送信するデータが保存されていないと判定したときは（ステップＳａ２８−Ｎｏ）、キャリアセンス部１２が受信待ち受けを行う（ステップＳａ３５）。そして、受信待ち受け中に、キャリアセンス部１２は、ＫｅｅｐＡｌｉｖｅタイマーがタイムアウトしたか否かの判定を行い（ステップＳａ３６）、タイムアウトしているときは（ステップＳａ３６−Ｙｅｓ）、接続の切断を行い（ステップＳａ１０）、処理を終了する。
【００２８】
一方、ステップＳａ３６においてタイムアウトしていなければ、キャリアセンス部１２は、信号（搬送波）が検出されたか否かの判定を行う（ステップＳａ３７）。信号が検出されていないときは（Ｓａ３７−Ｎｏ）、処理は、ステップＳａ３５へ戻り、キャリアセンス部１２は、受信待ち受けを継続する。一方、ステップＳａ３７において、信号が検出さたときは（Ｓａ３７−Ｙｅｓ）、復号部１３が検出された信号の復号を行う（ステップＳａ３８）。復号が終了した後、エラー検出部１４が、復号部１３の復号結果に対して、ＣＲＣ誤り検出を行う（ステップＳａ３９）。次に、エラー検出部１４は、ステップＳａ３９のＣＲＣ誤り検出にて、誤りが検出されたか否かを判定する（ステップＳａ４０）。ステップＳａ４０において、誤りが検出されたと判定したときは（ステップＳａ４０−Ｙｅｓ）、処理は、ステップＳａ２８に戻る。
【００２９】
一方、ステップＳａ４０において誤りが検出されなかったと判定したときは（ステップＳａ４０−Ｎｏ）、エラー検出部１４は、誤り検出を行ったフレーム（受信フレーム）の種別を解析する（ステップＳａ４１）。解析の結果、受信フレームの種別がＡＣＫフレームであるときは（ステップＳａ４２−ＡＣＫ）、バッファ部１９は、最後に送信したフレームを、キューから削除する（ステップＳａ４３）。その後、処理は、ステップＳａ２８に戻る。一方、ステップＳａ４１の解析の結果、受信フレームの種別がＤａｔａフレームであるときは（ステップＳａ４２−Ｄａｔａ）、送信部１７がＡＣＫフレームを送信する（ステップＳａ４４）。ＡＣＫフレームの送信が完了すると、送信部１７と、キャリアセンス部１２は、受信モードへ切り替える（ステップＳａ４５）。その後、処理は、ステップＳａ２８に戻る。
【００３０】
一方、ステップＳａ２８において、送信するデータが保存されていると判定したときは（ステップＳａ２８−Ｙｅｓ）、バッファ部１９は、フレーム長制御部１８が設定したフレーム時間長のフレームを生成し、生成したフレームをキューに格納する（ステップＳａ２９）。フレーム長制御部１８は、このフレーム時間長をどのように決定してもよい。例えば、フレーム長制御部１８は、バッファ部１９が記憶しているデータが、フレーム時間長の最大値を超えているときは、最大値をフレーム時間長とし、超えていないときは、記憶しているデータに応じたフレーム時間長とする。
【００３１】
次に、キャリアセンス部１２および送信部１７は、送信モードへの切り替えを行う（ステップＳａ３０）。送信モードへの切り替えが完了すると、送信部１７は、バッファ部１９からフレームを取得して送信する（ステップＳａ３１）。送信部１７は、フレームの送信が完了すると、受信モードへの切り替えを行うとともに、キャリアセンス部１２に対して受信モードへの切り替えを指示する（ステップＳａ３２）。受信モードへの切り替えが完了すると、キャリアセンス部１２は、受信待ち受けを開始し、信号を検出したか否かを判定する（ステップＳａ３３）。信号を検出したと判定したときは（ステップＳａ３３−Ｙｅｓ）、処理は、ステップＳａ３８へ戻り、復号部１３は、検出した信号の復号を行う。
【００３２】
一方、ステップＳａ３３において信号を検出しなかったと判定したときは（ステップＳａ３３−Ｎｏ）、ＡＣＫタイマーがタイムアウトしたか否かの判定を行う（ステップＳａ３４）。タイムアウトしていないと判定したときは（Ｓａ３４−Ｎｏ）、処理は、ステップＳａ３３に戻る。一方、ステップＳａ３４にて、タイムアウトしたと判定したときは、再送を行うために、処理は、ステップＳａ３０へ戻る。
【００３３】
なお、ステップＳａ９にてＣＲＣ誤り検出を行った後、ステップＳａ１３にて受信信号レベルの検出が終了するまで待機しているが、キャリアセンス部１２による受信信号レベルの検出と、エラー検出部１４によるＣＲＣチェックとは、並行して行われるようにしてもよい。
【００３４】
図６は、位置関係がＣａｓｅ  Ｂの場合に、無線通信装置１がＤａｔａフレームを送信する処理のタイミング図である。図６の上側は、無線通信装置４の動作Ｐ４と無線通信装置５の動作Ｐ５を示す。図６の下側は、無線通信装置１の動作Ｐ１と無線通信装置２の動作Ｐ２を示す。無線通信装置４が、Ｄａｔａ１−１フレームを送信すると（１００）、無線通信装置５が受信する（１０１）。しかし、ｍｍＦｌａｓｈと、無線ＬＡＮとでは、信号フォーマットの互換がないため、Ｄａｔａ１−１フレームは、無線通信装置１と無線通信装置２ではＣＲＣエラーとなる（それぞれ１２０、１２１）。
【００３５】
無線通信装置１は、このＣＲＣエラーとなったＤａｔａ１−１フレームの検出終了タイミングからキャリアセンスを行うが（１４０）、予め決められたＴ０期間キャリアＩｄｌｅを継続して検出する前にＢｕｓｙを検出する（１２２）。これは、無線通信装置５が、受信したＤａｔａ１−１フレームに対して、無線ＬＡＮにおけるＳＩＦＳ（１０２）経過後に、ＡＣＫフレームの送信を行っているからである（１０３）。例えば、８０２．１１ａｄでは、このＳＩＦＳ時間は３μｓと規定されている。このように、時間Ｔ０は、無線ＬＡＮにおけるＳＩＦＳよりも大きな値となっている。このため、無線ＬＡＮにおけるＡＣＫフレームの送信タイミングに、無線通信装置１が、データフレームを送信することを避けることができる。
【００３６】
無線通信装置４は、このＡＣＫフレームを受信する（１０４）。無線通信装置５が送信したＡＣＫフレームは、無線通信装置１と無線通信装置２ではＣＲＣエラーとなる（それぞれ１２２、１２３）。無線通信装置１は、このＣＲＣエラーとなったＡＣＫフレームの検出終了タイミングからキャリアセンスを行う（１２４）。予め決められたＴ０期間キャリアＩｄｌｅが継続して検出されるため（１２４）、無線通信装置１は、送信モードに切り替えを行って（１４３）、Ｄａｔａ２−１フレームを送信する（１２５）。
【００３７】
Ｄａｔａ２−１フレームを受信（１２６）した無線通信装置２は、ｍｍＦｌａｓｈのＳＩＦＳ時間１２７経過後にＡＣＫフレームの送信を行う（１２８）。ｍｍＦｌａｓｈでは、このＳＩＦＳ時間は２μｓと規定されている。無線通信装置１は、このＡＣＫフレームを受信する（１２９）。一方、ＡＣＫフレームを受信（１０４）した無線通信装置４は、ＤＩＦＳ時間１０５経過後に、ランダムバックオフ１０６により送信待機を行う。
【００３８】
このランダムバックオフは、予め決められたコンテンションウィンドウの範囲内からランダムに整数値を選択し、選択した整数値にスロット時間を乗算した時間だけ、キャリアＩｄｌｅを検出している限り送信待機を行うものである。例えば、ＩＥＥＥ８０２．１１ａｄではＤＩＦＳ時間は１３μｓと規定され、コンテンションウィンドウの初期値は１５、１スロット時間は５μｓと規定されている。
【００３９】
無線通信装置１が送信（１２５）したＤａｔａ２−１フレームは、無線通信装置４と無線通信装置５には到達しない。このため、バックオフ期間１０６で、無線通信装置４が行うキャリアセンスではキャリアＩｄｌｅが検出される。無線通信装置１が送信（１２５）したＤａｔａ２−１フレームと、無線通信装置２が送信（１２８）したＡＣＫフレームは、無線通信装置４のバックオフ期間内に終了するため、これらの送信は成功する。例えば、無線通信装置４がランダムに選択した整数値を１２とすると、無線通信装置４のＤＩＦＳ期間１０５とバックオフ期間１０６を合計した値は、１３μｓ＋５μｓ×１２＝７３μｓと計算される。
【００４０】
これに対して、時間Ｔ０（１２４）を４μｓ、送信モードに切り替えるための時間（１４３）を３μｓ、Ｄａｔａ２−１フレーム１２５の時間長を５０μｓ、ＳＩＦＳ期間１２７を２μｓ、ＡＣＫフレーム１２８の時間長を４μｓとすると、合計で４μｓ＋３μｓ＋５０μｓ＋２μｓ＋４μｓ＝６３μｓとなるので、無線通信装置１が送信（１２５）したＤａｔａ２−１フレームと無線通信装置２が送信（１２８）したＡＣＫフレームは、無線通信装置４が行うバックオフ期間１０６内に終了するため送信に成功する。
【００４１】
なお、上述したように、フレーム長制御部１８が、バッファ部１９に設定するフレーム時間長Ｄは、フレームに対するＡＣＫフレームの送信完了が、バックオフ期間の最大値以内となるように設定される。ＩＥＥＥ８０２．１１ａｄでは、バックオフ期間の最大値は、ＤＩＦＳ１３μｓ＋スロット時間５μ×スロット数最大値１５＝８８μｓである。一方、フレームを送信するまでには、時間Ｔ０４μｓ＋送信モード切り替え時間３μｓ＝７μｓ必要である。さらに、フレームの送信完了後、ＡＣＫフレームの送信完了までは、ｍｍＦｌａｓｈのＳＩＦＳ２μｓ＋ＡＣＫフレーム長４μｓ＝６μｓである。したがって、フレーム時間長Ｄは、バックオフ期間の最大値８８μｓからこれら７μｓ、６μｓを引いた７５μｓである。
【００４２】
また、時間Ｔ０は、無線ＬＡＮにおけるＤＩＦＳよりも小さな値となっている。これにより、無線ＬＡＮによるＡＣＫフレームが送信された後に、無線通信装置１が送信を行う際に、無線通信装置４よりも前に送信することができる。そして、位置関係がＣａｓｅ  Ｃであるときは、無線通信装置４に対して、無線通信装置１が送信したデータフレームを検出させ、該データフレームの送信が完了するまで、送信させないようにすることができる。
【００４３】
無線通信装置４は、バックオフ期間１０６が終了した後、Ｄａｔａ１−２フレームを送信（１０７）し、無線通信装置５が受信（１０８）する。しかし、無線通信装置４、５と、無線通信装置１、２とでは、信号フォーマットの互換がないため、Ｄａｔａ１−２フレームは、無線通信装置１と無線通信装置２ではＣＲＣエラーとなる（それぞれ１３０、１３１）。無線通信装置１は、このＣＲＣエラーとなったＤａｔａ１−２フレームの検出終了タイミングからキャリアセンスを行うが（１４１）、予め決められたＴ０期間キャリアＩｄｌｅを継続して検出する前にＢｕｓｙを検出する。
【００４４】
これは、無線通信装置５が、受信（１０８）したＤａｔａ１−２フレームに対して、無線ＬＡＮのＳＩＦＳ時間１０９経過後にＡＣＫフレームの送信（１１０）を行っているためである。無線通信装置４は、ＡＣＫフレームを受信する（１１１）。無線通信装置５が送信（１１０）したＡＣＫフレームは、無線通信装置１と無線通信装置２では、ＣＲＣエラーとなる（それぞれ１３２、１３３）。無線通信装置１は、このＣＲＣエラーとなったＡＣＫフレームの検出終了タイミングからキャリアセンスを行う（１３４）。
【００４５】
このときは、無線通信装置１は、予め決められたＴ０期間キャリアＩｄｌｅを継続して検出するため（１３４）、送信モードに切り替えを行って（１４４）、Ｄａｔａ２−２フレーム１３５を送信する。一方、ＡＣＫフレームを受信（１１１）した無線通信装置４は、ＤＩＦＳ時間１１２経過後に、ランダムバックオフ１１３により送信待機を行う。無線通信装置１が送信（１３５）したＤａｔａ２−２フレームは、無線通信装置４と無線通信装置５には到達しないため、無線通信装置４が行うバックオフ期間でのキャリアセンスではＩｄｌｅが検出される。
【００４６】
このランダムバックオフ１１３に対しても、無線通信装置４は、予め決められたコンテンションウィンドウの範囲内からランダムに整数値を選択し、選択した整数値にスロット時間を乗算した時間だけ、キャリアセンスでＩｄｌｅを検出している限り送信待機を行う。図６では、選択した整数値はランダムバックオフ１０６に対して選択した整数値よりも小さい値である。例えば、無線通信装置４がランダムに選択した整数値を３とすると、無線通信装置４のＤＩＦＳ期間１１２とバックオフ期間１１３を合計した値は１３μｓ＋５μｓ×３＝２８μｓと計算される。
【００４７】
これに対して、時間Ｔ０（１３４）を４μｓ、送信モードに切り替えるための時間（１４４）を３μｓ、Ｄａｔａ２−２フレームの時間長を５０μｓとすると、合計で４μｓ＋３μｓ＋５０μｓ＝５７μｓとなる。このため、無線通信装置１が送信（１３５）したＤａｔａ２−１フレームを無線通信装置２が受信（１３６）している途中で、無線通信装置４が送信（１１４）したＤａｔａ１−２フレームが干渉１３７となる。この結果、無線通信装置２によるＤａｔａ２−２フレームの受信（１３６）は失敗する。このように、無線通信装置４がランダムに選択するバックオフのための整数値で決まるランダムバックオフ期間内に、無線通信装置１が送信するＤａｔａフレームと無線通信装置２が送信するＡＣＫフレームの送信が完了する場合には、無線通信装置１によるＤａｔａフレーム送信が成功する。
【００４８】
このように、送信タイミング指示部１６は、受信部２２がｍｍＦｌａｓｈ（第１の無線通信方式）による信号以外の信号を検出してから、所定の時間Ｔ０にわたって、信号を検出しなかったときに、送信部１７に、送信を指示する。
これにより、無線ＬＡＮなど、他の無線通信方式による通信におけるＡＣＫフレームなどの応答の送信タイミングに、送信部１７が送信を行うことを抑えることができる。したがって、送信部１７の送信が、他の無線通信方式による応答による干渉を受けて通信効率が低下することを抑えることができる。
【００４９】
さらに、所定の時間Ｔ０は、無線ＬＡＮにおいて、信号を受信してから応答を送信するまでの時間ＳＩＦＳ以上である。
これにより、無線ＬＡＮによる通信におけるＡＣＫフレームの送信タイミングに、送信部１７が送信を行う可能性を抑えることができる。
【００５０】
さらに、フレーム長制御部１８は、無線ＬＡＮにおいて、送信の要求があるときに、応答を検出してから次の送信を行うまでのバックオフ時間の最大値に応じたフレーム時間長を、送信部１７が送信する信号が表すフレームのフレーム時間長として、決定する。
これにより、送信部１７がフレームを送信している最中に、無線ＬＡＮによるフレームが送信される確率を抑えることができる。
【００５１】
さらに、フレーム長制御部１８は、フレーム時間長を、送信部１７がフレームを送信した後、そのフレームに対するＡＣＫフレームを通信相手が送信完了する時刻が、バックオフ時間の最大値に対応する時刻以前となるように決定する。
これにより、送信部１７がフレームを送信している最中と、通信相手がそのフレームに対するＡＣＫフレームを送信している最中に、無線ＬＡＮによるフレームが送信される確率を抑えることができる。
【００５２】
さらに、無線通信装置１の所定の時間Ｔ０は、ｍｍＦｌａｓｈを用いた無線通信の通信相手（無線通信装置２）における値と異なる。
これにより、無線ＬＡＮのＩｄｌｅを検出したときに、通信相手と同時に送信を行う可能性を抑えることができる。
【００５３】
（第２の実施形態）
第２の実施形態における無線通信装置１、２は、第１の実施形態における無線通信装置１、２とほぼ同様の構成であるが、一部異なる。以降、第１の実施形態と異なる部分について説明する。図７は、本実施形態における無線通信装置１の概略構成の一例を示すブロック図である。同図において、図２の各部に対応する部分には同一の符号（１０〜１５、１７〜２２）を付し、説明を省略する。本実施形態における無線通信装置１は、第１の実施形態の無線通信装置１とは、ＡＣＫタイマー２３と、ＡＣＫ受信判定部２４とを有する点と、送信タイミング指示部１６に変えて送信タイミング指示部１６ａを有する点が異なる。
【００５４】
ＡＣＫタイマー２３は、送信部１７がデータのフレームを送信してから、ＡＣＫフレームの受信タイミングがタイムアウトするまでをカウントするタイマーである。ＡＣＫ受信判定部２４は、キャリアセンス部１２が搬送波を検出したときに、その検出タイミングが、ＡＣＫフレームの受信タイミング内であるか否かを判定する。送信タイミング指示部１６ａは、図２の送信タイミング指示部１６と同様に送信タイミングを決定するが、エラー検出部１４がＣＲＣ誤りを検出した信号のうち、ＡＣＫ受信判定部２４が、ＡＣＫフレームの受信タイミング内であると判定した信号については、ｍｍＦｌａｓｈによる信号と見做す。すなわち、送信タイミング指示部１６ａは、ＡＣＫ受信判定部２４が、ＡＣＫフレームの受信タイミング内であると判定した信号については、その信号を受信してから、所定の時間Ｔ０の間、Ｉｄｌｅであっても、送信部１７に送信を指示しない。
【００５５】
図８は、本実施形態における無線通信装置１の動作の一例を示すフローチャートである。本実施形態におけるフローチャートは、図３から図５のフローチャートとは、ステップＳｂ１２、Ｓｂ２０、Ｓｂ２１を含む点のみが異なる。図８には、本実施形態におけるフローチャートのうち、異なる部分を含む部分のみを示す。ステップＳｂ１２は、ステップＳａ１２にて、フレーム生成済みと判定されたときに（Ｓａ１２−Ｙｅｓ）、ステップＳａ１３の前に行われる。ステップＳｂ２０は、ステップＳａ２０と、ステップＳａ２１との間で行われる。ステップＳｂ２１は、ステップＳａ２１にて、信号を検出したと判定されたときに（Ｓａ２１−Ｙｅｓ）、ステップＳａ８の前に行われる。
【００５６】
ステップＳｂ１２では、送信タイミング指示部１６ａは、最後に信号検出されたときに、ＡＣＫフレームの受信タイミングに行われたと判定されているか否かの判定を行う。ＡＣＫ受信と判定されていたときは（ステップＳｂ１２−Ｙｅｓ）、処理は、ステップＳａ５へ戻り、キャリアセンス部１２が、受信待ち受けを行う。一方、ＡＣＫ受信でないと判定されていたときは（ステップＳｂ１２−Ｎｏ）、処理は、ステップＳａ１３に進み、キャリアセンス部１２は、受信レベル検出が終了したか否かを判定する。ステップＳｂ２０では、ＡＣＫタイマー２３がカウントを開始する。ステップＳｂ２１では、直前の信号検出が、ＡＣＫフレームの受信タイミングに行われたと判定する。
【００５７】
図９は、位置関係がＣａｓｅ  Ｂの場合に、無線通信装置１がＤａｔａフレームを送信する処理のタイミング図である。図９の上側は、無線通信装置４の動作Ｐ４ａを示す。図９の下側は、無線通信装置１の動作Ｐ１ａを示す。無線通信装置４が行うランダムバックオフ１７０の間に、無線通信装置１は、Ｄａｔａ２−１フレームの送信１７６を行い、ＡＣＫタイマー２３を動作させる（１８７）。無線通信装置１は、ＡＣＫタイマー２３がタイムアウトする前に信号を検出（１７８）したため、検出した信号は送信したＤａｔａ２−１フレームに対するＡＣＫであると判定する。しかし、ここでは、この信号は、フェージング等によりＣＲＣエラーとなる。
【００５８】
この信号の受信信号レベルの検出（１７８）が終了した後、時間Ｔ０の間、キャリアセンスではＩｄｌｅが検出（１７９）される。しかし、無線通信装置１は、１７８で検出した信号は、ｍｍＦｌａｓｈのＡＣＫであると判定しているため、Ｄａｔａフレームの送信を行わない。無線通信装置４は、ランダムバックオフ１７０の後にＤａｔａ１−４フレームの送信（１７１）を行い、ＳＩＦＳ期間１７２経過後に、ＡＣＫを受信する（１７３）。無線ＬＡＮとｍｍＦｌａｓｈとでは、信号フォーマットの互換がないため、Ｄａｔａ１−４フレームとＡＣＫは、無線通信装置１ではＣＲＣエラーとなる（それぞれ１８０、１８２）。
【００５９】
無線通信装置１は、このＣＲＣエラーとなったＤａｔａ１−４フレームの検出終了タイミングからキャリアセンスを行うが（１８１）、予め決められた時間Ｔ０の間、Ｉｄｌｅを継続して検出する前に、１７３で送信されたＡＣＫによりＢｕｓｙを検出する（１８２）。無線通信装置１は、ＣＲＣエラーとなったＡＣＫフレームの検出終了タイミングからキャリアセンスを行い、予め決められた時間Ｔ０の間、キャリアＩｄｌｅを継続して検出する（１８３）。このため、無線通信装置１は、送信モードに切り替えを行って（１８８）、Ｄａｔａ２−３フレームを送信する（１８４）。無線通信装置１は、Ｄａｔａ２−３フレームを送信した後、ＳＩＦＳ期間１８５経過後に、ＡＣＫフレームを受信する（１８６）。一方、無線通信装置４は、ＡＣＫフレームを受信（１７３）した後、ＤＩＦＳ期間１７４待ってから、ランダムバックオフ１７５を行う。
【００６０】
このように、送信タイミング指示部１６ａは、受信部２２がｍｍＦｌａｓｈによる信号以外の信号と判定した信号であっても、送信部１７が送信した信号に対する応答が送信されるタイミングに受信された信号を、ｍｍＦｌａｓｈによる信号と見做す。
これにより、ｍｍＦｌａｓｈにおけるＡＣＫフレームの受信時に誤りが検出されても、そのＡＣＫフレームを、ｍｍＦｌａｓｈによる信号以外の信号と判定してしまうことを抑えることができる。
【００６１】
（第３の実施形態）
第３の実施形態における無線通信装置１、２は、第１の実施形態における無線通信装置１、２とほぼ同様の構成であるが、一部異なる。以降、第１の実施形態と異なる部分について説明する。図１０は、本実施形態における無線通信装置１の概略構成の一例を示すブロック図である。同図において、図２の各部に対応する部分には同一の符号（１０〜１７、１９〜２２）を付し、説明を省略する。本実施形態における無線通信装置１は、第１の実施形態の無線通信装置１とは、送信成功率計測部２５を有する点と、フレーム長制御部１８に変えてフレーム長制御部１８ｂを有する点とが異なる。
【００６２】
送信成功率計測部２５は、エラー検出部１４にて誤りが検出されなかったＡＣＫフレームの数を、送信部１７がデータフレームを送信した回数で割ることで、データフレームの送信成功率を計測する。
【００６３】
フレーム長制御部１８ｂは、送信成功率計測部２５が計測した送信成功率が下限値よりも小さくなったときに、バッファ部１９に設定するフレーム時間長を、現在値よりも小さくする。また、フレーム長制御部１８ｂは、送信成功率計測部２５が計測した送信成功率が上限値よりも大きくなったときに、バッファ部１９に設定するフレーム時間長を、現在値よりも大きくする。なお、フレーム長制御部１８ｂが設定することができるフレーム時間長に、上限値および下限値、あるいはいずれか一方を設けてもよい。
【００６４】
図１１は、送信成功率計測部２５とフレーム長制御部１８ｂが行う処理の一例を示すフローチャートである。送信成功率計測部２５は、送信部１７の状態を送信部１７から取得する（ステップＳｃ１）。取得した状態がデータフレームの送信を示していないときは（ステップＳｃ２−Ｎｏ）、処理は、ステップＳｃ１に戻る。一方、取得した状態がデータフレームの送信を示しているときは（ステップＳｃ２−Ｙｅｓ）、送信成功率計測部２５は、送信回数をインクリメントする（ステップＳｃ３）。
【００６５】
次に、送信成功率計測部２５は、受信部２２の状態をエラー検出部１４から取得する（ステップＳｃ４）。取得した状態がＡＣＫフレームの受信を示していないときは（ステップＳｃ５−Ｎｏ）、処理は、ステップＳｃ７に進む。一方、取得した状態がＡＣＫフレームの受信を示しているときは（ステップＳｃ５−Ｙｅｓ）、送信成功率計測部２５は、成功回数をインクリメントし（ステップＳｃ６）、処理は、ステップＳｃ７に進む。
【００６６】
ステップＳｃ７では、送信成功率計測部２５は、カウントしている送信回数が、所定回数以上であるか否かを判定する。所定回数以上でないと判定したときは（ステップＳｃ７−Ｎｏ）、処理は、ステップＳｃ１に戻る。一方、所定回数以上であると判定したときは（ステップＳｃ７−Ｙｅｓ）、送信成功率計測部２５は、カウントしている送信回数で、カウントしている成功回数を割ることで、送信成功率を算出する（ステップＳｃ８）。
【００６７】
次に、フレーム長制御部１８ｂは、送信成功率計測部２５が計測した送信成功率が下限値以下であるか否かを判定する（ステップＳｃ９）。下限値以下であると判定したときは（ステップＳｃ９−Ｙｅｓ）、フレーム長制御部１８ｂは、バッファ部１９に設定するフレーム時間長を、現在値よりも所定の時間だけ縮小する（ステップＳｃ１０）。その後、処理は、ステップＳｃ１３に進む。
【００６８】
ステップＳｃ９にて、下限値以下でないと判定したときは（ステップＳｃ９−Ｎｏ）、フレーム長制御部１８ｂは、送信成功率計測部２５が計測した送信成功率が上限値以上であるか否かを判定する（ステップＳｃ１１）。上限値以上であると判定したときは（ステップＳｃ１１−Ｙｅｓ）、フレーム長制御部１８ｂは、バッファ部１９に設定するフレーム時間長を、現在値よりも所定の時間だけ拡大する（ステップＳｃ１２）。その後、処理は、ステップＳｃ１３に進む。また、ステップＳｃ１１にて、上限値以上でないと判定したときは（ステップＳｃ１１−Ｎｏ）、処理はステップＳｃ１３に進む。
【００６９】
ステップＳｃ１３では、送信成功率計測部２５は、送信回数をクリアする。次に、送信成功率計測部２５は、成功回数をクリアする（ステップＳｃ１４）。その後、処理は、ステップＳｃ１に戻る。
【００７０】
なお、本実施形態では、送信成功率計測部２５は、エラー検出部１４にて誤りが検出されなかったＡＣＫフレームの数を、データフレームの送信回数で割ることで、送信成功率を表す値を算出しているが、その他の方法を用いてもよい。例えば、送信成功率計測部２５は、データフレームの再送回数を、データフレームの送信回数で割ることで、送信の失敗率を算出し、送信成功率を表す値として用いてもよい。フレーム長制御部１８ｂは、失敗率が上限値よりも大きいときは、フレーム時間長を小さくし、失敗率が下限値よりも小さいときは、フレーム時間長を大きくする。
【００７１】
また、本実施形態では、送信成功率計測部２５は、送信成功率を、データフレームの送信回数が所定回数以上となったときに行っているが、所定の時間経過する度に行うようにするなど、その他のタイミングに行ってもよい。
また、送信成功率計測部２５は、フレーム時間長を拡大する際に、現在値に所定の拡大率を乗じて拡大するようにしてもよい。同様に、送信成功率計測部２５は、フレーム時間長を縮小する際に、現在値に所定の縮小率を乗じて縮小するようにしてもよい。
【００７２】
また、送信成功率計測部２５は、フレーム時間長を拡大する際に、送信成功率と上限値との差が大きいほど、拡大する幅が大きくなるようにしてもよい。同様に、送信成功率計測部２５は、フレーム時間長を縮小する際に、送信成功率と下限値との差が大きいほど、縮小する幅が大きくなるようにしてもよい。
【００７３】
このように、フレーム長制御部１８ｂは、送信成功率を表す値を参照して、フレーム時間長を変更する。
これにより、送信成功率が低いときに、フレーム時間長を小さくして送信成功率を上げたり、送信成功率が高いときに、フレーム時間長を大きくして、１フレーム当たりの送信データ量を上げたりするなどして、良好な実効スループットが得られるようにすることができる。
【００７４】
（第４の実施形態）
第４の実施形態における無線通信装置１、２は、第１の実施形態における無線通信装置１、２とほぼ同様の構成であるが、一部異なる。以降、第１の実施形態と異なる部分について説明する。図１２は、本実施形態における無線通信装置１の概略構成の一例を示すブロック図である。同図において、図２の各部に対応する部分には同一の符号（１０〜１７、１９〜２２）を付し、説明を省略する。本実施形態における無線通信装置１は、第１の実施形態の無線通信装置１とは、スループット計測部２６を有する点と、フレーム長制御部１８に変えてフレーム長制御部１８ｃを有する点とが異なる。
【００７５】
スループット計測部２６は、送信部１７が送信したデータフレームのうち、対応するＡＣＫフレームがエラー検出部１４にて誤りが検出されなかったもののビット数の合計を算出する。スループット計測部２６は、算出したビット数の合計を、計測期間の時間でわることで、実効スループットを算出する。なお、スループット計測部２６は、実効スループットに変えて、例えば、送信成功率にフレーム時間長を乗じた値など、実効スループットを表す値を用いるようにしてもよい。
【００７６】
フレーム長制御部１８ｃは、スループット計測部２６が計測した実効スループットを参照して、フレーム時間長を決定する。例えば、フレーム長制御部１８ｃは、複数のフレーム時間長の候補各々をバッファ部１９に設定したときに、スループット計測部２６が計測した実効スループットを算出する。フレーム長制御部１８ｃは、フレーム時間長の候補のうち、実効スループットが最も大きいものを選択し、バッファ部１９に設定する。フレーム長制御部１８ｃは、フレーム時間長の候補を、どのように決定してもよい。例えば、フレーム長制御部１８ｃは、所定の範囲の中からランダムに選択するようにしてもよいし、所定の範囲を等分割したものを選択するようにしてもよい。また、所定の範囲を、予め決められた範囲としてもよいし、フレーム時間長の現在値に応じた範囲としてもよい。
【００７７】
図１３は、フレーム長制御部１８ｃとスループット計測部２６による処理の一例を示すフローチャートである。まず、フレーム長制御部１８ｃは、複数のフレーム時間長の候補を作成する（ステップＳｄ１）。次に、フレーム長制御部１８ｃは、全てのフレーム時間長の候補各々について、ステップＳｄ３の処理を行った後（ステップＳｄ２、Ｓｄ４）、ステップＳｄ５に進む。
【００７８】
ステップＳｄ３では、フレーム長制御部１８ｃは、対象の候補をバッファ部１９に設定し、スループット計測部２６に、所定の期間、実効スループットを計測させる。
また、ステップＳｄ５では、フレーム長制御部１８ｃは、ステップＳｄ３にて計測した実効スループットが最大となった候補を、フレーム時間長として選択し、バッファ部１９に設定する。
【００７９】
図１４は、フレーム時間長と、実効スループットとの関係例を示すグラフである。フレーム時間長と、実効スループットとの関係は、無線ＬＡＮの使用状況によって変わるため、図１４に示すグラフは、一例である。図１４において、横軸は、フレーム時間長［μｓ］であり、縦軸は、実効スループット［Ｍｂｐｓ］である。図１４に示す例では、フレー時間長が４０μｓ付近のときに、実効スループットの最大値５００Ｍｂｐｓ程度となっている。したがって、この例では、フレーム長制御部１８ｃは、フレーム時間長を４０μｓとすることで、良好な実効スループットを得ることができる。
【００８０】
なお、本実施形態では、フレーム長制御部１８ｃは、複数のフレーム時間長の候補の中からフレーム時間長を決定しているが、他の方法でフレーム時間長を決定してもよい。例えば、フレーム長制御部１８ｃは、フレーム時間長を現在値から変更してみて、実効スループットを計測した結果、実効スループットが良くなっていれば、そのままとし、良くならなければ、元に戻すようにしてもよい。
【００８１】
このように、フレーム長制御部１８ｃは、スループット計測部２６が計測した実効スループットを表す値を参照して、フレーム時間長を決定する。
これにより、良好な実効スループットを得ることができる。
【００８２】
（第５の実施形態）
第５の実施形態における無線通信装置１、２は、第１の実施形態における無線通信装置１、２とほぼ同様の構成であるが、一部異なる。以降、第１の実施形態と異なる部分について説明する。図１５は、本実施形態における無線通信装置１の概略構成の一例を示すブロック図である。同図において、図２の各部に対応する部分には同一の符号（１０〜１５、１７〜２２）を付し、説明を省略する。本実施形態における無線通信装置１は、第１の実施形態の無線通信装置１とは、送信タイミング指示部１６に変えて送信タイミング指示部１６ｄを有する点とが異なる。
【００８３】
送信タイミング指示部１６ｄは、第１の実施形態の送信タイミング指示部１６と同様に、干渉状態判定部１１が、Ｃａｓｅ  ＢまたはＣであると判定しているときは、データの送信タイミングを、送信部１７に指示する。指示する送信タイミングは、ｍｍＦｌａｓｈによる信号以外の信号を検出してから、所定の時間Ｔ０にわたって、キャリアセンス部１２が信号を検出しなかったときである。ただし、送信タイミング指示部１６ｄは、送信したデータフレームに対するＡＣＫフレームを受信したときは、送信部１７に、次のデータフレームを続けて送信させる。
【００８４】
図１６、図１７は、本実施形態における無線通信装置１の動作の一例を示すフローチャートである。本実施形態におけるフローチャートは、図３から図５のフローチャートとは、ステップＳｅ１からステップＳｅ１６を含む点が異なる。図１６、図１７には、本実施形態におけるフローチャートのうち、図３〜図５と異なる部分を含む部分のみを示す。
【００８５】
ステップＳａ２５においてバッファ部１９からキューデータを削除した後、送信タイミング指示部１６ｄは、干渉状態判定部１１による干渉状態の判定がＣａｓｅ  Ｂであるか否かを判定する（ステップＳｅ１６）。Ｃａｓｅ  Ｂでないと判定したときは（ステップＳｅ１６−Ｎｏ）、処理は、ステップＳａ３に戻る。一方、ステップＳｅ１６にて、Ｃａｓｅ  Ｂであると判定したときは（ステップＳｅ１６−Ｙｅｓ）、送信部１７とキャリアセンス部１２は、送信モードへの切り替えを行う（ステップＳｅ３）。送信モードへの切り替えが完了すると、送信部１７はキューに格納されているフレームを送信する（ステップＳｅ４）。
【００８６】
フレームの送信が完了すると、送信部１７とキャリアセンス部１２は、受信モードへの切り替えを行う（ステップＳｅ５）。受信モードへの切り替えが完了すると、キャリアセンス部１２は、受信待ち受けを開始し、信号を検出したか否かを判定する（ステップＳｅ６）。信号を検出したと判定したときは（ステップＳｅ６−Ｙｅｓ）、復号部１３は、検出した信号の復号を行う（ステップＳｅ７）。復号が終了した後、エラー検出部１４が、復号部１３の復号結果に対して、ＣＲＣ誤り検出を行う（ステップＳｅ８）。次に、エラー検出部１４は、ステップＳｅ８のＣＲＣ誤り検出にて、誤りが検出されたか否かを判定する（ステップＳｅ９）。
【００８７】
ステップＳｅ９において、誤りが検出されたと判定したときは（ステップＳｅ９−Ｙｅｓ）、処理は、ステップＳａ５に進む。一方、ステップＳｅ９において、誤りが検出されなかったと判定したときは（ステップＳｅ９−Ｎｏ）、エラー検出部１４は、誤り検出を行ったフレーム（受信フレーム）の種別を解析する（ステップＳｅ１０）。解析の結果、受信フレームの種別がＡＣＫフレームであるときは（ステップＳｅ１１−ＡＣＫ）、バッファ部１９は、最後に送信したフレームを、キューから削除する（ステップＳｅ１２）。次に、バッファ部１９は、送信するデータが保存されているか否かの判定を行う（ステップＳｅ１）。
【００８８】
送信するデータが保存されていないと判定したときは（ステップＳｅ１−Ｎｏ）、処理は、ステップＳａ５に進む。一方、ステップＳｅ１にて、送信するデータが保存されていると判定したときは（ステップＳｅ１−Ｙｅｓ）、バッファ部１９は、フレームを生成し、生成したフレームをキューに格納する（ステップＳｅ２）。その後、処理は、ステップＳｅ３に進む。
【００８９】
一方、ステップＳｅ１０の解析の結果、受信フレームの種別がデータフレームであるときは（ステップＳｅ１１−Ｄａｔａ）、送信部１７がＡＣＫフレームを送信する（ステップＳｅ１３）。ＡＣＫフレームの送信が完了すると、送信部１７と、キャリアセンス部１２は、受信モードへ切り替える（ステップＳｅ１４）。その後、処理は、ステップＳａ３に戻る。
【００９０】
また、ステップＳｅ６にて、信号を検出しなかったと判定したときは（ステップＳｅ６−Ｎｏ）、ＡＣＫタイマーがタイムアウトしたか否かの判定を行う（ステップＳｅ１５）。タイムアウトしていないと判定したときは（Ｓｅ１５−Ｎｏ）、処理は、ステップＳｅ６に戻る。なお、ＡＣＫタイマーは、送信部１７がフレームの送信を完了してから、無線通信装置２が受信したフレームに対するＡＣＫフレームを送信するまでの時間でタイムアウトする。一方、ステップＳｅ１５にて、タイムアウトしたと判定したときは、処理は、ステップＳａ５へ戻る。
【００９１】
このように、送信タイミング指示部１６ｄは、無線ＬＡＮに干渉を与えていないと干渉状態判定部１１が判定したときは、送信したフレームに対するＡＣＫフレームを受信部２２が受信すると、送信部１７に続けてフレームを送信させる。
これにより、良好な実効スループットを得ることができる。また、無線ＬＡＮに干渉を与える位置関係であるときに、フレームを送信し続ける動作を停止するので、無線ＬＡＮに対して干渉を与え続ける確率を抑えることができる。
【００９２】
なお、上記各実施形態では、無線通信装置４、５は、無線ＬＡＮを用いて通信しているが、使用される周波数帯域が、無線通信装置１、２が用いている無線通信方式（ｍｍＦｌａｓｈ）と重複している無線通信方式であり、かつ、ＣＳＭＡ／ＣＡ（Carrier Sense Multiple Access with Collision Avoidance）方式の無線通信方式であれば、他の無線通信方式であってもよい。
【００９３】
また、上記各実施形態では、無線通信装置１、２は、ｍｍＦｌａｓｈを用いて通信しているが、使用される周波数帯域が、無線通信装置４、５が用いている無線通信方式と重複している無線通信方式であれば、他の無線通信方式であってもよい。
【００９４】
また、上記各実施形態では、エラー検出部１４がＣＲＣ誤りを検出したフレームの信号を、ｍｍＦｌａｓｈ（登録商法）による信号以外の信号と見做したが、これに限らない。例えば、復号したフレームのヘッダ部分などを参照し、ｍｍＦｌａｓｈのフレームであるか否かを判定するようにしてもよい。
【００９５】
以上説明した少なくともひとつの実施形態によれば、受信部２２がｍｍＦｌａｓｈによる信号以外の信号を検出してから、所定の時間Ｔ０にわたって、信号を検出しなかったときに、送信部１７に、送信を指示する送信タイミング指示部を持つことにより、送信部１７の送信が、他の無線通信方式の応答による干渉を受けて通信効率が低下することを抑えることができる。
【００９６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００９７】
１、２、４、５…無線通信装置、１０…アンテナ、１１…干渉状態判定部、１２…キャリアセンス部、１３…復号部、１４…エラー検出部、１５…タイマー、１６、１６ａ、１６ｄ…送信タイミング指示部、１７…送信部、１８、１８ｂ、１８ｃ…フレーム長制御部、１９…バッファ部、２０…入力端子、２１…出力端子、２２…受信部、２３…ＡＣＫタイマー、２４…ＡＣＫ受信判定部、２５…送信成功率計測部、２６…スループット計測部
【図１】
2015142206.tif 000003
【図２】
2015142206.tif 000004
【図３】
2015142206.tif 000005
【図４】
2015142206.tif 000006
【図５】
2015142206.tif 000007
【図６】
2015142206.tif 000008
【図７】
2015142206.tif 000009
【図８】
2015142206.tif 000010
【図９】
2015142206.tif 000011
【図１０】
2015142206.tif 000012
【図１１】
2015142206.tif 000013
【図１２】
2015142206.tif 000014
【図１３】
2015142206.tif 000015
【図１４】
2015142206.tif 000016
【図１５】
2015142206.tif 000017
【図１６】
2015142206.tif 000018
【図１７】
2015142206.tif 000019