アマチュア衛星などの通過予想に Orbitron というソフトを使ってます。CALSAT32 などもありますが、最初に慣れてしまったのがこのソフトなのでこれを使ってます。
この Orbitron は DDE で他のソフトに衛星名・アップリンク周波数・ダウンリンク周波数・ダウンリンクモード・アップリンクモードを渡してくれます。このデータのうち周波数はシリアル経由で無線機に送ることで自動的に合わせられます。周波数は衛星が近づいてくると高く・遠ざかる時は低くなるドップラー効果のため変動します。FMモードなら無線機の周波数は固定でも問題ないですが、SSB・CW は周波数を合わせないとすぐ聞こえなくなってしまいます。
今回は、Windows のプログラム勉強がてら DDE とシリアル通信するプログラムを組んでみました。開発環境は Visual Studio 2020 で言語は C#。プラットフォームは .NET 6 フォームアプリケーションです。
.NET 6 は初めて Visual Studio も久しぶりだったのでググりながら作成しました。作成したイニシャルバージョンは下記 github リポジトリの Release のところに置いておきました。
https://github.com/ngc6589/DDE2S
使い方は、シリアルポートを選択して、通信速度・通信設定のラジオボタンを押します。その後 CONNECT を押すとシリアル送信が始まります。ウィンドウ中央やや下のテキストボックスに、無線機に送る CAT コマンドを書きます。その時下記の <> 文字は Orbitron から取得した文字列に置き換わります。
- <SN> Orbitron で表示される衛星名
- <UP> アップリンク周波数 9桁で単位は Hz
- <DN> ダウンリンク周波数 9桁で単位は Hz
- <AZ> 方位角
- <EL> 仰角
無線機の VFO-A に周波数を送る場合 FA<DN>; と書けばOKです。無線機の CAT コマンドで周波数が11桁の場合 FA00<DN> と足りない 00 を付けてやればいいです。コマンドが間違いなどの時は無線機から応答が返りますが、それは Receive 側に表示されるので目安になります。 FA; という無線機の周波数読み取り結果を表示するのにも使えます。