(57)【要約】【課題】  周波数ホッピング型の通信方式での不良な通信周波数域における通信エラーの発生を回避する。【解決手段】  通信周波数毎のエラー情報を収集しておく。次にパケットを送信するスロット以後の５スロットについて、各スロットにおける通信周波数を予測し、この通信周波数の通信状況をエラー情報に基づいて把握する（ステップＳ４１、Ｓ４２）。次に送信するスロットの通信状況が不良であるときには、このスロットでの送信は不可として送信は行わず（ステップＳ４８）、２スロット目の通信状況が不良のときにはパケット長を３スロット長とし（ステップＳ５０）、３から５スロット目のいずれかの通信状況が不良のときには、パケット長を５スロット長として設定する（ステップＳ５１）。つまり、通信状況が不良なスロットを含むようにパケット長を設定することで、不良な通信周波数を用いてのパケットの送信を回避する。【選択図】          図６
2005117526.tif 000002
【特許請求の範囲】
【請求項１】
スロット毎に通信周波数を切り替える周波数ホッピング型の通信方式によりパケットの授受を行い、且つパケット単位で前記通信周波数を切り替えるようになっている無線通信機器間におけるデータ通信方法であって、
前記無線通信機器は、前記通信周波数毎の無線通信状態を検出し、前記通信周波数毎の無線通信状態に応じて送信パケットのパケット長を設定するようになっていることを特徴とするデータ通信方法。
【請求項２】
スロット毎に通信周波数を切り替える周波数ホッピング型の通信方式によりパケットの授受を行い、且つパケット単位で前記通信周波数を切り替えるようになっている無線通信機器において、
前記通信周波数毎の無線通信状態を検出する無線通信状態検出手段と、
当該無線通信状態検出手段で検出した無線通信状態に基づいて、送信パケットのパケット長を設定するパケット長設定手段と、を備えることを特徴とする無線通信機器。
【請求項３】
前記パケット長設定手段は、一のスロット以後の連続する所定数の調査対象スロットにおける通信周波数を予測する通信周波数予測手段と、
当該通信周波数予測手段で予測した前記調査対象スロット毎の通信周波数及び前記無線通信状態検出手段で検出した無線通信状態に基づいて、前記各調査対象スロットの無線通信状態を検出するスロット状況検出手段と、
当該スロット状況検出手段で検出した前記調査対象スロット毎の無線通信状態に基づいて、前記一のスロットから当該一のスロットより後の無線通信状態の不良なスロットにまたがるパケット長を、前記一のスロットのパケット長とするパケット長決定手段と、を備えることを特徴とする請求項２記載の無線通信機器。
【請求項４】
前記パケット長決定手段は、前記調査対象スロットの中に、予め特定パケットを送信するためのスロットとして規定されている予約スロットを含む場合には、前記一のスロットから前記予約スロットの直前のスロットまでを前記調査対象スロットとみなすようになっていることを特徴とする請求項３記載の無線通信機器。
【請求項５】
前記パケット長設定手段は、一のスロット以後の連続する所定数の調査対象スロットにおける通信周波数を予測する通信周波数予測手段と、
当該通信周波数予測手段で予測した前記調査対象スロット毎の通信周波数及び前記無線通信状態検出手段で検出した無線通信状態に基づいて、前記各調査対象スロットの無線通信状態を検出するスロット状況検出手段と、
当該スロット状況検出手段で検出した調査対象スロット毎の無線通信状態に基づき、
前記調査対象スロットについて、パケットの送信スロット及びそのパケット長を決定するパケット送信計画手段と、を備えることを特徴とする請求項２記載の無線通信機器。
【請求項６】
前記パケット送信計画手段は、前記送信パケットが、予め特定パケットを送信するためのスロットとして規定されている予約スロットにまたがらないようにパケットの送信計画を行うようになっていることを特徴とする請求項３記載の無線通信機器。
【請求項７】
無線通信先の複数の機器とパケットを授受するようになっている無線通信機器であって、
前記無線通信先の複数の機器のうち、パケット送信の優先順位がより高い機器であり且つ当該機器に対する送信待ちデータのデータ長が、前記パケット長設定手段で設定したパケット長に相当するデータ長よりも長い機器を選択する送信先機器選択手段を備え、
当該送信先機器選択手段で選択した送信先機器に対し、当該送信先機器への送信待ちデータからなる送信パケットを送信するようになっていることを特徴とする請求項２から請求項６のいずれか１項に記載の無線通信機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、周波数ホッピング方式のスペクトラム拡散方式を用いたデータ通信方法及び無線通信機器に関する。
【背景技術】
【０００２】
近距離無線通信の規格の一つであるブルートゥース（登録商標）では、複数の周波数帯域を切り替えて使用するシステムが一般的であり、マスタ無線通信機器が管理する周波数ホッピングパターン及びスロットに番号を付与するためのカウンタを、無線回線にて接続されるマスタ無線通信機器と複数のスレーブ無線通信機器との間で共有し、ピコネットと呼ばれる通信ネットワークを形成している。
【０００３】
そして、例えば、２４０２ＭＨｚ〜２４８０ＭＨｚまでの各１ＭＨｚに区切られた７９チャネルを使用し、巡回的に周波数ホッピングする周波数を、前記周波数ホッピングパターンにしたがって、１秒間に１６００回の周期でチャネル切替を行うようにしている。
しかしながら、このように、通信周波数を切り替えて通信を行うようにした場合、使用する周波数帯域の一部に妨害が入っている場合等には、周波数ホッピングした周波数がその妨害帯域に入ると、送受信が失敗する可能性が高くなるという問題がある。
【０００４】
このため、これを回避するために、通信中のパケットエラー率を測定し、各ホッピング周波数での通信状況をデータ化し、その情報に基づいて各ホッピング周波数の通信状況を良／不良に分類し、通信状況が良のホッピング周波数のみを利用するように周波数パターンを変更してエラー率を低減させることで、通信効率を向上させるようにした方法が提案されている（例えば特許文献１、特許文献２参照）。
【０００５】
また、例えば、実際に通信を行う前に予め通信に利用する周波数帯域の電波状況を測定し、この通信状況に基づいて、使用する周波数帯域を調整するようにした方法等も提案されている（例えば特許文献３参照）。
【特許文献１】特開２００２−３６８６５４号公報
【特許文献２】特開２００３−３７５２８号公報
【特許文献３】特開２００３−１４３０５９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述のように、通信時に、通信周波数毎の通信状況を検出し、これに基づいて利用する通信周波数を変更するようにした場合、送信側の無線通信機器と受信側の無線通信機器との間で、同様の周波数ホッピングパターンを用いて通信を行う必要があることから、いずれか一方の無線通信機器において通信状況に応じて利用する通信周波数を変更した場合には、これを他方の無線通信機器においても把握する必要がある。このため、通信周波数の変更を双方で認識するための機能を備えている必要がある。
【０００７】
また、例えば、実際に通信を行う以前に通信周波数毎の通信状況を測定するようにした場合には、電波状況が測定時と同等である場合には、良好な通信を行うことができるが、電波状況が変化した場合には、対処することができない。
そこで、この発明は、上記従来の未解決の問題に着目してなされたものであり、無線通信機器の大幅な機能追加等を伴うことなく、通信状況の良否に関わらず良好な通信を行うことの可能なデータ通信方法及び無線通信機器を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、第１の発明に係るデータ通信方法は、スロット毎に通信周波数を切り替える周波数ホッピング型の通信方式によりパケットの授受を行い、且つパケット単位で前記通信周波数を切り替えるようになっている無線通信機器間におけるデータ通信方法であって、前記無線通信機器は、前記通信周波数毎の無線通信状態を検出し、前記通信周波数毎の無線通信状態に応じて送信パケットのパケット長を設定するようになっていることを特徴としている。
【０００９】
この第１の発明では、周波数ホッピングによる通信周波数毎の無線通信状態を検出し、この通信周波数毎の無線通信状態に応じてパケット長を設定する。したがって、例えば、次にパケットを送信するスロットにおいて、これ以後のスロットにおける通信周波数の無線通信状態が不良である場合には、この無線通信状態が不良なスロットを含むように、次にパケットを送信するスロットでのパケット長を設定すれば、次のスロットから前述の不良なスロットにかけて一つのパケットが送信されることになる。このとき、周波数ホッピングにおける通信周波数をパケット単位で切り替えるようになっているから、パケット送信開始時の通信周波数を用いて無線通信状態が不良なスロットを含む複数のスロットにおいて通信が行われることになる。したがって、無線通信状態が不良であると判定されたスロットでも、パケット送信開始時の通信周波数を用いて通信が行われることになり、無線通信状態が不良と判定された通信周波数は用いられないから、不良な通信周波数を用いての通信が回避される。したがって通信エラーの発生を回避することができる。
【００１０】
また、第２の発明に係る無線通信機器は、スロット毎に通信周波数を切り替える周波数ホッピング型の通信方式によりパケットの授受を行い、且つパケット単位で前記通信周波数を切り替えるようになっている無線通信機器において、前記通信周波数毎の無線通信状態を検出する無線通信状態検出手段と、当該無線通信状態検出手段で検出した無線通信状態に基づいて、送信パケットのパケット長を設定するパケット長設定手段と、を備えることを特徴としている。
【００１１】
この第２の発明では、周波数ホッピングによる通信周波数毎の無線通信状態が無線通信状態検出手段によって検出される。そして、この無線通信状態に基づいて、パケット長設定手段によって送信パケットのパケット長が設定される。
したがって、例えば、次にパケットを送信するスロットにおいて、これ以後のスロットにおける通信周波数の無線通信状態が不良である場合には、この無線通信状態が不良なスロットを含むように次にパケットを送信するスロットでのパケットのパケット長を設定すれば、次のスロットから前述の不良なスロットにかけて一つのパケットが送信されることになる。このとき、周波数ホッピングにおける通信周波数は、パケット単位で切り替えるようになっているから、パケット送信開始時の通信周波数を用いて無線通信状態が不良なスロットを含む複数のスロットにおいて通信が行われることになる。したがって、無線通信状態が不良であると判定されたスロットでも、パケット送信開始時の通信周波数を用いて通信が行われることになり、無線通信状態が不良と判定された通信周波数は用いられないから、無線通信状態が不良な通信周波数を用いての通信が回避される。したがって通信エラーの発生を回避することができる。
【００１２】
また、第３の発明は、前記パケット長設定手段は、一のスロット以後の連続する所定数の調査対象スロットにおける通信周波数を予測する通信周波数予測手段と、当該通信周波数予測手段で予測した前記調査対象スロット毎の通信周波数及び前記無線通信状態検出手段で検出した無線通信状態に基づいて、前記各調査対象スロットの無線通信状態を検出するスロット状況検出手段と、当該スロット状況検出手段で検出した前記調査対象スロット毎の無線通信状態に基づいて、前記一のスロットから当該一のスロットより後の無線通信状態の不良なスロットにまたがるパケット長を、前記一のスロットのパケット長とするパケット長決定手段と、を備えることを特徴としている。
【００１３】
この第３の発明では、一のスロット以後の連続する所定数の調査対象スロットにおける通信周波数が通信周波数予測手段によって予測される。そして、この予測した各調査対象スロットにおける通信周波数と、無線通信状態検出手段で検出した無線通信状態とに基づいて、スロット状況検出手段によって、各調査対象スロットの無線通信状態が検出される。そして、パケット長決定手段によって、前記一のスロットからこれより後の無線通信状態の不良なスロットにまたがるパケット長が、一のスロットのパケット長として設定される。
【００１４】
したがって、無線通信状態の不良なスロットの通信周波数として、これよりも前のスロットにおける通信周波数が用いられることになり、すなわち、無線通信状態の不良なスロットで本来用いられるはずの無線通信状態の不良な通信周波数は用いられない。よって、この不良な通信周波数を用いてのパケットの送信を回避することができる。
また、第４の発明は、前記パケット長決定手段は、前記調査対象スロットの中に、予め特定パケットを送信するためのスロットとして規定されている予約スロットを含む場合には、前記一のスロットから前記予約スロットの直前のスロットまでを前記調査対象スロットとみなすようになっていることを特徴としている。
【００１５】
この第４の発明では、調査対象スロットの中に、予め特定パケットを送信するためのスロットとして規定されている予約スロットが含まれる場合には、一のスロットから予約スロットの直前のスロットまでが調査対象スロットとみなされて、パケット長の設定が行われる。したがって、特定パケット用のスロットとして予約されている予約スロットを含んでパケット長が設定され、これによって、予約スロットにおいて特定パケットではない他のパケットが送信されることを回避することができる。
【００１６】
また、第５の発明は、前記パケット長設定手段は、一のスロット以後の連続する所定数の調査対象スロットにおける通信周波数を予測する通信周波数予測手段と、当該通信周波数予測手段で予測した前記調査対象スロット毎の通信周波数及び前記無線通信状態検出手段で検出した無線通信状態に基づいて、前記各調査対象スロットの無線通信状態を検出するスロット状況検出手段と、当該スロット状況検出手段で検出した調査対象スロット毎の無線通信状態に基づき、前記調査対象スロットについて、パケットの送信スロット及びそのパケット長を決定するパケット送信計画手段と、を備えることを特徴としている。
【００１７】
この第５の発明では、一のスロット以後の連続する所定数の調査対象スロットにおける通信周波数が、通信周波数予測手段によって予測され、この予測した調査対象スロット毎の通信周波数と無線通信状態とに基づいて、各調査対象スロットの無線通信状態がスロット状況検出手段によって検出される。
そして、パケット送信計画手段により、スロット状況検出手段で検出された各調査対象スロットの無線通信状態に基づいて、調査対象スロットについて、パケットを送信するスロット及びそのときのパケット長が決定される。したがって、パケット送信計画手段において、無線通信状態が不良なスロットよりも前のスロットにおけるパケット長として前記不良なスロットを含むパケット長を設定し、且つこのとき、例えば通信レートが最も高くなるようにパケットの送信スロット或いはそのパケット長を設定することにより、通信エラーの発生を回避し且つ通信レートを向上させることができる。
【００１８】
また、第６の発明は、前記パケット送信計画手段は、前記送信パケットが、予め特定パケットを送信するためのスロットとして規定されている予約スロットにまたがらないようにパケットの送信計画を行うようになっていることを特徴としている。
この第６の発明では、パケット送信計画手段では、送信パケットが、予め特定パケットを送信するためのスロットとして規定されている予約スロットにまたがらないようにパケットの送信計画を行うようにしたから、特定パケットを送信するための予約スロットにおいて、特定パケットではない他のパケットが送信されることを回避することができる。
【００１９】
また、第７の発明は、無線通信先の複数の機器とパケットを授受するようになっている無線通信機器であって、前記無線通信先の複数の機器のうち、パケット送信の優先順位がより高い機器であり且つ当該機器に対する送信待ちデータのデータ長が、前記パケット長設定手段で設定したパケット長に相当するデータ長よりも長い機器を選択する送信先機器選択手段を備え、当該送信先機器選択手段で選択した送信先機器に対し、当該送信先機器への送信待ちデータからなる送信パケットを送信するようになっていることを特徴としている。
【００２０】
この第７の発明では、無線通信先の複数の機器のうち、予め設定されているパケット送信の優先順位がより高い機器であり、且つ、送信待ちデータのデータ長が、パケット長設定手段で設定したパケット長に相当するデータ長よりも長い機器が選択され、この機器に対してパケット送信が行われ、且つ、このときパケット長設定手段で設定したパケット長のパケットが送信される。したがって、優先順位にしたがってパケット送信を行うことができると共に、パケット長設定手段で設定したパケット長に対し、これよりも少ないデータ量のパケットが送信されるといった、無駄なパケット送信を行うことを回避することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施の形態を説明する。
まず、本発明の第１の実施の形態を説明する。
図１は、本発明を適用したネットワークシステムの一例であって、マスタ無線通信機器ＭＳと、スレーブ無線通信機器ＳＬとで構成され、これら間を、例えば、２．４ＧＨｚのＩＳＭ帯の無線回線１６で結んでネットワーク１０を形成している。
【００２２】
前記マスタ無線通信機器ＭＳとスレーブ無線通信機器ＳＬとの間では、無線回線１６を通信媒体とする、例えばブルートゥース（登録商標）等のパケット交換によるデータの近距離無線送受信を行うようになっている。また、前記マスタ無線通信機器ＭＳとスレーブ無線通信機器ＳＬとの間では、周波数ホッピング型のスペクトル拡散方式の通信方式によりパケットの授受を行い、図２に示すように、マスタ無線通信機器ＭＳ及びスレーブ無線通信機器ＳＬ間で同一の周波数ホッピングパターンで巡回的に通信周波数を切り替え、且つこのとき、通信周波数を、予め設定された所定時間（例えば６２５μｓｅｃ）の時間スロット（以後、単にスロットという。）毎に切り替えるようになっている。また、前記通信周波数は、周波数設定用クロックＴに基づいて設定され、例えば１ＭＨｚで区切られた周波数に設定されるようになっている。
【００２３】
また、マスタ無線通信機器ＭＳとスレーブ無線通信機器ＳＬとの間でのパケットの送受信はポーリング方式に基づいて行われ、偶数番号のスロットにおいてマスタ無線通信機器ＭＳからパケットを受信したスレーブ無線通信機器ＳＬが、パケットを受信した直後の奇数番号スロットにおいてのみ、マスタ無線通信機器ＭＳにパケットを送信するようになっている。
【００２４】
また、前記マスタ無線通信機器ＭＳ及びスレーブ無線通信機器ＳＬは、それぞれ図３に示すように、上位層のアプリケーションからの指示に応じてデータを処理するデータ処理部２２と、処理したデータに応じたパケットの生成からパケットの送信又はパケットの受信から受信データの処理及び新たなパケットの送信を司る通信処理部２４と、パケットの伝送媒体である電磁波の送受信を行うアンテナ１７と、を有している。そして、前記マスタ無線通信機器ＭＳとスレーブ無線通信機器ＳＬとは、スロット単位で交互にパケットを送信し、このとき、例えば偶数番目のスロットはマスタ無線通信機器ＭＳからの送信用、奇数番目のスロットはスレーブ無線通信機器ＳＬからの送信用のスロットとして規定されている。
【００２５】
そして、各無線通信機器では、送信用パケットのパケット長として、１スロット長、３スロット長及び５スロット長のいずれかを設定することができ、このように複数のスロットにまたがるパケットを通信する場合には、パケットの送信又は受信開始時のスロットから送信又は受信終了時のスロットまで、このパケットの送信又は受信開始時のスロットにおける通信周波数を維持するようになっている。つまり、複数のスロットにまたがるパケットであっても、一のパケットを送受信する場合には、通信開始スロットから通信終了スロットまで同一の通信周波数を維持するようになっている。また、マスタ及びスレーブ無線通信機器では、任意のタイミング、つまり任意のスロットで送信可能な不定期送信パケットＰｆと、予めマスタ無線通信機器ＭＳとスレーブ無線通信機器ＳＬとの間で送信タイミングが規定され、特定のスロットで送信される定期送信パケットＰｔとを送受信するようになっている。
【００２６】
次に、本発明の第１の実施の形態における無線通信機器のパケットの送受信時の処理の流れを以下に説明する。
前記各無線通信機器ＭＳ、ＳＬにおける通信処理部２４では、図４に示す送受信時の処理を行う。なお、無線通信機器ＭＳ及びＳＬでは、同様の処理を行うのでここでは、無線通信機器Ｗとして説明する。
通信処理部２４では、予め定められたパケットを送信するタイミング、つまり、スロットの設定時間で決定される送信タイミングとなると、ステップＳ１からステップＳ２に移行し、データ処理部２２が送信したいデータを有しているか、また、送信したいデータがなくても、パケットを送信するべきタイミングであるかを判定する。
【００２７】
前記送信したいデータとは、上位層のアプリケーションからの指示に応じたデータのことを指す。また、前記パケットを送信すべきタイミングであるかどうかは、無線通信機器間で予め設定された送信タイミングに基づいて判定される。ここで、前記各無線通信機器間では、前記送信すべきデータがない場合であっても、例えば、無線通信機器間での制御用にマスタ側の無線通信機器からパケットを送信するようにしており、このように送信すべきデータがない場合であっても、無線通信機器間で所定のタイミングで送信することになっているパケットについて、その予め設定された送信タイミングに基づいて、前記パケットを送信するタイミングかどうかの判定が行われる。
【００２８】
このステップＳ２で、データ処理部２２は送信したいデータを有していると判定されるとき、または、パケットを送信すべきタイミングであると判定されるときには、ステップＳ３に移行し、後述のパケット送信処理を行って、アクセスコード部、送信アドレスを含むヘッダ部及び送信データを格納したペイロード部で構成されるデータパケットを生成しこのデータパケットを、送信先の無線通信機器宛に送信する。
【００２９】
なお、前記ヘッダ部には、自無線通信機器が、今回送信するパケットの送信先の無線通信機器が時無線通信機器からのパケットを前回受信したときのパケットの受信状態を表す送信状態情報及び前記ヘッダ部に対するＣＲＣチェック用符号も格納するようになっている。また、前記ペイロード部には、このペイロード部に対するＣＲＣチェック用符号を付加する。
また、無線通信機器では、パケット送信時及びパケット受信時にはその通信周波数毎に送信パケット又は受信パケットの総数をカウントするようになっている。
そして、ステップＳ４に移行し、自無線通信機器がスレーブであるかどうかを判定し、自無線通信機器がスレーブである場合にはステップＳ５に移行し、スレーブでない場合には、後述のステップＳ１０に移行する。
【００３０】
前記ステップＳ５では、受信すべきパケットがあるかどうか、又はパケットを受信すべきタイミングかどうかを判定し、受信すべきパケットがない場合にはステップＳ１に戻り、受信すべきパケットがある場合には、ステップＳ１０に移行する。
また、前記ステップＳ２で、データ処理部２２が送信したいデータを有しておらず、且つパケットを送信すべきタイミングではないと判断された場合には、ステップＳ７に移行しこのスロットでのパケットの送信処理は行わず、ステップＳ８に移行して、自無線通信機器がスレーブであるかどうかを判定する。そして、スレーブであるならばステップＳ５に移行し、自無線通信機器がスレーブでないならばステップＳ１に戻る。
【００３１】
そして、前記ステップＳ１０では、予め定められたパケットを受信するタイミング、つまり、スロットの設定間隔で決定される受信タイミングとなると、ステップＳ１１に移行し、通信処理部２４でパケットを受信したかどうかを判定する。
そして、パケットを受信しない場合にはステップＳ１２に移行し、自無線通信機器がマスタであるかどうかを判定する。そして、自無線通信機器がマスタでない場合には、そのままステップＳ１に戻る。一方自無線通信機器がマスタである場合にはステップＳ１３に移行し、本来パケットを受信するはずであるにも関わらず、所定の受信タイミングで無線通信機器からパケットを受信しなかった、つまり、異常として、このときの通信処理部２４での通信周波数に対応するエラー情報を更新する。
【００３２】
このエラー情報は、通信周波数毎のエラー発生回数をカウントしたものであって、通信周波数毎に、受信エラー発生回数及び送信エラー発生回数をカウントするようになっている。
したがって、このステップＳ１３では、このときの通信周波数に対応する、受信エラー発生回数を“１”だけインクリメントする。そして、前記ステップＳ１に戻る。
一方、前記ステップＳ１１で、所定の受信タイミングでパケットを受信した場合には、ステップＳ１６に移行して受信したパケットのヘッダ部を読み込む。また、受信したパケットの通信周波数毎に受信パケットの総数をカウントする。
【００３３】
次に、ステップＳ１７でヘッダ部が正常であるかどうかを判定する。例えば、ヘッダ部に、このヘッダ部に対するＣＲＣチェック用符号を付加するようにし、このＣＲＣチェック用符号を参照することによって、正常にパケットを受信することができたかどうかを判定する。そして、ヘッダ部が正常でないときにはステップＳ１８に移行し、このパケットは異常と判断し、このパケットを通信処理部２４で受信したときの通信周波数に応じて、受信エラー発生回数を“１”だけインクリメントする。そして、前記ステップＳ１に戻る。
【００３４】
一方、ステップＳ１７でヘッダ部が正常である場合には、ステップＳ２１に移行し、前記ヘッダ部に格納されている前回このパケットの送信元に対して、パケットを送信したときの前記送信元でのパケットの受信状況を表す送信状態情報を参照し、このパケットの送信元に対するパケットの送信状況が良好であったか、前回送信したパケットを送信先では認識することができたかどうかを判定する。
【００３５】
そして、送信状態情報により正常受信（ＡＣＫ）が通知された場合には、ステップＳ２２に移行し、正常受信が通知されない場合にはステップＳ２３に移行する。このステップＳ２３では、自無線通信機器からの送信エラーとして、このパケットの送信元に対して前回パケットを送信したときの通信周波数、つまり、正常にパケットを送信することができなかったときの通信周波数に対応する、送信エラー発生回数及び送信パケット総数を“１”だけインクリメントする。
【００３６】
なお、この前回送信時の通信周波数は、パケット送信時にその送信先と送信したときの通信周波数とを対応させて記憶しておけばよい。そして、このようにエラー回数を更新したならばステップＳ２２に移行する。
このステップＳ２２では、パケットにペイロード部が付加されているかどうかを判定する。そして、ペイロード部が付加されていなければデータ送信用のパケットではないと判定し、ステップＳ１に戻る。
【００３７】
一方、ペイロード部がある場合には、ステップＳ２４に移行してペイロード部を読み込み、ステップＳ２５に移行してそのＣＲＣチェック用符号を参照し、ペイロード部が正常であるかどうかを判定する。そして、ペイロード部が正常であれば、このパケットをデータ処理部２２に渡した後、ステップＳ１に戻る。一方、ペイロード部が異常であれば、ステップＳ２６に移行し、ペイロード部のエラーとして、このパケットを受信したときの通信周波数に対応する受信エラー発生回数を“１”だけインクリメントする。そして、ステップＳ１に戻る。
【００３８】
図５は、前記ステップＳ３でのパケット送信処理での処理手順の一例を示すフローチャートである。
このパケット送信処理では、まずステップＳ３１で、所定の領域に格納されているエラー情報に基づいて通信状況のチェックを行う。
この通信状況のチェックは、図６に示すように、まず、ステップＳ４１で、次にパケットを送信する際の、パケット送信時の通信周波数設定用のクロックＴを変数ＣＬＫとして設定する。次いでステップＳ４２に移行し、変数ＣＬＫで特定される通信周波数設定用のクロックに基づいて、予め設定されたネットワークを構成する無線通信機器間で設定された周波数ホッピングパターンにしたがって、ホッピング周波数を算出する。
【００３９】
そして、ステップＳ４３に移行し、ステップＳ４２で算出したホッピング周波数における通信は良好であるかどうかを判定する。この判定は、例えば所定の領域に格納したエラー情報を参照し、ステップＳ４２で算出したホッピング周波数に対応する、送信エラー発生回数及び受信エラー発生回数と、パケット受信時にカウントした通信周波数毎の受信パケット総数及びパケット送信時にカウントした通信周波数毎の送信パケットの総数に基づいて、ホッピング周波数毎のエラー率を算出しこれに基づき判定する。なお、算出したエラー率は、配列等に記憶しておく。
【００４０】
具体的には、次式（１）に基づいて算出し、すなわち、送信エラー率と受信エラー率との平均値をエラー率とする。なお、式（１）において、Ｒはエラー率、Ｅｒは受信エラー数、Ｎｒは受信パケット総数、Ｅｓは送信エラー数、Ｎｓは送信パケット総数である。
Ｒ＝〔（Ｅｒ／Ｎｒ）＋（Ｅｓ／Ｎｓ）〕／２          ……（１）
【００４１】
このようにして算出したエラー率Ｒに基づいて、通信状況を判定し、例えばエラー率Ｒが予め設定した通信状況判定用のしきい値以下である場合には、通信状況は良好であると判定する。なお、前記しきい値は、例えば予め実験等によって設定すればよい。なお、ここでは、前記（１）式に基づいてエラー率Ｒを算出し、このエラー率Ｒがしきい値以下である場合に通信状況は良好であると判定するようにした場合について説明したが、これに限るものではなく、例えば、エラー率Ｒの変化状況や、各種エラーの発生回数等に基づいてその通信状況の良否を判定するための関数式を設定しておき、この関数式に基づいて判定するようにしてもよく、通信状況が良好であるか否かを判定することが可能であればそのような方法であってもよい。
【００４２】
そして、通信状況が良好であると判定されるときにはステップＳ４４に移行し、変数ＣＬＫを“１”だけインクリメントした後、ステップＳ４５に移行し、変数ＣＬＫが、送信時クロックＴに“５”を加算した値よりも大きいかどうかを判定し、これを満足しないときには、ステップＳ４２に戻り、同様にしてホッピング周波数を算出し、そのときの通信状況を推測する。
【００４３】
そして、ステップＳ４３の処理で通信状況が良好であって、変数ＣＬＫが“送信時クロックＴ＋５”よりも大きいときには、次にパケットを送信するスロットから継続して５スロットにおける、通信状況は良好と判定し、ステップＳ４６に移行して、１スロット長分のパケットを送信可能と判断する。
一方、前記ステップＳ４３で通信状況が、良好ではないと判定されたときには、ステップＳ４７に移行し、このときの変数ＣＬＫが、送信時クロックＴと等しいかどうかを判定する。そして、変数ＣＬＫと送信時クロックＴとが等しいとき、つまり、次にパケットを送信する、送信時クロックＴのスロットでの通信周波数の通信状況が不良と予測されるときには、ステップＳ４８に移行し、送信不可と判定し処理を終了する。
【００４４】
一方、ステップＳ４７の処理で、変数ＣＬＫが送信時クロックＴと等しくない場合にはステップＳ４９に移行し、変数ＣＬＫが“送信時クロックＴ＋２”以下であるかを判定する。そして、変数ＣＬＫが“送信時クロックＴ＋２”以下であるとき、つまり、次にパケットを送信する送信時クロックＴのスロットにおける通信周波数の通信状況は良好ではあるが、その次のスロット又はさらに次のスロットにおける通信周波数の通信状況が良好でない場合には、ステップＳ５０に移行し、３スロット長分のパケットを送信可能と判断する。
【００４５】
一方、ステップＳ４９で変数ＣＬＫが“送信時クロックＴ＋２”よりも大きいとき、つまり、送信時クロックＴのスロットから３スロット目以降の通信状況が良好ではない場合にはステップＳ５１に移行し、５スロット長分のパケットを送信可能と判断する。
このようにして通信状況を判断したならば、図５に戻って、ステップＳ３２に移行し、次に、送信パケット長を決定する。
【００４６】
このパケット長の決定は、図７に示すように、まずステップＳ６１で送信するパケットが、予め通信スロットが決定されている定期送信パケットＰｔであるかどうかを判定する。
そして、送信するパケットが、定期送信パケットＰｔである場合、つまり、送信すべきスロットが規定されている場合には、ステップＳ６２に移行し、送信パケット長は、定期送信パケットＰｔを送信するための１スロットとして特定する。そして、図５に戻る。
【００４７】
一方、前記ステップＳ６１で定期送信パケットＰｔではないと判定される場合には、ステップＳ６３に移行し、前記図６のステップＳ４３での判定結果に基づき、送信時クロックＴにおける通信周波数は送信可能な状況であるかどうかを判定し、送信可能と判断される場合にはステップＳ６４に移行し、定期送信パケット送信用のスロットとして予約されている定期送信パケット用のスロットを避けて送信することのできるスロットの数を検索する。
【００４８】
すなわち、送信時クロックＴのスロット以後の連続する非予約スロットの数、つまり、定期送信パケット用のスロット直前までのスロット数を算出する。そして、送信時のパケット長として規定されている１スロット、３スロット、５スロットのうち、前記算出したスロット数以下の最大となるスロット数を、最大パケット長Ｉｓとして設定する。
具体的には、例えば、図８（ａ）に示すように、次に送信するパケットの送信スロットをｎ１とし、その次のスロットをｎ２、以後、ｎ３、ｎ４、……とすると、図８（ａ）の場合、スロットｎ３及びｎ４が定期送信パケットＰｔの送信スロットとして設定されているから、このスロットｎ３及びｎ４では、定期送信パケットＰｔを送信する必要がある。したがって、この場合、定期送信パケット用のスロットとして予約されていない連続するスロットは、スロットｎ１及びｎ２であるから、最大パケット長Ｉｓは“１”とする。
【００４９】
次いで、ステップＳ６５に移行し、前記図５のステップＳ３１の通信状況チェック処理において、通信状況から決定した送信可能なパケット長を最大パケット長Ｉｔとし、次いでステップＳ６６に移行し、前記ステップＳ６４で特定した最大パケット長Ｉｓと、ステップＳ６５で設定した最大パケット長Ｉｔとのいずれか小さい方を、送信パケット長とする。そして、図５に戻る。
一方、前記ステップＳ６３で、送信時クロックＴのスロットにおける通信周波数の通信状況が良好ではないと判定されるときにはステップＳ６７に移行し、送信パケット長は、零、つまり、送信不可と判定する。そして、図５に戻る。
【００５０】
このようにして、図５のステップＳ３２の処理で送信パケット長を決定したならば、ステップＳ３３に移行し、前記図６のステップ４３での処理に基づいて、送信時クロックＴのスロットにおける通信周波数の通信状況は良好であるかどうかを判定し、良好ではないと判定されるときには、そのまま処理を終了する。つまり、パケットの送信は行わない。
一方、前記ステップＳ３３で通信状況は良好であると判定された場合には送信可能としてステップＳ３４に移行し、ステップＳ３２で設定した送信パケット長を有するパケットを生成する。そして、ステップＳ３５に移行し、生成したパケットを所定のタイミングで送信する。
【００５１】
次に、上記第１の実施の形態の動作を説明する。
マスタ無線通信機器ＭＳでは、図４のフローチャートにしたがって、パケットの送受信処理を行い、送信すべきパケットがあればこれを送信し（ステップＳ２、Ｓ３）、送信すべきパケットがなければステップＳ７からステップＳ８を経て、次の送信タイミングを待つ（ステップＳ１）。そして、パケットを送信した後、ステップＳ４からステップＳ１０に移行し、受信タイミング待ちとなる。そして、送信したパケットに対する応答としてパケットを受信しない場合には、ステップＳ１１からステップＳ１２を経てステップＳ１３に移行し、本来パケットを受信すべきスロットにおける通信周波数の受信エラー発生回数をインクリメントする。
【００５２】
一方、パケットを受信したならば、そのヘッダが正常であるかを判定し、正常でないならば、ステップＳ１８に移行して、このパケットを受信したときの通信周波数における受信エラー発生回数をインクリメントする。
一方、受信したパケットのヘッダ部が正常である場合には、ステップＳ１７からステップＳ２１に移行し、受信パケットでＡＣＫが通知されたかどうか、つまり、前回このパケットの送信元宛に送信したパケットを正常に受信したことができていたかどうかを判定する。
【００５３】
そして、送信元側で、正常に受信できており、受信状況としてＡＣＫが通知された場合には、ステップＳ２２に移行し、ペイロードが付加されているかどうかを判定し、ペイロードが付加されていれば、ペイロードを読み込みこれが正常であるかどうかを判定し、正常であれば、そのままステップＳ１に戻って次のパケットの送信タイミングを待つ状態となり、逆に、正常でない場合には、ステップＳ２６に移行し、このパケットを受信したときの通信周波数に対応する受信エラーとして受信エラー発生回数を更新した後、ステップＳ１に戻る。
【００５４】
一方、受信パケットでＡＣＫが通知されていないときには送信時エラーと判定して、ステップＳ２１からステップＳ２３に移行し、前回スレーブ無線通信機器ＳＬに対してパケットを送信したときの通信周波数に対応する送信エラーとして、送信エラー発生回数を構成した後、ステップＳ２２に移行する。この処理を繰り返し行い、受信時エラー及び送信時エラーの発生回数を、通信周波数毎にカウントする。
【００５５】
一方、スレーブ無線通信機器ＳＬでは、所定の送信タイミングとなったならば、ステップＳ１からステップＳ２に移行し、送信すべきデータがあれば、ステップＳ３に移行してパケット送信を行った後、ステップＳ４からステップＳ５に移行する。一方、送信すべきデータがなければ、ステップＳ２からステップＳ７に移行し、パケット送信は行わず、ステップＳ８に移行し、スレーブ局であることからステップＳ５に移行する。
そして、パケットを受信しないならば、ステップＳ５からステップＳ１に戻って送信タイミング待ち状態となり、逆にパケットを受信するならば、ステップＳ５からステップＳ１０に移行し、受信タイミング待ちとなる。
【００５６】
そして、所定の受信タイミングとなったときにステップＳ１０からステップＳ１１に移行し、パケットを受信しなければ、ステップＳ１２を経てステップＳ１に戻り、逆にパケットを受信したならば、ステップＳ１１からステップＳ１６を経てステップＳ１７に移行し、ヘッダが正常であるか、また、前回マスタ無線通信機器ＭＳ宛に送信したパケットはマスタ無線通信機器ＭＳ側で正常に受信されていたかどうか、また、ペイロードは正常であるかを判定し、それぞれ正常でない場合には、エラー発生として、受信エラー或いは送信エラーとして、それぞれ対応する通信周波数のエラー発生回数を更新する。
【００５７】
このとき、各無線通信機器では、パケットを送信する場合には、パケット送受信時に検出しているエラー情報を参照し、パケットを送信するスロットの通信周波数について通信状況を検出する。
今、例えば、図９（ａ）に示すように、次にパケットを送信するスロットをｎ１、その次のスロットをｎ２とし、以後、ｎ３、ｎ４、ｎ５とする。そして、周波数ホッピングによって設定される、スロットｎ１での通信周波数はｆ１、スロットｎ２ではｆ５、スロットｎ３ではｆ３、スロットｎ４ではｆ４、スロットｎ５ではｆ２に設定されるものとする。また、エラー情報のエラー率から判定される通信状況が、通信周波数ｆ５は不良であるが、その他の通信状況については良好であるものとする。
【００５８】
この場合、図６のステップＳ４１、Ｓ４２で、パケット送信時のクロックＴに基づいて特定される通信周波数は、図９（ａ）に示すようにｆ１となる。この通信周波数ｆ１の通信状況は良好であるからステップＳ４３からステップＳ４４に移行し、変数ＣＬＫを“１”だけインクリントする。
そして、ステップＳ４５を経てステップＳ４２に戻り、スロットｎ２時点における送信時のクロックで特定される通信周波数ｆ５を算出する。そして、この通信周波数ｆ５の通信状況は、図９（ａ）に示すように不良と判定されることから、ステップＳ４３からステップＳ４７を経てステップＳ４９に移行し、変数ＣＬＫは、“通信時クロックＴ＋１”であって、“通信時クロックＴ＋２”以下であるから、ステップＳ５０に移行し、３スロット長分のパケットを送信可能とする。
【００５９】
つまり、図９（ａ）に示すように、スロットｎ２の通信周波数ｆ５が通信不良である場合、パケット長を“１”とし、スロットｎ１でマスタ無線通信機器ＭＳからスレーブ無線通信機器ＳＬに対して１スロットのパケット長のパケットを送信した場合、次のスロットｎ２で用いられる通信周波数ｆ５は通信不良であるから、スレーブ無線通信機器ＳＬからマスタ無線通信機器ＭＳ宛にパケットを送信したとしても、良好な通信が行われない。
【００６０】
したがって、スロットｎ１のタイミングでパケットを送信する際に、図９（ｂ）に示すように、スロットｎ２にまたがってパケットを送信すれば、本来スロットｎ２での通信周波数として設定される通信周波数ｆ５を用いずにすむ。
そして、このとき、マスタ無線通信機器ＭＳは奇数スロット、スレーブ無線通信機器ＳＬでは偶数スロットでパケットの送信を行う規定となっているから、マスタ無線通信機器ＭＳから、少なくとも２スロットに相当するパケット長のパケットを送信すれば、通信周波数ｆ５を用いずにすむ。したがって、パケット長は、１スロット長、３スロット長、５スロット長のいずれかに規定されているから送信可能なスロット数として３スロットとすることで、通信状況の不良な通信周波数ｆ５でパケット通信を行うことを回避することができる。
【００６１】
そして、このようにして、通信状況に基づいて送信パケット長を決定したならば、次にステップＳ３２に移行し、送信パケット長を決定する。
ここで、図９（ａ）の各スロットｎ１〜ｎ５において、スロットｎ５は、定期送信パケットを送信するパケットとして予約されているものとすると、スロットｎ１は定期送信パケット用のスロットではないから、ステップＳ６１からステップＳ６３に移行し、スロットｎ１の通信状況は良好であるからステップＳ６４に移行する。
【００６２】
そして、この場合、ｎ５が定期送信パケットであることから、定期送信パケットを避けて送信できる連続するパケット数の最大数は、スロットｎ１からｎ４までであるが、送信時のパケット長の単位は、１、３、５スロットであるから、スロット数は“３”として設定される。そして、通信状況から特定されるパケットの最大数は、前述のように、“３”であるから、これらのうち小さい方、つまり“３”が送信パケット長として設定される。
【００６３】
したがって、送信側の無線通信機器では、３スロット長のパケットを生成しこれを送信する。このとき、例えば、３スロット長分の送信データがない場合には、ダミーデータを格納するようにすればよい。
したがって、スロットｎ１の送信タイミングで、図９（ｂ）に示すように、３スロット長のパケットが送信される。
ここで、１パケットを送信する間は、複数のスロットにまたがったとしても送信開始時の通信周波数、つまり、この場合はｆ１が維持され、スロットｎ１からｎ３の間は、通信周波数ｆ１で送信が行われる。このとき、通信周波数ｆ１の通信状況は良好であるから、マスタ及びスレーブ間で良好に通信を行うことができる。
【００６４】
このとき、仮に、スロットｎ１で１スロット長のパケットを送信するようにした場合、スロットｎ２の通信周波数ｆ５は通信状況が良好ではないことから、スロットｎ２でパケットを送受信したとしても、良好な通信が行われない場合がある。しかしながら、スロットｎ１の送信タイミングで３スロット長のパケットを送信するようにしたから、不良な通信周波数ｆ５を用いて通信を行うことを回避することができ、その分、エラーの発生を低減することができる。
【００６５】
また、このとき、複数スロットにまたがるパケットを送信する場合には、送信開始時のスロットにおける通信周波数を維持して送信を行うという機能は予め有しているから、無線通信装置に対して大幅な機能を追加することなく、パケットの生成方法を変更することだけで対応することができる。
このとき、例えば、図８（ａ）に示すように、スロットｎ３及びｎ４が、定期送信パケット用のスロットとして設定されている場合には、スロットｎ１及びｎ２が定期送信パケット用のスロットではないから、送信可能なパケット長は“１”となり、通信状況から決定した送信可能なパケット長は“３”であるから、送信パケット長として“１”が設定される。
【００６６】
したがって、図８（ｂ）に示すように、スロットｎ１で１スロットのパケット長のパケットが送信されることになる。このとき、送信パケット長として通信状況から決定されるパケット長“３”を設定した場合、スロットｎ２での通信状況の不良な通信周波数ｆ５を使用せずにすむが、３スロット目のスロットｎ３は、定期送信パケットとして予約されているから、このスロットｎ３にまたがってパケットを送信することはできない。
【００６７】
したがって、前述のようにスロット数“１”として設定することで、定期送信パケットの送信を妨げることなく且つ不良な通信状況の通信周波数ｆ５を用いることなくパケット通信を行うことができる。
このように、各通信周波数のエラー率を検出し、これに基づいて、この通信周波数を用いないようにしたから、通信状況が不良な通信周波数を用いることで、パケットの通信不良が発生することを回避することができる。
【００６８】
また、このとき、不良な通信周波数を含むようにパケット長を調整することで、不良な通信周波数を用いての通信を回避するようにし、不良なスロットでのパケット送信を行わないのではなく、不良なスロットでのデータの送信を行った状態で、不良な通信周波数の利用のみを回避するようにしているから、送信情報量が低減することなく実現することができる。
【００６９】
また、エラー情報を収集し、これに基づいて送信するパケット長を調整するだけでよい。したがって、例えば、ブルートゥース（登録商標）においては、パケット長として１、３、５スロット長のパケットのいずれかで送信する機能は、すでに備えているから、ブルートゥース（登録商標）規格にのっとった無線通信機器に対し、大幅な変更を伴うことなく実現することができる。
【００７０】
また、上記実施の形態においては、マスタ及びスレーブ無線通信機器の双方において、エラー情報を収集し、これに基づいてパケット長を調整するようにした場合について説明したが、通信状況が不良な通信周波数を用いないようにパケット長を調整するようにしているから、いずれか一方の無線通信機器においてパケット長を調整するだけで、通信状況が不良な通信周波数での通信を回避することができる。
【００７１】
したがって、ブルートゥース（登録商標）規格にのっとった既存の無線通信機器と通信を行う場合であっても、この既存の無線通信機器に対して機能の追加或いは変更等を伴うことなく、通信エラーの発生を回避することができる。
次に、本発明の第２の実施の形態を説明する。
この第２の実施の形態は、上記第１の実施の形態において、図１０に示すように、複数のスレーブ無線通信機器ＳＬ１〜ＳＬ４と、マスタ無線通信機器ＭＳとでネットワーク１０を構成したものである。
【００７２】
各スレーブ無線通信機器ＳＬ１〜ＳＬ４は、上記第１の実施の形態におけるスレーブ無線通信機器ＳＬと同様であるが、マスタ無線通信機器ＭＳでの図５に示すパケット送信処理が異なっている。なお、上記第１の実施の形態と同一部には同一符号を付与しその詳細な説明は省略する。
図１１は、第２の実施の形態におけるマスタ無線通信機器ＭＳのパケット送信処理の処理手順を示すフローチャートであって、図５に示す第１の実施の形態におけるパケット送信処理において、ステップＳ３２で送信パケット長を決定した後、ステップＳ３２ａに移行し、送信先のデバイスを決定する。
【００７３】
このステップＳ３２ａにおける送信先デバイス決定処理は、図１２に示すように、まずステップＳ７１で、通信回線が確立されているスレーブ無線通信機器（デバイス）ＳＬ１〜ＳＬ４のうち、次のスロットでパケットの送信を行うという制約のあるデバイスがあるかどうかを判定する。つまり、予めプロトコルによって、次のスロットでパケット送信を行うように規定されているデバイスがあるかどうかを判定する。
【００７４】
そして、制約のあるデバイスがある場合にはステップＳ７２に移行し、制約のあるデバイスを、送信先デバイスとして設定する。そして、図１１に戻る。
一方、ステップＳ７１でパケットの送信タイミングに制約のあるデバイスがない場合には、ステップＳ７３に移行して各変数の初期設定を行い、ＬＭ＝０、Ｄｍ＝無しに設定する。
【００７５】
次いで、ステップＳ７４に移行し、変数ＬＳとして、ステップＳ３２で決定したパケット長で送信可能な最大データ長ＬＳを設定する。例えば、予め設定可能なパケット長、つまり、スロット数に応じて、送信可能な最大データ長を設定しておき、これに基づいてステップＳ３２で決定したパケット長に対応する最大データ長ＬＳを得る。
次いで、ステップＳ７５に移行し、通信回線が確立中のデバイスのうちマスタ無線通信機器ＭＳと通信を行う優先度の最も高いデバイスを検索し、これをデバイス変数Ｄとする。これは、例えば、通信回線が確立中の通信中のデバイスを通信中リストとして優先度順に管理するようにし、この通信中リストに基づいて検出する。
【００７６】
次に、ステップＳ７６で、各デバイスに送信すべきデータとしてマスタ無線通信機器ＭＳにおいて保持している送信待ちデータのうち、デバイス変数Ｄとして設定されたデバイスに対して送信すべきデータのデータ長を検索しこれをＬｄとする。次いで、ステップＳ７７に移行し、ステップＳ７６で検索した送信待ちデータのデータ長Ｌｄと、ステップＳ７４で検索したスロットｎ１のタイミングで送信すべきパケットタイプで特定される最大データ長ＬＳとを比較し、デバイス変数Ｄで特定されるデバイスの送信待ちデータ長Ｌｄの方が大きければステップＳ７８に移行して送信先デバイスとして、デバイス変数Ｄで特定されるデバイスを設定する。そして、図１１に戻る。
【００７７】
一方、ステップＳ７７で、パケットタイプの最大データ長ＬＳがデバイス変数Ｄで特定されるデバイスの送信待ちデータ長Ｌｄ以上である場合には、ステップＳ７９に移行し、デバイス変数Ｄで特定されるデバイスのデータ長Ｌｄと変数ＬＭとを比較し、変数ＬＭの方が小さければステップＳ８０に移行し、前記デバイス変数Ｄで特定されるデバイスを変数Ｄｍに設定し、また、そのデータ長を変数ＬＭに更新設定する。そして、ステップＳ８１に移行する。
【００７８】
一方、前記ステップＳ７９で、変数ＬＭが、デバイスのデータ長Ｌｄ以下である場合にはそのままステップＳ８１に移行する。このステップＳ８１では、検索すべきデバイスが他にもあるか、つまり通信中リストに登録されており且つ上述の処理が行われていないスレーブ無線通信機器が他にもあるかどうかを判定し、他にもある場合には、ステップＳ８２に移行して、変数Ｄを、通信中のデバイスのうち、優先順位が次に大きいデバイスに変更した後、前記ステップＳ７６に戻り、逆に、通信中のデバイスが他になければ、ステップＳ８３に移行し、この時点で変数Ｄｍに設定されているデバイスを、送信先デバイスとして設定する。そして、図１１に戻る。
【００７９】
つまり、送信先デバイス決定処理３２ａでは、通信中のデバイスのうち、優先度の高いものから検索し、スロットｎ１のタイミングで送信すべきパケットタイプで送信可能な、最大長以上の送信待ちデータを有するデバイス、また、このようなデバイスが存在しない場合には、送信待ちデータ長が最大のデバイスを選択し、これを送信先デバイスとして設定している。
【００８０】
そして、このようにして、送信先デバイスを決定したならば、図１１に戻り、ステップＳ３３に移行して、スロットｎ１の通信状況は良好であって送信可能かどうかを判定し、送信可能でなければそのまま処理を終了し、送信可能であれば、ステップＳ３４ａに移行し、送信先デバイスとして特定したデバイスの送信待ちデータとして設定されているデータを送信データとし、且つステップＳ３２で設定されたパケット長のパケットを生成し、これを送信する（ステップＳ３５）。
【００８１】
したがって、この第２の実施の形態においては、上記第１の実施の形態と同様にして、エラー情報に基づいて送信するパケットタイプを特定し、通信中のスレーブ無線通信機器が複数ある場合には、マスタ無線通信機器ＭＳでは、スレーブ無線通信機器ＳＬ１〜ＳＬ４のうちの優先度の高い順に、送信待ちデータがパケット長で送信可能なデータ長以上のものを選択しこれに基づいてパケットを生成する。
【００８２】
したがって、この場合も上記第１の実施の形態と同等の作用効果を得ることができると共に、送信すべきパケット長に適した送信待ちデータを検索し、これを送信するようにしているから、例えば３スロット分のパケットデータを送信することができるにも関わらず、１スロット分のパケットデータを送信する等といった、非効率的なパケット送信を行うことなく有効にパケット送信を行うことができ、結果的に通信効率を向上させることができる。
【００８３】
なお、この第２の実施の形態においては、通信の優先順位が高いものから、送信待ちデータを検索するようにした場合について説明したが、これに限るものではなく任意に設定することができる。例えば、優先度を第一に考え、送信待ちデータ長が短いデバイスを選択するようにすることも可能である。
なお、上記各実施の形態においては、次に送信するスロットにおけるパケット長を通信状況から決定するようにした場合について説明したが、これに限るものではない。
【００８４】
上述のように、パケット受信時にエラー情報を収集することで、通信周波数毎の通信状況を把握することができる。したがって、これ以後の各スロットにおける通信周波数毎の通信状況を把握し、これに基づいて、パケット長を調整することによって、より通信効率を向上させることができる。
具体的には、５スロット以上先に通信状況の不良な通信周波数を使用することになっている場合には、そこに至るまでのパケット長の組み合わせを調整することにより、柔軟でより、効率的なパケット長の選択を行うことができる。
【００８５】
例えば、次にパケットを送信するスロットを１番目スロットｍ１とし、これを基準として７番目のスロットｍ７で使用する周波数の通信状況が不良である場合には、その周波数の利用を避けるために、例えば図１３に示すように、複数のパケット長の組み合わせが考えられる。なお、図１３では、受信したパケットの送信元の無線通信機器からの最大送信パケット長は１スロット長としている。
【００８６】
つまり、７スロット目ｍ７で、パケット送信を行わないか、又は、７スロット目ｍ７でパケットの送信を開始せずに、７スロット目ｍ７を含むようにパケット長を設定してパケット通信を行うように設定する。そして、デバイスの優先順位や、各スロットの送信予約、或いは、処理負荷等を考慮し、最も効率よくデータ送信を行うことのできるパケット長を設定するようにすればよい。
【００８７】
そして、例えば、図１３に示すような、組み合わせパターンを、通信状況が不良なスロットの発生箇所毎に設定して記憶しておき、これに基づいてパケットを送信するスロット及びそのときのパケット長を決定するようにすればよい。
つまり、図４のステップＳ３におけるパケット送信処理において、図１４に示すように、まず、ステップＳ９１で、フラグＦがＦ＝１であるか否かを判定し、Ｆ＝１でない場合には、ステップＳ９２に移行し、通信状況のチェックを行う。この場合、図１３に示すように、１０スロット先までのパケット長の組み合わせパターンが設定されているから、次に送信するパケットから１０スロット先までの各スロットについて上記各実施の形態と同様にしてその通信状況をチェックする。
【００８８】
次いでステップＳ９３に移行し、ステップＳ９２で検出した通信状況に基づいて図１３に示す組み合わせパターンに基づいて何れの組み合わせでパケット送信を行うかを決定する。そして、ステップＳ９４に移行する。
このステップＳ９４では、ステップＳ９２で決定した組み合わせパターンで次のスロットでパケット送信を行うように設定されているかどうかを判定し、これらを共に満足するときステップＳ９５に移行する。
【００８９】
そして、前記ステップＳ９５では、ステップＳ９２で決定した組み合わせパターンで特定されるパケット長のパケットを生成し、ステップＳ９６に移行して、これを送信する。そして、ステップＳ９７に移行し、ステップＳ９２で決定された組み合わせのパターンで規定されたスロット全てについてパケットの送信が終了したかどうかを判定し、規定されたスロット全てについてパケットの送信が終了していない場合には、そのまま処理を終了し、図４に戻る。
【００９０】
そして、次に、このパケット送信処理を行う場合には、フラグＦがＦ＝１であって、次のスロットは、先に決定した組み合わせパターンによって規定されていることからステップＳ９１からステップＳ９４に移行し、次のスロットは組み合わせパターンで規定されているかどうかを判定し、例えば、送信パケットとして規定されていなければ、そのままステップＳ９７に移行し、組み合わせパターンで規定された全てのスロットについて処理を行っていないからそのまま図４に戻る。
【００９１】
そして、以後同様に処理を行って、組み合わせパターンで特定されるスロットにおいて、指定されたスロット長のパケットを送信し、組み合わせパターンで規定されたスロット全てについて処理が終了したときステップＳ９７からステップＳ９８に移行し、フラグＦをＦ＝０に設定した後、図４に戻る。
したがって、次に、パケット送信処理を行う場合には、フラグＦがＦ＝０であるからステップＳ９１からステップＳ９２に移行し、この時点における各通信周波数毎の通信状況が検出され、次いでステップＳ９３で、図１３に示す組み合わせパターンの中から、通信状況に応じた組み合わせパターンが決定される。そして、以後上記と同様に処理が行われる。
【００９２】
なお、ここでは、１０スロット先までの、各スロットの通信周波数における通信状況に基づいて、各送信タイミングにおけるパケット長を決定するようにした場合について説明したが、これに限るものではなく、任意に設定することができる。より先のスロットまでを調査対象とすれば、それだけ効率のよいパケット送信を行うことの可能なスケジューリングが可能となるが、その分、演算量も増加し処理時間がかかることになる。したがって、調査するスロット数は、無線通信機器における処理能力及び使用用途を考慮して決定するようにすればよい。つまり、例えば、無線通信機器の処理能力が高いならば、調査対象のスロット数を多くすればよく、逆に処理能力が低いならば、スロット数を少なくすればよい。また、例えば、無線通信機器が、アクセスポイントとして用いられているならば、調査対象のスロット数を多くすればよく、逆に、アクセスポイントへのアクセスを行うデバイスとして用いられるならば、スロット数を少なくすればよい。
【００９３】
なお、上記各実施の形態においては、エラー率の算出及び通信状況の判定処理を、通信状況の良否の情報を必要とする通信周波数が確定した時点で行うようにした場合について説明したが、これに限るものではなく、パケットを送受信する際のエラー検出処理において、エラーを検出した時点で、通信状況の判定を行い、これを所定の記憶領域に格納するようにしてもよい。通信状況の良否の情報を必要とする通信周波数が確定した時点で行うようにした方が全体の処理量は減少するが、図４のパケット送信処理での処理が多くなるそのため、他の処理との兼ね合いからいずれかもしくは両者を複合した手順を選択するようにしてもよい。
【００９４】
また、上記各実施の形態において、決定したパケット長よりも、送信するデータが少ない場合には、ダミーデータを含んでパケットを生成するようにした場合について説明したが、これに限るものではない。例えば、パケットの種類として、前述のように、１スロット長、３スロット長、５スロット長のパケットを規定しているだけでなく、これら各スロット長のパケットに対し、エラー訂正用コードを含むパケット及び含まないパケットを規定しているシステムにおいては、例えば、送信すべきデータ量が、パケットのスロット長に相当するデータ量よりも少ない場合には、エラー訂正用コードを含むパケットを選択し、送信すべきデータと、エラー訂正用コードとを含む特定したスロット長のパケットを生成し、これを送信するようにしてもよい。このようにすることによって、より、的確にデータを送信することができる。
【００９５】
また、上記実施の形態においては、通信周波数毎にエラー率Ｒを検出するようにした場合について説明したが、これに限らず、例えば、通信先の無線通信機器毎に、通信周波数毎のエラー率を検出するようにし、通信先の無線通信機器と通信周波数とに基づいてパケット長を調整するようにしてもよく、このようにすることによって、通信先の無線通信機器と自無線通信機器との間の通信状況に応じてパケット長を設定することができ、より通信状況に適したパケット長を設定することができる。
【００９６】
また、上記実施の形態においては、エラー情報として、スレーブ無線通信機器からの受信エラー、受信パケットのヘッダエラー、送信エラー及びペイロードエラーについて検出するようにした場合について説明したが、必ずしもこれら全てを検出する必要はなく、また、必要に応じて他のエラーを検出するようにすることも可能である。
また、上記各実施の形態においては、パケットを送信するスロットにおいて、パケット長の設定や、組み合わせパターンの設定等を行うようにした場合について説明したがこれに限るものではなく、数スロット後のスロットにおけるパケット長を予め設定しておくようにしてもよいことはいうまでもない。
【００９７】
また、上記各実施の形態においては、ブルートゥース（登録商標）等の近距離無線送受信を行うようにした場合について説明したが、これに限るものではなく、周波数ホッピング型の通信方式によってパケットを送受信するようなネットワークシステムであれば適用することができる。
なお、上記実施の形態において、図４のステップＳ１０からステップＳ２６の処理が無線通信状態検出手段に対応し、図５のステップＳ３１及びステップＳ３２の処理がパケット長設定手段に対応し、図６のステップＳ４１及びＳ４２の処理が通信周波数予測手段に対応し、図６のステップＳ４３の処理がスロット状況検出手段に対応し、図６のステップＳ４６からステップＳ５１の処理がパケット長決定手段に対応している。また、図１４のステップＳ９２の処理が通信周波数予測手段及びスロット状況検出手段に対応し、図１４のステップＳ９３の処理がパケット送信計画手段に対応している。また、図１２の処理が送信先機器選択手段に対応している。
【図面の簡単な説明】
【００９８】
【図１】本発明の第１の実施の形態におけるネットワークシステムの一例を示す構成図である。
【図２】図１のマスタ無線通信機器とスレーブ無線通信機器との間の通信方式を説明するための説明図である。
【図３】第１の実施の形態における無線通信機器の構成を示すブロック図である。
【図４】第１の実施の形態におけるパケットの送受信時の処理の一例を示すフローチャートである。
【図５】図４のパケット送信処理の処理手順の一例を示すフローチャートである。
【図６】図５の通信状況チェック処理の処理手順の一例を示すフローチャートである。
【図７】図５の送信パケット長決定処理の処理手順の一例を示すフローチャートである。
【図８】第１の実施の形態の動作説明に供する説明図である。
【図９】第１の実施の形態の動作説明に供する説明図である。
【図１０】第２の実施の形態におけるネットワークシステムの一例を示す構成図である。
【図１１】第２の実施の形態におけるパケット送信処理の処理手順の一例を示すフローチャートである。
【図１２】図１１の送信先デバイスの決定処理の処理手順の一例を示すフローチャートである。
【図１３】組み合わせパターンの一例である。
【図１４】パケット送信処理のその他の例を示すフローチャートである。
【符号の説明】
【００９９】
ＭＳ  マスタ無線通信機器  ＬＳ  スレーブ無線通信機器
【図１】
2005117526.tif 000003
【図２】
2005117526.tif 000004
【図３】
2005117526.tif 000005
【図４】
2005117526.tif 000006
【図５】
2005117526.tif 000007
【図６】
2005117526.tif 000008
【図７】
2005117526.tif 000009
【図８】
2005117526.tif 000010
【図９】
2005117526.tif 000011
【図１０】
2005117526.tif 000012
【図１１】
2005117526.tif 000013
【図１２】
2005117526.tif 000014
【図１３】
2005117526.tif 000015
【図１４】
2005117526.tif 000016