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

 周波数カウンター

 最近、電池管ラジオキットを購入しました。
 調整用のツールとしてはディップメーターしかありません。
 同調周波数に関しては容易にディップするのですが、局発コイル関しては、なかなかディップしません。
 そこで局発周波数を読みとる周波数カウンターを製作しました。
 局発周波数が同調周波数+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自体の動作は問題無いはずですので実装面の手直しが必要となるかもしれません。

 メンテナンス記録
周波数カウンタU回路図

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

 周波数カウンタV

 廃品利用

 以前、315MHzの回路を調整するつもりのディップメーターを作成しましたが、それ以降全く使わなくなりました。
 それで解体してバーニアダイアル、タイトカップリング、タイトバリコンを他に流用することにしました。
 穴の明いたケースは廃棄しカウンター基板は何かに流用するつもりでしたが、とりあえず、これらで周波数カウンター にしてみました。
 ただし、内容的には上記の500MHzカウンターとほぼ同じになります。


 回路図

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

周波数カウンタV回路図

 ディップメーターから取り外したカウンター基板を無改造で使用しています。
 ファームウエアの電圧低下判断の基準電圧を6Vに書き換えました。
 Q3の2SJ377は不用で直結すべきですがそのまま使っています。
 Q3の電圧降下は15mV程度だと思います。
 ディップメーターの時は電源に006P電池を使用していましたが単3 電池6本に変更しました。
 上記「周波数カウンタU」とカウンターの内容は殆ど同じですが周波数カウンタUは単3電池2本を昇圧して電源として います。
 今回の電源は3倍以上の動作時間が期待できます。
 電源ノイズも少ないはずです。
 さらに電源オートシャットダウン回路を付加しました。
 12〜13分程度で電源がオフします。
 遮断した場合は一度、SWをオフして再度投入します。


 製作したカウンター

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

 ケースはディップメーターのケースを流用したのでバーニアダイアルやラジケーターの取り付け穴が開いています。
 とりあえずゴミが入らないようにアルミテープを貼っています。
 内部は発振回路が外されているのでガラガラです。
 後ろ側面に単3電池6本用の電池ボックスを取り付け、その内側に電源シャットオフ回路を付加しています。


 動作確認

 ディップメーターで動作していた回路ですので動作は問題ないはずです。
 適当な周波数を測定し周波数カウンタUと比較してみました。
 周波数カウンタUが93.21Mhz、周波数カウンタVが93.22MHzでした。
 CPUのクロック周波数の僅かな違いです。
 今回製作したカウンターはケースが廃品利用で見た目が少々悪いですが性能的には前回より優秀です。
 感度が高く、動作も安定しています。
 前回は小型のプラスチックケースを使用した為ではないかと想像します。


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