ラベル PSN の投稿を表示しています。 すべての投稿を表示
ラベル PSN の投稿を表示しています。 すべての投稿を表示

2021年8月9日月曜日

ALL BAND TRANSCEIVER (5)

今回はこのTRANSCEIVERの中枢であるコントローラーについて簡単に解説します。

Microprocessor 

 今回のコントローラーは、以前BlogにUPしたVFO Ver8.0を基にカスタマイズしています。
 MPUは、Arduino Due を使用しました。今回のプロジェクトでは、ALL BANDで多機能であるため、I/Oが多く、十分なメモリ容量でスピードが速いものを必要としました。
 主な仕様は以下の通り


Specification
Microcontroller AT91SAM3X8E
Operating Voltage : 3.3V
Input Voltage (recommended) : 7-12V
Input Voltage (limits) : 6-20V
Digital I/O Pins : 54 (of which 12 provide PWM output)
Analog Input Pins : 12
Analog Outputs Pins : 2 (DAC)
Total DC Output Current on all I/O lines : 130 mA
DC Current for 3.3V Pin : 800 mA
DC Current for 5V Pin : 800 mA
Flash Memory : 512 KB all available for the user applications
SRAM : 96 KB (two banks: 64KB and 32KB)
Clock Speed : 84 MHz

TFT Color LCD with Touch panel


 今回のコントローラーで一番苦労したところが、タッチパネルのコントロールであった。
LCDは、ドライバーがILI9341でSPIインターフェース。これにタッチパネルが付いたものである。

Specification
Display Color    RGB 65k color
Screen size       3.2inch
Driver              ILI9341
Resolution        320x240 pixel
Interface          4 wire 
SPI 
Touch panel     Resistive touchscreen
Touch Driver    TSC2046

Arduino Due周りの結線図を再度掲載する。DueとLCDの接続を赤くしてある。

 特に苦労した部分について簡単に記載します。

USB Port
Dueは2つのUSBポートがある。一つはPrograming Portで主にプログラムの書き込み、消去等にしよう。もう一つはNative Portで主にユーザープログラムで使う。
 今回は筐体背面に両方のポートを付けた。Programing用とCAT通信用としている。
 CATはメーカーによってコマンドが違うためどれかに決める必要がある。今回はHamLogの周波数設定程度なので、Yaesu FT-991,Kenwood TS-2000に対応できるようにした。(コンパイル時に選択)
 スケッチは、mainルーチンで外部からUSB経由でシリアル信号を受信したかチェックし、文字列を判読し、情報を返信する単純なスケッチである。以下は参考スケッチです。

---------------------------------------------------------
byte CATbyte = 0;

void setup(){

    SerialUSB(38400);}

void main(){


CATbyte = SerialUSB.available();
if (CATbyte >0){CATset();}

}

//----- CAT Controll(FT-991) -------------------------
void CATset(){
  String CATinput = SerialUSB.readStringUntil(';');
  SerialUSB.flush();
  if (CATinput == "FA"){
    SerialUSB.print("FA");
    String freqtcat = freqt;
    int mojicat=(freqtcat.length());
    if (mojicat <9){
      for (int i=9; i > mojicat; --i){
        SerialUSB.print("0");
      }
     }
    SerialUSB.print(freqtcat);
    SerialUSB.print(";");
  }
  if(CATinput == "MD0"){
    String modecat = String(mode);
    SerialUSB.print("MD0");         
    SerialUSB.print(modecat);
    SerialUSB.print(";");   
  }
  else{
   SerialUSB.print("?;");
  }
}
----------------------------------------------------------

Touch panel
 タッチパネルの処理には非常に苦労をした。製作までにかなりの時間を要したが、逐一記載すると非常に大変なので、結果だけを書くことにする。

タッチパネルには今回抵抗膜方式のもので、タッチしたときの抵抗変化で位置を特定する方式である。タッチパネルのドライバーはTSC2046、LCDはILI9341、MPUはArduino Due。
 初めにタッチパネルのキャリブレーションが必要である。押した位置の抵抗値をLCDのPixelに変換する。これにより位置判断が可能となる。
 キャリブレーションのスケッチは以下のライブラリーのサンプルスケッチにある。
https://github.com/marekburiak/ILI9341_due
[ uTouchCalibration.ino]が目的のスケッチである。
 55行を今回のハードウェアに変更する。
   URTouch  myTouch(30, 28, 26, 24, 22);
            ↓
   URTouch  myTouch(6,5,4,3,2);

 73行を使用するLCDの方向に合わせる。(90 or 270)
tft.setRotation(iliRotation270); // landscape
 

これをDueに書き込むと右の画面が表示される。画面のどこかをタッチすると次の画面が表示される。




この画面で左上ハイライトされた+をタッチする。中央の[PRESS]が[HOLD]に代わり[RELEASE]に変わる。すると今度は左中央がハイライトする。同じようにタッチして8か所すべてが終了すると最終の情報画面に変わる。


CAL_X
CAL_Y
CAL_Z
これがキャリブレーションで得られた情報である。




 この情報はIDEのシリアルモニタにも出力される。
 
ここで、今回使うタッチパネル用ライブラリー
http://www.rinkydinkelectronics.com/library.php?id=93にあるURTouchを使用する。


このライブラリー内にある[URTouchCD.h]をエディターで開きオリジナルのXYZをコメントアウトし、シリアルモニタのXYZをコピー&ペーストし保存する。
 これで使用するLCDのキャリブレーションが終了する。LCDを変更した場合はそのたびにキャリブレーションが必要となる。


参考スケッチ
実際のスケッチの抜きだしなのでよくわからないかもしれない。mainルーチンでパネルが押されたかどうか検出しx,y情報をサブルーチンに渡し処理を行う。URTouchライブラリーのexampleスケッチなど参考にしてください。

-------------------------------------------------------------
void main(){
  if (myTouch.dataAvailable())
    {
    myTouch.read();
    int x = myTouch.getX();
    int y = myTouch.getY();
    ProcessKeyTouch(x, y);  
}

//----- Touch -----------------------------------------------
void ProcessKeyTouch(int x, int y)
{
//  SerialUSB.end();
  ucg.setFont(ucg_font_fub11_tr);
  if (x >= 5 && x <= 5+key_width){               // Menu
    if (y >= 210 && y <= 210+key_height){
      key_rows = 2;
      menu_sub();
    }
  }
  if (x >= 5+1*80 && x <= 5+1*80+key_width){       // Band Set
    if (y >= 210 && y <= 210+key_height){
      key_rows = 3;
      band_set();
    }
  }
  if (x >= 5+2*80 && x <= 5+2*80+key_width){    // Step UP
    if (y >= 210 && y <= 210+key_height){
      fstepmem=fstepmem+1;
      fstepset();
    } 
  }
  if (x >= 5+3*80 && x <= 5+3*80+key_width){    // Step Down
    if (y >= 210 && y <= 210+key_height){
      fstepmem = fstepmem-1;
      fstepset();
    } 
  }
  if (x >= 5 && x <= 67){        // VFO
    if (y >= 10 && y <= 30){
     key_rows = 1;
     vfo_menu();  
    } 
  }
  if (x >= 77 && x <= 122){      // Mode
    if (y >= 10 && y <= 30){
      key_rows =2;
      mode_menu(); 
    } 
  }
  while(x != -1 ){
      myTouch.read();
      x = myTouch.getX();
      //y = myTouch.getY();  
  }
}

一部省略して書いたので少々わかりにくいかもしれませんが、ご容赦

以上 これでALL MODE TRANSCEIVERの解説は終了の予定。質問や、聞きたいことなどご要望があれば追記するかもしれません。メールまたはコメントにてお知らせください。

DE JA2NKD Ryuu


2021年7月4日日曜日

ALL BAND TRANSCEIVER (3)

 ALL BAND TRANSCEIVER (3)

送信部


❶ マイクアンプ  
  マイクアンプは、コンプレッサーTA2011SとOPAMP(LM741)を切り替えるようになっている。またSSB送信試験用に1kHz発振回路を組み込んでいる。これで口笛による調整から解放される。この3回路をOPAMP(NJM7043)でミキシングしSSBはPSN回路に、FMはFMキャリア回路に送っている。
 
❷ AF-PSN回路 
以前blogに掲載した50MHzPSN送信機と同様の回路で dsPIC33FJ64GP802を使用し位相のずれたAFを作っている。このdsPICのソフトはTJ-Labの上保さんの作成されたものであるが、非常に優秀である。
 
❸ 直交変調器
 これも50MHzPSN送信機と同様MAX2452を使用している。特に調整回路がないのでキャリアバランス等の調整は行っていない。AFレベルを調整しても効果がなかった。何とか40dB程度である。他にも直交変調器のICはあるようだが、ほとんどがGHz用であり、HFに使えそうなものは見つからない。またDBMやスイッチを使ってディスクリートで組むこともできるが、回路規模が大きくなってしまう。その点MAX2452は外付け部品もなく簡単である。また運用してモニターしいただいているが、おおむね音質はよく、キャリア、逆サイド等は認められないとの評価をいただいている。この直交変調器にSi5351によるVFOを直接入力している。このVFOの周波数は運用周波数の2倍を入力している。50MHzであれば100MHzとなる。これで全バンド ダイレクトにSSBができる。
 
❹ 前置増幅器 
MAX2452の出力は非常に小さいのでMMIC(MSA-0886)で25dB程度増幅している。

❺BPF
直交変調器で出来たSSB信号をBPFを通すことによりスプリアスを除去させている。BPFは「トロイダル・コア活用百科」の2ポールBPFを使用した。

 ❻前置増幅器
 目的出力を得るにはまだ低いので再度MMIC(MSA-0886)で再度25B程度増幅する。オールバンドにはMMICが得意だ。
 
❼プリアンプ 
ファイナルをドライブするため100mW程度に増幅する必要がある。三菱の高周波パワーFETRD00HHS1を使用している。アイドリングは50mA

❽パワーアンプ
RD16HHF1プッシュプル。出力は10W以下なので十分すぎるが、全バンド安定して増幅するために採用した。ドライブレベルを調整し概ねMAX 8W 程度の出力としている。バンド差が大きく出てくるかと思ったが、意外にそろっている。

❾LPF
λ/4 5次LPFで「トロイダル・コア活用百科」を基本として設計している。

❿FMキャリア水晶発振器
ジャンク水晶67.18235MHzを基本波発振させ3逓倍し67MHz台としている。これにバリアブルキャパシタダイオードにマイクアンプからのAF信号でFM変調を行っている。オーバートーン発振ではほとんど変調がかからないので注意。

⓫FM用ミクサー
⓫の水晶発振信号とVFOを混合し目的のFM信号としている。以降はSSBと教養である。

⓬オシレータ回路
今回周波数の安定度、正確性を確保するためにオシレーター回路に拘った。必要とする周波数は、70.455MHzの第一中間周波数を455kHzに落とす70MHz、455kHz前後のSSBキャリア信号及びVFOである。
 70MHzhDDSAD9851を使用している。このDDSクロックは10MHzのTCXOを基準としてVCXO30MHzを PLLを組み安定化し供給している。またVFO(Si5351)用のクロック25MHzも30MHzクロックのAD9851で作っている。455kHzキャリアは10MHz基準のAD9850から作り出している。これらはすべて固定周波数なのでArduino-nanoを使用しコントロールしている。10MHzは外部からGPS基準信号等が入力できるようにしている。詳細は下部回路図を参照願いたい。こだわりのOSCである。

⓬VFOコントローラー
 今回はマルチバンドトランシーバーなので以前blogに掲載したタッチパネル付きVFOコントローラーを基本として採用している。ただこのトランシーバー用にカスタマイズしている。
 コントローラーにはAruino-Dueで、メモリー容量、スピード、I/O数等十分な性能がある。難点はどうしても大きいことであろう。特徴としてtっちパネルを採用し、多機能でありながら機械的スイッチの数を大幅に減らすことが可能となった。

⓭CATコントロール
Arduino-DueはUSBを2回路積んでいる。1個はプログラミング用、もう一つは外部機器との通信に使用できる。これを利用しパソコンと接続し「Turbo HAMログ」でデータ入力時に周波数を自動的に表示できるようにした。基本的な通信g理解できたので、トランシーバーを外部からコントロールできるようにすることも可能である。今後発展させていきたい。

 以上オールバンドトランシーバーの概要です。詳細については 省略させていただきます。

DE JA2NKD









 

 

2021年6月21日月曜日

ALL BAND TRANSCEIVER(1)

 Nowadays, SDR is the mainstream.

But I like analog systems. Since I first started amateur radio 50 years ago, I've always wanted "Collins". Recently, the "Collins Filter" has finally been discontinued.

Covid-19 occurred two years ago, and from last year, "Stay home" began to be shouted. This allows you to spend a lot of time on homebrew. On this occasion, I decided to make a transceiver using the "Collins filter" that I had longed for for many years.

For VFO, I used the touch panel type VFO controller that I posted on my blog before.

It was finally completed two years after it started. But the pandemic has not yet converged.


Specifications

Receiver
Circuit Type                    SSB/CW/FM/AM: Double conversion  Super heterodyne
Sensitivity                      SSB:2.4kHz CW:500Hz FM:12kHz AM:6kHz
Intermediate frequency  1st:70.455MHz,2nd:455kHz
Frequency range            Ham band (1.9,3.5,7,10.14,18,21,24,28,50)
                                    General (0-60MHz Receive only)
Audio Output                 2W into 8 Ohms

Transmitter
Modulation types            SSB(J3E),FM(F3E),CW
Power Output                5-8W
FM Deviation                 ±5kHz
Microphone Impedance  600 Ohms

Others
Power Consumption       Rx 1.0A    Tx 3.7A  (Maximum)
Supply Voltage              13.8V
Dimensions                   W:430mm  H:100mm  D:450mm
VFO                             Si5351 PLL
Controller                    Arduino Due
LCD                            3.2inch TFT with Touch Panel

Internal View


Block diagram

Video(YouTube)    https://youtu.be/toFvZ_4qtKs

I will upload the commentary to the blog little by little in the future.

DE JA2NKD


2018年10月14日日曜日

50MHz PSN Transmitter using dsPIC

 前回のブログにUPしたdsPICを使用したSSB-Generatorを元に50MHz送信機を制作してみた。
 dsPICによるPSNについては前の投稿を参照願います。
Front View

【構成】
 SSB信号は、dsPICと直交変調器(MAX2452)の2個のICで出来てしまう。従来のフィルター式のものと比べると非常に簡単である。あとは、これらを送信機とする付属回路である。これらについてはごく一般的な回路なので特段説明の必要はないと思うが、簡単に以下に纏めた。
Block diagram
  • Mic Amp
     マイクアンプはTA2001Sを使用。性能は今一歩であるが、簡単にコンプレッションが使える。

  • Mixer
     今回色々試験を行えるように外部音声入力を付けたことと、送信機試験のために1kHzの発振器を組み込んだ。(最近年のせいか口笛がにがてなので)そのためにオーディオミクサー(1/2 MC1458)を設けた。それぞれのレベル調整を半固定抵抗で行いミクサーに入力している。その後にマイクゲイン調整用可変抵抗をパネル部に設けている。その後1段の増幅器(1/2 MC1458)を通してdsPICに入力している。
     1kHz発振器は一般的なCR位相発振器で、この信号を送信機の最大出力になるようレベル調整してある。今までは外部からオーディオ信号を入力していたが、簡単な発振器を組み込むと至極便利である。

Mixer

Phase Shift
 dsPIC33FJ64GP802を使用しオーディオ信号からPSN信号(0,90,180,270°)を作っている。また300-3kHzのBPFが組み込まれており、不要輻射の無い綺麗な信号が形成される。
 詳細は前回のBlogを参照。(これを作られた上保さん(JF3HZB)にはサポートもしていただき 深謝)
 位相差信号はオーディオ帯域においてほぼ完ぺきなリサージュ波形が観測されている。(前回のBlog記事参照)
Phase Shift (dsPIC33FJ64GP802)

  • Quadrature Modulator
     MAX2452の日本語データシートには直交変調器と書かれている。このICはオーディオ位相差信号を入力しVFOから送信周波数の2倍の周波数を入力すると、SSB信号ができる非常に便利なICである。内部には発振回路もありPLL回路等と組み合わせることができるようになっている。今回は外部(Si5351)から入力している。
     SSBモード(USB,LSB)の切り替えは位相差信号を入れ替えることにより簡単に変更できる。回路図の通りリレーを使いマイコン(Arduino)で制御し切り替えれれるようにした。
     MAX2452の出力は平衡であり、レベルも低い。トランスで平衡-不平衡変換しFET(2SK439)のソースフロアで受け、その後MMIC(Monolithic Microwave Integrated Circuit)のSGA4586を使用している。以前秋月で販売されていたが、最近は見ない。この後に7Kコイル(FCZ50)2段のBPFを入れてある。これでどうにか-10dBm程度の出力が確保された。

Quadrature Modulator

  • Linear
     今回リニア部分は手抜きで、以前作成したHF用QRPリニアをそのまま使用した。構成は(RD00HHS1-RD06HHF1)である。HFでは5Wであるが、50MHzでは3W弱である。回路を見直せば5Wは出せると思うが、QRPとしてはちょうどよいので、このままとしている。

Linear Amp
  • Control
     送信機としてのコントロール回路として、Arduino-UNOを使用。UNOと言っても既製品のボードではなく、ATMEGA328にUNOのブートローダーを書き込んだものを単体で使用し、省スペース化を図った。これ用の基板はaitendoで販売されている「あちゃんでいいの」を使用している。表示はキャラクタLCD(2x16)にI2Cインターフェース(PCF8574A)を使用しArduinoに入力、VFOもI2Cで使用できるSi5351を使用。これに夜rArduinoのI/O端子も節約できる。
     VFO周波数は出力周波数の2倍の周波数が必要なので、この意味からもSi5351が適任である。Si5351から出力された信号は、7kタイプのコイルボビンで100MHzに同調させたものを2個使用したBPFを通してMAX2524に入力している。
     今回「TUNE」というスイッチを付け、押している間だけ1kHzオーディオ信号を発信させ、同時に送信状態として試験できるようにした。


Control (Arduino ATmega328)
  • Other
     今回dsPICを使用したPSN送信機として初めての製作なので、色々実験ができるようにした。1kHzOSCもその一つであるが、コイルをプラグインにして他の周波数でも実験できるようにした。プラグインは写真のようにユニバーサル基板にピンヘッダーを付けてソケットに差し込む形とした。
     また、受信機とのトランシーブを考慮して、PTT,VFO切り替え、モード情報をコネクタに用意してある。これに対応できる受信機が次の目標となる。
     またこの製作を基礎にオールバンド送信機を製作したい。
【動作】
  ローカル局に音質モニターをお願いしたところ、非常にクリアで音質に問題はないとの評価をいただいた。やはり想定通りPSNはいい音のようである。
 また、フィルター式と違い調整個所がなく、キャリア漏れや、逆サイドの漏れも感じない。製作が簡単で、性能がいい送信機となったようだ。
 これが実現できたのも上保さんの作られたプログラムのお陰である。サジェッションを含め 深謝
Back View

【参考回路図】
 回路図を以下に掲載




It is hard for me to write in English, so I write it in Japanese. If you have any questions, please write an email or comment.
I'm sorry
Let's enjoy homebrew.
73’s
JA2NKD Ryuu

2019.02.28 Mixer schematic corrected

2018年8月11日土曜日

Experiment of AF_PSN using dsPIC

 JF3HZB 上保さんがdsPICを使用したPSN(Phase shift Network)を公開された。
これはdsPICというDSP機能付きPICを使用しAFの位相差信号(0° 90° 180° 270°)を作り出すものである。従来アナログ式ではオールパス、PPSNといった方式で位相差信号を作り出しているが、オペアンプやCRを大量に使用したもので製作が大変であった。これをDSPで実現したものだ。またその性能は帯域全体で実現されている。アナログ方式では実現できない。それがこのIC1個で実現されていることは素晴らしい。勿論昨今のSDRなどでは同様のことが出来るのだが、私には製作が困難だ。
 かなり以前に位相差AF信号でSSBを発せさせることが出来るIC(位相差変調器)をオークションで購入していたこともあり、これを活用できる。
 早々実験をしてみた。

【dsPIC】
 詳細はJF3HZB上保さんのBlogにあるので参照されたい。
 普段はArduinoしか使っていないのでdsPIC(PICを含めて)まったくの無知である。
 公開されているソースファイルをコンパイルしdsPICに書き込む為PICメーカーサイトからMPLAB X IDE(無償)をパソコンにインストールしなんとか書き込むことができた。
 ここで使用したdsPICはdsPIC33FJ64GP802というものだ。

【位相変調器】
 使用したICはMAXIM製のMAX2452である。このICはかなり以前、偶々オークションで見つけて落札したものである。落札当時はAF位相差信号を作るためオールパスやメリゴ等の方式しかなかったため製作が面倒で死蔵品となってた。
 外部入力または自励発振で得たRF信号を内部でAF位相差信号と混合してSSBを出力を得ることが出来る。RF信号は目的の出力信号の2倍の周波数となる。ハイブリットで作る場合は、RF位相差信号を作りDBMを2個使うことになる。
 同様のICとしてNECのuPC8101GRやシーメンスのPMB2205というものがCQ出版「実験して学ぶ高周波回路」に掲載されている。参考にされたい。確か以前JA9TTTさんもuPC8104の紹介をされていたと思う。これにも同等の機能があるようだ。
 これらのICは殆どがディスコンとなっているので入手が難しいと思われる。最近お世話になっているJH8SSTさんがebayで購入されたので、探せばまだあるかもしれない。

【回路】
 今回の実験はマイクアンプにTA2001Sを使用しdsPICでAF位相差を作りMAX2452に入力。外部信号発生器からVFOとしてMAX2452に入力して行った。
 MAX2452の出力はトランジスタ2段非同調としている。この回路は「MAX2452 SSB」でWeb検索で見つけた「SSB modulator covers HF band」を参考にした。

      2018.08.12 8pinにバイアス追加(回路図修正済み)

【実験】
 AFジェネレータからマイクアンプに入力しdsPICの出力を見てみた。(写真参照)
pin26から0°、pin25から-180°、pin24から-90°、pin23から-270°が出力されている。
0°を基準に各信号を表示してみると綺麗に位相差が出来ている。0°と-90°でリサージュを見てみた。1kHz以下で少し変形が見られるが、概ね良好な円が表示された。(上保さんのアドバイスで改善 下記に追記)また、バンドパス機能が働いているため200Hz、3100Hzでは信号が完璧にカットされている。アナログフィルタでは実現不可能である。

 この4信号をMAX2452に入力したところ無事にSSBが出力された。

 写真は2信号を入れたときの出力信号である。SSB信号が出来上がった。出力レベルは、VFO入力レベルを変更(-10dBm~+5dBm)しても変化は無かった。また周波数としては最高100MHzを入力し50MHzを出力できた。
ただ出力20Mhzより高くなるに付けて出力レベルが6dB程度下がる。この辺りもマルチバンドで実用化する場合には検討を要する。また、入力後暫くすると波形が少し乱れる。
(上保さんのアドバイスで改善 下記に追記) 原因は不明。これから信号レベル、インピーダンスマッチング等詳細に調整が必要かもしれない。

 今回は簡単な実験なので正確なレベル等は測定しなかったので、傾向として参考にされたい。
 フィルターも使わず、IC2個(dsPICと変調用IC)、これにリニアをつければ高品質なSSBが出来そうである。SDRなどは私には無理であるが、これならば実現できそうである。
 このような素晴らしいものを公開されたJF3HZB上保さんに感謝申し上げたい。
 是非これを実用機として作り上げたいと思う。

追記(2018.08.12)
 早々上保さんよりコメントを頂きました。リサージュ及び出力波形の乱れは、dsPICの8pin AF入力が信号源からコンデンサー結合で入力されているため、8pinの電位が安定しないことによるとの事で、8pinに1/2Vccのバイアスをかける事により改善された。
 全音声帯域で綺麗なリサージュとなり、出力も安定して綺麗なSSBが出力された。
 これで送信機の製作に弾みがつく。
 上保さん誠に有難うございました。
 改善後の波形を以下に添付

 

2016年9月18日日曜日

7MHz PSN-SSB Transceiver

 TFT液晶を使ったDDS-VFOを作ったが実際に使っていないこと、またCYTECのPSN-SSBジェネレータを作ったことから、これらを使用したトランシーバーを作り始め、一応完成した。
 PSNジェネレータが送信専用なので、受信部は、一般的シングルスーパーとした。これには今まで実験した時に作った基板を流用した。

7MHz SSB Transceiver with TFT-LCD)

【送信部】
 送信部は基本がCYTECのPSNジェネレータキットで出来上がている。周波数は9MHzである。これを7MHzに変換しリニア増幅する。

送信部(Trancemitter)


  1. PSNジェネレータ
      これはCYTECのキットで資料はCYTECホームページで見られるため、興味のある方はそちらを参照願いたい。(http://www.cytec-kit.com/DL_Failes/rakuda/9MHz%20PSN-Type%20SSB%20Generater.lzh)
      出来栄えとしてはサイドバンドサプレッション 30dB位 キャリアサプレッションは70dB以上であった。その昔SSB黎明期にメカフィルやクリスタルフィルタが高価でなかなか入手できない頃、先人たちは一生懸命PSNを作られたことを思い出す。当時は私もまだまだ駆け出しで、とてもまねのできない技術であったことを思い出す。AF-PSNもB&Wで2Q4という物が販売されていたようである。 今回汎用品を使用したキットとして入手できたお陰で初めてPSNを体験することになった。(CYTEC 内田さんに感謝である)
     またこのPSNはナガート型と言われるタイプであるが、昭和44年に発売されたCQhamradio別冊「SSBハンドブック」にJA7LK 高橋OMが詳しく書かれている。

  2. 周波数変換部
     9MHzのSSBを7MHzに変換するため、VFOを16MHz台としている。16-9MHzとなるのでSSBは反転する。従ってジェネレータはUSBとし返還後7MHzLSBとしている。
     変換にはダイオードリングパッシブDBMの既製品(R&K M54)を使用した。そのためLo入力には7dBm程度必要なので、DDSからの信号をFET(2SK125)で1段増幅して供給する
    。
  3. 段間増幅
     ジェネレータ出力は-15dBm程度であり、変換出力は-21dBm以下となる。これを最近気に入っている2SK125x2カスコードアンプで20dB近く増幅する。この上部FETのゲートに与えるDC電圧でゲインがコントロールできる。これをパネルに取り付けパワーコントロールできるようにした。
     その後RD00HHS1でMAX300mW程度まで増幅させている。このRDシリーズのパワーFETは、以前ブログで紹介したものだ。素直に力強く増幅してくれる。
  4. リニアアンプ
     これも以前ブログで紹介しているが、今回も素直に働いてくれている。RD16HHF1PPでMAX20W近くまで出力している。さらに入力を増やせば30W近くまでいける。近いうちに再度このFETについて追加実験をする予定である。今回は最大出力15Wに調整した。

  5. 出力メーター
     今回のTFT液晶表示にはSメータとともに出力表示ができる機能がある。検出は最終LPFの出力部から抵抗分割で拾いダイオード検波している。当初これを直接arduinoのアナログ検出に入力したが、動作が早く一瞬しか表示してくれなかったため、AGCと同様にOPアンプのバッファを設け入力にコンデンサーと抵抗によるディレーを設けることにより見やすくさせた。
【受信部】
 受信部はシンプルなシングルコンバージョンである。
受信部(Receiver)

  1. RF増幅
     2ポールBPFのあと2SK125x2カスコードアンプによるRF増幅を設けている。これは送信部に使ったものと同じである。やはりゲート電圧のコントロールをパネルに設けRFゲイン調整とした。7MHzなのであまり増幅しなくても十分なで、ゲインコントロール最小でも十分と思われる。可変範囲は15dB弱であった。
  2. 周波数変換部
     ここにはSN16913を使用したアクティブミキサーとしている。これは以前実験で使用したもので、外付け部品が少なく、且つ変換利得が得られる。当然IM3には不利だと思われるが、IF増幅等の負担を減らせることも考慮し採用した。但しこのICはとっくにディスコンとなっており入手は難しいと思う。VFOの入力は-6dBm~0dBmがいいようであった。
  3. フィルタ
     フィルタも以前ブログで紹介した8pol_chebychevを使用。

  4. SSB検波
     検波は、これも以前のTEST受信機で作ったuPC1037HAを使った。素直に動いて音も良いようだ。
  5. キャリア発振
     これも流用品。特に解説の必要もないと思う。LSB用とUSB用がある。
  6. AF
    これもジャンクラジオの部品でカーステレオなどによく使われたICでTA7204Pで5W位の出力がある。
【TFT VFO】
 最近Arduinoを始めて、このDDS-VFOを作った。その最初の実用品である。今回モード変更は使っていない。その他の機能については全て使用している。SメータやPoメータの表示もどうにか使えそうなことが判った。ただ、ある程度ハードで検出信号を加工したり、スケッチ(ソフトウェア)を変更したりと多少ノウハウが必要で、誰でもすんなりとはいかない。もう少しインターフェース等標準化したいと思う。
TFT DDS VFO
  1. DDS
     DDSは例によって中華製のAD9850を使用している。基準水晶発振器は125MHzを外し46MHz台の手持ちのものに変更している。これはユニットについているものが異常に熱くなることと消費電流が大きいからだ。どうも3.3V用ではないかと思う。試しにこのDDSユニットを3.3Vで動作させても問題なく動作している。なお水晶発振器の変更に伴いArdunoのライブラリー変更が必要だ。この辺りも多少ハードルが高いかもしれない。
  2. 周波数設定
     今回送信部と受信部は独立している。その為送信用VFOと受信用VFOでは発振周波数が違う。このためArduinoのスケッチにおいて送信用と受信用別々にシフト周波数を設定している。これをきっちり合わせないと送受信で周波数が一致しない。ある程度計算で出せるのではあるが、最終的にはモニタしてもらい誤差確認をせねばならない。
【動作】
  実動作はまだ受信部のみで送信部はダミー送信のみである。受信感度は十分と思えるが、IF段のMC1490がどうもノイジーで少しうるさい。
 送信部はモニタでは一応SSBになっている。近々ローカル局にモニタしてもらう予定である。 数十年無線をやっているが、PSNは初めてである。感動ものである。
 また今回使用しているArduinoによるTFTカラー液晶表示は実に綺麗だ。今までキャラクタLCDの16文字x2行表示とは比べ物にならないほど、きれいで情報量も多い。キャラクタLCDには戻れないかもしれない。まだ沢山在庫してしまっている。使い道を考えねば。

 受信のみ動作をyoutubuにアップしました。
 以下に回路図を掲載するが、記憶で書いているので、ミスがあるかもしれません。参考程度としていただければ幸い。不明点があれば、コメントかメールでお願いします。
受信部回路図(schematic Receiver)

送信部回路図(schematics Transmitter)

VFO回路図(schematics VFO)





 


2016年8月29日月曜日

PSN SSB Generaor

 CYTECから「9MHz・SSB-PSNジェネレータ PSN-Gear07」組み立てキットが限定再販されるとのアナウンスがあった。SSB黎明期、メカニカルフィルタが高価でなかなか購入できない頃、自作派ではこのPSN方式のSSB発生器に盛んにチャレンジされていた。まだAM中心で無線をしていた私としては、SSBへの憧れから作ってみたいと思っていたがその機会がないまま今に至ってしまった。そんなことから今回の再販で迷わず購入を決めた。
 PSNは位相差からSSB信号を作り出すもので、この位相差をうまく作り出すことが重要な要素となっている。うまくできたPSNSSB送信機はフィルタ式よりも音質がいいと言われている。実際使ったことがないので今回のキットで楽しんでみたいと思う。
 PSNにも色々作り方があるようで、今回のナガード型AFPSN以外にPPSN,メリゴ式等あるようである。今回のキットの詳細についてはCYTECで資料が見られるので、興味のある方はそちらを参照願いたい。(現時点でまだ少しキットはあるようだ。2016.08.29)

 キットには詳細な説明書とCDがついており、非常に詳しく開設されている。キット成功の秘訣は、最初にこれら説明書等にしっかり目を通しておくことである。近道をしようとすると思わぬ落とし穴にはまるものである。
















 まず最初に基板にハトメを取り付ける。これには金槌、ポンチ、金床(固いもの)を用意し取り付ける。我々の世代では当たり前の作業であるが、最近お人は経験がないかもしれません。
ここでマニュアルには書いてないが、 取り付けたハトメはきっちりパタンにはんだ付けを行っておくこと。これを忘れると当初動作しても、後々接触不良が発生する。
いよいよ部品の取り付けである。私は最初に小さなものから取り付けることにしている。今回は抵抗からスタート。
 抵抗はカラーコード(茶赤橙黄緑青紫灰白黒これが1234567890に対応)と言われる色で定数を現している。詳しくはネットで調べてください。
CYTECのマニュアルには色がきちんと書かれており親切である。
 ここで注意事項であるが、赤と橙とか判別を間違えそうなこともある。特に私のような老人には。(笑) できればテスターで確認の上作業すれば間違いない。
「重要」 今回は抵抗やコンデンサーで設計値に標準のものがない場合があり、複数の抵抗コンデンサーを組み合わせて使用するところがある。そしてこの値が性能を左右する重要なポイントとなる。それらはAFで2組の抵抗合成がされている。これら2組はバランスが重要であることから、できれば多くの抵抗から選別したいところであるが、そうもいかない。そこで4本で2本ずつ2組作る場合、テスターで抵抗値を計り最大と最小で1組、中2個で1組とする。これで2組の差が少なくなる。
あまり神経質になってもしょうがないが、できることはしておいたほうがいいと思う。

次にコンデンサーを取り付ける。電解コンデンサーの極性に注意。パタンにシルク印刷(白い部分が-側)があるのでわかりやすい。 あとは定数と種類(積層セラミックとマイラー)を間違えないように取り付ける。
 これらもパーツリストに部品番号と種類が明記されているので確認しながら取り付けるとよい。
次に大物(半固定抵抗、トリマ、水晶、コイル)を付け、最後に半導体(トランジスタ、IC)を付ける。今回は定電圧IC1個だけで、あとは汎用トランジスタのみである。向きもシルク印刷で容易に判別できる。
 これで取り付け終了であるが、慌てて電源を繋がないように。
マニュアルに改良の情報が入っている。これに従い改造を行う。
1つはAF振幅バランスをよりきっちり合わせられるように固定抵抗1個を半固定に変更
 もう一つは、CW時にマイク回路を止めるための改造(ダイオード1個追加)である。
これで取り付け終了。

部品取り付けには、1個つけたら回路図にチェックを入れていく。これによりより間違いなく取り付けができる。
 「急がば回れ」である。


いよいよ調整である電源を繋ぎ異常電流が流れないことを確認し、十分エージングしてから調整をスタートする。
 最初にAFPSN部分である。マイク入力に1KHzを入力しリサージュ波形を見て、正円に近づける。
詳しくはマニュアルに書かれているので、その通りに行う。


 次にキャリアサプレッションの調整である。これについてもマニュアルに詳しく書かれている。
 写真では41.7dB程度であるが、基板むき出し状態なのでこんなところ。ケースにきっちり入れ十分エージングすれば-50dB位には追い込める。実際調整中でも55dB位になることもあった。この調整はなかなかクリティカルである。
サイドバンドサプレッションであるが、上記調整後で33dB以上取れていた。マニュアルでは25dB~35dB程度とあるのでまずまずである。














 以上でジェネレータの完成である。このSSB信号をミキサーで目的周波数に変換し、リアニアアンプで増幅すれば送信機の完成となる。さてミクサーを作らねば。VFOはもちろんarduino DDS TFTLCD VFOである。

 感想であるが、結構簡単にSSBができたという感じである。もちろん諸性能ではフィルタ式には負けるし、DSPに至ってはその比ではないだろう。しかし今回の製作でPSNでも十分使えるものが出来るという感触を得た。
 実際にマイク入力に音声を入力し、ゼネラルカバレージ受信機で9MHzを聞いてみた。問題ないレベルと思う。YouTubeにアップしたので、興味のある方は聞いてみてください。

https://www.youtube.com/watch?v=jtH3dBAwfrE