PRIMO信号処理研究所 / Synchro PRIMO Lab.

周波数測定、位相差測定に関する新しい数理。
Please contact to snishie@mac.com.

当社の位相差測定方法

2015-07-20 01:07:49 | 信号処理
位相差測定・計算のための公式は知られておりません。

 例えば 時系列波形 x,y  を与えて、φ =phase ( x ,y ) のような
位相差計算ができるとこれは画期的なことです。

しかし、位相差測定(計算)で、周波数が異なる信号の位相差は
どうなるか?リサージュ図を使って位相差を求める方法は教科書に
かかれていますが、周波数が異なり図形が安定しないと、リサージュを
使う方法は不可能です。

 DFT/FFTを使えば一発ではないか、という意見もあります。
しかし角度の引き算は以外に厄介で位相差が変化する場合(すなわち
周波数座が微妙にあある)は面倒です。

(ベクトル図による方法)

 ここでベクトル図の基本に立ち返ってみます。 2つのベクトル
p,q があったとすると、p, q のなす角度はどうやれば計算できるか?

 これは簡単で、p ,q の内積を求めて;
cos φ = (p・ q) / (|p| *|q| ) とやればOKです。
p =( x1, y1 ), q = (x2, y2) とすると、角度φは;

cos φ = (x1 * x2 + y1 * y2 ) / {sqrt( x1^2 + y1^2 ) sqrt(x2^2 + y2^2 )}
と計算できます。

外積を使うと、今度はsinφの形式で
sin φ = (p × q) / (|p| *|q| )
sin φ = (x1 * y2 - x2 * y1 ) / {sqrt( x1^2 + y1^2 ) sqrt(x2^2 + y2^2 )}
となります。

 もし、あつかう信号がベクトルであるならば、位相差は、
内積・外積・絶対値から求めることができます。90度付近はcos に
よるものが有利です。 0度付近では外積を使うものが計算しやすく
なります。

(課題)

 しかし、測定したい信号は通常実数です。IQ信号を扱えるところは
少ないです。 もし、実信号を「非常に簡単な方法」でベクトル化
(IQ信号)に変換できれば、以上説明した「ベクトル」による非常に
シンプルな位相差計算ができることになります。

(既知の方法)

 直交信号を作成するためには「ヒルベルト変換」を使うことができます。
時系列信号を X_re であたえると、X_im = Hilbert ( X_re )のように一発で
計算できます。(Matlab等では標準)
しかし、この中身はあるインパルス応答の畳み込み積分。計算量は少なく
ありません。

(当社の方法)

 当社で考案した方法では「遅延器」をつかって90度信号をシフトする
方法です。遅延時間と移相量は比例することを利用しますが、問題は
90度をどうやって正確にコントロールするか。

90度の移相の方法;
「遅延器を使うIQ信号作成方法」をご覧ください



最新の画像もっと見る

コメントを投稿