(実施の形態1)
以下、本発明の実施の形態に係る通信システムを、図面を参照しながら説明する。ここでは、商品を購入する顧客が、電子マネーによる決済を行うことができる電子マネー決済システムを例に通信システムを説明する。
図1に、本発明の実施の形態に係る通信システム1000の構成を示す。通信システム1000は、ユーザ(顧客)が所持するスマートフォン等の携帯通信端末100(第1の通信端末)と、店舗1に設置された決済端末200(第2の通信端末)と、決済端末200にネットワーク2を介して通信可能に接続された決済サーバ300と、を含む。携帯通信端末100と決済端末200とは、音声を伝送媒体として相互に通信する。このようにして、携帯通信端末100と決済端末200とは相互に通信する。音声を伝送媒体とした通信の詳細は後述する。
まず、商品購入時の決済の流れを説明する。この実施の形態では、プリペイド型の電子マネーを想定し、ユーザ(顧客)は、例えば、電子マネー事業者が運営するオンライン上のシステムを経由して、所望の金額をチャージ(入金)しておく。ユーザ(顧客)はチャージされている残高を上限として、商品購入の決済に、電子マネーを使用することができる。電子マネーによる決済の際には、携帯通信端末100がユーザ(顧客)を識別する情報を決済端末200に送信する。
商品購入の際に、ユーザ(顧客)は、ユーザの操作に応答して、音声を使用した通信により、ユーザIDを携帯通信端末100から決済端末200に送信する。決済端末200は、送信されたユーザIDを受信し、ユーザIDと決済金額とを、ネットワーク2を介して決済サーバ300に送信する。決済サーバ300は、ユーザIDに基づいて、ユーザが電子マネーの正当な利用者であるか否か判別し(認証し)、ユーザの認証に成功すると、ユーザがチャージ済みの電子マネーの残高から決済金額を引き落とす処理(決済)を行う。その後、決済サーバ300は、認証と決済の結果を決済端末200に通知する。決済端末200は、決済の内容を表示し、また、レシートを発行する。
続いて、各装置の構成を説明する。まず、携帯通信端末100の構成を説明する。実施の形態1においては携帯通信端末100としてスマートフォンを想定する。図2(a)は、携帯通信端末100のハードウェア構成を示すブロック図である。携帯通信端末100は、スマートフォンが従来備えている携帯電話としての機能、インターネットアクセスに関する機能等を備えているものとし、これらの機能についての説明を省略する。
携帯通信端末100は、操作部110と、表示部120と、集音部130と、発音部140と、記憶部150と、送受信部160、制御部170と、を備える。各部はバス190で相互に接続されている。
操作部110は、ユーザの操作を受け付け、受け付けた操作に対応する操作信号を制御部170に供給する。操作部110は、例えば、音量ボタン、タッチパネルを含む。
表示部120は、制御部170から供給される画像データ及び画面データに基づいて、各種画像、各種画面を表示する。表示部120は、表示パネルと表示パネル駆動回路から構成される。表示パネル駆動回路は、制御部170から供給される画像データに従って表示パネルを駆動し、表示パネルに画像を表示させる。表示パネルは、液晶パネル、有機EL(Electro Luminescence)パネルによって実現される。
なお、操作部110と表示部120とは、タッチパネルによって構成されてもよい。タッチパネルは、所定の操作を受け付ける操作画面を表示すると共に、操作画面においてユーザが接触操作を行った位置に対応する操作信号を制御部170に供給する。
集音部130は、マイク131を含み、制御部170の制御に従って、空気の振動(音)を電気信号に変え、これをA/D(アナログ/デジタル)変換して、デジタル化された音声のデータを受信部162に供給する。
発音部140は、送信部161から供給された送信対象のデジタルデータでキャリア信号を変調して得られたデジタル信号をD/A(デジタル/アナログ)変換し、スピーカ141に供給する。これにより、送信対象のデジタルデータが空気振動(音)に変換され、出力される。
記憶部150は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスク装置等を備え、各種の固定データ、画面データ、制御部170が実行するためのプログラム等を記憶する。また、記憶部150は、制御部170が処理を実行する際のワークメモリとして機能する。
また、記憶部150は、制御部170が実行する決済に係る処理を実行するための決済処理プログラム152を記憶する。さらに、記憶部150は、シンボルの送信順序を定義した送信順序定義情報153を記憶する(図2(b))。シンボルの送信順序については後述する。さらに、記憶部150は、受信信号の復調の処理の際に使用する重み付け定義情報154を記憶する(図2(c))。重み付け定義情報154は、後述する復調処理の際に使用される、受信信号強度と重み付けの係数とが対応付けられた情報を含む。
並び替え定義情報155は、後述するインターリーブの処理に使用される情報であり、パケットを所定サイズに分割して得られた各データを周波数方向及び時間軸方向で並び替える順番(ルール)を定義する。
参照帯域定義情報156は、集音部130で集音した音声信号がインパルスノイズを含んでいるか否かを判別するために参照する参照帯域(参照周波数帯域、リファレンス帯域)を定義するデータである。具体的には、参照帯域定義情報156は、通信に使用する信号帯域15.9〜19.9kHzに隣接する2つの参照帯域13.9〜15.9kHzと19.9〜21.9kHzを定義する。なお、参照帯域は、任意の周波数帯域に設定可能である。
ノイズ判定閾値157は、受信した音声信号がインパルスノイズを含んでいるか否かを判別するための閾値データである。具体的には、受信した音声のうちの、信号帯域15.9〜19.9kHzの音声の音量Isに対する参照帯域13.9〜15.9kHzと19.9〜21.9kHzの音声の音量Irの大きさ(Ir/Is)がノイズ判定閾値よりよりも大きいときに、受信した音声信号にインパルスノイズが含まれていると判定される。なお、他の手法、例えば、Isが第1の閾値TH1より大きく、且つ、Irが第2の閾値TH2より大きいときにインパルスノイズが含まれていると判定するような手法を採用してもよい。
送受信部160は、送信部161と受信部162とを含み、制御部170の制御に従って、携帯通信端末100が、送受信する信号の信号処理を実行する。詳しくは後述するが、送受信部160は、制御部170と協働して、送信対象のデータで、音声信号から構成されるマルチキャリアを変調して送信用の音声信号に変換し、受信した音声信号を復調してデータに変換する変換部として機能する。送受信部160は、例えば、CPU(Central Processing Unit)によって実現されてもよいし、あるいは、DSP(Digital Signal Processor)等のプロセッサによって実現されてもよい。
本実施の形態においては、キャリアとして非可聴帯域の音声信号を使用する。従って、携帯通信端末100、決済端末200が出力する信号は、人間にはほぼ聞こえない。これは、可聴帯域の音声信号が送受信されると、当該音声信号はユーザにとって雑音と感じられることが想定され、ユーザに不快感をおこさせないためである。
送信部161は、制御部170から供給されたデータでキャリアを変調し、変調した信号を発音部140に出力する。
受信部162は、マイク131から供給された電気信号から、受信した信号を復調し、復調した信号(受信データ)を制御部170に出力する。
ここで、携帯通信端末100の音声を伝送媒体とした通信において採用する通信方式を説明する。携帯通信端末100は、直行周波数分割多重変調(Orthogonal Frequency-Division Multiplexing:OFDM)を採用する。OFDMは、マルチキャリア伝送の一方式であり、所定の周波数の範囲内において、複数の搬送波を、隣接の搬送波と干渉しないように密に並べ、限られた周波数の範囲を効率的よく利用する。OFDMを使用することで、占有周波数帯域をそれほど肥大化させることなく、マルチキャリア化することが可能である。OFDMの変調のためIFFT(Inverse Fast Fourier Transform:逆フーリエ変換)が、復調のためFFT(Fast Fourier Transform:フーリエ変換)が使用されることが一般的である。このIFFTとFFTは1シンボル区間ごとに行う。
OFDMはマルチキャリア伝送の方式であるため、各搬送波(サブキャリア)の変調方式(一次変調方式)として任意のものを選択することができる。ここでは、差動四位相偏移変調(Differential Quadrature Phase Shift Keying:DQPSK)を使用して、各搬送波(サブキャリア)を変調する。DQPSKでは、4段階に位相をずらした4つの波を使用し、それぞれに別の値を割り当てる。このため、DQPSKでは、1サブキャリアの1シンボル区間で4値(2ビット)の情報を表すことができる。DQPSKは直前のシンボルとの差分を利用して情報を伝送するため、一番初めに基準となる位相のシンボルを送出する。
上記構成を実現するため、送信部161、受信部162は、以下のような回路を有する。まず、図3(a)に、送信部161が有する回路の構成の一例を示す。送信部161は、マッピング回路1611、サブキャリア変調回路1612、IFFT回路1613、周波数変換回路1614を含む。
制御部170は、送信するデータ系列を処理して所定のサイズ(2ビット)のデータに分割し、分割した各データをマッピング回路1611に供給する。マッピング回路1611は、分割した各データを各サブキャリアと各シンボル区間にマッピングする。上述のように、サブキャリアはDQPSKで変調されるため、1つのサブキャリアの1シンボル区間には、2ビットが割り当てられる。マッピング回路1611は、後述するインターリーブ処理も実行する。その後、サブキャリア変調回路1612で、サブキャリアはDQPSKにより変調され、IFFT回路1613で逆離散フーリエ変換されて時間信号に変換されることで、周波数変換回路1614で対象の音声周波帯にコンバートされ、発音部140に出力される。
図3(b)に、受信部162が有する回路の構成の一例を示す。受信部162は、周波数変換回路1621、FFT回路1622、デマッピング回路1623、復調回路1624を含む。マイク131により集音された音声は、周波数変換回路1621で所定の周波数帯にコンバートされ、FFT回路1622で離散フーリエ変換された周波数領域のデータに戻される。その後、デマッピング回路1623で、各サブキャリアと各シンボル区間の周波数領域に変換されたデータ(コンスタレーション)を時間軸上と周波数軸上で並び替えて、元の並びに復元し、復調回路1624で、これらのコンスタレーションから各2ビットデータをDQPSKに対応する復調方式で復調し、制御部170に出力する。デマッピング回路1623は、後述するデインターリーブ処理も実行する。
再び、図2(a)を参照する。制御部170は、例えば、CPUを備え、携帯通信端末100の各部の制御を行う。制御部170は、記憶部150に記憶されている決済処理プログラム152を実行することにより、音声信号の通信を使用した決済に係る処理を実行する。
制御部170は、決済に係る処理において、送信部161を制御して、記憶部150に格納されているユーザID151を含む送信データを生成し、送信部161、発音部140を制御して、送信データを音声信号に変換して、音声をスピーカ141から出力する。制御部170が送信部161に供給する送信データのパケットのフォーマットの一例を図4に示す。
送信データは、ヘッダ部とデータ部とからなる。図4(a)に示すように、ヘッダ部は32bitのビット列とCRC(Cyclic Redundancy Check)から構成される。modeは、送信データが、制御用のデータであるか否かを示す。versionは、バージョン情報を示す。serviceは、サービス用に予約された領域である。reserveは、特別の用途のために予約された領域である。lengthは、データペイロードのバイト長を示す。CRCは、ヘッダ部(modeからlength)のデータの誤り検出のために付加されている。ここでは、CRC16を使用する。受信側では、CRC16によりヘッダ部の誤り検出を行う。
図4(b)に示すように、データ部は、0〜255バイトの可変長のビット列とCRCから構成される。Dataは、ペイロードを示す。なお、Dataはバイト単位(8bit単位)のデータからなる。ユーザIDを送信する際には、DataにユーザIDを示す情報が埋め込まれる。CRCは、Data(ペイロード)部分の誤り検出のために付加されている。ここでは、CRC32を使用する。さらに、data部分とCRC32に対して、畳み込み符号化をして、誤りを訂正できるようにする。畳み込み符号化すると、data部分とCRC32を足した長さの約2倍の長さとなる。受信側では、まず、畳み込み符号を使用して、誤り訂正を行う。ここでは、間違った訂正をすることがあり、さらに、CRC32によりdata部分の誤り検出を行う。
続いて、図1に示す決済端末200の構成を説明する。決済端末200は、店舗1のレジの横に設置されており、携帯通信端末100と音声信号による通信を行う。例えば、決済端末200は、ユーザが電子マネーでの支払いを希望した場合に、携帯通信端末100からユーザIDを示す音声信号を受信する。決済端末200は、受信したユーザIDと店員の操作により入力された決済金額と、を決済サーバ300に送信することで、決済サーバ300に認証と決済の処理の実行を依頼する。決済端末200は、決済サーバ300からの認証と決済の処理の結果を受信すると、受信した結果をユーザに視認可能な態様で通知する。
図5は、決済端末200のハードウェア構成を示すブロック図である。決済端末200は、操作部210と、表示部220と、集音部230と、発音部240と、記憶部250と、送受信部260、制御部270、通信部280と、を備える。各部はバス290で相互に接続されている。
操作部210は、例えば、店員の操作を受け付け、受け付けた操作に対応する操作信号を制御部270に供給する。操作部210は、例えば、音量ボタン、タッチパネルを含む。タッチパネルは、例えば、図1に示すように、決済端末200の前面に設けられていてもよい。また、操作部210は、例えば、USB(Universal Serial Bus)ケーブルにより決済端末200本体に接続された外付けのテンキー(図1においては図示なし)を含んでいてもよい。
表示部220は、制御部270から供給される各種画像データや各種画面データ等に基づいて各種画像や各種画面等を表示する。表示部220は、例えば、表示パネルと表示パネル駆動回路等によって構成される。表示パネル駆動回路は、制御部270から供給される画像データに従って表示パネルを駆動し、表示パネルに画像を表示させる。表示パネルは、液晶パネル、有機ELパネルによって実現される。表示パネルは、例えば、図1に示すように、決済端末200の前面に設けられたタッチパネルによって実現されてもよい。
集音部230は、マイク231を含み、制御部270の制御に従って、空気の振動(音)を電気信号に変え、これをA/D変換して、デジタル化された音声のデータを受信部262に供給する。マイク231は、例えば、図1に示すように、決済端末200の前面に設けられていてもよい。
発音部240は、制御部270の制御に従って、送信部261から供給された送信対象のデジタルデータをD/A変換し、得られたアナログ信号でスピーカ241に供給する。これにより、送信対象のデジタルデータが空気振動(音)に変換され、出力される。スピーカ241は、例えば、決済端末200の上面に設けられる。
記憶部250は、制御部270が動作するためのメインメモリ及びワークメモリとして機能する。記憶部250は、例えば、ハードディスク、フラッシュメモリ、RAM、ROM等のメモリ装置を含む。記憶部250は、各種の情報、固定データ、アプリケーション、画面データ、及び、制御部270によって実行される動作プログラム等を記憶する。また、記憶部250は、決済端末200と携帯通信端末100との間で送受信されるデータ、決済端末200と決済サーバ300との間で送受信されるデータを一時的に記憶する。
また、記憶部250は、制御部270が実行する決済に係る処理を実行するための決済処理プログラム251を記憶する。さらに、記憶部250は、携帯通信端末100と同様に、シンボルの送信順序を定義した送信順序定義情報252、重み付け定義情報253、並び替え定義情報254、参照帯域定義情報255、ノイズ判定閾値256、を記憶する。
記憶部250に記憶されている送信順序定義情報252、重み付け定義情報253、並び替え定義情報254、参照帯域定義情報255、ノイズ判定閾値256は、基本的には、携帯通信端末100の記憶部150に記憶されている送信順序定義情報153、重み付け定義情報154、並び替え定義情報155、参照帯域定義情報156、ノイズ判定閾値157と同様のものである。
送受信部260は、送信部261と受信部262とを含み、制御部270の制御に従って、送受信する信号の信号処理を実行する。詳しくは後述するが、送受信部260は、制御部270と協働して、送信データを送信用の信号に変換し、受信した信号を受信データに変換する変換部として機能する。送受信部260は、例えば、CPUによって実現されてもよいし、あるいは、DSP等のプロセッサによって実現されてもよい。
送信部261は、制御部270から供給された送信データでキャリアを変調し、変調した信号を発音部240に出力する。従って、送信する情報で変調した音声信号がスピーカ241から出力される。
受信部262は、マイク231から供給された電気信号から、受信した信号を復調し、復調した信号を制御部270に出力する。決済端末200の音声を伝送媒体とした通信の方式は、携帯通信端末100と同様である。決済端末200は、音声信号を使用した通信においては、直行周波数分割多重変調を採用する。送信部261、受信部262は、図3(a)、(b)に示した携帯通信端末100の送信部161、受信部162と同様の構成を有する。
制御部270は、例えば、CPU等を備え、決済端末200の各部の制御を行う。制御部270は、記憶部250に記憶されている決済処理プログラム251を実行することにより、音声信号の通信を使用した決済に係る処理を実行する。
通信部280は、インターネット等の通信ネットワークに接続することが可能なインターフェースである。通信部280は、ネットワーク2を介して、後述の決済サーバ300の通信部310と通信する。
なお、制御部270が送受信するデータも、図4に例示した構成を有する。
続いて、決済サーバ300の構成を説明する。決済サーバ300は、店舗1とは異なる場所に設置された装置、例えば、汎用コンピュータである。決済サーバ300は、決済端末200からネットワーク2を介して、ユーザIDと決済金額を受信すると、認証を含む決済の処理を実行し、処理の結果を決済端末200に送信する。
図6は、決済サーバ300のハードウェア構成を示すブロック図である。決済サーバ300は、通信部310と、記憶部320と、制御部330、を備える。各部はバス390で相互に接続されている。決済サーバ300は、コンピュータが従来備えている機能を備えているものとし、従来の機能については説明を省略する。
通信部310は、インターネット等の通信ネットワークに接続することが可能なインターフェースである。通信部310は、ネットワーク2を介して、前述の決済端末200の通信部280と通信する。
記憶部320は、制御部330が動作するためのメインメモリ及びワークメモリとして機能する。記憶部320は、例えば、ハードディスク、フラッシュメモリ、RAM、ROM等のメモリ装置を含む。記憶部320は、各種の情報、固定データ、アプリケーション、画面データ、及び、制御部330によって実行される動作プログラム等を記憶する。
また、記憶部320は、制御部330が実行する決済に係る処理を実行するための決済処理プログラム321を記憶する。さらに、記憶部320は、決済の処理のため、通信システム1000を利用するユーザの情報(ユーザID、ユーザがチャージ済みの残高の金額等)を格納するユーザテーブル322を有する。なお、ユーザテーブル322には、最新のアカウントの情報が格納されている必要があるため、電子マネー事業者が運営する電子マネー決済システムが管理するデータと連携されている。
制御部330は、例えば、CPU等を備え、決済サーバ300の各部の制御を行う。制御部330は、記憶部320に記憶されている決済処理プログラム321を実行することにより、決済に係る処理を実行する。
次に、携帯通信端末100と決済端末200とが、インパルスノイズの悪影響を抑えるために、実行する特徴的な送受信処理を説明する。以下、携帯通信端末100が送信側、決済端末200が受信側である時の動作を説明する。
携帯通信端末100は、送信時には、第1の音声周波数帯域である15.9kHz〜17.9kHz(以下、ローバンドという場合がある)、第2の音声周波数帯域である17.9kHz〜19.9kHz(以下、ハイバンドという場合がある)の2つの帯域において、それぞれ同じデータを送信する。従って、例えば、送信データがシンボルD1〜D6とすると、制御部170は、ローバンドとハイバンドにそれぞれ、シンボルD1〜D6を割り当てる。なお、第1の音声周波数帯域の信号及び第2の音声周波数帯域の信号は、送信データをそれぞれ第1の音声信号及び第2の音声信号に載せている。
次に、制御部170は、図2(b)に示す送信順序定義情報153に基づいて、ローバンドとハイバンド内で、それぞれ、送信対象のシンボルD1〜D6を時間軸方向に順番を並び変える。図2(b)の送信順序定義情報153の例では、ローバンドの送信順が「後半→前半」なっている。このため、制御部170は、ローバンドに割り当てられているシンボルD1〜D6を前半と後半で2分割(D1〜D3、D4〜D6)し、図7に示すように、分割した後半のグループ(D4〜D6)を先に送信される位置に配置し、前半のグループ(D1〜D3)を後に送信される位置に配置する。
一方、送信順序定義情報153の例では、ハイバンドの送信順が「前半→後半」なっている、このため、制御部170は、ハイバンドにおいては、シンボルD1〜D6の順序を変更しない。
次に、制御部170は、各パケットを構成するデータを、サブキャリアに割り当てる。
前述のように、この例では、信号帯域は15.9kHz〜19.9kHzであり、サブキャリアの数(チャネル数)は128とする。使用する帯域の両端に割り当てられるチャネルは、フィルタ等の特性変化を受けやすいため使用せず、実質的には126チャネルをデータ送信のために使用する。
よって、ローバンドが63サブチャネル(126チャネルの半分)、ハイバンドが63サブチャネル(126チャネルの半分)を含む。
本実施形態では、DQPSK変調方式を採用するので、1つのサブキャリアの1シンボル区間に2ビットを割り当てる。そこで、制御部170は、図8(a)に模式的に示すように、ローバンドとハイバンドの各サブキャリアに、符号A〜Gで表す2ビット単位で、シンボルD1〜D6を構成するデータを割り当てる。例えば、A1、B1、…、G1はD1に、A2、B2、…、G2はD2にそれぞれ対応する。また、ローバンドでは、図7に示したように、後半のデータを先に送信するため、各サブキャリアに割り当てるデータも、後半のデータが先になる。また、図8では、図面をわかりやすくするため、ローバンドとハイバンドそれぞれ7チャネル分のみ示し、各サブキャリアに割り当てた2ビットのデータを符号A〜Gで示す。また、符号A〜Gに付した数字はシンボルの番号を示す。また、図8では、ローバンドとハイバンドそれぞれに6個のシンボルを配置しているが、例示であり、シンボルの個数はパケットのサイズに応じて変化する。
続いて、送信部161のマッピング回路1611は、ローバンドとハイバンドそれぞれで、データをインターリーブする。より具体的には、図8(b)に示すように、並び替え定義情報155に従って、データを周波数方向で並び替える。図示する例では、送信タイミング毎に、ローバンドとハイバンドの範囲内で、1シンボル区間内の各サブキャリアの2ビット単位のデータを周波数軸上で並び替える。
マッピング回路1611は、その後、図8(c)に示すように、並び替え定義情報155に従って、各サブキャリア内の2ビット単位のデータの送信順序を並び替える。ただし、ローバンドは送信データ群のうちの後半を先に送信し、前半を後に送信し、ハイバンドは送信データ群のうちの前半を先に送信し、後半を後に送信するという送信順序定義情報153で規定されている条件は維持する。
マッピング回路1611は、インターリーブした送信データをサブキャリア変調回路1612に出力する。
サブキャリア変調回路1612は、並び替えられた各2ビットデータで各サブキャリアをDQPSK変調する。
IFFT回路1613は、DQPSK変調された各サブキャリアを逆フーリエ変換する。
周波数変換回路1614は、逆フーリエ変換されたサブキャリアを、信号帯域である15.9〜19.9kHzに周波数変換し、発音部140に出力する。
発音部140は、126チャネル分の送信信号をスピーカ141により音声信号に変換し、決済端末200に向けて出力する。
出力された音声信号は、図9(a)に示すように、15.9〜19.9kHzの信号帯域に離散的に配置された信号となる。
一方、決済端末200の制御部270は、集音部230がマイク231を介して集音すると、マイク231から入力された音声信号をA/D変換し、これを記憶部250に順次記憶させる。
制御部270(フィルタ手段)は、図9(b)に示すように、信号帯域に等しい通過帯域を有する帯域通過フィルタ(BPF)を形成し、記憶部250に格納された受信データをフィルタリングし、15.9kHz〜19.9kHzの信号データを抽出し、記憶部250に記憶させる。
また、制御部270は、記憶部250に格納されている参照帯域定義情報255に基づいて、参照帯域13.9kHz〜15.9kHzと19.9kHz〜21.9kHzを特定する。次に、制御部270は、図9(c)に示すように、2つの参照帯域に等しい通過帯域を有する帯域通過フィルタを形成し、記憶部250に格納された受信データをフィルタリングし、13.9kHz〜15.9kHz、19.9kHz〜21.9kHzの音声を抽出し、記憶部250に記憶させる。
次に、制御部270は、抽出した音声データと参照データの先頭から順に、微小時間Δtの間の音量Is(音声データ)とIr(参照データ)とを求め、さらに、音量比(Ir/Is)を求める。尚、微小時間Δtは、1シンボル期間の1/2以下の時間である。
次に、制御部270(判別部)は、音量比(Ir/Is)が、ノイズ判定閾値256以上であるか否かを判別する。インパルスノイズは、通常、広い帯域の周波数に含むが、主周波数が信号帯域に位置する場合、音量比(Ir/Is)が大きくなり、ノイズ判定閾値256以上となる。
制御部270は、「(Ir/Is)≧ノイズ判定閾値256」が成立すると、図10(a)、(b)に示すように、微小期間Δtの間の音声データの振幅を0として、音声を消去する。ただし、急激に振幅を0にするとノイズが発生する。その回避のため、穏やかに振幅を0とすることが望ましい。たとえば、制御部270は、微小期間Δt付近で0となり、それ以外の区間で1となり、連続的に変化するウィンドウ(窓関数)関数を音声帯域の信号に乗算して、緩やかに振幅を0にする。または、微小期間Δtで0、それ以外の区間で1となる矩形波形を、ローパスフィルタを通して得た波形と音声データとを掛け算をするようにしてもよい。
微小時間Δt<1/2シンボル期間であるので、インパルスノイズが短時間の場合には、1シンボル期間内の微小時間Δt以外の音声データは残る可能性がある。
その後、制御部270は、微小時間Δtの位置を更新して、同様の処理を繰り返す。こうして、インパルスノイズが音声信号からマスクされる(除去される)。
制御部270は、マスク済の音声信号を受信部262に出力する。
受信部262の周波数変換回路1621は、制御部270から出力された音声信号を、信号処理に適した所定の周波数にコンバートし、FFT回路1622に出力する。
FFT回路1622は、周波数コンバートされた信号を離散フーリエ変換(FFT変換)し、周波数領域のデータに戻し、デマッピング回路1623に出力する。
送信時にインターリーブ処理が成されているため、デマッピング回路1623に供給される音声信号(より正確には、各2ビットデータに対応するコンスタレーション(位相と振幅))は、図8(c)に示す配置を有する。デマッピング回路1623は、並び替え定義情報254を参照してデインターリーブ処理を行う。具体的には、デマッピング回路1623は、コンスタレーションを時間軸上で並び替えて、図8(b)に示すコンスタレーションを再生し、更に、周波数軸上で並び替えて図8(a)に示すコンスタレーションを生成する。さらに、デマッピング回路1623は、送信順序定義情報252を参照し、ローバンド側のコンスタレーションを前半と後半で入れ替える。これにより、図8(a)に示すコンスタレーション配列は、図11に示す配列とされる。デマッピング回路1623は、生成したコンスタレーション配列を復調回路1624に出力する。
復調回路1624は、デマッピング回路1623から供給された、各サブキャリアと各シンボル区間にマッピングされたコンスタレーションから各2ビットデータをDQPSKに対応する復調方式で復調する。
図11に示すように、ローバンドとハイバンドには、それぞれ同じ各2ビットデータに対応するコンスタレーションが含まれている。復調回路1624は、このようにして得られたローバンドとハイバンドの対応するコンスタレーションを重み付け加算して、元のデータを復調する。
具体的には、復調回路1624は、ローバンド、ハイバンドにおいて受信した音声信号について、それぞれのサブキャリアとそれぞれの1シンボル区間毎に受信信号強度を求める。
次に、復調回路1624は、同一のデータに対応するそれぞれのサブキャリアの1シンボル区間について、ローバンドの音声信号の受信信号強度と重み付け定義情報253に格納された情報とに基づいて、ローバンドのコンスタレーションに重みづけをし、ハイバンドの音声信号の信号強度と重み付け定義情報253に格納された情報とに基づいて、ハイバンドのコンスタレーションに重みづけをし、重みづけをしたローバンドのコンスタレーションと、重みづけをしたハイバンドのコンスタレーションと、の平均(加重平均)を求める。
具体的に説明すると、復調回路1624は、ローバンドとハイバンドでそれぞれ送信された同一のデータに対応するそれぞれのサブキャリアのそれぞれの1シンボル区間について、受信信号強度に基づく重みを重み付け定義情報253から求め、IQ(In-Phase Quadrature)空間での重心を次式から求める。(下記のコンスタレーションは、同一のデータに対応する、それぞれのサブキャリアのそれぞれの1シンボル区間のコンスタレーションを示す。)
Ig=(mL・IL+mH・IH)/(mL+mH)
Qg=(mL・QL+mH・QH)/(mL+mH)
Ig、Qg:加重平均後のコンスタレーションのIQ空間でのI値とQ値
IL、QL:ローバンドで受信されたコンスタレーションのIQ空間でのI値とQ値
IH、QH:ハイバンドで受信されたコンスタレーションのIQ空間でのI値とQ値
mL:ローバンドの受信信号強度から図2(c)に示す重み付け定義情報253を参照して得られる重み付け係数
mH:ハイバンドの受信信号強度から図2(c)に示す重み付け定義情報253を参照して得られる重み付け係数
図8(c)に示すデータ送信図を参照して具体的に説明する。ここでは、理解を容易にするため、復調した2ビットデータのF6に注目する。
第3シンボル区間で、ローバンドで受信された2ビットF6に対応するチャネル(以下、ch)15のサブキャリアの第3シンボル区間の受信信号強度が10dB、生成されたコンスタレーションのI値がI6L、Q値がQ6L、第6シンボル区間で、ハイバンドで受信された2ビットF6データに対応するch114のサブキャリアの第6シンボル区間の受信信号強度が30dB、生成されたコンスタレーションのI値がI6H、Q値がQ6H、と仮定する。
重みを重み付け定義情報253(図2(c))によれば、受信信号強度10dBでの重み付けはW1、30dBでの重み係数はW2である。従って、加重平均により求められるI6g値と、Q6g値とは、次式で表される。
I6g=(W1・I6L+W2・I6H)/(W1+W2)
Q6g=(W1・Q6L+W2・Q6H)/(W1+W2)
このような構成を採用することによる効果を説明する。ここでは、それぞれのシンボル区間で受信された、ローバンドに含まれるch15とハイバンドに含まれるch114は2ビットデータのF6で同一であり、図13(a)で示される受信信号強度に例示するように、ch15の受信状態が悪く、一方、ch114の受信状態が比較的良好な状態を想定する。この場合、図13(b)に示すように、ch15で受信したコンスタレーションは、理想的なコンスタレーションの位置から大きくずれてしまう。一方、図13(c)に示すように、ch114で受信したコンスタレーションは、理想的なコンスタレーションの位置に比較的近い位置となる。
上述の加重平均を取ることにより、図13(d)に示すように、加重平均後のコンスタレーションが理想的なコンスタレーションに近い位置となり、以後の処理で、元のデータのより適切な復調が可能となる。なお、加重平均の処理は、制御部270の制御に従って、受信部262が実行してもよい。
その後、制御部270は、受信部262を制御して、加重平均により得られたコンスタレーションの位置を用いて、復調、エラー訂正等の後続する処理を実行する。
例えば、全体を使用しての加重平均、ローバンドだけ使用、ハイバンドだけ使用、前半だけ使用、後半だけ使用、といった何通りかで解析を試行し、CRCチェックを行って、再生データの正当性(信頼性)を確認するようにすることができる。
また、受信信号強度を信頼性として重み係数を決定する例を示したが、受信信号エネルギー、S/N比、chごとのコンスタレーションの分散、インパルスノイズ判定値などを信頼性とし、信頼性に基づいて重み係数を設定してもよい。
ここでは、携帯通信端末100が決済端末200にデータを送信する場合を例に説明したが、決済端末200も同様の構成を有している。
このような構成を有することで、一方の帯域において受信強度の低下によりデータの一部又は全てを正確に受信できなかった場合であっても、他方の帯域の音声信号を使用して、受信したデータを復元することができる。
このような構成によれば、図10(a)、(b)に示すように、インパルスノイズを除去してから音声データを復調する。このため、インパルスノイズの影響を除去できる。しかも、微小時間Δtが1シンボルの送信期間より短いため、1シンボル期間のうちで、インパルスノイズが重畳していない部分については、受信データの復調に利用でき、高信頼度での復調が可能となる。
また、送信データが図8(c)に示すようにインターリーブされているため、インパルスノイズが発生して、データが離散的に失われることがあっても、連続するデータが大量に失われることが無い。このため、インパルスノイズによってデータの一部が失われた場合でも、復調後の誤り訂正処理によりデータの復元が可能となる。
この点を図12(a)〜(e)を参照してより具体的に説明する。
理解を容易にするため、1送信パケットを72ビットとする。また、ローバンドとハイバンドのチャネル(サブキャリア)数を6とする。さらに、パケットを構成する72ビットを2ビット単位でまとめ、図12(a)に示すように1〜36の番号で示すこととする。
通常(インターリーブを行わない場合)は、図12(b)に示すように、72ビットを2ビット単位で順番に6チャネルと6シンボル区間に割り当てる。この場合、図12(b)に示すようにインパルスノイズが発生すると、図12(c)に示すように、受信側で再構成したパケットは、データが連続してエラーとなってしまう。このため、畳み込み符号などのエラー訂正符号を使用しても、データを復元できないおそれが高くなる。
これに対し、インターリーブを行う場合、図12(d)に示すように、72ビットを2ビット単位で不連続にチャネルとシンボル区間に割り当てる。この場合、図12(d)に示すようにインパルスノイズが発生すると、図12(e)に示すように、受信側で再構成したパケットでは、エラーが拡散される。このため、畳み込み符号などのエラー訂正符号により、元のデータを復元できる確率が高くなる。
図4を参照して説明した、送信パケットのヘッダ部が32+16=48bit、length=150と仮定して、データ部が(150×8)+32=1232bitの例を参照して、より具体的に説明する。これを畳み込み符号化すると、(元のbit数+6)×2bitの長さ(約2倍の長さ)になり、ヘッダ部が(48+6)×2=108bit、データ部が(1232+6)×2=2476bitとなる。これを、図8のローバンド又はハイバンドの126bit/シンボルに割り当てると、ヘッダ部は108bit/126を切り上げて1シンボル、データ部は2476/126=19.7を切り上げて20シンボルが送信に必要となる。ヘッダ部は1シンボルで済むが、重要な箇所なので、同じデータを2カ所に入れて2重化して、2シンボル使用することとする。なお、63チャネルのうち、使用しない(126−108)/2=9チャネルに他のデータを挿入してもよい。
ヘッダ部の2シンボルをH1、H2、データ部の20シンボルをD1、D2、D3、…D19、D20とする。H1、H2の2シンボル×63chと、D1、D2、D3、…D19、D20の20シンボル×63chで、それぞれインターリーブを行う。より詳細には、並び替え定義情報155を使って、H1とH2でインターリーブし、D1、D2、D3、…D19、D20でインターリーブする。
一連のヘッダ部の2シンボルとデータ部の20シンボルを、それぞれ、前半と後半に分け、送信順序定義情報153に従って、ローバンドとハイバンドに振り分ける。
すると、ローバンドの送信順序は、H0、H2、H1、D11、D12、D13、…D18、D19、D20、D1、D2、D3、…D8、D9、D10、一方、ハイバンドの送信順序は、H0、H1、H2、D1、D2、D3、…D8、D9、D10、D11、D12、D13、…D18、D19、D20となる。
なお、ヘッダ部はデータ部より前に送出する。ヘッダ部にはデータの長さが含まれているからである。これにより、ヘッダ部を受信すると、データ部を受け取らなくても、ヘッダ部のデインターリーブ、誤り訂正、誤り検出を行うことができる。
なお、最初にH0というシンボルを送出する。これは、DQPSKが、直前の搬送波との差分を利用して情報を伝送するため、最初に基準となる位相の信号を送出する必要があるためである。
さらに、図13(a)〜(d)に示したように、ローバンドとハイバンドで受信したコンスタレーションを、その受信強度に応じた重みで加重平均する。従って、受信信号強度が大きく信頼性の高いコンスタレーションは大きな重みで、受信信号強度が小さく信頼性の低いコンスタレーションは小さな重みで、加重平均される。このため、高い信頼性でコンスタレーションが復調できる。
次に、図15を参照しながら、携帯通信端末100、決済端末200、決済サーバ300、が協働して行う決済に係る一連の処理を説明する。
ここでは、店舗1内にいるユーザが、携帯通信端末100を手に持った状態で、決済端末200の前に立っており、商品を購入するため電子マネーによる決済を希望している場合を想定する。なお、以下の例においては、説明の簡略化のため、ユーザの周辺は静かであり、携帯通信端末100と決済端末200とは相互に良好な状態で音声信号を送受信できるものとする。
ユーザは、決済のため、携帯通信端末100の表示部120に表示されているアイコンを操作して、決済処理プログラム152の起動を指示する。制御部170は、ユーザのアイコンの操作に応答して、記憶部150の決済処理プログラム152を実行する。
決済端末200は電源が投入されると、制御部270は、記憶部250の決済処理プログラム251を起動し、マイク231からの音声信号の入力を待ち受ける。ここでは、店員の操作により決済端末200にはあらかじめ電源が投入され、入退室認証プログラムが起動されていることを想定する。
携帯通信端末100の制御部170は、決済処理プログラム152を起動すると、表示部120に決済用の音声出力画面を表示する。図14に示すように、決済用の音声出力画面では、ユーザに携帯通信端末100を決済端末200に近づけた状態で「音声出力」ボタンをタッチすることを指示するメッセージと、「音声出力」ボタンが表示されている。
図15(a)を参照する。操作部110が、「音声出力」ボタンのタップを検出すると、すなわち、ユーザから音声信号の出力が指示されたと判別すると(ステップS101;Yes)、制御部170は、送信データを生成する(ステップS102)。具体的には、制御部170は、記憶部150のユーザID151のデータを読み出し、ヘッダ等を追加して送信データを生成する。このとき、制御部170は、記憶部150に記憶されている送信順序定義情報153に従って、図7に例示したように、ローバンド用の送信データの前半部分と後半部分とを入れ替え、ローバンド、ハイバンドそれぞれの帯域において送信データを送信部161に供給する。一方、操作部110が、ユーザから音声信号の出力が指示されていないと判別すると(ステップS101;No)、例えば、所定の期間待ってから、再びステップS101に戻る。
次に、制御部170及び送信部161は、送信データを変調する(ステップS103)。具体的には、制御部170は、図8(a)に例示したように、ローバンド及びハイバンドに割り当てた各送信パケットを構成するデータを、対応するサブキャリアとシンボル区間とに割り当てる。この例では、変調方式としてDQPSKを採用するので、各サブキャリアの1シンボル区間に2ビットのデータを割り当てる。なお、前述のように図8(a)において、それぞれのサブキャリアを符号A〜Gで示す。また、符号A〜Gに付した数字はシンボルの番号を示す。
次に、送信部161のマッピング回路1611は、並び替え定義情報155に基づいて、図8(b)に示すように、割り当てた2ビットのデータを、周波数軸上で並び替え、さらに、図8(c)に示すように、時間軸上で並び替え、送信部161に出力する。
送信部161のマッピング回路1611は、並び替えた送信データをサブキャリア変調回路1612に出力する。
サブキャリア変調回路1612は、各サブキャリアを、そのサブキャリアに割り当てられたデータを用いてDQPSK方式により変調し、IFFT回路1613に出力する。
IFFT回路1613は、DQPSK変調されたサブキャリアを、逆離散フーリエ変換(IFFT変換)することにより、時間信号に変換し、周波数変換回路1614に出力する。
周波数変換回路1614は、IFFT回路1613から出力されたサブキャリアの信号を通信対象の音声周波帯にコンバートし、発音部140に出力する。発音部140は、周波数変換回路1614で生成された音声信号をスピーカ141から音声として出力する(ステップS104)。
このとき、スピーカ141からは、15.9kHz〜17.9kHzの帯域と、17.9kHz〜19.9kHzの帯域の音声信号が出力される。その後、制御部170は、ステップS105で、決済端末200からの音声信号を待ち受ける。
続いて、図15(b)を参照して、音声信号を受信した決済端末200が行う処理を説明する。決済端末200の制御部270は、決済処理プログラム251を起動すると、マイク231からの音声の入力を待ち受けている。制御部270は、マイク231が音声を集音したと判別すると、すなわち、マイク231から音声が入力されたと判別すると(ステップS201;Yes)、ステップS202へ進む。一方、制御部270は、マイク231から音声が入力されていないと判別すると(ステップS201;No)、例えば、所定の期間待ってから、再びステップS201に戻る。
次に、制御部270及び受信部262は、音声信号を受信データに復調する(ステップS202)。具体的には、制御部270は、マイク231から入力された音声信号を、A/D変換して受信データを生成し、記憶部250に記憶させる。
次に、制御部270は、図9(b)に示すバンドパスフィルタを形成し、記憶部250に格納された受信データにフィルタ処理を施し、帯域が15.9kHz〜19.9kHzの信号音声を抽出し、記憶部250に再度記憶させる。
また、制御部270は、記憶部250に格納されている参照帯域定義情報255に基づいて、参照帯域13.9kHz〜15.9kHzと19.9kHz〜21.9kHzを特定する。次に、制御部270は、図9(c)に示すバンドパスフィルタを形成し、記憶部250に格納された受信データにフィルタ処理を施し、参照帯域13.9kHz〜15.9kHzと19.9kHz〜21.9kHzの音声を抽出し、記憶部250に記憶させる。
次に、制御部270は、抽出した音声データと参照データの先頭から順に、1シンボル期間の1/2より短い微小時間Δtの間の音量IsとIrを求め、さらに、音量の比(Ir/Is)を求め、求めた比が記憶部250に記憶されているノイズ判定閾値256よりも大きいか小さいかを判別する。
制御部270は、微小時間Δtの間の音量の比(Ir/Is)がノイズ判定閾値256よりも大きいと判定すると、制御部270は、抽出した音声信号の上で、該当するΔtに相当する信号をマスク(消去する)。
その後、制御部270は、マスク済の音声信号を受信部262に出力する。
受信部262の周波数変換回路1621は、制御部270から出力された音声信号を、信号処理に適した所定の周波数にコンバートし、FFT回路1622に出力する。
FFT回路1622は、周波数コンバートされた信号を離散フーリエ変換(FFT変換)し、周波数領域のデータに戻し、デマッピング回路1623に出力する。
デマッピング回路1623は、FFT回路1622で周波数領域に変換されたデータ(コンスタレーション)をDQPSKに対応する復調方式で復調し、各サブキャリアにマッピングされたデータを復調する。
FFT回路1622で周波数領域に変換されたデータ(コンスタレーション)は、図8(c)に例示する構成を有する。
デマッピング回路1623は、並び替え定義情報254を参照し、周波数領域に変換されたデータ(コンスタレーション)を時間軸上で並び替えて、図8(b)に示すコンスタレーションを生成し、更に、周波数軸上で並び替えて図8(a)に示すコンスタレーションを生成する。さらに、制御部270は、送信順序定義情報252を参照し、ローバンド側のコンスタレーションを前半と後半で入れ替えて、図11に示すコンスタレーションを生成する。
復調回路1624は、このようにして並び替えられたローバンドとハイバンドの対応するコンスタレーション同士を、図13(b)〜(d)に示すように加重平均し、各2ビットをDQPSKに対応する復調方式で復調する。
制御部270は、加重平均により得られた各2ビットから各パケットを再生する。
制御部270は、畳み込み符号を使用して、誤り訂正を行う。ここでは、間違った訂正をすることがあり、さらに、CRC32によりdata部分の誤り検出を行う。
制御部270は、こうして再生したデータに含まれるユーザIDと決済金額を取得し、ユーザIDと決済金額とを、ネットワーク2を介して、決済サーバ300に送信する(ステップS203)。なお、このとき、制御部270は、決済の要求を示すリクエスト信号と共に、ユーザID、決済金額の情報を決済サーバ300に送信してもよい。その後、制御部270は、決済サーバ300からのデータ受信を待ち受ける(ステップS204)。
続いて、図15(c)を参照して、決済端末200からデータを受信した決済サーバ300の処理を説明する。決済サーバ300の制御部330は、決済端末200からデータを受信すると(ステップS301;Yes)、記憶部320に格納されたユーザテーブル322に受信したユーザIDが存在するか否かを判別する(ステップS302)。即ち、認証処理を行う。一方、決済サーバ300の制御部330は、決済端末200からデータを受信しない場合(ステップS301;No)、例えば、所定の期間待ってから、再びステップS301に戻る。続いて、制御部330が、ユーザIDが示すユーザが有効なユーザであると判別すると、すなわち、認証が成功すると(ステップS303;Yes)、制御部330はステップS304に進む。一方、認証が失敗すると(ステップS303;No)、制御部330はステップS306に進み、決済端末200に認証の結果を通知する(ステップS306)。ここでは、認証が失敗した旨を示すデータ、例えば、「認証:失敗、決済:NULL」といったデータ、が決済端末200に送信される。
認証成功後(ステップS303;Yes)、ステップS304において、制御部330は決済処理を行う(ステップS304)。具体的には、制御部330は、電子マネー事業者が運営する電子マネー決済システムにユーザID、決済金額の情報を通知し、決済の実行を依頼する旨のリクエストを送信する。決済が成功すると(ステップS305;Yes)、即ち、電子マネー決済システムから決済の実行が正常に完了した旨の通知を受信すると、制御部330は、現在のチャージ金額から決済金額を引いた残額で、ユーザテーブル322のチャージ金額を更新する。その後、制御部330は、結果を決済端末200に通知する(ステップS306)。ここでは、決済が成功した旨を示すデータ、例えば、「認証:成功、決済:成功」といったデータ、が決済端末200に送信される。
一方、例えば、当該ユーザのアカウントの現在のチャージ金額が決済金額を下回る場合、決済を行うことができず、決済が失敗する(ステップS305;No)。この場合、電子マネー決済システムから決済サーバ300に対して決済が失敗した旨の通知がなされる。これに応答して、制御部330は、決済が失敗した旨を示すデータ、例えば「認証:成功、決済:失敗」を決済端末200に通知する(ステップS306)。
再び、図15(b)を参照して、決済サーバ300からデータを受信した決済端末200の処理を説明する。
決済端末200の制御部270は、ステップS204で、決済サーバ300からのデータ受信を待ち受けているが、決済サーバ300からデータを受信すると(ステップS204;Yes)、受信したデータから、携帯通信端末100に対する送信データを生成する(ステップS205)。
具体的には、制御部270は、決済サーバ300から受信したデータから、認証の結果と決済の結果を示すデータを読み出し、読み出したデータを、上述した手順と同様の手順により変調し(ステップS206)、スピーカ241から音声として出力する(ステップS207)。
再び、図15(a)を参照して、決済端末200から音声信号を受信した携帯通信端末100が行う処理を説明する。携帯通信端末100の制御部170は、ステップS105で、マイク131からの音声の入力を待ち受けているが、マイク131から音声が入力された、すなわち、マイク131が音声を集音したと判別すると(ステップS105;Yes)、ステップS106へ進む。一方、制御部170は、マイク131から音声が入力されていないと判別すると(ステップS105;No)、例えば、所定の期間待ってから、再びステップS105に戻る。
制御部170は、受信部162を制御して、マイク131から入力された音声信号を復調する(ステップS106)。
この際、制御部170は、上述したように、インパルスノイズをマスクし、インパルスノイズの影響を除去し、ローバンドとハイバンドの各2ビットデータに対応するコンスタレーションを並び替えて配列を復元し、同一の2ビットデータに対応するコンスタレーションの加重平均を求め、各2ビットを再生する。
制御部170は、再生したシンボルから各送信パケットを再生する。さらに、畳み込み符号を使用して、誤り訂正を行う。ここでは、間違った訂正をすることがあり、さらに、CRC32によりdata部分の誤り検出を行う。
その後、制御部170は、再生したパケット内のdataに基づいて、処理の結果を表示部120に表示する。例えば、決済端末200から携帯通信端末100に「認証:成功、決済:成功」といったデータが送信された場合には、制御部170は、表示部120に「決済が完了しました。」というメッセージを表示してもよい。あるいは、決済端末200から携帯通信端末100に「認証:失敗、決済:NULL」または「認証:成功、決済:失敗」といったデータが送信された場合には、「決済を行うことができませんでした。詳しくは、電子マネーのサポートセンターにお問い合わせください。」というメッセージを表示してもよい。
以上が、携帯通信端末100、決済端末200、決済サーバ300が協働して行う決済に係る処理の流れである。
上記構成によれば、携帯通信端末100と決済端末200は、スマートフォン等が従来備えている、スピーカ、マイクを利用して通信を行う。このため、ハードウェアを新たに追加する必要がなく、所定のアプリケーションのインストールだけで、他の機器との通信が可能となる。さらに、音声通信では避けられないインパルスノイズの混入をノイズマスク機能により除去することが可能である。これにより、音声信号を使用した近接通信において、通信エラーを低減させることができる。
さらに、インターリーブ機能により、データ送信時に、周波数軸上、時間軸上においてデータを並び替え、受信側でデインターリーブ機能により受信データを元の並びに復元するため、受信側でエラー訂正が困難になることを防ぐことができる。
さらに、ローバンドとハイバンドとで同一のデータを送信し、受信側で、信頼度に応じた重みで加算して、再生する。これにより、通信の信頼性を向上させることができる。
さらに、各周波数帯に同じ情報を2度送信してもよい。この場合、例えば、1度目のデータを送信した後、所定の時間を空けて、2度目のデータを送信してもよい。
また、あるいは、受信側は、1度目のデータを復調し、1度目の送信データを正確に受信できたと判別した場合、その旨を送信側に通知し、この場合、送信側は2度目のデータの送信を行わないようにしてもよい。この場合、送信側は同じデータを2度送信する必要がない。よって、データを2度送信するときに比べ、実効的な通信速度を2倍とすることができる。あるいは、受信側は、復調処理を行う前に、1度目のデータの受信時の受信信号強度が所定の値以上である場合、データを正しく受信できたと判別し、その旨を送信側に通知してもよい。あるいは、データを正しく受信できたと判別した場合には、その旨を送信側に通知することなく、2度目に受信したデータについては復調処理等を行わないようにしてもよい。
また、上述の実施の形態では、音声信号を受信した側は、ローバンドにおいて受信した信号の前半部分と後半部分、ハイバンドにおいて受信した信号の前半部分と後半部分、をそれぞれ復調した。この発明はこれに限定されず、受信側は、ローバンドにおいて先に受信した後半部分とハイバンドにおいて先に受信した前半部分とを、まず復調してもよい。続いて、データを正確に受信できたか否かを判別し、正確に受信できたと判別した場合に、ローバンドにおいて後に受信した前半部分と、ハイバンドにおいて後に受信した後半部分と、の復調処理を行わないようにしてもよい。この場合、受信側は不要な処理を行う必要がなく、通信処理の効率化を図ることができる。また、音声通信の受信のみを行う端末の場合、ローバンドとハイバンドの前半部分の受信信号のみを使用した解析でデータが復号できた場合は、後半部分の音声の受信を待たずに、より早く受信処理を終了する事ができる。例えば、受信終了後、ユーザに成功したことを示す表示をする場合、ユーザにとっては、より短時間に結果が確認できることになるため、ユーザーエクリペリエンスを向上させる事ができる。
また、携帯通信端末100、決済端末200は、エラー訂正のため、変調に先立って、送信するデータの冗長化を行ってもよい。この場合、音声信号を受信した側は、冗長化に対応した復号化を行えばよい。
携帯通信端末100はユーザにより保持されているため、ユーザの手の動きにより携帯通信端末100を一定の位置に静止した状態とすることは難しい。このため、ユーザの手の動き(手ぶれ)により、信号の位相のずれが発生し、位相のずれがある程度大きくなると、通信エラーが発生する。
図16(a)、(b)に、携帯通信端末100から出力された音について、信号の様子をコンスタレーションとして示したものである。コンスタレーションは、信号の振幅と位相とを極座標形式(実成分、虚数成分を含む)で表したものである。ここでは、原点からの距離が振幅を表し、X軸からの角度が位相を表す。図16(a)は、手ぶれにより位相がずれた信号の様子を示し、図16(b)は、位相のずれが小さい信号の様子を示す。
本実施の形態では、サブキャリアをDQPSKにより変調するため、理想的なコンスタレ−ションは、図16(b)に示すように、描かれる四角形の上下の辺がX軸と平行であることが望ましい。しかし、ユーザの手ぶれにより、描かれる四角形は、図16(a)に示すように、原点を中心として回転したものとなる。
このため、携帯通信端末100、決済端末200のいずれも、理想的なコンスタレーションに近づくように受信した信号を補正してもよい。例えば、制御部170、270は、重み加算後により得られた各コンスタレーションを、例えば、図16(a)に示すように、I−Q空間にプロットする。続いて、制御部170、270は、プロットにより得られた図16(a)に示す四角形を、原点を中心に回転させ、受信した音声信号の位相をずらし、図16(b)にように描かれる四角形の上下の辺がR軸と平行な状態に近づけるように補正する。その後、制御部170、270は、補正された各コンスタレーションから、対応する2ビットを求め、各2ビットからパケットを復元し、さらに、畳み込み符号を使用して、誤り訂正を行い、CRC32によりdata部分の誤り検出を行ってもよい。
認証情報の送受信のセキュリティを高めるため、携帯通信端末100は、ユーザID151を暗号化した情報を、音声信号として決済端末200に送信してもよい。また、決済端末200が携帯通信端末100に送信する情報も暗号化されたものであってもよい。
さらに、決済端末200と決済サーバ300とは、相互に暗号化した情報を送受信してもよい。
また、携帯通信端末100は、ユーザID151とともに、ワンタイムパスワードを送信してもよい。例えば、時刻同期式の場合、携帯通信端末100は、時刻に基づいて所定のアルゴリズムによりワンタイムパスワードを生成する。ワンタイムパスワードを受信した決済端末200は、時刻に基づいて所定のアルゴリズムにより生成したパスワードと、受信したワンタイムパスワードとが一致するか否かを判別する。
上記の例では、携帯通信端末100としてスマートフォンの例を説明したが、これに限らず、スピーカ、マイクを備える他の機器に対しても、上記の技術は応用可能である。例えば、MP3プレーヤといった携帯音楽機器(ただし、スピーカとマイクを備えている必要がある)、IC(Integrated Circuit)レコーダ(ただし、スピーカを備えている必要がある)、腕時計といったウェアラブル端末である。また、音声を出力するため、スピーカ以外の音響拡声装置を使用してもよく、音声を入力するためマイク以外の集音装置を使用してもよい。
また、上記実施の形態においては、キャリアとして使用する音声を、非可聴の帯域の音声とする例を説明したが、可聴帯域の音声をキャリアとして使用してもよい。この場合、大部分の人にとって聞き取りにくい所定の可聴帯域の音声を使用してもよい。
なお、通信に音を利用する際には、以下のような問題点がある。無線信号の伝播速度に比べ、音の伝搬速度は遅く、(理論上は、無線信号の伝搬速度に比べ1/880、000くらいに低下する)、帯域が狭いため、決められた時間で充分な量のデータを送受信することが難しい。
具体的には、誘導式RFIDでは、タグを内蔵した携帯端末等が数秒間、リーダ/ライタに近接又は接触されることでデータの送受信が行われるが、通信に音を利用する場合、同程度の時間では十分な量のデータを送受信できず、実際にサービスの運用時に時間がかかりすぎるといった問題が想定される。
本発明の携帯通信端末100による音声信号を使用した通信により送受信可能なデータ量を説明する。前述のように携帯通信端末100、決済端末200ともに、OFDMを採用するが、ここでは、サブキャリアの数(チャネル数)を128とする。上述のように、帯域の両端に割り当てられる2チャネルは使用しないため、実質的には126チャネルがデータ送信のため使用可能なチャネル数である。
4kHzの帯域で126チャネルを使用することを想定し、変調速度を早く(変調周期を短く)すると反射等の影響を受けやすいことを考慮して、計算等によりサブキャリアの変調周期を求めたところ、変調周期は、43.25msecとなった。変調周波数は、変調周期の逆数であるため、1/43.25msec=23.121…Hzとなり、およそ23.1Hzである。この値は、1チャネルあたりの変調速度を示す。1秒間に出力可能な音は23.1音である。
通信速度(伝送速度)は、1チャネルあたりの変調速度×チャネル数×1音あたりのビット数から求めることができる。前述のように、OFDMによるマルチチャネル化により126チャネルが実質使用可能である。DQPSK変調により一度に2ビットの情報を表すことができる。よって、通信速度は、1/43.3msec×126チャネル×2bit=5819.86…bpsとなり、およそ5820bpsとなる。
実施の形態で説明したように、4kHzの帯域を2分割した帯域においてそれぞれ同じデータを送信するため、実質的な通信速度は、5820bps÷2=2910bpsとなる。エラー訂正のため1/2レートの畳み込み符号化を行う場合、畳み込み符号化により、データ量は約2倍に冗長化される。通信速度は、2910bps÷2=1455bpsとなる。
また、エラー訂正のため、2倍の冗長化した場合であっても、通信速度は約1455bpsである。つまり、携帯通信端末100は、1秒間に1キロビット以上のデータの送信が可能である。近接通信ICチップを備える携帯端末を使用した近接通信では、通常、人が携帯端末をリーダ/ライタに近接させた状態を維持するのに無理のない時間が2秒程度である。よって、上記通信速度では、2秒間では約3キロビットのデータを送信することが可能といえる。この通信データ量は、例えば、ユーザの認証に必要な識別情報(ユーザID等)を送受信するのに十分な通信データ量である。
上記実施の形態においては、受信信号強度から各2ビット(コンスタレーション)の信頼度を求め、信頼度に応じた重みで加重平均を求めたが、この発明はこれに限定されない。信頼度の求め方は任意である。例えば、全体を使用しての加重平均、ローバンドだけ使用、ハイバンドだけ使用、前半だけ使用、後半だけ使用、といった何通りかで解析を試行し、さらに、CRCチェックを行って、再生データの正当性(信頼度)を確認するようにしてもよい。
また、受信信号エネルギー、S/N比などを信頼度として、信頼度に基づいて、重み係数を設定してもよい。
上記の処理は、制御部170の制御に従って、受信部162が実行してもよい。
(実施の形態2)
実施の形態1では、信号帯域の受信信号の音量Isと参照帯域の受信信号の音量Irとの比(Ir/Is)を求め、比が閾値より大きいか否かにより、インパルスノイズの有無を判別したが、この発明はこれに限定されない。例えば、ローバンドの受信信号の音量IsLと低周波側参照帯域の受信信号の音量IrLとの比(IrL/IsL)を求め、比(IrL/IsL)が閾値より大きいか否かにより、ローバンドのインパルスノイズの有無を判別し、ハイバンドの受信信号の音量IsHと高周波側参照帯域の受信信号の音量IrHとの比(IrH/IsH)を求め、比(IrH/IsH)が閾値より大きいか否かにより、ハイバンドのインパルスノイズの有無を判別してもよい。ローバンドとハイバンドの一方のみにインパルスノイズを検出した場合には、ノイズを検出したバンドの信号のみをマスクすればよい。
(実施の形態3)
上記実施の形態1において、音声信号を受信し、信号帯域の音声音量と参照帯域の音量を求める構成として、例えば、図17に示す回路を使用可能である。この受信回路では、信号帯域の受信信号を通過する帯域通過フィルタ(BPF)31と、2つの参照帯域の信号を抽出するためのBPF32、33を配置し、各BPF31〜33を通過した信号から受信信号パワーを求める回路が必要となる。BPF31〜33の周波数特性は急峻性が求められる。
ただし、通過帯域の急峻性を有するフィルタの構成は複雑であり、データ処理負担が大きい。例えば、信号帯域用のBPF31〜33をFIRフィルタで構成する場合には、音声信号のサンプリング周波数を48kHzとすると、一例ではあるが、それぞれ、501段×48Kのデータ処理が必要となる。すると、フィルタリングに要する総演算量は、501段×48K×3=72、144、000回/secとなる。
この課題を解決するためには、図18に示す回路構成が有効である。
この信号処理回路(周波数変換手段)は、制御部170、270の演算処理機能により実現されるもので、BPF41と、2倍UPサンプリング回路42と、搬送波ミキシング回路43と、リサンプル用ローパスフィルタ(LPF)44と、1/12リサンプリング回路45と、LPF46と、1/2リサンプリング回路47と、パワー計算部48と、ハイパスフィルタ(HPF)49と、パワー計算部50と、から構成される。
BPF41は、マイク131から供給される音声信号のうち、その通過周波数帯域の信号成分を通過させる。BPF41は、図19(a)に示すように信号帯域と参照帯域とを含む通過帯域幅を有する。また、参照帯域の境界はブロードに決定しても実害が少ないため、カットオフ周波数に急峻性の小さいBPFを使用することができる。
2倍UPサンプリング回路42は、BPF41を通過した信号を、2倍のサンプリング周波数(入力音声のサンプリング周波数が48kHzとすれば、96kHz)でサンプリングする。
搬送波ミキシング回路43は、アップサンプリングされた入力信号に搬送波(例えば、17.9kHz)をミキシング(乗算)し、直交する二位相の搬送波(複素搬送波)によるダイレクトコンバージョンにより周波数変換する。これにより、図19(b)に示すように、13.9kHz〜21.9kHzの周波数信号が、信号帯域の帯域幅の2倍の8kHzの帯域幅を有する−4kHz〜4kHzの周波数に変換される。なお、複素搬送波を使用したため、波形は複素数となり、周波数は正負の成分を持つ。
リサンプル用LPF44は、リサンプリングによる折り返しノイズを除去するため高周波成分をカットする。
1/12リサンプリング回路45は、入力信号を1/12リサンプリングし、信号をダウンコンバージョンする。入力信号のサンプリング周波数を48kHzとすれば、2倍UPサンプリング回路42によりサンプリング周波数が96kHzとなっているので、それを1/12することにより、サンプリング周波数は8kHzとなる。
図19(c)に示すように、LPF46は、−2kHz〜+2kHzの低周波数の信号成分のみを通過させる。
1/2リサンプリング回路47は、入力信号を1/2リサンプリングし、ベースバンド信号を再生し出力する。サンプリング周波数は、入力信号のサンプリング周波数が48kHzとすれば、1/12リサンプリング回路45の出力信号のサンプリング周波数は8kHzとなっているので、1/2サンプリング後のサンプリング周波数は4kHzとなる。
パワー計算部48は、LPF46の出力信号の信号パワーを求める。
HPF49は、図19(d)に示すように、−2kHz〜+2kHzの信号帯域の信号成分をカットし、その両側に位置する参照帯域の周波数成分(±2kHzよりも高周波数の成分)を通過させる。
パワー計算部50は、HPF49の出力信号の信号パワーを求める。求めた信号パワーは、2つの参照帯域の音量を示す。
この構成によれば、信号音声帯域の信号をその2倍の帯域幅で且つ0Hzを中心とする帯域の信号に変換するので、その後の処理が容易である。
この構成によれば、BPF41の通過帯域特性に急峻性が必要とされないため。その処理量が抑えられる。例えば、BPF41をFIRフィルタで構成する場合、51段×48Kの演算量で済む。また、LPF46とHPF49の通過帯域特性には、急峻性が要求されるが、サンプリング周波数が低周波化(8kHz)されているため、101段×8kですみ、演算量が大幅に低減される。
なお、信号帯域の音量だけでインパルスノイズを判定できれば、参照帯域用の信号処理は不用とすることができる。しかし、通信に使用する音声信号の音量は急激に且つ大幅に変化する場合があり、この変化をインパルスノイズと誤判定するおそれがある。これに対し、この構成では、信号に影響されない参照帯域を使用して正確にインパルスノイズを検出し、且つ、その演算量を抑えることができる。
次に、パワー計算部48、50の計算により、インパルスノイズを検出する手法を説明する。
まず、前提として全てのインパルスノイズをマスクする必要はなく、信号音のレベルと同等かそれ以上となって、データを破壊するときだけ、マスクすればよい。
そこで、単純にIr/Isの時にインパルスノイズが発生したと判別するのではなく、パワー計算部48で求められた信号音量が、直近の過去nシンボルの期間における平均信号音量のm倍(第1の閾値TH1)より大きく、且つ、パワー計算部50で求められた参照音量が、過去pシンボル期間における平均信号音量+平均参照音量(第2の閾値TH2)より大きくなった場合に、制御部170は、インパルスノイズが発生したと判別するようにしてもよい。
なお、n、m、pの値は任意でよく、例えば、n=p=2〜7、m=2.0に設定される。
このように設定することにより、例えば、図20(a)に示すように、信号音帯域の音量が第1の閾値TH1より大きく、且つ、参照帯域の音量が第2の閾値TH2より大きい場合には、インパルスノイズが発生したと判別される。これにより、インパルスノイズに相当する区間の信号がマスクされる。
一方、例えば、図20(b)に示すように、信号音帯域の音量が第1の閾値TH1以下、又は、参照帯域の音量が第2の閾値TH2以下の場合には、インパルスノイズが発生したと判別されない。従って、信号音帯域の信号はマスクされない。
参照帯域に定常ノイズが存在し、そこに、インパルス状のノイズが発生した場合でも、図20(c)に示すように、信号音帯域の音量が第1の閾値TH1より大きく、且つ、参照帯域の音量が第2の閾値TH2より大きい場合には、インパルスノイズが発生したと判別され、マスクされる。一方、図20(d)に示すように、信号音帯域の音量が第1の閾値TH1以下、又は、参照帯域の音量が第2の閾値TH2以下の場合には、インパルスノイズが発生したと判別されない。従って、マスクされない。
また、図20(e)に示すように、信号音の音量が時間と共に変化した場合を想定する。この場合、第1の閾値TH1と第2の閾値TH2が時間と共に変化する。この場合も、信号音帯域の音量が第1の閾値TH1より大きく、且つ、参照帯域の音量が第2の閾値TH2より大きい場合には、インパルスノイズが発生したと判別される。従って、マスクされる。一方、信号音帯域の音量が第1の閾値TH1以下、又は、参照帯域の音量が第2の閾値TH2以下の場合には、インパルスノイズが発生したと判別されない。従ってマスクされない。図20(e)のケースでは、参照帯域の音量が第2の閾値を超えないため、インパルスノイズは無いと判別される。
なお、図20(f)に示すように、参照帯域の音量が時間と共に変化すると、第1の閾値TH1と第2の閾値TH2は若干上昇する。図20(f)の例では、信号音帯域の音量が第1の閾値TH1より小さいため、参照帯域の音量が第2の閾値TH2より大きくなっても、インパルスノイズが発生したと判別されない。この構成によれば、有害なインパルスノイズのみをマスクすることが可能となる。
その他、インパルスノイズを検出する手法自体は任意である。
(変形例)
実施の形態では、ローバンドの受信信号とハイバンドの受信信号の加重平均を取ったものを復調したが、フェージング対策として信頼度の高い受信信号のみを使用して、データを復号するようにしてもよい。
この場合、制御部270は、ハイバンドにおいて受信された音声信号とローバンドにおいて受信された音声信号のそれぞれの信頼度をRSI(受信信号強度;Received Signal Intensity)等から求め、信頼度の高い方のバンドにおいて受信された音声信号のみを使用して信号を復号する。信頼性の高いほうのデータのみ使用することにより、信頼性の低い部分を底上げし、全体としての信頼性を高めることができる。信頼度の高い受信信号のみを使用して、データを復号する処理は、例えば、全受信期間において行ってもよく、あるいは、一方のバンドのRSIが一時的に低下した場合のみに行うようにしてもよい。
この場合も、通信の信頼性を向上させることができるため、通信速度を高速化した場合であっても、通信エラーの発生を低減させることができる。
また、これに限らず、加重平均を取ること、多重化されたデータの一方を選択する際(重み係数を0とする場合)、音量、S/N比、インパルスノイズの有無など、他の情報を加味することで、性能を向上してもよい。
さらに、各帯域においてに同じ情報を2度送信してもよい。この場合、例えば、1度目のデータを送信した後、所定の時間を空けて、2度目のデータを送信してもよい。
また、あるいは、受信側は、1度目のデータを復調し、1度目の送信データを正確に受信できたと判別した場合あるいは信号の前半部分だけでデータを受信できた場合、その旨を送信側に通知し、この場合、送信側は2度目のデータや、後半のデータの送信を行わないようにしてもよい。この場合、送信側は同じデータを2度送信する必要がない。よって、データを2度送信するときに比べ、実効的な通信速度を2倍とすることができる。あるいは、受信側は、復調処理を行う前に、1度目のデータの受信時の受信信号強度が所定の値以上である場合、データを正しく受信できたと判別し、その旨を送信側に通知してもよい。あるいは、データを正しく受信できたと判別した場合には、その旨を送信側に通知することなく、2度目に受信したデータについては復調処理等を行わないようにしてもよい。
また、上記実施の形態においては、キャリアとして使用する音声を、非可聴の帯域の音声とする例を説明したが、可聴帯域の音声をキャリアとして使用してもよい。この場合、大部分の人にとって聞き取りにくい所定の可聴帯域の音声を使用してもよい。
変調方式としてDQPSKを例示したが、他の変調方式も応用可能である。