




現在 FTdx10 のアンテナとしては、7/18、10/14/21/24、28、50 の4系統があり手動で切替ていますが、これをリグのバンド切換えに合わせて自動で行う回路を製作してみました。
回路の基本構成は次のように Relay-1 ~4 の各リレーをON/OFFして4系統のアンテナに切替ます。
まず自動で行うために現状の手動切替装置に自動切替回路を増設しました。これはリレー駆動回路に Tr-SW を挿入したものですが、この Tr-SW には抵抗が内蔵されていて外付け抵抗がいらない素子(DTC143E)を使っています。これは通販のパーツを探していて偶然見つけたものですが、許容電圧50V、電流100mAで何といってもその値段が¥10!とコスパ最強です。ここで Tr-SW のオンオフはロジック回路やマイコンからの5V入力で行います。
なおここでは手動切替装置がすでにあるのでこのようになりましたが、新規に製作する場合は Tr-SW の入力で自動と手動に切換えるのが一般的です。製作には穴あき基板を使って配線はコネクタを配置しています。
次に自動切替の方法としては次の3つの方法があります。
1.FTdx10 のバンドデータを利用しロジックICを使用する
ヤエス機には各バンドに対応するバンドデータ出力が用意されています。これは バンドデータ A、B、C、D(1・2・4・8)として後部パネルの LINEAR 端子にありますので、このBCD出力をロジック回路で各バンド出力に分け、各リレーを駆動することになります(ただし miniDIN-10Pプラグ が必要)。
このバンドデータから各バンド出力(1:1.9、2:3.5…、10:50)を得ますが、これは A(1.9)、B(3.5)、A∩B(7)…B∩D(50)のようにAND素子で組み、その出力から希望のアンテナ切替リレー駆動信号を作成します。例えば当局のように 7/18、10~24、28、50 では次の様になり、ロジックICとしては2入力ANDが2個、2入力ORが2個必要になります。ただしこの回路は(説明のため)正論理で示していますが、実際には浮遊電圧による誤動作を避けるために負論理(NAND、NOR)で構成するのが一般的です。
このようにロジックICで組む場合、必要なバンド情報やアンテナが多くなるとかなり煩雑な回路になるため、一般的にはバイナリー・十進変換素子を使います。以下の回路は負論理素子を使った場合で必要なロジックICはデコーダーの他に2入力 NAND 2個、NOR 1個、2入力 OR 1個になります。
また実際の回路構成では、FTDx10からのバンドデータ出力をそのまま接続するのは避けたいので入力にバッファを置き、また各ロジック素子を配置する基板(ソケット)が必要ですが、何といっても各ICのピン配線を実装するには結構複雑で面倒な工作が必要になります。
2.FTdx10 のバンドデータを利用しマイコン(Arduino)を使う
1.のロジック回路の論理をロジックICではなく、マイコンのプログラムで実行し目的のアンテナ切替リレー駆動信号を得る方法です。プログラムとしては練習問題で良く取り上げられる BCD to Decimal ルーチンで以下のようなフローチャートになります。
マイコンを使う利点はアンテナ構成が変わった時でも簡単に変更可能であり、また回路構成上はロジックICを並べるのに比べマイコン1個になるので配線等も非常に簡単です。Arduino を使う場合は PC と USBコード 1本でできます。
なお Arduino が動く ATmega328P を使う場合はブートローダーやプログラム(スケッチ)を書き込む手段が必要ですが、UNOを使ったり、また自作しても簡単に(安く)できるのでオススメです。
3.PCとマイコン(Arduino)の USB通信を使う
これは CAT制御プログラムが動いている場合、そのプログラム中にマイコンへのバンドデータ送信を組込み、これを受信するマイコンの出力でリレーを切替ます。そのスケッチのフローチャートは以下のようになります。
この場合は2.と同様に、CAT制御プログラムから選択されたバンド情報をシリアル通信で受信して駆動リレーを決定し、各リレー駆動出力に設定したピンを HIGH にする(5Vを出力する)だけです。またマイコンの電源は USB でPCに接続されているため別途用意する必要がありません。
ーーーーーーーーーーーーーーーーーーーーー(2)製作編につづく
FTdx10を購入してその使い勝手への不満から、VB.NET による CAT制御プログラムを制作しQSOで使ってきましたが、そのプログラムが必要とする仕様についてもう一度考えてみました。
今まで制作したCATプログラムは当初リモート制御的な仕様を考えていたため FTdx10 自体の操作は考えていなかったのですが、使ってみるとリモート制御ではなくリグは目の前にある訳なので、あって便利な機能だけ盛り込めば良いのではないか、と思うようになってきました。
FTdx10 自体の操作では、まずマウスの使用が大変便利です。マウスを使うことによって多くのメニュー操作が2クリックでできるので、この部分は強いてCATプログラムに入れなくても良いと思います(これはヤエス機の特徴といっても良いと思いますが、ヤエスさんはそのために外部ディスプレイ接続ができるようにしているものと思われます)。
しかしパネルで表示されマウスで操作できるメニュー以外は、ダイヤル左上の FUNC SWを押し現れたメニュー表から選んでクリニックあるいはタッチし、さらにその値を変えるために FUNC SWを回す(SWとVRが兼用されている)ことになります。
これが FTdx10 の操作方法の最大の不満になります。まずこの FUNC SW の押しが固く、チョンではなくガシっと押す感じです。次にメニュー表から選んでタッチするとこの表は消え、選んだメニューが右上の周波数表示の下に現れます。ここで FUNC SW・VRを回すとその間のみパネル中央にその値が現れ、はじめて目的のメニューを設定することができます。
さらに現在設定されている値を確認するにも、この FUNC SW をガチっと押さなくてはなりません。つまりこの FUNC SW・VR 操作を別の方法で簡単にできれば使い勝手が改善されることになり、これが目的とするCAT制御プログラムの仕様ではないか、と思われます。
なのでこのメニュー表から「良く使う」、「時々使う」、「一回のみ/使わず」メニューに分類してみました。その分け方は各局長さんで異なると思いますが、当局では以下の様になりました。
以上よりCATプログラムでの操作メニューは「良く使う」、「時々使う」メニューと、今までのバンド切替、MODE、IPO、R.フィルタ及びメーター切替に限定することにして、一回かほとんど使わないメニューは省略しました。
次にこのCAT制御プログラムの仕様によると FTDX10 自体のマウス使用が前提となり、このままではリグの前に2つのマウスが並ぶことになります。なのでCAT制御プログラムの操作はキーボードでもできるような仕様にしました。
まずプログラムを起動して Enter でリグと接続しますが、もしシリアルポート関連に異常があればエラーメッセージを出して終了します。また終了は ESC です。
次に最初によく使うメニューについては以下のようにキーボードに割り当てました。
あまり使わない CW Pitch、Monitor Level、Mic Gain、AMC Level、Speech Processor Level は、最初に P、L、M、N、K をそれぞれ押した後上下の矢印キーで増減ができるようにしました。なお Break in、Speech Processor ON/OFF は、それぞれ B、J を割り当てています。さらに MODEにはQ、A、Z、IPO には W、S、X、Roofing Filter には E、D、C、を割り当てています。
なおここでは Spectram Color が表示されていますが、通常は表示されず O でON/OFFができます(緑ボタン)。この Spectram Color とメーターは、それぞれ @ と「 のキーを押し左右矢印キーで選択できるようにしました(リグの前に置くのでコンパクトタイプを使用)。
このCAT制御プログラムの改修により、実際の運用ではキーボードをリグの左側に置いて左手で操作できるので使い勝手が大変良くなりました。なおこれを有効にするには、他のプログラムと同様にマウスカーソルがこのプログラム上でオンになっている必要がありますが、これはプログラムのアイコンをクリックしてプログラムが表示された状態になります。
なおバンド切替時にキーボードをパッと見てすぐ分かるように、ファンクションキーの上に百均で買った数字シールを張ってみましたが、これは効果抜群です。
参考のため ファンクションキーの F1 からF10 までを 1.9メガから50メガに割り当てる VB.NET のコードを示します。なおこれには Form1 に SerialPort1 が張付けてあり、かつその BaudRate、PortName、StopBits(=Two)が設定されているものとします。
まずマウスが Form1 をフォーカスしている状態でキーボードの操作を検出するために Form_Load にKeyPreview を書きます。次にキーボードの KeyDown を検出しますが、今ファンクションキーの F1 から F10 までを使う場合、そのキーコードは 112 ~ 121 になります。
以上のコードだけで FTdx10 にバンド切替の指示を送ることができます。なおファンクションキーの F11 と F12 は KeyDown で e.KeyCode を拾えないので10個しか使えません。そこで 5メガバンドは飛ばしています。
このように FTDx10 に各メニューの指示を送信するだけのプログラムは簡単に制作できます。もしプログラム制作にあまりなじみのない方でも VB.NET は他のプログラム言語に比べ簡単で扱いやすいので、是非チャレンジしてみることをオススメします。
一般的にプログラム(アプリケーション)はPCのディスプレイ上で動くモノがほとんどですが、外部の機器をコントロールするこのようなアプリは非常におもしろく、作っていて楽しいプログラムだと思います。