エレクトロニクス工作室
No.138 PSoCを使ったAF発振器
1.はじめに
AF発振器は測定器の内部等で使用され、地味ですが利用範囲がとても広いものです。このような発振器、というよりICを用意しておくと、何かの時にさっと使う事ができます。これで引き出しが増えるでしょう。
No.132ではPSoCを使ったファンクションジェネレータを紹介しました。これをマイナーチェンジし、周波数固定のAF発振器としました。目的からするとICだけ作っておけば十分なのですが、写真1のように基板をアルミ板に載せて完成としています。
写真1 このように006Pを電源としたAFの発振器です。
周波数は1kHzとしましたが、ICの設定で簡単に変更できます。2台あればSSB用の2トーンジェネレータに使えるでしょう。この場合、歪が残るので、もう少しフィルタを強化すべきと思います。
2.PSoCの設定
No.132では出力周波数が可変できましたし、周波数をLCDに表示していました。この機能を不要とし、電源を加えるだけで固定周波数を発振するようにしました。従ってPSoC内部のCPUは使いません。PSoCの24MHzのクロックを使ってこれを1/12、1/10、1/200と分周し、1kHzを作ります。これは矩形波なので、LPFを通してサイン波にします。つまりPSoC内のデジタル回路で分周して1kHzの矩形波を作り、アナログ回路のLPFを使って高調波をカットしてサイン波にします。
ICは8ピンで安価に入手できるCY8C24123A-24PXIを使いました。もちろん、CY8C29466-24PXIでもCY8C27143-24PXIでも使用は可能です。但し、ICの内部を組みなおす必要があります。実は24123の中に2波の発振器を入れようとしたのですが、これは無理なようです。ちなみに、No.132で使った29466は750円でしたが、この24123は240円で入手できますのでQRPな価格となります。もちろん環境を作る費用は必要ですが、240円でAF発振器が作れるという事になります。
3.回路
図1のような回路としました。PSoCに電圧を加え、出力の1kHzを出すだけの簡単な回路です。矩形波の端子がICのピンに出るため、ついでに出力しています。とりあえず1kHzを設定していますが、周波数の変更などが簡単にできるように、プログラミング用の端子があります。
図1 全回路図です。(※クリックすると画像が拡大します。)
PSoCの内部は図2のような設定としました。この内部の設定は一般的なソフトではありませんので、このBEACONに置く事ができません。私のHPに置きますので、必要であればダウンロードして下さい。
図2 PSoC内部の設定です。(※クリックすると画像が拡大します。)
簡単な回路ですが、実験には手を抜けません。写真2のようにブレッドボード上で動作実験を行いました。ソフトの書き込みは写真3のようにMiniProgを使います。
写真2 作る前にはこのようにブレッドボードで動作チェックをしています。
写真3 ソフトの書き込みにはMiniProgを使います
4.作成
まず写真4のように全部品を集めて、まとめ方を考えます。アルミ板もカットしてあります。次にいつもの作り方ですが、図3のような実装図を作成しました。写真5が基板を組み立てたところです。ハンダ面が写真6です。この時には出力の結合用コンデンサに0.1μを使っていたのですが、基本波のレベルが下がるのに対し高調波はあまり下がらないため、出力の歪が悪化する事に気が付きました。あまりに容量が少ないと気が付いたため、この後で10μに変更しています。
写真4 全部品を集めたところです。
図3 組み立てる前に作った実装図です。(※クリックすると画像が拡大します。)
写真5 基板を組み立てたところです。
写真6 そのハンダ面です。
MiniProgを接続できるようにしていますので、周波数の変更も容易に行えます。つまり、この基板は発振器の設定を行うための工場ですので、ここから多くのAF発振器が巣立つ予定です。
5.測定結果
一応1kHzの出力としては、測定結果1のような矩形波と、測定結果2のようなサイン波を得る事ができました。周波数的には5Hzほど高く発振しています。PSoCはスイッチトキャパシタを使ったLPFのため、実はアナログオシロで見ると測定結果3のように、階段状になります。測定結果2と3は全く同じ出力を観測していますが、デジタルオシロでは階段までは見えていません。
測定結果1 矩形波の出力です。
測定結果2 サイン波の出力です。
測定結果3 アナログオシロで観測すると、実は階段状である事が解ります。当然高調波の原因になります。
サイン波はパソコンで出力を分析しました。ソフトはWave Spectraを使用し、入力レベル調整のため写真7のようにアッテネータを入れて測っています。但し、ソフトはバージョンアップを怠っているため、相当古くなってしまいました。その結果測定結果4のようになりました。THD(全高調波歪)としては0.26%と、まずまずの値を表示しています。
写真7 入力レベルがオーバーだったので、20dBの可変アッテネータを入れて調整しています。
測定結果4 サイン波の出力スペクトラムです。(※クリックすると画像が拡大します。)
見難いと思いますが
THD=0.26%
1kHz=-8dB
3kHz=-54.9dB
と表示されています。
ところで、測定結果4では1kHzが-8.0dBで、一番大きい3倍波が-54.9dBとなっており、その差は46.9dBです。これを計算すると、歪は0.45%となります。3倍波以外もありますので、THDとしては更に悪化するはずです。0.26%だと51.7dB以上の差が必要になるはずです。疑問に思ってソフトの作者であるefuさんのページ(http://efu.jp.net/)で確認したところ、THDは少なめに表示し、ノイズを含むTHD+Nは多めに表示するそうです。私の計算が間違っているのかと思いましたが、それで納得しました。その理由の説明もありますが、私には今一つ理解できません・・。(汗)
なお、歪は電力ではなく電圧で比較します。20dBの差があるとすると、1Vに対して0.1Vですので10%の歪となります。40dBの差があると1%、60dBの差で0.1%となります。これをエクセルで計算できるようにしています。
試しに図4のような1kHzのLPF(600Ω)をブレッドボード上に作り、写真8のように接続してみたところ、測定結果5のように階段の取れたキレイな波形となりました。測定結果6は上記と同じ解析を行ったものです。簡単なLPFですがTHDは0.027%と一桁良くなっています。これも同様に良過ぎです。1kHzが-5.6dBで、一番大きい3倍波が-71.2dBとなっており、その差は65.6dBです。これを計算すると、歪は0.052%以上となります。ザックリと作ったLPFですので、もう少し調整すれば更に良くなるでしょう。なお、LPFはアッテネータの後に入れていますが、前に入れるよりも僅かですが歪が少なく出たためです。
図4 600ΩのLPFの計算と、寄せ集め部品で試した回路です。(※クリックすると画像が拡大します。)
写真8 1kHzのLPFを追加したところです。
測定結果5 アナログオシロでも階段状は見えなくなります。
測定結果6 同様にサイン波の出力スペクトラムの観測です。(※クリックすると画像が拡大します。)
THD=0.027%
1kHz=-5.6dB
3kHz=-71.2dB
と表示されています。
6.使用感
発振器だけで使用感もないのですが、ツール、トランシーバ、測定器等の内部で使うとすると、とても使いやすい発振器と思います。周波数も基はクロックですので安定しています。ソフトで変更できますので、応用も広がります。但し、割り算のできないような周波数については簡単にはできません。また数ヘルツのような調整はできません。簡単な発振器なのですが、測定を続けた結果で随分と遊んでしまいました。
後から考えた事ですが、9Vの006Pを使うと5VにするレギュレータICが必要となります。PSoCは3Vでも動かせますので、単3を2本使っても大丈夫です。その方がデジカメで使えなくなった電池の使い道が作れ、良いように思います。
SGの変調用には400Hzと1kHzが良く使われます。SSB送信機のテスト用の2トーンジェネレータには1kHzと1.575kHzが良く使われます。この中途半端な周波数は無理としても、近くの周波数であれば作れるでしょう。このBEACONでもNo.114のAF用インピーダンスブリッジなどに応用する事ができます。
矩形波も作れますので、思わぬ使い方が沢山ありそうです。