Rigol DG4000 ARB Gen as pulse generator? - Page 1
Forum section: electronics / testgear

author: Freighternut
author_rank: Regular Contributor
timestamp: August 24, 2012, 09:27:55 am
content: I am considering purchasing a Rigol DG4000 series ARB Generator.Around 60% of my requirement for a signal generator is for generating pulses for simulating digital inputs to microcontrollers. I don't require a highly accurate pulse source but pulse versatility is major requirement.In reading through the spec's and user guide it would appear that the DG4000 would have the versatility required. With two channels and the ability to adjust the phase relationship, Pulse width and shape it appears that most common pulse requirements could be met. The ability to generate pulses down to one microherts would allow simulating very slow pulse periods to simulate inputs from mechanical devices.Would any of the Rigol DG4000 series owners or anybody else with an opinion care to comment on the suitability of this gen for this purpose.Thanks, In advance.

author: kg4arn
author_rank: Unknown
timestamp: August 25, 2012, 05:05:20 pm
content: I have a DG4162.Using the Pulse function:The rise time can be set to a minimum of 5 nS for a pulse period as large as 2.5uS (400KHz)After that the minimum rise time becomes 0.195% of the pulse period.For example: for a 5uS pulse period the DG4162 will allow a minimum rise time of 9.7 nS.for the 1uHz frequency you mentioned, the rise time is 1953 secondsHowever, when I constructed a pulse using the ARB capability, the rise time was not affected by the pulse period and I was able to get a 5 nS rise time with a pulse period of 0.1 sec. So that may be a way around the rise rime issue without using a comparator.I hope this helps. Let me know if you want a specific test. But I am not going to do a 1 uHz. It may take a week to trigger!

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: August 25, 2012, 05:28:19 pm
content: It can be used as a pulsegen and has some neat features like bursts and stepped sweeps, but is far from ideal due to limits on duty cycle due to memory size.It's annoying because for pulses they could have put some pulse-specific modes in the FPGA to bypasss the memory( or use the memory to store run lengths) to get much more flexibility.

author: Freighternut
author_rank: Regular Contributor
timestamp: August 28, 2012, 11:41:56 pm
content: Thanks guys (Ed and Mike) for the valuable input. and apologies for the delay in responding, I got dragged away for work.I guess that I will need to take a closer look at the rise time spec to see if it will do the job.Is anybody aware of any equipment in the same price range (~$1000) that would be more suitable for pulsegeneration. See my previous post re my requirements.

author: nctnico
author_rank: Super Contributor
timestamp: August 29, 2012, 04:54:38 pm
content: Look for a pattern generator on Ebay. Many ARB generators also have a digital output.

author: AndyC_772
author_rank: Super Contributor
timestamp: September 24, 2012, 09:11:21 pm
content: I may be a bit late here, but last week I got my DG4062 and I've spent a while measuring what it can do. I'm impressed.There is an apparently arbitrary limit imposed on the rise time of pulses in 'pulse' mode, which I suspect may just be a marketing limitation to differentiate between the different models in the DG4000 range - but it's possible to do much better just by configuring the unit differently.Slowest of all is pulse mode, which is easy to set up but imposes a linear ramp up and down either side of the pulse.The next best option is to use square wave mode combined with a burst length of 1 cycle.Fastest of all is to set up an arbitrary waveform, which takes a bit of button pushing to configure but does extract the best rise & fall time performance from the unit.I don't have the actual measurements to hand, but IIRC the rise time in Arb mode was well under 5ns, albeit with a bit of ringing (even when connected directly to a scope with a 50 Ohm input).I'd be surprised if the other models in the range were actually any faster; maybe someone would care to tear down a DG4062 and a DG4162 and report on any differences? Or maybe come up with a magic sequence of commands to send over the USB interface?

author: jpb
author_rank: Super Contributor
timestamp: June 01, 2013, 09:56:26 pm
content: Quote from: AndyC_772 on September 24, 2012, 09:11:21 pmThis is a rather late response but I've only recently been reading Agilent's literature on their 33250A arb which I suspect the Rigol is based on:http://cp.literature.agilent.com/litweb/pdf/33250-90002.pdfSquare waves with rapid rise times can be generated using the arb facility but the generator itself cannot use this approach without introducing a lot of jitter. The edges would need to line up with the sample clock of 2nsecs. For example consider a 50MHz square wave at 50% duty cycle, the period is 20 nsecs which is 10 sample points exactly. Unfortunately the points have to fit into a whole power of 2, eg 16,384 or some factor of it, as 10 doesn't go into this exactly there will be a mismatch of 4 points of jitter to be spread out over 1,638 cycles. Worse still, the next frequency down would be 11 samples per cycle and this is a period of 22 nsecs which is close to 45MHz, quite a drop from 50MHz also 11 is not divisible by 2 so the square wave would be asymmetric i.e. not be exactly 50% duty cycle.Pages 300 and 301 of the user guide for the 33250 show how Agilent get around this and I assume that the Rigol does something similar.For square waves a sine wave is generated and then a comparator is used to turn this into a square wave. Different duty cycles are obtained by changing the comparator voltage. Thus the rise time is now determined by the comparator. It may be in this that the different Rigol models have different hardware. The DG4162 might use a better comparator than the DG4062 - I don't know, I'm just surmising.In the Agilent, for pulses yet another technique is used, square waves are produced at high frequency and just used to produce edges. A counter reduces the frequency for the front edges, another counter plus a programmable delay produces a stream of back edges. These are both fed into a flip flop to turn the pulse on and off. Slopes are then deliberately added to both to match what the user programs. I suspect though that Rigol doesn't do this exactly as it seems to be constrained by memory.In brief, yes you can get the fastest rise times using arb but you'll either have excessive jitter or be restricted as to frequency/period.

author: marmad
author_rank: Super Contributor
timestamp: June 01, 2013, 10:23:33 pm
content: Quote from: jpb on June 01, 2013, 09:56:26 pmNope, same hardware across the series.

author: jpb
author_rank: Super Contributor
timestamp: June 05, 2013, 12:50:12 pm
content: Quote from: marmad on June 01, 2013, 10:23:33 pmYes, I think that you are right. Rigol simply use the arb memory for square as well as pulse hence the jitter being the same at 500psec rms (which corresponds to the worse case of being half a sample point shifted on every odd waveform).The lower rise rates must all be artificial, i.e. the waveform added to the arb memory has sloped edges for the square as well as pulsed output. This is also presumably why they limit the arb frequency though the user can get around it by using more than one cycle in the wave form and entering sharply rising square waves.

author: Electro Fan
author_rank: Super Contributor
timestamp: March 30, 2014, 04:55:22 am
content: Resurrecting this older thread.Is it possible to use a Rigol DG4000 to create a pulse of ASCII characters (set pulse period, width, and amplitude to simulate individual bits within bytes)? Perhaps a string of several dozen or maybe a few hundred bytes? Thanks

author: Teneyes
author_rank: Frequent Contributor
timestamp: March 30, 2014, 03:09:02 pm
content: Quote from: Electro Fan on March 30, 2014, 04:55:22 amI am thinking it would be simple using multiple devices ; a DG4000 and an ASCII generator(arduino) , and use the sync out of the DG4000 to trigger the ASCII generator and gain of an amplifier curcuit

author: Electro Fan
author_rank: Super Contributor
timestamp: March 31, 2014, 03:52:46 am
content: Quote from: Teneyes on March 30, 2014, 03:09:02 pmI'm am currently using a Arduino to pulse out square waves; not sure that I see why I would use it with a DG4000. My question is whether a DG4000 can be programmed to create and send a string of ASCII characters, or if this is beyond the ability of a DG4000?I have seen devices like a Tektronix 114 or 115 that can send various pulses, but they don't appear programmable to the extent that they can create and send strings of ASCII characters.This Tek PG2011 looks like it could do the trick:http://www.ebay.com/itm/Tektronix-PG2011-Pulse-Generator-Works-Perfectly-/201044158180?pt=LH_DefaultDomain_2&hash=item2ecf2a66e4&nma=true&si=exKegD8%252BWxpFDYKHeMT4u%252Bjsh9w%253D&orig_cvip=true&rt=nc&_trksid=p2047675.l2557Not sure that it make sense to spend a lot of $ on a device such as a PG2011, especially if a DG4000 can do this and more - but it might be that pulsing out ASCII characters is beyond the ability of a DG4000.Feedback/thoughts welcome. ThanksThx

author: KedasProbe
author_rank: Frequent Contributor
timestamp: March 31, 2014, 10:12:05 am
content: I think it's possible to use the arb but the question is, is it worth the effort to make an arb signal like that, maybe write some VBA in the excel tool to make an arb file. If we say 10 samples per bit you should be able to get up to 100 character.Obviously it just transmits, no acknowledgment of receiving.