keikawa / 8510C-controller

This script controls a vector network analyzer 8510C and two regulated power supplies PMX35-1A. S-parameters and operating points are measured while sweeping biases. The measurement results are saved as the CSV format and the touchstone format.
MIT License
1 stars 0 forks source link

Improve Sweep Speed for 8510C VNA #1

Open keikawa opened 1 month ago

keikawa commented 1 month ago

The following feedback was received from a user via email regarding the current implementation. Thank you! :) I am currently out of the lab and do not have access to 8510C, so if anyone tries the following idea, I would appreciate it if you could share your results.

Description:

The current implementation works well with the 8510C VNA, but there is a need to speed up consecutive sweeps. One potential method is to put the VNA into ramp mode. However, the data transfer speed is slow, and there is some latency.

Details:

The current code uses FORM4 for ASCII data transfer, which may slow down the data transfer. Consider using other data transfer protocols such as FORM1, FORM2, FORM3, or FORM5, which are binary data transfers and may increase data transfer speed. The current implementation has a 10-second sleep. If the data transfer speed can be improved, this sleep time can be reduced.

If anyone has experience with optimizing 8510C VNA sweeps, please share your insights.

nasalmon commented 1 month ago

For a 801 point sweep using ASCII Form4 data format the python program statement "vns.read()" takes 27 seconds to transfer the data before moving on in this program. Why is this so long and is there any way of speeding it up? Thank you.

keikawa commented 3 weeks ago

@nasalmon

scikit-rf, a Python package for RF applications, now supports the 8510C VNA, which could be beneficial to use. Here is the link to the documentation.

scikit-rf relies on the FORM2 protocol, which may be faster than my current code. For more details, refer to this link.

nasalmon commented 3 weeks ago

Hi Keisuke, that’s really helpful. Probably given measurement errors the precision you get with FORM2 is more than necessary. I did actually get FORM1 (but not a IEEE standard) working in my own routine, which is slightly faster than FORM2, and again probably sufficient in precision given other errors. Should I upload to Git just so you and others can see? Cheers, Neil

From: Keisuke Kawahara @.> Sent: 21 August 2024 09:00 To: keikawa/8510C-controller @.> Cc: nasalmon @.>; Mention @.> Subject: Re: [keikawa/8510C-controller] Improve Sweep Speed for 8510C VNA (Issue #1)

@nasalmon https://github.com/nasalmon

scikit-rf, a Python package for RF applications, now supports the 8510C VNA, which could be beneficial to use. Here is the link to the documentation. https://scikit-rf.readthedocs.io/en/v0.24.0/api/vi/generated/skrf.vi.vna.HP8510C.html#skrf.vi.vna.HP8510C

scikit-rf relies on the FORM2 protocol, which may be faster than my current code. For more details, refer to this link. https://scikit-rf.readthedocs.io/en/v0.24.0/_modules/skrf/vi/vna/hp8510c.html

— Reply to this email directly, view it on GitHub https://github.com/keikawa/8510C-controller/issues/1#issuecomment-2301400674 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AXIA3KODNH7S5W2KPUGBXB3ZSRCJNAVCNFSM6AAAAABK3SSVYOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBRGQYDANRXGQ . You are receiving this because you were mentioned.Message ID: @.***>

keikawa commented 3 weeks ago

That sounds great! Feel free to either send a pull request to my repository or, if you prefer, you can create your own repository.

nasalmon commented 3 weeks ago

Hi Keisuke,

Unfortunately I’m not that familiar with Github, never previous made a pull request, and looking at how to do that, it looked rather involved, so I’ll have to reserve that learning exercise for when I have more time.

However, I took your code from Github and modified to read any format from FORM1 to FORM5, using the manuals and trial and error and it seems to work. It does multiple sweeps, but only records files for the last sweep. Just to save time I attached the modification to you code.

I will continue to modify the code to store data from multiple sweeps so I can continue to use the HP8510C to the best.

Thank you for writing the original code.

Cheers,

Neil

From: Keisuke Kawahara @.> Sent: 21 August 2024 09:29 To: keikawa/8510C-controller @.> Cc: nasalmon @.>; Mention @.> Subject: Re: [keikawa/8510C-controller] Improve Sweep Speed for 8510C VNA (Issue #1)

That sounds great! Feel free to either send a pull request to my repository or, if you prefer, you can create your own repository.

— Reply to this email directly, view it on GitHub https://github.com/keikawa/8510C-controller/issues/1#issuecomment-2301463617 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AXIA3KLRXNCYIS32TVIFE33ZSRFTBAVCNFSM6AAAAABK3SSVYOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMBRGQ3DGNRRG4 . You are receiving this because you were mentioned.Message ID: @.***>