« 2014年7月 | メイン | 2014年9月 »

2014年8月27日 (水)

バリコン式ATUの自作 7 (遠隔操作)

 <カテゴリ:オートアンテナチューナー(ATU)の製作

ATUとしての基本機能が完成しましたので、これをベランダに設置し、そこから約20mのケーブルをシャックの中まで引きこみ、シャックの中からこのATUを操作する事になります。 この遠隔操作システムの検討と試作を行いました。

現在の遠隔操作システムは、ベランダに置かれた、17台のプリセットMTUをバンドや使用するアンテナに応じ8本のケーブルで操作していました。すべて、パラレル制御です。

Mtucont0

今回ATUを設置するに当たり、MTUの操作を残したまま、ATUの操作を追加しますので、従来通りパラレル制御を行うなら、さらに6本のケーブルが必要になります。 そこで、RS232Cより長い距離でも通信が行えるようにラインドライバーを設計した上で、制御は1本のシリアルラインで行い、電源を含めて3本のラインで構築する事にします。

また、ATUからの戻り信号として、ATUの状態を示す2個のLED出力をそのままパラレルでコントローラーへ返すことにします。 それでも3本のラインが余りますので、将来、ATU側からSWRなどのデータをシャックに戻す為に、ハード設計だけして予約して置くことにしました。

新規に作成するコントローラー(エンコーダー)も、プリセットMTU制御回路(デコーダー)もATUと同一シリーズでピン数のみ28ピンとなるPIC16F1933で作る事にしました。

Mtuenc0_2

Mtudec0_2

左上がエンコーダー、右がデコーダーです。現在のプリセットMTUのコントロール機能はすべて含まれますが、MTUの数は最大で20台までとしました。また、今まで、ベランダ側で操作できなかった、ローバンド、ハイバンドの切り替えと外部アンテナへの切り替えを可能にしました。また、テストモードをOFFし忘れて、シャックに戻ると、手元のコントローラーから操作不能になり、またベランダまで出なければならないという不便を解消する為、例えテストモード状態でも、シャックから操作があると、自動的にテストモードをOFFにする機能も追加しました。

ATUの制御は4つのスイッチだけで行い、その状態は2個のLEDで確認できますので、このLED出力のみパラレルでシャックにもどします。もちろんATU on/offもベランダ側でも操作できるようにしました。

これらの制御は16pitのシリアル信号で行いますが、現在使用されているのは10bitのみで残りの6bitは将来の予約です。

UARTを使用したシリアル通信は初めてのトライで、理解できるまで何日もトラブリました。最大の問題は多重割込みによりメインループが止まってしまうという問題でした。とりあえず、割込み処理ルーチンの処理時間を極力短くして多重割込みが発生するチャンスを減らすくらいの対策しかできませんでした。 なお、このシステムを操作するのは一人の人間で、通常はATU側とエンコーダー側を同時に操作できません。現在のデバッグはエンコーダーもATUも同じ机の上に有り、多重割込みが発生する操作ができるものです。 実際には問題の発生は無いと考えられます。

また、スタックオーバーフローも発生し、これを回避する為に、関数のネストを減らしたり、ローカル変数をグローバル変数に変えるなど何日もロスする事になってしまいました。

UARTの通信速度は1200ボーに設定しましたが、距離が20mもありますので、通常のラインドライバーではなく、1AクラスのP-MOS FETによる電源ラインの直接スイッチング方式としました。とりあえず、10mAくらいの信号電流でトライしますが、誤動作があるようなら、最大で数100mAも流せる回路にしてあります。 20mのケーブルを使った実験では、問題なく動きました。

Mtu_uart_in

Atupcbback

左上の波形は、20mのケーブルに接続されたデコーダーマイコンのRX入力端子の波形です。波形の角が少し丸みを帯びていますが、大きく崩れることなく、伝送出来ています。

右上の基板はATU回路の裏側です。チップ部品より配線のリード線の方が目立ちます。最初から、全ての回路が決まっていたら、配線経路が最少になるように部品の配置を決めますが、今回のように、ソフトを開発しながら、必要に応じてハードを追加したり、変更したりすると、このようにジャングルになってしまいます。 実用するATUに作り替えるとき、この基板は、このまま使いますので、シールドケースがいるかも知れません。 後日、100W出力による動作テストを行いましたが、MTUもATUも誤動作なく動きました。

Atulinedriver

実使用状態にするには、まず、このATUのサイズ縮小と防水設計をする必要があります。また、現在使用中のMTUコントローラーも改造が必要となり、かなり長い期間QRTせねばなりません。 次のステップは秋のDXシーズンが終わってからになりそうです。 それまでは、机の上に置き、時々デバッグをする事にします。

MTUのエンコーダー、デコーダー及び遠隔操作機能を追加したATUの配線図は以下からダウンロードできます。

シリアルコントロールのプリセットコントローラー配線図MTU-PIC3.pdfをダウンロード

遠隔操作機能付ATUの配線図をダウンロード

バリコン式ATUの自作 8 (本体完成) に続く

INDEXに戻る

2014年8月16日 (土)

TS-930 メインダイヤル誤動作(アップしない)

<カテゴリ:TS-930>

突然、メインダイヤルで周波数がアップしなくなりました。どっちに回してもダウンばかり。時々アップしますが、不規則に変化し、全体的にはダウン方向です。 KEMのトランシーバーでも似たような現象がありましたので、メインダイヤルのエンコーダー出力をチェックしました。

Ts930mewave1

デジタル基板に4ピンのコネクター(④のマーキング)で接続されていますので、デジタルオシロをつなぐと、ME1には信号がありますが、ME2はHのままで、パルスが有りません。セットを逆さまにしてこのメインエンコーダーと呼ばれる基板の端子をモニターすると、今度はME2にもパルスが出ていますが、そのパルス幅が非常に狭い状態でした。高速でダイヤルを回転すると、パルスが細くなりさらに高速にするとパルスが出なくなります。

左の画像の上の波形がME1、下の波形がME2です。最初チェックした時は、ME2のパルス波形は有りませんでした。

Ts930nainencorder

このメインエンコーダーの回路図が見つかりませんが、左に基板図を示します。半固定抵抗でフォトトランジスターのしきい値を調整しているようですので、とりあえず、半固定抵抗VR2を回してみました。すると、ME1と同等のパルス幅になり、半固定抵抗を元の角度まで戻してもパルス幅は少しは狭くなりますが、ME1と同等です。 どうやら、この半固定抵抗が接触不良を起こしていたみたいです。ドライバーでグリグリと何度か回転させ、ME1とME2のパルス幅が同じようになるポイントに固定しました。

Ts930mewave2

以上の作業でダイヤル動作は正常状態に戻りました。 左の画像は修正後のME1とME2のパルス波形です。

最初コネクター部分でパルス波形が見えない状態の時は、完全に接触不良を起こしていたようです。その後、セットを分解するとき振動を与えましたので、わずかに接触して不完全ながらパルスは出力するようになったと思われます。

私の場合は、デジタルオシロがありましたので、簡単に原因が判りましたが、同じような現象に遭遇され、オシロが無い場合、この基板についている半固定の元の位置が判るようにマジックなどで印をつけた上でグリグリ回してみて下さい。正常にもどりましたら、半固定の位置を元の位置にもどしておきます。

Ts930mepcb

左の画像はセットを裏返し、フロントパネルが手前にあるように置いた時のメインエンコーダー基板ですが左側の半固定がME1を、右側の半固定がME2のパルス幅を調整します。

INDEXに戻る

2014年8月10日 (日)

バリコン式ATUの自作 6 (角度センサー対応アルゴリズム)

カテゴリ:オートアンテナチューナー(ATU)の製作

TS-930S用ATUのギアBOXにバリコンの回転に連動した可変抵抗器を追加し、バリコンの角度を電圧の変化に変換する角度センサーを使ったATUのSWR収束のアルゴリズムを試行錯誤しています。

1.   フラッシュマイコンにプログラムを書き込むとき、VC1,VC2の最大容量時、最少容量時の可変抵抗器出力データをプログラム上で初期設定し、50Ωのダミー抵抗に整合する時のコイルのTAP番号と、VC1,VC2の角度データを予めEEPROMに書き込んで置きます。  バリコンと可変抵抗器がギアで直結されていますので、いかなる事が有っても、バリコンは180度以上は回転しないという条件を設けます。

2.  TUNE状態になったら、キャリアレベルを検出し、規定値以内のレベルなら周波数を測定し、得られた周波数からコイルのTAP番号と、VC1,VC2の初期設定用角度データをEEPROMから読み込みます。

3.  SWRが20以上ある場合、VC1,VC2を初期設定用角度まで回転させ止めます。TAP番号に変更が有ったらタップの切り替えを行います。 バンド内で周波数を変えたときSWRが20を超えるような場合、収束に時間がかかりますので、当初、バンド幅が100KHzを超えるバンドは100KHz~350KHzくらいごとにバンドを分割し、全体を18のバンドに分割していました。 

何度もチューニングを繰り返す内に、前回SWRが規定値以下に収束したバンドはVC1とVC2を前回の角度にプリセットするだけで、かなりの確率でSWRが実用レベルに収まる事がわかりました。これを利用すべく、周波数をチェックしただけで、バリコンの角度とTAP位置のみを設定し、チューニングはしないモードを作る事にしました。このモード対応の為、最終的には、3.5MHzから29.7MHzまでを28バンドに分割しています。

4.  SWRのチェックを行いSWRが20以上ある場合は、VC1,VC2とも最少容量まで回転させ、そこから、VC1を小刻みに容量最大方向へ送りながら、VC2を180度づつ交互に回転させ、SWR20以下を探ります。 最小容量からスタートする事で、VC1,VC2とも最大容量でSWR最少に収束する現象を回避しました。この小刻みに送る角度は周波数により変化させ、ハイバンドは1回の送り角度を2度くらいにしますが、ローバンドは5度くらいの角度で送り、SWR20以下の検出時間を短くします。1回に送る角度が多ければ早く検出出来ますが、検出漏れが発生しやすくなりますので、これらの角度は実験で決めます。

5.  SWR20以下が見つかりましたら、

・ VC2を短時間CW方向に回転させ、SWRが変わらないか下がる場合、SWRが上がるまで繰り返します。(SWR最少ポイントを少し過ぎたところで停止) 停止コマンドを送ってから、実際に停止するまでの時間は非常に重要です。SWRのチェックは、実際に停止してから行わないと判定を誤ります。停止までの待ち時間を長くとると、SWRのチェックは確実ですが、収束時間が長くなります。何回も動作テストを行い最適値を決めます。

・ SWRが上がる場合、VC2を反転しCCW方向に回転させ、SWRの変化を見ます。SWRが変わらないか下がる場合、SWRが上がるまで繰り返します。SWRが上がる場合、VC2を反転させますが、この動作中に回転の反転を2回やったら、この動作は終了。

 

・ VC1を同じように繰り返します。  VC2もVC1も一度SWRが下がった場合、そのときの回転方向を記憶しておき、メインループを1周して、このルーチンに戻ったとき、前回の回転方向でスタートする事により、スムースにSWR最小ポイントを探す事ができます。 この動きはMTUの調整方法と同じです。

・ VC1、VC2いずれも1回に送る時間は周波数で変化させます。24MHz以上の場合、30mSec、5MHz以下の場合、60mSec、その他の周波数では40mSecとしておき、使用しながら最適値に決めます。また、SWRが2以下まで収束しましたら、この送り時間を半分にして微調整モードとします。

6.  5項をSWRが規定値以下になるまで繰り返します。 規定値は時間経過により、次第に緩くしていきます。最初の5秒間はSWR1.10以下への収束としますが、5秒以上経過したら、SWR1.25以下、10秒経過したら、SWR1.50以下、20秒経過したらSWR3.0でもチューニング完了とします。SWR3付近で完了した場合でも再度チューニングをかけると、SWR1.10まで収束しますので、周波数を可変して、SWRが高くなってきたら、再チューニングしています。

7.  VCが最大容量や最少容量を超えたらとりあえずエラー警告して停止させます。 その上で、バリコンが最大容量で停止したら、TAPをひとつ下げます。最少容量で停止したらTAPをひとつ上げます。 エラー状態を示す赤色のLEDが点滅して停止していますので、再度チューニングスタートボタンを押すと、変更されたTAP状態で再調整にトライします。 私のアンテナはこの処置で全バンド整合できます。 これでもエラーが続くようなアンテナの場合、諦めることにしました。(アンテナ自身を調整する事になります)  なお、2回目からは新しいタップ位置でプリセットされていますので、エラーになる事は有りません。

8.  SWRが規定値に収束したら、TAP番号とふたつのバリコン角度データをEEPROMに記憶します。この機能により、一度チューニングが成功したバンドは、ほぼ5秒程度でチューニング完了です。 バリコンがプリセット位置に移動しただけでSWR1.10以下という状態もかなりの頻度で発生します。この時は2秒以内で収束します。

9.  チューニングする時のモードを二通り選択できるようにしました。  キャリアを出した後、スタートボタンを押すと、SWR最少になるよう本来の動作を行います。 キャリアを出さない状態でスタートボタンを押すと、キャリアが無いという表示であるグリーンLEDがスローで点滅します。この状態で、キャリアーを出すと、TAPの切り替えと、VCのプリセットのみ行い、SWRはチェックせずに終了させます。このプリセットのみの場合の所要時間は2秒以下です。 特にSWRのチェックをしませんので、SSBモードでもノイズだけで周波数を読み、プリセットしてしまいます。 

バンドを28に分割しましたので、天気が同じなら全バンドSWR1.5以下になります。 雨が降って状態が変わってしまったら、このモード終了後に再度チューニングをかけると、SWR最少状態に短時間で収束します。 ATUはバンドを変えたら出力を絞ったキャリアーを出してチューニングするのが一般的ですから、その面倒さゆえバンド切り替えがおっくうになりがちですが、このモードでかなり楽になりそうです。

アンテナをつないで、最初にチューニング動作を行わせた時とか、アンテナを変更したためにバリコンをプリセット角度に移動させてもSWRが20以下にならない時だけ、4項の動作を行いますが、それ以外の場合、3項から4項をスキップして、5項に入ります。また、3項の動作は概ね2秒以下ですが、バンド切り替えが無かったら3項の動作時間は1秒以内ですから、チューニング開始してから5秒くらいでSWR1.10以下に収束します。 

 

Atusens2_2

Atu2

3.8MHz帯の整合がクリチカルな状態でしたので、追加コイルを復活させました。ただし今回は5μH分だけです。

 

バリコンの角度は可変抵抗器のセンター端子から得られるDC電圧をADコンバーターで読んでいますが、このデジタルデータは10bitです。EEPROMの記憶エリアは8bit単位ですので、ADのデータも10bitで取得した後、右へ2bitシフトし、8bitデータとして処理しています。  ギアのかみ合わせ調整時、最大容量で10くらいにセットすると、最少容量で205くらいになります。差は195ですから、バリコンの回転角180度を1度弱の分解能で表示している事になります。

  このバリコンの角度データもLCDに表示できるようにしました。左上の写真にあるLCD表示は1行目左3文字がVC1の角度データ、4番目がTAP番号、5番目からSWR値を表示。2行目の左3文字がVC2の角度データ、4番目以降は周波数です。この例では、14.020MHzでSWR1.04に収束した時のTAP番号は4、VC1の角度は163, VC2の角度は169を示しています。このLCD表示は、プログラムのどの部分を検討しているかによって、随時表示を変えていますので、一定ではありません。

角度センサー付の配線図は以下からダウンロードできます。

ATU-VC4.pdfをダウンロード

整合可能範囲が広いという事は、疑似SWRディップポイントへの収束やバリコン最大容量状態への収束にはまりやすいという事と裏腹のようです。 この対策とバグ取りを行っていましたら、XC8というコンパイラーの癖が見えてきました。

関数の戻り値がマイナスになると無視されます。比較演算の中で、マイナス数値を扱うとWarningがでます。単にWarningが出るだけと思っていましたが、比較の対象が負の数の場合、予期しない動作をします。 比較演算式の中に負の数値が表現されないようにすると、Warningも出ずに、結果も常に正しく判定します。データの型をunsigned charで無く、単に「char」にしても同じでした。 この現象の為、バリコンの回転角を180度以内に抑えるプロテクターが働かず、ギアを外して、設定し直した回数は、数えきれません。 

何回か書き込みしていたマイコンがIDを返さなくなりました。従い、書き込みもできません。どうやら壊れたみたいです。壊れた原因が判りませんが、予備のマイコンに交換して継続しています。 ATUの電源を接続したまま書き込むと、書き込みエラーになります。もちろん、書き込み治具側からの電源供給のチェックを外していますが。 これが原因でしょうか?

一度ごみ箱に捨てたマイコンを拾ってきて、PICkit3から供給する電圧を5Vではなく4.6VにするとIDが返ってきました。 そして、書き込みができ、動作も問題なしでした。

アンテナに接続して、最初にチューニングした場合、ハイバンドで10秒くらい、ローバンドで40秒くらいでSWR最少状態に収束します。2回目からは全バンド5秒くらいで収束します。また、バリコンの角度だけプリセットしてSWR収束処理を行わない時は2秒以下で完了します。 実際の運用は、雨が降らない限り、このSWR収束なしで問題なく交信できます。

一応、完成しましたので、遠隔操作機能を追加しますが、現在使用中のMTUを使用したマルチバンドアンテナシステムの制御回路を含めて変更が必要になりますので、しばらくお預けとする事にしました。 

バリコン式ATUの自作 7 (遠隔操作) へ続く。

INDEXに戻る

2014年8月 9日 (土)

バリコン式ATUの自作 5 (角度センサー)

カテゴリ:オートアンテナチューナー(ATU)の製作

ATUのソフト開発中ですが、バリコンの角度センサーはマストのようです。 今回は、TS-930S内蔵用ATUに追加したバリコンの角度センサーを紹介します。

部品集めです。

Atugiar

Atugiar4

直径16mmの平ギアで3mmのシャフトに止められる物、16φで軸径が3.2mmの可変抵抗器、25mm長のM3小ネジ、内径4mm長さ15mmのスペーサー、それに可変抵抗器を保持するアルミフレーム。

平ギアと可変抵抗器は千石電商から通販で購入。小ネジとスペーサーは近くのホームセンターで購入。アルミのフレームはJW-CADでギアBOXの組み立て図を作図し、図面を作成した上で、糸ノコと電動ドリルで自作しました。

フレームの図面です。  ギアのかみ合わせの調整を何度もした結果、13.5mmの寸法は13.2mmくらいにした方がいいみたいでした。

Atugiar9

Atugiar5左は、加工済みアルミフレームと、可変抵抗器の軸に装着した平ギアです。 

この平ギアは軸径3mm用であり、可変抵抗器の軸径3.2mmと合いません。よって、3.2mmのドリルで穴を拡大するのですが、購入した4個のギアの内、1個のみ軸径2mm用が混入していました。 ちょうどこの日、台風11号が接近中で大雨となっており、屋外作業となるボール盤が使えません。やむなくハンドの電動ドリルで穴拡大の作業をおこないました。

軸径3mmのギアの穴を3.2mmに拡大するのは問題ないのですが、軸径2mmを3.2mmに拡大すると、穴の軸がほんの少し傾いてしまいました。 ギアが薄いので、かみ合わせがきわどくなってしまいましたが、とりあえず使えます。

この軸径の間違ったギアは後日、注文通りの軸径3mmの物が無償で送られてきました。(TKS)

Atugiar1

Atugiar2

バリコン駆動シャフトにも平ギアを装着しますが、シャフトがサビていて、ギアが挿入できません。ヤスリでシャフトを磨いたり、ギア側のアルミボスの穴をヤスリで削ったりして現物合わせで挿入しました。 ギアBOXはそれぞれ4個のビスでアングルに固定されますが、上側のビスを25mm長のビスに変更し、飛び出したビスに15mm長のスペーサーを差し込みます。 このスペーサーの内径は4mmで、ギアBOX固定用アングルの絞りタップを包み込んでしまいます。

アルミフレームに可変抵抗器を取り付け、ギアを仮止めした状態で、アルミフレームを25mm長のビス4本で固定します。そのままでは、可変抵抗器の本体がアングルに当たり挿入できませんので、一度、25mm長のビスを緩め、アルミフレームを差し込んだら、また元通りに締め直します。

Atugiar7

Atugiar8

バリコンは最大容量位置から半時計方向に10度くらい回した位置にしておき、可変抵抗器は半時計方向に回しきって置き、ふたつの平ギアがかみ合うように固定します。

ここまでできたら、モーターにDC電源をつなぎ、問題なく動作する事を確認します。 ギアのボスの穴径を拡大するとき、穴の軸が傾きましたので、回転すると、ふたつのギアのかみ合い部分がずれます。ずれても、かみ合いが外れない位置にギアを固定しました。

ギアがプラスチックですから、可変抵抗器のストッパーに当たると、ギアの歯が欠けてしまう可能性があります。マイコンソフト作成時十分注意が必要です。最後の保護手段として、ギアがロックされたら、モーターコントロール用ICの電源ラインにシリーズに入れた10Ωの抵抗が断線してギアを保護する事を期待したいと思います。

後日、可変抵抗器のストッパーに当たる事故が何回も発生しましたが、10Ωは断線しない代わりに、電圧降下が起こり、モーターのトルクを弱めますので、ギアも無傷で済みました。

Atugiarlist

この角度センサーに使用した部品リストを左に示します。  軸径が3mmの可変抵抗器を使えば、平ギアが傾く問題は無くなると思います。 

アルミフレームを寸法通り作るこつは、JW-CADで一度作図し、これを実寸大(拡大率100%)でインクジェットプリンターで紙に印刷します。 プリンターはキャノンでもエプソンでもOKです。 この印刷した紙をアルミ板に糊で張り付け、穴の中心にポンチで印をつけると、ハンドドリルでも大きく寸法が狂う事はありません。穴のセンターずれを押さえる為に、一度2φくらいの穴をあけ、その後で目標の穴径に拡大します。  寸法がずれている場合、4個の3.6φの穴径を3.8φとか4φに広げて調整します。 アルミ板は柔らかいので、その他の寸法誤差も吸収してくれます。         紙をアルミ板に張り付ける時は、決して両面テープは使いません。 穴あけ加工後、両面テープをはぎ取るのに苦労しましたから。 糊なら加工後に水洗いすれば、きれいに取れます。

とりあえず、角度センサーができましたので、これに対応するSWR収束のアルゴリズムを検討する事にします。

バリコン式ATUの自作 6 (角度センサー対応アルゴリズム) に続く

INDEXに戻る

2014年8月 5日 (火)

バリコン式ATUの自作 4

 <カテゴリ:オートアンテナチューナー(ATU)の製作

Atutb

VC1とVC2が容量最大状態に収束し、真のSWR最少ポイントを見つけない問題を解決する為、仮に、バリコンの角度センサーが有った場合どうなるかシュミレーションしていきますと、コイルのTAPを適宜選択する事により収束しやすくなる事が判ってきました。 さらに、前回までの実験はダミー抵抗による収束検討でしたが、実際のアンテナの場合、周波数を変えると、リアクタンスも抵抗も変化するという違いがあり、VC1,VC2ともに最大容量へ収束する確率はかなり低くなる事も判りました。

バリコンの角度センサーをどうするかは、先送りして、角度センサーなしでどこまで改善できるかトライしました。

サーボ機能はその応答特性が重要で、状態の変化に対して、応答が速すぎても、遅すぎても収束に必要な時間は長くかかります。 モーターの駆動時間やブレーキをかけてから完全停止するまでの待ち時間などを変えてやると、SWR最少ポイントへの収束時間は大きく変わります。早い時は1秒くらいで収束し、遅い時は30秒近くかかる場合もあります。 また、バリコンの最大容量もしくは最少容量の付近で行ったり来たりして、永久に収束しない事も出てきます。そこで、収束させる条件を前回より以下のごとく変更しました。

  • サーボ動作に入る為のSWR条件をSWR5からSWR10に変更しました。 例えば、21.05でSWR1.05に収束した状態で周波数を21.40に変えると、私のアンテナでは、SWRが5を超えてしまいます。従来のままなら、SWR5を超えた時点で、メクラ状態でVC1とVC2を回し、SWR5以下を探す事になってしまいます。SWR10以下に変更すると、この値以下のSWRの時は、即サーボ動作を開始しますので、収束が速くなります。

  • SWRの収束目標を3段階にします。 従来はSWR1.15を目標にしていましたが、最初の目標をSWR1.05以下とし、10秒以上経過しても、収束しない場合、SWR1.20まで緩めることにします。 さらに20秒経過しても収束しない場合、SWR1.40で緩めます。 収束しないよりはましです。 1.40くらいで収束した状態で再度チューニングをかけると、1.05以下に収まります。

  • それでも収束しない場合、コイルのタップ位置を手動で切り替えてみる事にしました。 コイルのタップ位置は7メガのダイポールに18メガを整合させる場合と、17メガくらいに共振周波数のあるスカイドアアンテナを18メガに整合させる場合、違ってくる事が判りましたので、バンドとタップの関係は固定しない事にします。 バンドとタップの関係はEEPROMに記憶させ、次回からは成功したタップ位置を呼び出す方式です。

  • チューニング動作を開始する送信機の出力範囲を広げました。 前回までは、5Wから40Wくらいの範囲にしてありましたが、SWRの計算にエラーが発生しない事を確かめて、1Wから40Wまでの範囲でチューニングできるようにしました。 出力が上ると、コイルの切り替え時、リレーへの負担が大きくなるので、実際にチューニングする時は、10W以下の必要最小限に抑える事にしています。 

  • モーターの回転数は12V駆動の高速と4.5V駆動の低速にしていましたが、4.5Vでは加速が遅く、短時間駆動では、ギアのバックラッシュすら吸収できない事がわかりました。この低速状態は機械的に非常に不安定で、温度や湿度でサーボの応答特性が変わってしまいそうです。 色々実験しましたが、低速は6V駆動として、最低限の起動トルクを確保した上で、動作時間を細かく調整する事にしました。 6Vの場合、最初のメクラ状態でSWRのディップポイントを探す時粗くなりますので、ディップポイントを見逃して、結果的に探す時間が長くなりますが、やむなしです。

 

Atutap3_2

以上の改善を行うと、実際のアンテナの場合、角度センサー無しでも、全バンドSWR1.40以下に収束できるようになりました。 左の画像は、現在のタップ位置4をLCDに表示した状態です。またこのタップ番号を手動でアップしたりダウン出来るスィッチを追加しました。 チューニングを開始し、いつまで経っても、終わらない場合、手元でタップ位置を上げたり下げたりして確認する事ができます。 

この為もあり、一定の時間チューニングしてダメなら、そこでチューニング動作を中止するという機能は廃止しました。チューニングを止めたい時はSTOPボタンをおします。 しかし、まだ、収束時間は長く、最適状態にするには、かなりの試行錯誤が必要なようです。 多分、最終的には、バリコンの角度センサーが必要になるとおもわれますが、それまでは、現状でトライしてみます。

今回、PICのTimer4を使い、0.2mSecごとに割込みが発生するようにソフト変更し、この割込みを使い、時限設定機能を使えるよにしましたが、C コンパイラーの中にある関数

__delay_ms(20) ; // (括弧内の数値を変えて任意の遅延が可能。ただし数値は実数のみ)

の実際の遅延時間が設定した時間より8%ほど長くなる事が判りました。Timer4以外に未使用のタイマーとして、Timer2とTimer6がありますが、どれを使っても8%長くなります。この既成の関数もこれらのタイマーを使っている為でしょう。 このATUの場合、周波数カウンター動作時は全割込み禁止で影響なし。その他の遅延設定でも8%くらいの誤差は無視できますので問題なしです。

設定したアルゴリズム通りに動作しないバグを取り除き、モーターの駆動時間や、ブレーキ後の待ち時間の調整をした結果、14MHz以上のバンドでは、サーボ動作開始後からSWR収束までの時間は最短で1秒、長くても5秒くらいになりました。 しかし、10MHz以下のバンドは20秒を超える事がしばしばです。バンドによってサーボ定数を変更しなければならないかも知れません。

検討の為、このATUは、トランシーバーと同じ場所に置いてあり、アンテナからここまで約20mの長さの同調フィーダーでつないでいます。18MHzでラオスが聞こえますので、このATUでチューニングしてコールしてみました。一応交信は成立しましたが、アンテナ直下のプリセットMTUに比べて、受信信号強度はS半分ほど悪く、ノイズはMTUがS2でATUがS5でした。 ATUはアンテナ直下に限りますね。

現在まで発生したハードの変更を網羅した配線図は以下からダウンロード出来ます。

ATU-VC2.pdfをダウンロード

バリコン式ATUの自作 5 (角度センサー) に続く。

INDEXに戻る

2014年8月 2日 (土)

バリコン式ATUの自作 3

カテゴリ:オートアンテナチューナー(ATU)の製作

コイルを1個にして、再度バンド毎のTAP位置を確認する事にしました。前回に比べて大幅にずれました。コイル2個のときは、シャーシとの静電容量の影響もありましたので、今回のTAP位置が素直に見えます。 

Atutap2_2

Atuband0_2

このバンド毎のTAPを切り替える時は、切り替え時に高電圧が発生してスパークするのを防ぐ為、ショーティング切り替えを行います。右上にTAP3からTAP5を切り替えるタイミング例を示します。リレーが動作完了するまでの時間を仕様書で調べたら15mSecとなっていました。これは電極が磁石で引き寄せられる時間と一度接触した接点が反動でバウンズし、それが収まるまでの時間です。 今回は余裕を見て20mSecとしました。

このATUは2個のADコンバーターを使いVFWDとVREFの電圧を読んでいますが、マイコンの中のADコンバーターは、1個のサンプルホールド回路しかなく、指定されたi/oピンに接続し、AD変換が完了したら、レジスターにデータをストアーする構造ですから、VFWDとVREFは同時にAD変換できません。かつ、VFWDの変換を行った後、i/oピンの切り替えを行い、VREFの変換を開始するまでウェイト時間が必要です。

PICの仕様書ではこの待ち時間は数マイクロ秒となっており、今回は余裕を見て5マイクロ秒に設定していました。SWR5以下が見つかり、そこからSWR1.0に向けて収束プログラムが動作するのですが、ときどき、AD変換の結果が異常値を示します。原因が判らず、2日間もロスしましたが、どうも連続1000回くらいのAD変換では、待ち期間5マイクロ秒では不足のようです。これを10マイクロ秒まで増やすと、正常に動作するようになりました。 

このバリコン式ATUの整合アルゴリズムは以下のようにしました。

  1. キャリアの周波数を測定し、そのハムバンドに予め決めたコイルのTAP位置を設定。
  2. VC1を低速、VC2を高速でそれぞれCW(時計方向)方向に回転させ、SWRが5以下を検出したらVC1,VC2とも停止させる。
  3. VC2を短時間CW方向に回転させ、SWRが下がる場合、SWRが上がるまで繰り返す。(SWR最少ポイントを少し過ぎたところで停止)
  4. SWRが上がる場合、VC2を反転しCCW方向に回転させ、SWRの変化を見る。SWRが下がる場合、SWRが上がるまで繰り返す。SWRが上がる場合、VC2を反転させるが、3,4項の動作中に回転の反転を2回やったら、この動作は終了。
  5. VC1を3,4項と同じように繰り返す。
  6. 2-5項をSWRが規定値以下になるまで繰り返す。規定値はとりあえず1.15としました。

一応このアルゴリズムでSWR1.15以下に収束するようになりました。 短時間VCを回転させるときの時間や、回転スピードなど詰めなければならない事項もありますが、「出来た」と喜んでいると、問題点が発覚しました。

Atuswr1

左の画像は、3.532MHzでSWR1.08に収束した時のLCD表示です。 3.5MHzから10MHzまではOKなのですが、14MHz以上はVC1とVC2が最大容量になるように収束し、本当の整合ポイントにはなかなか収束しません。原因を調べる為、NT-636にダミー抵抗をつなぎ、マイコンの動作を手動でシュミレーションしてみました。 

すると、NT-636でも同様に真の整合ポイント以外にVC1,VC2最大容量の位置でSWR最少となります。ただし、SWR1.5くらいまでは収束しますが、それ以上小さくはなりませんから、いつまで経ってもモーターは停止しない事になります。 しかも、真の整合ポイントより、はるかにブロードで、この間違った収束ポイントに向かう範囲もかなり広くなっています。

この問題をTS-930Sはどのように対策したのか調べてみました。3.5-14MHzはT型、18MHz以上はパイ型で動作させ、かつ整合可能な範囲をかなり狭くしていました。 目標はNT-636並みの整合範囲を有するATUですから、TS-930Sのノウハウは使えません。

色々と手動で調べていくと、ハイバンドになると、大きな容量のバリコンはかえって邪魔になるようです。現在の最大容量は250PFですが、NT-636は150PFです。 また、周波数を高くするに従い、この最大容量を小さくしていくと、VC1,VC2最大位置でSWRのディップが現れにくくなる事が判りました。 これを実現するには、周波数に応じて、バリコンの角度を管理するか、バリコンにシリーズキャパシターを追加するか等の対策が必要になります。 KENWOODはこのモデルの後のチューナーはバリコンの角度センサー(可変抵抗器)付で商品化しています。

他の対策方法を含めて検討する必要がありますが、問題の大きさから、やる気が半減してしまいました。趣味でやっていますので、気が向くまで、とりあえずお蔵入です。 

バリコン式ATUの自作 4 に続く

INDEXに戻る