Triangle Wave Design

design

Yes it is possible to do. Much depends on how accurately the output has to get to ground and to +5 volts and how linear is the triangle wave. The more tightly these are constrained the more circuitry and complexity there will be.

A moderate, simple solution with pretty good accuracy and linearity is outlined here. This is a concept, not a design. The basic oscillator is a

555 with a high enough frequency range. The threshold and trigger terminals (2 and 6) are tied together . An up current source pulls these terminals high and a down current source pulls these terminals low. The up current source is exactly twice the value of the down current source, say two millamps and one milliamp. A timing capacitor is connected from these terminals to ground. The discharge pin of the 555 (7) is connected to terminals two and six through diodes such that when the switch is on the current of the upper current source is diverted into pin 7. In this way the current available to charge and discharge the cap will be plus and minus one milliamp and a triangle wave will appear across the cap when the circuit is running.

An op-amp with sufficient slew rate and bandwidth and who's output can swing near ground and +V is connected to the timing capacitor in a non-inverting connection. With appropriate gain and offset it will amplify the triangle wave and give an output that swings near ground and +V.

If more voltage is needed in the design than the available 5 volts, the square wave output of the 555 can be used with diodes and caps to boost the available power supply voltage to nearly 10 volts or even higher. This may make it easier to get the requisite gain and output swing for your gnd to +5 output requirement.

This is a simple scheme, easy to make work requiring no code or programming. You are basically making a function generator. Note that a square wave output is also available on pin 3 of the 555.

Reply to
Bob Eldred
Loading thread data ...

I need, if possible, a fairly accurate 300kHz triangle wave generator design that outputs a signal which swings from 0-5V using only a GND and 5V power supply. Before I go thinking about this too much, can someone tell me if this is possible, or if there's an already existing design out there?

Thanks,

Dave

Reply to
David Grant

You could do this with a software DDS, using, say, an Atmel ATtiny2313 running at 20 MHz. See my web site for details of a 250 kHz DDS generator using an 11 MHz '2313. Output is up to 2.56V, so you would need an amplifier for 5V.

Leon

--
Leon Heller, G1HSM
http://www.geocities.com/leon_heller
Reply to
Leon Heller

NO, It can't be done.

How accurate is "fairly accurate"? Accurate how? Frequency? linearity? Symmetry? Pointy-ness of the peaks? Glitches at the peaks? Harmonic content? What's the min/max range of your 5V supply? Do you really, really, really have to go from 0.00000000000V to

5.00000000000V? Any reason you can't generate a smaller triangle and amplify it?

Figure out what you really need. Relax some of the numbers and impossible might become trivial, maybe... A CMOS 555 can make a nice triangle-looking waveform at amplitude Vcc/3. Bottom half of an exponential is kinda linear... mike

--
Return address is VALID but some sites block emails
with links.  Delete this sig when replying.
.
Wanted, PCMCIA SCSI Card for HP m820 CDRW.
FS 500MHz Tek DSOscilloscope TDS540 Make Offer
Wanted, 12.1" LCD for Gateway Solo 5300. Samsung LT121SU-121
Bunch of stuff For Sale and Wanted at the link below.
MAKE THE OBVIOUS CHANGES TO THE LINK
http://www.geocities.com/SiliconValley/Monitor/4710/
Reply to
mike

Well of course it can be done!

One very simple way would be to clock a counter up, then down, and feed the count output to a DAC.

You could put the counter in a PLD.

If you use an 8-bit counter, then you have to count from 0 to 255, then back down to 0, so that is 511 intervals.

The master clock would run at 300 kHz * 511 = 153.3 MHz, or however close to that you can get. That is a pretty fast clock. So maybe you could just use 6 or 7 bits to get the master clock speed down. You would put a low-pass filter at the DAC output.

Another simple way would be to generate a 300 kHz square wave (using logic) then feed it to an op-amp integrator. If needed, the integrator could output a smaller triangle wave, and the output would then go to another op-amp which would bring the signal up to the required 5 V peak-to-peak swing.

Have fun.

--Mac

Reply to
Mac

You could vastly reduce the problems if you were to first of all develop +10V and -5V supply rails. That gives the headrooms to make the 5V triangle generation much easier. Something like this.

+--|>|--+---/\/\----------------+ | D | R | | |/e | +5V--+-----|pnp | |\ +10V | | ______|______ | |--+---/\/\----------------+ Inside the box is a discrete equivalent of the 555 circuit, two comparators and an R-S flipflop.
--
Tony Williams.
Reply to
Tony Williams

Tony's design needs an op-amp to follow it and provide just a bit of gain to bring the swing up to the required 0-5V

--
--
kensmith@rahul.net   forging knowledge
Reply to
Ken Smith

The Vrefs of 5v and 0v on the discrete '555' give the required 5v pk-pk swing, but does need buffering.

I've been wondering whether it is possible to use the oscillator itself to provide the required extra supply voltages. Perhaps run an actual 555 off the 5v rails and provide just enough current to power an opamp at greater than 0v and 5v rails.

5v---+---------+ | | [1k0] [4k3] | +---------------------[9k1]---+ | | | e\| |/e 5v 5v | pnp|--+--|pnp | | | /| | |\ |C1 _| _ | | | | === | 555 | | +----+ | |680pF | | 5v | | | | +--|Thr | |\| | [1k6] +---+-------+ | Out|--| >--+ | | | +--|Trig | |/| | +----+ | |C2 | |______| 0v | | | | === | | | \| | |/ |680pF | | | npn|--+--|npn | | 0v | e/| |e | | | | | 0v | | | +---------------------[9k1]---+ [1k0] [4k3] | | | | |Triangle | 0v---+---------+ | 1.666V p-p | \|/ | +9Vdc approx->+------------------+--||--+ | +-[4k3]--------+ | | | | |_ | | 0.1=== | | / -|--+ | | | Out- =74HC non inverting buffers in parallel. |/ 2-off 0.43mA const-I sources switched on/off alternately by the output sq wave. The sq wave also drives the capacitor pumps to generate the extra supplies for the output opamp.
--
Tony Williams.
Reply to
Tony Williams

You don't need any such thing- just make the T-wave go from 0-2.5V and scale the Vref to the other input of your PWM comparator with a resistor divider-probably a 2:1 that is two equal valued resistors. Sheesh.

Reply to
Fred Bloggs

I suggest the 555 output be buffered again for the boosters like this:

Modified:

If you have a dual op-amp and use HC inverters you could:

-------- ! \ ---!THR Q!-----! >0--/\/\/\---+----!!----- ! ! ! ! / ! ! +---!TRG ! ---!-\ ! ! -------- ! >-----+ ! Vcc/2 ---!+/ ! ! ! --------------------------------------------

If the boosters used Schottky diodes, the circuit could start up with the dual op-amp running on (+5-2Schottky) and (Ground+2Schottky). Once it gets going, it would pump the supplies up and the the other op-amp of the pair would be able to make the 0V to 5V swing.

--
--
kensmith@rahul.net   forging knowledge
Reply to
Ken Smith

The Linear Tech LT1800 is inexpensive and will handle this job: View in a fixed-width font such as Courier.

Reply to
Fred Bloggs

Slight problem there with Vo,pp= Vcc/3...

Reply to
Fred Bloggs

I'm assumeing the other section of the op-amp is still making the boosting amplifier. Sorry if I wasn't clear on that.

--
--
kensmith@rahul.net   forging knowledge
Reply to
Ken Smith

I think Fred is remarking that Vcc/3 is quite close to the Threshold-Trig voltage requirement of the 555, so there could be a chance that the thing may not start up.

I'm quite out of date with opamps, but if there is a single rail one that will do a clean integration at 300KHz (CMV= Vcc/2, Vout only needs to be 1.67V p-p) then you could use two singles, one powered off 5V for the oscillator and the other off the boosted rails.

--
Tony Williams.
Reply to
Tony Williams

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.