Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!pasteur!ucbvax!hplabs!hp-pcd!hplsla!tomb From: tomb@hplsla.HP.COM (Tom Bruhns) Newsgroups: sci.electronics Subject: Re: A Challenging PWM Design Problem Message-ID: <5170022@hplsla.HP.COM> Date: 7 Dec 88 21:01:41 GMT References: <1663@maccs.McMaster.CA> Organization: HP Lake Stevens, WA Lines: 63 > > I have an interesting Pulse Width Modulation design problem; > > (pulse 1-1.9ms; 18ms between pulses) > > The pulse width varies linearly with a transducer variance of > 0 - 100%. My question: is there a simple solution for the conversion > of this PWM signal into a corresponding analog signal, ie. a simple > circuit for the following black box? > > where the analog output function looks like; > > > Vcc | . > | . > | . > | . > | . > | . > |. > -|-----------------, > 1.0 1.9 > > Pulse Width (mSec) > > -- > Darel Mesher ...!uunet!mnetor!maccs!darel > McMaster University darel@maccs.mcmaster.ca > ---------- Depending on the accuracy and time response you want, maybe the following "one-chip" solution will work (thought the FET switches may be EASIER to do as a second chip -- same with the one-shot). You get to work out the details; this is only an outline: Use a quad opamp chip. One section is configured as a one-shot which is adjustable, and nominally 1 mS. It is triggered by the leading edge of the received pulse. Its output is used below. Second opamp is used as an integrator. It ramps to the desired fullscale output in 0.9 mS. It has an FET switch to reset it; that switch is closed ("RESET") when the 1mS one-shot is active. It also has an FET switch on its input: the input is taken from a pot fed from a regulated negative voltage, so full-scale is both stable and adjustable. However, the input is switched off (switch open; no current into integrator) whenever either the one-shot is active or the input pulse is low. Thus the integrator is reset and ramps up for each pulse, and holds the value between pulses. The remaining two opamp sections are used as either a linear lowpass filter to smooth the output (if needed), or as a simple sample/hold sort of thing ... Now, you didn't say anything about the number of R's, C's, D's etc ... Hope this gives you some food for thought. It's only one of many ways of doing it... but the parts I'd have in my junkbox. Cheers, Tom Bruhns tomb%hplsla@hplabs.hp.com