(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024118513
(43)【公開日】2024-09-02
(54)【発明の名称】水中通信システム、送信機及び受信機
(51)【国際特許分類】
H04L 27/18 20060101AFI20240826BHJP
H04B 11/00 20060101ALI20240826BHJP
【FI】
H04L27/18
H04B11/00 D
【審査請求】有
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023024828
(22)【出願日】2023-02-21
(71)【出願人】
【識別番号】394025094
【氏名又は名称】三菱電機ディフェンス&スペーステクノロジーズ株式会社
(71)【出願人】
【識別番号】504300088
【氏名又は名称】国立大学法人北海道国立大学機構
(74)【代理人】
【識別番号】110002491
【氏名又は名称】弁理士法人クロスボーダー特許事務所
(72)【発明者】
【氏名】湯浅 智志
(72)【発明者】
【氏名】金子 智巳
(72)【発明者】
【氏名】吉澤 真吾
(57)【要約】
【課題】受信信号にドップラーシフト推定及び補正を行わずに安定した音響通信を行う水中通信システムを提供する。
【解決手段】水中通信を行う送信機は、送信するべきデジタル信号である送信データが2ビットごとに分割された分割データの値が示す00,01,10,11のいずれかと、分割データの送信順位とから分割データ毎に決まる波形パターンを送信順位で並べ、かつ、波形パターンどうしの送信間隔がT
intだけ空けたデジタル信号であり、送信するべき送信データに対応するデジタル信号である送信信号5aを生成する。送信機は、生成した送信信号5aをアナログ信号へ変換して送波信号を生成し、生成した送波信号を受信機に向けて送信する。
【選択図】
図5
【特許請求の範囲】
【請求項1】
送信機と受信機とを備える水中通信システムにおいて、
前記送信機は、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号を生成する送信信号生成部と、
アナログ信号へ変換された前記送信信号を音波である送波信号として送信する送波器と、
を備え、
前記受信機は、
前記送波信号を受信する受波器と、
前記送波信号がデジタル信号に変換された受信信号から、切り出し信号として信号を切り出す信号切り出し部と、
前記同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、前記切り出し信号の切り出し回数を前記送信順位とみなし、各分割データの値及び前記送信順位とから決まる複数の前記波形パターンを参照信号として使用し、前記切り出し信号と、各参照信号との相互相関関数計算を行う相関計算部と、
前記相互相関関数計算の結果から、前記各参照信号のうち、前記切り出し信号に対応する前記参照信号を決定し、決定した前記参照信号に基づき、前記切り出し信号の示すビット値と、前記切り出し信号の受信時刻とを決定する相関比較部と、
を備える水中通信システム。
【請求項2】
前記同一ビット数は、
前記送信機における送信データを同一ビット数ごとに分割する各分割データのビット数が、送信するシンボルの情報量を示すビット数である請求項1に記載の水中通信システム。
【請求項3】
前記送信機の前記送信信号生成部は、
水中における音波の伝搬環境に応じて、前記送信間隔の長さを調整する請求項1または請求項2に記載の水中通信システム。
【請求項4】
前記受信機は、さらに、
複数の参照信号の波形を伸ばし、あるいは縮める伸縮変換を行う参照信号調整部を備え、
前記相関計算部は、
前記伸縮変換された各参照信号を用いて前記相互相関関数計算を行う請求項1または請求項2に記載の水中通信システム。
【請求項5】
前記水中通信システムは、
前記受信機を複数備え、
複数の受信機の備える各受波器は、
他の前記受信機の備える前記受波器と異なる位置に配置されている請求項1または請求項2に記載の水中通信システム。
【請求項6】
複数の受信機の備える各受波器の前記位置は、
前記送信機の位置を測位するための測位方式に応じた位置である請求項5に記載の水中通信システム。
【請求項7】
水中通信に使用される送信機において、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号を生成する送信信号生成部と、
アナログ信号へ変換された前記送信信号を音波である送波信号として送信する送波器と、
を備える送信機。
【請求項8】
水中通信に使用される受信機において、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号がアナログ信号に変換された送波信号を受信する受波器と、
前記送波信号がデジタル信号に変換された受信信号から、切り出し信号として信号を切り出す信号切り出し部と、
前記同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、前記切り出し信号の切り出し回数を前記送信順位と見なし、各分割データの値及び前記送信順位とから決まる複数の前記波形パターンを参照信号として使用し、前記切り出し信号と、各参照信号との相互相関関数計算を行う相関計算部と、
前記相互相関関数計算の結果から、前記各参照信号のうち、前記切り出し信号に対応する前記参照信号を決定し、決定した前記参照信号に基づき、前記切り出し信号の示すビット値と、前記切り出し信号の受信時刻とを決定する相関比較部と、
を備える受信機。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、水中通信に使用される、水中通信システム、送信機及び受信機に関する。本開示は、水中通信における送信データと受信データの同期、及び水中通信におけるドップラーシフト対策に関する。
【背景技術】
【0002】
従来技術としては、送信データと受信データの同期、あるいは水中通信におけるドップラーシフト対策に関する技術として特許文献1から特許文献4がある。
特許文献1は、拡散符号による変調を用いてシンボル毎に複数の拡散符号のなかから拡散符号を順次選択し、順次選択された拡散符号の境界にダミー区間を設けて相関特性の悪化を改善する方法を示している。受信においてフレーム同期は通信フレームの先頭のシンボルで1回のみ行い、後続のシンボルの受信信号からの切り出しタイミングは固定のシンボル長で切出す。
【0003】
特許文献2は、通信フレームの先頭に位置する同期シンボル系列から自己相関関数を求め、自己相関関数のピーク値からフレーム同期を取る方法を示している。フレーム同期は通信フレームの先頭で1回のみ行う。
【0004】
特許文献3は、通信パケット内で参照信号からドップラーシフト量を推定し、情報信号の推定周波数に補正を加える方法によりドップラーシフト推定及び補正を行う。
【0005】
特許文献4は、OFDM信号内に挿入したパイロット信号でドップラーシフト量を推定し、リサンプリング変換と周波数ずれ補正の2段階によりドップラーシフト補正を行う。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2011-151436号公報
【特許文献2】特開2006-109279号公報
【特許文献3】特開2020-68500号公報
【特許文献4】特開2017-195566号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1では、受信においてフレーム同期は通信フレームの先頭のシンボルで1回のみ行い、後続のシンボルの受信信号からの切り出しタイミングは固定のシンボル長で切出す。このため、ドップラーシフトにより受信信号が時間的な伸び縮みしたとき、望ましい受信タイミングの間でずれが生ずる。よって通信フレームの後方の位置で時間位置ずれが無視できず復調誤りが発生する。
【0008】
特許文献2では、フレーム同期は通信フレームの先頭で1回のみ行う。よって、ドップラーシフトにより受信信号が時間的な伸び縮みしたとき、通信フレーム内で後続するQPSKシンボル系列に対する信号区切り位置と望ましい受信タイミングの間でずれが生ずる。よって通信フレームの後方の位置で時間位置ずれが無視できず復調誤りが発生する。
【0009】
特許文献3については、水中音響では音波反射が強い環境ではマルチパス干渉を受けるが、直接波と反射波ではドップラーシフト量が異なる場合がある。受信信号がドップラーシフトとマルチパス干渉の両方の影響を受けるときは正確なドップラーシフト推定が困難となる。
【0010】
特許文献4の処理は複雑でかつ計算量が大きいため、受信機の負荷が大きいという課題がある。
【課題を解決するための手段】
【0011】
本開示に係る水中通信システムは、送信機と受信機とを備える水中通信システムである。
前記送信機は、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号を生成する送信信号生成部と、
アナログ信号へ変換された前記送信信号を音波である送波信号として送信する送波器と、
を備え、
前記受信機は、
前記送波信号を受信する受波器と、
前記送波信号がデジタル信号に変換された受信信号から、切り出し信号として信号を切り出す信号切り出し部と、
前記同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、前記切り出し信号の切り出し回数を前記送信順位とみなし、各分割データの値及び前記送信順位とから決まる複数の前記波形パターンを参照信号として使用し、前記切り出し信号と、各参照信号との相互相関関数計算を行う相関計算部と、
前記相互相関関数計算の結果から、前記各参照信号のうち、前記切り出し信号に対応する前記参照信号を決定し、決定した前記参照信号に基づき、前記切り出し信号の示すビット値と、前記切り出し信号の受信時刻とを決定する相関比較部と、
を備える。
【発明の効果】
【0012】
本開示に係る水中通信システムによれば、ドップラーシフトの生じた受信信号を、計算量の多いドップラーシフト推定及び補正を行わず、復調誤りなく復調できる。
【図面の簡単な説明】
【0013】
【
図1】実施の形態1の図で、水中通信システム3の構成を示す図。
【
図2】実施の形態1の図で、送信機1のブロック構成を示す図。
【
図3】実施の形態1の図で、受信機2のブロック構成を示す図。
【
図4】実施の形態1の図で、S個のシンボルが連続した通信フレームの受信信号y(k)を模式的に表した図。
【
図5】実施の形態1の図で、SSMS方式を採用した通信フレーム構成の送信信号5aを示す図。
【
図6】実施の形態1の図で、送信機1における変調処理の概要を示す図。
【
図7】実施の形態1の図で、送信機1における変調処理の概要を示すフローチャート及び受信機2における復調処理の概要を示すフローチャート。
【
図8】実施の形態1の図で、受信機2における復調処理の概要を、受信信号に着目して示す図。
【
図9】実施の形態1の図で、シンボル番号1に対応する切り出し信号に対する相関計算方法を示す図。
【
図10】実施の形態1の図で、シンボル番号に対応する切り出し信号の受信符号と時間位置を示す図。
【
図11】実施の形態1の図で、シンボル番号1に対応する切り出し信号への相関関数計算を示す図。
【
図12】実施の形態1の図で、
図11の通信シミュレーションに音波反射を加えた相関関数計算を示す図。
【
図13】実施の形態1の図で、複数の受信機2を使用して送信機1の位置を特定する方法を示す図。
【
図14】実施の形態1の図で、ドップラーシフト量に応じてサンプリングレートを変換した波形パターンを示す図。
【
図15】実施の形態2の図で、送信機1、受信機2をマイクロコントローラ110を用いて実装した場合のハードウェア構成を示す図。
【
図16】実施の形態2の図で、送信機1、受信機2をマイクロコントローラ110を用いて実装した場合のプログラム構成を示す図。
【発明を実施するための形態】
【0014】
実施の形態の説明及び図面において、同じ要素及び対応する要素には同じ符号を付している。同じ符号が付された要素の説明は、適宜に省略又は簡略化する。以下の実施の形態では、「部」を、「回路」、「工程」、「手順」、「処理」又は「サーキットリー」に適宜読み替えてもよい。
【0015】
実施の形態1.
***構成の説明***
図1は、水中通信システム3の構成を示す。水中通信システム3は音波を用いて水中で通信を行う。音波として水中通信システム3は超音波を使用するものとするが、音波は超音波に限定されない。水中通信システム3は送信機1と受信機2を備える。送信機1の送波器は、デジタル信号がアナログ信号へ変換された送信信号としての超音波を、送波信号として送信する。受信機2は、送波信号を水中で受波器8によって受信して復調する。
【0016】
図2は、送信機1のブロック構成を示す。送信機1は、データ分割部4、送信波形生成部5、DA変換・増幅部6及び送波器7を備える。データ分割部4は分割部である。送信波形生成部5は送信信号生成部である。データ分割部4は「0111001001110010」のような0と1からなるデータである送信データを、同一ビット数ごとに分割する。同一ビット数を2とすれば、データ分割部4は「0111001001110010」を、01、11、00、10、01、11、00、10のように2ビットごとに分割する。同一ビット数は、シンボル単位の示すビット数を採用することができる。シンボル単位の示すビット数とは1つのシンボルに含まれる情報量である。例えばQPSKを想定すれば、1つのシンボルに含まれる4つの符号は(00)(01)(10)(11)である。QPSKのシンボル単位は、2ビットの(00)(01)(10)(11)の4つの位相量に変調される。以下の説明では、データ分割部4が送信データの分割に使用するビット数は、シンボル単位の情報量、かつ、2ビットとする。
【0017】
送信波形生成部5は、送信信号5aを生成する。送信信号5aの生成は後述する。
【0018】
DA変換・増幅部6は、送信信号5aをアナログ信号に変換して送波信号6aを生成して増幅する。送波器7は、送波信号6aを送信する。
【0019】
図3は、受信機2のブロック構成を示す。受信機2は、受波器8、増幅・AD変換部9、参照波形生成部10、複数の相関計算部11、相関比較部12、信号切り出し部13、データ結合部14を備える。各構成要素の動作は後述する。参照波形生成部10は参照信号生成部である。増幅・AD変換部9は、受波信号として受信した送波信号をデジタル信号の受信信号に変換する。複数の相関計算部11は区別の必要なときは相関計算部11-1,11-2,11-3,11-4のように表記する場合がある。
図3では相関計算部11-1,11-2,11-3,11-4を個別に記載しているが、相関計算部11-1,11-2,11-3,11-4の機能を一つの相関計算部11が持つ構成でよい。
【0020】
超音波信号を通信手段とする水中通信システム3では、送信機1及び受信機2が高速移動しているとき、ドップラーシフトが発生する。ドップラーシフトによる音波周波数の変化は式1で表現される。
f’=f(1+△) (式1)
式1の△はドップラーシフト量を示す。ドップラーシフト量は、音速と相対移動速度の比である。
ドップラーシフト量は時間領域では信号の伸び縮みで表現される。信号の伸び縮みについては、送波信号x(t’)に対して受波信号y(t’)は式2で表現される。
y(t’)=x((1+△)t’) (式2)
送信機1及び受信機2のサンプリング周期Tsに対してドップラーシフトを受けた受信信号は、式3で表現される。
y(nTs)=x((1+△)nTs) (式3)
なお、離散信号の時系列はt=nTsで表現される。
【0021】
図4は、通信フレームが、連続するS個のシンボルを持つ構成のときの受信信号y(t)を模式的に表している。受信信号は、
図3に示すように、増幅・AD変換部9の出力信号である。ここでは2ビット表現される4つの符号の(00)(01)(10)(11)の集合をシンボルと呼んでいる。ドップラーシフト無しの場合、すなわち△=0の場合では、受信機2は、通信フレームの先頭でフレーム同期を行う。この場合、受信機2によるフレーム同期では、フレーム同期位置はt=0とされる。送信機1と受信機2とは、シンボル長T
symを知っている。受信機2は、シンボル長T
symに従って信号切り出しを行う。通信フレームにおける最後のシンボルの時間位置は、t=(S-1)×T
symである。つまり、最後の信号区切りはt=(S-1)×T
symでの位置である。
【0022】
図4において、ドップラーシフトにより受信信号が伸びた△<0の場合と、受信信号が縮んだ△>0の場合では、見かけ上のシンボル長がT’
sym、およびT’’
symのように変化する。送信機1及び受信機2が共に知っているシンボル長T
symに基づいてドップラーシフト無し△=0の場合と同じように受信機2が信号区切りを行うと、信号区切り位置と実際のシンボル位置とのずれが生ずる。このずれは通信フレームの後部で顕著となる。
図4に示すように、t=(S-1)×T
symの時間位置で、受信機2が、シンボル番号Sの信号切り出しを行うとすれば、次のようになる。中段の△<0のように異なるシンボル番号で信号が切り出され、あるいは、下段の△>0のように、通信フレーム範囲外で信号が切り出され、復調が失敗する。
【0023】
特許技術1及び特許技術2は、通信フレームの先頭でフレーム同期を行うのみである。よって、ドップラーシフトがあるとき、
図4の中段△<0、あるいは、下段△>0のように、時間位置ずれにより復調失敗が生じ得る。また、特許技術文献3及び特許技術文献4は、ドップラーシフトの推定及び補正方法を示している。しかし、ドップラーシフト推定では、マルチパス干渉により直接波と反射波とのドップラーシフト量が異なることを考慮する必要がある。マルチパス干渉により受信機は直接波と多数の反射波が合成されたものを受波する。反射波は海面、海底、障害物で反射することで直接波とは異なる相対速度となるので、ドップラーシフト量も異なる。マルチパス干渉下では正確なドップラーシフト推定が困難となる。また、ドップラーシフト補正としてサンプリングレート変換が用いられる。しかし、サンプリングレート変換では、離散信号の1サンプル毎に時間位置を変える線形補間処理及びデジタルフィルタを用いたリサンプリング処理のための計算量が多く、受信機の負荷が大きくなる。
【0024】
実施の形態1の水中通信システム3では、ドップラーシフト推定及び補正に依らない方法で、ドップラーシフトに対処する。水中通信システム3の方法により、ドップラーシフト発生時でも適正に復調処理を行えるようにする。
【0025】
図5は、水中通信システム3において、実施の形態1で採用するSSMS(Stretchable Symbols with Multiple Sequences)と呼ぶ方式を適用した通信フレーム構成を示す。シンボル番号1からシンボル番号Sで示される各シンボルのシンボルの長さは「T
sym」である。
図5に示すSSMS方式の通信フレームは、各シンボルの間に、シンボル間隔T
intを空けたフレーム構成である。
【0026】
***動作の説明***
(SSMS方式の説明)
送信機1によるSSMS方式を用いた送波信号6aの生成動作を説明する。水中通信システム3の送信機1の構成は
図2に示す通りである。データ分割部4に、送信データとして、「0111001001110010」が入力されるとする。データ分割部4は、入力された送信データを、シンボル単位の情報量で分割する。すなわちシンボル単位の情報量は2ビットを想定しているが、データ分割部4は、「0111001001110010」を、01、11、00、10、01、11、00、10の8つに分割する。この8つのデータのそれぞれを分割データと呼ぶ。この各分割データのそれぞれは、送信符号である。
【0027】
2ビットを例に説明しているが、シンボル単位の分割データをNビットとすれば、分割データである送信符号は、M=2N通りで表現される。このとき、Mは符号化変調多値数を示す。
【0028】
(送信波形生成部5)
送信波形生成部5は、送信信号5aを生成する。送信信号5aは、送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが送信順位で並べられ、かつ、波形パターンどうしの送信間隔が空けられたデジタル信号である。送信信号5aは送信データに対応するデジタル信号である。以下に具体的に説明する。
送信波形生成部5は、変調多値数M、通信フレーム内のシンボル数S及び1シンボル内のサンプルデータ数Hに対して、「MS個×サンプルデータ数H」の個数の波形パターンを、波形パターン群160として予め記憶装置に記録しておく。なお、実際には、サンプルデータ数H(波)の波形が加算された合成波が、MS個存在する。シンボル数Sは、通信フレーム内の分割データ総数である。サンプルデータ数Hは、「シンボル長T
sym/サンプリング周期T
s」である。以下に、
図6を参照して、送信波形生成部5によって生成される波形パターン群160の詳細を説明する。
【0029】
図6は、送信機1における変調処理の概要を示す図である。
図7の左側は、送信機1における変調処理の概要を示すフローチャートである。
【0030】
(ステップS11)
ステップS11において、送信波形生成部5には複数の搬送波を位相変調したサイン波を合成した波形パターン群160を事前に生成しておく。例えば「搬送波波数=1シンボル長内のサンプルデータ数H」とする。
図6では「サンプルデータ数H=2000サンプル」とし、送信波形生成部5は、サンプル周波数を均等に分割した周波数を持つ2000波のサイン波を準備する。具体的には
図6の例では、1シンボル長T
sym=10ms、サンプリング周波数Fs=200kHz、サンプリング周期T
s=5×10^-6ms、としている。よって、1シンボル内のサンプルデータ数H=2000(波)である。各搬送波間の周波数間隔は、Fs/Hであり、100Hzである。
【0031】
(ステップS12)
ステップS12において、搬送波1から搬送波2000の2000波の搬送波のそれぞれに、疑似ランダム数値に応じて-π~πの範囲で位相シフトを実施する。
図6に示すように、あるシンボル番号sにおける、搬送波1から搬送波2000に作用させる疑似ランダム数値ρ(s、c)(c=1~2000)は、互いに異なる値である。
【0032】
(ステップS13)
ステップS13において、送信波形生成部5には、まずシンボル番号1(第1シンボル)のシンボル単位(00)について、以下のように波形パターンを生成しておく。送信波形生成部5は、位相シフトされた搬送波1から搬送波2000の2000波を合成(加算)して合成波を生成しておく。送信波形生成部5は、この合成波を、第1シンボルのシンボル単位(00)に対する1シンボル長の波形パターンとする。
【0033】
(ステップS14)
ステップS14において、送信波形生成部5には、以下同様に、疑似ランダム数値ρを変えて、[符号化多値変調数(M)×シンボル数(S)]分の波形パターンを生成する。すなわち、
図6の波形パターン群160に示すように、送信波形生成部5には、以下同様に、第1シンボルのシンボル単位(01)から最終シンボルのシンボル単位(11)の各波形パターンを生成しておく。
【0034】
(ステップS15)
ステップS15において、送信波形生成部5は、送信データのビット列からデータ分割部4によって2bitずつ切り出だされた2bitデータに対応する波形パターンを、波形パターン群160から選択する。送信波形生成部5は、選択した複数の波形データの波形データ同士の間に無信号区間となるシンボル間隔T
intを挿入して連結し、送信信号5aを生成する。
具体的には
図6の下側右のように、送信データが2ビットで区切れば「01,11,00,10,01,11,00」の場合、送信波形生成部5は、波形パターン群160から、後述の順位分割データ[s:m]に応じて、対応する波形パターンを選択する。送信波形生成部5は、波形パターン群160から、シンボル数sと、分割データmとで決まる波形パターンを選択する。
図6でシンボル数sは第1シンボル、第2シンボル、~最終シンボル(第Sシンボル)の第sシンボルにおけるsの値であり、分割データmは(00)(01)(10)(11)である。符号化変調多値数M=4としているため、分割データm、すなわち、送信符号4aは、(00)(01)(10)(11)のいずれかである。
送信データが「01,11,00,10,01,11,00」の場合、先頭(01)では(第1シンボル,01)の波形パターンが選択され、次の(11)では(第2シンボル,11)の波形パターンが選択され、以下同様に波形パターンが選択される。送信波形生成部5は、選択された各波形パターンをシンボル数sの順位で並べ、かつ、隣接する波形パターンどうしの間に無信号区間となるシンボル間隔T
intを挿入して全体を連結し、1フレーム分の送信波形を生成する。
【0035】
(シンボル間隔Tintの詳細)
シンボル間隔Tintに相当する無信号区間は、Iサンプルデータが全てゼロとなるIサンプル個のデータが挿入され、1通信フレーム分の送信信号5aが生成される。Iサンプルデータの個数は「シンボル間隔Tint/サンプリング周期Ts」である。
【0036】
(順位分割データ)
シンボル番号(分割データの送信順位)及び送信符号(分割データ)からなる順位分割データは、以下の内容である。設例における8つ分割データの、01、11、00、10、01、11、00、10は、左から01、11、00、10、01、11、00、10の順に送信される。シンボル番号とは、分割データの送信順位の順位数である。あるいは、分割の順番を示す番号でもある。
具体的には、シンボル番号について、01は1番、11は2番、00は3番、10は4番と続き、最後の分割データ10は8番である。順位分割データを[シンボル番号s:分割データm]で表記すれば、送信波形生成部5は、以下の8つを生成する。[1:(01)]、[2:(11)]、[3:(00)]、[4:(10)]、[5:(01)]...[8:(10)]。
【0037】
送信波形生成部5には、シンボル番号s(s=1,2,3,4,...,8)、分割データm(m=(00),(01),(10),(11))の全ての組合せ[s:m]に相当するMS個の波形パターン群160をあらかじめ生成して格納しておく。この波形パターン群160は、
図6に示している。送信波形生成部5は、1番目の分割データが(10)であれば[1:(10)]から決まる波形パターンを波形パターン群160から選択し、2番目の分割データが(11)であれば[2:(11)]から決まる波形パターンを波形パターン群160から選択する。
【0038】
送信波形生成部5が最終的に生成する送信信号5aは、
図5で示す通信フレーム構成である。
図5のシンボル番号1の箱は[1:(ij)]の順位分割データに対応する波形パターンである。また、右端のシンボル番号Sの黒い箱は、通信フレーム内の最終送信シンボル[S:(ij)]の順位分割データに対応する波形パターンである。ここでi,jは0,1のいずれかである。連結されるS個の波形パターンは、全て異なる波形パターンとなる。これは、ステップS11及びステップS12で述べたように、選択されるMS個の波形パターンは全て異なる疑似乱数を基にして生成していること、さらに、波形パターン群から選択する順番もシンボル順に選択されることから、自明である。
【0039】
なお、
図6に示す波形パターン群160の各波形パターンは、送信機1で必要な周波数帯以外の不要波を抑圧するために、バンドパスフィルタ(以下BPF、Band Pass Filter)で濾過した後のHサンプル個分のデータとしてもよい。具体的には、後述する通信シミュレーションのケースでは、使用する送波器7、受波器8及び水中の音響伝搬路の特性を考慮して音波の使用周波数帯を10kHz~30kHzとしており、この周波数帯以外の不要な周波数帯の搬送波をカットした合成波で波形パターンを生成しておく。または、図示されてはいないが、送信機1において前記のとおり使用する周波数帯以外の不要波を抑圧するためにBPFを物理的に付加し、BPFで濾過した後に送信信号5aとする場合もある。
図5に示す送信信号5aは、DA変換・増幅部6におけるデジタル・アナログ変換、送信アンプによる増幅を経て、送波信号6aとして送波される。
【0040】
受信機2の動作を説明する。水中通信システム3の受信機2の構成は
図1に示す通りである。受波器8は、送波器7から送信された送波信号6aを受波信号として受信する。増幅・AD変換部9は、受波信号に増幅及びアナログ・デジタル変換を行い、受波信号をデジタルの受信信号9aに変換する。増幅・AD変換部9は、送信波形データのサンプリング周期と同じ200kHzで受信信号9aをサンプリングする。受信機2に必要な周波数帯以外の不要波を抑圧するために,図示していないBPFで濾過した後に、受信信号とする場合もある。相関計算部11は、受信信号から切り出された切り出し信号波形と、M個の波形パターンからなる参照信号との相互相関関数計算を行う。ここで、Mはシンボルの符号化多値数であり、Nビットを1つのシンボルの情報量とすると、MはM=2
Nとなる。
【0041】
図8は、受信機2における復調処理の概要を、受信信号に着目して示している。
図7の右側は、受信機2における復調処理概要を示すフローチャートである。
図8の上段は信号切り出し部13による処理を示し、中段は相関計算部11による計算処理を示し、下段は相関計算部11による計算結果を示す。
【0042】
(ステップS21)
ステップS21において、増幅・AD変換部9は、送信側の波形パターンのサンプリング周期Tsと同じ200kHzで受信信号9aをサンプリングする。
【0043】
(ステップS22)
図8上段に示すように、受信信号9aには送信信号5aに対して、背景ノイズ、マルチパス干渉波、ドップラーシフトが重畳されている。
ステップS22において、図示していないBPFは、前述の使用周波数10-30kHzの通過帯域を持つフィルタであり、帯域外の不要波を除去する。
【0044】
(ステップS23)
信号切り出し部13は、送波信号6aがデジタル信号に変換された受信信号9aから、切り出し信号として信号を切り出す。
S23において、
図8上段に示すように、信号切り出し部13は、受信信号9aの各々1シンボル長分が切り出し区間の時間位置として中央値に位置するように、受信信号9aから1シンボルの波形を切り出し信号として切り出すことを理想とする。すなわち、ドップラーシフトによる受信信号の伸縮や、直接波の信号レベルが低すぎて受信できずにマルチパスによる遅延波のみが観測される場合など、受信信号の時間位置がシンボル毎に前後にずれるケースがある。これらのケースに対応するため、1シンボルの波形が切り出し区間内に必ず存在するように、信号切り出し部13は、1シンボルの波形の両側にシンボル間隔T
intが存在するように信号を切り出す。
【0045】
(ステップS24)
S24において、信号切り出し部13は、第1シンボルについて、下記の(1)から(3)のいずれかの方法で切り出し位置を推定し、第1シンボルの切り出し区間を決定する。
(1)送受間が非同期の場合は、音圧の電圧変換によるアナログウォッチドッグ回路、すなわち、常時一定の信号レベル以上を検出し、受信信号入力を検知する回路を設け、この回路の出力をトリガとして切り出し位置を決定する。
(2)または、第一シンボル受信前の無信号期間を含めて、切り出し区間を逐次スライドさせつつ、常時第1シンボルの参照データと相関をとりピーク検出を捕まえることで先頭第一シンボルの時間位置を決定する。
(3)または、送信機1、送信機2間の時刻同期により送信時刻と双方の位置情報(UUVのIMU情報をベース)から水中伝搬路の遅延時をそれぞれ得て、第一シンボルの最適切出し位置を決定する。
なお、第2シンボル以降は直前のシンボルに対する相関ピーク位置から切り出し位置を決定する。
【0046】
(ステップS25)
相関計算部11は、同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、かつ、切り出し信号の切り出し回数を送信順位とみなす。相関計算部11は、みなした各分割データの値及びみなした送信順位とから決まる複数の波形パターンを参照信号として使用し、切り出し信号と、各参照信号である波形パターンとの相互相関関数計算を行う。
相関計算部11は、送信機1が格納している波形パターン群160と同じ波形データ群を参照波形パターンとして使用する。具体例で述べれば、参照波形生成部10は、
図6左下の波形パターン群160を、参照波形パターンとして有している。
ステップS25において、
図8中段に示すように、相関計算部11は、切り出し信号と、4種の参照波形パターンとの相互相関関数計算値を生成する。相関計算部11は、参照波形パターンを1サンプルデータずつ、ずらしながら、切り出し信号と参照波形パターンとを乗算し、総和を算出する。これは
図8中段の状態である。
【0047】
(ステップS26)
相関比較部12は、各相関計算部の相互相関関数計算の結果から、各参照信号のうち、切り出し信号に対応する参照信号を決定し、決定した参照信号に基づき、切り出し信号の示すビット値と、切り出し信号の受信時刻とを決定する。具多的には以下のとおりである。ステップS26において、相関比較部12は、シンボル符号の(00)、(01)、(10)、(11)に対応する4種の相互相関関数計算値の中から、最もPAPR(Peak to Average Power ratio)の大きいものを選択しシンボル符号を判定する。例えば、シンボル符号01に対応する参照波形パターンの相互相関関数計算値が選択された場合、シンボル符号は01と判定される。
図8下段は、4種の相互相関関数計算値のうちピークが突き出るものを示している。相関比較部12は、相関ピーク位置を、次の切り出し区間の決定に使用する。
【0048】
図9は、信号切り出し部13による信号切り出し及びシンボル番号1の順位分割データ[1:(ij)]に対する相互相関関数の計算方法を示す。信号切り出し部13により受信信号9aから切り出された信号を、切り出し信号と呼ぶ。時刻基準信号での基準信号パルス時間位置は、送信機1と受信機2で同一とみなせることを前提とする。時刻基準信号は、例えばGPS受信機から取得できる1PPS(Pulse Per Second)信号を利用し、送信機1と通信相手となる対向の水中通信システム3の受信機2に内蔵するそれぞれ図示されていないクロックどうしを時刻同期させて生成する。送信信号5aは時刻基準信号に合わせて通信フレームとして送信される。受信信号9aは,送波器7から受波器8に到達する送波信号6aの到達時間だけ遅れる。受信信号9aに対するシンボル番号1の切り出し区間は、通信フレームとしてンボル番号1の送信信号が送信される時刻基準信号発生時点から音波の最大到達時間+T
sym+T
intを含む区間T
c1である。区間T
c1は、音波の最大到達時間である「送信機1と受信機2の相対距離/水中の音速」の時間を含む。音速はほぼ固定値であるため、この最大到達時間は相対距離に依存する。送信機1と受信機2の一方または双方がUUV等の移動体に搭載されている場合、その最大移動範囲から最大相対距離を算出して最大到達時間を含む区間T
c1を予め決めておく。このようにして最大到達時間を含む区間T
c1については、信号切り出し部13に予め設定しておく。送信機1と受信機2とのクロック間の経時的累積誤差は、時刻基準信号のパルス時間位置ずれや、後に説明する受信信号9aに対する切り出し区間の理想位置からの位置ずれとしてとして現れる。しかし、水中通信システム3では、
図5のように、送信機1は、シンボル長T
symを持つ波形パターンの間にシンボル間隔T
intを空けた通信フレームを送信信号5aとして生成する。波形パターンの前後に存在するシンボル間隔T
intが、クロック間の経時的な累積誤差による時間位置ずれを吸収する。また、ドップラーシフトによる受信信号の伸張や、直接波の信号レベルが低すぎて受信できずにマルチパスによる遅延波のみが観測される場合など、受信信号の時間位置がシンボル毎に前後にずれるケースがある。これらのケースもシンボル間隔T
intが、時間位置ずれを吸収する。よって、受信信号9aの切り出し区間の中に、シンボル番号に対する受信信号を全て含めることが可能である。
【0049】
(参照信号)
シンボル番号1に対応する切り出した受信信号に対して、M個の参照信号との相互相関関数計算を複数の相関計算部11にて行う。設例を示す
図9では、参照信号の個数は、符号化変調多値数に相当し、M=2
2=4である。また、送信するシンボル数は8個(S=8)である。参照波形生成部10には、参照信号として、送信機1の有する波形パターン群160(
図6)と同一の波形パターン群が格納されている。ここで参照信号とは、波形パターン群160から順位分割データ[s:m]によって選択される波形パターンである。なお、順位分割データ[s:m]におけるsは、切り出し信号における切り出し回数kに同じである。よって受信機はsの値、すなわちkの値を知っている。しかし、mは知らない。よって、知っているkをk
*とすれば、受信機2は、[k
*:(00)],[k
*:(01)],[k
*:(10)],[k
*:(11)]の4つに対応する各波形パターンを波形パターン群から選択し、参照信号に使用する。具体的には以下の通りである。切り出しk回目の切り出し信号に対する参照信号は、[k:(00)]、[k:(01)]、[k:(10)]、[k:(11)]のそれぞれに対応する波形パターンとなる。ここでk=1の場合であれば、
図6左下の波形パターン群160では第1シンボルに該当するので、
図6の(00)、(01)、(10)、(11)の4種の波形パターンが参照信号となる。これは、切り出しk回目の切り出し信号は、送信順位がk番目、かつ、ビットは(00)、(01)、(10)、(11)のいずれかの順位分割データに対応する波形パターンを含む信号だからである。参照波形生成部10は、切り出しk回目におけるkに対応して、順位分割データである[k:(00)]、[k:(01)]、[k:(10)]、[k:(11)]に対応する波形パターンを、それぞれの相関計算部11へ提供する。k=1であれば、参照波形生成部10は、
図6左下の波形パターン群160のうち、第1シンボルの、(00)の波形パターンから(11)の波形パターンの4種を各相関計算部11へ提供する。
【0050】
(相互相関関数計算)
図3の受信機2では、切り出し回数がk=1であれば以下の処理が行われる。
参照波形生成部10は、順位分割データとして、
相関計算部11-1へ[1:(00)]、
相関計算部11-2へ[1:(01)]、
相関計算部11-3へ[1:(10)]、
相関計算部11-4へ[1:(11)]を入力する。
また、参照波形生成部10は、相関計算部11-1に、順位分割データ[1:(00)]に対応する、
図6左下の第1シンボルの(00)の波形パターンを、参照信号として入力する。同様に、参照波形生成部10は、相関計算部11-2に、順位分割データ[1:(01)]に対応する、
図6左下の第1シンボルの(01)の波形パターンを、参照信号として入力する。同様に、参照波形生成部10は、相関計算部11-3に、順位分割データ[1:(10)]に対応する、
図6左下の第1シンボルの(10)の波形パターンを、参照信号として入力する。同様に、参照波形生成部10は、相関計算部11-4に、順位分割データ[1:(11)]に対応する、
図6左下の第1シンボルの(11)の波形パターンを、参照信号として入力する。相関計算部11-1から相関計算部11-4のそれぞれは、シンボル番号1に対応する切り出し信号と、入力された参照信号との相互相関関数計算を実行し、実行結果として相互相関関数を出力する。相関計算部11-1から相関計算部11-4における相互相関関数計算は、時間軸上の畳込み演算による方法を例とすれば、次のように実行される。参照信号である波形パターンの後ろに受信信号から切り出した切り出し区間のサンプルデータ数と同じデータ数となるようゼロデータを追加して参照信号にゼロ拡張波形パターンを生成する。
【0051】
次に、
図8に示すように、相関計算部11は、参照信号である波形パターンと、切り出し区間のサンプルデータ列(切り出し信号)とを、サンプル要素毎に乗算し、総和を求める。相関計算部11は、その絶対値を相互相関関数計算値の第1番目のデータとする。
次に、相関計算部11は、ゼロ拡張波形パターンのサンプルデータ列全体(参照信号)を、1サンプル分、後ろにシフトさせ、先頭のサンプルデータには、ゼロデータを埋め込む。
これを新たな参照信号のゼロ拡張波形パターンとし、相関計算部11は、サンプルデータ列と切り出し区間のサンプルデータ列とをサンプル要素毎に乗算し、総和を求め、その絶対値を相互相関関数計算値の第2番目のデータとする。
【0052】
図8中段に示すように、相関計算部11は、第3番目以降の相互相関関数計算値の算出も同様に、参照信号のゼロ拡張波形パターン全体シフト、ゼロデータ挿入を行って、参照信号の新たなゼロ拡張波形パターンを生成し、相互相関関数値算出を行う。このようにして各相関計算部11は、切り出し区間のサンプルデータ数と同じ数の相互相関関数計算値をデータ列として送出する。
図8下段に示すように、送信時の送信符号に対応する受信信号の切り出し信号と、その送信符号に対応する参照信号とに対しては、同じ波形パターンを源泉としていることから当然のことながら大きな相関関数ピークが観測される。すなわち、相関関数ピークは、順位分割データに相当する受信信号からの切り出し信号と、参照信号の波形パターンとが一致する場合に出現する。
【0053】
相関比較部12は、相関計算部11-1から相関計算部11-4の計算した相互相関関数ピークを比較する。相互相関関数ピークの検出方法は、比較誤りを抑制するため相互相関関数値のデータ列の平均値を基準にするPAPR(Peak to Average Power Ratio)法を用いることができる。すなわち、ピークレベルと相互相関関数値のデータ列の平均値の比をPAPR値とする。相関比較部12は、PAPR値の比較結果から最も高いPAPR値となる受信符号を特定し、受信符号をデータ結合部14へ出力する。データ結合部14は、複数の受信符号を結合して受信信号9aを受信データ14aとして出力する復調処理を行う。
【0054】
また、相関比較部12が第1回の切り出し信号の受信符号を特定したときの相互相関関数ピークが示す時間位置は、音波到達時間を示す。よって、相関比較部12は、音波到達時間τ1を送信機1と受信機2との間の距離に換算し、換算した距離を出力する。
【0055】
図9において、シンボル番号1の切り出し信号に対する受信符号と時間位置については、以下のとおりである。受信符号は符号1(ビット表現では01)であり、時間位置はτ
1である。つまり1回目の切り出し信号は[1:(01)]であった。なお、相関計算部11-1から相関計算部11-4における相互相関関数計算は、前述のような時間軸上の畳込み演算による方法や、FFTにより周波数領域にそれぞれ変換して乗算した後にIFFTにより時間領域に戻す方法を採用できる。
【0056】
(2回目以降の切り出し)
図10は、シンボル番号2以降の、受信されたシンボル分割データの相互相関関数の計算方法を示す。シンボル番号1に対する相互相関関数計算から求めたシンボル番号1の時間位置τ
1を基準として、信号切り出し部13は、受信信号9aからシンボル分割データの切り出しを行う。
【0057】
図5に示した通り、送信信号5aにおいて、シンボル長はT
sym、シンボル間隔はT
intである。
図10に示すように信号切り出し部13による切り出し区間は、シンボル番号1の受信時間位置を基準として、
T
sym<t≦2(T
sym+T
int)とする。
ゆえに、
切り出し長=T
sym+2T
intである。
切り出し区間は、シンボル番号2の受信信号が必ず包含されるように設定することが絶対条件である。このため、シンボル番号2の受信信号がなるべく切り出し区間の中央位置となるように設定する。すなわち、シンボル番号2の受信信号がドップラーシフトによって伸張されたときも、後ろのT
intが削られることで、シンボル番号2の受信信号が必ず包含される。シンボル番号1及び後続のT
intがドップラーシフトによって短縮された場合も、そのT
intが削られることで、シンボル番号2の受信信号が必ず包含される。このようにドップラーシフトが発生しているときは
図4に示した通り、信号が伸びる、もしくは縮むことによってシンボルの時間位置ずれが生ずる。さらに、直接波の信号レベルが低すぎて受信できずにマルチパス遅延波のみが観測される場合も、マルチパスは遅延して到達することが一般的であり、このマルチパスによる遅延波を受信信号として相関計算の対象とする場合も、時間位置ずれが生じる。さらに送信機1の時刻基準信号と受信機2の時刻基準信号との経時累積誤差による時間位置ずれも生じる。SSMS方式はシンボル間隔を空けているのでシンボルの時間位置ずれがT
int以下で許容できる。
【0058】
なお、シンボル番号2の切り出し区間に入り込む前後のシンボルの受信信号は次の(1)から(3)がある。
(1)シンボル番号1のマルチパスによる遅延波。
(2)ドップラーシフトによって伸張されたれたシンボル番号1の受信信号の信号成分。(3)シンボル番号2や前後のTintがドップラーシフトによって短縮されることで現れる、シンボル番号3の受信信号の先頭部分の信号成分。
これらの不要な信号成分は切り出し区間に入り込まないように設定することが理想的である。SMSS方式では相関処理によって、これら不要波の影響を排除するで、これら不要波の存在を許容可能としている。
【0059】
信号切り出し部13がシンボル番号2に対する受信信号の切り出しを行った後は、シンボル番号1と同様である。つまり参照波形生成部10は、順位分割データとして、
相関計算部11-1へ[2:(00)]、
相関計算部11-2へ[2:(01)]、
相関計算部11-3へ[2:(10)]、
相関計算部11-4へ[2:(11)]を入力する。
また同時に、参照波形生成部10は、相関計算部11-1に、順位分割データ[2:(00)]に対応する、
図6左下の第2シンボルの(00)の波形パターンを、参照信号として入力する。参照波形生成部10は、相関計算部11-2に、順位分割データ[2:(01)]に対応する、
図6左下の第2シンボルの(01)の波形パターンを、参照信号として入力する。同様に、参照波形生成部10は、相関計算部11-3に、順位分割データ[2:(10)]に対応する、
図6左下の第2シンボルの(10)の波形パターンを、参照信号として入力する。同様に、参照波形生成部10は、相関計算部11-4に、順位分割データ[2:(11)]に対応する、
図6左下の第2シンボルの(11)の波形パターンを、参照信号として入力する。
相関計算部11-1から相関計算部11-4は、シンボル番号2に対する切り出し信号と、各参照信号との相互相関関数計算を行う。このとき、シンボル番号1と、シンボル番号2の参照信号の波形パターン全て異なることに注意する。つまり、シンボル番号1とシンボル番号2の参照信号について、[1:(00)]、[1:(01)]、[1:(10)]、[1:(11)]、[2:(00)]、[2:(01)]、[2:(10)]、[2:(11)]の8つに対応する波形パターンは、波形パターンが全て異なる。
【0060】
音波反射が強い環境ではマルチパス干渉によってシンボル番号1の波形が遅延波としてシンボル番号2の直接波に干渉する場合がある。各シンボル番号の波形パターンが異なるとき、受信符号に該当しない信号成分は相互相関関数計算時に無相関な成分として抑圧することができる。よって、実施の形態1のSSMS方式は、マルチパス干渉や周囲騒音(雑音)にも強い。
【0061】
図10において、シンボル番号2に対する受信符号と時間位置については、以下の通りである。シンボル番号2に対する受信符号は符号3(ビット表現では11)であり、時間位置はτ
2である。相関比較部12が受信符号として符号3及び時間位置τ
2を特定し、符号3をデータ結合部14へ出力する。データ結合部14は、復調処理として符号3に対応するビット表現11を、シンボル番号1のビット表現01の後方に連結し、受信フレームとして構成する。シンボル番号3以降は、シンボル番号2に対応する切り出し信号への処理と同様の処理が、シンボル番号3の切り出し信号への復調処理として、繰り返される。すなわち、前のシンボル番号の復調処理における相互相関関数計算で算出された時間位置を用いて信号切り出しが行われ、切り出し信号に対して相互相関関数計算が実施される。
【0062】
以上のように、SSMS方式では、受信機2は、シンボル毎(順位分割データ毎)に時間位置を確定しながら復調処理を行う。よって、受信信号に対するドップラーシフト推定・補正処理を必要としない。また、通信フレーム内でドップラーシフト量△が正と負で入れ替わるような非定常な変動にも、SSMS方式は対応可能である。
【0063】
図11は、通信シミュレーション上のシンボル番号1の切り出し信号に対する相関関数の計算例である。通信シミュレーションでは、音速1,500m/s、サンプリング周波数200kHz、周波数帯域10kHz~30kHz、シンボル長10ms、シンボル間隔10ms、シンボル単位の情報量は2ビット、変調多値数4、通信フレーム内のシンボル数100、通信フレーム長2秒とした。音波伝搬条件ではドップラーシフト発生時の相対移動速度2.57m/s(9.36km/h),入力SN比10dBとした。符号2に対する相関関数φ
1,2(τ)で最も高い相関ピーク値を示しているので、受信符号2と距離100m(到達時間66.5ms)を出力する。
【0064】
図12は、
図11の通信シミュレーションに音波反射を加えたときの相関関数の計算例である。海面と海底の音波反射率をそれぞれ1.0、0.7に設定して、直接波と遅延波が重畳するマルチパス干渉がさらに加えられた条件での相関関数を計算している。マルチパス干渉により符号2の相関関数φ
1,2(τ)のみに複数のピークが見られる。複数のピークが発生しているのは符号2の相関関数φ
1,2(τ)のみなので、受信信号にドップラーシフトとマルチパス干渉による歪みが加わる状況でも、正しく受信信号を復調できる。
【0065】
送信機1の送信波形生成部5は、水中における音波の伝搬環境に応じて、送信間隔であるシンボル間隔Tintの長さを調整してもよい。想定するドップラーシフト量及びマルチパス干渉等の水中超音波伝搬環境に応じて、送信波形生成部5は、送信信号5aのシンボル間隔Tintを固定値とせず、可変とする方法も有効性がある。例えば、離隔する方向で相対移動(△<0)し、ドップラーシフト量が大きくなり、受信信号9aが見かけ上伸びて受信波形期間が「Tsym+Tint」を上回る場合、送信波形生成部5はシンボル間隔Tintを基準のシンボル間隔Tintに対して大きくする。また、マルチパス波の遅延かつ強度が大きく、次のシンボル受信波形に重なるような水中超音波伝搬環境では、送信波形生成部5は、シンボル間隔Tintを基準のシンボル間隔Tintに対して大きくする。この場合、伝送レートは犠牲となる。しかしシンボル間隔Tintを固定とした場合で次のシンボル受信波形で正しく復調できなかった場合に対して、不要波との重なりがなくなり復調可能になる。
逆にドップラーシフト量が小さい場合や近接する方向で相対移動(△>0)し、受信信号が見かけ上縮んだ場合や、マルチパス波の遅延かつ強度が小さい場合は、シンボル間隔Tintを小さくし、伝送レートを向上させることが可能となる。
【0066】
また、水中の超音波伝搬環境における信号対雑音比(以下、SNR)が小さい場合は、シンボル長Tsymを長くし、あるいは、サンプリング周波数を上げてサンプル数を増やすなどの対策がある。これらの対策により、シンボル当たりのSNRを大きくし、復調誤りを低減させることができる。また、従来と同じように、変調多値数Mは、水中の超音波伝搬環境に応じて選択し、周波数帯域幅は、DA変換・増幅部6、送波器7、受波器8、増幅・AD変換部9のハードウェアの特性に応じて、最適な値を選択する。
【0067】
(測位)
従来の水中音響測位技術について、例えば、電子通信学会論文誌A VOL、J65-A A3 P221-228には以下の技術が記載されている。
(1)すなわち、水中の音源からの超音波信号を複数の受波器が受信する。
(2)受波器間の位相差から超音波信号の入射方向(方向余弦)が推定される。
(3)音波の伝播時間から、音源と受波器の間の距離(スラントレンジ)が推定され、両者を用いて受波器に対する音源の位置が推定される。
この(1)から(3)は測位方式は、SSBL(スーパーショートベースライン)と呼ばれる。
【0068】
SSBL方式を実施の形態1の水中通信システム3に適用した場合を説明する。
図13は、複数の受信機2を使用して送信機1の位置を特定する方法を示す図である。
図13の受信機2台は、複数の受信機2から構成される受信機群16を使用し、送信機1の位置を特定する方法を示す。例えば、2つの受波器8-1及び受波器8-2間の距離をL、到達角度をθ、到達時間差をδT、音速をCとすると、関係は、式4によって表され、すなわち、到達角度θは式5として計算できる。
2つの受波器8-1及び受波器8-2は、同一の水平面に配置されているとする。すなわち、受波器8-1と受波器8-2は、同一の水深にある。
δT×C=L×cosθ (式4)
θ=cos
-1(δT×C÷L) (式5)
受信機群16を構成する受波器8-1及び受波器8-2間の距離Lは既知の固定値である。2つの受信機2-1と受信機2-2は、受信機群16として、サンプリングタイミングを同期させるように近傍に配置する。これにより、δTはサンプリング周期の分解能で測定可能であり、高精度に到達時間差δTを求めることが可能である。その結果、到達角度θを精度高く求めることができる。また、受信機群16を基準とした送信機1の位置は、受信機群16の受信機2-1、受信機2-2の相関比較部12の出力する距離ra、rbと、到達角度θの極座標上の位置として算出可能である。なお、水中通信システム3は、シンボル単位の短い間隔で距離ra、rbを出力する。よって、高頻度の測位が可能であり、統計的な手法により精度向上が可能である。複数の受信機2から構成される受信機群16を備える水中通信システム3は、データ通信と同時に測位が可能であるという特徴を持つ。
【0069】
図13の受信機2台の受信機群16はは、説明を容易にするために、水平面の方位推定のみの説明である。しかし、
図13の受信機3台は以下を示す。受波器8-3と受波器8-4を水平面上に、受波器8-5を垂直方向に配置する。この配置で、受信機2台(水平面)と同様な計算処理により、深さ方向の方角が計算できる。このように、受信機群16の位置が既知であれば、送信機1の2次元位置ないし3次元位置を推定可能である。
【0070】
なお、
図13の説明では水中通信システム3における受信機2を複数用意し、測位推定する方法を説明した。しかし、受信機2の受波器8と増幅・AD変換部9のみを複数用意し、受信機2のその他の部位については一連の受信信号処理を時分割処理するように実装することで演算器などのハードウェアを共用化し、ハードウェア規模を削減した実装方法も実現可能である。
【0071】
(相対移動速度の影響)
参照波形生成部10は、複数の参照信号の波形を伸ばし、あるいは縮める伸縮変換を行う。参照波形生成部10は、参照信号調整部である。相関計算部11は、伸縮変換された各参照信号を用いて相互相関関数計算を行う。以下に具体的に説明する。
図11で説明した相互相関関数計算では、送信機1と受信機2との間の相対移動速度が比較的小さい場合であるため、参照信号のサンプリングレート変換は不要である。相対移動速度がさらに大きい場合は、参照波形生成部10には、格納している波形パターン群にサンプリングレート変換した波形パターンも追加して格納しておく。このように、複数のドップラーシフト量に対応した波形パターンを参照信号として複数用意し、元の波形パターンである参照信号と合わせて参照波形生成部10のメモリに記憶しておく。
つまり、設例では、参照波形生成部10は、波形パターンとして、s=1からSに対して[s:(00)]、[s:(01)]、[s:(10)]、[s:(11)]に対応する各波形パターンをあらかじめ生成しておき、補助記憶装置あるいは主記憶装置に格納する。ここでは、s=1からSに対する[s:(00)]、[s:(01)]、[s:(10)]、[s:(11)]を一つのグループGとすれば、この一グループに対して、ドップラーシフト量ごとに波形パターンのグループを用意する。すなわちドップラーシフト量#iについてグループG#iを用意する。グループG#iはグループGの各波形パターンにサンプリングレート変換を施したものである。前述した方法でこれらの参照信号に対して総当たりで相互相関関数を計算し、復調していく。これによって相対移動速度がさらに大きな場合も復調が可能となる。
【0072】
図14は、参照波形生成部10の波形パターンにおいて、リサンプリング処理によりドップラーシフト量に応じてサンプリングレートを変更し、伸縮変換した波形パターンを事前に用意する方法を示している。ΓaとΓbをそれぞれドップラーシフトのシフト前、シフト後のシンボル長に対応する波形とする。ドップラーシフト量が負の値として大きくなった場合(△<0)、すなわち受信信号が伸びた場合は、伸びた波形パターンΓa<Γbを参照波形とする。逆にドップラーシフト量が正となって(△>0)、受信信号が縮んだ場合は、縮んだ部分にゼロ詰めした波形パターンΓa>Γbを用意する。このように、参照波形生成部10は、複数の参照信号を生成する際に、基準とする参照信号の波形長さに対して、波形を伸ばし、あるいは縮める伸縮変換を行う。相関計算部11は、切り出し信号と、伸縮変換のされた各参照信号との相互相関関数計算を行う。
【0073】
波形パターン(△=0)の参照信号のメモリ領域は、MS個×(シンボル長Tsym/サンプリング周期Ts)分のみを必要としていた。しかし、想定するドップラーシフト量に応じて、必要なメモリ領域は増える。例えば、近接移動をプラス、離隔移動をマイナスの相対移動速度とする。-Vknot・・・-10knot、-9knot、・・・-1knot、0knot、1knot、・・・9konot、10knot・・・Vknotと、1knotきざみ幅で±Vknotの領域をカバーするよう参照信号を用意する場合を想定する。この場合、「(2V+1)MS個×Hサンプル分」のサンプルデータのメモリが必要となる。さらに△<0の波形パターンΓa<Γbの場合は、信号を伸ばした分のメモリ領域、すなわち、{Hサンプル分のサンプルデータ}/{△/(1+△)}分のメモリ領域を必要とする。しかし、これらの参照信号は、予め受信機2の参照波形生成部10の使用するメモリに準備しておく。これにより、受信機2は受信信号のサンプリングレート変換をリアルタイムに実行する必要がないので、動作時の演算負荷が軽減できる。1knotきざみ幅で±Vknot分用意された相対移動速度の中から最も近い相対移動速度で伸縮変換された波形パターンとの相互相関関数計算値にピークが現われた場合、該当する符号を選択する。これにより大きな相対移動速度による大きなドップラーシフト量が発生した場合も正しく復調することが可能になる。
【0074】
また、送信機1及び受信機2が搭載されたUUV(Unmanned Undersea Vehicle))、船舶などの移動プラットフォーム上で、DVL(ドップラー速度ログ)、慣性装置(IMU)及びGPSにより、相対移動速度が受信機2において推定できる場合を説明する。
送信機1及び受信機2それぞれの絶対的な位置、対地速度及び移動方向が逐次計測されてるとする。
送信機1から受信機2への通信データとして、送信機1は、これらの計測情報を定期的に送信する。
そして、受信機2では相対移動速度が逐次算出可能とする。
この場合、受信機2は、算出した相対移動速度を用いて、1knotきざみ幅で±Vknot分用意された波形パターンの中から、最も近い、またはいくつか近傍の相対移動速度で作成された波形パターンのみを選択して参照信号とすることができる。例えば受信機2の参照波形生成部10は、算出した相対移動速度が5knot近辺であれば、5knotのみ、または4knot、5knot、6knotと近辺の波形パターンのみを選択し、各相関計算部11へおくる。各相関計算部11は相互相関関数計算を行う。このようにして、相互相関関数計算を総当たりで行う必要がなくなり、相互相関関数計算の回数を削減することが可能となる。相対移動速度が大きい場合、すなわち、ドップラーシフト量が大きい場合も、相互相関関数計算量を大幅に増やすことなく、通信誤り率を抑制し、測位性能を維持することできる。
【0075】
さらに、上記の「送信機1が計測情報を定期的に送信する」方法で、送信機1から受信機2への通信データとして、絶対的な位置情報を定期的に送信する場合を説明する。この場合、受信機2が、相対距離を逐次計算すること、直前の相互相関関数計算処理で得られた相対距離を用いることで等で、計算量が削減可能できることを説明する。
【0076】
音波の最大到達時間L/Cを含むTc1を未知の大きなTc1として用いることなく、現況の逐次算出した相対距離L‘に応じたTc1を用いて、第1シンボルの受信信号の切り出し区間を狭めることが可能となる。Cは音速である。この結果、通信が開始された直後の第一通信フレームでは予め想定される相対的距離に応じたTc1を外部から事前に信号切り出し部13に与えておく必要があるが、第二通信フレームからは、直前に得られた相対距離L‘を用いて切り出し区間を狭めることが可能となる。よって、演算量を削減することが可能となる。
【0077】
***実施の形態1の効果***
(1)水中通信システム3では、ドップラーシフトにより受信波形が伸縮しても、信号切り出し部13が、シンボル毎(順位分割データごと)に、対応する受信波形を最も適切な信号切り出し位置で切り出す。
そして、相関計算部11が相関計算を実行する。そして、相関比較部12が、相関ピーク位置から、次のシンボルに対応する受信波形の確からしい切り出し位置を決定する。このため、水中通信システム3では、計算量の多いドップラーシフト推定及び補正を行わず、安定した音響通信を行うことができる。
(2)また、通信フレーム内でドップラーシフト量が大きく変動する場合や、マルチパス干渉により直接波と反射波のドップラーシフト量が異なる場合でも影響を低減し、ドップラーシフトの影響を受けずに復調することができる。
(3)また、シンボル間隔Tintの長短調整で、送信機1と受信機2の間の相対移動速度に応じて発生するドップラーシフト量及び水中超音波伝搬環境から発生するドップラーシフト量やマルチパス干渉等の影響を、情報伝送レートとのトレードオフにより抑制できる。
(4)また、実施の形態1では、想定する複数のドップラーシフト量に応じて、送信信号の波形を伸縮変換した波形パターンを用意して参照波形とする。送信機1と受信機2との間に、より大きな相対移動速度がある場合も、ドップラーシフトの影響を受けずに、受信信号を復調できる。
(5)さらに、水中通信システム3は、異なる位置に配置された受波器8を有する複数の受信機2を備えることで、測位システムとして機能する。すなわち、複数の距離計測を通信フレーム内のシンボル単位毎に、同時にかつ高頻度に行うことにより、受信機2を基準とした送信機1の2次元または3次元位置の精度の高い測位が可能となる。
【0078】
実施の形態2.
実施の形態2として、
図15、
図16を参照して、送信機1、受信機2をマイクロコントローラ110を用いて実装した場合のハードウェア構成、プログラム構成を説明する。
図15はハードウェア構成を示し、
図16はプログラム構成を示す。
【0079】
図15のマイクロコントローラ110としては、市販品として、例えばSTマイクロエレクトロニクス社の型名STM32L4R5AIのマイクロコントローラを使用することができる。マイクロコントローラ110は、送信プログラム131と受信プログラム231を実行する装置である。マイクロコントローラ110は、CPUコア111、内蔵メモリ120を備えている。また、マイクロコントローラ110は、DMAコントローラ130、RTC140、DA変換器610、AD変換器930などの内蔵ペリフェラルと呼ばれるユニットを集積したSystem On Chip IC(Integrated Circuit)である。DMAは「Direct Memory Access」を意味し、RTCは「Real Time Clock」を意味する。
【0080】
マイクロコントローラ110の内部では、CPUコア111やDMAコントローラ130が、図示されていない内部バスにより、各種リソースにアクセスする。CPUコア111やDMAコントローラ130が、内蔵メモリ120の内蔵フラッシュメモリ150、ワーク用内蔵SRAM170、DA変換器610、AD変換器930、RTC140、DMAコントローラ130内の図示していない制御レジスタにアクセスする。
【0081】
(CPUコア111)
CPUコア111は、内蔵フラッシュメモリ150内の送信プログラム131または受信プログラム231に記述されている逐次呼び出した機械語命令に応じて、各種の演算を行う。各種の演算の際には、CPUコア111は、各種リソースへのアクセスや、CPUコア111内の固定小数点演算器やFPU(Floating Point Unit:浮動小数点演算器)を使用して各種の演算を行う。
【0082】
(メモリ)
マイクロコントローラ110は、内蔵メモリ120として、内蔵フラッシュメモリ150、ワーク用内蔵SRAM170を備えている。内蔵フラッシュメモリ150は、送信プログラム131または受信プログラム231、及び波形パターン群160が格納される。内蔵フラッシュメモリ150の容量は、2MByteの想定である。プログラムサイズや波形パターン群160が増えて、2MByteで収容しきれない場合は、外付けフラッシュメモリが別途用いられてもよい。
【0083】
(波形パターン群160)
波形パターン群160に関して、内蔵フラッシュメモリ150及びDA変換器610の入力幅である12ビットに合わせ、1サンプルデータ当たりのビット数は、12ビットとする。また、波形パターン群160として、振幅値としてバイナリ形式で表現された波形パターン群160が、内蔵フラッシュメモリ150に格納される。波形パターン群160は、実施の形態1の通信シミュレーションケースの場合、2000サンプル×100シンボル×4多値変調数×12ビット=1.2MByteとなる。内蔵フラッシュメモリ150の2MByteのうち、波形パターン群160の1.2MByteを除く0.8MByteには、送信プログラム131または受信プログラム231が格納される。
【0084】
この2MByteのサイズに、波形パターン群160、送信プログラム131または受信プログラム231が収まる場合は、外付けフラッシュメモリは不要となる。よって、マイクロコントローラ110へ実装する基板サイズを小さくできる。
【0085】
なお、固定小数点演算による切り捨てによって生じる累積誤差による信号処理ロスを低減するため、1サンプルデータのダイナミックレンジを上げる必要がある場合は、以下の方式を採用できる。すなわち、1サンプルデータ当たりの振幅値として、32ビット単精度浮動小数点IEEE754フォーマット(以下、浮動小数点形式)の方式を採用する。この方式の場合、波形パターン群160のメモリ容量は、2000サンプル×100シンボル×4多値変調数×32ビット=3.2MByteとななる。よって、内蔵フラッシュメモリ150には収容しきれないため、外付けフラッシュメモリを別途用意し、マイクロコントローラ110に実装する。また、送信プログラム131または受信プログラム231も0.8MByteに収まらない場合も、外付けフラッシュメモリを別途用意し、実装する。
【0086】
(ワーク用内蔵SRAM170)
ワーク用内蔵SRAM170は、CPUコア111が演算する際の演算途中のテンポラリデータを格納する。また、ワーク用内蔵SRAM170は、送信プログラム131が最終的に送り出す送信信号5a、及び受信プログラムが最終的に復調した受信データを格納するSRAM(Static Random Access Memory)である。また、ワーク用内蔵SRAM170は、DMAコントローラ130がAD変換器930からワーク用内蔵SRAM170へDMA転送する際の、格納先メモリとしても使用される。なお、市販品のマイクロコントローラ110におけるワーク用内蔵SRAM170の容量は、640KByteを想定している。しかし、テンポラリデータ量が多く、ワーク用内蔵SRAM170にデータを収容しきれない場合は、外付けのSRAMまたはDRAM(Dynamic Random Access Memory)を用いてもよい。
【0087】
(DMAコントローラ130)
DMAコントローラ130は、内蔵メモリ120内または内蔵ペリフェラル内のデータの、連続データ転送機能及び自動データ転送機能を有する。DMAコントローラ130は、CPUコア111から、転送元アドレス、転送先アドレス、及び転送データ量を指示され、起動コマンドを送られることで、DMA転送を実施する。すなわち、DMAコントローラ130は、AD変換器930からワーク用内蔵SRAM170への自動連続データ転送と、内蔵フラッシュメモリ150からDA変換器610への自動連続データ転送とを、可能にする。
【0088】
(DA変換器610)
DA変換器610は、実施の形態1のDA変換・増幅部6におけるデジタル信号を、アナログ信号に変換するデジタル・アナログ変換器である。市販品のマイクロコントローラ110の持つDA変換器610は、以下を想定する。DA変換器610は、12ビットのデジタル信号を、連続的にアナログ信号に変換する。この際、アナログ出力負荷である増幅器620の入力負荷は適切に選択される。同時に、後述のソフトウエアトリガ方式またはDMAコントローラ130を活用した方法によって、DA変換器610は、実施の形態1で述べたサンプリング周波数200kHzに対応した変換レート200kHzでデジタル信号を連続的にアナログ信号に変換する。
【0089】
(AD変換器930)
AD変換器930は、実施の形態1の増幅・AD変換部9の機能の一部であり、アナログ・デジタル変換を行う。AD変換器930は、マイクロコントローラ110の内蔵ペリフェラルの1つであり、アナログ信号を、12ビットのデジタル信号に変換する。
【0090】
(RTC140)
RTC140は、マイクロコントローラ110の内蔵ペリフェラルの1つであり、年、月、日、時間、分、秒、サブセカンドの値を保持するタイマである。RTC140は、例えば水晶振動子を発信源とする外付けのクロックを基準に時刻カウントする。送信機1のRTC140と、通信相手となる対向する水中通信システム3の受信機2のRTC140に、GPS受信機から取得できる1PPS(Pulse Per Second)信号を利用して同じ時刻を設定する。そして、両者のRTC140が同期するようにカウントさせる。送信プログラム131及び受信プログラム231は、それぞれのRTC140の時刻を1秒周期で割込みを発生させて、それぞれ、時刻基準信号を得る。
【0091】
以上が、マイクロコントローラ110に内蔵されているハードウェアの説明である。次にマイクロコントローラ110の周辺ハードウェアについて説明する。
図15に示すように、受波器8、LPF・増幅器910、増幅器920、増幅器620、送波器7が、マイクロコントローラ110の周辺ハードウェアである。
【0092】
(受波器8)
受波器8は実施の形態1の受波器と同じものである。SMSS方式では複数の搬送波を使用するため、周波数帯が広くなる傾向にある。このため、音波の周波数帯でなるべく均一な感度特性をもつハイドロホンの使用が好ましい。
【0093】
(LPF・増幅器910)
LPF・増幅器910は、実施の形態1の増幅・AD変換部9の機能の一部である。LPF・増幅器910は、受波器8からの微小な電圧信号を増幅する差動アンプと、アンチ・エリアシング・フィルタからなる。アンチ・エリアシング・フィルタは、サンプリング周波数/2、すなわち、ナイキスト周波数以上の折り返し歪みを抑圧するためのLPF(Low Pass Filter)である。実施の形態1の通信シミュレーション例のサンプリング周波数200kHzの場合、カットオフ周波数100kHzのLPFとしてアナログ回路で構成される。
【0094】
(増幅器920)
増幅器920は、実施の形態1の増幅・AD変換部9の機能の一部である。増幅器920は、LPF・増幅器910の出力信号が、AD変換器930のデジタル出力である12ビットダイナミックレンジに適切に変換されるようAD変換器930の入力アナログ信号のレベルを調整する。
【0095】
(増幅器620)
増幅器620は、実施の形態1のDA変換・増幅部6の中の増幅機能と同じ増幅部であり、送波器7を駆動する。増幅器620は、音波として水中伝搬路の減衰や吸収によって減衰される送信信号が、対向する受信機2で受信可能な電圧レベルまで、DA変換器610の出力であるアナログ信号を増幅する。増幅器620は、増幅した電気信号によって送波器7を駆動する。
【0096】
(送波器7)
送波器7は実施の形態1の送波器と同じものである。本SMSS方式では複数の搬送波を使用するため、周波数帯が広くなる傾向にある。このため、音波の周波数帯でなるべく均一な出力特性をもつトランスデューサーを使用することが好ましい。
【0097】
(送信機1)
送信機1は、DA変換・増幅部6、送波器7、CPUコア111、DMAコントローラ130、内蔵フラッシュメモリ150内の送信プログラム131、内蔵フラッシュメモリ150内の波形パターン群160、ワーク用内蔵SRAM170、RTC140を備える。
【0098】
送信機1は、
図16に示すように、プログラム構成要素として、データ分割部4、送信波形生成部5を備える。データ分割部4、送信波形生成部5は、実施の形態1の処理と同じ機能を実現したプログラムであり、送信プログラム131により実現される。CPUコア111が送信プログラム131を実行することで、データ分割部4、送信波形生成部5の機能が実現される。
【0099】
(データ分割部4)
データ分割部4では、実施の形態1と同様に、送信すべき送信データのビット列を分割データ長、この場合、1シンボルの符号長である2ビットに分割する。
【0100】
(送信波形生成部5)
送信波形生成部5も実施の形態1と同様に、順位分割データ[シンボル番号s:分割データm]を引数として、MS個×Hサンプルデータの波形パターン群160の中からHサンプル個数分のサンプルデータを波形パターン群160の中から逐次選択する。そして、送信波形生成部5は、I個の数値ゼロのサンプルデータを無信号区間として挿入し、それらの波形パターンを連結して送信信号を生成する。
【0101】
(DA変換・増幅部6)
送信機1のDA変換・増幅部6は、マイクロコントローラ110の内蔵ペリフェラルの1つであるDA変換器610と、マイクロコントローラ110の外部に設けられた増幅器620とから構成される。1通信フレーム分のサンプリング周波数分解能で生成されたサンプルデータが、DA変換器610で、デジタル信号からアナログ信号へと、周期Tsで変換される。DA変換器610がサンプルデータを連続的に変換する方法としては、ソフトウエアトリガ方式と、DMAコントローラ130を使った方式との、2つの方式がある。
【0102】
(ソフトウエアトリガ方式)
ソフトウエアトリガ方式の場合は、送信プログラム131がCPUコア111を制御する。送信プログラム131はCPUコア111を介して、内蔵メモリ120に格納されている波形パターンや無信号区間のサンプルデータに関して、順次、1サンプルデータ分を切り出し、DA変換器610に転送する。その後、送信プログラム131は、DA変換器610に変換トリガ信号を制御レジスタの指定されたビットに1を書き込むことで、実際のDA変換を実施する。送信プログラム131は、実施の形態1の通信シミュレーションケースの場合、サンプリング周波数、すなわち変換レート200kHz、Ts=5μsec周期でこれらの動作を繰り返す。この繰り返しにより、送信プログラム131は、送信信号5aの全てのサンプルデータを連続的にアナログ信号に変換し、増幅器620へ出力する。
【0103】
(DMAコントローラ130を使う方式)
DMAコントローラ130を使った方式では、DMAコントローラ130が、内蔵メモリ120から1サンプルデータずつ信号を切り出し、切り出した信号を、送信信号5aとして連続的にDA変換器610へ転送する。DMAコントローラ130は、内蔵ペリフェラルの1つである図示されていないタイマを使用し、変換レート200kHzで生成された変換トリガ信号を1つのサンプルデータが転送される度にDA変換器610に与える。これにより、DA変換器610は連続的な変換を行い、アナログ信号を生成する。さらにDA変換器610は1サンプルデータの変換を行う度にDMAコントローラ130にリクエスト信号を送る。リクエスト信号へのレスポンスとして、DMAコントローラ130は、次に変換すべきサンプルデータをDA変換器610へ転送する。DMAコントローラ130を活用した方法は、DMA転送中にCPUコア111がフリーとなり、CPUコア111が他の処理に使用可能となる利点がある。例えば、CPUコア111が次の通信フレームのデータ分割処理の並列動作を実施することにより通信フレーム間の処理遅延を短縮できたり、あるいはCPUコア111による受信プログラム231の並列処理が可能になる。このように、CPUコア111よる、全く異なる他のアプリケーションプログラムの並列処理が、可能となる。
【0104】
次に、DMAコントローラ130を活用した場合のシーケンスを説明する。データ分割部4と送信波形生成部5の実際の処理は、以下のとおりである。すなわち、内蔵フラッシュメモリ150からDA変換器610へのDMA転送を制御するDMAコントローラ130の制御プログラムと、DA変換器610の変換タイミングのトリガを生成する図示されていないタイマの制御プログラムとで実現される。
図5に示す1つの通信フレームの送信信号5aを、DA変換器610へ、実施の形態1の通信シミュレーションケースであるサンプリング周波数200kHzで送出する場合を説明する。
【0105】
内蔵フラッシュメモリ150の送信プログラム131には、予め無信号区間のゼロデータを埋め込むためのI個分のサンプリングデータとして、数値ゼロのデータ列が用意されている。DMAコントローラ130の制御プログラムは、DMAコントローラ130の転送データ数レジスタにサンプリングデータ数Hをセットし、転送先アドレスレジスタにDA変換器610を設定する。さらに、DMAコントローラ130の制御プログラムは、転送元アドレスレジスタに、波形パターン群160の先頭アドレス+オフセット値をセットする。ただし、オフセット値は、シンボル番号s×送信符号m×サンプリングデータ数Hとする。最初にオフセット値のシンボル番号sをゼロとし、第一番目のシンボルの送信符号mを挿入し、オフセット値を決定後、第一番目のシンボルの波形パターンの先頭アドレスを転送元アドレスレジスタにセットする。
【0106】
その後、DMAコントローラ130の制御プログラムは、DMA転送を起動させ、第一番目のシンボルの波形パターンであるH個のサンプリングデータをDA変換器610へ転送する。転送完了割込みにより、送信プログラム131は、転送完了を知る。DMAコントローラ130の制御プログラムは、続いて無信号区間のI個分のゼロデータを転送するため、転送元アドレスレジスタに、無信号区間のI個分のゼロデータの先頭アドレスにセットし、転送データ数レジスタには無信号区間のゼロデータ個数Iをセットし、転送先アドレスレジスタにDA変換器610を設定する。
【0107】
その後、DMAコントローラ130の制御プログラムは、DMA転送を起動し、DA変換器610へDMA転送する。この操作によって、先頭の第一シンボルの波形パターンであるH個のサンプリングデータの後に、無信号区間のI個分のゼロデータが連続してDA変換器610へ送出される。転送完了割込みにより、送信プログラム131は、I個分のゼロデータの転送完了を知る。
次に、DMAコントローラ130の制御プログラムは、オフセット値のsをインクリメントし、mは切り出した2ビットデータで変化させて転送先アドレスレジスタに設定し、H個のサンプリングデータのDMA転送をシンボル数S分だけ繰り返す。すなわち、オフセット値のsは、s=0,1,2・・・S-1と変化させ、s+1番目のシンボルに対応させた切り出した2ビットデータの送信符号mを用いて変化させる。このようにDMAコントローラ130がH個のサンプリングデータである波形パターンを転送するごとに、DMAコントローラ130の制御プログラムは、波形パターン群160の中から読み出すH個のサンプリングデータである波形パターンの先頭アドレスを、転送先アドレスレジスタに適切に設定する。
【0108】
DMAコントローラ130の制御プログラムは、Tsymに相当するHサンプリングデータの波形パターンの転送が完了する度に、無信号区間のI個分のゼロデータを、第一番目のシンボルの波形パターン送出後の操作と同じ手順でDA変換器610へDMA転送する。これにより、無信号区間であるTintを生成する。
【0109】
次に、DA変換器610の変換タイミングのトリガを生成するタイマの制御シーケンスを説明する。このタイマは図示していない。送信プログラム131は、タイマに、サンプリング周波数(実施の形態1の通信シミュレーションケースでは200kHz)、すなわち、サンプリング周期Ts(実施の形態1の通信シミュレーションケースでは5μsec)の周期でS×(H+I)個の変換トリガ信号が、DA変換器610へ送出されるように設定する。なお、サンプリング周波数は、実施の形態1の通信シミュレーションケースでは200kHzであり、また、Tsは、実施の形態1の通信シミュレーションケースでは5μsecであった。
【0110】
最初のDMA転送起動の直後、DA変換器610は、DMAコントローラ130にDMAリクエストを送出し、1サンプルデータ分のデータがDA変換器610に転送される。その直後に、このタイマから最初の変換トリガが送出され、転送された1サンプルデータをDA変換器610はデジタル・アナログ変換する。
続いて、DA変換器610は、DMAコントローラ130に、DMAリクエストを送出する。
DMAコントローラ130はリクエストへの応答として、次のサンプルデータをDA変換器610へ転送する。
その後にタイマは、次の変換トリガをTs周期で送出する。以上の処理により、次々とサンプルデータの転送とデジタル・アナログ変換とが繰り返えされる。
【0111】
ここで、送信プログラム131は、次の変換トリガが発生するTsの区間内に、次のサンプルデータがDA変換器610へ転送が完了するように、DMAコントローラ130を制御する必要がある。特にDMAコントローラ130の転送完了割込み後において、次のDMA転送のための、一連のオフセット値の計算、レジスタの設定及びDMA起動を、迅速に実行する必要がある。この点に関して、市販品のマイクロコントローラ110、例えばSTM32L4R5AIでは、以下のように、十分に想定する処理時間に間に合う。すなわち、STM32L4R5AIの最大CPUクロックは120MHzであり、CPUサイクルタイムは、8.33nsecである。そうすると、実施の形態1の通信シミュレーションケースのTs=5μsecでは、600CPUクロックサイクル内に一連の処理を行う必要がある。この一連の処理は、1~5クロックを要するロード/ストア、算術命令の組合せであるが、多くとも30ステップからなる機械語命令で実現可能である。よって、マイクロコントローラ110で、想定する規定の処理時間を十分に満足できる。
【0112】
送信機1の増幅器620は、実施の形態1のDA変換・増幅部6の中の増幅機能と同じ増幅部であり、送波器7を駆動する。増幅器620は、音波として水中伝搬路の減衰や吸収によって減衰される送信信号を、対向する受信機2で受信可能な電圧レベルまで、増幅する。増幅器620は、その増幅された電気信号によって、送波器7を駆動する。送信機1の送波器7は、実施の形態1と同じトランスデューサーである。本SMSS方式では複数の搬送波を使用する。このため、周波数帯が広くなる傾向にあるので、音波の周波数帯でなるべく均一な出力特性をもつトランスデューサーの使用が好ましい。
【0113】
次に、受信機2の動作について説明する。受信機2は、受波器8、増幅・AD変換部9、CPUコア111、DMAコントローラ130、内蔵フラッシュメモリ150内の受信プログラム231、内蔵フラッシュメモリ150内の波形パターン群160、ワーク用内蔵SRAM170、RTC140から構成される。
【0114】
受信機2は、
図16に示すように、プログラム構成要素として、BPF940、信号切り出し部13、参照波形生成部10、複数の相関計算部11、相関比較部12、データ結合部14を備える。
BPF940、信号切り出し部13、参照波形生成部10、相関計算部11、相関比較部12、データ結合部14は、実施の形態1の処理と同じ機能を実現したプログラムである。これらの機能は、受信プログラム231により実現される。CPUコア111が受信プログラム231を実行することで、これらの機能が実現される。
【0115】
受波器8にて集音された音圧信号である送波信号6aは、まず、LPF・増幅器910によって、微小な電圧信号に変換されて増幅される。その後、LPF・増幅器910において、実施の形態1の通信シミュレーションケースではサンプリング周波数がナイキスト周波数以上の200kHzであるため、送波信号6aは、100kHz以上の折り返し歪みを抑圧するLPFによって濾過される。濾過された送波信号6aは、増幅器920によってアナログ信号レベルが調整され、その後、AD変換器930へ入力される。なお、実施の形態2では、後段の信号処理として、BPF940によるデジタルフィルタで不要波を抑圧しているため、LPFは急峻な遷移帯域を持つ高コストなLPFである必要はない。
【0116】
受信機2のAD変換器930において、受信信号をサンプルデータへ連続的に変換し、ワーク用内蔵SRAM170へ格納する方法として、ソフトウエアトリガ方式とDMAコントローラ130を使った方式との、2つの方式がある。
【0117】
ソフトウエアトリガ方式の場合は、受信プログラム231がCPUコア111を制御する。受信プログラム231はCPUコア111を介して、AD変換器930の変換後データを、サンプリング周波数の周期で読み出してワーク用内蔵SRAM170にストアする操作を連続的に行う。
【0118】
DMAコントローラ130を使う方式では、DMAコントローラ130と、変換タイミングのトリガを生成する図示されていないタイマとを用いる。DMAコントローラ130は、AD変換器930へサンプリング周期で変換トリガを与え、AD変換器930の変換後データをサンプリング周期で読み出してワーク用内蔵SRAM170にこの変換後データをストアする操作を連続的に行う。
DMAコントローラ130を活用した方法は、DMA転送中にCPUコア111がフリーとなり、CPUコア111が他の処理に使用可能となる利点がある。例えば、前の受信信号の相関処理の並列動作の実施により、通信フレーム間の受信処理遅延を短縮することができたり、送信プログラム131を並列処理したり、全く異なる他のアプリケーションプログラムを並列処理することが可能となる。
【0119】
また、受信機2のAD変換器930では、オーバーサンプリング手法を用いて量子化誤差の低減や、ダイナミックレンジを向上させる方法もある。すなわち、AD変換器930おけるAD変換では、サンプリング周波数を200kHzとしたが、マイクロコントローラ110であるSTM32L4R5AIのAD変換器930の最大AD変換レートは5MHzである。このため、例えば、サンプリング周波数を3.2MHzとして小刻みにサンプルする。すなわち、オーバーサンプリングレートを16として、16倍で小刻みにサンプリングされたサンプルデータの移動平均処理(実際には切り捨て誤差を抑制するため累積処理とする)と、元のサンプリング周波数200kHzへの間引き処理を行う。これによりSN比とダイナミックレンジを向上させることが可能となる。
【0120】
一般的に、量子化ノイズがホワイトノイズであり、AD変換器のフル・スケール入力(ピークツーピーク)で理想的なサイン波形が入力されると想定する場合、Nをデジタル変換ビット数、kをオーバーサンプリングレートとすれば、SN比は、式6で表される。
SNR(dB)=(6.02×N)+1.76+10log(k) (式6)
実施の形態2のAD変換器930の出力ビット幅は12ビットを想定している。オーバーサンプリングを実施しない場合の理想的なSN比は、74dBとなる。オーバーサンプリングレートを16とすると、12dB改善され、SN比は、86dBとなる。これは、分解能2ビットの向上となり、14ビットのAD変換器の分解能と同等となる。ただし、実際には、量子化ノイズ、温度ノイズ、基準ノイズ、クロックのジッターなどがあるため、有効分解能は小さくなる。なお、この場合、AD変換器930の出力12ビットは累積処理により最大4ビット分成長する可能性がある。このため、以降の処理においては受信信号を16ビット幅のサンプルデータとして扱う。
【0121】
また、受信機2のAD変換器930の代わりに、外部ΔΣ変調器とSTM32L4R5AIの内蔵ペリフェラルの1つであるDFSDMとを使用し、量子化ノイズに起因するSN比改善を施す実装例も可能である。DFSDMは「Digital Filter forSigma-Delta Modulator Interface」を意味する。1ビットΔΣAD変換器のフロントエンド部である外部ΔΣ変調器とマイクロコントローラ110とは、1ビットΔΣストリームのシリアルインターフェイス(例えばSPIインターフェース)を通じて接続される。例えば、14ビット、250MSPSを実現する外部ΔΣ変調器を選択すると想定する。
この場合、実施の形態1の通信シミュレーションケースのサンプリング周波数200kHzにデシメーションした場合、適切なsinc関数によるLPF(Low Pass Fileter)を実現するDFSDM内のFIRデジタルフィルタと組み合わせる。これにより、オーバーサンプリングレートは1024に設定可能である。よって、この場合、SN比は30dB改善し、このとき、分解能は5ビット改善し、19ビット相当の分解能が得られるAD変換器と等価となる。
【0122】
受信機2のBPF940は、FIR(Finite Impulse Response)フィルタである。BPF940は、実施の形態1と同様に、必要な周波数帯以外の不要波を抑圧するためのバンドパスフィルタである。実施の形態1の通信シミュレーションケースのように、周波数帯域10kHz~30kHzの周波数帯を使用する場合は、以下のようである。
カットオフ周波数10kHzのHPF(High Pass Filter)と、カットオフ周波数30kHzのLPFとを複合的に実現するバンドパスフィルタを、比較的良いゲインに関する周波数特性を持つフィルタで実現させる。このために、例えば、256段のタップを有するデジタルフィルタとし、このフィルタ機能は受信プログラム231の一部として実現される。受信プログラム231は、ワーク用内蔵SRAM170に格納された「AD変換器930が連続的にサンプリングした受信信号」の先頭から256個切り出したサンプルデータと、内蔵フラッシュメモリ150内の256個のフィルタ係数とを各々乗算する。そして、受信プログラム231は、その乗算結果の総和を求めてワーク用内蔵SRAM170に格納し、新たな受信信号サンプルデータ列とする。
【0123】
次に、受信プログラム231は、受信信号の先頭から1サンプル後の256個のサンプルデータと、内蔵フラッシュメモリ150内の256個のフィルタ係数とを各々乗算する。そして、受信プログラム231は、その乗算結果の総和を求めてワーク用内蔵SRAM170に格納し、新たな受信信号サンプルデータ列とする。次からは、受信プログラム231は、受信信号の先頭からの切出し位置を次々シフトさせて、同様の演算を実施して、新たな受信信号サンプルデータ列とする。
【0124】
ただし、受信信号の後方では切出すサンプルデータが不足する。このため、受信プログラム231は、ゼロデータを付加して演算する。また、FIRフィルタのフィルタ遅延128サンプルを考慮し、受信プログラム231は、128番目からの受信信号サンプルデータ列を新たな受信信号サンプルデータ列とする。また、乗算と総和を求める積和演算には、CPUコア111が機能として保有する多ビット長の固定小数点積和演算命令を利用して、高速化を図ることが可能である。すなわち、UMLAL命令の使用である。UMLAL命令は、第一の符号なし32ビットオペランドレジスタと、第一の符号なし32ビットオペランドレジスタとを乗算し、32ビットのレジスタを連結して、64ビットの累積レジスタに乗算結果を加算する命令を1CPUクロックサイクルで実行できる。
【0125】
256個のフィルタ係数を符号なし32ビット幅で用意する。AD変換器930が連続的にサンプリングした受信信号は、符号なし12ビット幅である。このため、乗算結果は最大44ビットとなり、256個の総和では8ビット成長するので、結果的に新たな受信信号サンプルデータのビット長は最大52ビットとなる。よって、64ビットを超えてオーバーフローすることはない。また、前述のオーバーサンプリング手法で求めた受信信号は、符号なし16ビットである。このため、乗算結果は最大48ビットとなり、256個の総和では8ビット成長するので、結果的に新たな受信信号サンプルデータのビット長は最大56ビットとなる。よって、64ビットを超えてオーバーフローすることはない。受信プログラム231は、新たな受信信号サンプルデータ列の中から最大振幅値を持つサンプルデータを求める。そして、受信プログラム231は、最後にその最大振幅値を用いて新たな受信信号サンプルデータ列を全体的にスケーリングし、例えば32ビットの新たな受信信号サンプルデータ列としてワーク用内蔵SRAM170に格納する。以上が、BPF940の動作である。
【0126】
次に、信号切り出し部13の処理を説明する。実施の形態1の信号切り出し部13と同様に、
図9に示すように、信号切り出し部13は、第1シンボルの切り出し区間として、時刻基準信号を基準時刻として、音波の最大到達時間T
c1の範囲の信号を受信信号の中から切り出す。第二シンボル以降の信号切り出し区間も、実施の形態1の信号切り出し部13と同様に、
図10に示すように、シンボル番号1に対する相互相関関数計算から求めたシンボル番号1の時間位置「τ
1+T
sym」を基準として、T
sym+2T
intの区間を切り出す。なお、実際の処理は、後述の相関計算部11において、ワーク用内蔵SRAM170から受信信号のサンプリングデータを読み出す際のアドレス計算処理によって実現される。
【0127】
次に、受信機2の参照波形生成部10における処理について説明する。参照波形生成部10は、実施の形態1の参照波形生成部10と同様に、以下の処理を実行する。参照波形生成部10は、切り出しk回目におけるkに対応して、順位分割データである[k:(00)]、[k:(01)]、[k:(10)]、[k:(11)]の4種のHサンプル個のサンプルデータからなる波形パターンを、波形パターン群160から取り出す。参照波形生成部10は、取り出した各波形パターンを、それぞれの相関計算部11へ提供する。なお、参照波形生成部10による実際の処理は、後述の相関計算部11において相関関数計算を行う際の内蔵フラッシュメモリ150から波形パターンを読み出す際の、アドレス計算処理によって実現される。
【0128】
内蔵フラッシュメモリ150に波形パターン群160は、送信機1の送信プログラム131が保有する波形パターン群160と全く同じものである。波形パターン群160は、1サンプルデータ当たり12ビットとし、振幅値としてバイナリ形式で表現したMS個×Hサンプル個の波形パターンからなる。
【0129】
以下は相関計算部11の処理内容である。それぞれの相関計算部11では、参照波形となる波形パターンを、波形パターン群160の先頭アドレス+オフセット値1をアドレス計算して、必要な波形パターンのH個のサンプルデータを取り出す。ただし、オフセット値1は、シンボル番号s×送信符号m×サンプリングデータhであり、sがs=1~Sまで、mがm=1~4まで、hがh=1~Hまでそれぞれインクリメンタルに変化する変数とする。
【0130】
また、それぞれの相関計算部11では、1通信フレームの受信信号の先頭アドレス+オフセット値2をアドレス計算して、必要な受信信号の切り出し区間内のH個のサンプルデータを取り出す。ただし、オフセット値2は、シンボル番号s=1のときは、w+サンプリングデータhであり、wが1からTc1まで、hがh=1~Hまでそれぞれインクリメンタルに変化する変数とする。シンボル番号s=2以降は、w+サンプリングデータhであり、wが(直前のシンボル番号sの時刻位置τs+Tsym)から(Tsym+2Tint)まで、hがh=1~Hまでそれぞれインクリメンタルに変化する変数とする。
【0131】
それぞれの相関計算部11では、始めに、送信符号mにそれぞれ対応する累積レジスタA1~A4は、初期値としてゼロにリセットしておく。それぞれの相関計算部11では、最初にオフセット値1がシンボル番号s=1、送信符号m=1、サンプルデータ番号h=1を示すアドレスになるよう計算してセットし、そのサンプルデータを読み出して第一の乗算オペランドとする。
次に、オフセット値2が受信信号の切り出し区間のシンボル番号s=1、w=1、h=1のサンプルデータを第二の乗算オペランドとして読み出し、2つのオペランドを乗算し、累積レジスタA1との加算結果を累積レジスタA1に格納する。
次に、オフセット値1がシンボル番号s=1、送信符号m=2、サンプルデータ番号h=1を示すアドレスのサンプルデータを読み出して第一の乗算オペランドとする。
そして、第一の乗算オペランドと第二の乗算オペランドとを乗算し、この乗算結果と累積レジスタA2との加算結果を累積レジスタA2に格納する。
同様にして送信符号m=3、送信符号m=4に対応するサンプルデータを読み出して第一の乗算オペランドとし、累積レジスタA3、A4と求めていく。
【0132】
次に、オフセット値1のサンプルデータ番号をインクリメントしてh=2を示すアドレスになるよう計算してセットし、そのサンプルデータを読み出して第一の乗算オペランドとする。
次に、オフセット値2のサンプルデータ番号をインクリメントしてh=2のサンプルデータを第二の乗算オペランドとして読み出し、2つのオペランドを乗算し、乗算結果と累積レジスタA1との加算結果を累積レジスタA1に格納する。
【0133】
次にサンプルデータ番号h=1のときと同様な積和演算を行い順次、累積レジスタA2、A3、A4を求める。このh変数をHまでインクリメントし、繰り返して得られた累積レジスタA1、A2、A3、A4は、送信符号m=1~4に対応するシンボル番号s=1、サンプルデータ番号w=1の相関関数値である。
【0134】
次に、累積レジスタA1~A4ゼロにリセットし、wを1つインクリメントし、上記と同様な処理を繰り返す。これにより、累積レジスタA1、A2、A3、A4は、送信符号m=1~4に対応するシンボル番号s=1、サンプルデータ番号w=2の相関関数値が求まる。
次に、wを順次1つずつインクリメントし、w=Tc1まで上記の処理を繰り返す。
これにより、シンボル番号s=1、送信符号m=4個に対応した全サンプルデータw個からなる相関関数値が求まる。
【0135】
以下に、相関比較部12の処理を説明する。実施の形態1と同様に、相関比較部12の処理として、送信符号m=4個に対応した相関関数値データ列からそれぞれPAPRを求め最も高いPAPR値となる受信符号を特定する。その受信符号は、実施の形態1と同様にデータ結合部14へ出力され、データ結合部14は、複数の受信符号を結合して受信信号9aを受信データ14aとして出力する復調処理を行う。さらに実施の形態1と同様に、相関比較部12は、相関関数値のピーク時刻位置であるτsを算出し、シンボル番号s=2以降の受信信号の切り出し区間内のH個のサンプルデータを取り出す際のオフセット値2の計算に使用する。
【0136】
以降、シンボル番号s=2以降の相関関数値の計算方法は、シンボル番号s=1と同様である。すなわち、オフセット値1、オフセット値2の各計算要素を適宜インクリメントして適切にオペランドを選択する。そして、積和演算による累積を求め、M個×w個からなる相関関数値データ列を算出し、最も高いPAPR値となる受信符号を特定し、直前の受信符号を結合して受信データを生成していく。加えて、相関関数値のピーク時刻位置であるτsを算出し、次のシンボル番号の受信信号の切り出し区間内のH個のサンプルデータを取り出す際のオフセット値2の計算に使用する。
【0137】
なお、BPF940の場合と同様に、相関関数値計算における乗算と総和を求める積和演算には、1CPUクロックサイクルで完了するUMLAL命令の使用が有効である。参照波形パターンの波形データは12ビット幅のサンプリングデータ列であり、AD変換器930が連続的にサンプリングした受信信号は、符号なし12ビット幅、また、オーバーサンプリング法を使用した場合は16ビットである。このため、乗算結果は最大28ビットとなり、H=2000サンプル個の総和では最大11ビット成長するため、結果的に相関関数値のビット長は最大39ビットとなり、64ビットを超えてオーバーフローすることはない。
【0138】
なお、BPF940、相関計算部11及び相関比較部12における演算時の切り捨て誤差の混入を回避するため、これらの処理を浮動小数点形式で演算する場合もある。演算前に、BPF940のフィルタ係数データ、受信信号9aの各サンプルデータ、参照波形パターン群の各サンプルデータを、例えば浮動小数点形式に変換して、両者のフォーマットを合わせておく。BPF940や相関計算部11の中で主要な処理となる乗算及び総和を求める単精度浮動小数点形式の積和演算は、STM32L4R5AIのマイクロコントローラ110ではCPUコア111の中のFPU(Floating Point Unit)が行う。このマイクロコントローラ110のFPUにはVFMA(Fused-Multiply-AnDAccumulate、融合積和演算)命令がある。この命令では、浮動小数点型の乗算と累積加算の演算が、3CPUクロックサイクルで実行可能であるので、FPUを保有しないマイクロコントローラと比べて高速な演算が可能である。
【0139】
なお、実施の形態2の派生型として以下の構成でもよい。BPF940や相関計算部11での乗算と総和を求める積和演算との処理遅延低減のため、マイクロコントローラ110の外部バスにFPGAによる固定小数点型または浮動週数点型の、複数の乗算器と複数の加算器からなる積和演算専用エンジンを設けてもよい。この構成を用いてBPFのFIRデジタルフィルタや相関関数計算を並列演算することで、高速な復調処理が可能となる。
【0140】
さらに、マイクロコントローラ110として複数のCPUコアを搭載したマルチコア型のマイクロコントローラで、相関計算部11―1~11-4を各々のCPUコアで並列演算処理させる構成でもよい。この構成によって、高速な復調処理が可能になる。
【0141】
なお、実施の形態1と同様に、実施の形態2における構成においても、異なる位置に配置された受波器8を有する複数の受信機2を備えることで、SSBL方式による測位システムとして機能する。
【0142】
***実施の形態2の効果***
実施の形態2の効果は以下のようである。
(1)水中通信システム3では、実施の形態1と同じ効果が得られる。
(2)実施の形態2では、送信機1と受信機2のハードウェアとしてマイクロコントローラ110を中心に実装する。これにより、CPUコア111、DMAコントローラ130、RTC140、波形パターン群160が共用可能となるので、ハードウェア規模が削減可能となる効果がある。更にこの効果に加え、AD変換器930とDA変換器610を内蔵しているので、UUV等の水中移動体への搭載に求められる、コンパクトな送受一体型の水中音響通信モデムが実現可能になる。
(3)マイクロコントローラとしてSTM32L4R5AIを使用する場合、動作を必要としない場面では、スリープモード等の低消費電力モードの状態にできる。よって、電池を電源とするようなUUV等の水中移動体への搭載の障害低減が期待できる。
【0143】
実施の形態1、実施の形態2で述べた送信機1及び受信機2は、水中通信装置、水中測位装置、水中ロボット、無人潜水機、水中ドローン等に、産業上利用することができる。
【符号の説明】
【0144】
1 送信機、2,2-1,2-2,2-3,2-4,2-5 受信機、3 水中通信システム、4 データ分割部、4a 送信符号、5 送信波形生成部、5a 送信信号、6 DA変換・増幅部、6a 送波信号、7 送波器、8 受波器、9 増幅・AD変換部、9a 受信信号、10 参照波形生成部、10a 参照信号、11-1,11-2,11-3,11-4 相関計算部、12 相関比較部、12a 受信符号、13 信号切り出し部、14 データ結合部、16 受信機群、31 枠、110 マイクロコントローラ、120 内蔵メモリ、111 CPUコア、130 DMAコントローラ、131 送信プログラム、140 RTC、150 内蔵フラッシュメモリ、160 波形パターン群、170 ワーク用内蔵SRAM、231 受信プログラム、610 DA変換器、620 増幅器、910 LPF・増幅器、920 増幅器、930 AD変換器、940 BPF。
【手続補正書】
【提出日】2024-07-17
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
送信機と受信機とを備える水中通信システムにおいて、
前記送信機は、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号を生成する送信信号生成部と、
アナログ信号へ変換された前記送信信号を音波である送波信号として送信する送波器と、
を備え、
前記受信機は、
前記送波信号を受信する受波器と、
前記送波信号がデジタル信号に変換されて複数のシンボルを含む受信信号から、各シンボルについて、切り出し区間の中央にシンボル長が位置するようにして、シンボルの波形を切り出し信号として切り出す信号切り出し部と、
前記同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、前記切り出し信号の切り出し回数を前記送信順位とみなし、各分割データの値及び前記送信順位とから決まる複数の前記波形パターンを参照信号として使用し、前記切り出し信号と、各参照信号との相互相関関数計算を行う相関計算部と、
前記相互相関関数計算の結果から、前記各参照信号のうち、前記切り出し信号に対応する前記参照信号を決定し、決定した前記参照信号に基づき、前記切り出し信号の示すビット値と、前記切り出し信号の受信時刻とを決定する相関比較部と、
を備える水中通信システム。
【請求項2】
前記同一ビット数は、
前記送信機における送信データを同一ビット数ごとに分割する各分割データのビット数が、送信するシンボルの情報量を示すビット数である請求項1に記載の水中通信システム。
【請求項3】
前記送信機の前記送信信号生成部は、
水中における音波の伝搬環境に応じて、前記送信間隔の長さを調整する請求項1または請求項2に記載の水中通信システム。
【請求項4】
前記受信機は、さらに、
複数の参照信号の波形を伸ばし、あるいは縮める伸縮変換を行う参照信号調整部を備え、
前記相関計算部は、
前記伸縮変換された各参照信号を用いて前記相互相関関数計算を行う請求項1または請求項2に記載の水中通信システム。
【請求項5】
前記水中通信システムは、
前記受信機を複数備え、
複数の受信機の備える各受波器は、
他の前記受信機の備える前記受波器と異なる位置に配置されている請求項1または請求項2に記載の水中通信システム。
【請求項6】
複数の受信機の備える各受波器の前記位置は、
前記送信機の位置を測位するための測位方式に応じた位置である請求項5に記載の水中通信システム。
【請求項7】
水中通信に使用される送信機において、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号を生成すると共に、前記送信信号を生成する際に水中超音波伝搬環境に応じて前記送信間隔の長短を調整する送信信号生成部と、
アナログ信号へ変換された前記送信信号を音波である送波信号として送信する送波器と、
を備える送信機。
【請求項8】
水中通信に使用される受信機において、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号がアナログ信号に変換された送波信号を受信する受波器と、
前記送波信号がデジタル信号に変換されて複数のシンボルを含む受信信号から、各シンボルについて、切り出し区間の中央にシンボル長が位置するようにして、シンボルの波形を切り出し信号として切り出す信号切り出し部と、
前記同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、前記切り出し信号の切り出し回数を前記送信順位と見なし、各分割データの値及び前記送信順位とから決まる複数の前記波形パターンを参照信号として使用し、前記切り出し信号と、各参照信号との相互相関関数計算を行う相関計算部と、
前記相互相関関数計算の結果から、前記各参照信号のうち、前記切り出し信号に対応する前記参照信号を決定し、決定した前記参照信号に基づき、前記切り出し信号の示すビット値と、前記切り出し信号の受信時刻とを決定する相関比較部と、
を備える受信機。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0011
【補正方法】変更
【補正の内容】
【0011】
本開示に係る水中通信システムは、送信機と受信機とを備える水中通信システムである。
前記送信機は、
送信すべきデジタル信号である送信データが同一ビット数ごとに分割された各分割データの値及び送信順位から分割データ毎に決まる波形パターンが前記送信順位で並べられ、かつ、前記波形パターンどうしの送信間隔が空けられたデジタル信号であり、前記送信データに対応するデジタル信号である、送信信号を生成する送信信号生成部と、
アナログ信号へ変換された前記送信信号を音波である送波信号として送信する送波器と、
を備え、
前記受信機は、
前記送波信号を受信する受波器と、
前記送波信号がデジタル信号に変換されて複数のシンボルを含む受信信号から、各シンボルについて、切り出し区間の中央にシンボル長が位置するようにして、シンボルの波形を切り出し信号として切り出す信号切り出し部と、
前記同一ビット数から得られるすべてのビットデータのそれぞれを各分割データの値とみなし、前記切り出し信号の切り出し回数を前記送信順位とみなし、各分割データの値及び前記送信順位とから決まる複数の前記波形パターンを参照信号として使用し、前記切り出し信号と、各参照信号との相互相関関数計算を行う相関計算部と、
前記相互相関関数計算の結果から、前記各参照信号のうち、前記切り出し信号に対応する前記参照信号を決定し、決定した前記参照信号に基づき、前記切り出し信号の示すビット値と、前記切り出し信号の受信時刻とを決定する相関比較部と、
を備える。