オーディオクラフト工房(313)

更新日:2025年2月15日


オーディオ用周波数特性測定器
引き続き、オーディオ用周波数特性測定器の記事です。今回は測定したデータをPC上でグラフ表示するアプリを改良します。つい最近までVBではバイナリデータをPCで受けれないと私は思っていました。だから周辺機器からPCでデータを受けるためにキャラクタ文字を使用して、やたら長いコードを送り込んでいたのです。でもそれは私の勘違いでした。バイナリデータでちゃんと受けれるんですね。ということで、その辺りを改善しました。基本的に記事は今までの差異のみ記しますので、全体的な内容は過去を参照下さい。
オーディオ用周波数特性測定器にメモリーを追加する
オーディオ用周波数特性測定器を改良する
オーディオ用周波数特性測定器を新しく作る
(前回メモリーを追加した周波数特性測定器)
測定器とPCをつなぐ部分は過去にコンバータ基板として追加しております。今回この部分のプログラムも改良します。
(測定器とPCをつなぐコンバータ基板)
測定器からこのコンバータ基板には今まで通りにバイナリデータを5バイト送っています。但し、PCとのアイソレーションするために、フォトカプラを経由しているので、スピードはそれほど早くありません。しかし、今回コンバータ基板からPCへのデータをバイナリ化しているので、送信タイミングは多少縮めました。
(測定器からコンバータへのデータフォーマット)
コンバータ基板からPCへのデータはバイナリ化して先頭に識別子を付けました。合計で6バイトです。今までが13バイトだったので、半分以下になりました。
(コンバータからPCへのデータフォーマット)
先頭に識別子を付けているので、PCでの読み取りにずれが全く生じなくなりました。PC側でアプリを途中で立ち上げてもデータを正しく受信出来ます。
とりあえず、測定器の出力と入力を接続して、手動で出力レベルを変えながら、スウィープ測定してデータを作りました。3種類作ってEEPROMに記憶します。当たり前ですが、データは電源を切っても覚えていますので、測定場所とPCの設置場所が異なっていてもデータを残せるようになりました。
(CH1に記憶した測定データ)
(CH2に記憶した測定データ)
(CH3に記憶した測定データ)
測定器に表示されるデータはひとつですので、都度EEPROMに記録して次の測定をする必要がありますが、測定データ保存が出来ることで使い勝手が格段に向上しました。
(PCのVBアプリも改良)
VBのアプリもコンバータからのデータを受けるように改良しました。少し使い勝手が良くない部分もあったので、使い易いようにしました。グラフ表示の部分にはChartコントロールを使っているので、改造も簡単です。上図はアプリを立ち上げて機器側と接続した時の画面です。ダミーのデータを表示させて機器からのデータを受け取っていなくてもグラフの線を表示出来るようにしました。
(DATA1に機器からのデータを表示)
画面には4種類のデータを表示することが出来ます。表示させたい色のデータを選択してから機器からのデータを受信します。ちなみにアプリは機器と接続すると常時データを受信出来るように構えております。機器のデータ送信ボタンを押す前に表示したい色を選択しておいて下さい。
(3種類分のデータを表示しました)
このような表示になります。各々のデータのみを消すことも出来ます。画面上のデータは消えるとなくなりますので、もう一度表示したい場合は機器データを再度送り込んで下さい。この辺りは改良の余地があるかもしれません。
(表示後縦軸のレベルを変更できます)
縦軸のレベルは10dB単位で設定出来ますので、レベルの拡大表示も簡単です。
(横軸の周波数の範囲も変えられます)
フィルターの効果を確認する時など周波数範囲を狭めて見ることもあると思うので、それなりに横軸も変えれます。グラフが対数なので、中途半端な周波数にすることも出来ませんので、選べるのはこの程度です。
さて、ここまでで、オーディオ用周波数特性測定器の記事は一旦区切りを付けます。また気が向いたらいじることにはなるでしょうけど。といことで、今年も楽しい製作をどんどん続けて行きたいと思っています。引き続きオーディオクラフト工房をよろしくお願いいたします。
プログラムソースを見て勉強したい方がおられましたら連絡を下さい。個別の対応をさせて頂きます。

オーディオクラフト工房へ戻る