Jump to content
  • 0

Increase number of data points for custom waveforms


SaschaA

Question

Hi all,

i am working with the Analog Discovery 2 and impressed by the possibilities of this small beast. Nevertheless, there are measurements, i cannot perform due to the limited number of data points for custom waveforms that can be created with the waveform generator.

For my application, I need to program the waveform generator to output a special sweep signal, which i have generated in MATLAB. This signal contains about 1000000 data point and changes the frequency hyperbolically over time. Since the maximum number of data points in the waveform generator is 16384 i cannot use the custom signal function.

I have also tried to use the sweep function of the waveform generator. Unfortunately, it can only be used to generate sweep signals with linearly varying frequencies. However, i programmed a very long sweep signal (e.g. 10Hz to 500kHz in 10s). As i checked the output on my oscilloscope, the sweep signal looked very good. It looked so good that i cannot believe that such a long and complex signal has been created by using only 16384 data points. So, this brings me to my actual questions:

Is there any way to increase the number of data points to generate a custom waveform? If this is not directly possible with the WaveForms software, is there any other way to program longer signal and output them with the waveform generator, e.g. by using a Python Code? Maybe it is possible to run the waveform on a PC and continously stream it to the Analog Discovery via USB.

I hope you can help me. Thanks in advance.

Regards, Sascha

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Hi @SaschaA

For Analog Discovery the 3rd device configuration allocates 16k samples for carrier signal the AM/FM buffers are 2k 9bit
You could use the custom FM to generate sweep but the 2k9b limits the resolution.

image.png.ac683e0640ed026ab1a0e3087d1781a8.png

You could use the Play mode for unlimited streaming at up to about 1MSps. You could also stream AM/FM samples which probably highly reduces the required update rate.
See WF SDK/ samples/ py/ AnalogOut_Play.py AnalogOutIn_PlayRecord.py ...

image.png.a053475f0a588c6800cd2d074a3673f4.png

image.png.312a3cfaf78151175fbc4d0971ca3c64.png

Link to comment
Share on other sites

  • 0

Hi @attila,

thank you for your response. The play mode works fine for me and helped me to generate the waveform I want. I will also try your suggested method of streaming AM/FM samples to the Analog Discovery but I think some of my signals are too complex to model them with AM/FM samples.

Just out of interest: If I am using the Analog Discovery Pro, is it possible to stream signals to the device with a higher sample rate than 1MSps? Since the device is equipped with an Ethernet connection, this is maybe possible. If yes, can you roughly tell me what the highest sample rate is? In this way, I could also stream higher frequency signals to the device, which require a higher sample rate.

Thanks in advance.

Sascha

 

Link to comment
Share on other sites

  • 0

Hi @SaschaA

For me the reliable play over USB is about 1MHz and Ethernet 2MHz (in Standard mode).
With custom application and system (less running apps...) you may get higher rates.
In embedded mode I expect to get 10-20MHz, need to test...

With ADP3450/3250 the Ethernet bandwidth could be better than USB, depending on the (1G) network setup.
Here are some test I just performed, direct Ethernet and USB connection, without hub, switch...
For embedded test a Python script running in the device Linux was used.

image.png.0461872ceac4b677080e57158839d653.png

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...