Ulm-IQO / qudi

(Legacy project) A modular laboratory experiment management suite, predecessor to qudi-core.
GNU General Public License v3.0
166 stars 141 forks source link

Awg70k odmr #644

Open Geegee opened 3 years ago

Geegee commented 3 years ago

Use the Tektronix AWG70k as a microwave source that works in the ODMR toolchain.

Description

@Neverhorst made the AWG70k comply with the microwave interface. I made the get_status functions use overloading. Introduced a new function that gets the sampling rate of the simple waveform compiler and additionally a small change that ensures that the number of samples is even.

Motivation and Context

How Has This Been Tested?

Could only test with some changes as the way I run ODMR differs somewhat due to different hardware (mainly I need an additional sequence step that is only run once).

Screenshots (only if appropriate, delete if not):

Types of changes

Checklist:

Neverhorst commented 3 years ago

@Geegee Do you encounter an entirely different user experience?

Geegee commented 3 years ago

What I can say is that it is slower compared to the setup with e.g. the SMIQ, but besides that it is running fine. As far as I remember also @anjusha-vs was using it for some time. Maybe it is a problem with the 2 channel AWG? It could also be the number of points. I usually use around 50 - 150 points, which is quiet fast (maybe 20 seconds). I just checked for 300 points it maybe takes a minute.

Geegee commented 3 years ago

Thanks a lot for the rigorous testing, especially the sampling rate issue. It turns out that there are a couple more intricacies with the Tektronix AWG. First the sampling rate in the waveform compiler can not be set below a certain value. This value seems to be 200 / 33 (6.06...) samples per period given the selected frequency. The second point is that when making the waveform compiler active in the software it automatically selects 50 GS/s as you observed. The second is easily fixed by setting the sampling frequency in the waveform compiler to the sampling frequency of the AWG after making the waveform compiler plugin active. For the first one I made a check so that the highest frequency given the sampling rate of the AWG is not violating this condition.