注)改定情報を末尾に記載(Ver 7.20)
Arduinoを使用したVFO-controllerを製作してから3年経過した。世界各国から色々なコメントを頂き感謝感謝です。この間、受信機等の製作に合わせてそのたびに色々な種類のcontrolerを作ってきた。これには結構なパワーが必要であり、無駄も多くなっている。
今回このことを反省し、各種機能を取り込んだcontrollerを製作した。今後色々なシステムに合わせて改良しやすいように考慮したつもりである。ただプロセッサーにArduino-nanoを使用しているため、多少動きが良くないところもある。これは今後の課題としたい。
【特徴】
今回の特徴としてバンドというイメージがないことである。VFOは1-54MHzまで連続して可変する。最近のメーカー製リグでは当たり前であるが。スケッチを変更すれば、この範囲は変更できる。バンド切り替えがない代わりにBPF,LPF等の選択を行うようにしている。適切なBPFが選択されていないと送信できない措置も行っている。このことから60MHz位のLPFを使用すればGENERALレシーバーとして使用できるメリットがある。できれば周波数に合わせて自動的にフィルターが選択できればいいのであるが、フラッシュメモリーが不足であることと、処理スピードが遅くなりうまく表示できない。もう1ランク上のプロセッサーが必要である。
2つ目の特徴として、メーカー製リグでは当たり前であるが、2VFO(A,B)を持ち、A=B,A/B、SPLIT機能を設けた。メモリーは最大30チャンネルとした。メモリーからVFOへの移行も可能。
3つ目の特徴としてtransverter対応としている。このモードは28MHzをベースとして144,435MHzに対応できる。VFOとしては28MHzと動作し、表示を144,430とする機能であり、同時にtransverter制御用の出力を用意した。
ハードウェアの特徴としてI/O増設のためI2C用の PCF8574 を2個使用しスイッチ用に8ビット、BPF,MODE情報の出力用に8ビット増設している。
VFO発振にはSi5351を使用し、54MHzまで対応できる。また昨年ブログに掲載したdsPICを使用したPSN送信機にも対応できるように考慮している。この場合受信周波数の2倍の周波数が必要となるので最大54MHzの場合108MHzの出力となる。
【Specification】
- Rx Frequency Range 1MHz-54MHz
- Tx Frequency Range 1MHz-54MHz (Ham band only)
- Emission Modes CW,AM,LSB,USB,FM (Max 5 modes)
- Frequency Steps 10H,100H,1kH,10kHz,100kHz,1MzH
- Memory Chanel 1-30 Chanel
- BPF 1-15 (MAX 15)
- meter S-meter , PO-meter
これら仕様は最大値で、カスタマイズして小規模用に容易に変更できるようにしている。
【Function】
- VFO-Mode
VFO A=B Copy VFO-A to VFO-B
VFO A/B Main VFO Change A to B B to A toggle
VFO SPLIT Main-VFO Rx Sub-VFO TX
- Memory-Mode
Memory Wite 1-30CH(Friquency,Mode,Step,BPF,SPLIT)
Memory Read 1-30CH
Memory to VFO Memory Cnanel copy to VFO
- Transverter-Mode
144MHz,430Mhz Base friquency is 28MHz
144Mhz - 146MHz (28MHz-30MHz)
430Mhz - 440MHz (28MHz 38MHz)
- Tune
Tune 送信機調整用に例えば1kHzを音声回路に送れるように送信時に
1kH発振ができるようにI/O出力を用意
- Si5351 Adjust-Mode
Turbo-switch+Power ON でAdust-modeになり,25MHzが出力される。
周波数カウンターに接続しUP/DOWNスイッチで調整できる。
- Turbo
エンコーダーでの変化を10倍にする機能。
STEP 10Hzの時に、Turboを押しながら回すと100Hz STEP
STEP 100Hzの時に、Turboを押しながら回すと1kHz STEP
【MEMO】
ロータリーエンコーダーを回したときに周波数表示が多少ぎこちない。これはArduino-nanoのSPI速度の問題と表示アルゴリズムのもお題だと思われる。これにはより高速なプロセッサーが必要と思う。近い将来STM32やArduino-mega,Due等に乗せ換えたいと思う。またキャラクタLCDを使用したライトなものも用意したいと思う。
動作の詳細はマニュアルと回路図を参照してください。スケッチ&manualをダウンロードサイトにUPしてあります。
73's JA2NKD
改定(2019.10.22):回路図 修正 スケッチ 修正
改定(2019.12.02):回路図 修正 スケッチ 修正 Ver.7.20
改定(2020.03.22):回路図 修正
改定(2019.12.02):回路図 修正 スケッチ 修正 Ver.7.20
改定(2020.03.22):回路図 修正
47 件のコメント:
excelent project Matsuura ..bravooo ,i like it !
Hi.Mikele
Long no see.
The movement is a bit slow because it incorporates many features.
I'm thinking of putting it on STM32duino now.
I would like to make a transceiver suitable for this VFO.
Thank you always for a good comment.
73's JA2NKD
i m always here hi!hi! now i finishing one dds by vk3hn Paul and waiting for LCD display (by ebay) for your RF Analyser...see you soon .
all the best for you and your family !
OK I see.
I also want to remake the RF analyzer.
Please send me your feedback if you can.
73's JA2NKD
Is there any problem to use bigger LCD like 3,2 inch with same driver ILI9341 ?
Hi,Anton Hendra
Thanks comments.
There is no problem if the resolution is 320x240.
Let's enjoy Homebrew.
73's JA2NKD
Hi, is it possible to do this as remote vfo for my old yaesu ft-901dm? how to make?
best regards from Brazil!
73´s
Paulo Fernando Scurciatto
ex-PY2-RYK
Hi,Paulo
Thank you for watching the blog.
It can be used for the external VFO of FT-901DM, but it needs to be customized.
Also, I think that many functions are unnecessary.
I think a simpler VFO is fine.
Let's enjoy homebrew.
73's JA2NKD Ryuu
松浦OM 先般AF PSNの件でお世話になりましたJJ1HMRです。
こちらのVFOも素晴らしく、生まれて初めてCADで基板を起こしてみました。 I2Cバスの変換とかロータリーエンコードの相性?で悩んでいたのですが、何とか動いているのではと思われる程度に至りました。 お礼とご報告まで。
https://davet.exblog.jp/30837543/
JJ1HMR 田中さん コメントありがとうございます。
今回のVFOは少々欲張りすぎの仕様となってしまいました。
なので、使い勝手(操作性)が今一だと思います。少しぜい肉を落として使いやすくしようと考えています。
エンコーダーの相性ですか。Arduinoでは処理スピードが遅く割込み動作で表示が今一です。もっと高速のMPUにするといいと思っています。またプルアップを内部にして今一なら、外部でプルアップするといい場合もあるようです。
何か疑問点、改良等についてあれば遠慮なくコメントなり、メールを頂ければと思っています。
73's JA2NKD
Your email I'd pls
Hi,Sudhindra
It is written on the photo at the top of the blog
73's JA2NKD
Lets go! I m starting today with this project :)
Hi,Mikele
Good.
I have not yet made a transceiver using this VFO.
You may be faster.
Please let me know if you have any problems with the operation or if you want to improve it.
I'll do my best to make an all-band transceiver.
73's
De JA2NKD
ok,ok thanks...will see the progress...stay tuned.9a3xz-Mikele
hello mr.Matsuura JA2NKD
one question pls...i conecting arduino nano with tft display and one off pcf8574,every functions working good BPF,STEP,LSB,USB....MEMORY,everything is ok but when i rotating rotary encoder (mechanical) nothing,i have not conecting si5351,maybe you know ,what am i doing wrong ?
thanks in advance..73 de 9a3xz-Mikele
Hi,Mikele
Have you started making it? It is early.
Please connect SI5351. Then the encoder will work.
I think the program has stopped because there is no response from SI5351.
73's
De JA2NKD
thanks so much, i will try afternon.73 de 9a3xz,Mikele
no,not working rotary encoder with si5351,i have another problem,i will see...maybe also i must conecting another pcf8574...for now i conecting only one pcf8574 with turbo,ptt,step,band switch,vfo and so on....second pcf8574 not conected.
i will see...project go on ;)
Hi,Mikele
It may not work depending on the type of rotary encoder.
Check the operation with the library sample program.
De JA2NKD Ryuu
Mr.Matsuura ,please tell me one thing,are you using level converter cd4050 or 74hc4050 ?
Hi,MIkele
I've sent you a mail.
DE JA2NKD
good morning I would like to use dds for trx drive HOMODYNA PILGRIM can you give me some solution best regards Jack sp9xu
sp9xu@wp.pl
Hi,Jack sp9xu
Thank you comments.
I'm sorry I don't know HOMODYNA PILGRIM.
For VFO using DDS, please refer to the following blog.
https://ja2nkd.blogspot.com/2016/10/dds-vfo-controller-version-up-ver31.html
Let's enjoy homebrew.
73's de JA2NKD Ryuu
thank you Ryuu for the info, I am looking for a dds that gives 4 times the frequency that it displays
on the display 14Mhz dds sends 56Mhz do you have such a solution greetings Jack sp9xu
Ok,Jack
It's not so difficult.
The PSN transmitter I made has twice the frequency when transmitting. It's used the Si5351.
DDS can do the same.
What DDS will DDS use?
If it is 56MHz, I think that it can be used with AD9850. There is no problem with AD9851.
It is possible even with my DDS-VFO by changing the sketch a little.
でJA2NKD Ryuu
Hello Mr. Matsuura, I am Miguel XE1HAX, I am seeing your project and it is very interesting to me but I see that it does not have the function of adding or subtracting the value of the intermediate frequency of the transceiver (IF), will it be possible to add this function to it? I have some transceivers to which I would like to add this work of yours, it is what I need to bring them back to life but it would be very necessary to be able to work on the + IF / -IF.
Thanks for listening to my suggestion, 73 from XE1HAX from México.
Hi,Miguel XE1HAX
Thanks for looking at the blog.
VFO_Ver7 does not have the image of a band. Band change is used only for switching between BPF and LPF. The frequency is continuously variable. Therefore, there is no timing to switch the IF shift. It may be a manual, though. There is also a method of switching by frequency, but if you include this routine it will affect the response of the encoder and you will not be able to change smoothly. (Limit of arduino nano)
Also, the memory is already full and it is impossible to add more functions.
In order to solve these problems, it is impossible to use a MPU with higher specifications.
I am sorry that I could not answer your wish.
Stay Home. Save lives.
Let's enjoy homebrew.
de JA2NKD
Hello Mr. Matsuura, thanks for your answer and I understand the impossibility of adding more functions to the project, I think I have the solution to this: I am going to build a mixer to get the frequency difference that I need by adding a fixed oscillator and its design, so At the end of all this I will get what I need to be able to get those transceivers working again, I appreciate the attention and the answer, 73 from XE1HAX.
hello dear friend Matsura !!!all functions step,band,bpf,vfo...all working very well but rotary encoder NOT !!!when i touch encoder with my finger frequency go up and down
I dont know whats the problem...uf uf uf...maybe i want optical encoder ????
i try everything but nothing !
73 de 9a3xz Mikele
Hi,Mikele
Long no see.
How are you?
What type Encoder do you use? Mechanical type? or Electronic type?
Please pull-up Pin of encoder (A,B) by 10k-ohm.
Now I make a new VFO using TFT with a touch panel .
It will be completed soon.
I would like to have a CAT control if possible, but it is difficult.
thanks i fine.
my encoder is mechanical type but i will try next week with one optical encoder and i will try with pull-up resistors.
excelent for your new VFO with touch panel,compliments dear Matsuura.
see you soon with good news,i hope so.
73 de 9a3xz Mikele and all the best.
Hi
Seend me pcb thank you
mr.Matsuura..finally all working well with new rotary encoder,for a few days i send you my video.still waiting bcd to decimal converter 4028 for change BPF s.
many many thanks for all informations and help.
73 de 9a3xz-Mikele
Hi,Mikele
Congrats
I was relieved that the VFO worked well.
I make a new VFO with a touch panel. I'm trying to add a CAT control now, but it doesn't work. This is difficult
Let's enjoy Homebrew.
73's
Boleh minta source code nya.....terima kasih 73...
Souce code is
https://sites.google.com/site/ja2nkd/download
73's
hello my friend !How are you ?
only one question,what you used after PCF8574 for switching relay for BPF and LPF ???
THANKS in advance...73 de 9a3xz Mikele
H,My friend Mikele
I went golf yesterday. I'm fine.Thank you
The output of the PCF8574 is converted to a separate control signal using the 74LS154 (4to16 Demaltiplexer). This signal controls the diode switch or relay.
There is an example of using 74LS154 in the rig made by the manufacturer.
OK?
JA2NKD Ryuu
thanks Matsuura.
is this IC 74LS154 outputs drive directly relays or i must put transistors ?
Hi,Mikele
You need a switching transistor to control the relay.
Note that using the 74LS154 will reverse the logic.
PNP type transistor is good
JA2NKD
finished :)
https://www.youtube.com/watch?v=ogec9KZA8QM
Hi,Mikeke
Congratulations.
I watched youtube
Let's enjoy homebrew.
73's
JA2NKD Ryuu
Hi Ryuu, you did a very good job my friend.
If anyone wants a PCB layout for this project please send me an email at yb8exl@gmail.com
I have a compilation error with this info. Sketch is too big 😕 what is the error ? I am using your original ino for vfo controller 7.2.
73 DD1MR Mike
Can you help me ?
OK is solved
コメントを投稿