かけがえの無いメモ書き

(原著者Petteri Aimonenさん了解で日本語ページ作成しました)  

 
DSO QUADのメニューへ


 

周波数応答のアプリケーション


オーディオなんかでの周波数応答測定を簡単にできるよう私はDSO QUADに内蔵されたDACを使うプログラムを書いてみました。

出力を直接入力につないだ自己応答特性

1kオームと47nFによるRCローパス回路の測定

ヘッドホンアッテネータの手作業測定とDSO QUAD使用測定との比較(なぜかダイナミックレンジが-60dBで終わっている)

測定の原理


デフォールトのファームウェア(おそらくメモリー容量をケチるためだろう)ではサイン波発生に36サンプルしか使っていませんが、私は8000サンプルを割り当ててみました。実際の波形テーブルはSIN()関数をフライングで使っているので、ちょっと遅いが、周波数は正確に設定できます。

波形の振幅と位相を検出するためにDFTを用い、STM32は浮動小数点計算機構を有しないので、ちょっと遅くなりますが、浮動小数点計算を組み込みました。しかしそれらは特定周波数(どうしてそれがもっと早く動かないのだろう)で必要なだけで、測定ノイズをフィルタかけるのには非常に効果的です。

内部DACは最高サンプル速度は1MHzです。テストしてみたところ、200kHzのサイン波(一サイクルあたり5ポイント)で周波数応答を測るには十分な精度ですが、周波数表示では恐ろしい波形です。位相応答は200kHzの手前から曲がり始め、振幅応答もその点からすぐに下がり始めます。

 

 

 

 

 

 

組み込みと使い方


私はみなさんがDSO QUADのオープンソースという特徴の恩恵を得て欲しいと思っています。それ故、カスタムアプリを使うどんな人でも組み込め、操作できるアプリを提供します。
組み込むためにはアプリHEXファイルをダウンロード解凍します。

このソフトはデフォールトのオシロソフトに上書きされません。アプリ4番ソフトに入れ替わります。そして、電源立ち上げ時に押すボタンで選択するアプリケーション4番になります。

初めに一番左のボタンを押しながら電源を押し、ブートローダを起動します。PCにつないだDSOが空のUSBとして見え(パーティションは切られていませんのでLINUX下ならば、-t vfat/dev/sdb/mnt/dsoをマウントします)、HEXファイルをそこへコピーし、数秒待つと終わりです。

アプリケーションを開始するには電源投入時にアプリ4番ボタンを押しながら入れます。

開始するとすぐに測定が始まります。出力はWAVE OUTから入力はCH-Aにつなぎます。測定を中断しメニューモードに入りたいときにはどのキーでもよいので数秒間押し続けます。


ソースコードとコンパイル法


多くの人が異なる目的のため、幅広い選択ができるよう、わずかな時間を裂きDSO QUADのカスタムソフトを作れるよう希望します。gabonato1さんによるプロジェクトが既に有り、そのような道を切り開いてくれた彼に感謝します。彼にはソースコードの何点かの相談に乗ってもらいました。彼のプロジェクトは標準のユーザインターフェイスを変更しようというものです。

現在なるべく早く何か使い物になる小さなアプリに焦点当てて進行させております。標準のファームウェアは一般的な使い方ではよくないと思います。

ソースコードはSVNかzip圧縮で取り込めます。svn co https://svn.kapsi.fi/jpa/dsoquad/freq

READMEの中にWINでもLINUXでもコンパイル操作があります。私はCodesourcery toolchainを使ってますが、arm-none-eabi toolchainsも同じように動くはずです。


もしアプリのコンパイルや動作でトラブルに遭遇したら連絡ください。
2011.1.11 Petteri Aimonen

Email: Petteri Aimonen <jpa_at_hm.mail.kapsi.fi>

抄訳 nobcha@2012

inserted by FC2 system