以下、図面を参照しながら、本発明の実施の形態に係る通信システム、通信装置、通信方法、及びプログラムの実施の形態について説明する。各図面においては、同一又は同等の部分に同一の符号を付す。
(実施の形態1)
図1〜図10を参照して、本発明の実施の形態1に係る通信システム、通信装置、通信方法、及びプログラムについて説明する。ここでは、商品を購入するユーザ(顧客)が、電子マネーによる決済を行うことができる電子マネー決済システムを例に通信システム1を説明する。なお、本実施の形態に係る通信システムは、商品の購入の際におけるプリペイド型の電子マネーを用いた決済処理に限られず、あらゆるデータの送受信に用いることができる。例えば、本実施の形態に係る通信システムをユーザに対するクーポン、チラシの配布等に用いることもできる。
図1は、本発明の実施の形態に係る通信システム1の構成を示す。通信システム1は、ユーザが所持するスマートフォン等の携帯通信端末100(第1の通信端末)と、店舗3に設置された決済端末200(第2の通信端末)と、決済端末200とネットワーク2を介して通信可能に接続された決済サーバ300と、を備える。携帯通信端末100と、決済端末200とは、音声を伝送媒体として、すなわち、送信する情報で所定のキャリアを変調した信号(音声信号)を送受信する。このようにして、携帯通信端末100と決済端末200とは相互に通信する。音声を伝送媒体とした通信の詳細は後述する。
まず、商品の購入の際の決済の流れの概要を説明する。ここでは、プリペイド型の電子マネーを想定しており、ユーザは、例えば、電子マネー事業者が運営するオンライン上のシステムを経由して、クレジットカード等を使用して所望の金額をチャージ(入金)しておく。ユーザはチャージされている残高を上限として、電子マネーの加入店において商品等の購入の決済に、電子マネーを使用することができる。電子マネーによる決済の際には、携帯通信端末100がユーザを識別する情報を決済端末200に送信する。
商品購入の際に、ユーザが所持する携帯通信端末100は、ユーザの操作に応答して、音声を使用した通信により、ユーザID(Identification)を決済端末200に送信する。決済端末200は、携帯通信端末100からユーザIDを受信すると、ネットワーク2を介してユーザIDと決済金額を決済サーバ300に送信する。決済サーバ300は、ユーザIDに基づいて、ユーザが電子マネーの正当な利用者であるか否かを判別し(認証し)、ユーザの認証が成功すると、ユーザがチャージ済みの電子マネーの残高から決済金額を引き落とす処理(決済)を行う。その後、決済サーバ300は、認証と決済の結果を、決済端末200に通知する。
次に、各装置の構成を説明する。まず、図2を参照して、携帯通信端末100の構成を説明する。以下、携帯通信端末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を含み、空気の振動(音)を電気信号に変え、これをA/D(アナログ/デジタル)変換して、デジタル化された音声のデータを受信部162に供給する。
発音部140は、送信部161から供給された送信対象のデジタルデータでキャリア信号を変調し、得られたデジタル信号をD/A(デジタル/アナログ)変換して、スピーカ141に供給する。これにより、送信対象のデジタルデータは、空気振動(音)に変換され、出力される。
記憶部150は、RAM(Random Access Memory)、ROM(Read Only Memory)、及び、フラッシュメモリ等を備え、各種の情報、固定データ、アプリケーション、画面データ、端末ID、及び、制御部170が実行するためのプログラム等を記憶する。固定データは、例えば、携帯通信端末100を所持するユーザのユーザID151を含む。また、記憶部150は、制御部170が処理を実行するためのワークメモリとして機能する。
また、記憶部150は、制御部170が実行する決済に係る処理を実行するための決済処理プログラム152を記憶する。さらに、記憶部150は、図2(b)に示すように、データの送信順序を定義した送信順序定義情報153を記憶する。データの送信順序については後述する。
送受信部160は、送信部161と受信部162を含み、制御部170の制御にしたがって、携帯通信端末100が、送受信する信号の信号処理を実行する。詳しくは後述するが、送受信部160は、制御部170と協働して、送信データを送信用の信号に変換し、受信した信号を受信データに変換する変換部として機能する。携帯通信端末100は、送信する情報で所定のキャリアを変調した信号(音声信号)を送受信するが、送受信の際の信号の変調・復調等の処理については、有線、無線通信と同様の処理を行う。
本実施の形態においては、例えば、キャリアとして非可聴帯域の音声信号を使用する。したがって、携帯通信端末100と決済端末200とが出力する信号は、人間にはほぼ聞こえない。これは、可聴帯域の音声信号が送受信されると、ユーザにとって当該音声信号が雑音と感じられ、不快感を生じさせる可能性があるためである。
送信部161は、制御部170から供給されたデータでキャリアを変調し、変調した信号を発音部140に出力する。したがって、送信する情報で所定のキャリアを変調した信号(音声信号)がスピーカ141から出力される。
受信部162は、集音部130のマイク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はマルチキャリア伝送の方式であるため、各搬送波(サブキャリア)の変調方式(一次変調方式)として任意のものを選択することができる。本実施の形態では、後述する理由により、第1の変調方式である周波数変調方式(Frequency Shift Keying:FSK)と、第2の変調方式である二位相偏移変調方式(Binary Phase Shift Keying:BPSK)とを使用して、各サブキャリアを変調する。
FSKでは、2つの周波数帯域の異なるサブキャリアを対にして使用し、それぞれに別の値を割り当てる。このため、FSKでは、1シンボルあたり2つのサブキャリアを使用して2値(1ビット)の情報を表すことができる。
BPSKは、180°に分離された2つの位相の波を用いる位相変調方式(Phase Shift Keying:PSK)であって、それぞれの位相に別の値を割り当てる。BPSKでは、1シンボルあたり2値(1ビット)の情報を表すことができる。
上記構成を実現するため、送信部161、受信部162は、以下のような回路を有する。まず、図3(a)に、送信部161が有する回路の構成の一例を示す。送信部161は、マッピング回路1611、サブキャリア変調回路1612、IFFT回路1613、周波数変換回路1614を含む。
制御部170は、送信するデータ系列を処理して所定のサイズ(1ビット)のデータに分割し、分割した各データをマッピング回路1611に供給する。マッピング回路1611は、分割した各データを各サブキャリアの各シンボル区間にマッピングする。上述のように、サブキャリアはFSKとBPSKとで変調されるため、1つのサブキャリアの1シンボル区間には1ビットが割り当てられる。その後、サブキャリア変調回路1612で、サブキャリアはFSKとBPSKとで変調され、IFFT回路1613で逆離散フーリエ変換されて時間信号に変換されることで、周波数変換回路1614で対象の音声周波帯にコンバートされ、発音部140に出力される。
図3(b)に、受信部162が有する回路の構成の一例を示す。受信部162は、周波数変換回路1621、FFT回路1622、復調回路1623、デマッピング回路1624を含む。マイク131により集音された音声は、周波数変換回路1621で所定の周波数帯にコンバートされ、FFT回路1622で離散フーリエ変換された周波数領域のデータに戻される。その後、復調回路1623で、サブキャリア信号をFSKとBPSKとに対応する復調方式で復調し、デマッピング回路1624で、各サブキャリアと各シンボル区間に割り振られた所定のビット単位のデータを復元し、制御部170に出力する。
再び、図2(a)を参照する。制御部170は、例えば、CPU(Central Processing Unit)を備え、携帯通信端末100の各部の制御を行う。制御部170は、記憶部150に記憶されている決済処理プログラム152を実行することにより、音声信号の通信を使用した決済に係る処理を実行する。
制御部170は、決済に係る処理において、送信部161を制御して、記憶部150に格納されているユーザID151を含む送信データを生成し、送信部161、発音部140を制御して、送信データを音声信号に変換して、音声をスピーカ141から出力する。制御部170が送信部161に供給する送信データのパケットのフォーマットの一例を図4に示す。
送信データは、ヘッダ部とデータ部とからなる。図4(a)に示すように、ヘッダ部は32ビットのビット列とCRC(Cyclic Redundancy Check)から構成される。modeは、送信データが、制御用のデータであるか否かを示す。versionは、バージョン情報を示す。serviceは、サービス用に予約された領域である。reservedは、特別の用途のために予約された領域である。lengthは、データペイロードのバイト長を示す。CRCは、ヘッダ部(modeからlength)のデータの誤り検出のために付加されている。ここでは、CRC16を使用する。受信側では、CRC16によりヘッダ部の誤り検出を行う。
図4(b)に示すように、データ部は、0〜255バイトの可変長のバイト列とCRCから構成される。Dataは、ペイロードを示す。なお、Dataはバイト単位(8ビット単位)のデータからなる。ユーザID151を送信する際には、DataにユーザID151を示す情報が埋め込まれる。CRCは、Data(ペイロード)部分の誤り検出のために付加されている。ここでは、CRC32を使用する。受信側では、CRC32によりData部分の誤り検出を行う。
再び図1に戻り、決済端末200の構成を説明する。決済端末200は、店舗3のレジの横に設置されており、携帯通信端末100と音声信号による通信を行う。例えば、決済端末200は、ユーザが電子マネーでの支払いを希望した場合に、携帯通信端末100からユーザID151を示す音声信号を受信する。決済端末200は、携帯通信端末100から受信したユーザID151と、店員の操作により入力された決済金額と、を決済サーバ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本体に接続された外付けのテンキー(図示なし)を含んでいてもよい。
表示部220は、制御部270から供給される各種画像データや各種画面データ等に基づいて各種画像や各種画面等を表示する。表示部220は、例えば、表示パネルと表示パネル駆動回路等によって構成される。表示パネル駆動回路は、制御部270から供給される画像データにしたがって表示パネルを駆動し、表示パネルに画像を表示させる。表示パネルは、例えば、液晶パネル、有機ELパネルによって実現される。表示パネルは、例えば、図1に示すように、決済端末200の前面に設けられたタッチパネルによって実現されてもよい。
集音部230は、マイク231を含み、空気の振動(音)を電気信号に変え、これを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を記憶する。
送受信部260は、送信部261と受信部262とを含み、制御部270の制御にしたがって送受信する信号の信号処理を実行する。送受信部260は、制御部270と協働して、送信データを送信用の信号に変換し、受信した信号を受信データに変換する変換部として機能する。
送信部261は、制御部270から供給された送信データでキャリアを変調し、変調した信号を発音部240に出力する。したがって、送信する情報で所定のキャリアを変調した信号(音声信号)がスピーカ241から出力される。受信部262は、マイク231から供給された電気信号から、受信した信号を復調し、復調した信号を制御部270に出力する。
決済端末200の音声を伝送媒体とした通信方式は、携帯通信端末100と同様である。決済端末200は、音声信号を使用した通信においては、OFDMを採用する。送信部261、受信部262は、図3(a)、(b)に示した携帯通信端末100の送信部161、受信部162と同様の構成を備える。
制御部270は、例えば、CPU等を備え、決済端末200の各部の制御を行う。制御部270は、記憶部250に記憶されている決済処理プログラム251を実行することにより、音声信号の通信を使用した決済に係る処理を実行する。
通信部280は、インターネット等の通信ネットワークに接続することが可能なインターフェースである。通信部280は、ネットワーク2を介して、後述の決済サーバ300の通信部310と通信する。
再び図1に戻り、決済サーバ300の構成を説明する。決済サーバ300は、店舗3とは異なる場所に設置された装置、例えば、汎用コンピュータである。決済サーバ300は、決済端末200からネットワーク2を介して、ユーザID151と決済金額を受信すると、認証を含む決済の処理を実行し、処理の結果を決済端末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は、決済の処理のため、通信システム1を利用するユーザの情報(ユーザID151、ユーザがチャージ済みの残高の金額等)を格納するユーザテーブル322を有する。なお、ユーザテーブル322には、最新のアカウントの情報が格納されている必要があるため、電子マネー事業者が運営する電子マネー決済システムが管理するデータと連携されている。
制御部330は、例えば、CPU等を備え、決済サーバ300の各部の制御を行う。制御部330は、記憶部320に記憶されている決済処理プログラム321を実行することにより、決済に係る処理を実行する。
次に、図7を参照して、本実施の形態に特徴的な構成を説明する。通信エラー低減のため、携帯通信端末100及び決済端末200は、以下のような構成を備える。以下、携帯通信端末100を例に説明するが、決済端末200も同様の構成を有する。
携帯通信端末100は、音声を媒体とした通信であることを利用して、互いに独立した異なる特性を有する複数の変調方式を用いることにより、送信データを多重化して送信する。互いに異なる特性の複数の変調方式を用いるため、各データが同時に送信エラーを引き起こすおそれを低減できる。互いに独立した変調方式としては、例えば、FSK、PSK、振幅偏移変調(Amplitude-shift keying:ASK)等がある。
以下、FSK(第1の変調方式)とBPSK(第2の変調方式)とを用いてサブキャリアを変調した場合を例に説明する。なお、異なる変調方式の組み合わせは上記の組み合わせに限定されず、例えば、PSKとASKとを用いてもよく、ASKとFSKとを用いてもよい。また、PSKとして四位相偏移変調方式(Quadrature Phase Shift Keying:QPSK)、差動四位相偏移変調方式(Differential Quadrature Phase Shift Keying:DQPSK)、差動二位相偏移変調方式(Differential Binary Phase Shift Keying:DBPSK)等を用いてもよい。
FSKは、サブキャリアの周波数を変調させることでデータを伝送する変調方式である。サブキャリアの変調に位相を使用していないため、携帯通信端末100の動き等に起因する通信環境の変化に強い。しかし、周波数を用いてサブキャリアを変調しているため、周波数の使用効率が低い。図7(a)は、OFDMと組み合わせたFSKにおいて2つのチャネル(以下、ch)を使用してデータの1と0を表現した具体例を示す。ch1を使用した場合が1、ch2を使用した場合が0である。FSKでは、図7(a)に示すように、2つのchを用いて1シンボル区間当たり1ビット分の情報を送信できる。
BPSKは、サブキャリアの位相を変調させることでデータを伝送する変調方式である。サブキャリアの変調に周波数を使用していないため、周波数の使用効率に優れているが、FSKと異なり携帯通信端末100の動き等に起因する通信環境の変化に弱い。図7(b)は、BPSKで2種類の位相を使用してデータの1と0を表現した具体例を示す。サブキャリアが山から始まる場合が1、サブキャリアが谷から始まる場合が0である。BPSKでは、図7(b)に示すように、1つのchで1シンボル区間当たり1ビット分の情報を送信できる。
図7(c)は、FSKを用いてサブキャリアに情報を載せながら、BPSKを用いてサブキャリアに異なる情報を載せて送信する例を示す。第1シンボル区間では、ch1のサブキャリアが山から始まっているため、FSKのデータは1であり、BPSKのデータは1である。第2シンボル区間では、ch2のサブキャリアが山から始まっているため、FSKのデータは0であり、BPSKのデータは1である。このようにして、FSKとBPSKとを用いてサブキャリアに異なるデータを載せて送信できる。図7(c)から理解できるように、FSKとBPSKとを用いた場合、FSKとして1シンボル区間当たり0.5ビット/ch、BPSKとして1シンボル区間当たり0.5ビット/chのデータを送信できる。
以下、送信部161が送信データに応じてFSKとBPSKとを用いてサブキャリアを変調する処理について具体的に説明する。以下、サブキャリアの数が126である場合を例に説明する。
以下、理解を容易にするために、送信データのビット列をB1、B2、…、Bn、B1’、B2’、…、Bn’(nは自然数)とし、サブキャリアをC1、C2、…、C126とする。サブキャリアC1、C2、サブキャリアC3、C4、…、サブキャリアC125、C126をそれぞれペアとし、順番にペアP1、P2、…P63とする。ここでは、データのマッピングにおいてビット列の順番は変更されないと仮定する。
マッピング回路1611は、FSKを用いて、第1シンボル区間において、ペアP1にビット列B1、ペアP2にビット列B2、…、ペアP63にビット列B63を順番に割り当てる。次いで、マッピング回路1611は、FSKを用いて、第2シンボル区間において、ペアP1にビット列B64、ペアP2にビット列B65、…、ペアP63にビット列B126を順番に割り当てる。
また、マッピング回路1611は、BPSKを用いて、第1シンボル区間において、ペアP1にビット列B1’、ペアP2にビット列B2’、…、ペアP63にビット列B63’を順番に割り当てる。次いで、マッピング回路1611は、BPSKを用いて、第2シンボル区間において、ペアP1にビット列B64’、ペアP2にビット列B65’、…、ペアP63にビット列B126’を順番に割り当てる。B1’、B2’、…、B126’は、それぞれB1、B2、…、B126と同一のビット列であってもよく、異なるビット列であってもよい。
その後、前述のとおり、サブキャリア変調回路1612は、各サブキャリアに割り当てられたデータに応じて、FSKとBPSKとを用いて各サブキャリアを変調する。
送信部161は、それぞれのペアP1、P2、…、P63ごとにサブキャリアの一つを選択することにより、FSKを用いてデータを送信する。そして、送信部161は、選択されたサブキャリアの位相を変調することにより、BPSKを用いてデータを送信する。送信部161は、FSKとBPSKとを用いて同一のデータを送信してもよく、FSKとBPSKとで異なるデータを送信してもよい。
このように、本実施の形態に係る通信方式では、通信環境の変化に対して異なる影響を受ける複数の変調方式を用いているため、データの通信エラーに強い。通信環境の変化が大きい場合、例えば、携帯通信端末100の動きが大きい場合、集音した音声信号を環境の変化に強いFSKで変調された部分を用いてデータを復調し、1シンボル区間当たり0.5ビット/chのデータを安定的に受信できればよい。一方、通信環境の変化が小さい場合、集音した音声信号からBPSKで変調された部分も追加で読み出すことにより、さらに1シンボル区間当たり0.5ビット/chのデータを追加できるため、合計で1シンボル区間当たり1ビット/chの情報を受信できる。
ところで、異なる変調方式を用いて多重化を行うには、異なるサブキャリアに対してそれぞれ異なる変調方式を採用することも考えられる。しかし、この場合、多数のサブキャリアを使用する必要があるため、広い周波数帯域が必要となる。また、送信部161の送信能力にも限界があるため、サブキャリアの数が増えることにより、サブキャリア当たりのエネルギーが小さくなる。本実施の形態に係る通信方式では、FSKとBPSKとを用いてサブキャリアを変調しているため、周波数の使用効率の向上できると共に、サブキャリアの送受信に使用するエネルギーの効率化も実現できる。
ここでは、携帯通信端末100を例に説明したが、決済端末200も上記と同様の構成を有している。
上述のように、携帯通信端末100は、2つの変調方式を使用して同じデータを二重に送信することができる。さらに、次のような手法を採用してデータを送信する。通信の安定性を確保するために、通信環境の変化が大きい場合にあわせて常に通信速度を低下させると、通信時間が延びてしまい、ユーザの利便性が損なわれる。
そこで、多重化したデータの送信順序を工夫して送信することにより、環境の変化に合わせて通信速度を増減させる。図8は、FSKとBPSKを用いてデータを送信するイメージの一例を示す。図8の送信イメージにおいて、携帯通信端末100が送信する送信データは、第1データD1、第2データD2、第3データD3、第4データD4、第5データD5、第6データD6から構成される。
携帯通信端末100は、使用する変調方式によりデータD1〜D6の送信順序を変える。具体的には、図2(b)に示す送信順序定義情報153に定義されている情報(ルール)に基づいて、送信する一連のデータを2分割(D1〜D3、D4〜D6)し、BPSKで変調するデータは、2分割した後半のグループ(D4〜D6)を先に送信し、その後、分割した前半のグループ(D1〜D3)を送信する。一方、FSKで変調するデータは、順序を変えることなくデータD1〜D6を送信する。例えば、図8に示すように、第1シンボル区間では、FSKに第1データD1を、BPSKに第4データD4を載せている。第2シンボル区間では、FSKに第2データD2を、BPSKに第5データD5を載せている。
この構成によれば、通信状態が正常な場合、受信側は、FSKとBPSKのいずれからもデータの復調が可能であるため、通信の前半で、FSKでグループ(D1〜D3)を、BPSKでグループ(D4〜D6)を受信した時点で、全データを受信できる。このため、後半の受信、復調等の処理が不用となる。したがって、より早く受信処理を終了し、結果として複数の変調方式から情報を復元できる場合、通信速度を速めることができる。
また、通信の前半で、バースト性のノイズ等により、FSKとBPSKのいずれからもデータの一部又は全部の復調ができない場合でも、通信の後半で、FSKとして受信したグループ(D4〜D6)と、BPSKとして受信したグループ(D1〜D3)と、から正しく受信データを復元できるため、安定した通信を実現できる。
さらに、通信の前半と後半を通して、携帯通信端末100の動き等に起因する通信環境の変化により、BPSKでデータの復調ができない場合でも、FSKでデータを復調できるため、安定した通信を実現できる。
このように、本実施の形態に係る通信方式では、携帯通信端末100の動き等に対する特性が異なる複数の変調方式を用いてデータを送信するため、携帯通信端末100の動き等の通信環境の変化に応じて通信速度を増大させると共に、常に安定した通信を実現できる。
なお、上記の処理は、制御部170の制御にしたがって、受信部162が実行してもよい。
ここでは、携帯通信端末100を例に説明したが、決済端末200も上記と同様の構成を有している。
次に、携帯通信端末100が実行する復調処理について説明する。携帯通信端末100(制御部170)は、FSK、BPSKを用いて変調された信号から同一の情報を二重に受信するが、信号の復調の際において、受信データの品質を考慮して復調処理を実行する。
具体的には、携帯通信端末100の受信部162は、FSK、BPSKを用いて変調した音声信号を受信し、当該音声信号のうちFSKで変調された部分と、BPSKで変調された部分と、をそれぞれ復調する。そして、受信部162は、当該音声信号がFSKで変調された部分をFSKで復調したデータと、BPSKで変調された部分をBPSKで復調したデータとが、それぞれ所定の品質を満たすかどうか判定する。復調したデータが所定の品質を満たしているかどうかは、例えば、CRC等のエラー検出符号を用いて判定されたデータの欠陥の有無、受信信号のS/N比(Signal-Noise Ratio)又は強度などが所定の値以上かどうか等に基づいて判定する。
そして、所定の品質を満たすと判定されたデータを用いて、音声信号を受信データに変換する。その後、制御部170は、受信部162を制御して、サブキャリアの復調、デマッピング等の後続する処理を実行する。
ここでは、携帯通信端末100を例に説明したが、決済端末200も同様の構成を有している。
通信システム1では、上記の構成を有することで、送信エラー等により一方の変調方式を用いて変調した音声信号からデータの一部又は全てを正確に復調できなかった場合であっても、他方の変調方式を用いて変調した音声信号を使用して、受信したデータを復調することができる。
次に、図9、図10を参照しながら、携帯通信端末100、決済端末200、決済サーバ300が協働して行う決済に係る一連の処理を説明する。
ここでは、店舗3内にいるユーザが、携帯通信端末100を手に持った状態で、決済端末200の前に立っており、商品を購入するため電子マネーによる決済を希望している場合を想定する。なお、以下の例においては、説明の簡略化のため、ユーザの周辺は静かであり、携帯通信端末100と決済端末200とは相互に良好な状態で音声信号を送受信できるものとする。
ユーザは、決済のため、携帯通信端末100の表示部120に表示されているアイコンを操作して、決済処理プログラム152の起動を指示する。制御部170は、ユーザのアイコンの操作に応答して、記憶部150の決済処理プログラム152を実行する。
決済端末200は電源が投入されると、制御部270は、記憶部250の決済処理プログラム251を起動し、マイク231からの音声信号の入力を待ち受ける。ここでは、店員の操作により決済端末200にはあらかじめ電源が投入され、決済処理プログラム251が起動されていることを想定する。
携帯通信端末100の制御部170は、決済処理プログラム152を起動すると、表示部120に決済用の音声出力画面を表示する。図9に示すように、決済用の音声出力画面では、ユーザに携帯通信端末100を決済端末200に近づけた状態で「音声出力」ボタンをタッチすることを指示するメッセージと、「音声出力」ボタンが表示されている。
図10(a)を参照する。操作部110が、「音声出力」ボタンのタップを検出すると、すなわち、ユーザから認証用の音声信号の出力が指示されたと判別すると(ステップS101;Yes)、制御部170は、送信データを生成する(ステップS102)。具体的には、制御部170は、記憶部150のユーザID151のデータを読み出し、ヘッダ等を追加して送信データを生成する。このとき、制御部170は、上述のように、BPSK用の送信データの前半部分と後半部分とを入れ替え、送信データを送信部161に供給する。操作部110が、ユーザから音声信号の出力が指示されていないと判別すると(ステップS101;No)、例えば、所定の期間待ってから、再びステップS101に戻る。
次に、制御部170は、送信部161を制御して、各種信号処理を施して、送信データに応じてFSKとBPSKとを用いてサブキャリアを変調する(ステップS103)。制御部170は、発音部140を制御して、変調データをスピーカ141から音声として出力する(ステップS104)。
このとき、スピーカ141からは、FSKとBPSKとで変調された音声信号が出力される。その後、制御部170は、ステップS105で、決済端末200からの音声信号を待ち受ける。
続いて、図10(b)を参照して、音声信号を受信した決済端末200が行う処理を説明する。決済端末200の制御部270は、決済処理プログラム251を起動すると、マイク231からの音声の入力を待ち受けている。制御部270は、マイク231が音声を集音したと判別すると、すなわち、マイク231から音声が入力されたと判別すると(ステップS201;Yes)、ステップS202へ進む。一方、制御部270は、マイク231から音声が入力されていないと判別すると(ステップS201;No)、例えば、所定の期間待ってから、再びステップS201に戻る。
制御部270は、マイク231から入力された音声信号を復調する(ステップS202)。まず、音声信号の復調に際して、制御部270は、受信した音声信号がFSKにより変調されていると見なし、前半部分と後半部分とを入れ替える。
その後、制御部270は、音声信号を受信部262に供給する。次いで、受信部262は、受信した音声信号について、それぞれFSKとBPSKとで変調された部分を復調し、制御部270は、復調されたそれぞれのデータが所定の品質を満たすかどうか判定する。次いで、受信部262は、制御部270の制御にしたがって、上記の判定結果に基づいて、供給された音声信号に各種信号処理を施し、音声信号を情報信号に復元し、制御部270に出力する。
制御部270は、受信部262から供給された情報信号(すなわち、携帯通信端末100から送信されたデータ)に含まれるユーザID151と決済金額とを、ネットワーク2を介して、決済サーバ300に送信する(ステップS203)。なお、このとき、制御部270は、決済の要求を示すリクエスト信号と共に、ユーザID(アカウントID)151、決済金額の情報を決済サーバ300に送信してもよい。その後、制御部270は、決済サーバ300からのデータ受信を待ち受ける(ステップS204)。
続いて、図10(c)を参照して、決済端末200からデータを受信した決済サーバ300の処理を説明する。決済サーバ300の制御部330は、決済端末200からデータを受信すると(ステップS301;Yes)、ユーザID151に基づいて認証処理を行う(ステップS302)。一方、決済サーバ300の制御部330は、決済端末200からデータを受信しない場合(ステップS301;No)、例えば、所定の期間待ってから、再びステップS301に戻る。
次に、制御部330は、記憶部320に格納されたユーザテーブル322に受信したユーザID151が存在するか否かを判別し、ユーザID151が示すユーザが有効なユーザであると判別すると、すなわち、認証が成功すると(ステップS303;Yes)、ステップS304に進む。一方、認証が失敗すると(ステップS303;No)、制御部330はステップS306に進み、決済端末200に認証の結果を通知する(ステップS306)。ここでは、認証が失敗した旨を示すデータ、例えば、「認証:失敗,決済:NULL」といったデータ、が決済端末200に送信される。
認証成功後、制御部330は決済処理を行う(ステップS304)。具体的には、制御部330は、電子マネー事業者が運営する電子マネー決済システムにユーザID151、決済金額の情報を通知し、決済の実行を依頼する旨のリクエストを送信する。決済が成功すると(ステップS305;Yes)、すなわち、電子マネー決済システムから決済の実行が正常に完了した旨の通知を受信すると、制御部330は、現在のチャージ金額から決済金額を引いた残額で、ユーザテーブル322のチャージ金額を更新する。その後、制御部330は、結果を決済端末200に通知する(ステップS306)。ここでは、決済が成功した旨を示すデータ、例えば、「認証:成功,決済:成功」といったデータ、が決済端末200に送信される。
一方、例えば、当該ユーザのアカウントの現在のチャージ金額が決済金額を下回る場合、決済を行うことができず、決済が失敗する(ステップS305;No)。この場合、電子マネー決済システムから決済サーバ300に対して決済が失敗した旨の通知がなされる。これに応答して、制御部330は、決済が失敗した旨を示すデータ、例えば「認証:成功,決済:失敗」を決済端末200に通知する(ステップS306)。
再び図10(b)を参照して、決済サーバ300からデータを受信した決済端末200の処理を説明する。決済端末200の制御部270は、ステップS204で、決済サーバ300からのデータ受信を待ち受けているが、決済サーバ300からデータを受信すると(ステップS204;Yes)、受信したデータから、携帯通信端末100に対する送信データを生成する(ステップS205)。一方、制御部270は、決済サーバ300からデータを受信していないと判別すると(ステップS204;No)、例えば、所定の期間待ってから、再びステップS204に戻る。
具体的には、制御部270は、決済サーバ300から受信したデータから、認証の結果と決済の結果を示すデータを読み出し、ヘッダ等を追加して送信データを生成する。制御部270は、送信部261を制御して、各種信号処理を施して、送信データを変調する(ステップS206)。制御部270は、発音部240を制御して、変調されたデータをスピーカ241から音声として出力する(ステップS207)。
再び図10(a)を参照して、決済端末200から音声信号を受信した携帯通信端末100が行う処理を説明する。携帯通信端末100の制御部170は、ステップS105で、マイク131からの音声の入力を待ち受けているが、マイク131から音声が入力されると、すなわち、マイク131が音声を集音したと判別すると(ステップS105;Yes)、ステップS106へ進む。一方、制御部170は、マイク131から音声が入力されていないと判別すると(ステップS105;No)、例えば、所定の期間待ってから、再びステップS105に戻る。
制御部170は、受信部162を制御して、マイク131から入力された音声信号を復調する(ステップS106)。まず、音声信号の復調に際して、制御部170は、受信した音声信号がFSKで変調された部分について、音声信号の前半部分と後半部分とを入れ替える。
その後、制御部170は、音声信号を受信部162に供給する。次いで、受信部162は、受信した音声信号について、それぞれFSKとBPSKとで変調された部分を復調し、制御部170は、復調されたそれぞれのデータが所定の品質を満たすかどうか判定する。受信部162は、制御部170の制御にしたがって、上記の判定結果に基づいて、供給された音声信号に各種信号処理を施し、音声信号を情報信号に復元し、制御部170に出力する。
その後、制御部170は、受信部162から供給された情報信号に基づいて、処理の結果を表示部120に表示する(ステップS107)。例えば、決済端末200から携帯通信端末100に「認証:成功,決済:成功」といったデータが送信された場合には、制御部170は、表示部120に「決済が完了しました。」というメッセージを表示してもよい。あるいは、決済端末200から携帯通信端末100に「認証:失敗,決済:NULL」又は「認証:成功,決済:失敗」といったデータが送信された場合には、「決済を行うことができませんでした。詳しくは、電子マネーのサポートセンターにお問い合わせください。」といったメッセージを表示してもよい。
以上が、携帯通信端末100、決済端末200、決済サーバ300が協働して行う決済に係る処理の流れである。
以上説明したように、実施の形態1に係る通信システム1においては、複数の異なる変調方式を用いてサブキャリアを変調しているため、通信環境の変化により一方の変調方式で受信した音声信号を復調できない場合であっても、他方の変調方式で受信した音声信号を復調し、受信データを正常に取得できる。このため、通信速度を高速化した場合であっても、通信の信頼性を向上させ、通信エラーの発生を低減できる。
また、実施の形態1に係る通信システム1においては、スマートフォン等が従来備えている、スピーカ、マイクを利用して通信を行うため、ハードウェアを新たに追加する必要がなく、所定のアプリケーションのインストールだけで、他の機器との通信が可能となる。
(実施の形態2)
図11を参照して、実施の形態2に係る通信システム、通信装置、通信方法、及びプログラムについて説明する。実施の形態1では、例えば、同一のデータを載せたFSKとBPSKとを用いることにより、送信データを二重に多重化して送信していたが、実施の形態2では、さらに異なる周波数帯域に同一のデータを送信することにより、送信データを四重に多重化して送信する。以下、両者の異なる部分を中心に説明する。
まず、周波数帯域の多重化について説明する。携帯通信端末100は、音声を媒体とした通信のため、15.9kHz〜17.9kHz(第1の音声周波数帯域)、17.9kHz〜19.9kHz(第2の音声周波数帯域)の2つの帯域を使用する。上記の帯域は、スマートフォン等に標準的に搭載されているスピーカの周波数特性を考慮したものである。
携帯通信端末100(制御部170)は、送信時には、ローバンドである15.9kHz〜17.9kHz、ハイバンドである17.9kHz〜19.9kHzの2つの帯域において、それぞれ同じデータを送信する。つまり、15.9kHz〜17.9kHzの信号、17.9kHz〜19.9kHzの信号、をそれぞれ送信するデータで変調する。
具体的には、図3に示す周波数変換回路1614は、IFFT回路1613の出力を、ローバンドとハイバンドとにコンバートし、ローバンド、ハイバンドで同一のデータを送信する。発音部140のスピーカ141からは、15.9kHz〜17.9kHzの帯域の音声信号(第1の音声信号)、17.9kHz〜19.9kHzの帯域の音声信号(第2の音声信号)が出力される。
上述のように、携帯通信端末100は、2つの周波数帯域を使用して同じデータを二重に送信するが、さらに、次のような手法を採用してデータを送信する。図11は、2つの周波数帯域を用いることによるデータの多重化と、2つの変調方式を用いることによるデータの多重化を同時に行って、データを送信する例を示す。図11において、例えば、D1(D2)は、FSKで送信されるデータがD1で、BPSKで送信されるデータがD2であることを示す。
携帯通信端末100は、例えば、送信データを第1データD1、第2データD2、第3データD3、第4データD4に分割して送信する。携帯通信端末100は、使用する周波数帯域、変調方式によりデータD1〜D4の送信順序を変える。具体的には、送信順序定義情報153に定義されている情報に基づいて、ローバンドのFSKでは、D1、D3、D4、D2の順番でデータを送信し、ローバンドのBPSKでは、D2、D4、D3、D1の順番でデータを送信する。また、ハイバンドのFSKでは、D4、D2、D1、D3の順番でデータを送信し、ハイバンドのBPSKでは、D3、D1、D2、D4の順番でデータを送信する。言い換えると、周波数帯域、変調方式ごとに、同一のタイミングで異なるデータを送信する。
この構成によれば、受信側は、通信状態が正常ならば、第1シンボル区間で、ローバンドでD1、D2を、ハイバンドでD3、D4を受信することにより、全データを受信できるため、第2シンボル区間以降の受信・復調などが不用である。
また、例えば、携帯通信端末100の動きによりBPSKにより変調されたデータを復調できない場合であっても、音声信号がFSKにより変調された部分を、第1シンボル区間で、ローバンドでD1、ハイバンドでD4を、第2シンボル区間で、ローバンドでD3、ハイバンドでD2を受信することにより、全データを受信できるため、第3シンボル区間以降の受信・復調などが不用である。
さらに、通信全体を通して周波数的な妨害があり、ローバンドとハイバンドのどちらか一方の帯域における伝送が不能となった場合でも、正常に伝送できるどちらか一方のバンドのみで正しく受信データを復元できる。例えば、ローバンドが正常に伝送できるとして、第1シンボル区間で、FSKでD1、BPSKでD2を、第2シンボル区間で、FSKでD3、BPSKでD4を受信し、全データを受信できるため、第3シンボル区間以降の受信・復調などが不用となる。
そして、通信全体を通して周波数的な妨害があり、さらに携帯通信端末100の動きによりBPSKにより変調されたデータを復調できない場合であっても、正常に伝送できるどちらか一方のバンドのみでFSKから正しく受信データを復元することができる。例えば、ローバンドが正常に伝送できるとして、FSKを用いてデータをD1、D3、D4、D2の順番で受信できる。
なお、上記の処理は、制御部170の制御にしたがって、受信部162が実行してもよい。
ここでは、携帯通信端末100を例に説明したが、決済端末200も上記と同様の構成を有している。
次に、携帯通信端末100が実行する復調処理について説明する。携帯通信端末100(制御部170)は、異なる周波数帯域、異なる変調方式を用いて変調された信号から同一の情報を四重に受信するが、信号の復調の際において、受信データの品質を考慮して復調処理を実行する。
具体的には、携帯通信端末100の受信部162は、音声信号を受信してサブキャリアの復調を行い、当該信号がFSKで変調された部分を復調したデータと、BPSKで変調された部分を復調したデータとが、それぞれ所定の品質を満たすかどうか判定する。また、携帯通信端末100の受信部162は、ハイバンドの音声信号を復調したデータと、ローバンドの音声信号を復調したデータと、が、それぞれ所定の品質を満たすかどうか判定する。
そして、携帯通信端末100の受信部162は、所定の品質を満たすと判定されたデータを用いて、音声信号を受信データに変換する。その後、制御部170は、受信部162を制御して、デマッピング等の後続する処理を実行する。復調したデータの品質判定とデマッピングの順序は上記の処理に限られず、デマッピングを行った後、品質判定を行ってもよい。
ここでは、携帯通信端末100を例に説明したが、決済端末200も同様の構成を有している。
以上説明したように、実施の形態2に係る通信システムでは、周波数的な妨害により一方の帯域において受信強度の低下によりデータの一部又は全てを正確に受信できなかった場合であっても、他方の帯域の音声信号を使用してデータを復調できる。また、携帯端末の動きがなく、周波数的な妨害もない場合、両バンドを使用してデータを復調できる。このため、通信環境の変化に応じて音声を媒体とした通信のさらなる高速化を実現できる。
そして、本発明はこれに限られず、以下に述べる変形も可能である。
(変形例)
上記実施の形態においては、変調方式、周波数帯域ごとに情報を1度だけ送信していたが、本発明はこれに限られない。各変調方式、各周波数帯域において同じ情報を2度以上送信してもよい。この場合、例えば、1度目のデータを送信した後、所定の時間を空けて2度目のデータを送信してもよい。
あるいは、受信側は、1度目のデータを復調し、1度目の送信データを正確に受信できたと判別した場合、又は信号の前半部分だけでデータを受信できた場合、その旨を送信側に通知し、この場合、送信側は2度目のデータや、後半のデータの送信を行わないようにしてもよい。この場合、送信側は同じデータを2度送信する必要がない。
あるいは、受信側は、復調処理を行う前に、1度目のデータの受信時の受信信号強度が所定の値以上である場合、データを正しく受信できたと判別し、その旨を送信側に通知してもよい。あるいは、データを正しく受信できたと判別した場合には、その旨を送信側に通知することなく、2度目に受信したデータについては復調処理等を行わないようにしてもよい。
上記実施の形態においては、異なる変調方式を用いて同一のデータを重複して送信していたが、本発明はこれに限られない。例えば、第1の変調方式を用いて第1のデータを送信し、第2の変調方式を用いて第1のデータとは異なる第2のデータを送信してもよい。
上記実施の形態においては、音声信号を暗号化していなかったが、本発明はこれに限られない。例えば、認証情報の送受信のセキュリティを高めるため、携帯通信端末100は、ユーザID151を暗号化した情報を、音声信号として決済端末200に送信してもよい。また、決済端末200が携帯通信端末100に送信する情報も暗号化されたものであってもよい。さらに、決済端末200と決済サーバ300とは、相互に暗号化した情報を送受信してもよい。
また、携帯通信端末100は、ユーザID151とともに、ワンタイムパスワードを送信してもよい。例えば、時刻同期式の場合、携帯通信端末100は、時刻に基づいて所定のアルゴリズムによりワンタイムパスワードを生成する。ワンタイムパスワードを受信した決済端末200は、時刻に基づいて所定のアルゴリズムにより生成したパスワードと、受信したワンタイムパスワードとが一致するか否かを判別する。
上記実施の形態においては、携帯通信端末100としてスマートフォンの例を説明したが、本発明はこれに限られない。例えば、スピーカ、マイクを備える他の機器に対しても、上記の技術は応用可能である。例えば、MP3プレーヤといった携帯音楽機器、IC(Integrated Circuit)レコーダ、腕時計といったウェアラブル端末である(ただし、いずれも、スピーカとマイクを備えている必要がある。)。また、音声を出力するため、スピーカ以外の音響拡声装置を使用してもよく、音声を入力するためマイク以外の集音装置を使用してもよい。
また、上記実施の形態においては、キャリアとして使用する音声を、非可聴の帯域の音声とする例を説明したが、可聴帯域の音声をキャリアとして使用してもよい。可聴帯域の音声をキャリアとして使用することにより、ユーザはデータが送信されるタイミングを確認できるため、決済端末200に対して携帯通信端末100を意識的に静止させることができる。
上記実施の形態においては、携帯通信端末100(制御部170)は、信号の復調の際に、異なる変調方式、異なる周波数帯域を用いて変調されたデータが所定の品質を満たすかどうかを判定し、所定の品質を満たすデータのみを用いて信号を受信データに変換していたが、本発明はこれに限られない。例えば、受信信号の強度、データの欠陥の有無等に基づいて通信の信頼性を評価し、通信の信頼性が高い方の変調方式、周波数帯域において受信した音声信号に比重を置いて復調処理を実行してもよい。復調処理は、通信の信頼性に基づいて重み付けを行い、重み付けされたデータの加重平均を算出することにより実行してもよい。
上記実施の形態2においては、携帯通信端末100の動き等がなく、周波数的な妨害がない場合に、最初のシンボルの音(第1音)を使用してデータを復調していたが、本発明はこれに限られない。例えば、最初のシンボルの音がインパルスノイズ等により大きく破壊された場合、第2音以降に含まれるシンボルを使用して全データを受信してもよい。
より詳細に説明すると、制御部170は、他の信号処理を行う前に、受信したいわゆる生データにインパルスノイズが含まれているか否かを、その受信信号強度から検出する。例えば、制御部170は、A/D変換後の受信信号を記憶部150に一旦記憶し、これを解析する。制御部170は、インパルスノイズを検出した場合、インパルスノイズの存在する時間帯を特定する。制御部170は、例えば、第1音にインパルスノイズが存在している場合、第1音を無視し、第2音の解析が可能かどうか判定する。上記のように構成することにより高いノイズ耐性を実現できる。
上記実施の形態では、BPSKで変調するデータは、2分割した後半のグループ(D4〜D6)を先に送信し、その後、分割した前半のグループ(D1〜D3)を送信し、FSKで変調するデータは、順序を変えることなくデータD1〜D6を送信していたが、本発明はこれに限られない。BPSKで変調するデータは、順序を変えることなくデータD1〜D6を送信し、FSKで変調するデータは、2分割した後半のグループ(D4〜D6)を先に送信し、その後、分割した前半のグループ(D1〜D3)を送信してもよい。
上記実施の形態においては、PSKとしてBPSKを用いていたが、本発明はこれに限られない。例えば、PSKとして、QPSK、DQPSK、DBPSKを用いてもよい。例えば、DQPSKでは、4段階に位相をずらした4つの波を使用し、直前の波との差分それぞれに別の値を割り当てる。このため、DQPSKでは、1サブキャリアの1シンボル区間で4値(2ビット)の情報を表すことができる。
PSKとしてDQPSKを用いる場合、FSKは、1シンボル区間2値であり、DQPSKは、1シンボル区間4値であるため、伝送速度が異なる変調方式の組み合わせとなる。このことを利用して、DQPSKで変調するデータを前半と後半に分割し、DQPSKで変調した前半のデータを正確に受信できた場合、それ以降の受信・復調を中止してもよい。
上記実施の形態は例示であり、本発明はこれらに限定されるものではなく、特許請求の範囲に記載した発明の趣旨を逸脱しない範囲でさまざまな実施の形態が可能である。各実施の形態や変形例で記載した構成要素は自由に組み合わせることが可能である。また、特許請求の範囲に記載した発明と均等な発明も本発明に含まれる。