« IC真贋判定装置の方式の再検討 | トップページ | FPGAロックインアンプの誤差の原因は何? »

2022.04.22

Cosmo-Zのロックインアンプで位相を測る

ロックインアンプでは、被測定信号の振幅と位相を測ることができます。

Lockingui

今日は、Keysightの任意波形発生器で作った信号をFPGAで作ったロックインアンプで測り、FPGAで作ったロックインアンプの「位相測定性能」を評価しようとしています。

 

Keysightの任意波形発生器はSCPIコマンドの SOUR2:PHASE <deg> で正弦波の位相を変えることができます。Cosmo-ZはZYNQのLinuxで動く計測器なので、LinuxからSCPIコマンドを発行してKeysightの計測器を操作しつつ計測するというプログラムを作って測りました。

Scpiphase

その結果です。

出力する正弦波の位相を0度から360度までずらしたときに、Cosmo-Zで測った位相は当然ながらのこぎり波状になります。

Phase

この波形がy=xからどれだけずれているかを示すと、

Phase200mv

まぁ、このように正弦波の形になるわけです。

ファンクションジェネレータが出した波形の位相と、測定された波形の位相の差は多くとも0.04度程度であるということがわかったので、めっちゃ優秀だと言えます。

なぜ正弦波になるのかというと、ファンクションジェネレータの波形とCosmo-Zのクロックは同期していないので端っこのデータがどっちへ行くかとかで決まるのではないかと思いますが、絶対誤差が0.04度であれば大きな問題ではありません。

で、いろいろとパラメータを変えてみました。

次はファンクションジェネレータの出す振幅を半分にしてみたとき。

Phase100mv

振幅を10mVにしたとき。

Phase10mv

振幅を1mVにしたとき。

Phase1mv

振幅が10分の1になると、位相誤差が10倍に増えていくのが分かります。

いろいろ試してみたところ周波数や積算回数には関係なく、ファンクションジェネレータの出す振幅だけが位相の誤差に関係しているようです。さて、一体なぜこういう現象が起きるのでしょう。

ADCで量子化する際の誤差なのか、Cosmo-Zの中での計算のアルゴリズムの問題なのか、atanの誤算の問題なのか、それともKeysightのファンクションジェネレータの問題なのか、まだわかりません。

|

« IC真贋判定装置の方式の再検討 | トップページ | FPGAロックインアンプの誤差の原因は何? »

コメント

コメントを書く



(ウェブ上には掲載しません)




« IC真贋判定装置の方式の再検討 | トップページ | FPGAロックインアンプの誤差の原因は何? »