Rigol DG1022Z - rough frequency change - Page 1
Forum section: electronics / testgear

author: Circlotron
author_rank: Super Contributor
timestamp: August 01, 2019, 11:17:04 am
content: My sign gen has always had very bad waveform discontinuities when stepping through frequencies. Here is it at 56Hz with 1Hz increments. Are they all that bad? Is this normal? Why can't it wait until the zero crossing to change?

author: Circlotron
author_rank: Super Contributor
timestamp: August 03, 2019, 05:26:37 am
content: Bringing it back to page 1 for a new set of eyes.

author: Gertjan
author_rank: Frequent Contributor
timestamp: August 03, 2019, 10:21:52 am
content: Hi Circlotron,I tried to reproduce your test. I could not see the discontinuities you are showing.I used a Rigol DG1032Z with firmware 00.01.12. I viewed on a Hameg / Rohde & Schwarz HMO 3002 scope.Perhaps your generator is on an older firmware? Also, could it be a triggering problem of your scope?regards, Gertjan.edit:corrected firmware version

author: Circlotron
author_rank: Super Contributor
timestamp: August 03, 2019, 12:01:00 pm
content: Quote from: Gertjan on August 03, 2019, 10:21:52 amI found out just now it is only under certain conditions.Put both channel A and B to 50Hz sine wave.Both channels active.Same amplitude both channels.Channel B 60 degrees shifted from channel AGo to Utilities and lock together tracking of frequency, amplitude, and phase.NOW you will see something when you wind the knob and the frequency changes in 1Hz steps.If you connect it to a loudspeaker it sounds very bad!If you unlock the phase tracking the problem stops. Very smooth steps.I will check what version firmware.Edit -> firmware is 00.01.12 so is newer than yours even.Edit 2 -> Upgraded to v03.01.12.00.00 2017-09-10Problem now appears to be fixed!Edit 3 -> Problem still exists.If frequency, phase and amplitude of both channels are locked together and the phase difference is zero then the problem doesn't seem to happen. If the phase difference is large like 60 deg or 90 deg and both channels are runningthen the problem occurs when one channel is stepped by 1Hz while outputting 50Hz or so.

author: Gertjan
author_rank: Frequent Contributor
timestamp: August 03, 2019, 01:34:10 pm
content: Hi Circlotron,The solution seems easy: just avoid these specific conditionsIn practical use these settings won't be used often anyway.....regards, Gertjan.

author: MarkF
author_rank: Super Contributor
timestamp: August 03, 2019, 01:44:54 pm
content: I know nothing of the DG1022X...Have you seen the upgrade (Select the "Function/arbitrary waveform generator" item)?https://www.rigol.com/Support/SoftDownload/3DG1022X firmware upgrade 568.38KB 2018-06-04downloadNever mind. I totally miss-read the title!

author: MarkF
author_rank: Super Contributor
timestamp: August 03, 2019, 01:50:46 pm
content: Did you upgrade to the DG1000Zfirmware instead of the DG1022X?Never mind. I totally miss-read the title!

author: 2N3055
author_rank: Super Contributor
timestamp: August 03, 2019, 02:08:03 pm
content: Take a piece of paper and draw:2 signals.60 deg phase difference.You change one signal at a point in time.At this point other signal has to change frequency AND keep phase difference.You get mathematical discontinuity at that moment.It can change one ch trough zero crossing. Other ch will not be at zero crossing at that time. So it will jump from old params to new ones in one clock.If someone made an AWG that will make a sweep like transition from freq to freq during time interval (instead of instantaneous change), than that could be made to be glitchless.I don't know if any AWG does that. It's not really a problem usually.

author: Circlotron
author_rank: Super Contributor
timestamp: August 04, 2019, 01:13:45 am
content: Quote from: Gertjan on August 03, 2019, 01:34:10 pmCan you reproduce the problem now that I’ve described it in more detail?

author: Gertjan
author_rank: Frequent Contributor
timestamp: August 04, 2019, 08:40:54 am
content: Hi Circlotron,I was not able to reproduce your problem....But I think you already found the solution yourself:QuoteI had good results with just the frequency locked. Here is a screenshot (with 10Hz difference, to be able to see the frequency change on screen)The frequency changes smoothly, the phase relationship stays (more or less) the same.....I think it is theoretically impossible to lock frequencyandphase....To change smooth to a new frequency (with an ARB) you would have to do that in the zero crossing (or top) of the sine wave. If there is a phase difference between the two signals that zero crossing for the second signal would be later (or earlier) in time. You could decide to delay the frequency change for the second signal with the same amount of time. But in the meantime the phase wouldnotbe constant (because the two signals are having different frequencies....)regards, Gertjan.

author: Circlotron
author_rank: Super Contributor
timestamp: August 04, 2019, 11:40:34 pm
content: https://youtu.be/Qg6sqLdAIs0

author: TurboTom
author_rank: Super Contributor
timestamp: August 05, 2019, 07:49:36 am
content: This documents the problem quite clearly. I've seen similar dicontinuities with other generators as well, though not as severe (Rigol doesn't provide stellar performance in their older models - DG4000 series for example - while the new DG800/900 appears to be much better). In some cases it's just an intrinsic behaviour of the digital waveform synthesis, especially if you couple phase. If you then change frequency, the best thing the generator algorithm could do is pause one of the signals (preferably the one that's being changed) until the phase correlation matches with the second, unchanged signal and then start it again. Multiple level swings to the extremes aren't acceptable. And then some manufacturers tend to skimp on the waveform buffer management. Depending on how an AWG internally works, changing a parameter may involve setting up a new waveform in the buffer (i.e. changing symmetry on a triangle WF). If the channels aren't running in phase coupled mode, this could be done in a "shadow" buffer area while the instrument is outputting the unchanged signal, just to switch buffers at a moment where a digital comparator signalizes that the levels are identical -- glitch-free parameter change! Requires some effort and a little more complexity in the FPGA. If this is not beefy enough for the job -.But I often see people using less than optimal trigger configurations when probing signals. In case of this video, a RUNT or a SLOPE trigger with the "intermediate" state configured around 0V (vs. a fast rise/fall for SLOPE) would have led to catching virtually all the glitches and keeping them on-screen for analysis. That's a good hint for "young-players" anyway, learn to use your oscilloscope to its best capabilities. Play with settings. You will be surprised what you can get out of it.Cheers,Thomas

author: Grandchuck
author_rank: Super Contributor
timestamp: August 05, 2019, 06:38:07 pm
content: This was produced using a Siglent SDG 2122X function generator. The frequency was stepped from 55 to 56 Hz.

author: CustomEngineerer
author_rank: Frequent Contributor
timestamp: August 06, 2019, 01:36:21 am
content: Quote from: Grandchuck on August 05, 2019, 06:38:07 pmGo to Utility->Mode->Independent and try again and see what you get.

author: Circlotron
author_rank: Super Contributor
timestamp: August 06, 2019, 02:19:09 am
content: Would be interesting for someone to post the results of an upmarket function generator. If it also gives bad results then I suppose it's hopeless to expect a fix.

author: Grandchuck
author_rank: Super Contributor
timestamp: August 06, 2019, 01:30:50 pm
content: Quote from: CustomEngineerer on August 06, 2019, 01:36:21 amThat took care of it. Nice catch.Independent mode smooths parameter transitions (SDGX models only). I can't find this info. in the user manual. Prevents DDS resets when changing frequency. Nice to know about.Thanks!