bookmark_border[396] Python Tkinter

SD330アンテナのコントロールソフトを実現させるため、色々なところにつまずきながらPythonの勉強を進めています。

今はGUIを構成するための「Tkinter」の習得を目指しているのですが、これがなかなかの曲者で、「mainloop」内でプログラムを回してGUI表示やボタン押下検出などを行いながら、NanoVNAから取り出したSWR値をリアルタイムで表示させるのに苦労しています。これがうまく行かないと、リレー制御の部分にまともに取り掛かることができません。

「SWR取得」機能は一つの関数として定義して、mainloop内でボタン押下をトリガに起動させるところまではできましたが、SWRが2を超えている場合はリレーON状態を保ちつつ、SWRが2以下になるまで連続して「SWR取得」機能を動かすループの中では、逐一SWR値を表示することができないという問題に直面しています。

おそらく何かうまい方法があるのでしょうが、悩みながらひとつひとつ解決していくことに意義があるなどと勝手に思っています。所詮趣味の世界ですので、あせらずに楽しもうと思います。

bookmark_border[393] 「イモネジ」セット

HFV5アンテナを使い始めたころ、エレメントの長さ調整の際にイモネジを締め付ける力の加減が良くわからず結構きつく締めてしまったため、一部のネジで六角穴が緩くなってしまい、六角レンチを使うときは垂直にきつく押さえながらでないと空回りしてしまう状態になっています。

いつかは予備のイモネジを購入しようと思っていたのですが、長い間そのままにしていたところ、今般コメットさんから「イモネジ」セットが発売されたとの情報が入り早速購入しました。

セットにはこのように多くの種類のネジが入っています。

・M3x3イモネジ銀 ×2
・M3x3イモネジ黒 ×2
・M4x3イモネジ銀 ×2
・M4x3イモネジ黒 ×2
・M4x4イモネジ銀 ×2
・M4x4イモネジ黒 ×2
・M4x8イモネジ黒 ×2
・1.5mm六角レンチ ×1
・2.0mm六角レンチ ×1
・モービル用Mゴムパッキン ×1

この中で私が必要とするネジはごく一部なのですが、価格も440円(税込)と安く半ば衝動買いです。何か他の用途にも使えるのではないかと思いつつ、おそらくそのほとんどが部品箱の中で眠ることになると想像します。

ちなみにコメットさんの商品は企画が優れているうえにお求め易い価格ということもあるせいか、衝動買いをする傾向にあります。アンテナではHFJ-350MやCDP-106はこの数か月間部屋の中でお休み中で、有効活用できていない状況です。

bookmark_border[392] Pythonコーディング難航

SD330コントローラ用ソフトウェアについて、個々の機能は一応準備したつもりでそれを1本のプログラムに纏めようとしていますが難航しています。

各々のボタンが押されたときのイベント処理や変数の取り込み方、引渡し方など、スムーズに実行するには結構ノウハウが必要な様です。

GUIプログラムのループの中で、ボタン押下や周波数入力などのアクションを認識してリレーやNanoVNAを立ち上げ、刻一刻と変わっていくSWR値を取り込んで表示させ、更にその値に応じてリレーを制御するというリアルタイムでの処理を実現するには、Webで紹介されているようなサンプルコードの応用だけでは済まず、まだまだPythonや関連機能に関する勉強が必要であることを感じます。

ただ、この様に具体的にプログラミングを通じて自然とPythonの使い方も覚えてくるので、学習方法としては効率的かなと思っています。

bookmark_border[386] SD330コントローラ用GUI試作

試しにSD330コントローラ(オートチューナ)用のGUIを作ってみました。PythonのTkinterという標準モジュールを使っています。

少し見難いですが、上段と中段はそれぞれFT8/FT4のQRGを並べており、ボタンをクリックするだけでオートチューニング動作に入るように考えています。また下段は周波数を設定してチューニングしたり、UP/DOWNボタンを押してマニュアルでチューニングできるようにしています。NanoVNAのOSC動作を止めるためのボタンも付けました。

なぜかこれを見ているうちにTR-7300を思い出してしまいました。

なお、下段のSWR表示は2以下で「緑」、3以上で「赤」、その間は「黄」になるように色を設定しようと思っています。「赤」では完全にチューニング不能、「黄」ではマニュアル操作でもう少し追い込める可能性あり、「緑」はマニュアル操作不要というイメージです。

最終的にはあまりPC画面上で邪魔をしないようにコンパクトに纏めたいと思いますが、Pythonはインタープリタで動くため、コーディングしながらその都度画面で状態を確認できて便利ですね。

あとはコントローラのメイン部分のプログラミングが残っていますので、また時間をみてコードの勉強をしながら進めていこうと思います。

bookmark_border[384] 12m FT8の状況

ATAS-120Aを使って12m FT8では初めてカザフスタンの局とコンタクトできました。

コンディションが安定していなかったようでドキドキしましたが、QSOは成立しました。

ロシアと異なりカザフスタンとはあまりつながっておらず、再開局してから1年以上経ちますが40mで1回、15mで2回のみです。従って今回で4度めのコンタクトとなります。

ちなみに12mでの伝搬状況は次のとおりです。

アンテナを設置しているベランダは南東向きですのでカザフスタンは反対方向ですが、おそらく反射によってそちらの方にも飛んでいるのだと思います。そう思うと、反対側の部屋では西アジアや欧州方面は安定してQSOができそうで、うらやましいですね。