特表2018-515944(P2018-515944A)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ダンソル プラス カンパニー リミテッドの特許一覧 ▶ イム チャンスーンの特許一覧

<>
  • 特表2018515944-音波通信装置及び方法 図000003
  • 特表2018515944-音波通信装置及び方法 図000004
  • 特表2018515944-音波通信装置及び方法 図000005
  • 特表2018515944-音波通信装置及び方法 図000006
  • 特表2018515944-音波通信装置及び方法 図000007
  • 特表2018515944-音波通信装置及び方法 図000008
  • 特表2018515944-音波通信装置及び方法 図000009
  • 特表2018515944-音波通信装置及び方法 図000010
  • 特表2018515944-音波通信装置及び方法 図000011
  • 特表2018515944-音波通信装置及び方法 図000012
  • 特表2018515944-音波通信装置及び方法 図000013
  • 特表2018515944-音波通信装置及び方法 図000014
  • 特表2018515944-音波通信装置及び方法 図000015
  • 特表2018515944-音波通信装置及び方法 図000016
  • 特表2018515944-音波通信装置及び方法 図000017
  • 特表2018515944-音波通信装置及び方法 図000018
  • 特表2018515944-音波通信装置及び方法 図000019
  • 特表2018515944-音波通信装置及び方法 図000020
  • 特表2018515944-音波通信装置及び方法 図000021
  • 特表2018515944-音波通信装置及び方法 図000022
  • 特表2018515944-音波通信装置及び方法 図000023
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】特表2018-515944(P2018-515944A)
(43)【公表日】2018年6月14日
(54)【発明の名称】音波通信装置及び方法
(51)【国際特許分類】
   H04B 11/00 20060101AFI20180518BHJP
   H04K 1/00 20060101ALI20180518BHJP
【FI】
   H04B11/00 C
   H04K1/00 A
【審査請求】有
【予備審査請求】未請求
【全頁数】29
(21)【出願番号】特願2017-518248(P2017-518248)
(86)(22)【出願日】2016年3月29日
(85)【翻訳文提出日】2017年3月30日
(86)【国際出願番号】KR2016003205
(87)【国際公開番号】WO2016190535
(87)【国際公開日】20161201
(31)【優先権主張番号】10-2015-0073219
(32)【優先日】2015年5月26日
(33)【優先権主張国】KR
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,ST,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IR,IS,JP,KE,KG,KN,KP,KZ,LA,LC,LK,LR,LS,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ,UA,UG,US,UZ
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.ブルートゥース
2.BLUETOOTH
(71)【出願人】
【識別番号】517112052
【氏名又は名称】ダンソル プラス カンパニー リミテッド
(71)【出願人】
【識別番号】517112074
【氏名又は名称】イム チャンスーン
(74)【代理人】
【識別番号】100104215
【弁理士】
【氏名又は名称】大森 純一
(74)【代理人】
【識別番号】100196575
【弁理士】
【氏名又は名称】高橋 満
(74)【代理人】
【識別番号】100168181
【弁理士】
【氏名又は名称】中村 哲平
(74)【代理人】
【識別番号】100117330
【弁理士】
【氏名又は名称】折居 章
(74)【代理人】
【識別番号】100160989
【弁理士】
【氏名又は名称】関根 正好
(74)【代理人】
【識別番号】100168745
【弁理士】
【氏名又は名称】金子 彩子
(74)【代理人】
【識別番号】100176131
【弁理士】
【氏名又は名称】金山 慎太郎
(74)【代理人】
【識別番号】100197398
【弁理士】
【氏名又は名称】千葉 絢子
(74)【代理人】
【識別番号】100197619
【弁理士】
【氏名又は名称】白鹿 智久
(72)【発明者】
【氏名】イム チャンスーン
【テーマコード(参考)】
5J104
【Fターム(参考)】
5J104AA01
5J104DA00
5J104JA03
(57)【要約】
【課題】ハードウェアの特性による誤差を補正するとともに、多数の音波が重複する場合でも、最寄りの位置から発信されるデータを正確に受信できるようにする。
【解決手段】音波通信装置は、前記音波送信部のハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数が割り当てられたハードウェア補正テーブルと、データ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための前記補正基準周波数を前記基本デシベルレベルで発生させる音波送信部と、前記音波送信部から送信された音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、前記ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうちから、最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタの個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する音波受信部と、を含む。
【選択図】図3
【特許請求の範囲】
【請求項1】
音波送信部のハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数が割り当てられたハードウェア補正テーブルと、
データ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための前記補正基準周波数を前記基本デシベルレベルで発生させる音波送信部と、
前記音波送信部から送信された音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、前記ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうちから、最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタの個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する音波受信部と、
を含む音波通信装置。
【請求項2】
前記音波送信部は、
2進数の送信データの個数とパリティビットの個数とを加えたデータの桁数をアレイファクタとして有する音波送受信配列を生成し、前記データ桁数に等間隔を有するそれぞれ異なるデータ周波数を割り当てたデータ周波数ブロックを生成し、前記データ桁数ごとにそれぞれ異なる分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックを生成するデータ周波数生成モジュールと、
送信するデータを2進数に変換し、変換された値が「1」を持つデータ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、前記変換された値が「1」を持つデータの個数と同じデータ桁数に割り当てられた分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための補正基準周波数を前記基本デシベルレベルで発生させるデータ周波数発信モジュールと、
を含む請求項1に記載の音波通信装置。
【請求項3】
前記音波送信部は、
暗号化キーを生成し、生成された暗号化キーを用いて暗号化左シフト値及び暗号化右シフト値を生成し、前記データ周波数ブロック及び分離受信フィルタ周波数ブロックからなる周波数ブロックのデータ桁数のうち奇数列に配置された周波数を、前記暗号化左シフト値だけ左に移動させて交換し、前記周波数ブロックのデータ桁数のうち偶数列に配置された周波数を、前記暗号化右シフト値だけ右に移動させて交換して暗号化する周波数ブロック暗号化モジュールを含み、
前記データ周波数発信モジュールは、暗号化された周波数ブロックのデータ桁数に割り当てられた周波数に対して周波数発信を行う請求項2に記載の音波通信装置。
【請求項4】
音波送信部に内蔵されたタイマーの時間を組み合わせるか、またはネットワークに接続されたサーバの時間を組み合わせて暗号化キーを生成し、前記暗号化キーの奇数列又は偶数列のいずれか一方の列を合わせて暗号化左シフト値で算出し、前記暗号化キーの他方の列を合わせて暗号化右シフト値を生成する請求項3に記載の音波通信装置。
【請求項5】
N番目のデータ桁数に割り当てられる分離受信フィルタ周波数は、N−1のデータ桁数に割り当てられるデータ周波数と、N+1のデータ桁数に割り当てられるデータ周波数との間の中間周波数であることを特徴とする請求項2に記載の音波通信装置。
【請求項6】
前記音波受信部は、
受信される音波信号を設定済みのサンプリング間隔で高速フーリエ変換(FFT)してデシベルを抽出し、サンプリング周波数配列に配置する高速フーリエ変換モジュールと、
前記補正周波数帯域で最高のデシベルが検出される周波数を補正周波数として決定し、前記補正周波数に割り当てられた補正値だけ前記サンプリング周波数配列に配置されたデシベルを移動させて受信補正する受信補正モジュールと、
前記暗号化キーを用いて、復号化左シフト値及び復号化右シフト値を生成し、前記音波送受信配列のアレイファクタのうち奇数列に配置された周波数を、前記復号化左シフト値だけ左に移動させて交換し、前記音波送受信配列のアレイファクタのうち偶数列に配置された周波数を、前記復号化右シフト値だけ右に移動させて交換した後、前記受信補正されたサンプリング周波数配列のうちから、前記データ周波数及び前記データ周波数に配置されたデシベルを抽出し、前記受信補正されたサンプリング周波数配列のうちから、前記分離受信フィルタ周波数及び前記分離受信フィルタ周波数に配置されたデシベルを抽出し、前記音波送受信配列に配置する復号化モジュールと、
前記復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた前記音波送受信配列のアレイファクタの個数だけ、データ周波数のデシベル値の降順にアレイファクタを抽出してデータを復元する音波データ分離モジュールと、
を含む請求項3に記載の音波通信装置。
【請求項7】
前記音波通信装置は、
前記音波データ分離モジュールを用いて復元されたデータにおいて、前記パリティビットを用いて復元されたデータの有効性検証を行う有効性検証モジュールを含む請求項6に記載の音波通信装置。
【請求項8】
音波を送信するスピーカのハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数を割り当ててハードウェア補正テーブルを生成する過程と、
データ周波数ごとにデータを割り当てるためのデータ周波数ブロックを生成し、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数ブロックを生成する音波送信過程と、
音波送信部から送信された音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、前記ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうちから、最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタの個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する音波受信過程と、
を含む音波通信方法。
【請求項9】
前記音波送信過程は、
2進数の送信データの個数とパリティビットの個数とを加えたデータ桁数をアレイファクタとして持つ音波送受信配列を生成し、前記データ桁数に等間隔を持つそれぞれ異なるデータ周波数を割り当てたデータ周波数ブロックを生成し、前記データ桁数ごとにそれぞれ異なる分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックを生成する周波数ブロック生成過程と、
送信するデータを2進数に変換し、変換された値が「1」を持つデータ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、前記変換された値が「1」を持つデータの個数と同じデータ桁数に割り当てられた分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための補正基準周波数を前記基本デシベルレベルで発生させる周波数発信過程と、
を含む請求項8に記載の音波通信方法。
【請求項10】
前記周波数ブロック生成過程と周波数発信過程との間に、
暗号化キーを生成し、生成された暗号化キーを用いて暗号化左シフト値及び暗号化右シフト値を生成し、前記データ周波数ブロック及び分離受信フィルタ周波数ブロックからなる周波数ブロックのデータ桁数のうち奇数列に配置された周波数を、前記暗号化左シフト値だけ左に移動させて交換し、前記周波数ブロックのデータ桁数のうち偶数列に配置された周波数を、前記暗号化右シフト値だけ右に移動させて交換して暗号化する過程をさらに含み、
前記暗号化された周波数ブロックのデータ桁数に割り当てられた周波数に対して前記周波数発信過程を行う請求項9に記載の音波通信方法。
【請求項11】
前記音波受信過程は、
受信された音波信号を設定済みのサンプリング間隔で高速フーリエ変換(FFT)してデシベルを抽出し、サンプリング周波数配列に配置する高速フーリエ変換過程と、
前記補正周波数帯域から最高のデシベルが検出される周波数を補正周波数として決定し、前記補正周波数に割り当てられた補正値だけ、前記サンプリング周波数配列に配置されたデシベルを移動させて受信補正する受信補正過程と、
前記暗号化キーを用いて、復号化左シフト値及び復号化右シフト値を生成し、前記音波送受信配列のアレイファクタのうち奇数列に配置された周波数を、前記復号化左シフト値だけ左に移動させて交換し、前記音波送受信配列のアレイファクタのうち偶数列に配置された周波数を、前記復号化右シフト値だけ右に移動させて交換した後、前記受信補正されたサンプリング周波数配列のうちから、前記データ周波数及び前記データ周波数に配置されたデシベルを抽出し、前記受信補正されたサンプリング周波数配列のうちから、前記分離受信フィルタ周波数及び前記分離受信フィルタ周波数に配置されたデシベルを抽出して前記音波送受信配列に配置する復号化過程と、
前記復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた前記音波送受信配列のアレイファクタの個数だけ、前記データ周波数のデシベル値の降順にアレイファクタを抽出してデータを復元する音波データ分離過程と、
を含む請求項10に記載の音波通信方法。
【請求項12】
前記音波データ分離過程を行った後、前記音波データ分離モジュールを用いて復元されたデータにおいて、前記パリティビットを用いて復元されたデータの有効性検証を行う有効性検証過程を有する請求項11に記載の音波通信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音波通信装置及び方法に係り、さらに詳しくは、音波を送信及び受信することによりデータを送受信する音波通信装置及び方法に関する。
【背景技術】
【0002】
ワイファイ(WiFi)、ブルートゥース(Bluetooth)などのような近距離無線通信を用いたゲーム及びチャットの活性化を図るためには、現在市中で使用されているほぼすべての移動通信端末に別途に装置を追加することなく、ソフトウェアのダウンロードだけで使用可能な近距離通信方式が必要である。移動通信端末には基本的に音声通信機能が備えられているため、この点に着目すれば、音波を用いた通信が有効な代案となり得る。
【0003】
また、多くの場合に音波通信は、ブルートゥースなどのRF通信(Radio Frequency Communication)よりも低消費電力通信が可能である。音波通信は、バイオメトリクス(Biometrics、Inc.)の米国特許第5,848,027号に開示されている。前記特許には、デジタルディスプレイ腕時計などの携帯端末のビープ音を利用してパソコン(PC)にデジタルデータを伝送する方法とシステムが記述されている。
【0004】
このシステムは、データを伝送するために2進数周波数シフト・キーイング(BFSK:Binary Frequency Shift Keying)変調や振幅シフトキーイング(ASK:Amplitude Shift Keying)変調などの連続波形(CW:Continuous Waveform)変調を用いる。
【0005】
BFSK変調方式は、2つの特定の周波数の音波にそれぞれ0と1を割り当てる方式であり、CW変調方式は、周波数とは無関係に、特定強度以上の音を特定時間以上持続することに1を割り当て、音がない状態を特定時間以上持続することに0を割り当てる方式である。このような変調方式による通信は、特定の単位時間の間に2つの形態の音波で1ビットのデータだけを伝送することができる。
【0006】
通常の移動通信端末で使用される音波は、電波に比べてかなり低周波であるため、伝送するデータ列を区分する時間である単位時間が、電波に比べてかなり長い。したがって、米国特許第5,848,027号のように2つの形態の音波のみを用いて単位時間中に1ビットだけを伝送する場合、伝送速度が低いと言わざるを得ない。
【0007】
このような問題を解決するために、2つの形態の音波だけでなく、様々な周波数音を有する音波を使用して通信する方式が提案された。つまり、使用される周波数音を音楽で使用されるピッチ周波数と定め、それぞれのピッチ周波数にデータのデジタル値を対応させ、様々な周波数音を伝送してデコードすることにより、通信する。このようにして単位時間当たりの多数のビットを伝送する。
【0008】
ところが、上記のように2進数のビットまたは2進数を超えるビットを用いて行う音波通信は、ハードウェアの特性を考慮していないという欠点がある。つまり、スピーカを介して音波を発信するとき、スピーカのハードウェア特性により、元々設定された基準周波数ではない、多少の誤差を有する他の周波数に載せられて音波が発信されることがあるが、これを受信するマイクロフォンは、元の基準周波数を復調するため、正確なデータを受信しないという問題が発生する虞がある。
【0009】
また、従来の音波通信は、音波の特性上、同じ領域で異なる信号を発生するときにデータを分離することができる基準がないため、多数の音波が重複する場合では、データを受信することができないという問題がある。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】米国特許第5,848,027号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
本発明の技術的課題は、ハードウェアの特性による誤差を補正することである。また、多数の音波が重複する場合でも、最寄りの位置から発信されるデータを正確に受信できるようにすることである。
【課題を解決するための手段】
【0012】
本発明の実施形態は、前記音波送信部のハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数が割り当てられたハードウェア補正テーブルと;データ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための前記補正基準周波数を前記基本デシベルレベルで発生させる音波送信部と;前記音波送信部から送信された音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、前記ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうちから、最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタ(array factor)の個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する音波受信部と;を含むことができる。
【0013】
前記音波送信部は、2進数の送信データの個数とパリティビットの個数とを加えたデータの桁数をアレイファクタとして有する音波送受信配列を生成し、前記データ桁数に等間隔を有するそれぞれ異なるデータ周波数を割り当てたデータ周波数ブロックを生成し、前記データ桁数ごとにそれぞれ異なる分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックを生成するデータ周波数生成モジュールと;
【0014】
送信するデータを2進数に変換し、変換された値が「1」を持つデータ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、前記変換された値が「1」を持つデータの個数と同じデータ桁数に割り当てられた分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための補正基準周波数を前記基本デシベルレベルで発生させるデータ周波数発信モジュールと;を含むことができる。
【0015】
前記音波送信部は、暗号化キーを生成し、生成された暗号化キーを用いて暗号化左シフト値及び暗号化右シフト値を生成し、前記データ周波数ブロック及び分離受信フィルタ周波数ブロックからなる周波数ブロックのデータ桁数のうち奇数列に配置された周波数を、前記暗号化左シフト値だけ左に移動させて交換し、前記周波数ブロックのデータ桁数のうち偶数列に配置された周波数を、前記暗号化右シフト値だけ右に移動させて交換して暗号化する周波数ブロック暗号化モジュールを含み、前記データ周波数発信モジュールは、暗号化された周波数ブロックのデータ桁数に割り当てられた周波数に対して周波数発信を行うことができる。
【0016】
音波送信部に内蔵されたタイマーの時間を組み合わせるか、またはネットワークに接続されたサーバの時間を組み合わせて暗号化キーを生成し、前記暗号化キーの奇数列又は偶数列のいずれか一方の列を合わせて暗号化左シフト値で算出し、前記暗号化キーの他方の列を合わせて暗号化右シフト値を生成することができる。
【0017】
N番目のデータ桁数に割り当てられる分離受信フィルタ周波数は、N−1のデータ桁数に割り当てられるデータ周波数と、N+1のデータ桁数に割り当てられるデータ周波数との間の中間周波数であることを特徴とすることができる。
【0018】
前記音波受信部は、受信される音波信号を設定済みのサンプリング間隔で高速フーリエ変換(FFT)してデシベルを抽出し、サンプリング周波数配列に配置する高速フーリエ変換モジュールと;前記補正周波数帯域で最高のデシベルが検出される周波数を補正周波数として決定し、前記補正周波数に割り当てられた補正値だけ前記サンプリング周波数配列に配置されたデシベルを移動させて受信補正する受信補正モジュールと;前記暗号化キーを用いて、復号化左シフト値及び復号化右シフト値を生成し、前記音波送受信配列のアレイファクタのうち奇数列に配置された周波数を、前記復号化左シフト値だけ左に移動させて交換し、前記音波送受信配列のアレイファクタのうち偶数列に配置された周波数を、前記復号化右シフト値だけ右に移動させて交換した後、前記受信補正されたサンプリング周波数配列のうちから、前記データ周波数及び前記データ周波数に配置されたデシベルを抽出し、前記受信補正されたサンプリング周波数配列のうちから、前記分離受信フィルタ周波数及び前記分離受信フィルタ周波数に配置されたデシベルを抽出し、前記音波送受信配列に配置する復号化モジュールと;前記復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた前記音波送受信配列のアレイファクタの個数だけ、データ周波数のデシベル値の降順にアレイファクタを抽出してデータを復元する音波データ分離モジュールと;を含むことができる。
【0019】
前記音波通信装置は、前記音波データ分離モジュールを用いて復元されたデータにおいて、前記パリティビットを用いて復元されたデータの有効性検証を行う有効性検証モジュールを含むことができる。
【0020】
本発明の実施形態は、音波を送信するスピーカのハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数を割り当ててハードウェア補正テーブルを生成する過程と;データ周波数ごとにデータを割り当てるためのデータ周波数ブロックを生成し、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数ブロックを生成する音波送信過程と;音波送信部から送信された音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、前記ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうちから、最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタの個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する音波受信過程と;を含むことができる。
【0021】
前記音波送信過程は、2進数の送信データの個数とパリティビットの個数とを加えたデータ桁数をアレイファクタとして持つ音波送受信配列を生成し、前記データ桁数に等間隔を持つそれぞれ異なるデータ周波数を割り当てたデータ周波数ブロックを生成し、前記データ桁数ごとにそれぞれ異なる分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックを生成する周波数ブロック生成過程と;送信するデータを2進数に変換し、変換された値が「1」を持つデータ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、前記変換された値が「1」を持つデータの個数と同じデータ桁数に割り当てられた分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、ハードウェア発信補正のための補正基準周波数を前記基本デシベルレベルで発生させる周波数発信過程と;を含むことができる。
【0022】
前記周波数ブロック生成過程と周波数発信過程との間に、暗号化キーを生成し、生成された暗号化キーを用いて暗号化左シフト値及び暗号化右シフト値を生成し、前記データ周波数ブロック及び分離受信フィルタ周波数ブロックからなる周波数ブロックのデータ桁数のうち奇数列に配置された周波数を、前記暗号化左シフト値だけ左に移動させて交換し、前記周波数ブロックのデータ桁数のうち偶数列に配置された周波数を、前記暗号化右シフト値だけ右に移動させて交換して暗号化する過程をさらに含み、前記暗号化された周波数ブロックのデータ桁数に割り当てられた周波数に対して前記周波数発信過程を行うことができる。
【0023】
前記音波受信過程は、受信された音波信号を設定済みのサンプリング間隔で高速フーリエ変換(FFT)してデシベルを抽出し、サンプリング周波数配列に配置する高速フーリエ変換過程と;前記補正周波数帯域から最高のデシベルが検出される周波数を補正周波数として決定し、前記補正周波数に割り当てられた補正値だけ、前記サンプリング周波数配列に配置されたデシベルを移動させて受信補正する受信補正過程と;前記暗号化キーを用いて、復号化左シフト値及び復号化右シフト値を生成し、前記音波送受信配列のアレイファクタのうち奇数列に配置された周波数を、前記復号化左シフト値だけ左に移動させて交換し、前記音波送受信配列のアレイファクタのうち偶数列に配置された周波数を、前記復号化右シフト値だけ右に移動させて交換した後、前記受信補正されたサンプリング周波数配列のうちから、前記データ周波数及び前記データ周波数に配置されたデシベルを抽出し、前記受信補正されたサンプリング周波数配列のうちから、前記分離受信フィルタ周波数及び前記分離受信フィルタ周波数に配置されたデシベルを抽出して前記音波送受信配列に配置する復号化過程と;前記復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた前記音波送受信配列のアレイファクタの個数だけ、前記データ周波数のデシベル値の降順にアレイファクタを抽出してデータを復元する音波データ分離過程と;を含むことができる。
【0024】
前記音波データ分離過程を行った後、前記音波データ分離モジュールを用いて復元されたデータにおいて、前記パリティビットを用いて復元されたデータの有効性検証を行う有効性検証過程を含むことができる。
【発明の効果】
【0025】
本発明の実施形態によれば、スピーカを介して音波を発信するときに、スピーカのハードウェア特性により、元々設定された基準周波数ではなく、多少の誤差を持つ他の周波数に載せられて音波が発信されることがあるが、これを受信する受信端で受信補正を行い正確なデータを受信することができる。また、多数の音波が重複する場合でも、データを正確に受信することができる。
【図面の簡単な説明】
【0026】
図1】本発明の実施例に係る音波通信装置の構成ブロック図である。
図2】本発明の実施例に係るハードウェア補正テーブルの構成例を示す図である。
図3】本発明の実施例に係る音波送信部の構成ブロック図である。
図4】本発明の実施例に係る周波数ブロックを示す図表である。
図5】本発明の実施例に係るデータ周波数生成モジュールが16進法の周波数ブロックを生成する例を示す図表である。
図6】本発明の実施例に基づいて暗号化キーを生成し、シフト値が生成される例を示す図表である。
図7】本発明の実施例に係る左シフト値を用いてデータ周波数が移動されて暗号化される様子を示す図である。
図8】本発明の実施例に係る右シフトの値を用いてデータ周波数が移動されて暗号化される様子を示す図である。
図9】本発明の実施例に基づいて10進データを2進数に変換して周波数に載せて発生させる例を示す図表である。
図10】本発明の実施例に基づいて16進データを2進数に変換して周波数に載せて発生させる例を示す図表である。
図11】本発明の実施例に係る音波受信部の構成ブロック図である。
図12】本発明の実施例に係る音波通信に該当する周波数帯域のみを、周波数間隔を有するサンプリング周波数配列に順次保存した図表である。
図13】本発明の実施例に基づいて、受信補正領域データの最高のデシベル値が検出された箇所を補正値として使用する様子を示す図表である。
図14】本発明の実施例に基づいて「−1」の補正値が用いられる様子を示す図表である。
図15】本発明の実施例に基づいて予め定義された受信フィルタ帯域のデシベル値を示す図表である。
図16】本発明の実施例に基づいて、シフト値を用いてデータ周波数が移動されて復号化される様子を示す図である。
図17】本発明の実施例に基づいて受信補正されたサンプリング周波数配列のうちから、分離受信フィルタ周波数及び分離受信フィルタ周波数に配置されたデシベルを抽出して保存した図表である。
図18】本発明の実施例に基づいて復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた音波送受信配列のアレイファクタの個数だけデータ周波数のデシベル値の降順に抽出する様子を示す図表である。
図19】本発明の実施例に係る音波通信過程を示すフローチャートである。
図20】本発明の実施例に係る音波送信過程を示すフローチャートである。
図21】本発明の実施例に係る音波受信過程を示すフローチャートである。
【発明を実施するための形態】
【0027】
以下、本発明が属する技術分野における通常の知識を有する者が、本発明を容易に実施できる程度に詳細に説明するために、本発明の最も好ましい実施例を添付図面を参照して詳細に説明する。本発明の目的、作用効果を含めて他の目的、特徴、しかも動作上の利点が好適な実施例の説明からより明らかになるであろう。以下で各図の構成要素に参照符号を付するに当たり、同一構成要素に対してはたとえ他の図に示されていてもできるだけ同一符号を付している。
【0028】
図1は、本発明の実施例に係る音波通信装置の構成ブロック図であり、図2は、本発明の実施例に係るハードウェア補正テーブルの構成例を示す図である。
【0029】
音波通信装置は、ハードウェア補正テーブル、音波送信部100および音波受信部200を含むことができる。
【0030】
ハードウェア補正テーブルは、図2に示すように、音波送信部100のハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数を割り当てたメモリテーブルである。音波信号を発信するときに、スピーカのハードウェア特性により、元々設定された基準周波数ではなく、多少の誤差を持つ他の周波数に載せられて音波が発信されることがあるが、このようなハードウェアの特性による誤差を補正するために、同一のハードウェア補正テーブルを音波送信部100及び音波受信部200にそれぞれ備える。補正値「0」に割り当てられた補正周波数を補正基準周波数とする。ハードウェア補正テーブルの例を図2に示す。図2を参照すると、補正周波数帯域としては18,065Hz〜18,095Hzを有し、補正周波数が5Hz間隔で割り当てられるため、18,065Hzでは3の補正値を有し、18,070Hzでは2の補正値を有し、18,075Hzでは1の補正値を有し、18,080Hzでは0の補正値を有し、18,085Hzでは−1の補正値を有し、18,090Hzでは−2の補正値を有し、18,095Hzでは−3の補正値を有することができる。したがって、0の補正値を有する18,080Hzが補正基準周波数に該当される。
【0031】
このようなハードウェア補正テーブルの補正値は、音波送信部100及び音波受信部200に同一の値として保存される。
【0032】
音波送信部100は、2進数の「1」を持つデータ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数を前記基本デシベルレベルで発生させ、スピーカを介して音波を送信する。
【0033】
音波送信部100は、音波受信部200のマイクロフォンを起動させてから音波信号を送信する。マイクロフォンは、好ましくは、低インピーダンスの素子として製造される。音波信号は、音波の周波数帯域、例えば、18,000Hz?19,800Hz間に載せられる信号である。
【0034】
特に、本発明の音波送信部100は、ハードウェアの特性による誤差を補正するハードウェア特性誤差補正手段と、多数の音波送信部100の音波送信により音波が重複して受信された場合、音波受信部200から最も近い音波送信部100から送信される音波のみを抽出して受信することができる重複音波分離手段と、を提供する。
【0035】
音波送信部100は、ハードウェア特性誤差補正手段として、ハードウェア発信補正のための補正周波数を選択して基本デシベルレベルで発信する。
【0036】
また、従来の音波通信は、音波の特性上、同じ領域で互いに異なる信号を発生時にデータを分離し得る基準がないため、多数の音波が重複する場合にはデータを受信することができないという問題がある。これを解決するために、本発明の音波送信部100は、重複音波分離手段として、2進数の「1」を持つデータ桁数に割り当てられたデータ周波数を設定済みの基本デシベルレベルで発生させ、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数を、前記基本デシベルレベルで発生させ、スピーカを介して音波を送信する。以下、図3を参照して音波送信部100について詳述する。
【0037】
音波受信部200は、音波送信部100のスピーカを介して伝送される音波信号をスピーカから受信してデータを復元する。特に、本発明の音波受信部200は、音波を送信したスピーカの特性を考慮した補正を行い、また、重複する音波信号のうちから、最寄りの位置から発信された音波信号のみを抽出してデータを復元することができる。このため、音波受信部200は、音波送信部100から送信した音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうち最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタの個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する。以下、詳述する。
【0038】
図3は、本発明の実施例に係る音波送信部100の構成ブロック図である。
【0039】
音波送信部100は、データ周波数生成モジュール110、周波数ブロック暗号化モジュール120、及びデータ周波数発信モジュール130を含むことができる。
【0040】
データ周波数生成モジュール110は、2進法データ周波数ブロックのデータ周波数又は16進法データ周波数ブロックのデータ周波数を選択的に生成することができる。
【0041】
まず、2進法データ周波数ブロックを生成する例を図4を参照して詳述する。
【0042】
2進法周波数ブロックの生成は、2進数形式のデータを受信するためのデータ周波数ブロックの生成と、同一の領域でデータを発信するときに近くの位置のデータを受信するための分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックの生成と、を含む。
【0043】
このため、データ周波数生成モジュール110は、2進数送信データの個数とパリティビットの個数とを加えたデータの桁数をアレイファクタとして有する音波送受信配列を生成し、データ桁数に同じ間隔を持つそれぞれ異なるデータ周波数を割り当てたデータ周波数ブロックを生成し、データ桁数ごとにそれぞれ異なる分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックを生成することができる。
【0044】
例えば、図4を参照すると、データ周波数生成モジュール110は、合計34個のアレイファクタを持つブロックを生成し、それぞれ50Hz単位のデータ周波数をそれぞれ持つデータ周波数ブロックと分離受信フィルタ周波数ブロックとを生成する。
【0045】
伝送するデータのサイズに応じて周波数の間隔を調整すると、より大きなデータを伝送することができ、最後の2ブロックは、有効性検証のためのパリティ領域として使用する。
【0046】
多数のスピーカの発信により重複受信される音波信号の分離のための受信フィルタの周波数は、データ周波数間隔のうち中間の周波数を使用する。N番目のデータ桁数に割り当てられる分離受信フィルタ周波数は、N−1のデータ桁数に割り当てられるデータ周波数と、N+1のデータ桁数に割り当てられるデータ周波数との間の中間周波数が使用される。図4の例示を参照すると、データ伝送のためのブロック32個の有効性検証のためのブロック2個を用いて、2の32乗の固有値を伝送することができる。したがって、232=4,294,967,296個の有効なコードを送ることができる。
【0047】
図4のデータ周波数ブロックの最後の33番目ブロックは、パリティ検出周波数であり、奇数ブロックからの周波数発生件数の合計を2で割って余りが1であれば発生し、0であれば発生しない。図4のデータ周波数ブロックの最後34番目ブロックは、パリティ検出周波数であり、奇数ブロックからの周波数発生件数の合計を2で割って余りが1であれば発生し、0であれば発生しない。
【0048】
受信フィルタの周波数は、データ伝送時に唯一の1つの周波数を発生し、データ伝送ブロックの1から34までの周波数発生個数を表現する。例えば、2進数で「11111111111111111111111111111111」(32個のデータ周波数と2つのパリティ周波数)発生時に合計34個分に相当する1,9750Hzの周波数を発生する。
【0049】
一方、2進法周波数の伝送は、16進法周波数の伝送よりも限られた周波数範囲においてより多くの組み合わせを作り出すことができるが、周波数干渉が極めて多い場所では、有効性検証が強化された16進法周波数ブロックの生成が望ましい。以下、図5を参照してデータ周波数生成モジュール110が16進法周波数ブロックを生成する例を説明する。
【0050】
16進法周波数ブロックの生成は、16進数形式のデータを受信するためのデータ周波数ブロックの生成と、同じ領域でデータ送信するときに近くの位置のデータを受信するための音波データ分離受信フィルタ周波数ブロックの生成と、を含む。
【0051】
図5のデータ周波数ブロックの例に示すように、合計5×8=40のブロックが生成され、周波数はそれぞれ40Hz単位で配列されている。
【0052】
伝送するデータのサイズに応じて周波数間隔を調整し、16進数の桁数を増やすと、より大きなデータを伝送することができ、最上側の列及び最右側の列は、有効性検証のためのパリティ領域として使用される。
【0053】
多数のスピーカの発信により重複受信される音波信号の分離のための受信フィルタの周波数は、データ周波数間隔のうち中間周波数を使用する(2進法周波数ブロックの生成と同一である)。図5は、16進数の7桁であるFFFFFFFまで表現できるデータを伝送する周波数ブロックを生成した例を示す。
【0054】
図5のデータ周波数Y軸パリティチェックでは、伝送する送信周波数ブロックの列の合計を2で割って余りが1であれば周波数を発生し、0であれば周波数を発生しない。X軸パリティチェックでは、送信周波数ブロックの各行の合計を2で割って余りが1であれば周波数を発生し、0であれば周波数を発生しない。パリティチェックでは、Y軸のパリティ及びX軸パリティの発生ブロックの合計を2で割って余りが1であれば周波数を発生し、0であれば周波数を発生しない。
【0055】
16進法周波数ブロックの生成時にも2進法周波数ブロックの生成と同様に、受信フィルタの周波数は、データ伝送時に唯一の1つの周波数が発生し、データ伝送ブロックの1から34までの周波数発生数を表現する。
【0056】
以下で2進法周波数ブロックを例として説明するが、同様に、本発明は、16進法周波数ブロックにも適用できることは自明であろう。
【0057】
周波数ブロック暗号化モジュール120は、2進法または16進法の周波数ブロックが露出して悪意的な目的で使用される虞がある。かかる問題を解決するために、本発明は、リアルタイムで周波数ブロックの周波数を変更してセキュリティを強化する。つまり、本発明は、周波数ブロックの周波数値が随時変更されて送出できるようにすることで、発生する周波数が露出されても悪意的な目的で使用される虞があるという問題を解決することができる。
【0058】
このため、周波数ブロック暗号化モジュール120は、生成される暗号化キーを用いて暗号化左シフト値及び暗号化右シフト値を生成し、データ周波数ブロック及び分離受信フィルタ周波数ブロックからなる周波数ブロックのデータ桁数のうち奇数列又は偶数列のいずれか一方の列に配置された周波数を、前記暗号化左シフト値だけ左に移動させて交換し、周波数ブロックのデータ桁数のうち左に移動されていない列に配置された周波数を、暗号化右シフト値だけ右に移動させて交換して暗号化する。
【0059】
ソフトウェア(S/W)を使用した音波通信発信器は、中央サーバ又はローカルサーバの時間を用いて年+月+日+時間+分の組み合わせにより暗号化キーを生成する。独立的なハードウェア(H/W)音波発生器を使用した発信器は、内蔵されたタイマーの時間を用いて年+月+日+時間+分の組み合わせにより暗号化キーを生成する。音波送信部100に内蔵されたタイマーの時間を組み合わせたり、ネットワークに接続されたサーバの時間を組み合わせたりして暗号化キーを生成する。例えば、暗号化キーは、YYYYMMDDhhmm(201504271202)の形態を有することができる。
【0060】
また、暗号化キーの奇数列又は偶数列のいずれか一方の列を合わせて暗号化左シフト値を算出し、前記暗号化キーの他方の列を合わせて暗号化右シフト値を生成する。
【0061】
例えば、図6(a)に示すように、時間の組み合わせにより生成された暗号化キーがあると仮定した場合、図6(b)に示すように左シフト値と右シフト値とを生成することができる。つまり、左シフト値は、基準列+奇数列の値であり、右シフト値には、基準列+偶数列の値が対応することができる。基準列が暗号化キーの最後の列である「1」であれば、下記の式1に示すように、左シフト値と右シフト値を生成して図6(b)の値を得ることができる。
[式1]
左シフト値=l+a+c+e+g+i+k
右シフト値=l+b+d+f+h+j
【0062】
上記のように左シフト値と右シフト値が生成されると、図7に示すように、周波数ブロックの桁数のうち奇数列は、左シフト値を用いて該当値だけ移動し、移動した桁の周波数と交換される。ただし、左への移動中に1番桁数の後方へ移動するとき、最後の桁数に移動してループを回す。
【0063】
同様に、図8に示すように、周波数ブロックの桁数のうち偶数列は、右シフト値を用いて該当値だけ移動し、移動した桁の周波数と交換される。ただし、右に移動中に最後の桁数の次に移動時に1桁数に移動してループを回す。
【0064】
データ周波数発信モジュール130は、送信するデータを2進数に変換し、変換された値が「1」を持つデータ桁数に割り当てられたデータ周波数を、設定済みの基本デシベルレベルで発生させ、変換された値が「1」を持つデータの個数と同じデータ桁数に割り当てられた分離受信フィルタ周波数を、基本デシベルレベルで発生させ、ハードウェア発信補正のための補正基準周波数を基本デシベルレベルで発生させる。
【0065】
上述すると、10進データを伝送する場合、周波数ブロックを暗号化した後、伝送する10進データを2進数に変換し、1であれば、該当桁数の周波数を発生させる。データ周波数ブロックに発生する周波数の個数を合わせることで、受信フィルタの周波数の桁数に該当する周波数を発生させる。ハードウェア発信補正のための補正基準周波数の補正値「0」に位置した周波数を発生させる。
【0066】
例えば、「1234」という10進データを伝送する場合、図9に示すように、「1234」を2進数に変換すると、10011010010の2進数に該当する周波数を送出する。そして、データ周波数ブロックに発生する周波数の個数が6個であるため、分離受信フィルタ周波数のブロックの6番目の桁に該当する18,350Hzを基本デシベルとして送出する。また、ハードウェア発信補正のための補正基準周波数の補正値「0」に位置した18,080Hzの周波数を、基本デシベルとして発生させる。
【0067】
抽出された送出周波数を同じ基本デシベルとして正弦波(sine wave)を生成し、スピーカを介して発信する。タイマーの分(minute)が変更される場合、送出周波数を周波数ブロック暗号化モジュール120を用いて再配列した後、再度送出する。
【0068】
16進データを伝送する場合、周波数ブロックを暗号化した後、伝送する16進データを2進数に変換し、1であれば、該当桁数の周波数を発生させる。データ周波数ブロックに発生する周波数の個数を合わせることで、受信フィルタの周波数の桁数に該当する周波数を発生させる。ハードウェア発信補正のための基準周波数の補正値「0」に位置する周波数を発生させる。
【0069】
たとえば、「F00000F」という16進データを伝送するとき、各桁数を2進数に変換すると、1111、0000、0000、0000、0000、0000、1111の4バイト2進数の合計7つが生成され、図10に示すように、データ周波数ブロックに割り当てられる。また、データ周波数ブロックに発生する周波数の個数が8個であるため、分離受信フィルタの周波数ブロックの8番目の桁に該当する18,390Hzを基本デシベルとして送出する。さらに、ハードウェア発信補正のための補正基準周波数の補正値「0」に位置した18,080Hzの周波数を基本デシベルとして発生させる。
【0070】
一方、前記音波送信部100の構成の説明では、周波数ブロック暗号化モジュール120が適用された例として、データ周波数生成モジュール110で生成された周波数ブロックに対して周波数ブロック暗号化モジュール120が暗号化を行い、暗号化された周波数ブロックのデータ桁数に割り当てられた周波数に対して周波数の発信を行う例を説明した。しかし、本発明は、これに限定されず、データ周波数生成モジュール110で周波数ブロックを生成し、暗号化せずにデータ周波数発信モジュール130を介して直接データを伝送する実施例も可能であることは自明である。
【0071】
図11は、本発明の実施例に係る音波受信部の構成ブロック図である。
【0072】
本発明の音波受信部200は、同じ音波通信の発信ソフトウェアを使用したデータ周波数の発信時、スピーカまたは音響機器(H/W)の特性により発生する出力誤差(Hz)を自動的に感知して音波データを受信できるように、すべてのH/Wを発信器として使用できるようにする。
【0073】
音波送信部100が周波数ブロックの周波数を暗号化して発信するとき、前記音波受信部200は、それを解釈することができる暗号化解釈を行い、この時、暗号化解釈では、音波送信部100と同じ周波数配列をリアルタイムで同期化できるようにする。また、同じ場所でそれぞれ異なる信号のデータ周波数を発信する場合、最寄りの位置から発信されている音波データを受信することができるように、音波データを分離するモジュールを提案することにより、複数の音波信号を同一の場所でクロストークなしで使用できるようにする。
【0074】
このため、音波受信部200は、音波データ受信モジュール210、高速フーリエ変換モジュール220、受信補正モジュール230、音波データ分離モジュール240、及び有効性検証モジュール250を含むことができる。
【0075】
音波データ受信モジュール210は、スマートフォン又はタブレットPCに設けられたマイクロフォンに該当するもので、このようなマイクロフォンのリソースを介して所定時間間隔で10ms前後の音波データを受信する。
【0076】
高速フーリエ変換モジュール220は、受信された音波信号を設定済みのサンプリング間隔で高速フーリエ変換(FFT)してデシベルを抽出し、サンプリング周波数配列に配置する。音波送信部100から送出されたデータ周波数を解析するためにFFT(高速フーリエ変換方式)を適用することにより、時間データを周波数データに変換する作業を行う。
【0077】
FFT分析では、44100Hzのサンプリングレート(Sampling rate)の時間データを、5Hz単位を持つ8820個のブロックの周波数データに変換することができる。音波送信部100から送信されるデータのサイズが大きいほど、ブロックの数を増やすことで周波数間隔を小さくする。分析されたFFTデータは、図12に示すように、音波通信に該当する周波数帯域(18000Hz?19800Hz)でのみ周波数間隔を持つサンプリング周波数配列に順次保存される。
【0078】
受信補正モジュール230は、補正周波数帯域で最高のデシベルが検出される周波数を補正周波数として決定し、補正周波数に割り当てられた補正値だけ前記サンプリング周波数配列に配置されたデシベルを移動させて受信補正する。
【0079】
受信補正モジュール230は、発信器の機械的(H/W)特性によって発生する周波数の誤差を補正することにより、機械的特性に関係なく正確なデータを受信することができるように開発されたモジュールである。受信補正モジュール230は、高速フーリエ変換モジュール220を介して分析された配列から、受信補正領域帯の周波数配列を検出する。図13に示すように、受信補正領域データの最高デシベル値が検出された箇所を補正値とする。受信補正領域のデータのデシベル値が最も大きく検出された箇所を補正値として使用する。補正値が「0」である場合は、FFT分析元データ(FFT analysis original data)に対して別途の補正ロジックを適用せずに暗号化解析モジュールを行う。
【0080】
しかし、補正値が0でない場合、FFT分析元データのデシベル値を補正値だけシフトさせた後、暗号化解析モジュールを行う。例えば、受信補正領域帯の周波数において18,085Hzが最高のデシベルを有する場合、18,080Hzの補正基準周波数が5Hzだけ移動して伝送されたと言える。したがって、図14に示すように、18,085Hzに割り当てられた補正値「−1」だけデシベルを移動させる受信補正を行う。
【0081】
復号化モジュールは、受信フィルタを介して他の全ての周波数をブラインド処理した後、予め定義された受信フィルタ帯域の周波数のみを処理する。したがって、図15に示すように、予め定義された受信フィルタ帯域を抽出して処理することができる。
【0082】
復号化モジュールは、暗号化キーを用いて復号化左シフト値及び復号化右シフト値を生成し、音波送受信配列のアレイファクタのうち奇数列又は偶数列のいずれか一方の列に配置された周波数を、復号化左シフト値だけ左に移動させて交換し、音波送受信配列のアレイファクタのうち左に移動されていない列に配置された周波数を、前記復号化右シフト値だけ右に移動させて交換した後、受信補正されたサンプリング周波数配列のうちから、データ周波数及びデータ周波数に配置されたデシベルを抽出し、受信補正されたサンプリング周波数配列のうちから、分離受信フィルタ周波数及び分離受信フィルタ周波数に配置されたデシベルを抽出して前記音波送受信配列に配置する。
【0083】
つまり、復号化モジュールは、中央サーバ又はローカルサーバ、スマートフォンのGPS時刻に基づいて暗号化キーを生成する。暗号化キーは、音波送信部100の周波数ブロック暗号化モジュール120で生成された暗号化キーと同様に生成され、生成された暗号化キーの特定の列を合わせて左シフト値、右シフト値を決定する。決定された左シフト値に応じて、図16(a)に示すように、奇数列のアレイファクタの周波数を左シフト値だけ移動させ、また、右シフト値に応じて、図16(b)に示すように、偶数列のアレイファクタの周波数を右シフト値だけ移動させる。そして、図17に示すように、受信補正されたサンプリング周波数配列のうちから、分離受信フィルタ周波数及び分離受信フィルタ周波数に配置されたデシベルを抽出して保存する。
【0084】
参考までに、復号化を行う場合には、周波数を同じシフト値を用いて発信部と同様に移動させる。暗号化と復号化の両方において周波数のみが移動される。音波送信部が抽出されたシフト値を用いて周波数を移動させた後、該当ブロックの周波数を発信すると、音波送信部が該当キー値を用いて周波数を特定のブロックに移動させて周波数を送信したため、音波受信部200の復号化モジュールも同じシフト値を用いて周波数を移動させてブロックに配置した後、受信された周波数を該当ブロックにマーキングして解釈することになる。
【0085】
音波データ分離モジュール240は、図18に示すように、復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた音波送受信配列のアレイファクタの個数だけ、データ周波数のデシベル値の降順に抽出してデータを復元する。
【0086】
既存の音波通信は、音波の特性上、同じ領域で異なる信号を発生するとき、データを分離することができる基準がないので、データを受信することができないという問題があるが、本発明は、音波データ分離モジュールを介して最寄りの位置から発信される信号を受信することができる。
【0087】
例えば、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数が18,350Hzであれば、データ周波数のデシベルのうちデシベルの最高値を有する順に6つのアレイファクタを抽出することができる。したがって、図9に示すように、パリティビットとして「00」を有する「10001101001」データ+「00」パリティで構成される「100110100100」の全体データが送信される場合、分離受信フィルタ周波数は、22,25,26,28,31,34のアレイファクタを抽出し、受信データとして「100110100100」を受信することができる。
【0088】
参考までに、分離受信フィルタ周波数のデシベル値が最も高いアレイファクタのファクタ値は、最寄りの位置から発信された発信器から受信した周波数データ受信個数の値である。本発明における音波送信部100は、同じ基本デシベルでデータ周波数を送出しているので、データ周波数のデシベル値の降順に抽出されたアレイファクタの値だけ周波数データを受信すると、最寄りの位置から発信しているデータを受信することができる。
データ抽出基準値:n=Max(受信フィルタのデシベル)のアレイファクタ
データの抽出:data[n]=Max(データ周波数のデシベル)の上位n個
【0089】
有効性検証モジュール250は、音波データ分離モジュール240を介して復元されたデータにおいて、前記パリティビットを用いて復元されたデータの有効性検証を行う。
【0090】
有効性検証では、データ領域の周波数ブロック1?32のうち奇数ブロックとしてマーキングされた周波数の合計が奇数であれば、33番のブロックの周波数が同時に受信されるべきである。奇数であるにもかかわらず33番のブロックに該当する周波数が受信されていなければ、データ受信エラーとして認識され、再び受信されて分析される。このような分析は、例えば、合計5回行うことができる。
【0091】
また、同じ有効性検証において、データ領域の周波数ブロック1?32のうちの偶数ブロックとしてマーキングされた周波数の合計が偶数であれば、34番ブロックの周波数が同時に受信されるべきである。偶数にもかかわらず34番のブロックに該当する周波数が受信されていなければ、データ受信エラーとして認識され、再び受信されて分析される。このような分析は、例えば、合計5回の行うことができる。参考までに、有効性検証中にエラーが発生して所定回数(例えば、5回)が蓄積されると、一定時間待機した後に再び受信することになる。
【0092】
一方、前記音波受信部200の構成の説明では、周波数ブロックの暗号化が行われたデータを受信したときに行われた復号化を含む例を説明した。モジュールが適用された例として、周波数ブロック暗号化モジュール120が、データ周波数生成モジュール110で生成された周波数ブロックに対して暗号化を行い、暗号化された周波数ブロックのデータ桁数に割り当てられた周波数に対して周波数発信を行う例を説明した。しかし、本発明はこれに限定されるものではなく、データ周波数生成モジュール110が周波数ブロックの暗号化を行わずにデータ周波数発信モジュール130を介して直接データを伝送した場合、これを受信して復号化せずにデータを復元処理する場合にも適用できることは明らかである。
【0093】
図19は、本発明の実施例に係る音波通信過程を示すフローチャートであり、図20は、本発明の実施例に係る音波送信過程を示すフローチャートであり、図21は、本発明の実施例に係る音波受信過程を示すフローチャートである。
【0094】
本発明の音波通信過程は、ハードウェア補正テーブルの生成過程S190、音波送信過程S200、および音波受信過程S210を有することができる。
【0095】
ハードウェア補正テーブルの生成過程S190は、音波を送信するスピーカのハードウェア特性による誤差を補正する補正値ごとに補正周波数が割り当てられた補正周波数帯域を設定し、補正値「0」に補正基準周波数を割り当てることによりハードウェア補正テーブルを生成する過程である。
【0096】
音波信号を発信するとき、スピーカのハードウェア特性により、元々設定された基準周波数ではなく、多少の誤差を持つ他の周波数に載せられて音波が発信されることがあるが、このようなハードウェアの特性による誤差を補正するために、同じハードウェア補正テーブルを音波送信部100及び音波受信部200にそれぞれ備える。補正値 「0」に割り当てられた補正周波数を補正基準周波数とする。ハードウェア補正テーブルの例を図2に示した。図2を参照すると、補正周波数帯域としては18,065Hz〜18,095Hzを有し、補正周波数が5Hz間隔で割り当てられるため、18,065Hzでは3の補正値を有し、18,070Hzでは2の補正値を有し、18,075Hz〜1の補正値を有し、18,080Hzでは0の補正値を有し、18,085Hzでは−1の補正値を有し、18,090Hzでは−2の補正値を有し、18,095Hzでは−3の補正値を有することができることがわかる。したがって、0の補正値を有する18,080Hzが補正基準周波数に該当される。
【0097】
音波送信過程S200は、データ周波数ごとにデータを割り当てるためのデータ周波数ブロックを生成し、音波受信時に最寄りの位置から送信された音波に載せられたデータを受信するための分離受信フィルタ周波数ブロックを生成する過程である。
【0098】
音波送信過程S200は、図20を参照して詳述すると、周波数ブロックの生成過程S202、暗号化過程S204、および周波数発信コースS206を有することができる。
【0099】
周波数ブロックの生成過程S202では、2進数の送信データの個数とパリティビットの個数とを加えたデータ桁数をアレイファクタとして持つ音波送受信配列を生成し、データ桁数に同じ間隔を有する異なるデータ周波数を割り当てたデータ周波数ブロックを生成し、各データ桁数ごとにそれぞれ異なる分離受信フィルタ周波数を割り当てた分離受信フィルタ周波数ブロックを生成する。例えば、図4に示すように、32個の2進数の送信データと2個のパリティビットとを加えた34個のデータ桁数のアレイファクタを有する音波送受信配列を生成し、各データ桁数ごとにデータ周波数及び分離受信フィルタ周波数をそれぞれ割り当てる。
【0100】
暗号化過程S204では、暗号化キーを生成し、生成された前記暗号化キーを用いて暗号化左シフト値及び暗号化右シフト値を生成し、前記データ周波数ブロック及び分離受信フィルタ周波数ブロックからなる周波数ブロックのデータ桁数のうち奇数列に配置された周波数を、前記暗号化左シフト値だけ左に移動させて交換し、周波数ブロックのデータ桁数のうち偶数列に配置された周波数を、暗号化右シフト値だけ右に移動させて交換して暗号化する。つまり、中央サーバ又はローカルサーバの時間を用いて年+月+日+時間+分の組み合わせにより暗号化キーを生成する。独立的なハードウェア(H/W)音波発生器を使用した発信器は、内蔵されたタイマーの時間を用いて年+月+日+時間+分の組み合わせにより暗号化キーを生成する。音波送信部100に内蔵されたタイマーの時間を組み合わせたり、ネットワークに接続されたサーバの時間を組み合わせたりして暗号化キーを生成する。例えば、暗号化キーは、YYYYMMDDhhmm(201504271202)の形態を有することができる。
【0101】
また、暗号化キーの奇数列又は偶数列のいずれか一方の列を合わせて暗号化左シフト値を算出し、前記暗号化キーの他方の列を合わせて暗号化右シフト値を生成する。
【0102】
上記のように左シフト値と右シフト値が生成されると、図7に示すように、周波数ブロックの桁数のうち奇数列は、左シフト値を用いて該当値だけ移動し、移動した桁の周波数と交換される。ただし、左への移動中に1番桁数の後方へ移動するとき、最後の桁数に移動してループを回す。同様に、図8に示すように、周波数ブロックの桁数のうち偶数列は、 右シフト値を用いて該当値だけ移動し、移動した桁の周波数と交換される。ただし、右に移動中に最後の桁数の次に移動するとき、1桁数に移動してループを回す。
【0103】
暗号化過程S204を行った後、周波数発信過程S206では、送信するデータを2進数に変換し、変換された値が「1」を持つデータ桁数に割り当てられたデータ周波数を、設定済みの基本デシベルレベルで発生させ、変換された値が「1」を持つデータの個数と同じデータ桁数に割り当てられた分離受信フィルタ周波数を、基本デシベルレベルで発生させ、ハードウェア発信補正のための補正基準周波数を基本デシベルレベルで発生させる。
【0104】
つまり、10進データを2進数に変換して周波数に載せて発生させる図9、及び16進データを2進数に変換して周波数に載せて発生させる図10に示すように、「1」の値を持つデータ桁数に割り当てられたデータ周波数に基本デシベルレベルで伝送し、分離受信フィルタ周波数と補正基準周波数の基本デシベルレベルで伝送する。
【0105】
一方、前記音波送信過程S200の説明では、周波数ブロックの暗号化が適用された例として、周波数ブロックに対して周波数ブロック暗号化を行い、暗号化された周波ブロックのデータ桁数に割り当てられた周波数に対して周波数発信を行う例を説明した。しかし、本発明はこれに限定されるものではなく、周波数ブロックを生成し、暗号化せずに直接データ周波数発信を行いデータを伝送することができるであろう。
【0106】
一方、上述したように音波の送信を行った後、相手は音波受信過程S210を行う。音波受信過程S210では、音波送信部100から送信された音波信号を受信し、前記データ周波数ごとにデシベルを抽出して配列させた後、ハードウェア補正テーブルを用いて、抽出した補正値だけ配列をシフトさせて補正を行い、分離受信フィルタ周波数の帯域のうちから、最高のデシベル値を有する分離受信フィルタ周波数に割り当てられたアレイファクタの個数だけ、前記データ周波数のデシベル値の降順に抽出してデータを復元する。
【0107】
音波受信過程S210は、図21を参照して上述すると、高速フーリエ変換過程S212、受信補正過程S214、復号化過程S216、および音波データ分離過程S218を有することができる。このほか、有効性検証過程S219を有することができる。
【0108】
高速フーリエ変換過程S212は、受信された音波信号を設定済みのサンプリング間隔で高速フーリエ変換FFTしてデシベルを抽出し、サンプリング周波数配列に配置する過程である。
【0109】
FFT分析では、44100Hzのサンプリングレート(Sampling rate)の時間データを5Hz単位を持つ8820個のブロックの周波数データに変換することができる。音波送信部100から送信されるデータのサイズが大きいほど、ブロックの数を増やすことで周波数間隔を小さくする。分析されたFFTデータは、図12に示すように、音波通信に該当する周波数帯域(18000Hz?19800Hz)でのみ周波数間隔を持つサンプリング周波数配列に順次保存される。
【0110】
受信補正過程S214では、補正周波数帯域で最高のデシベルが検出される周波数を補正周波数として決定し、補正周波数に割り当てられた補正値だけサンプリング周波数配列に配置されたデシベルを移動させて受信補正する。図13に示すように、 受信補正領域データの最高デシベル値が検出された箇所を補正値とする。補正値が「0」である場合は、FFT分析元データに対して別途の補正ロジックを適用せずに暗号化解析モジュールを行う。しかし、補正値が0でない場合、FFT分析元データのデシベル値を補正値だけシフトさせた後、暗号化解析モジュールを行う。例えば、受信補正領域帯の周波数において18,085Hzが最高のデシベルを有する場合、18,080Hzの補正基準周波数が5Hzだけ移動して伝送されたと言える。したがって、図14に示すように、18,085Hzに割り当てられた補正値「−1」だけデシベルを移動させる受信補正を行う。
【0111】
復号化過程S216では、暗号化キーを用いて復号化左シフト値及び復号化右シフト値を生成し、音波送受信配列のアレイファクタのうち奇数列に配置された周波数を、前記復号化左シフト値だけ左に移動させて交換し、音波送受信配列のアレイファクタのうち偶数列に配置された周波数を、復号化右シフト値だけ右に移動させて交換した後、受信補正されたサンプリング周波数配列のうちから、前記データ周波数及び前記データ周波数に配置されたデシベルを抽出し、前記受信補正されたサンプリング周波数配列のうちから、分離受信フィルタ周波数及び前記分離受信フィルタ周波数に配置されたデシベルを抽出して前記音波送受信配列に配置する。
【0112】
復号化過程S216では、暗号化キーは、音波送信部100の周波数ブロック暗号化モジュール120で生成された暗号化キーと同様に生成され、生成された暗号化キーの特定の列を合わせて左シフト値、右シフト値を決定する。決定された左シフト値に応じて、図16(a)に示すように、奇数列のアレイファクタの周波数を左シフト値だけ移動させ、また、右シフト値に応じて、図16(b)に示すように、偶数列のアレイファクタの周波数を右シフト値だけ移動させる。そして、図17に示すように、受信補正されたサンプリング周波数配列のうちから、分離受信フィルタ周波数及び分離受信フィルタ周波数に配置されたデシベルを抽出して保存する。
【0113】
音波データ分離過程S218では、復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた音波送受信配列のアレイファクタの個数だけ、データ周波数のデシベル値の降順に抽出してデータを復元する。例えば、図18に示すように、復号化された音波送受信配列から、分離受信フィルタ周波数に配置されたデシベルのうち最高のデシベル値を有する分離受信フィルタ周波数を抽出し、抽出した分離受信フィルタ周波数に割り当てられた音波送受信配列のアレイファクタの個数だけ、データ周波数のデシベル値の降順に抽出してデータを復元する。既存の音波通信は、音波の特性上、同じ領域で異なる信号を発生するとき、データを分離することができる基準がないので、データを受信することができないという問題があるが、本発明は、音波データ分離モジュールを介して最寄りの位置から発信される信号を受信することができる。
【0114】
音波データが分離されて復元された受信データは、さらに有効性検証過程S219を有することができる。有効性検証の過程S219では、音波データ分離モジュール240を介して復元されたデータにおいて前記パリティビットを用いて復元されたデータの有効性検証を行う。
【0115】
有効性検証では、データ領域の周波数ブロック1?32のうち奇数ブロックとしてマーキングされた周波数の合計が奇数であれば、33番のブロックの周波数が同時に受信されるべきである。奇数であるにもかかわらず33番のブロックに該当する周波数が受信されていなければ、データ受信エラーとして認識され、再び受信されて分析される。また、同じ有効性検証において、データ領域の周波数ブロック1?32のうちの偶数ブロックとしてマーキングされた周波数の合計が偶数であれば、34番ブロックの周波数が同時に受信されるべきである。偶数にもかかわらず34番のブロックに該当する周波数が受信されていなければ、データ受信エラーとして認識され、再び受信されて分析される。このような分析は、例えば、合計5回の行うことができる。
【0116】
上述した本発明の説明での実施例は、様々な実施可能な例のうち当業者の理解を助けるために最も望ましい例を選択して提示したものであり、本発明の技術的思想が必ずしもこの実施例によって限定されたり制限されるものではなく、本発明の技術的思想を逸脱しない範囲内で多様な変化と変更及び均等な他の実施例が可能なものである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
【国際調査報告】