Author Topic: Rigol DHO914S Bode plot  (Read 42638 times)

0 Members and 1 Guest are viewing this topic.

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #275 on: December 29, 2024, 03:18:06 pm »
A simple Bode plot can also be made using the harmonics of a step stimuli.
I experimented a bit with my 1kHz probe compensation. I attach two probes to it. CH1 is the reference, CH2 is not so properly compensated. It's either overcompensated or undercompensated.
The plots show the input signals, their FFT and finally the phase and amplitude difference between CH1 and CH2:

It shows that gain varies from -0.69dB to +1.63dB. Resolution is reasonable. Speed is very fast (much less than a second) as one capture is needed for a few hundreds points.


This shows a simple RC filter exited with a 1kHz 4V square wave signal.

Advantage is that it's fast and accurate. Disadvantage harmonics drop by 1/f, so a large dynamic range is needed. Both for the DUT and the scope (I use a DHO804). Passives should not pose any problem, but active circuits need to be able to process the peak to peak square wave signal. But it's very easy to experiment with this setup. As shown in the last picture, I created a small GUI that controls some basic scope settings and does the FFT/Bode post processing with Python numpy.
For this implementation, all you need is a fixed square wave signal and a script to post process the raw captured data.
The accuracy of the generator is not important, as long as it creates harmonics at the frequency of interest. All channels of the scope can be used, so in principle you can measure three circuit points simultaneously.

« Last Edit: December 29, 2024, 03:49:43 pm by TheoB »
 
The following users thanked this post: mawyatt

Online mawyatt

  • Super Contributor
  • ***
  • Posts: 4285
  • Country: us
Re: Rigol DHO914S Bode plot
« Reply #276 on: December 29, 2024, 03:28:20 pm »
Nice idea and work :-+

If one has an AWG or Pulse Generator, creating a narrow width pulse to simulate an Impulse Function would be interesting to investigate!!

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #277 on: December 29, 2024, 03:36:35 pm »
A lower duty cycle like 2% seems to help a bit indeed:


But looking at more detail shows the maximum frequency is not the same. That's caused by a filter algorithm I use. I only use FFT points that have an amplitude less than 60dB from the maximum amplitude. Changing the duty cycle also introduces a huge DC term (harmonic 0) which I should ignore.
My setup is limited due to long leads above 1MHz.
To summarize, duty cycle does not have any influence on the performance. It's all about the step in the voltage.
« Last Edit: December 30, 2024, 04:41:20 pm by TheoB »
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #278 on: December 30, 2024, 10:02:44 pm »

This is an LC parallel resonance tank (23.7nF, 68uH) driven by a 1K resistor. It shows the dynamic range can be over 40dB.
The input frequency sets the frequency step size. Here I use 25% duty cycle such that the harmonics are spaced at 1kHz. For one decade from 100kHz to 1MEG there are thus 900 steps . That might still be too low for high Q circuits. In that case the drive frequency needs to be lowered. That works, but it becomes noisier as the amplitude lowers.
« Last Edit: December 30, 2024, 10:05:01 pm by TheoB »
 

Offline gf

  • Super Contributor
  • ***
  • Posts: 1459
  • Country: de
Re: Rigol DHO914S Bode plot
« Reply #279 on: December 30, 2024, 11:11:48 pm »
This is an LC parallel resonance tank (23.7nF, 68uH) driven by a 1K resistor. It shows the dynamic range can be over 40dB.
The input frequency sets the frequency step size. Here I use 25% duty cycle such that the harmonics are spaced at 1kHz. For one decade from 100kHz to 1MEG there are thus 900 steps . That might still be too low for high Q circuits. In that case the drive frequency needs to be lowered. That works, but it becomes noisier as the amplitude lowers.

From how many time domain samples is it calculated?
« Last Edit: December 30, 2024, 11:25:11 pm by gf »
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #280 on: December 30, 2024, 11:39:59 pm »
1 Msamples at 156.25 Ms/s
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #281 on: December 31, 2024, 12:12:43 am »

2472847-1

This is 4.9MHz crystal with 300Hz resolution. It's clear that you need more resolution, but it's nice to see  :popcorn:
« Last Edit: December 31, 2024, 12:36:33 am by TheoB »
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 5664
  • Country: gw
Re: Rigol DHO914S Bode plot
« Reply #282 on: December 31, 2024, 05:28:02 am »
With a Dirac's pulse you should get a continuous spectra.. :)
Readers discretion is advised..
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #283 on: December 31, 2024, 09:42:10 am »
Yes, but the power per harmonic drops to zero. I did the experiment a few posts back.
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #284 on: December 31, 2024, 10:05:19 am »
2472999-0
I corrected the setup from banana plugs to coax. Crystal is placed between ch1 and ch2 (50 Ohm). CH1 is driven by 4Vpp 300 Hz signal generator.
2473003-1
The signal on CH2 now only contains the signal that passes the crystal, nothing else. Before I tried to measure the notch that happens with a R-crystal series connected network. CH2 is lowered to 20mV/div instead of 1V/Div. That helps to improve the signal to noise ratio.
Concept wise it shows that you can use this method on any scope. You don't need the Bode plot option or swept signal generator. I even think this works for loop stability analysis just as well.
For a 3V DCDC converter inject 100mV step into the feedback loop. The supply will follow this as 2.95V and 3.05V and the resulting spectrum can be measured with the scope channels set to full scale. With a loop bandwidth of 10kHz, inject a 100Hz signal and the resolution should be fine.
« Last Edit: December 31, 2024, 02:06:31 pm by TheoB »
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 5664
  • Country: gw
Re: Rigol DHO914S Bode plot
« Reply #285 on: December 31, 2024, 10:51:47 am »
One potential issue with this approach is you cannot set the "ADC range" for each frequency within your Bode. So the dynamic range of the Bode is limited by the actual ADC setting. With the "standard" approach you would adjust the ADC at each frequency such the signal fits it well (at least I would do it).

PS: Dirac - the spectral amplitudes do not go to zero (with the discrete number of points).. With a pulse of an amplitude A and number of spectral lines N the amplitude of each line should be A/N (plus minus windowing coef), afaik.. Sure, with million spectral lines it is not applicable in this case..
« Last Edit: December 31, 2024, 11:01:01 am by iMo »
Readers discretion is advised..
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #286 on: December 31, 2024, 11:20:11 am »
Yes indeed. There is a fixed ADC dynamic range. Since the harmonics attenuate by 1/N (20dB/decade roll-off) only the first three decades can be used. I have not seen a lot of real DHO915s results (and I don't own one) but from what I've seen the results are much worse from what I show. That is probably due to the way Rigol implemented it.
« Last Edit: December 31, 2024, 02:09:54 pm by TheoB »
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 5664
  • Country: gw
Re: Rigol DHO914S Bode plot
« Reply #287 on: December 31, 2024, 11:41:51 am »
Try to generate random square noise and do N averagings of the spectra, what it does..
Readers discretion is advised..
 

Offline gf

  • Super Contributor
  • ***
  • Posts: 1459
  • Country: de
Re: Rigol DHO914S Bode plot
« Reply #288 on: December 31, 2024, 02:39:56 pm »
With a Dirac's pulse you should get a continuous spectra.. :)

One disadvantage of a continuous spectrum stimulus is that the detector cannot benefit from processing gain. IOW, as the detector bandwidth is reduced, the SNR does not increase accordingly, because with decreasing bandwidth, the detector captures less noise, but also less of a useful wide-band signal :( OTOH, if useful signal is concentrated in a single frequency, the detector still captures the full power of the useful signal when the detector's bandwidth is reduced, but it captures less noise, therefore increasing SNR.

And the crest factor of a Dirac delta impulse is, of course, horrible (in fact, it is infinite). For a given peak-to-peak amplitude (which is limited by the ADC), the crest factor determines the power of the signal (high crest factor implies low power), and a low-power signal has a low SNR wrt. to a given noise power.

Try to generate random square noise and do N averagings of the spectra, what it does..

PRBS has at least a low crest factor. But its spectrum is still noisy, i.e. there will exist random frequencies in the spectrum with low stimulus power and therefore low SNR.

If you want to do vector averaging, you can only average the complex gain Vout(f) / Vin(f), which has the same expected value in each acquisition. But if you want to average multiple acquisitions of Vin(f) or Vout(f), you can only do power averaging, i.e. you don't get phase information.
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 5664
  • Country: gw
Re: Rigol DHO914S Bode plot
« Reply #289 on: December 31, 2024, 03:00:31 pm »
So the new "ideal Quality Bode" inside the DHO-XXX should work such it:

a) allows to enter Fstart, Fstop, N points per decade, M averages, window function and beta/alfa off its screen (or something like that)

b) sets the generator's output (if applicable) at the level which is appropriate for the given DUT and the type of measurement (set siggen output attenuation or DUT output amplification if applicable, for example)

c) looks at the DUT's output and sets the scope's CH1 and CH2 ranges and sampling rate such it fits best the scope and math, if it does not fit well the scope and math goto b)

d) makes the measurements in CH1 and CH2, downloads the CH1 and CH2 data into the python, do it M times for averaging if applicable

e) makes the math in the python (or C/C# whatever) residing inside the DHO-XXX and updates the custom graph on its screen accordingly

f) while still in between Fstart and Fstop goto b)
« Last Edit: December 31, 2024, 03:20:39 pm by iMo »
Readers discretion is advised..
 

Online mawyatt

  • Super Contributor
  • ***
  • Posts: 4285
  • Country: us
Re: Rigol DHO914S Bode plot
« Reply #290 on: December 31, 2024, 03:37:05 pm »
With a Dirac's pulse you should get a continuous spectra.. :)

One disadvantage of a continuous spectrum stimulus is that the detector cannot benefit from processing gain. IOW, as the detector bandwidth is reduced, the SNR does not increase accordingly, because with decreasing bandwidth, the detector captures less noise, but also less of a useful wide-band signal :( OTOH, if useful signal is concentrated in a single frequency, the detector still captures the full power of the useful signal when the detector's bandwidth is reduced, but it captures less noise, therefore increasing SNR.

And the crest factor of a Dirac delta impulse is, of course, horrible (in fact, it is infinite). For a given peak-to-peak amplitude (which is limited by the ADC), the crest factor determines the power of the signal (high crest factor implies low power), and a low-power signal has a low SNR wrt. to a given noise power.

Try to generate random square noise and do N averagings of the spectra, what it does..

PRBS has at least a low crest factor. But its spectrum is still noisy, i.e. there will exist random frequencies in the spectrum with low stimulus power and therefore low SNR.

If you want to do vector averaging, you can only average the complex gain Vout(f) / Vin(f), which has the same expected value in each acquisition. But if you want to average multiple acquisitions of Vin(f) or Vout(f), you can only do power averaging, i.e. you don't get phase information.

Good points :-+

Correlated/Synchronized/Freq-Selective sampling/detecting with the signal source is a powerful technique, and allows the signal being processed to be less influenced by thermal noise but other "noise" sources as well, such as Line, SMPS chopping, and Digital for example.

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline TheoB

  • Regular Contributor
  • *
  • Posts: 167
  • Country: nl
Re: Rigol DHO914S Bode plot
« Reply #291 on: December 31, 2024, 03:44:05 pm »
With a Dirac's pulse you should get a continuous spectra.. :)

One disadvantage of a continuous spectrum stimulus is that the detector cannot benefit from processing gain. IOW, as the detector bandwidth is reduced, the SNR does not increase accordingly, because with decreasing bandwidth, the detector captures less noise, but also less of a useful wide-band signal :( OTOH, if useful signal is concentrated in a single frequency, the detector still captures the full power of the useful signal when the detector's bandwidth is reduced, but it captures less noise, therefore increasing SNR.

And the crest factor of a Dirac delta impulse is, of course, horrible (in fact, it is infinite). For a given peak-to-peak amplitude (which is limited by the ADC), the crest factor determines the power of the signal (high crest factor implies low power), and a low-power signal has a low SNR wrt. to a given noise power.

Try to generate random square noise and do N averagings of the spectra, what it does..

PRBS has at least a low crest factor. But its spectrum is still noisy, i.e. there will exist random frequencies in the spectrum with low stimulus power and therefore low SNR.

If you want to do vector averaging, you can only average the complex gain Vout(f) / Vin(f), which has the same expected value in each acquisition. But if you want to average multiple acquisitions of Vin(f) or Vout(f), you can only do power averaging, i.e. you don't get phase information.
I determine the (complex) ratio between CH1 and CH2. From that I determine the phase and amplitude. Both phase and amplitude can be averaged over multiple measurements taken into account phase wrapping in the right way.
 

Online mawyatt

  • Super Contributor
  • ***
  • Posts: 4285
  • Country: us
Re: Rigol DHO914S Bode plot
« Reply #292 on: December 31, 2024, 03:48:17 pm »
So the new "ideal Quality Bode" inside the DHO-XXX should work such it:

A good starting point would be the Siglent Bode Implementation, adding the ability to do the Bode Function on Math Functions, Selective Bode Plot Averaging, Channel Bode Math (Bode Channel +- ), Normalizing (Calibration References), Selective Sweep types beyond Lin/Log to Range for example.

Selective Sweeps might involve higher resolution frequency steps over a smaller band of the total frequency sweep range, good for examining high "Q" resonate DUTs (Crystals) for example.

Applaud you and TheoB for this undertaking, as we know the effort involved :clap:

Best
« Last Edit: December 31, 2024, 03:58:02 pm by mawyatt »
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline iMo

  • Super Contributor
  • ***
  • Posts: 5664
  • Country: gw
Re: Rigol DHO914S Bode plot
« Reply #293 on: December 31, 2024, 04:23:25 pm »
Hopefully the android programmers here will take the opportunity to program/create an open source Quality Bode for the DHO-xxx. All required components are known, people have shown it is basically doable inside the DHO, so it is up to those skilled and willing members here to start to mess with that android ecosystem..
Of course they should start small.. and slowly make the enhancements..
A nice project for the upcoming year 2025, indeed..
Let us call the 2025 "The year of new Bode"  ;D ;D
Readers discretion is advised..
 

Online 2N3055

  • Super Contributor
  • ***
  • Posts: 7690
  • Country: hr
Re: Rigol DHO914S Bode plot
« Reply #294 on: December 31, 2024, 05:34:19 pm »
It makes me sad to see all these people talking at length about how to make Bode plot for DHO900..
How about Rigol fixes one you already bought and allegedly is in the scope?
"Just hard work is not enough - it must be applied sensibly."
Dr. Richard W. Hamming
 
The following users thanked this post: TimFox, Martin72, mawyatt, tmeub

Online mawyatt

  • Super Contributor
  • ***
  • Posts: 4285
  • Country: us
Re: Rigol DHO914S Bode plot
« Reply #295 on: December 31, 2024, 07:00:43 pm »
Here's some links to using the Bode Function to investigate Oscillator behavior, might be of interest to see how this works with the Pulsed Source being discussed?

https://www.eevblog.com/forum/projects/things-coming-together-bode-plot-diy-isolation-transformer-peltz-oscillator/

https://www.eevblog.com/forum/projects/injection-locked-peltz-oscillator-with-bode-analysis/

Best,
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Online mawyatt

  • Super Contributor
  • ***
  • Posts: 4285
  • Country: us
Re: Rigol DHO914S Bode plot
« Reply #296 on: December 31, 2024, 07:28:05 pm »
It makes me sad to see all these people talking at length about how to make Bode plot for DHO900..
How about Rigol fixes one you already bought and allegedly is in the scope?

Agree this is sad, as many of the knowledgable folks on here seem to realize that Rigol likely won't be addressing this soon (or ever) and have taken the Bode Task upon themselves.

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 17668
  • Country: 00
Re: Rigol DHO914S Bode plot
« Reply #297 on: December 31, 2024, 07:32:40 pm »
It makes me sad to see all these people talking at length about how to make Bode plot for DHO900..
How about Rigol fixes one you already bought and allegedly is in the scope?

Pay attention, they're actually making it for the DHO800 as well.

Which makes it an excellent hack.
 

Online mawyatt

  • Super Contributor
  • ***
  • Posts: 4285
  • Country: us
Re: Rigol DHO914S Bode plot
« Reply #298 on: December 31, 2024, 08:14:39 pm »
Pay attention, they're actually making it for the DHO800 as well.
Which makes it an excellent hack.

Think you've missed the point! Rigol should have already done this, then the "hack" would be expanding the features/function/performance rather than a user created complete baseline creation.

Rigol is in a position with "inside information" to create a Quality Bode Function, but apparently is choosing not to do such probably because of the $ investment, leaving that to their customers at their expense/time.

We must remember Rigol is a mid-level OEM, not lower tier as Owon, Fnirsi, or Hantek and should be held to a higher accountability :-+

Best
Curiosity killed the cat, also depleted my wallet!
~Wyatt Labs by Mike~
 

Online Martin72

  • Super Contributor
  • ***
  • Posts: 7190
  • Country: de
Re: Rigol DHO914S Bode plot
« Reply #299 on: December 31, 2024, 09:11:33 pm »
Quote
Pay attention, they're actually making it for the DHO800 as well.

Which makes it an excellent hack.

I find it generally sad that users have to “tinker” with the scope because the manufacturer is not making any effort to improve the device.
The (not error-free) Bodeplot function has not been touched by Rigol since MSO5000 times and simply implemented in the corresponding DHO models.
The sad highlight so far is that a private user has corrected the faulty FFT windows.
Rigol throws the scopes on the market and forgets to mention that they are developer boards.
Now there are new series on the market and I bet that they have the same flaws as the previous 12-bit devices.
This is very disappointing, as Rigol is actually the second “power” in the market for affordable scopes.
Siglent has long since been overtaken, and Owon is already lurking “around the corner” should their new models deliver what they promise on paper.
Rigol should stop launching new models every year and instead focus their development power on optimizing existing models, otherwise they will become redundant in the foreseeable future.



Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf