公開日 2022年6月21日 最終更新日 2022年6月21日 by JE2UFF_Toshi
おはようございます。梅雨の中休みで昨日は暑くなりましたが、今朝も蒸し暑い朝ですね。今日は夏至ですね。
さて、アンテナ切替器の自動切替をするためにICOM BAND dataを活用して切替検討を行ってきました。
LEDドライバーのLM3914Nを使用すると簡単にできるとの事で、この評価をずっと続けてきておりましたが、30mの抽出が上手くいかない事や、バンドデータ電圧が機種により微妙なことが実験で分かってきました。
もっと上手く確実に検出する方法は無いか考えながら、HWではなくSW的にできないか実験してみました。
Arduino(ATMEGA328P)を活用して実験です。Arduinoが持っているアナログポートのADコンバータを使用して各バンドデータ電圧を測定してみました。
入力の最大値が5Vですから、抵抗分割して5Vを超えないように入力設定します。今回は、ハイインピーダンスにしたかったので、1MΩを直列にしてその真ん中をアナログポートに接続します。
簡単なスケッチを書きADCにより計算された値をLCDに表示し調べます。
BAND | ADC電圧 |
160m | 3.70V |
80m | 3.02V |
40m | 2.52V |
30m | 0.01V |
20m | 2.03V |
15m | 1.59V |
10m | 1.10V |
6m | 0.93V |
この結果を見ると、うまく電圧が分かれているのが分かるので、HWで処理せずにSWで閾値設定をしてやれば、バンドデータを上手く抽出することができそうです。
早速スケッチを作成して実験を行ってみました。
抵抗2つの分圧器で分圧してArduinoに入力し電圧によりバンド表示をさせてみると、HWではできなかった30mの抽出も問題無くできるようになりました。
この電圧から選択したバンドで、今度はデジタルポートの値をHI/LOW切り替えていけばリレーの制御ができるようになります。
後は、リグに電源が入っていない場合も30mが選択されていることに表示はなっているので、この部分を別の抽出回路を追加して変更をかけるようにすれば完成ですね。
今までHWで悩んでいたことが簡単に解決しました。リグのバラツキにより電圧の値はバラツクようなので、HWで閾値設定をするのはめんどくさそうです。
たまたま上手くいくかもしれませんが、逆に自分のように何回やっても上手くいかない事もあると思います。
やっと一歩進むことができました。後は今まで作った切替部分との接続で考えているとおりに動くかですね。