公開日 2023年11月5日 最終更新日 2023年11月5日 by JE2UFF_Toshi
三連休最終日ですが、昨日の芝刈りの影響もあり、今日はのんびりと過ごしております。天気も予報通りいまいちで、スカッとした秋晴れではありません。少し気温も高いですね。
この前書いたコントローラのデバッグを開始しました。とりあえずは、BCDが無いのでICOM BAND DATAとCI-Vのデータを引き取り、懸案だった17mと15m、12mと10mの切り分けがちゃんと出来るかがポイントになります。
ICOM BAND DATAが簡単で便利なのですが、先の17mと15m、12mと10mは分離することが出来ず、同じデータとなってしまうのです。
もし、アンテナが別々の場合、マニュアルで切り替えなければ行けなく、オートアンテナセレクトの意味が無くなってくので、CI-Vも活用して完全分離をすることを目標に開発しております。
まずはこんな状態で、CI-Vから周波数を読み取りする部分のデバッグから始めました。
時折、CI-Vのデータの状態で表示が揺れますが、とりあえずはVFOの周波数と同じ物を表示するようになりました。
次はICOM BAND DATAを受け取る部分です。これは以前に作っているので、その部分をそのまま移植することにしました。
そして、CI-Vの最初のMHzデータを広い、それとBAND DATAとのANDをとってバンド名を表示するようにしました。
このバンドデータからバイナリコードを生成し、BCDに引き渡すようにします。
バイナリコードのデータが正しいのかはBCDが無いので分かりませんが、とりあえずは周波数とバンドが一致することの確認まではできました。
電源を入れてもリグの電源が入っていないと、DISCONNECT表示がでるようにしました。
1.8MHzの場合は160mと表示するようになり、ANTも繋がっていないのでNCと表示され、初期値は問題なさそうです。
懸案だった17mと15mの分離も、CI-Vデータを活用するようにしたのでちゃんと15mという表示になりました。
12mと10mのぶぶんも、ちゃんと分離できておりますのプログラムはとりあえずは問題なさそうです。
全バンド確認すると、ちゃんと切り替わり表示も問題なさそうです。あまりは約VFOを回すと、データが若干遅れてくる場合があり、表示が変になりますが、直ぐの元に戻りますのでこの辺は時間があるときに修正をしていこうかと思います。
とりあえずは動くようになったのですが、2つ問題があり、1つはリグの電源を落としてもRIG DISCONNECT表示に戻らないと言う事。
更に大きな問題は、外部電源にするとプログラムが動かないのです。USBで直にArduinoに給電している場合は良いのですが、外部電源から動作させるとLCD表示が薄くなり、プログラムも動かないのが変ですね。
1つ治ると1つ不具合が発生。アマチュアのプログラムですね。
未だしばらくは楽しめそうです。
【追記】11/05/2023 18:21:53
外部電源で動作しない問題について、調べていったところCI-Vの信号をArduino Pro miniに入力する際に、+5Vでプルアップしておりました。また入力をダイオードでクリッピングするようにしてあり、これは先のプルアップとペアでCI-Vの信号の波形整形をする目的だと思われます。
回路自体はネットにあるモノを参考にしたため正確な理由は分かりません。
これを素直にTXDに関してはダイオード経由で接続、RXDについては10KΩで接続するシンプルな形に変えたところ、無事外部電源でも普通に動くようになりました。
また、キバンに搭載した状態でArduinoのソフトの書き換えが出来なかったのも、これが理由だったようです。
無事1つの問題は解決しました。残りは1つ。