既存のVFOやVXOを安定させるのはなかなか大変ですし、部品入手が難しくなっていることから、既存6mAM機のVXOと置き換えられるデジタル(DDS)VFOを作って実際に交換してみることにしました。 できるだけ既存の6mAM機を加工せずに置き換えたいので、バリコンの代わりにボリウムを使って電圧で周波数制御する方法にしました。 一般的なPLLやDDS機のようにエンコーダ+周波数表示+操作ボタンではパネルの加工が結構大変ですが、この方法なら最小の加工で済みます。 トップの写真は改造後ですが、一見しただけでは改造前と変わりありません。 DDS化によって周波数安定に気を使わなくても良くなっただけでなく、アナログでは実現しにくい機能も付加することが出来ました。 ・500HzステップでアナログVFO風の同調操作が出来ます。 ・10kHzステップモードでは50.550や50.600MHzに簡単に設定できます。 ・送信するとダイアルに不感帯を設定し、±3kHz以上の変化で解除します。 ・送信周波数を固定して受信周波数だけ動かせる機能を追加しました。 ・ICOMタイプのスピーカマイクが使えるように改造しました。 1 概 要 周波数制御入力にBカーブボリウムの出力電圧をAVR(ATMEL ATmega88)の内臓ADCで読み込んでDDS(AD9834C)を制御しています。 以下この方式をVcDS(Voltage controled dDS)と表記します。 DDSにはAD9834C(75MHzクロック版)と手持の66.6670MHzクリスタルOSCユニットを使用しました。 IF10.7MHz用なので出力は40MHz前後になりますが、AD9834Cでは40MHzは出せませんので、20MHz出力として2逓倍しています。 回路規模はVXOより大きくなりますので、取り付けに使える寸法を測って基板外形を決め、その中に何とか部品を収めました。 操作用のボリウムはポリバリコンの跡地に取り付けてあります。 2 主な仕様 VcDS部分の公開時点での数値です 周波数範囲 39.772 〜 40.028 MHz (運用周波数50.645〜50.721MHz) 周波数ステップ 0.5kHz/10kHz 出力電圧 600mVpp(1kΩ) 300mVpp(実装時) 電 源 DC7〜16V 標準DC12V 消費電流 50mA以下 (実測46mA) 基板寸法 70 x 45 mm 変形(マウント図参照) 3 ブロック図・回路図・部品 VcDSの回路図と6mAM機本体を含む改造後の全体ブロック図・回路図・基板図を下に掲載しました。 本体側の詳細は6mAM機の記事も参照してください。 基板の外形と取付穴の位置は既存機に合わせたため変則的です。 VcDS化に伴う既存機本体の定数変更はありません。 *本体およびVcDSの回路は変更する場合があります。 チップ部品は2012タイプ、チップ以外の抵抗は1/4W小型(S2)、積層セラコンは2.5mmピッチ品、ケミコンとディップタンタルは一般品です。 リードコイルは太陽誘電LAL04NA又は小さいサイズの物がマウントできます。 クリスタルOSCは以前入手しておいたKSS製CXO-389形66.6670MHz表示のものを使いました。 温度保証されて無い様で安定度がイマイチですがAM用には十分使えます。 送信周波数だけ一時的に固定する機能を実現するため、スケルチボリウムを10kBからSW付の10kAに変更しました。(14.8.14) SW付のBカーブ品が入手できないのでAカーブ品で代用したため、スケルチの動作位置が変わりますが実用的には支障ありません。 回路図は修正済み、プログラムはver2.4xに更新しました。 ICOM/VERTEX系スピーカマイクが使えるよう改造しました。(14.9.5) ICOM/VERTEX系のマイクはマイク回路でPTT制御を行う方式なので、マイクをそのままALC回路につなぐとPTT操作時の大きな電位変動でALCが叩かれて、送信音声が暫く出なくなる現象がおきます。 入手しやすいスピーカマイクがそのまま使えるよう、必要な対策をした新しいALCユニットを製作して既設ユニットと交換しました。 全体回路図を変更、下に外観写真と新ALCユニットの回路図を掲載しました。
4 VcDSユニットの組込 下の写真は既存VXOの代わりにVcDSユニットを取り付けたところです。 ボリウムは通工用24φ形です。 高精度のボリウムを入手し易いのと、軸回転のスムーズさを期待して使いました。 ボリウムの取付けは、VXOポリバリコンの取付板を再利用しています。 消費電流はVXOの22mAに比べて増加して46mAになりました。 クリスタルOSCユニットだけで18mA消費しています。
5 ソフトウエア概要 □開発環境 プログラムはBASICコンパイラ(Bascom-AVRデモ版)にて作成しました。 BASIC言語で記述しますが、制御系のコマンドが豊富で、私が使う程度の機能はほとんど準備されたもので間に合っています。 使用しているPCは古いThinkpad(Win2K)、AVRへの書き込みはプリンタポート接続の自作シリアルライタです。 □プログラム概要 VcDSのプログラムはループ内でボリウムからの電圧をADCで読み、値を周波数に変換してDDSに書き込むことを繰り返す部分が基本プロセスで、周波数変化が無ければDDSには書き込まないようにしています。 周波数ステップは0.5kHzまたは10kHzに切り替えられます。 周波数ステップの切替えは、切替えのためのスイッチを増設しない前提なので、既存の'Marker'スイッチの状態を電源ON時に読み込んで決定しています。 PTTを押すとADC値の変化に対して不感帯を設定して、ダイアル位置のちょっとした変化と送信時の電源電圧変動を防ぐ機能があり、ダイアルを±3kHz動かすと解除されます。 送信周波数固定時はスケルチボリウムのスイッチからの信号とPTT信号を受けて制御しています。(ver2.4xから機能追加) □周波数カバー範囲とステップの決定 周波数のステップ数はADCの分解能で制限されます。 ATmega88のADCが10bitなので不安定なLSBを切り捨て、上位9bit(512step)を有効として使用します。 運用周波数の範囲を決めれば1stepに割り当てる周波数が一義的に決まります。 今回は東京ビーコンの50.490MHzHzから50.720MHzくらいまでカバーしたかったので2進法で切りの良い0〜511に0.5kHzを割り付けて255.5kHzカバーとしました。 AMでは実用範囲だと思います。 10kHz/stepは6mAMが殆ど10kHz毎にQRVするので、容易に周波数が合わせられる様に組込みました。 □周波数ステップの切替方法 周波数ステップを切り替えるにはスイッチが一つ必要になりますが、できるだけ機械的改造をしない方針なので、空き回路のあるスイッチを探した結果、'MARKER'スイッチを利用することにしました。 電源オン時に読み込むだけなので、電源が入ってしまえば'MARKER'スイッチとしての機能は以前と何も変わりません。 実装上の制約で、Lで0.5kHz/step、Hで10kHz/stepとなっています。 □実際の運用周波数 VcDSユニットの出力周波数は、下限周波数50.472MHz、IF周波数10.700MHzから計算していますので、IF周波数がずれると運用周波数も同じだけずれます。 今回組み込む既存機はIF周波数が7kHz低いので、運用下限周波数が50.465MHz、上限が50.7205MHzになりました。 10kHz/stepモードの場合は50.470〜50.720MHzになります。 実際はプログラムで周波数はどうにでもなるのですが、そのままにしています。 □DDS設定データの算出と転送 DDS出力周波数は (6m運用周波数-10.700MHz)÷2 で計算しています。 前述のようにIF周波数の違いは考慮していません。 DDSに送る周波数データは設定したい周波数に変換定数を掛けて計算します。 変換定数はDDSマスターOSCの実測周波数から算出した数値をプログラムに組み込んであります。 周波数データはDDS(AD9834)の2つの周波数レジスタに交互に転送してから切替えることで、周波数変化時の信号が途切れないようにしてあります。 □周波数ダイアル誤操作防止機能 DDSの周波数はボリウム出す電圧で決まりますので、少しダイアルに触ってしまった場合や変調によって電源電圧が振られても周波数に影響が出ます。 これらの影響を防ぐため、PTTを押すと±3kHz相当の不感帯を設定して周波数の変動を防止する機能を設けました。 不感帯の範囲を超える変化があると、送信中でも通常動作に戻ります。 □送信周波数固定機能 相手からずれた周波数で呼び出された場合、RITがあれば追えるですが、このトランシーバには始めからRITが有りません。 そこでスケルチボリウムをOFFにすると送信周波数がその時点の周波数に固定され、受信は0.5kHzステップで可変できる機能を追加することにしました。 ONに戻した時 元の設定が10kHz/stepモードの場合、送信固定モード設定前の10kHz毎の周波数から±5kHz以内にダイアルを戻せば元の周波数に戻ることができます。 0.5kHz/stepモードでは、送信固定モード設定前の周波数から不感帯内の±3kHz以内にダイアルを戻せば元の周波数に戻ることができます。 いずれも復帰可能な範囲から外れている場合は、その時点のダイアル位置の周波数になります。 □AVRのクロックについて ATmega88は経験的に受信被りが少ない128kHzクロックで使用しています。 初期には計算処理に時間が掛かり、ADC読み込みが一部抜ける症状が見られましたが現在は修正されています。 ロータリエンコーダとLCDの組合せでは取り落としの問題があって8MHz動作が必要でしたが、VcDSシステムでは128kHzクロックで十分間に合うので、消費電流もカタログ値で5mAから0.15mAに減りました。 ★最新のプログラム(テキストファイル)は→ここ プログラムの利用について ◇プログラムの利用は各自の責任でお願いします ハードウエアに合わせた修正が必要な場合は自由に行って構いませんが プログラムを利用して何らかの損害が生じても作者は責任を負いません ◇プログラムの商用利用、不特定への無断配布はお断りします 6 VcDS化改造後のスプリアス・感度など □送信系 VcDSユニットに交換後の送信電力は以前と同じでした。 送信スプリアスレベルはVXOの時より減っていて、規制値-20dB程でかなり余裕があり、スプリアスの数も大幅に減っています。 VcDSユニットの出力がVXOより小さいので、ミキサでの混変調が減ったためだろうと考えています。 高調波は写真には写っていませんが改造前と変化ありません。 写真で見えているスプリアスよりは小さく、最大の2次が(-35dBm)でした。 □受信系 受信感度は-4.5dBuV(1kHz30%mod)でした。 VXO使用時より0.5dB下がっていますが感度は十分で、外来ノイズでも測定値が変動する範囲ですのでほぼ変わりなしです。 内部スプリアス受信についてはカバー範囲で1箇所だけやっと聞こえる程度のキャリアが認められました。 DDS出力の高調波が関係していて、1stepずれると逃げて聞こえなくなります。 心配していた制御系のノイズは感じません。 受信時のスプリアスは、当初DDS用クリスタルOSCの高調波が大きく出ていましたが、OSC出力を小容量のコンデンサでシャントすることで大幅に減少しました。 VXOより少し増加しましたが規制値-25dB程でかなり余裕があります。 細かいスプリアスの数はかなり増えています。 改造前の発振源はVXOと局発しかなかったので単純だったスプリアスでしたが、各種信号やノイズのあるVcDSでは仕方ない状態といえるでしょう。 (スプリアスはトランシーバ本体に依存するので参考まで)
□操作性など VcDSでは周波数が0.5kHz毎にで変化しますので、BFOを使用すれば明らかに判りますが、BFOを使わなければVXOとそれほど違いは感じられません。 ダイアル指針を目盛に合わせるだけで概ね±2kHz以内には合わせられますので、AMモードということもあって、周波数を指定されも相手と交信できる範囲に収まります 目盛と周波数の関係は安定でずれませんし、ダイアルの感触もスムーズです。 10kHzステップモードでは、10kHz毎の目盛から±半目盛以内に指針を合わせるだけで10kHz毎丁度の周波数になります。 6mAMでは10kHz毎の周波数が使われることが大半ですから、ダイアルのズレを気にせずに呼び出し応答ができて使い勝手は良好です。 送信固定機能を追加したことで、旧型アナログ機などからズレて呼ばれても対応できる様になりました。 ただ通常のRITと異なり、送信周波数固定後に受信周波数を動かした場合、固定解除する前にダイアルをできるだけ正確に固定前の位置に戻さないと送信周波数が飛びますから注意が必要です。 特に0.5kHzステップモードでは元の周波数に復帰できる範囲が±3kHz以内ですので、少し気を使います。 CQを出す場合は10kHzステップで必要なら送信周波数固定モードを使い、誰かに合わせて呼ぶ場合は0.5kHzステップモードでという運用にしようと考えています。 、 7 最後に 今回製作したVcDSユニットは、目盛板だけで運用していたVXOと構造的に近いので、ボリウム取り付け板の小加工と目盛板の変更で置換えができました。 電気的にも、無線機本体に使用したミキサIC(JRC NJM2594M)が、VFOキャリアのレベル減に対して変換利得の低下が僅少だったので無調整で済みました。 置換えということでは成功だったと思います。 内部のノイズ対策などアナログとは違う所で気を使って製作したVcDSですが、VXOで苦労した周波数安定化の苦労がなく、ダイアルの精度も良くなって満足できる結果です。 改造前のVXOでは実現できなかった、0.5kHz/10kHzステップ切替や送信周波数固定機能は、実働でも有効だということが判りました。 自作機のメインVFOに何を使うかは毎回頭の痛い問題ですが、アナログ的味付けで多機能のVcDSは、セットのデザインに自由度があり有効だと感じています。 この記事がなにかの参考になれば幸いです。 |