トップページ     電子回路のページのトップ

 周波数カウンター

 最近、電池管ラジオキットを購入しました。
 調整用のツールとしてはディップメーターしかありません。
 同調周波数に関しては容易にディップするのですが、局発コイル関しては、なかなかディップしません。
 そこで局発周波数を読みとる周波数カウンターを製作しました。
 局発周波数が同調周波数+455KHzとなるように局発コイルのコアを調整します。
 周波数としては300KHz程度〜3MHz程度が計れれば良いのですが30MHz程度まで計れると思います。
 周波数はタイマー0の1/8プリスケーラを使用している関係で8Hzステップになりますが100Hz未満を切り捨てて いるので表示分解能は100Hzとなります。
 ゲート時間は0.1秒のみです。
 局発周波数から455KHzを引いた同調周波数を表示する為のスイッチを付けました。
 電源は単3電池2本で5Vに昇圧しています。
 電池電圧が2V以下になったら警告メッセージを出すようにしています。


 回路図

 回路図をクリックすると拡大表示されます。
 拡大図から本文に戻るにはブラウザの←戻る釦を使用してください。

周波数カウンタ回路図

 使用しているDC/DCコンバータユニットは秋月から購入したものでコイルコンデンサー等が内蔵されているので 外付け部品を必要としません。
 回路図で外付けしているインダクターは単にリップルフィルターとして付けたもので、コンバータの動作には関係しません。
 入力プローブの先端には被測定回路の動作に影響を与えない程度の小容量のコンデンサーを外付けします。
 真空管ラジオで高電圧が掛かる場合は高耐圧のコンデンサーとします。


プローブ

 他の用途で使うとき感度不足になるので上記のコンデンサーは廃止しました。
 代わりに局発専用のアダプタ(プリアンプ)を作成しました。


プローブ


 プログラム

プロジェクト 使用メモリ

 CPUはPIC18F1320、コンパイラはC18を使用しています。
 カウンターはタイマー0を8ビットモード、プリスケーラ1/8で使用し、割り込み回数をカウントします。
 0.1秒のゲート時間はタイマー1で作成し、休止期間はありません。
 0.1秒の割り込みでタイマー0の割り込み回数とタイマー0の値を別の変数にコピーしてからクリアします。
 従って周波数の計算と表示は0.1秒以内で行えば良いことになります。

   プロジェクトのダウンロード (ZIP圧縮されています。)


 製作したカウンター

装置外観 装置内部
装置外観装置内部

 動作確認

 とりあえず自分自身のCPUのクロック周波数を入力してみます。

CPUクロック表示

 計算で端数を切り捨てているので19,999.9と表示されると予想し、その時は四捨五入しようと考えていたのですが そのまま期待した値が表示されました。
 数値は変動せず安定しています。
 次ぎに−455KHzのスイッチを入れてみました。

−455KHz

 とりあえず、これで良しとします。


 周波数カウンタU

 上記の周波数カウンタは30MHz程度まで計れますが、それ以上の周波数を周波数を計測するカウンターも 作ってみました。
 本来なら入力を切り換えて1台で済ませるユニバーサルカウンタとするのがスマートですが機能限定のカウンター2台を 製作したことになります。
 この方が小型軽量で製作が簡単で使い勝手が良いと思います。
 周波数範囲はプリスケーラーの性能で決まり、今回のMB501Lでは10MHz〜1GHzとなります。
 ただし、実装が?なので1GHzまで計測出来るか不明です。
 私は高周波の信号源を持っていないので確認は出来ていません。
 表示は999.99MHzを最高値とし、これ以上はオーバーフローとしています。


 回路図

 回路図をクリックすると拡大表示されます。
 拡大図から本文に戻るにはブラウザの←戻る釦を使用してください。

周波数カウンタU回路図

 信号の入力部分以外は同じです。
 外付けプリスケーラで1/64、タイマー0のプリスケーラで1/8、合計1/512の周波数分解能となります。
 表示の分解能は10KHzとしました。
 メーカーの参考回路では入力に同軸の終端抵抗50Ωが入っていますが、信号源に50Ω負荷をドライブ出来る事が必要と なります。
 今回はショートピンで51Ωを着脱可能にしておきました。
 


 プログラム

プロジェクト 使用メモリ

 プログラムは前回のカウンタと殆ど同じです。
 外付けのプリスケーラで1/64されるので計算式が異なります。
 液晶の表示フォーマットが異なります。
 −455KHzの切り替えはありません。
   プロジェクトのダウンロード (ZIP圧縮されています。)


 製作したカウンター

装置外観 装置内部 プリスケーラ
装置外観装置内部プリスケーラ

 プリスケーラを部品面に付けたのですが半田面に付けるべきでした。
 そうすれば配線長を短く出来ました。
 高い周波数で影響があるかもしれません。


 動作確認

 私は高周波数の信号発生器を持っていないので、とりあえず自分自身のCPUのクロック周波数を入力してみます。

CPUクロック表示

 今回は計算で端数を切り捨てている影響で19.99MHzと表示されたので四捨五入にしました。
 数値は変動せず安定しています。
 動作は問題無いようですので後はプリスケーラが高い周波数で動作るすかどうかです。
 IC自体の動作は問題無いはずですので実装面の手直しが必要となるかもしれません。

 メンテナンス記録

 2023/01 プリスケーラをMB501LからMB504Lに変更しました。
 突然、カウントしなくなった為です。
 調べるとMB501Lから出力が出ていないので素子が壊れた可能性もありますが素子回りの配線が剥がれた等の可能性が あります。
 MB501LからMB504Lに変えたのは手持ちの関係で意味はありません。
 最大計測周波数は1000MHzから500MHzに下がりましたが感度が上がって消費電流は下がりました。
 分周設定のSW端子(ピン3)がHからLに変わるだけですので回路図は、そのままです。
 安物の信号発生器の最大周波数の150MHz程度はカウント出来ています。


トップページ  「電子回路」のトップ