(57)【特許請求の範囲】
【請求項１】
（１）  入力されるパルス信号を順次接合して記憶する
（２）  各接合点における信号位相差を無くすような位相シフト量を求める
（３）  求められた位相シフト量を用いて各パルス信号の位相をシフトし、疑似連続波を作成する
（４）  前記疑似連続波をフーリエ解析して、該疑似連続波の周波数を推定する
（５）  手順（３）の処理に用いた位相シフト量のシフト誤差を求め、このシフト誤差に基づいて該位相シフト量を補正して、新たな位相シフト量を求める
（６）  手順（３）乃至手順（５）の処理を所定回数繰り返し、繰り返し毎に手順（４）で求められた所定個数の周波数に基づいて、前記順次入力されるパルス信号の周波数を決定する
の手順を有する周波数測定方法。
【請求項２】
手順（５）は、シフト誤差の大きさに応じて決定される段階的な補正値で位相シフト量を補正する請求項１に記載の周波数測定方法。
【請求項３】
前記補正値は、正のシフト誤差に応じて決定される値と負のシフト誤差に対して決定される値の絶対値が異なる請求項２に記載の周波数測定方法。
【請求項４】
手順（１）は、入力されたパルス信号をベースバンドに周波数シフトしたものを記憶する請求項１、請求項２または請求項３に記載の周波数測定方法。
【請求項５】
手順（１）は、入力されたパルス信号から所定区間を切り出したものを記憶する請求項１乃至請求項４のいずれかに記載の周波数測定方法。
【請求項６】
手順（１）は、入力される１または複数のパルス信号を複数回繰り返して接合して記憶する請求項１乃至請求項５のいずれかに記載の周波数測定方法。
【請求項７】
手順（１）で入力されるパルス信号は、送信パルス信号の反射エコー信号である請求項１乃至請求項６のいずれかに記載の周波数測定方法。
【請求項８】
（１）  キャリア周波数に目的信号が重畳されたパルス信号を一定周期（１／ＰＲＦ）で複数入力する
（２）  手順（１）で入力した複数のパルス信号からキャリア周波数成分を除去し、目的信号のみを取り出す
（３）  手順（２）で取り出された複数の目的信号に対して請求項１、請求項２または請求項３の方法を適用して目的信号の概略周波数を求める
（４）  手順（２）で取り出された複数の目的信号をそれぞれ１つのサンプリングデータとしてフーリエ変換し、ベースバンド（０Ｈｚ〜ＰＲＦ）におけるスペクトルのピーク周波数ｆｄを求める
（５）  手順（３）で求めた概略周波数に基づき、目的信号の真のスペクトルの属する帯域（ＰＲＦ×ｎ〜ＰＲＦ×（ｎ＋１））の次数ｎを割り出す
（６）  手順（４）で求めたｆｄ、および、手順（５）で求めたｎを用い、ｆｄ＋ＰＲＦ×ｎの演算によって目的信号の精密な周波数を求める
の手順を有する周波数測定方法。
【請求項９】
手順（１）で入力されるパルス信号は、送信パルス信号の反射エコー信号である請求項８に記載の周波数測定方法。
【請求項１０】
所定間隔で超音波パルス信号を送信する送信手段と、
該所定間隔の超音波パルス信号の反射エコー信号を受信し、請求項７または請求項９に記載の周波数測定方法を用いて該反射エコー信号のドップラ周波数を求める受信手段と、
を備えたドップラソナー。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、入力されるパルス信号から高精度の周波数測定を可能にした周波数測定方法およびこれを用いたドップラソナーに関する。
【０００２】
【発明が解決しようとする課題】
船舶の種類によっては非常に高精度の速度計測が必要なものがある。また、通常の船舶でも港内とりわけ接岸時には極めて低速の速度制御が必要となる。しかし、単発のパルスを用いる従来のパルスドップラ装置では、上記接岸時には１ノット程度の速度分解能しか実現できない問題点があった。速度分解能、すなわち周波数分解能は送信パルス幅に比例するが、ドップラソナーのトランスデューサはパルスを送信するとともに反射エコー信号の受信も担当しているため、反射エコーが返ってくるまでの時間よりも短いパルス信号しか送信することができない。このため、対象物との距離が近いと、エコー信号が返ってくるまでの時間が短いため、長いパルスを送信することができない。
【０００３】
したがって、対象物に接近するほど低速航行になり、より高い速度分解能が必要になるのに反して、このような場面ほど送信パルス幅を短くしなければならず、速度分解能が低下するという問題点があった。
【０００４】
また、複数回の測定結果を平均して測定精度を上げる技術も実用化されているが、この方式で１Ｈｚ以下の周波数分解能を実現するためには極めて長時間の積算平均処理が必要であり、上記のように対象物に接近しているときなどに適用できるものではなかった。
【０００５】
一方、送信用トランスデューサと受信用トランスデューサを別々に設け、送信用トランスデューサは専ら連続波の超音波ビームを送信し、受信用トランスデューサでは専らそのエコー信号を受信するようにして、長い時間幅のエコーでＦＦＴを行い、高い周波数分解能を実現することも考えられる。しかし、この方式の場合、送信用トランスデューサに連続して駆動信号を印加しつづける必要があるため、トランスデューサや駆動回路の負担が大きく、送信パワーを従来のパルス波に比べて低く抑えざるを得ない。このため、連続波ビーム方式は、対象物に対して５０メートル程度に接近してからでないと使用することができない。
【０００６】
この発明は、パルスビーム方式で高精度にドップラ周波数を測定することができる周波数測定方法およびドップラソナーを提供することを目的とする。
【０００７】
【課題を解決するための手段】
請求項１の発明は、
（１）  入力されるパルス信号を順次接合して記憶する
（２）  各接合点における信号位相差を無くすような位相シフト量を求める
（３）  求められた位相シフト量を用いて各パルス信号の位相をシフトし、疑似連続波を作成する
（４）  前記疑似連続波をフーリエ解析して、該疑似連続波の周波数を推定する
（５）  手順（３）の処理に用いた位相シフト量のシフト誤差を求め、このシフト誤差に基づいて該位相シフト量を補正して、新たな位相シフト量を求める
（６）  手順（３）乃至手順（５）の処理を所定回数繰り返し、繰り返し毎に手順（４）で求められた所定個数の周波数に基づいて、前記順次入力されるパルス信号の周波数を決定する
の手順を有することを特徴とする。
【０００８】
この発明は、順次入力されるパルス信号をつなぐことによって疑似的な連続波を生成し、この疑似連続波をフーリエ変換することによって高い周波数分解能を実現できるようにしたものである。入力されるパルス信号は、たとえば、ドップラソナーの反射エコー等であり、波形が崩れている場合が多い。このため、各パルス信号をうまく位相差なくつなぐことが困難である。そこで、各パルス信号をつなぐための位相シフト量を修正しながらフーリエ変換を繰り返し、真値付近に収束または振動するようになったとき、平均処理などで真値を求める。これにより、崩れた波形のパルス信号であっても正確に周波数を求めることができる。
【０００９】
請求項２の発明は、請求項１において、手順（５）は、シフト誤差の大きさに応じて決定される段階的な補正値で位相シフト量を補正することを特徴とする。
このようなラフな処理により、演算部の負担が軽くなって（３）〜（５）のループを何度も繰り返すことができ、受信したパルス信号の波形が崩れて、真値と思われる範囲がブロードであっても平均処理などでほぼ正確に真値を推定することができる。
【００１０】
請求項３の発明は請求項２において、前記補正値は、シフト誤差を減少させ収束させるように決定され、正のシフト誤差に応じて決定される値と負のシフト誤差に応じて決定される値の絶対値が異なることを特徴とする。
これにより、位相シフト量が発散または等幅振動をつづけることがなくなる。
【００１１】
請求項４の発明は、請求項１〜３において、手順（１）は、入力されたパルス信号をベースバンドに周波数シフトしたものを記憶することを特徴とする。
これにより、キャリア周波数成分を除去して目的信号の周波数のみを求めることができる。
【００１２】
請求項５の発明は、請求項１〜４において、手順（１）は、入力されたパルス信号から所定区間を切り出したものを記憶することを特徴とする。
これにより、波形の整った部分のみを取り出して処理することができ、測定精度を向上することができる。
【００１３】
請求項６の発明は、請求項１〜５において、手順（１）は、入力される１または複数のパルス信号を複数回繰り返して接合して記憶することを特徴とする。
これにより、少ないパルス信号からでも長い疑似連続波を作りだすことができ、周波数スペクトルを鋭くして正確に周波数を求めることができる。
【００１４】
請求項７の発明は、請求項１〜６において、手順（１）で順次入力されるパルス信号は、送信パルス信号の反射エコー信号であることを特徴とする。
これにより、たとえばドップラソナー等に適用することができる。
【００１５】
請求項８の発明は、
（１）  キャリア周波数に目的信号が重畳されたパルス信号を一定周期（１／ＰＲＦ）で複数受信する
（２）  手順（１）で受信した複数のパルス信号からキャリア周波数成分を除去し、目的信号のみを取り出す
（３）  手順（２）で取り出された複数の目的信号に対して請求項１〜３の方法を適用して目的信号の概略周波数を求める
（４）  手順（２）で取り出された複数の目的信号をそれぞれ１つのサンプリングデータとしてフーリエ変換し、ベースバンド（０Ｈｚ〜ＰＲＦ）におけるスペクトルのピーク周波数ｆｄを求める
（５）  手順（３）で求めた概略周波数に基づき、目的信号の真のスペクトルの属する帯域（ＰＲＦ×ｎ〜ＰＲＦ×（ｎ＋１））の次数ｎを割り出す
（６）  手順（４）で求めたｆｄ、および、手順（５）で求めたｎを用い、ｆｄ＋ＰＲＦ×ｎの演算によって目的信号の精密な周波数を求める
の手順を有することを特徴とする。
【００１６】
この発明では、パルス信号から正確な周波数を求めることができる請求項１〜３の発明を、等間隔（１／ＰＲＦ）で受信されるパルス信号のそれぞれを１つのサンプリングデータとしてフーリエ変換を行う連続パルスモードに適用している。これにより、ＰＲＦサンプリングデータをフーリエ変換して得られた写像周波数の真値がどの帯域に属するか、すなわち「真値＝写像周波数＋ＰＲＦ×ｎ」のｎを正確に突き止めることができるため、帯域を誤ることなく正しい周波数を求めることができる。
【００１７】
請求項９の発明は、請求項８において、手順（１）で入力されるパルス信号は、送信パルス信号の反射エコー信号であることを特徴とする。
これにより、たとえばドップラソナー等に適用することができる。この場合、目的信号はドップラ周波数成分の信号である。
【００１８】
請求項１０の発明は、所定間隔で超音波パルス信号を送信する送信手段と、該所定間隔の超音波パルス信号の反射エコー信号を受信し、請求項７または請求項９に記載の周波数測定方法を用いて該反射エコー信号のドップラ周波数を求める受信手段と、を備えたことを特徴とする。
【００１９】
【発明の実施の形態】
図面を参照してこの発明が適用されたドップラソナーについて説明する。図１は同ドップラソナーの構成図、図２は同ドップラソナーの受信部のブロック図である。
【００２０】
図１において、ドップラソナーは、トランスデューサ１、切換器２、送信部３、受信部４および制御部５を備えている。送信部３は、トランスデューサ１を駆動するためのパルス信号を発生する。このパルス信号は切換器２を介してトランスデューサ１に供給される。トランスデューサ１はこのパルス信号によって駆動され、ビーム状の超音波パルス信号を水中に照射する。前記切換器２は制御部５によって制御される。制御部５は、送信部３がパルス信号をトランスデューサ１に供給したのち、切換器２を受信部４側に切り換える。水中に照射された超音波パルス信号は対象物で反射し、エコー信号としてトランスデューサ１に戻ってくる。
【００２１】
受信部４は、トランスデューサ１が受信したエコー信号を入力し、送信してからの遅れ時間に基づいて対象物との距離を測定するとともに、このエコー信号と送信パルス信号との周波数差（ドップラ周波数）に基づいて対象物との相対速度を測定する。水中における音波の伝搬速度は１５００ｍ／秒であるため、約０．１３３秒の遅れ時間が１００ｍの距離に対応する。また、船舶等でトランスデューサを斜め下方に取り付けた場合、１Ｈｚのドップラ周波数は０．０１ノット（約０．００５ｍ／秒）の相対速度に対応する。
【００２２】
図２において、トランスデューサ１は、送信パルス信号のエコー信号を受信して電気信号に変換する。このエコー信号は、水中を伝搬し一様でない対象物で反射した信号であるため、図３に示すようにエンベロープも波形も崩れており、ドップラ周波数も一様ではない。すなわちドップラ周波数の波形も正弦波から崩れたものになっている。
【００２３】
このエコー信号は高周波アンプ１１に入力される高周波アンプ１１は、この信号を後段のバンドパスフィルタ１３でろ波可能なレベルまで増幅する。バンドパスフィルタ１３は、エコー信号付近以外の不要な周波数成分を除去し、後段のＡ／Ｄ変換器１５によるアンダーサンプリングで写像が重なり合わないようにするものである。バンドパスフィルタ１３から出力される帯域制限されたエコー信号は、アンプ１４でＡ／Ｄ変換可能なレベルまで増幅されＡ／Ｄ変換器１５に入力される。
【００２４】
Ａ／Ｄ変換器１５は、入力されたエコー信号を、該エコー信号よりも低い周波数でアンダーサンプリングする。たとえば、エコー信号（送信パルス信号）の中心周波数が４３８ｋＨｚであるとすると、この信号を２４ｋＨｚでサンプリングする。そうすると、４３８ｋＨｚを中心とする±６ｋＨｚの周波数領域のスペクトルが６ｋＨｚ±６ｋＨｚ（０〜１２ｋＨｚ）および１８ｋＨｚ±６ｋＨｚ（１２〜２４ｋＨｚ）の範囲に写像として現れる。上記バンドパスフィルタ１３のろ波帯域を４３８ｋＨｚ±６ｋＨｚ以下に絞っておくことにより、これらの写像が重なり合うことがない。
【００２５】
なお、トランスデューサを斜め下方に設けた船舶においては、航行速度が１５ノットのときそのドップラ周波数は３ｋＨｚ程度であるため、送信パルス信号を中心として±６ｋＨｚの周波数領域をサンプリングすればドップラソナーが使用される速度領域を十分カバーすることができる。
【００２６】
Ａ／Ｄ変換器１５によってデジタル変換されたエコー信号はサンプリングデータとしてＤＳＰ１６に入力される。
以下図３および図４のフローチャートを参照してＤＳＰ１６の処理について説明する。
【００２７】
送信部３によるパルス信号の送信は定期的に行われ、ＤＳＰ１６に対するサンプリングデータの入力は、図３に示すように定期的に行われる。そして、図４の処理は、１つの送信パルス信号に対するサンプリングデータの入力から次の送信パルス信号に対するサンプリングデータの入力までの無入力期間を利用して実行される。
【００２８】
図４において、まず入力したサンプリングデータでＦＦＴ演算を行い。単一のパルス（単一パルスモード）によるドップラ周波数を求めておく（ｓ１）。次に、このサンプリングデータに対して複素指数関数を乗算することにより、受信したエコー信号のキャリア周波数（送信パルス信号の周波数）のスペクトルを周波数ゼロまでシフトし（デモジュレーション）、ベースバンド付近以外の周波数スペクトルを除去するローパスフィルタリングを行う（ｓ２）。この処理によってキャリア周波数成分をキャンセルし、ドップラ周波数成分のみの複素数ベースバンド信号を得る。
【００２９】
つぎに、このベースバンド帯域にシフトされたサンプリングデータから送信パルスのパルス幅に相当する時間分のデータを切り出し（ｓ３：図３参照）、この切り出しデータをパルス順にメモリに記憶してゆく（ｓ４）。このとき各切り出しデータの境界、すなわち各切り出しデータの接合点がどこであるかを記憶しておく。
【００３０】
上記の切り出し処理において、サンプリングデータの切り出し区間は、対象物からの直接反射波を最初に受信したタイミングを先頭にして送信パルス幅に対応する区間とするのが最良である。なお、このドップラソナーでは、送信部２および受信部３が同一の基準クロックに同期して動作しているため、受信の遅れ時間に基づいて反射エコー信号の算術上の位相を正確に割り出すことができる（実際の信号は波形のくずれなどによってずれている場合がある）。サンプリングデータから切り出しデータを切り出したとき、そのデータの位相の上記算術上の位相が同じになるように位相シフトしておくことにより、複数の切り出しデータを接合したときに各接合点について同じ処理で位相差をなくすことができる。
【００３１】
また、時々刻々海底深度などの相対距離が変化するため受信エコー信号の遅れ時間が変動し、サンプリングデータ中の最良の切り出し区間は各サンプリングデータ毎に一定ではない。しかし、短時間での相対距離の変動は僅かであるため、超音波パルス信号の送信間隔が一定の間は、対象物との距離が一定と考えて送信タイミングから一定の遅延時間のサンプリングデータを切り出しても問題はない。
【００３２】
ｓ４の処理でメモリ上で順次配列された切り出しデータをつないで疑似連続波データを作成するため以下の処理を行う。なお、以下の処理は、各切り出しデータのベースバンド波形、すなわちドップラ周波数の波形が崩れていることを前提にしている。まず、隣接する各切り出しデータの接合点における位相差を推定する。この位相差は、接合点付近の各切り出しデータの差分（微分値）に基づいて推定すればよい。この推定において、接合点近傍を各切り出しデータ毎に個別に直線近似（平滑化）し、ノイズの影響を軽減してもよい。位相差は、各接合点について個別に推定するが、以下の処理を効率的に行うため、これを平均したものを位相差とすればよい。なお、各接合点毎に位相差を設定して以下の処理を行ってもよいことは勿論である。また、接合点によっては位相差が２π以上になるものがあるが、この場合には２π除算計算の余りを位相差とすればよい。
【００３３】
次に、各切り出しデータを上記位相差だけ位相シフトするため、上記求めた位相差と同じ値の位相シフト量Ωskipを持つ複素指数関数（補正関数）を乗算して位相を補正する（ｓ５）。この補正において、最初の切り出しデータは、基準となるものであるため、位相補正をしない。２番目の切り出しデータは、
【数１】
0004249332.tif 000002
の補正関数を掛けて位相補正をする。３番目の切り出しデータは２番目の切り出しデータに対して位相補正をする。すなわち、２番目の切り出しデータは既に補正関数を乗算されて位相補正されているため、
【数２】
0004249332.tif 000003
の補正関数を掛けて位相補正をする。このように切り出しデータの番号をｎとすると、
【数３】
0004249332.tif 000004
の値を各切り出しデータに掛けて位相補正をする。なお、この位相補正した疑似連続波データは上記ｓ４でメモリに記憶された切り出しデータ列とは別に記憶し、ｓ４の切り出しデータ列はそのまま保存しておく。
【００３４】
このように切り出しデータ例を位相補正して求めた疑似連続波データに対してＦＦＴ演算を行い、この疑似連続波データの周波数すなわちドップラ周波数を推定する（ｓ７）。このドップラ周波数の推定において、推定精度をあげるため、補間法等を用いて周波数スペクトルのピーク周波数を求めてもよい。補間法としては、田部井・上田法（電子情報通信学会論文誌Ａ，ｖｏｌ．Ｊ７０−Ａ，ｐｐ．７９８−８０５，１９８７）を用いればよい。
【００３５】
次に、ｓ６で位相補正された疑似連続波データについて再度接合点の位相差（シフト誤差）を求める（ｓ９）。この処理は、上記ｓ４と同じ処理でよいが、各接合点について求められた位相差の平均をとるのではなく、中央値（メディアン）をシフト誤差φとする。これは、大きなノイズを伴う接合点から求められた極端な値の位相差を無視するためである。なお、ｓ９で求めたシフト誤差φは正負の値をとる。シフト誤差が正値であれば、接続点で位相が順方向にジャンプしているため、疑似連続波データは、真のドプラ信号の波長よりも短くなり、真のドップラ周波数よりも高くなる。また逆に、シフト誤差が負値であれば、接続点で位相が逆方向にジャンプしているため、疑似連続波データは、真のドプラ信号の波長よりも長くなり、真のドップラ周波数よりも低くなる。
【００３６】
そして、ｓ９で求めたシフト誤差φをそのまま位相シフト量Ωskipの補正値とするのではなく、このシフト誤差φに基づいてシフト補正値Δを決定する（ｓ１０）。この実施形態では、
0.05π＜φ            のとき  Δ＝ 0.3 (radian)
0＜φ≦ 0.05 π  のとき  Δ＝ 0.05(radian)
-0.05π≦φ≦ 0        のとき  Δ＝-0.03(radian)
φ＜-0.05 π          のとき  Δ＝-0.5 (radian)
のシフト補正値を割り当てている。求めたシフト補正値Δを位相シフト量Ωskipに加算して（Ωskip←Ωskip＋Δ）、ｓ６にもどる。
【００３７】
このようにシフト誤差φが０．３radianを超えてもシフト補正値Δを０．３にし、シフト誤差φが−０．５radianを（負方向に）超えてもシフト補正値Δを−０．５にすることにより、補正を繰り返したときに補正された位相差（ドップラ周波数：図５〜図１０参照）が発散や振動をせず収束に向かうようにしている。また、シフト誤差φが０．０５radian以下でもシフト補正値Δを０．０５にし、シフト誤差φが−０．０５radian以上でもシフト補正値Δを−０．０３にすることにより、補正された位相差（ドップラ周波数）を特定の値に完全に収束させず、その付近で振動させるようにしている。これは、各切り出しデータの波形が崩れており、また、各切り出しデータ間の位相差が一定でないため、特定の値に完全に収束させる制御には無理があり、返って誤差を大きくしてしまうおそれがあるためである。最終的には振動しているドップラ周波数の推定値を平均することで真のドップラ周波数を求めればよい。
【００３８】
なお、上記処理の開始時点で位相差の初期値Ωskipが真の位相差から大きく離れていると、収束に必要なループ回数が多くなる。このような場合には、シフト誤差φを０．０５πよりもさらに大きい境界値で分割し、この境界値を超えたときには０．３radianよりも大きいシフト補正値Δを適用すればよい。例えば、
0.2 π＜φ            のとき  Δ＝ 0.9 (radian)
0.05π＜φ＜ 0.2π    のとき  Δ＝ 0.3 (radian)
のように変更する。
【００３９】
また、シフト誤差φが正値（＋）の場合のシフト補正値Δと、負値（−）の場合のシフト補正値Δを絶対値が同じにならないように設定する。同じ値にすると、真の周波数に収束せずに同じ位相差（ドップラ周波数）間で振動を繰り返す場合があるためである。
【００４０】
ｓ８でループの終了を判断するまで、上記ｓ６〜ｓ１０の処理を繰り返し実行する。ｓ８のループ終了の判断は、何回くらい位相シフト量Ωskipを補正すれば真値付近で振動するようになるかを経験的に割り出して決定してもよく、シフト誤差φを常時監視し、所定値以下のループが所定回数以上継続したときループ終了と判断するようにしてもよい。また、次のサンプリングデータが入力される時刻までに処理を終えるようにループを打ち切ってもよい。
【００４１】
ループを終了すると、ｓ７の処理でループ毎に求められたドップラ周波数に基づいて真の推定ドップラ周波数を推定する（ｓ１１）。この推定は、ドップラ周波数が上述のほぼ収束した条件下で振動しはじめてからの値を平均すればよい。推定されたドップラ周波数を出力して（ｓ１２）、処理を終了する。このドップラ周波数に基づいて対象物との相対速度等が算出される。
【００４２】
上述したように図４の処理は、所定間隔で送信される超音波パルス信号の受信エコー信号のサンプリングデータが入力される毎に実行されるため、今回入力されたサンプリングデータに対応して処理を開始したとき、前回入力されたサンプリングデータに対応して前回実行された処理の結果が保存されている。したがって、ｓ１〜ｓ４の処理は、今回入力されたサンプリングデータについてのみ行えばよい。また、ｓ５の位相シフト量Ωskipの割り出しは、上記ｓ５に記述したように最初の段階から行ってもよいが、前回の処理で繰り返し補正された最終的なΩskipをそのまま適用してループを開始してもよい。また、この処理に用いる切り出しデータの数が決まっている場合には、ｓ４で最も古いデータを捨てて今回のデータを書き込むＦＩＦＯ処理をすればよい。
【００４３】
図５〜図１０は、７Ｈｚの正弦波信号を用いて上記処理を行ったシミュレーション結果を示している。同図左側のグラフは切り出しデータの実数部を示し、右側のグラフは位相を示している。図５（Ａ）は切り出しデータをそのまま接続した状態を示しており、同図（Ｂ）〜図９に向けて位相シフト量Ωskipをシフト補正値Δで繰り返し補正している。最終的には殆ど位相差なく接合した状態が維持されている。図１０は、上記処理の各ループ毎に求めたドップラ周波数を示している。この例では、１回目〜５回目のループでドップラ周波数が徐々に真値に接近してゆき、６回目のループ以後のドップラ周波数は、ほぼ真値付近で振動している。６番目〜１６番目のデータを平均した値は６．９９２５Ｈｚとなり真値７Ｈｚとほぼ等しくなった。
【００４４】
図１１、図１２は入力信号の周波数を各種設定して上記と同様のシミュレーションを行った結果を示している。いずれの場合も、入力信号周波数（ｉｎｐｕｔｓｉｇｎａｌ  ｆｒｅｑｅｎｃｙ）と平均周波数（ｍｅａｎ  ｆｒｅｑｅｎｃｙ）はほぼ等しくなっている。
【００４５】
なお、上記図４のフローチャートの説明および図５〜図１２のシミュレーションでは最初に位相シフト量Ωskipを求めて、これをシフト補正値Δで補正するようにしているが、最初は全く位相差を補正せずに（すなわちΩskip＝０で）ｓ６以下の処理を行い、シフト補正値Δで全位相差を補正していくようにしてもよい。
【００４６】
また、上述したように、シフト誤差φを多段に分割して、シフト誤差φが大きい場合には大きいシフト補正値Δを適用することにより、収束を速くすることもできる。
【００４７】
図１３（Ｂ）は、
0.2 π＜φ            のとき  Δ＝ 0.9 (radian)
0.05π＜φ＜ 0.2π    のとき  Δ＝ 0.3 (radian)
0＜φ≦-0.05 π  のとき  Δ＝ 0.05(radian)
-0.05π≦φ≦ 0        のとき  Δ＝-0.03(radian)
φ＜-0.05 π          のとき  Δ＝-0.5 (radian)
としてシミュレートした例である。同図（Ａ）は図５〜図１２に示したものと同様に図４のｓ１０の場合分けでシフト補正値Δを適用した例を示している。両者を比較すると、シフト誤差φが大きいときには大きいシフト補正値Δを適用したほうが若干振動は大きくなるが収束が速くなることが分かる。
【００４８】
なお、図４のフローチャートのｓ１において単一パルスモードで求めたドップラ周波数は、上記疑似連続波モードで求めたドップラ周波数の確認に用いればよい。
【００４９】
また、上記の実施形態では、順次入力されるサンプリングデータ（切り出しデータ）を１回ずつ接合して記憶することによって疑似連続波データを作成したが、１つまたは数個のサンプリングデータ（切り出しデータ）を繰り返すことによって少ないサンプリングデータから長い疑似連続波データを作成するようにすることもできる。この場合、図４のｓ４の処理において、１つの切り出しデータを繰り返しメモリに記憶するようにすればよい。
【００５０】
≪連続パルスモードへの適用≫
上記実施形態では、疑似連続波モードで求めたドップラ周波数を最終的なドップラ周波数として採用しているが、より精度の高い連続パルスモードのドップラ周波数測定において、上記疑似連続波モードを写像次数の割り出しに適用してもよい。以下連続パルスモードについて説明する。
【００５１】
連続パルスモードも上記疑似連続波モードと同様、受信エコー信号（サンプリングデータ）からキャリア周波数成分を除去した信号、すなわちデモジュレーションしてドップラ周波数波形のみにしたものを用いる。数ヘルツ程度の低周波で波長の長いドップラ周波数の波形に対して、受信エコー信号は、図１４に示すようにそのドップラ周波数波形上の１点のサンプリングデータ程度の時間幅である。そこで、これをＰＲＦサンプリングデータとして用いる。実際には、パルス幅の中央値を用いたり、一定区間を平均化するなどして１つのサンプリングデータを求める。１サンプルを抽出するにしても平均化するにしても各ＰＲＦサンプリングデータは等間隔である必要がある。
【００５２】
超音波パルス信号を一定周波数ＰＲＦ（ｐｕｌｓｅ  ｒｅｐｅｔｉｔｉｏｎ  ｆｒｅｑｕｅｎｃｙ）で繰り返し送信し、そのエコー信号を受信して複数のＰＲＦサンプリングデータを獲得する。このＰＲＦサンプリングデータを用いて離散フーリエ解析（ＦＦＴ）を行う。たとえば、送信周期３０６ｍｓ（ＰＲＦ＝３．２７Ｈｚ）のエコー信号のＰＲＦサンプリングデータを３２点求めてＦＦＴを行った場合には、ほぼ０．１Ｈｚの周波数分解能を得ることができる。このようにパルスドップラでありながら、極めて高い周波数分解能を得ることができる（図１４（Ａ）参照）。
【００５３】
ただし、ＦＦＴのサンプリング周波数はパルスの繰り返し周波数であるＰＲＦであり、これは数ヘルツ程度の低いものである（上記の例では３．２７Ｈｚである）。このため、真のドップラ周波数がこれよりも高い場合があり、上記ＦＦＴで求められたドップラ周波数は、０ヘルツ（ＤＣ）〜ＰＲＦのベースバンド（ｎ＝０）帯域に現れた上記真のドップラ周波数の写像である（図１４（Ｂ）参照）。そこで、前記疑似連続波モードで求めたドップラ周波数を用いて真のドップラ周波数がどの帯域（ＰＲＦ×ｎ〜ＰＲＦ×（ｎ＋１）…ｎ：整数）に属するかを割り出す。図１５に信号の帯域Ｂとサンプリング周波数ｆｓに応じて発生する信号帯域の写像パターンを示す。上記疑似連続波モードで求めたドップラ周波数によって割り出された帯域の基底周波数ｎ×ＰＲＦをベースバンドスペクトルのピーク周波数ｆｄに加算することによって精密なドップラ周波数である精ドップラ周波数を求める。
【００５４】
以下、図１６のフローチャートおよび図１７のベースバンドおよびｎ次写像バンドの図を参照してＤＳＰ１６の連続パルスモード時の処理動作を説明する。図１６において、Ａ／Ｄ変換器１５からサンプリングデータが入力されると（ｓ２１）、このサンプリングデータをデモジュレーションする（ｓ２２）。すなわち、６ｋＨｚ下方に周波数シフトする。ただし、サンプリングにおいてスペクトル反転が発生する場合には、１８ｋＨｚ下方に周波数シフト、または６ｋＨｚ上方にシフトする。この処理により、超音波パルスのキャリア周波数成分を除去しドップラ周波数成分のみが現れるようにする。そして、ベースバンドの周波数スペクトル以外を除去するようにフィルタリングする（ｓ２３）。なお、上記デモジュレーション演算またはサンプリング時にこのサンプリングデータは複素化される。
【００５５】
疑似連続波モードの処理を行うために、デモジュレーションされたサンプリングデータから送信パルス幅に対応する区間を切り出す（ｓ２４）。つぎに、このデモジュレーションされたサンプリングデータは、図１４に示したようにドップラ周波数波形の一部であるため、この信号の中央部の一部区間を平均するなどしてＰＲＦサンプリングデータを抽出する（ｓ２５）。ｓ２１〜ｓ２５の処理を所定回繰り返し実行する（ｓ２６）。すなわち、所定個数のサンプリングデータが入力されるまで上記処理を繰り返す。
【００５６】
所定数（たとえば３２）のサンプリングデータが入力され、切り出しデータおよびＰＲＦサンプリングデータが抽出されると、ｓ２６からｓ２７に進む。
ｓ２７以下では以下の動作を実行する。ｓ２７では図４のｓ５以下の処理を実行して疑似連続波モードのドップラ周波数を求める。この疑似連続波モードのドップラ周波数の精度はＰＲＦ（３．２７Ｈｚ）以下であるため、連続パルスモードで求めたドップラ周波数の帯域バイアス、すなわちｎ×ＰＲＦを正確に求めることができる。
【００５７】
そして、蓄積したＰＲＦサンプリングデータのうち最新の所定点数（たとえば１２８）を用いてＦＦＴを実行し（ｓ２８）、ベースバンドに変換してピーク周波数ｆｄを検出する（ｓ２９）。このピーク周波数ｆｄは、単純なピークであってもよく、ピーク領域を加重平均または積分してピークの中心値を求めてもよい。ただし、実際のドップラ周波数はベースバンドよりも高い周波数または低い周波数である可能性があるため、前記ｓ２７で求められた疑似連続波モードのドップラ周波数に基づいて真のドップラ周波数がどの帯域（第ｎ写像帯域：ｎ×ＰＲＦ〜（ｎ＋１）×ＰＲＦ）にあるかを割り出す（ｓ３０）。図１７の場合にはｎ＝５、すなわち第５写像帯域を示している。そして、前記ピーク周波数ｆｄにｎ×ＰＲＦを加算して精ドップラ周波数を算出する（ｓ３１）。
【００５８】
なお、ＰＲＦは常に一定ではなく、対象物との距離に応じて決定される。すなわち、対象物との距離が長いとエコーの遅延時間が長いためＰＲＦは小さくなり（その代わりパルス幅が長くなる）、対象物との距離が短いとエコーの遅延時間が短いためＰＲＦを大きくすることができる。
【００５９】
このように単一のトランスデューサ１を用いたドップラソナーで１Ｈｚ以下の周波数分解能を得ることができるため、従来より船舶等に搭載されているドップラソナーの処理アルゴリズムを変更するのみで計測精度を著しく向上させることも可能である。たとえば、岸壁に接岸する場合などは、微速航行となりドップラ周波数も小さくなり、岸壁との距離も短くなるためＰＲＦを１０Ｈｚ（１秒間に１０回パルスビームを送受信）程度にあげることができるため、極めて有効にこの方式を適用することができる。
【００６０】
なお、図４および図１６のフローチャートにおいて、ＤＳＰ１６が行うデモジュレーション処理は、サンプリングデータ例に対して＋１，−ｊ，−１，＋ｊを順次乗算するのみでよい。以下、この簡略化された演算処理方式について説明する。なお、この処理を可能にするために、Ａ／Ｄ変換器１５のサンプリング周波数を２４ｋＨｚに設定し、４３８ｋＨｚ付近にスペクトルが展開しているエコー信号をアンダーサンプリングした。
【００６１】
デモジュレーションは、エコー信号のスペクトルが展開している注目領域の中心周波数をゼロ周波数（ＤＣ）にシフトする処理、すなわち、周波数軸に対してスペクトルを並行移動する処理である。ここで、Ａ／Ｄ変換器１５から入力されるエコー信号のサンプリングデータ列をｘ（ｎ）と表す。このサンプリングデータ列ｘ（ｎ）は、上記のようにサンプリング周波数ｆｓ（＝２４ｋＨｚ）でサンプリングされ、中心周波数ｆｃ（＝６ｋＨｚ）の離散時間信号となったものである。これに対して、以下のような離散複数指数関数列ｃ（ｎ）を乗算する。
【００６２】
【数４】
0004249332.tif 000005
このｃ（ｎ）をｘ（ｎ）の各項に乗算することによって中心周波数ｆｃが０（ＤＣ）になるように周波数スペクトルをシフトすることができる。すなわち、データ列ｘ（ｎ）のＤＦＴ変換から求まる周波数スペクトルが、
【数５】
0004249332.tif 000006
であるのに対し、データ数列ｘ（ｎ）に離散複素指数関数ｃ（ｎ）を乗算したデータ列の周波数スペクトルＸｓｈｉｆｔ（ｋ）が、
【数６】
0004249332.tif 000007
となることから、この乗算によりデータ列の周波数スペクトルＸ（ｋ）が周波数軸に沿ってシフトされていることが分かる。すなわち、
【数７】
0004249332.tif 000008
によってスペクトルの注目領域の中心周波数ｆｃを周波数ゼロとするように、スペクトル全体を周波数軸に沿ってシフトすることができる。
【００６３】
また、前記ｃ（ｎ）の指数部（−ｊΩc ｎ）のｎを、自然数Ｍを加算することによって（ｎ＋Ｍ）に置き換えた場合、すなわち，離散複素指数関数をＭ個シフトしてデータ数列に乗算した場合でも、
【数８】
0004249332.tif 000009
で明らかなように、周波数パワースペクトルはこのずれに影響されることなく同様にシフトされる。
【００６４】
ここで、サンプリング周波数ｆｓと注目領域の中心周波数ｆｃは、上述したように
ｆｓ＝４ｆｃ／（４ｋ＋１）  ，ｋ＝０，１，２，…
となるような関係に設定されている。このため、上記、Ωc は、
Ωc ＝２π（ｆｃ／ｆｓ）＝２πｋ＋π／２
となり、前記離散複素指数関数ｃ（ｎ）は、
【数９】
0004249332.tif 000010
となる。したがって、任意の整数値ｎに対して、
【数１０】
0004249332.tif 000011
となり、＋１，−ｊ，−１，＋ｊの４種類の値のみを取ることが分かる。
【００６５】
したがって、ｘ（ｎ）に対するｃ（ｎ）の乗算は、ｘ（ｎ）に対して＋１，−ｊ，−１，＋ｊを順次乗算するのみでよい。また、この順序が維持されていれば、〔数８〕で証明されたように、ｘ（ｎ）の各データと＋１，−ｊ，−１，＋ｊとの対応は任意である。
【００６６】
上記の例では６ｋＨｚ付近に展開しているエコー信号のスペクトルを用いているが、１８ｋＨｚ付近に展開しているスペクトルを用いることも可能である。この場合、注目領域の中心周波数ｆｃ＝１８ｋＨｚとなり、
ｆｓ＝４ｆｃ／（４ｋ＋３）  ，ｋ＝０，１，２，…
となるため、
Ωc ＝２π（ｆｃ／ｆｓ）＝３π／２
となり、Ωc ＝π／２の場合と逆回りの＋１，＋ｊ，−１，−ｊをｘ（ｎ）に乗算することで１８ｋＨｚを０Ｈｚにシフトすることができる。
【００６７】
しかし、実際に乗算を行う必要はなく、乗算した場合に合わせて正負符号制御および実数虚数制御をするだけでよい。すなわち、ｃ（ｎ）がマイナス符号の場合には符号反転計算のみを行い、ｃ（ｎ）が実数の場合はｘ（ｎ）の値を全て実数部として処理し、ｃ（ｎ）が虚数の場合はｘ（ｎ）の値を全て虚数部として処理すればよい。
【００６８】
このように、
ｆｓ＝４ｆｃ／（４ｋ＋１）  ，ｋ＝０，１，２，…
となるようなサンプリング周波数ｆｓでサンプリングすることにより、サンプリングデータのサンプリング番号に基づいて符号制御および実数部，虚数部に割り振るのみの処理で周波数スペクトルのシフトを行うことができ、上記指数関数を実際に乗算して演算する必要がなくなるため、処理を大幅に簡略化することができる。
【００６９】
そして、図１８のようなレジスタの転記を行うことによって、ｘ（ｎ）の周波数スペクトルをシフトすると同時に、実数値としてサンプリングされたデータ列ｘ（ｎ）を複素数に変換することができる。ここで、Ａ／Ｄ変換器１５から入力されたデータ列ｘ（ｎ）を記憶するＡ／Ｄデータバッファをｘ（ｎ）で表し、複素数バッファをＸ（ｎ）で表す。
【００７０】
この図において、ｘ（０）はそのままＸ（０）の実数部に転記され、Ｘ（０）の虚数部には０が書き込まれる。ｘ（１）は正負の符号を反転されたのちＸ（１）の虚数部に転記され、Ｘ（１）の実数部には０が書き込まれる。ｘ（２）は正負の符号を反転されたのちＸ（２）の実数部に転記され、Ｘ（２）の虚数部には０が書き込まれる。ｘ（３）はそのままＸ（３）の虚数部に転記され、Ｘ（３）の実数部には０が書き込まれる。このように、離散複素指数関数の演算結果を複素単位乗数データ列（＋１、−ｊ、−１、＋ｊの任意の値から開始する数列）の値にしたがって順次符号反転および転記を繰り返すのみでこの周波数シフトを行うことができ、指数関数を実際に乗算して演算する必要がなくなり、処理を大幅に簡略化することができる。
【００７１】
さらに、前記複素数バッファＸ（ｎ）の実数部Ｒｅａｌ（ｎ）、Ｉｍａｇｉｎａｒｙ（ｎ）のうち一方は必ず０であるため、上記規則に基づいて０になる側が分かっていれば０を記憶するバッファを省略してバッファの記憶領域を実質的に半分にすることも可能である。
【００７２】
なお、図２に示す受信部４はアンダーサンプリングを利用するためのサンプリング周波数ｆｓと注目領域の中心周波数ｆｃとの関係をｆｓ＝４ｆｃ／（４ｋ＋１）としているが、送信する超音波パルスの周波数を任意に設定できない場合には、一旦中間周波数にダウンコンバートし、上記関係式を満足する周波数としてサンプリングすることも可能である。また、アンダーサンプリングを用いない従来方式のものにおいても本願発明は適用可能である。
【００７３】
なお、上記実施形態では超音波う用いたドップラソナーについて説明したが、測定対象はドップラ周波数に限定されない。パルス信号として送信されてくる信号（たとえば電磁波など）の周波数を測定する場合に広く適用することができる。
【００７４】
また、連続パルスモードの測定方法についても超音波を用いたドップラソナーについて説明したが、この発明は超音波以外でも電磁波など波動信号のドップラ周波数を測定する場合に広く適用できるものである。さらに、測定されたドップラ周波数に基づいて割り出される変量も速度に限定されない。
【００７５】
【発明の効果】
この発明によれば、波形のくずれたパルス信号でも、これらを接合して疑似的な連続波を作成することができるため、この疑似連続波を用いたフーリエ変換によって前記パルス信号の周波数を正確に測定することができる（疑似連続波モード）。
【００７６】
また、この発明によれば、等間隔で入力されるパルス信号のそれぞれをサンプリングデータとしてフーリエ変化することによって、該パルス信号のベースバンド帯域への写像周波数を高精度に求めることができる（連続パルスモード）。そして、この連続パルスモードに上記疑似連続波モードを適用することにより、周波数の真値がどの帯域に属するかを正確に求めることができるため、極めて高精度な信頼性の高い周波数測定が可能になる。
【図面の簡単な説明】
【図１】この発明の疑似連続波モードの測定方法が適用されるドップラソナーの概略構成図である。
【図２】同ドップラソナーの受信部の構成を示す図である。
【図３】同ドップラソナーのサンプリングデータの切り出し方式を示す図である。
【図４】同ドップラソナーのＤＳＰの動作を示すフローチャートである。
【図５】上記疑似連続波モードの測定方法をシミュレートした波形と位相を示すグラフである。
【図６】上記疑似連続波モードの測定方法をシミュレートした波形と位相を示すグラフである。
【図７】上記疑似連続波モードの測定方法をシミュレートした波形と位相を示すグラフである。
【図８】上記疑似連続波モードの測定方法をシミュレートした波形と位相を示すグラフである。
【図９】上記疑似連続波モードの測定方法をシミュレートした波形と位相を示すグラフである。
【図１０】上記疑似連続波モードの測定方法をシミュレートして得たドップラ周波数の変化を示すグラフである。
【図１１】種々の入力周波数で上記疑似連続波モードの測定方法をシミュレートした場合のドップラ周波数の変化を示すグラフである。
【図１２】種々の入力周波数で上記疑似連続波モードの測定方法をシミュレートした場合のドップラ周波数の変化を示すグラフである。
【図１３】シフト補正値Δの分割数を多くして上記測定方法をシミュレートした場合のドップラ周波数の変化を示すグラフである。
【図１４】この発明の連続パルスモードを説明する図である。
【図１５】周波数スペクトルの写像パターンを説明する図である。
【図１６】連続パルスモード時のＤＳＰの動作を示すフローチャートである。
【図１７】疑似連続波モードで写像の次数を確定することを説明する図である。
【図１８】ＤＳＰで実現されるフィルタの構成図である。
【符号の説明】
１…トランスデューサ
２…切換器
３…送信部
４…受信部
５…制御部
１１…アンプ
１３…バンドパスフィルタ
１４…アンプ
１５…Ａ／Ｄ変換器
１６…ＤＳＰ
【図１】
0004249332.tif 000012
【図２】
0004249332.tif 000013
【図３】
0004249332.tif 000014
【図４】
0004249332.tif 000015
【図５】
0004249332.tif 000016
【図６】
0004249332.tif 000017
【図７】
0004249332.tif 000018
【図８】
0004249332.tif 000019
【図９】
0004249332.tif 000020
【図１０】
0004249332.tif 000021
【図１１】
0004249332.tif 000022
【図１２】
0004249332.tif 000023
【図１３】
0004249332.tif 000024
【図１４】
0004249332.tif 000025
【図１５】
0004249332.tif 000026
【図１６】
0004249332.tif 000027
【図１７】
0004249332.tif 000028
【図１８】
0004249332.tif 000029