パルス圧縮

パルス圧縮（パルスあっしゅく英: Pulse compression）とは、レーダー・ソナー・超音波検査などに広く応用される、距離分解能およびS/N比向上のための信号処理技術である。送信パルスを変調し、受信信号と送信パルスとの相関をとることにより達成される。 パルスレーダーが送信できる最も単純な信号は振幅 A で搬送波周波数（英語版）が f0 の正弦波を幅 T の矩形関数で切り取った正弦波パルスである。このパルスは周期的に送信されるが、そのことはこの項における主題に関係がないので、単パルス s のみを考えるものとする。パルスが時刻 t = 0 から開始するものと仮定すれば、この信号は複素数表記を用いて次のように書ける。 s ( t ) = { A exp ⁡ ( 2 i π f 0 t ) if 0 ≤ t < T 0 otherwise {\displaystyle s(t)={\begin{cases}A\exp(2i\pi f_{0}t)&{\text{if}}\;0\leq t<T\\0&{\text{otherwise}}\end{cases}}} このような信号で得ることのできる距離分解能を決定しよう。帰還信号 r(t) は、送信信号のコピーに減衰と時間遅れを加えたものである（現実にはドップラー効果も作用するが、ここでは重要ではない）。入力信号には実部にも虚部にもノイズが乗っていると考え、これを白色かつガウス的なノイズとして（現実でも一般的にはこれが成り立つ）、 B(t) と書くことにする。入力信号を検波するには、整合フィルタ（英語版）が用いられることが一般的である。この方法は加法的ホワイトガウシアンノイズ（英語版）中に埋もれた既知信号を検波するのに最適である。 ここで整合フィルタとは、受信信号と送信信号との相互相関関数を計算することである。これは入力信号に送信信号の共役をとって時間反転を施したものと畳み込むことにより達成できる。この演算はソフトウェアによって行うことも、ハードウェアによって行うこともできる。この相互相関関数を ⟨s, r⟩ と書くことにすると、以下を得る。 ⟨ s , r ⟩ ( t ) = ∫ t ′ = 0 + ∞ s ⋆ ( t ′ ) r ( t + t ′ ) d t ′ {\displaystyle \langle s,r\rangle (t)=\int _{t'\,=\,0}^{+\infty }s^{\star }(t')r(t+t')\mathrm {d} t'} 反射された信号が時刻 tr に受信機に戻ってきたとし、減衰因子を K とすると次を得る。 r ( t ) = { K A exp ⁡ { 2 i π f 0 ( t − t r ) } + B ( t ) if t r ≤ t < t r + T B ( t ) otherwise {\displaystyle r(t)={\begin{cases}KA\exp\{2i\pi f_{0}(t\,-\,t_{r})\}+B(t)&{\mbox{if}}\;t_{r}\leq t<t_{r}+T\\B(t)&{\mbox{otherwise}}\end{cases}}} 送信信号は既知であるから、次を得る。 ⟨ s , r ⟩ ( t ) = K A 2 Λ ( t − t r T ) exp ⁡ { 2 i π f 0 ( t − t r ) } + B ′ ( t ) {\displaystyle \langle s,r\rangle (t)=KA^{2}\Lambda \left({\frac {t-t_{r}}{T}}\right)\exp\{2i\pi f_{0}(t\,-\,t_{r})\}+B'(t)} ここで、 B′(t) は送信信号とノイズとの相互相関関数である。 関数 Λ は三角形関数で、 [−∞, −1/2]∪[1/2, ∞] における値は 0 で [−1/2, 0] において線形に増加して最大値 1 に達し、 [0, 1/2] においては線形に減少して 0 にもどる。この節の末尾の図にサンプル信号（赤線）の相互相関関数の形を示す。サンプル信号は長さ T = 1 秒に切り取られた、振幅 1、周波数 f0 = 10 Hz の正弦波である。二つのエコー（青線）が3秒および5秒遅れで、それぞれ振幅が送信信号の 0.5 倍および 0.3 倍になって戻ってきている。 これらは例示のために選んだランダムな値である。信号は実数であるから、相互相関関数には追加で 1⁄2 倍がかかっている。 もしふたつのパルスが（ほぼ）同時に戻ってきた場合、相互相関関数はふたつの素相互相関関数の和となる。この中から、ひとつのパルスの「三角型」の包絡線を別のパルスのものと弁別するためには、二つのパルスの最大値が分離できなければならないので、パルスの到着時刻が最低でも T だけ離れていなければならないことは明らかである。この条件が満たされない場合、二つの三角形は互いに混りあい分離不可能となる。 時間 T の間に波が伝播する距離は cT （c はその媒質中における波の速さ）であり、これが往復時間に対応することから次を得る。 送信パルスの瞬時電力は P(t) = |s|2(t) で与えられる。このパルスの送信に必要なエネルギーは以下のように書ける。 E = ∫ 0 T P ( t ) d t = A 2 T {\displaystyle E=\int _{0}^{T}P(t)\mathrm {d} t=A^{2}T} 同様に、 受信パルスのエネルギーは Er = K2A2T である。σ をノイズの標準偏差とすれば、受信信号のS/N比（SNR）は以下の通りとなる。 S N R = E r σ 2 = K 2 A 2 T σ 2 {\displaystyle SNR={\frac {E_{r}}{\sigma ^{2}}}={\frac {K^{2}A^{2}T}{\sigma ^{2}}}} SNR は、他のパラメータを一定に保てばパルス長 T に比例する。このことから、次のトレードオフが帰結する。 T が長くなれば SNR は改善するが、分解能が犠牲になる。また、逆も同様である。 解像度を損うことなく十分な SNR を得られるだけの大きなパルスを得るためにはどのようにすればよいだろうか？ここにパルス圧縮が登場する。基本的原理は次のようなものである。 送信信号はエネルギー予算が正しくなよう十分に長く送信する。 この信号は整合フィルタリング後の相互相関信号の幅が標準的な上述した正弦波パルスよりも小さくなるように設計する（このことにパルス圧縮の名前は由来する）。 レーダーやソナーへの応用においては、パルス圧縮には線形チャープが最も一般的に用いられる。パルスは有限の長さを持ち、振幅は矩形関数とする。 もし送信信号の長さが T で時刻 t = 0 に開始し、周波数帯 Δf だけ搬送波周波数 f0 を中心として掃引するものとすると、次のように書ける。 s c ( t ) = { A exp ⁡ [ i 2 π { ( f 0 − Δ f 2 ) t + Δ f 2 T t 2 } ] if 0 ≤ t < T 0 otherwise {\displaystyle s_{c}(t)={\begin{cases}A\exp \left[i2\pi \left\{\left(f_{0}\,-\,{\frac {\Delta f}{2}}\right)t\,+\,{\frac {\Delta f}{2T}}t^{2}\,\right\}\right]&{\mbox{if}}\;0\leq t<T\\0&{\mbox{otherwise}}\end{cases}}} 上の定義から、チャープ信号の位相（つまり、複素べき指数の偏角）は二次式となる。 ϕ ( t ) = 2 π ( ( f 0 − Δ f 2 ) t + Δ f 2 T t 2 ) {\displaystyle \phi (t)=2\pi \left(\left(f_{0}\,-\,{\frac {\Delta f}{2}}\right)t\,+\,{\frac {\Delta f}{2T}}t^{2}\,\right)} よって、瞬時周波数は（定義より）次のように書ける。 f ( t ) = 1 2 π [ d ϕ d t ] t = f 0 − Δ f 2 + Δ f T t {\displaystyle f(t)={\frac {1}{2\pi }}\left[{\frac {\mathrm {d} \phi }{\mathrm {d} t}}\right]_{t}=f_{0}-{\frac {\Delta f}{2}}+{\frac {\Delta f}{T}}t} これは、意図どおり t = 0 における f0 − Δf/2 から t = T における f0 + Δf/2 へと線形な坂を登っている。 位相と周波数の関係式を逆に用いることも多い。所望のチャープ周波数を f(t) とすると、チャープ位相は積分を用いて次のように書ける。 ϕ ( t ) = 2 π ∫ 0 t f ( u ) d u {\displaystyle \phi (t)=2\pi \int _{0}^{t}f(u)\,\mathrm {d} u} 単純パルスの場合と同様、送信信号と受信信号の相互相関関数を計算する。簡略化のため、チャープを上述のものではなく次の別の形とすることにしよう（最終的な結果は同じである）。 s c ′ ( t ) = { A exp ⁡ [ 2 i π ( f 0 + Δ f 2 T t ) t ] if − T 2 ≤ t < T 2 0 otherwise {\displaystyle s_{c'}(t)={\begin{cases}A\exp \left[2i\pi \left(f_{0}\,+\,{\frac {\Delta f}{2T}}t\right)t\right]&{\mbox{if}}\;-{\frac {T}{2}}\leq t<{\frac {T}{2}}\\0&{\mbox{otherwise}}\end{cases}}} 相互相関関数は、（減衰因子 K を除けば）sc′ の自己相関関数と等しいから、以降は次の自己相関関数について考える。 ⟨ s c ′ , s c ′ ⟩ ( t ) = ∫ − ∞ + ∞ s c ′ ⋆ ( − t ′ ) s c ′ ( t − t ′ ) d t ′ {\displaystyle \langle s_{c'},s_{c'}\rangle (t)=\int _{-\infty }^{+\infty }s_{c'}^{\star }(-t')s_{c'}(t-t')\mathrm {d} t'} sc′ の自己相関関数は次のように書けることが知られている。 ⟨ s c ′ , s c ′ ⟩ ( t ) = A 2 T Λ ( t T ) s i n c [ π Δ f t Λ ( t T ) ] exp ⁡ ( 2 i π f 0 t ) {\displaystyle \langle s_{c'},s_{c'}\rangle (t)=A^{2}T\Lambda \left({\frac {t}{T}}\right)\mathrm {sinc} \left[\pi \Delta ft\Lambda \left({\frac {t}{T}}\right)\right]\exp \left(2i\pi f_{0}t\right)} sc′ の自己相関関数は t = 0 において最大値をとる。t = 0 の近傍では、この関数は sinc 関数項のように振る舞う。この sinc 関数の −3 dB 時間幅はおおよそ T′ = 1/Δf に等しい。整合フィルタリング後には全てがパルス長 T′ の単純パルスであった場合と同様になる。通常用いられる Δf の値の場合、 T′ は T よりも短く、したがってこれを「パルス圧縮」と呼ぶ。 sinc 関数は厄介なサイドローブ（英語版）を持っているので、通常の運用では適当な窓関数（ハミング窓やハン窓など）を用いてフィルタリングを行う。実用上、これは適応フィルタリングと同時にフィルタに基準チャープを積算することで行うことができる。結果として最大値は若干減るが、サイドローブがフィルタリングされることのほうが重要である。 パルス圧縮により、信号のエネルギー総量が変更されることはない。しかし、信号のエネルギーは幅およそ T′ ≅ 1/Δf の sinc 関数のメインローブに詰め込まれることになる。P を圧縮前の信号パワー、P′ を圧縮後の信号パワーとすると、次の関係式を得る。 P × T = P ′ × T ′ {\displaystyle P\times T=P'\times T'} したがって、次のように変形できる。 P ′ = P × T T ′ {\displaystyle P'=P\times {\frac {T}{T'}}} 一方で、ノイズは送信周波数と全く相関しない（完全ランダム）のでノイズのパワーは変化しない。結果として、次のように言える。 他にも信号を変調する方法は存在する。位相変調はよく用いられる手法で、この場合はパルスを N 個の長さ T/N のタイムスロットに分割して、それぞれの開始時の位相をあらかじめ定めた規約に基いて決定する。たとえば、位相を変えないタイムスロット（そのスロットでは信号はそのまま送信される）と、信号を π だけシフト（信号の符号反転と等価）するタイムスロットを並べる。位相シフト {0, π} の配列はバーカー符号（英語版）として知られる手法に則って選ぶ。二種類の位相だけでなくより多くの位相を用いて符号化することもある（多相符号化）。線形チャープの場合と同様、パルス圧縮は相互相関を通じて達成される。 バーカー符号の利点はその単純さ（上述のとおり、 π 位相シフトは符号反転で済む）にあるが、パルス圧縮比はチャープの場合よりも低くなり、またドップラー効果による 1/T を超える周波数変化に対して非常に鋭敏になる。