説明

パケット通信方法

【課題】同時に多様な通信状態を許容しつつ、その中でも優先度の高いデータに対して充分な受信帯域を確保することができるパケット通信方法を提供する。
【解決手段】ローカルデバイス(30)とリモートデバイス(14)との間でBluetooth(登録商標)によるRFCOMM接続が完了すると(ST50)、リモートデバイス(14)には初期クレジット7が通知される。マルチプロファイル状態の変化を検知すると、カレントクレジットが0になるまでリモートデバイス(14)からローカルデバイス(30)パケットを送信し(ST51〜ST61)、待機時間を待機してパケット数を1に減少させる(ST62〜ST65)。これにより、相対的に他の通信処理に割り当てられる帯域を確保し、通信を優先させることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数のデバイス間でパケットデータを送受信するためのパケット通信方法に関するものである。
【背景技術】
【0002】
従来、オーディオ信号や映像信号のように連続性があり、かつ、リアルタイム性を確保する必要があるデータの送受信に適した無線通信方法が知られている(例えば、特許文献1参照。)。この先行技術は、通信装置が他のデバイスとの間でデータ通信を行う際、通信対象として複数のデバイスが検出された場合にリアルタイム性が要求されるデバイスとそれ以外のデバイスとを区別して認識しておき、先にリアルタイム性が要求されない方のデバイスとの通信を確立し、その後でリアルタイム性が要求されるデバイスとの間でオーディオ信号の伝送を行うものである。また先行技術では、通信装置においてリアルタイム性が要求されるデバイスとの間でデータ伝送が行われている間、その他のデバイスの検出や既に通信を確立したデバイスとの通信を行わないこととしている。
【0003】
上記の先行技術によれば、例えばオーディオ機器から通信機器に対してオーディオ信号等の伝送が行われている間、それ以外のデバイスである携帯電話機との通信は原則として行われない。この場合、例えば1曲分のオーディオ信号の伝送が終了するまでの間はオーディオ機器との通信が優先されるため、リアルタイム性を失うことなくオーディオの再生が可能になると考えられる。
【0004】
さらに先行技術では、オーディオデータの再生及び転送を優先している間であっても、例えば携帯電話機に着信があると、割り込み処理によって携帯電話機との通信を実行することができる。このため、通常はリアルタイム性を優先しつつ、通話等の急を要する状況が発生した場合はそちらに通信を切り替えることができるので、ユーザの要望に応じた態様で通信を実行することができると考えられる。
【特許文献1】特開2006−352799号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら上記の先行技術は、リアルタイム性が要求されるデバイスを優先するあまり、それ以外のデバイスとの通信を大きく犠牲にしている。このため先行技術の通信方法は、ユーザにとってあまり利便性が高いとはいえない。例えば、複数のデバイスを同時並行してユーザが使用しようとしても、先行技術の手法ではリアルタイム性が要求されるデータの伝送が終了するまで他のデバイスは使用できなくなるという不便さがある。
【0006】
そうかといって、複数のデバイスから同時並行してデータの伝送を行うことを単純に許可しただけでは、リアルタイム性を要求されるデータの受信帯域が圧迫されてしまい、オーディオ等を再生する際の品質を劣化させてしまうことになる。
【0007】
また近年、Bluetooth(登録商標)対応製品の多様化により、1つの通信システム内で複数のデバイスが別々のアプリケーションを同時に実行するというケースが増えつつある。例えば、ダイアルアップやシリアルポートを用いたアプリケーションによるデータアクセス中に、これとは別のオーディオアプリケーションによる音楽の再生が開始されたり、さらに別のハンズフリーアプリケーションによる音声通話が開始されたりすることがある。このような場合、いずれの通信も中断させることなく、その中でオーディオ再生の音質を優先したり、音声通話の音質を優先したりすることへの要望が高まってきている。
【0008】
そこで本発明は上記の事情に鑑み、同時に多様な通信状態を許容しつつ、その中でも優先度の高いデータに対して充分な受信帯域を確保することができるパケット通信方法を提供しようとするものである。
【課題を解決するための手段】
【0009】
解決手段1:本発明は、複数の通信プロファイルを用いて通信する機能を有したローカルデバイス及びリモートデバイスから構成される通信システム内で使用されるパケット通信方法である。詳細には、ローカルデバイスとリモートデバイスとの通信開始時に予めローカルデバイスが受信可能なパケット数をリモートデバイスに通知し、この通知されたパケット数分のデータをリモートデバイスからローカルデバイスに送信してローカルデバイスで受信する通信処理を繰り返しながら所望量のパケットデータを送受信するパケット通信方法である。その上で本発明のパケット通信方法は、以下の工程に特徴を有するものである。
【0010】
(1)検出工程
この工程は、ローカルデバイスがいずれかのリモートデバイスとの間で通信処理を実行する際、複数ある通信プロファイルの中でいずれの通信プロファイルを用いて通信処理が実行されているかを検出するものである。
【0011】
すなわち通信プロファイルは、それ自身が使用する通信プロトコルを特定しているため、通信処理で用いられている通信プロファイルを検出することで、その通信処理がどのような通信状態にあるのかを識別することができる。
【0012】
(2)減少工程
この工程は、ローカルデバイスが特定のリモートデバイスとの間で通信処理を実行中に、同じ特定のリモートデバイスか、もしくは別のリモートデバイスとの間で現在とは異なる別の通信プロファイルを用いて別の通信処理が実行されたことを検出した場合、現在実行中の通信処理の中でローカルデバイスが特定のリモートデバイスに通知する受信可能なパケット数を減少させることにより、別の通信プロファイルを用いた通信処理の中でローカルデバイスが受信可能なパケット数を相対的に増加させるものである。
【0013】
これにより、現在実行中の通信処理はパケット数の減少によって相対的に帯域が狭められるが、その一方で別の通信プロファイルを用いた通信処理に割くことができる帯域を相対的に広げることができる。このため、意図的に優先させたい通信処理のスループットをそれだけ多くしつつ、いずれの通信処理も犠牲にすることなく同時並行して通信システム内でのデータ通信を継続することができる。
【0014】
解決手段2:解決手段1のパケット通信方法において、さらに以下の工程を有してもよい。
【0015】
(3)待機工程
この工程は、ローカルデバイスが特定のリモートデバイスとの間で通信処理を実行中に、同じ特定のリモートデバイスか、もしくは別のリモートデバイスとの間で現在とは異なる別の通信プロファイルを用いて別の通信処理が実行されたことを検出した場合、現在実行中の通信処理の中に待機時間を挿入するものである。
【0016】
このような工程を追加することにより、上記(2)の減少工程による帯域の確保と合わせて、より優先させたい通信処理に対して必要な帯域を割り当てることができる。
【0017】
解決手段3:解決手段2において、待機時間を挿入する工程では、現在実行中の通信処理の中でローカルデバイスが特定のリモートデバイスに受信可能なパケット数を通知する前に待機時間を挿入することが好ましい。
【0018】
上記のように本パケット通信方法では、ローカルデバイスから受信可能なパケット数を通知するまでは、リモートデバイスからローカルデバイスに対してデータを送信することができない。したがって、ローカルデバイスからリモートデバイスへ受信可能なパケット数を通知する前に待機時間を挿入すれば、それだけ現在の通信処理に遅延が発生するため、相対的に別の通信処理の優先度を高めることができる。
【0019】
解決手段4:解決手段1から3のパケット通信方法において、パケット数を相対的に増加させる工程では、現在の通信プロファイルに比較して別の通信プロファイルの方がよりリアルタイム性を要求されるものである場合に現在実行中の通信処理の中でパケット数を減少させることが好ましい。
【0020】
このような態様であれば、単純に後から開始された通信処理を優先するのではなく、通信プロファイルの特性からみて優先度の高い方の通信処理を確実に優先させることができる。
【0021】
解決手段5:あるいは、解決手段1から3のパケット通信方法において、パケット数を相対的に増加させる工程では、別の通信プロファイルがオーディオデータ又は音声通話データをローカルデバイスで受信する場合に使用されるものであるか、もしくは、所定時間内にリモートデバイスからローカルデバイスへのデータ転送を完了させる必要がある場合に使用されるものであるかのいずれかである場合、現在実行中の通信処理の中でパケット数を減少させることが好ましい。
【0022】
この場合も同様に、通信プロファイルの特性からみて優先度の高い方の通信処理を確実に優先させることができることに加えて、所定時間内にデータ転送を完了させる必要がある場合のように、後から意図的に優先させたい通信処理が開始されれば、そちらを確実に優先させることができる。
【0023】
解決手段6:解決手段1から5のパケット通信方法において、ローカルデバイスとリモートデバイスとの間で行われる通信処理は、特定の短距離無線通信規格におけるRFCOMMプロトコルにより定義されたクレジットベースドフローコントロールに則り、ローカルデバイスが受信可能なパケット数をクレジット数としてローカルデバイスからリモートデバイスに通知する手順と、リモートデバイスからパケットデータをローカルデバイスに送信するごとにリモートデバイスにおいてクレジット数を減少させる手順とを含むものである。
【0024】
この場合、クレジット数がリモートデバイスにおいて残存している間はリモートデバイスからローカルデバイスに対してパケットデータの送信が可能である一方、クレジット数が残存しなくなるとリモートデバイスからローカルデバイスからリモートデバイスへのパケットデータの送信が不可となる。
【0025】
例えば、特定の短距離無線通信規格としてBluetooth(登録商標)を使用した場合、そのRFCOMMプロトコルで定義されたクレジットベースドフローコントロール(Credit Based Flow Control)を必須機能とするため、ローカルデバイスとリモートデバイスとの間での相互接続性の観点からも有利なパケット通信方法を実現することができる。
【発明の効果】
【0026】
以上のように本発明のパケット通信方法によれば、多様な通信プロファイルを用いた通信処理を同時に実行しつつ、より優先させたい通信処理に対して必要な帯域を確保することができる。これにより、リアルタイム性のあるデータ通信の品質劣化を防止してユーザの利便性を高めたり、意図的に優先させたいデータの転送を早期に完了させたりすることができる。
【発明を実施するための最良の形態】
【0027】
以下、本発明の実施形態について図面を参照しながら説明する。
【0028】
〔通信システムの概要〕
図1は、通信システム10の構成例を概略的に示す図である。この通信システム10は、例えば自動車に搭載された車載電装ユニット12をローカルデバイスとし、車内に持ち込まれる各種の携帯機器14,16,18をそれぞれリモートデバイスとして構成されている。これら車載電装ユニット12や携帯機器14,16,18は、いずれもブルートゥース(Bluetooth:登録商標)規格に準拠した無線通信機能を有している。なお、以下の説明では、Bluetooth(登録商標)を「BT」と略称する。
【0029】
〔車載電装ユニット〕
車載電装ユニット12は、例えば走行経路誘導(ナビゲーション)機能を有するほか、オーディオ再生機能やビデオ再生機能、ラジオ、テレビ等の受信機能等を有する。このため車載電装ユニット12には、液晶ディプレイ等を用いた表示部20や、図示しないプッシュスイッチ、キースイッチ、回転つまみ等を有した操作部22が付属するほか、音響出力用のスピーカ24、マイク26等の周辺機器が付属している。
【0030】
また車載電装ユニット12は、上記の周辺機器を制御する制御部28を内蔵するほか、BTによる無線通信機能を発揮するためにBTモジュール30を内蔵している。なお制御部28は、例えば中央処理装置であるCPUやROM、RAM等のメモリデバイスを備えたマイクロコンピュータである。またBTモジュール30は、車載電装ユニット12(制御部28)をホストとしてBT通信を用いたサービス(例えば無線接続)を提供することができる。
【0031】
〔携帯機器〕
携帯機器14,16,18は、例えば携帯音楽プレーヤ、携帯情報端末、携帯電話機等のユーザが携帯して使用することができる電子機器である。いずれにしても、携帯機器14,16,18にも図示しないBTモジュールが内蔵されており、このBTモジュールを用いて携帯機器14,16,18はそれぞれBTによる無線通信機能を発揮することができる。
【0032】
〔通信システムの特性〕
ここで挙げている通信システム10は、そのローカルデバイスとして単一の車載電装ユニット12を有しているが、ローカルデバイスが通信の対象とするリモートデバイスとして、複数の携帯機器14,16,18を含むことができる。したがって通信システム10の動作としては、例えば以下の2つの状態を挙げることができる。
【0033】
(1)マルチコネクション
この通信状態は、ローカルデバイスである車載ユニット12が同時に複数のリモートデバイス(携帯機器14〜18)を対象として通信(データ受信)を行う場合である。例えば、携帯機器14〜18がそれぞれにBT通信を行うアプリケーションを実行した場合、通信システム10の動作はマルチコネクションとなる。
【0034】
(2)マルチプロファイル
この通信状態は、車載ユニット12が1台の携帯機器14〜18のいずれかとの間、もしくは複数台の携帯機器14〜18との間で複数の通信プロファイルを用いて同時に通信を行う場合である。例えば、携帯機器18(携帯電話機)には標準の音声通話機能だけでなく、データ通信機能が付属していたり、あるいは音楽再生機能が付属していたりする。この場合、1台の携帯機器18で複数のアプリケーションを同時並行して利用することができるため、それぞれのアプリケーションごとに通信プロファイルが異なっていれば、通信システム10の動作はマルチプロファイルになる。
【0035】
あるいは、携帯機器14〜18がそれぞれ単一の通信プロファイルを用いるアプリケーションを実行していても、上記(1)のマルチコネクション状態において、携帯機器14〜18ごとに異なる通信プロファイルが使用された場合、通信システム10の動作はマルチコネクション及びマルチプロファイルとなる。
【0036】
本実施形態では、上記のように通信システム10の動作が複数の通信状態(特にマルチプロファイル)に変化することを踏まえ、通信システム10内で行われる通信処理を動的にコントロールする通信方法を採用している。以下、本実施形態で採用する通信方法の詳細について説明する。
【0037】
〔BTモジュールの構成例〕
先ず、通信処理を動的にコントロールするために必要なハード構成の例について説明する。図2は、BTモジュール30のハード構成例を概略的に示すブロック図である。
【0038】
BTモジュール30は、例えば内蔵型のBTアンテナ32及びRF回路34を有しており、これらBTアンテナ32及びRF回路34により他のBT機器(ここでは携帯機器14〜18)との間でBT規格による無線通信を行うことができる。
【0039】
またBTモジュール30は、ベースバンド部36及びプロトコルスタック38を有しており、このうちベースバンド部36は、RF回路34にて受信した信号をIF信号に変換し、復調してパケットデータ(受信パケット)を生成する。プロトコルスタック38は、例えばある程度の記憶容量を有したスタックレジスタであり、ここにはベースバンド部36で生成されたパケットデータが順次蓄積(スタック)されるものとなっている。なおプロトコルスタック38はFIFO形式である。
【0040】
またプロトコルスタック38には、BTモジュール30からの送信用パケットデータ(送信フレーム)もまた順次蓄積されており、ここから取り出された送信用パケットデータは、上記のベースバンド部36で変調され、RF回路34及びBTアンテナ32を通じて携帯機器14〜18に送信される。
【0041】
BTモジュール30はデータ送信処理部40及びデータ受信処理部42を有しており、上記の送信用パケットデータは、データ送信処理部40からプロトコルスタック38に順次転送される。一方、プロトコルスタック38に蓄積された受信済みのパケットデータは、データ受信処理部42にて順次読み出される。
【0042】
BTモジュール30は、データ送信処理部40による送信処理に関して複数の通信プロファイルに対応している。具体的には、BTモジュール30はDUN/SPPデータ送信処理部46及び他プロファイルデータ送信処理部50を有しており、これら複数の処理部46,50によりマルチプロファイル機能をカバーしている。このうちDUN/SPPデータ送信処理部46は、ダイヤルアップネットワークプロファイル及びシリアルポートプロファイルを用いたデータ送信処理を行う。また他プロファイルデータ送信処理部50は、上記の以外のプロファイルを用いたデータ送信処理を行うものである。
【0043】
またデータ受信処理に関して、同じくBTモジュール30はDUN/SPPデータ受信処理部52及び他プロファイルデータ受信処理部54を有している。このうちDUN/SPPデータ受信処理部52は、ダイヤルアップネットワークプロファイル及びシリアルポートプロファイルを用いたデータ受信処理を行う。また他プロファイルデータ受信処理部54は、上記の以外のプロファイルを用いたデータ受信処理を行うものである。
【0044】
〔クレジットベースドフローコントロール〕
上記のマルチプロファイルによるデータ送信処理及びデータ受信処理(通信処理)に関して、BTモジュール30は、RFCOMMプロトコルで定義されている必須機能のクレジットベースドフローコントロールを使用する。このためBTモジュール30はクレジット送信処理部44を有しており、このクレジット送信処理部44は、ローカルデバイス(車載ユニット12)からいずれかのリモートデバイス(携帯機器14〜18)に対してクレジット(フリークレジット)を送信する。なお、クレジットベースドフローコントロールの例についてはさらに後述する。
【0045】
またBTモジュール30はマルチプロファイル状態検知部48を有しており、このマルチプロファイル状態検知部48は、マルチプロファイル動作中にBTモジュール30による通信処理の状態の変化を検知する。具体的には、上記のダイヤルアップネットワークプロファイルやシリアルポートプロファイルに加えて、他のプロファイルとして例えば高度オーディオ配信プロファイル(A2DP)、ハンズフリープロファイル(HFP)等を用いて通信処理が実行されたことを検知したり、その通信処理が終了したことを検知したりする。
【0046】
そしてマルチプロファイル状態検知部48は、上記のようにマルチプロファイル動作中の状態の変化を検知すると、クレジット送信処理部44が送信するクレジット数を操作し、クレジットベースドフローコントロールによる通信処理を制御するためのトリガを発生する。なお、具体的な制御手法の例についてはさらに後述する。
【0047】
この他に、BTモジュール30はHOSTモジュール間制御部56を有しており、このHOSTモジュール間制御部56は、上記の車載ユニット12が有する制御部28をホスト(HOST)としたとき、このホストとBTモジュール30との間の通信を制御する。
【0048】
例えば、ユーザが車載ユニット12の操作部22を通じてBT通信に関する操作を実行した場合、ホスト側の制御部28からHOSTモジュール間制御部56に動作信号が送信され、これを受けてHOSTモジュール間制御部56はDUN/SPPデータ送信処理部46や他プロファイルデータ送信処理部50の動作を制御する。またHOSTモジュール間制御部56は、DUN/SPPデータ受信処理部52や他プロファイルデータ受信処理部54により受信されたパケットデータをホスト側の制御部28に出力する。これにより、例えば携帯機器18からBT通信で受信したオーディオデータや音声通話データ等を車載ユニット12のスピーカ24から出力したり、マイク26で拾った音声を携帯機器18に転送したりすることが可能になる。
【0049】
〔パケット通信方法〕
次に、本実施形態の通信システム10において使用されているパケット通信方法の一例について説明する。
【0050】
図3は、BTモジュール30が実行する通信処理の手順例を示したフローチャートである。この受信処理は、通信システム10内でローカルデバイスである車載ユニット12とリモートデバイスである携帯機器14〜18との間でRFCOMM接続が完了した後に開始される。なお、BT通信におけるRFCOMM接続のシーケンスについては公知のものを適用できるので、ここではその詳細を省略する。
【0051】
RFCOMM接続が完了すると、BTモジュール30内で上記のHOSTモジュール間制御部56をはじめクレジット送信処理部44、DUN/SPPデータ送信処理部46、他プロファイルデータ送信処理部50、DUN/SPPデータ受信処理部52、他プロファイルデータ受信処理部54等の演算処理機能を有した構成要素を用いて通信処理が実行される。
【0052】
この通信処理は、マルチプロファイル状態検知部48に予めトリガとなる条件を付与しておき、通信中のトリガ条件に応じてクレジット送信処理部44によるクレジット送信処理を動的に操作し、ダイアルアップネットワークやシリアルポートを用いたアプリケーションによるデータアクセス中の受信帯域を他のアプリケーションに割り当てるものである。以下、手順例に沿って説明する。
【0053】
ステップS10:RFCOMMプロトコルでのクレジットベースドフローコントロールにおいて、BTモジュール30は最初にクレジット送信処理部44によるフリークレジットの値を「0」に設定する。
【0054】
ステップS12:次にBTモジュール30は、リモートデバイスである携帯機器14〜18でのカレントクレジットの値をローカルデバイスにおける初期クレジットの値(例えば「7」)に設定する。
【0055】
ステップS14:BTモジュール30は、通信処理のモードとして「モード1」を設定する。
【0056】
ステップS16:次にBTモジュール30は、上記のマルチプロファイル状態検知部48により通信状態を確認する(検出工程)。
【0057】
ステップS18:そしてBTモジュール30は、上記の結果からマルチプロファイル状態検知部48においてトリガとなる条件が満たされたか否か(「コンディションC」の条件を満たすか否か)を判断する。例えば、以下に該当する場合を「コンディションC」の条件を満たすと判断することができる。
【0058】
〔コンディションCのトリガ条件〕
(1)ダイアルアップやシリアルポートを用いたデータアクセスと同時並行してオーディオアプリケーションの動作中に、マルチプロファイル状態検知部48がオーディオアプリケーションの状態を「停止中」から「再生中」に遷移したことを検知した場合。オーディオアプリケーションの動作中は通信処理にリアルタイム性が要求されるため、これをトリガ条件とする。
【0059】
(2)ダイアルアップやシリアルポートを用いたデータアクセスと同時並行してハンズフリーアプリケーションの動作中に、マルチプロファイル状態検知部48がハンズフリーアプリケーションの状態を「SLC接続中」から「通話中」に遷移したことを検知した場合。この場合、HFP通話の音質やHFPコントロールデータの受信処理を優先する必要があるため、これをトリガ条件とする。
【0060】
(3)ダイアルアップやシリアルポートを用いたデータアクセスと同時並行してパーソナルインフォメーションマネージャアプリケーション(OPP、PBAP)の動作中に、マルチプロファイル状態検知部48がこれらアプリケーションの状態を「SLC接続中」から「データ取得中」に遷移したことを検知した場合。この場合も同様にデータの受信処理を優先する必要があるため、これをトリガ条件とする。なお、パーソナルインフォメーションマネージャアプリケーション(OPP、PBAP)の動作中にデータの受信処理を優先する必要があるのは、例えば携帯情報端末や携帯電話機である携帯機器16,18からアドレス帳等のデータを受信する際、そのデータ転送を所定時間(例えば数秒〜十数秒間)内で完了させる必要があることを考慮したものである。
【0061】
特に上記(1)〜(3)のトリガ条件が満たされていなければ(ステップS18:No)、BTモジュール30は次にステップS20に進む。
【0062】
ステップS20:現在は「モード1」に設定されているため(Yes)、BTモジュール30はここでステップS22を実行する。
【0063】
ステップS22:この場合、BTモジュール30は「RFCOMMデータ受信及びクレジット送信処理1」を実行する。そして、この処理から復帰すると、BTモジュール30はステップS16に戻ってマルチプロファイル状態検知部48による通信状態の確認を継続する(検出工程)。
【0064】
これに対し、上記(1)〜(3)のいずれかのトリガ条件が満たされると(ステップS18:Yes)、BTモジュール30は次にステップS24に進む。
【0065】
ステップS24:この場合、BTモジュール30は「RFCOMMデータ受信及びクレジット送信処理2」を実行する。
【0066】
ステップS26:次にBTモジュール30は、通信処理のモードとして「モード2」を設定する。そしてBTモジュール30は、ステップS16に戻り、マルチプロファイル状態検知部48による通信状態の確認を継続する。
【0067】
上記(1)〜(3)のいずれかのトリガ条件が満たされなくなるまでの間(ステップS18:Yes)、BTモジュール30は引き続きステップS24に進み、「RFCOMMデータ受信及びクレジット送信処理2」を実行する(ステップS16〜ステップS26のループ)。
【0068】
この後、上記(1)〜(3)のいずれかのトリガ条件が満たされなくなると(ステップS18:No)、BTモジュール30はステップS20に進み、現在のモードを確認する。
【0069】
ステップS20:そして、この時点では「モード2」に設定されているため(No)、次にステップS28が実行されることになる。
【0070】
ステップS28:BTモジュール30は、「RFCOMMデータ受信及びクレジット送信補正処理」を実行する。
【0071】
〔RFCOMMデータ受信及びクレジット送信処理1〕
図4は、上記のステップS22で実行される「RFCOMMデータ受信及びクレジット送信処理1」の手順例を示すフローチャートである。以下、この処理について説明する。
【0072】
ステップS40:BTモジュール30は、RFCOMMデータ受信を開始する。
ステップS42:またBTモジュール30は、フリークレジットの値を「1」インクリメントする。これにより、前回のフリークレジットの値が1つ加算された状態となる。
【0073】
ステップS44:次にBTモジュール30は、リモートデバイスである携帯機器14〜18でのカレントクレジットの値を「1」デクリメントする。これにより、前回のカレントクレジットの値が1つ減算された状態となる。
【0074】
ステップS46:ここでBTモジュール30は、条件として「コンディションA」が満たされるか否かを判断する。なお「コンディションA」は、例えば以下の内容とすることができる。
【0075】
カレントクレジット≦Th1 かつ フリークレジット≧Th2
ただし、ローカルデバイスの初期クレジット=Th1+Th2である。なお、上記の例では初期クレジットの値を「7」としているので、ここではTh1=1、Th2=6とする。
【0076】
特に「コンディションA」の条件が満たされない場合(ステップS46:No)、BTモジュール30はステップS40に戻ってRFCOMMデータ受信を繰り返す。そして、フリークレジットの値をインクリメントし(ステップS42)、代わりにカレントクレジットの値をデクリメントすると(ステップS44)、再びBTモジュール30は「コンディションA」の条件を満たすか否かを判断する。
【0077】
このように、カレントクレジットの値がTh1=「1」以下になり、かつ、フリークレジットの値がTh2=「6」以上になるまでの間、BTモジュール30はRFCOMMデータ受信を繰り返す。したがってリモートデバイスは、初期クレジットの値で与えられたカレントクレジットが残存しなくなるまでの間、ローカルデバイスに対してパケットデータを送信することができる。
【0078】
この後、カレントクレジットの値がTh1以下になり、かつ、フリークレジットの値がTh2以上になると、「コンディションA」の条件が満たされるので(ステップS46:Yes)、BTモジュール30は次にステップS48を実行する。
【0079】
ステップS48:ここでBTモジュール30は、クレジットとして「フリークレジットA」をリモートデバイスに送信する。このときの「フリークレジットA」は、現在の「フリークレジット」に等しい。したがって上記の例では「6」が送信されることになる。
【0080】
ステップS50:次にBTモジュール30は、フリークレジットの値を「0」にリセットする。
ステップS52:そしてBTモジュール30は、カレントクレジットの値=「1」に「フリークレジットA」=「6」を加算して、カレントクレジットの値を「7」に更新する。
【0081】
このように、「RFCOMMデータ受信及びクレジット送信処理1」では、以上の手順を繰り返しながら通信処理が行われる。
【0082】
〔通信処理シーケンス〕
図5は、「RFCOMMデータ受信及びクレジット送信処理1」による通信処理の流れを示すシーケンス図である。図5中、左側カラムにはローカルデバイス(BTモジュール30)による処理を示し、右側カラムにはリモートデバイス(例えば携帯機器18)による処理を示す。なお以下の説明では、それぞれを単にローカルデバイス、リモートデバイスと一般化して呼称する。
【0083】
ST1:シーケンス初期において、ローカルデバイスとリモートデバイスとの間でRFCOMM接続が完了する。
【0084】
ST2:ローカルデバイスのフリークレジットの値が「0」に設定される。
ST3:リモートデバイスにおいて、カレントクレジットの値はローカルデバイスの初期クレジットの値=「7」に設定される。この値は、これからローカルデバイスが受信可能なパケット数を指定したものである。RFCOMMプロトコルで規定されたクレジットベースドフローコントロールでは、リモートデバイスにおいてカレントクレジットの値が「0」になるまでの間、フレーム送信(パケットデータの送信)が可能である。
【0085】
ST4:このためリモートデバイスは、ローカルデバイスに対してパケットデータを送信する。
【0086】
ST5:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「1」にインクリメントする。
ST6:一方、リモートデバイスは、カレントクレジットの値を「7」から「6」にデクリメントする。
【0087】
ST7:未だカレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信する。
【0088】
ST8:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「2」にインクリメントする。
ST9:一方、リモートデバイスは、カレントクレジットの値を「5」にデクリメントする。
【0089】
ST10:未だカレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信する。
【0090】
ST11:以上の処理を繰り返し、ローカルデバイスのフリークレジットの値が「6」までインクリメントされる。
ST12:このときリモートデバイスは、カレントクレジットの値が「1」までデクリメントされている。
【0091】
ST13:ここで上記の「コンディションA」の条件が満たされるので、ローカルデバイスは「フリークレジットA」をリモートデバイスに送信する。
ST14:そしてローカルデバイスは、フリークレジットの値を「0」にリセットする。
【0092】
ST15:リモートデバイスは、カレントクレジットに「フリークレジットA」を加算し、カレントクレジットの値を「7」に更新する。
【0093】
ST16:「コンディションA」の条件は満たされなくなり、カレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信することができる。
【0094】
ST17:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「1」にインクリメントする。
ST18:一方、リモートデバイスは、カレントクレジットの値を「7」から「6」にデクリメントする。
【0095】
ST19:未だカレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信する。
【0096】
ST20:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「2」にインクリメントする。
ST21:一方、リモートデバイスは、カレントクレジットの値を「5」にデクリメントする。
【0097】
ST22:未だカレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信する。
【0098】
ST23:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「3」にインクリメントする。
ST24:一方、リモートデバイスは、カレントクレジットの値を「4」にデクリメントする。
【0099】
以下、所望量のデータ転送が完了するまでの間、同様にして通信処理のシーケンスが実行される。BTモジュール30は、図4の「RFCOMMデータ受信及びクレジット送信処理1」の実行中、例えばタイマ割り込みを発生させて所望量のデータ転送が完了したか否かを確認している。いずれかの割り込み周期でデータ転送が完了していれば、BTモジュール30は「RFCOMMデータ受信及びクレジット送信処理1」を抜けて図3の通信処理に復帰する。
【0100】
以上の通信処理シーケンスは、マルチプロファイル状態検知部48においてトリガ条件が満たされる前の内容であるが、トリガ条件が満たされた場合は以下の処理が実行される。
【0101】
〔RFCOMMデータ受信及びクレジット送信処理2〕
図6は、上記のステップS24で実行される「RFCOMMデータ受信及びクレジット送信処理2」の手順例を示すフローチャートである。以下、この処理について説明する。
【0102】
ステップS60:BTモジュール30は、ダイヤルアップやシリアルポートのデータアクセスに関する通信処理中に待機時間(例えば500msec)を挿入して待機する(待機工程)。
【0103】
ステップS62:待機時間が経過すると、BTモジュール30はRFCOMMデータ受信を開始する。
ステップS64:またBTモジュール30は、フリークレジットの値を「1」インクリメントする。これにより、前回のフリークレジットの値が1つ加算された状態となる。
【0104】
ステップS66:次にBTモジュール30は、リモートデバイスである携帯機器14〜18でのカレントクレジットの値を「1」デクリメントする。これにより、前回のカレントクレジットの値が1つ減算された状態となる。
【0105】
ステップS68:ここでBTモジュール30は、条件として「コンディションB」が満たされるか否かを判断する。ここでいう「コンディションB」は、例えば以下の内容とすることができる。
【0106】
カレントクレジット≦Th3 かつ フリークレジット≧Th4
ただし、Th3はTh1より小さく、またTh4はTh2より小さい値とする。ここでは例えば、Th3=0、Th4=1とする。
【0107】
特に「コンディションB」の条件が満たされない場合(ステップS68:No)、BTモジュール30はステップS60に戻って待機時間だけ待機した後、ステップS62に進んでRFCOMMデータ受信を繰り返す。そして、フリークレジットの値をインクリメントし(ステップS64)、代わりにカレントクレジットの値をデクリメントすると(ステップS66)、再びBTモジュール30は「コンディションB」の条件を満たすか否かを判断する。
【0108】
このように、カレントクレジットの値がTh3=「0」以下になり、かつ、フリークレジットの値がTh4=「1」以上になるまでの間、BTモジュール30はRFCOMMデータ受信を繰り返す。したがってリモートデバイスは、初期クレジットの値で与えられたカレントクレジットが残存しなくなるまでの間、ローカルデバイスに対してパケットデータを送信することができる。
【0109】
この後、カレントクレジットの値がTh3以下(=0)になり、かつ、フリークレジットの値がTh4以上(=1)になると、「コンディションB」の条件が満たされるので(ステップS68:Yes)、BTモジュール30は次にステップS70を実行する。
【0110】
ステップS70:ここでBTモジュール30は、クレジットとして「フリークレジットB」をリモートデバイスに送信する。このときの「フリークレジットB」は、Th4=「1」と同値である。したがって上記の例では「1」が送信されることになる。
【0111】
ステップS72:次にBTモジュール30は、フリークレジットの値を「0」にリセットする。
ステップS74:そしてBTモジュール30は、カレントクレジットの値=「0」に「フリークレジットB」=「1」を加算して、カレントクレジットの値を「1」に更新する。
【0112】
次にBTモジュール30がステップS62でRFCOMMデータ受信を行うと、ステップS64でフリークレジットの値が「1」となるが、ステップS66でカレントクレジットの値は1度のRFCOMMデータ受信で「0」になる。このためリモートデバイスは、ローカルデバイスに対してパケットデータを送信することができなくなり、ステップS70〜ステップS74を経てステップS60に戻ることになる。そして、ステップS60で待機時間を待機し、次のRFCOMMデータ受信を行う。
【0113】
このように、「RFCOMMデータ受信及びクレジット送信処理2」では、以上の手順を繰り返しながら通信処理が行われるが、この間、カレントクレジットの値は最大で「1」にしかならないので、ローカルデバイスが受信可能なパケット数が減少する(減少工程)。また、RFCOMMデータ受信を1度行うごとに待機時間が挿入されるため、それだけ通信処理にかかる時間が遅延する(待機工程)。
【0114】
〔通信処理シーケンス〕
図7は、「RFCOMMデータ受信及びクレジット送信処理2」による通信処理の流れを示すシーケンス図である。
【0115】
ST50:シーケンス初期において、ローカルデバイスとリモートデバイスとの間でRFCOMM接続が完了する。
【0116】
ST51:ローカルデバイスのフリークレジットの値が「0」に設定される。
ST52:リモートデバイスにおいて、カレントクレジットの値はローカルデバイスの初期クレジットの値=「7」に設定される。この値は、上記と同様にこれからローカルデバイスが受信可能なパケット数を指定したものである。
【0117】
ST53:リモートデバイスは、ローカルデバイスに対してパケットデータを送信する。
【0118】
ST54:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「1」にインクリメントする。
ST55:一方、リモートデバイスは、カレントクレジットの値を「7」から「6」にデクリメントする。
【0119】
ST56:未だカレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信する。
【0120】
ST57:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「2」にインクリメントする。
ST58:一方、リモートデバイスは、カレントクレジットの値を「5」にデクリメントする。
【0121】
ST59:未だカレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信する。
【0122】
ST60:以上の処理を繰り返し、ローカルデバイスのフリークレジットの値が「7」までインクリメントされる。
ST61:このときリモートデバイスは、カレントクレジットの値が「0」までデクリメントされている。したがって、リモートデバイスはこれ以上、パケットデータを送信することができない。
【0123】
ST62:ここでローカルデバイスは、設定した待機時間を待機する。
ST63:上記の「コンディションB」の条件が満たされるので、ローカルデバイスは「フリークレジットB」をリモートデバイスに送信する。
ST64:そしてローカルデバイスは、フリークレジットの値を「0」にリセットする。
【0124】
ST65:リモートデバイスは、カレントクレジットに「フリークレジットB」を加算し、カレントクレジットの値を「1」に更新する。
【0125】
ST66:「コンディションB」の条件は満たされなくなり、カレントクレジットが残存しているので、リモートデバイスはパケットデータをローカルデバイスに対して送信することができる。
【0126】
ST67:RFCOMMデータ受信を行うと、ローカルデバイスはフリークレジットの値を「1」にインクリメントする。
ST68:一方、リモートデバイスは、カレントクレジットの値を「1」から「0」にデクリメントする。これにより、リモートデバイスはこれ以上、パケットデータを送信することができなくなる。
【0127】
ST69:ここでローカルデバイスは、また設定した待機時間を待機する。
ST70:上記の「コンディションB」の条件が満たされるので、ローカルデバイスは「フリークレジットB」をリモートデバイスに送信する。
【0128】
ST71:そしてローカルデバイスは、フリークレジットの値を「0」にリセットする。
ST72:リモートデバイスは、カレントクレジットに「フリークレジットB」を加算し、カレントクレジットの値を「1」に更新する。これにより、リモートデバイスは1パケット分だけデータを送信することが可能になる。
【0129】
以下、所望量のデータ転送が完了するまでの間、同様にして通信処理のシーケンスが実行される。BTモジュール30は、図6の「RFCOMMデータ受信及びクレジット送信処理2」の実行中、例えばタイマ割り込みを発生させて所望量のデータ転送が完了したか否かを確認している。いずれかの割り込み周期でデータ転送が完了していれば、BTモジュール30は「RFCOMMデータ受信及びクレジット送信処理2」を抜けて図3の通信処理に復帰する。
【0130】
ただし、「RFCOMMデータ受信及びクレジット送信処理2」の実行中は1回のRFCOMMデータ受信ごとに待機時間が挿入されるので、相対的に別の通信プロファイルを用いた通信処理に割り当てられる時間が長くなる。また、1回のRFCOMMデータ受信が可能なパケット数が減少するため、別の通信プロファイルを用いた通信処理(特に図示していない)について相対的にパケット数が増加し、それだけデータ受信帯域が広げられることとなる。
【0131】
〔RFCOMMデータ受信及びクレジット送信補正処理〕
次に図8は、「RFCOMMデータ受信及びクレジット送信補正処理」の手順例を示すフローチャートである。この処理は、図3の通信処理において「コンディションC」のトリガ条件が満たされた後、この条件が満たされなくなった場合に実行される。
【0132】
ステップS80:ここでもBTモジュール30は、RFCOMMデータ受信を実行する。
ステップS82:またBTモジュール30は、フリークレジットの値を「1」インクリメントする。これにより、前回のフリークレジットの値が1つ加算された状態となる。
【0133】
ステップS84:次にBTモジュール30は、リモートデバイスでのカレントクレジットの値を「1」デクリメントする。
【0134】
ステップS86:ここでBTモジュール30は、条件として「コンディションD」が満たされるか否かを判断する。なお「コンディションD」は、例えば以下の内容とすることができる。
【0135】
カレントクレジット=「0」
【0136】
特に「コンディションD」の条件(つまりカレントクレジット=0)が満たされない場合(ステップS86:No)、BTモジュール30はステップS80に戻ってRFCOMMデータ受信を繰り返す。そして、フリークレジットの値をインクリメントし(ステップS82)、代わりにカレントクレジットの値をデクリメントすると(ステップS84)、再びBTモジュール30は「コンディションD」の条件を満たすか否かを判断する。
【0137】
このように、カレントクレジットの値が「0」になるまでの間、BTモジュール30はRFCOMMデータ受信を繰り返す。したがってリモートデバイスは、初期クレジットの値で与えられたカレントクレジットが残存しなくなるまでの間、ローカルデバイスに対してパケットデータを送信することができる。
【0138】
この後、カレントクレジットの値が「0」になると、「コンディションD」の条件が満たされるので(ステップS86:Yes)、BTモジュール30は次にステップS88を実行する。
【0139】
ステップS88:ここでBTモジュール30は、クレジットとして「フリークレジットD」をリモートデバイスに送信する。このときの「フリークレジットD」は、ローカルデバイスの初期クレジットに等しい。したがって上記の例では「7」が送信されることになる。
【0140】
ステップS90:次にBTモジュール30は、フリークレジットの値を「0」にリセットする。
ステップS92:そしてBTモジュール30は、カレントクレジットの値=「0」に「フリークレジットD」=「7」を加算して、カレントクレジットの値を「7」に更新する。
【0141】
ステップS94:BTモジュール30は「モード1」を設定し、図3の通信処理に復帰する。
【0142】
この後、「モード1」が設定されているので、次にトリガ条件が満たされるまでの間(図3のステップS18:No、ステップS20:Yes)、「RFCOMMデータ受信及びクレジット送信処理1」が実行されることになる。
【0143】
以上のように本実施形態では、マルチプロファイル状態検知部48にトリガとなる条件を付与し、通信状態が変化するごとに「RFCOMMデータ受信及びクレジット送信処理1」と「RFCOMMデータ受信及びクレジット送信処理2」とを動的に切り替えることにより、ダイアルアップやシリアルポートを用いたアプリケーションによるデータアクセス中の受信帯域を他のアプリケーションに割り当てることが可能となる。
【0144】
また、「RFCOMMデータ受信及びクレジット送信処理2」の実行中にマルチプロファイル状態検知部48がオーディオアプリケーションの状態を「再生中」から「停止中」に遷移したことを検知した場合、あるいは、「RFCOMMデータ受信及びクレジット送信処理2」の実行中にマルチプロファイル状態検知部48がハンズフリーアプリケーションの状態を「通話中」から「SLC接続中」に遷移したことを検知した場合、図8の「補正処理」を経て「RFCOMMデータ受信及びクレジット送信処理1」に切り替え、できるだけデータ受信のスループットを優先することができる。
【0145】
〔製品市場での有用性〕
特に近年のBT通信のユーザーシナリオにおいては、マルチコネクションやマルチプロファイルでの動作及び品質の向上が製品市場から求められている。その中で個々のプロファイル(アプリケーション)によっては、音声通話やオーディオ伝送等、リアルタイム性や音質を厳しく問われる要素と、ダイアルアップ(DUN/SPP)のように、ベストエフォート型データ通信の要素に大別することができるが、これらを最大限に共存させるため、送信/受信帯域の制御が課題となっている。
【0146】
本実施形態の通信方法では、リアルタイム性や品質が求められる要素とベストエフォート型データ通信の要素が同時並行して通信を実行中に、前者が通話中又はオーディオ再生中の状態になったことを検出した場合、後者の要素に関してクレジット数及びその送信条件、送信方法を適応的に変更することができ、それにより受信可能なパケット数を制限し、結果として後者の要素に関して受信帯域を相対的に減少させ、逆に前者のリアルタイム性及び音質を可能な限り改善する効果がある。
【0147】
また、前者の通信において終話又はオーディオ停止の状態を検出した場合、本来の通信処理に復帰させることによって受信帯域を可能な限り増加させ、データ受信のスループットを確保することができる。
【0148】
本発明は上述した実施形態に制約されることなく、各種の変形を伴って実施することができる。一実施形態で挙げたBTモジュール30の構成はあくまで機能的なブロック要素の例示であり、これらの機能をマイクロコンピュータ(CPU)のリソースで全て賄い、それぞれの機能をアプリケーションで実現してもよい。
【0149】
また、一実施形態では通信処理を優先するものとしてオーディオデータや音声通話データ等を例に挙げているが、映像データを転送する際にも本発明の通信方法を適用することができる。
【図面の簡単な説明】
【0150】
【図1】通信システムの構成例を概略的に示す図である。
【図2】BTモジュールのハード構成例を概略的に示すブロック図である。
【図3】BTモジュール30が実行する通信処理の手順例を示したフローチャートである。
【図4】「RFCOMMデータ受信及びクレジット送信処理1」の手順例を示すフローチャートである。
【図5】「RFCOMMデータ受信及びクレジット送信処理1」による通信処理の流れを示すシーケンス図である。
【図6】「RFCOMMデータ受信及びクレジット送信処理2」の手順例を示すフローチャートである。
【図7】「RFCOMMデータ受信及びクレジット送信処理2」による通信処理の流れを示すシーケンス図である。
【図8】「RFCOMMデータ受信及びクレジット送信補正処理」の手順例を示すフローチャートである。
【符号の説明】
【0151】
10 通信システム
12 車載ユニット
14,16,18 携帯機器
30 BTモジュール
44 クレジット送信処理部
46 DUN/SPPデータ送信処理部
48 マルチプロファイル状態検知部
50 他プロファイルデータ送信処理部
52 DUN/SPPデータ受信処理部
54 他プロファイルデータ受信処理部


【特許請求の範囲】
【請求項1】
複数の通信プロファイルを用いて通信する機能を有したローカルデバイス及びリモートデバイスから構成される通信システム内で、ローカルデバイスとリモートデバイスとの通信開始時に予めローカルデバイスが受信可能なパケット数をリモートデバイスに通知し、この通知されたパケット数分のデータをリモートデバイスからローカルデバイスに送信してローカルデバイスで受信する通信処理を繰り返しながら所望量のパケットデータを送受信するパケット通信方法において、
ローカルデバイスがいずれかのリモートデバイスとの間で前記通信処理を実行する際、複数ある通信プロファイルの中でいずれの通信プロファイルを用いて前記通信処理が実行されているかを検出する工程と、
ローカルデバイスが特定のリモートデバイスとの間で前記通信処理を実行中に、同じ特定のリモートデバイスか、もしくは別のリモートデバイスとの間で現在とは異なる別の通信プロファイルを用いて別の前記通信処理が実行されたことを検出した場合、現在実行中の前記通信処理の中でローカルデバイスが前記特定のリモートデバイスに通知する受信可能なパケット数を減少させることにより、別の通信プロファイルを用いた前記通信処理の中でローカルデバイスが受信可能なパケット数を相対的に増加させる工程と
を有するパケット通信方法。
【請求項2】
請求項1に記載のパケット通信方法において、
ローカルデバイスが特定のリモートデバイスとの間で前記通信処理を実行中に、同じ特定のリモートデバイスか、もしくは別のリモートデバイスとの間で現在とは異なる別の通信プロファイルを用いて別の前記通信処理が実行されたことを検出した場合、現在実行中の前記通信処理の中に待機時間を挿入する工程をさらに有するパケット通信方法。
【請求項3】
請求項2に記載のパケット通信方法において、
前記待機時間を挿入する工程では、
現在実行中の前記通信処理の中でローカルデバイスが前記特定のリモートデバイスに受信可能なパケット数を通知する前に待機時間を挿入することを特徴とするパケット通信方法。
【請求項4】
請求項1から3のいずれかに記載のパケット通信方法において、
前記パケット数を相対的に増加させる工程では、
現在の通信プロファイルに比較して別の通信プロファイルの方がよりリアルタイム性を要求されるものである場合に現在実行中の前記通信処理の中でパケット数を減少させることを特徴とするパケット通信方法。
【請求項5】
請求項1から3のいずれかに記載のパケット通信方法において、
前記パケット数を相対的に増加させる工程では、
別の通信プロファイルがオーディオデータ又は音声通話データをローカルデバイスで受信する場合に使用されるものであるか、もしくは、所定時間内にリモートデバイスからローカルデバイスへのデータ転送を完了させる必要がある場合に使用されるものであるかのいずれかである場合、現在実行中の前記通信処理の中でパケット数を減少させることを特徴とするパケット通信方法。
【請求項6】
請求項1から5のいずれかに記載のパケット通信方法において、
前記通信処理は、
特定の短距離無線通信規格におけるRFCOMMプロトコルにより定義されたクレジットベースドフローコントロールに則り、ローカルデバイスが受信可能なパケット数をクレジット数としてローカルデバイスからリモートデバイスに通知する手順と、
リモートデバイスからパケットデータをローカルデバイスに送信するごとにリモートデバイスにおいてクレジット数を減少させる手順とを含み、
前記クレジット数がリモートデバイスにおいて残存している間はリモートデバイスからローカルデバイスに対してパケットデータの送信が可能である一方、前記クレジット数が残存しなくなるとリモートデバイスからローカルデバイスからリモートデバイスへのパケットデータの送信が不可となることを特徴とするパケット通信方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2010−153995(P2010−153995A)
【公開日】平成22年7月8日(2010.7.8)
【国際特許分類】
【出願番号】特願2008−327348(P2008−327348)
【出願日】平成20年12月24日(2008.12.24)
【出願人】(000010098)アルプス電気株式会社 (4,263)
【Fターム(参考)】