jl7gmnのblog

yahooブログから移行してきました。アマチュア無線を中心としたブログです。

USBアイソレーター高周波回り込み対策

アマチュア無線の7MHzの周波数帯での高周波の回り込みによるパソコンのアプリの異常動作が現在あり過去色々と対策を行なってきましたが、完全な解決策となったものはまだありません。パッチンコアは確かに高い周波数帯では100%と言えるほと効果があり問題はありません。ただし、すべてのアマチュアバンドの周波数帯で効果があるとは、やはり言えない状態です。低い周波数ほど減衰が取れない事が大きな理由で、私の場合は、7MHzで四苦八苦しておりました。減衰の大きな最近対策導入したコモンモード用のラインフィルターでかなり効果がありましたが、完全に回り込みがなくなったわけではなく、たまにでたりがあります。HAMRADIO DELUXEアプリでパソコンと2台の無線機をシンクロ動作させて使っています。シンクロ動作はシリアル通信用インターフェースを使い2台の無線機をシリアル通信制御するのですが、片方の無線機に繋がったアプリが時折通信が寸断するのが問題です。
今回はPCのノイズ対策等で効果があると言うUSBアイソレーターなるものを2台のシリアル通信インタフェースに入れ試してみる為、ネットで注文しました。なお、ここに行き着くまでに、USBインタフェースを繋がない状態ではPCは何も問題が起きないと、確認できています。シリアルインターフェースを通してのPCへの回り込みというところまでルート(回り込み原因元)が確認出来ていましたので、少し掛けでもありますが若干の期待をして2個注文してみました。注文はアマゾンでしましたが、配送は中華からでした。

■注文したUSBアイソレーター
USBアイソレータ1

■中華から届いた状態で、例のごとく部品用のパッケージで、エアー
パッキンのちいさな袋で送られてきました。配送での問題はありません。USBアイソレータ2

■確認開始
最初は、USBアイソレータがシリアル通信速度に対して使えるかを、ハムログ
に繫いで単体動作確認です。FT-2000Dの通信速度で問題なければ、FT-1000MP
はかなり通信速度が遅いので調べるまでもなく動く想定です。結果は、FT-2000D
では今までと同じ様にハムログで正常に周波数読み取りをしてくれました。
FT-1000MPは動く想定で次の確認です。次にUSBアイソレータをFT-1000MPの
シリアルインターフェースに挿してUSBポートへ繫いでHAMRADIO DELUXEでの
シンクロ動作確認です。先ずは電波の回り込みの確認の前の今まで通り正常動作
するかの確認が最初です。Hi!

■拡張USB ポートに2台の無線機のシリアルインターフェースがUSBアイソレータ
を挿して繋いだ状態です。白色のUSBケーブルはキーボード用です。
USBアイソレータ3

■FT-1000MP側のシリアルインタフェースもアイソレーターを挿して
USBポート接続してます。
USBアイソレータ4

■FT-2000D側のシリアルインターフェースもUSBアイソレーターを挿して
USBポートに繋ぎます。
USBアイソレータ5

回り込み確認前のHAMRADIO DELUXEでのシンクロ通信もハムログもすべて
いままで通り動作してくれました。まずは一安心です。

丁度、風が強くタワーを伸ばせないアンテナが低い状態で、7MHzでアイソレ
ーター効果があるのか確認をしてみることにしました。SWRが1.7ぐらいある
アンテナを繫いでですから条件は悪く、インターフェアンスが起きやすい状態
です。今までは、アンテナが低い状態では、回り込みでFT-2000Dの送信側の
シリアル通信アプリがフリーズして止まってしまってましたが、USBアイソ
レータを両方のシリアルインターフェースに挿入して使用した状態では、全く
問題無しでシンクロ動作してくれました。嬉しい限りです。先ずは小さくガッツ
ポーズです。次はより条件の厳しいキャリア連続送信での確認をします。何の
問題もなくアプリは正常動作継続してくれました。
効果がでた雄一の理由として、回り込みの箇所が特定出来ていた事と、アイソ
レーターでの完全な回り込み箇所の高周波を分離する仕様通りの効果が機能した
事だと思われます。
これで、シリアル通信からの回り込みが完全に止まり解決ということになりました。
安いアイソレーターなので、当初、ダメかもと思っていましたが、アイソレーター
としてしっかり動作してくれました。通信インタフェースでのアプリが止まる様
な回り込みの問題がある方は、パッチンコアも使いながら対策として是非USB
アイソレータを入れてインタフェースとPCを繋ぎ分離して使う方法を試してみて
もらいたいですね。100%解決できると思います。コレほどまでに効果があるとは
USBアイソレーターに驚きました。サイズもとても小さなアイソレーターICなの
で高周波は筒抜けかと思っていましたが、とんでもないです。しっかり分離して
くれています。

いま、FT-2000Dのバンド出力を使ってアイコムのアンテナチューナーを自動で
バンド切り替えする回路を検討していますが、各バンドを識別し、バンド毎に
A/D出力を出しOPアンプで電圧変換しICOMのバンド制御電圧を作るのですが
この出力へのノイズ重畳が少し気になっています。このノイズがパソコンの
USBポートからきていることが確認できています。パソコンのノイズがある為に
折角A/D出力で電圧を調整しても、別の電源を繋いだ実際の動作時の電圧値に
違いが出ます。ノイズありでの調整では意味がないということです。ここで
USBアイソレータをつかって見ることで、制御信号のみ通しノイズは分離し通さ
ないという効果があるかを確認してみようと思っています。
(ノイズレベルは実用上は問題ないレベルかもしれません。電圧に違いが出る
ことが何かスッキリしません。私の気質、気持ちの問題なのかもしれませんが。!)
そういえば、思い当たる節として時折コンパイルエラーが起きていたことがあり
ます。USBのノイズが影響していた可能性も否めませんね。やはりオシロスコープ
での信号、出力波形確認は必要です。Arduinoのシリアル通信はこんなノイズが
重畳したUSB電源でもコンパイルしてくれてるのはたまたま上手く、いっている
だけなのかもしれません。

使いみちは結構あるので、USBアイソレータは予備で2個位追加購入しておこう
かと思います。

つづく?

FT-2000DをICOMチューナーに繋ぐ自動制御その2

昨日、パーツが届いたので、早速OPアンプの電圧変換回路をブレッドボードに組んでみました。
回路は、ネットの知恵袋での検索で、質問者に対する回答の回路に、いいのがありましたので、そのまま使ってみる事にしました。

■使用する実験回路
範囲を選択_364

OPアンプICは2個入りのJRCの7062Dを使用しました。1個で回路が出来上がります。

本来の入力電圧範囲は0.0V〜3.2Vですが、回路は1-5Vを0-10Vに変換する回路なので目的とは違う感じですが、これが実は思うに都合よく動作してくれると思ったからです。それは、電源投入時の初期時のポート出力電圧でのバンド開始点が必ず10MHzを設定して、それから目的の設定バンドへ切り替わり動作するというルーチン動作に出来ると思ったからです。多少検出電圧がでたとしても、ICOMの仕様で、必ず0〜1.2Vの範囲の電圧では10MHzになります。その後にFT-2000DのBAND-DATAで設定されたバンドに切り替わるという流れです。

なお、参照した回路図でので電源電圧は12Vですが、今回は9V電源電圧で行なっています。出力の最大が1.8/1.9MHz時が中心7.5V (範囲7.0〜8.0V)なので最大で8V出力です。RAIL to RAILのOPアンプなので電源電圧最大近辺まで出力するということで9Vにしています。ただ、マニュアルを見直したらFT−2000DのBAND-DATA出力端子には13Vの出力があるので、OPアンプ供給電源用13Vでやり直す必要があります。ESP32DevKitCには13Vを5Vレギュレータを通して供給します。他に回路用の電源を別途用意せず、FT-2000DのBAND-DATAソケットから回路全部の電源を供給することにします。
13V電圧変更については先ずは間違いなく動作する電圧が発生できるかの確認なので、見直しはあとにすることにします。

実験ボード(安かったので今回新たに2つ購入した内の1つです。)
早速今回のテスト回路で使いました。
ESP32-AND-OPampCIRCUIT

ICOMのバンド設定電圧をグラフに書いてバンド幅の電圧とバンド同士の
区間電圧幅も前もって確認してあります。結構バンドとバンドの間は
電圧差幅がもうけられています。不感(不設定)地帯? 
このグラフをみているとゆとり幅電圧区間(不感地帯)があったのが
50MHzが後から付け足してなくなってしまっている経過が分かります。
(24/28MHZと10MHzとの間に無理やり設定した感じです。)
(50MHzがない状態でゆとり幅電圧区間があった24/28MHz,10MHzは
50MHzに対してゆとり幅電圧区間が無しになってしまってます。)
ICOM-BAND-VOLTAGE

ESP32DevKitCのD/Aコンバーターの出力を設定するN値(0〜255)を
手動で入力してバンドの区間中心電圧になるN値を最初に求めました。
また各中心値N時の出力電圧、OPアンプの電圧変換出力電圧を測定
してみました。わかりやすいようにX軸はN値、Y軸はOPアンプ回路の
出力電圧でグラフにしてみました。(周波数帯も記載)
黄色の50MHzはICOM IC-AT100ではないので実際は使いません。
FT-2000DではアンテナAをICOM IC-AT100に繋ぎ1.8MHzから29MHzまでの
利用となります。50MHzはIC-AT100が対応してないので、アンテナ切り替え
のBで使う方法で運用することになります。

■各バンドのD/A設定値Nに対する出力電圧
BAND-VOLTAGE-OUTPUT
N値に対してとてもリニアに出力電圧が変換出力出来ています。

上記のグラフより8ビットのD/A出力での0−3V(実際は1.23V〜3.12V)
がOPアンプ電圧変換回路で0-8V(実際は0.00V(N=0〜96)〜7.92V(N=255))に
変換出来ています。

D/AでのN値での出力(Δは中止値との差分電圧)
(OPアンプの入力電圧)は以下の通りでした。
N          OUTPUT      周波数帯
247 ----- 7.51V (Δ+0.01V)------- 1.8/1.9MHz
222 ----- 6.26V (Δ+0.01V)------- 3.5MHz
202 ----- 5.25V (Δ±0.00V)------- 7MHz
181 ----- 4.24V (Δ-0.01V)------- 14MHz
161 ----- 3.23V (Δ-0.02V)------- 18/21MHz
142 ----- 2.27V (Δ+0.02V)------- 24/28MHz
129 ----- 1.60V (Δ±0.00V)------- 50MHz
108 ----- 0.58V (Δ-0.02V)------- 10MHz
96以下 - 0.00V (---------- )------- 10MHz
設定Nでの出力の差は大きくても±0.02でした。素晴らしいと思います。

入力電圧と出力電圧は手持ちのマルチメータで測定しました。
(7MHz(N=202)のときの測定値です。上が出力電圧、下が入力電圧)

MULTIMETER
入力電圧値は特に気にせずN対出力の関係を重視しています。

なおバンド間でゆとり幅のない50MHzと隣接してる箇所は
以下の通りでした。参考データです。Hi!
(実際使うIC-AT100では50MHzがないので隣接は無しです。)

■10MHzの設定電圧1.20V上限の上下N値と出力電圧
N          OUTPUT      周波数帯
121 ----- 1.23V(Δ+0.03V)------- 50MHz
120 ----- 1.18V (Δ-0.02V)------- 10MHz 

■24/28MHzの設定電圧2.00V下限の上下N値と電圧
N          OUTPUT      周波数帯
137 ----- 2.02V (Δ+0.02V)------- 24/28MHz
136 ----- 1.97V (Δ−0.03V)------- 50MHz

後先になりましたが、各バンドの区間電圧範囲(仕様)です。
1.8/1.9MHz (7.00V〜8.00V) 中心 7.50V
3.5MHz      (6.00V〜6.50V) 中心  6.25V
7MHz         (5.00V〜5.50V) 中心  5.25V
14MHz       (4.00V〜4.50V) 中心  4.25V
18/21MHz  (3.00V〜3.50V) 中心  3.25V
24/28MHz  (2.00V〜2.50V) 中心  2.25V
50MHz       (1.20V〜2.00V) 中心  1.60V
10MHz       (0.00V〜1.20V) 中心  0.60V

D/Aコンバーターの分解能が不足するかと思いましたが、全く
問題ない電圧に設定できています。

また、参考回路には記載してありませんが、LPFをOPアンプ出力側に入れて
平滑化してあります。コレはとても重要で、オシロでの出力波形を見ると
リップル的に波形が時々変化がみられます。D/A出力電圧は設定Nに対しての
出力変化は±0.005V以下です。
OPアンプ出力にLPFを入れての電圧変化は大きいときで±0.02Vです。リニアに
倍率がかかるので大きくなっています。ただし、この変化幅電圧は設定区間の
N値巻算ではN≒±1以下と微小です。
上記の変化幅を大きくN±1として見積もりし、実際の7MHzではどうかを
みてみました。検出区間のN値は下記となっています。
下限5.00V  N値=197
中心5.25V        N値=202
上限5.50V        N値=207
中心電圧のN値に対しN±5が7MHz区間検出幅です。
電圧の変動は大きく見積もっての±1カウントですからこれ以上には
なりません。
上記より検出範囲区間でのゆとりNの値は間違いなく±4カウント幅あります。

まだまだ検討することが沢山ありますが今回のテスト回路での実験はD/Aコンバーターを使い目的の電圧設定ができたという点で成功ということにします。

今回の実験でICOMチューナーのバンド設定電圧が準備できたことにして、次はFT-2000DのBAND-DATA出力4BIT(D3,D2,D1,D0)を入力して周波数帯を検出するルーチンをコーディングしてゆきます。簡単なIF文のAND処理でD/Aを既にスケッチしたESP32DevKitCで追加コーディングしてゆく予定です。

つづく?

続きを読む

FT-2000DをICOMチューナーに繋ぐ自動制御その1

普段無線をする時にFT-2000Dの内蔵チュナーと外付けのICOMのIC-AT100を使いアンテナのマッチングをとっていますが、IC-AT100はICOMの独特のバンド設定方式でYAESU方式と異なる為、全面のバンドSWを手動で切り替えて使用しています。毎回各バンドを行き来する際は本当に面倒です。以前は切り替えを忘れて、SWを焦がしたこともありました。このような手動から開放されたくて、色々と回路を検討していましたが、およそ頭の中では、大丈夫となりましたので、回路を実験しながら組立ててゆきたいと思います。簡単に概略を説明すると、無線器からは、リニアとかをコントロールする時に繋ぐBAND出力(BCD)コード出力が出てるので、これを使います。
回路の心臓部はやはりESP32DevKitCと電圧変換回路です。ESP32DevKitCのデジタル入力ポートにBCDデータ(D0,D1,D2,D3)を入力し、バンド検出コードルーチンで該当するバンドにてD/Aコンバーター出力(0から3V)を出します。この電圧をOPアンプでの電圧フォロワー回路にてICOMのバンド電圧に変換して自動でAT100が制御出来るという塩梅です。D/A出力設定値を調整することが主になるかと思います。上手くいくかはこれからやってみてということになります。OPアンプも12Vを供給して最大8V出力ですので(1.8/1.9MHz検出電圧7V〜8V)RAIL TO RAILタイプの高電圧タイプを注文してあります。秋月通販で一昨日発送でしたので、本日届くと思います。主に確認するのはOPアンプ回路での電圧変換回路動作になります。

ESP32DevKitCには本当のアナログDC出力をするポートが2つあることが分かりました。PWMのようなパワー制御のDUTY比設定での平均電圧ではありません。これらのポートの一つを使って単純にD/A出力を0V〜3V(実際最大電圧:3.234V)を出力するだけの簡単なコーディングですから既に確認済みです。

コードは単純に下記になります。(GPIO25ポートとGPIO26ポートがアナログ出力D/A対応)
setupでpinMode(25,OUTPUT);ピンの出力ポートとしての設定をします。

loopルーチン内で、下記の出力コードにて25ピンに電圧が出力されます。
dacWrite(25,255);  //255設定で3.2347V
dacWrite(25,0);      //0設定で0.0792V

約3.1555Vの幅です。
8bitで設定範囲は0から255までです。PWMの256とは設定範囲が異なる様です。

文献を確認した所、IC-AT100のバンド毎の中心電圧と検出範囲は下記の様です。
IC-AT100は50MHzは対応していません。ICOMのリニアアンプ用等を使用する際の設定電圧になると思います。

1.8/1.9MHz :7.5V(7.0〜8.0V)
3.5MHz       :6.25V(6.0〜6.5V)
7MHz          :5.25V(5.0〜5.5V)
14MHz        :4.25V(4.0〜4.5V)
18/21MHz   :3.25V(3.0〜3.5V)
24/28MHz   :2.25V(2.0〜2.5V)
10MHz        :0.6V(0〜1.2V)
50MHz        :1.6V(1.2〜2.0V) ;AT-100は未対応

上記の電圧になるかをESP32のコードdacWrite(25,***)でカットアンドトライ設定で確認します。7.5Vと0.6Vが上手く出れば成功と言うことになります。文章では簡単ですが、OPアンプの回路が上手く動作してくれるかにかかっています。パーツが届いたら回路をブレッドボードに組んでゆきます。
待ち遠しい今でもあります。Hi !

つづく?

MS-9160 測定システムのオークション購入

日頃から、Arduinoの実験回路をブレッドボードにて組み上げてゆき、最後にレギュレータでの電源回路も組み入れAC-DCアダプターを繫いでテストを行なっていましたが、案外と電源回路をわざわざ作るという事が結構な手間となっていました。また各部の電圧はデジタルマルチメータ、周波数は周波数カウンタをいちいち用意設置しての測定を行なっていました。丁度このような測定システムが一式まとまった装置がないかと思いオークションを探していた所、目的のシステムが出品されていましたので、即参戦しました。ところが、このようなシステムを必要としている方は誰もいなく、難なく無事落札できました。

■MS−9160フロントパネルサイド
MS-9160-FRONT

■MS-9160バックサイド
MS-9160-BACK
■付属品
MS-9160付属品

■取扱説明書
MS-9160-OP-MANUAL

早速届いてテーブルの上に設置しました。
このUNIVERSAL SYSTEMは発振器(ジェネレータ)、周波数カウンター、デジタルマルチメータ、電源が1つに纏められたオールインワンの測定システムになります。
ジェネレータは矩形波、三角波、サイン波、TTLパルスが選べ、周波数としては1Hz〜10MHzまでの範囲で発生可能です。また波形の形も色々とコントロールできるすぐれた機能もついています。
内蔵されたカウンターは1Hzから2.7GHzまでをACH,BCHの2つのチャンネルで対応していて周波数範囲も広く十分実用的に計測出来るものです。3BANDハンディ無線器の周波数の50MHz,144MHz,430MHzを計測してみましたが精度良く表示してくれました。
マルチメータも実験確認用としても十分使用できるレンジ範囲です。容量とインダクタンスも測定出来ます。またRS-232Cのシリアルインターフェースコネクタもありシリアル通信でのコントロールも対応している様です。
電源は、固定で+5V(2A) 、+15V(1A)、可変で0〜30V(3A)でとても実験にはうれしい電圧端子が用意済みです。
ネットで調べた所、全部の回路図もありました。(723を使った電源回路)

■5V-2A回路図

5V-2A

■15V-1A回路図
15V-1A

■0-30V-3A回路図
0-30V-3A

先ずは、電源を入れて実際にジェネレータでサイン波を発生させてオシロスコープに表示させて周波数の精度を見てみました。アナログダイヤルなので結構ズレがあるのかと思いましたが、目盛り精度はほどほどにいいようです。先ずは電源を入れっぱなしにして各測定器で問題がないかを確認してみました。
一日中入れっぱなしです。一日では特になにもありませんでした。ところが数日して、周波数カウンターが電源を入れてもセグメントの点灯がありません。しかも少し焦げ臭い匂いがしました。ケースのネジを外して中身を確認しました。どうも電源の入り口のチョークインダクタンスの一つが焼焦げていました。少し形状からすると耐電力が足りない超小型のインダクタンスを使っていて電流が増加してずっと流れている時に熱を出して切れた様です。実際セグメントは結構点灯させていたので、流れる電流が多かったのでしょう。早速他のところにも同じサイズのインダクタンスが使われていましたので、手持ちの少し耐電力のあるインダクタンスに交換し復帰しました。

■左が交換取り付けしたインダクタンス、右が焦げたインダクタンス

交換インダクタンス

■焦げたL2インダクタンスをカットした基板
(PCBは外さず、そのままでカット)
カウンターインダクタンス

■新しいインダクタンスを取り付けた基板
カウンター交換インダクタンス

焦げ焼けたインダクタンスを新しいインダクタンスに交換して元通り
にカウンターは復帰しました。セグメントが点灯している状態での
インダクタンスの熱があるか触って確認しましたが、熱は全く感じら
れません。以上でOKとしてケースを元に戻し修理完了です。
思うに、全部のセグメントLEDが点灯する状態時の電流には耐えられ
ない部品の為、焦げたのだと思われます。
(設計ミスだったと思われます。)
数日数時間点けっぱなしでも特に問題はない状態です。ところが今度
はマルチメータの電源が入らなくなってしまいました。またケースを
開けないといけないかと思ったのですが、どうもマルチメータは積層
9Vの乾電池動作の様です。後ろのボックスを外して電池を交換です。
引っ張り出して他のマルチメータで電圧を計ったら2.7Vしかありませ
んでした。これを新品の9V積層電池に交換して、難なく電源が入りました。
(中華製で2019年の8月まで有効のスタンプがありました。)
届いて良く動作してたと思います。おそらく5年位は使われていたの
ではないかと思われます。
問題な点が全部出尽くした感じなので、これから実験用として便利に
使ってゆきたいと思います。
念願の新しいテスト用測定システムが運用開始となりました。

つづく?


MODEL 1200FXローテーターその30

ローテーターの停止方法をPMW方式を使って低速化設定する事で、いったりきたりの収束動作はなくなりました。低速動作は高速回転から低速にすることで惰性回転で減速しながら停止の動作です。設定角度を±1よりオーバーランしても単独の低速回転からのスタートでは回転しません。うまい具合になっています。
以下実際の動作をESP32DevKitCサーバーとESP32DevKitCクライアント、そしてクライアントとしてのスマフォでの動作確認をしてみました。角度の送信はスマフォからもESP32DevKitCクライアントのどちらでも可能です。今回はESP32DevKitCクライアントはESP32DevKitCサーバーからの現在角度と設定角度を受信します。ESP32DevKitCサーバーはスマフォクライアントからの設定角度を受けて1200FXローテーターを回転させています。なお、家庭に設定のルーターのWiFiは使っていません。ESP32DevKitCの個人設定サーバーWiFiでのUDP通信で行なっています。スマフォも個人サーバーに繫いでのUDP通信です。
(ESP32DevKitCサーバーに個人で設定したSSIDと任意パスワードで自分のサーバーが出来上がります。これに繫いでます。)
■スマフォからの0°から360°のUDP通信データ送信でのローテーターのCW方向回転です。
左側がクライアント、右側がサーバーです。サーバーはローテーター制御しています。


■スマフォからの360°から0°のUDP通信データ送信でのローテーターCCW方向回転です。
 

スマフォからでもESP32DevKitCクライアントからでもローテーターをコントロールすることが出来、現在の角度もクライアント側で表示しますのでとても便利になりました。スマフォでも現在の角度データを受け取り表示しますがスマフォアプリではデータ処理が1バイトのデータ表示のみで値255までは現在角度を表示しますが、値256以上のデータでは正式な角度表示はなりません。ESP32DevKitCでの行なった1バイト以上の時の数値処理が必要です。
(スマフォでのUDPデータの基本送出は1バイトですから、温度表示は−側が少し厄介で工夫がいると思いますが0°から100°までは問題なくスマフォで受取正常に表示しますね。角度は残念ながら0°から255°までということです。256°から360°は正常に表示されません。)
角度設定して、スマフォでも正常な現在角度の表示になるように0から999の3桁までの数値がそのまま表示出来るデコード処理付きスマフォアプリを作っていただくと実用なりますね。どなたか開発していただけたら嬉しいですね!だれかアンドロイドスマフォ用に開発してくれませんでしょうか?
スマフォの携帯性の良さはやはり群を抜いてますから、スマフォが使えると超便利でありがたいですが!

そういえば、スマフォアプリも開発出来るQtなんかもありましたね?
NC制御の切削用アプリのCandleはQtで開発されたアプリでしたが、Qt上だけでしか当時動かす事が出来ませんでした。コレをLinuX上のアイコンで動作させる為、Qtのコンパイルでお世話になったことをふと思い出しました。

つづく?

アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

QRコード
QRコード
  • ライブドアブログ