Delaying a square waveform, passives and a transistor only? - Page 1
Forum section: electronics / beginners

author: Infraviolet
author_rank: Super Contributor
timestamp: January 14, 2023, 02:32:29 am
content: I'm trying to delay a square waveform (levels are only ever 5v or Gnd, but pulse lengths can be analogue) by a certain number of microseconds (anything in the 50us to 300us range would do well), I don't want to distort it and soften the rise and fall times.Is there a way this can be done using just passives? or just passives and one or two transistors?Thanks

author: py-bb
author_rank: Regular Contributor
timestamp: January 14, 2023, 03:47:37 am
content: ...yes but there's no passive component which simply delays what goes in. A wire is a sort of delay line in that sense.More detail needed but generally no. For small delays yeah a wire does it. Beyond that you're looking at (re)generation, and then you get into PLL territory.

author: BillyO
author_rank: Super Contributor
timestamp: January 14, 2023, 03:59:28 am
content: No, there is no way to do this with just passives with or whithout a couple of transistors. The previous suggestion of using a very long (10km to 65km) wire would certainly introduce capacitance and inductance and severe attenuation that will change the pulse shape. The only way to do this at reasonable cost (and I'm talking around thousands of dollars for a one-off build) is to basically build most of a high speed oscilloscope. You would need a carefully designed front end, a high speed ADC, an FPGA with DSP capability, some memory, a high speed DAC, and a CPU to tie it all together.Can you give us an idea of your use case?

author: srb1954
author_rank: Super Contributor
timestamp: January 14, 2023, 04:16:24 am
content: Quote from: Infraviolet on January 14, 2023, 02:32:29 amYou can passively delay a signal with a delay line, which is basically a length of special coax cable, but you would need a very long length of cable to get a 50us delay. Coax cable delay lines were used on old analog scopes but were also available as external units e.g. Tektronix 7M11, however this only provides a signal delay of 75ns.You can emulate a coax cable delay line using a ladder of LC low-pass filter elements to obtain a signal delay, but this is at the expense of signal rise time. You would need a large number of LC elements to obtain a long delay time and simultaneously obtain a good rise time.Since you are dealing with digital signals I think is easier to use digital components rather than trying to do the rather more difficult exercise of a delaying a digital signal using analog techniques. A pair of monostables with some simple gating would accomplish the task quite easily plus it would be enormously easier to adjust the delay times should you need to.

author: iMo
author_rank: Super Contributor
timestamp: January 14, 2023, 08:46:48 am
content: "Delaying a square waveform, passives and a transistor only?"Theoretically it is doable, provided you would breadboard an analogue of a "CCD delay line".A CCD delay line consists of transistors and passives only, so that could be the answer too..

author: magic
author_rank: Super Contributor
timestamp: January 14, 2023, 10:11:30 am
content: Passives only: not really; too much time for a simple delay line.Passives and two transistors: probably not.Passives and five or so transistors: RC filter the waveform to elongate the edges, build a transistor comparator to produce fast transitions at 50% crossing. Don't forget positive feedback / Schmitt triggering.Passives and an IC comparator: see above.

author: John B
author_rank: Frequent Contributor
timestamp: January 14, 2023, 10:17:47 am
content: I've used LM393/339 comparators as a delay - up to 1us delay in practical terms.For what your describing a small microcontroller would be the way to go.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 14, 2023, 02:10:59 pm
content: What bandwidth / frequency range / pulse width range?Generally, passive delays get worse quadratically as bandwidth and delay go up.The quartz delay line from a PAL receiver (VCRs also used one) could be used for a very particular 64µs delay, and about a MHz bandwidth. A pair of mixers are required, as the delay line has an AC passband (around a center frequency of a few MHz, IIRC). This gives a bandwidth of about a MHz or maybe two (I forget what exactly). (The mixer, local oscillator, and associated filters and amplifiers, can all be done in transistors, though you will need more than one. Probably more like a dozen to do a good job of it.)An LC allpass filter can afford 180 degrees phase shift per section, and indeed these (lumped equivalent delay lines) were used by Tektronix in the 40s-60s to compensate for trigger vs. vertical amplifier propagation delays in their oscilloscopes. Dozens of elements were required for the ~200ns delay at up to 100MHz bandwidth.Similarly, slew rate circuits can delay a logic edge transition arbitrarily, but are only practical for pulse widths less than the delay per stage.A proper transmission line (coax, etc.) does a good job at very high bandwidth (100s MHz), but is expensive for any kind of length (i.e. practical for maybe 100s of ns). And needless to say, isn't very adjustable either.Anything else, you probably want a digital or hybrid method. Shift registers, bucket brigade, even stuff like magnetic recording onto a loop (tape or disc). Tape loop audio reverbs were common in the 60s and such.Note that digital methods are generally time-quantized, so you will lose the continuous timing of your source, or will need analog/DSP methods to recover it.Tim

author: Terry Bites
author_rank: Super Contributor
timestamp: January 14, 2023, 04:07:25 pm
content: I'd use a tiny logic function that will takes up very little pcb area and likely cost less than a few passives and transistors.eg a 74LVC2G series.

author: Infraviolet
author_rank: Super Contributor
timestamp: January 14, 2023, 07:29:23 pm
content: I've taken a further look at the situation, actually all I need to do infact turns out to be getting a high (5V) pulse (usual level Gnd) of around 10uS length to trigger another similar (not necessarily exact length) pulse on another wire at between 50uS and 300uS later.THE SITUATION IS SIMPLER THAN I THOUGHT, I ONLY NEED TO DELAY A SIMPLE PULSE, NOT A WHOLE WAVEFORMIs this now more feasible?Thanks

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 14, 2023, 07:47:01 pm
content: Again, what's the pulse rep rate?Tim

author: Infraviolet
author_rank: Super Contributor
timestamp: January 14, 2023, 09:12:16 pm
content: Repetition rate would perhaps be around 800uS between pulses. Pulse length around 10uS, delay needed anywhere from 50uS to 200uS. I wouldn't want rising or falling edges to be slower than 1uS each after the delay, before the delay they are 1us or less (haven't got circuit to hand right now and didn't think to check exact rise time earlier).But note that all those times are all approximate, this is not a constant wave, the 800uS gaps can be longer, the pulse lengths can vary a bit, but I only really need a reliable 10uS pulse to be output regardless of the input pulse length.Thanks

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 14, 2023, 10:14:05 pm
content: Ok, then only one pulse needs to be delayed, and a flip-flop --> integrator --> comparator --> monostable will do. The f/f triggers a delay cycle to begin, and is reset when the desired delay has passed. A 555 monostable would do this, but I spell out the elements because the timing capacitor should be handled well....Well... assuming you want variable timing. You haven't really even specified what this delay should be, beyond a crude range. Is it variable by a voltage? Or just a trimpot or something? Does it need any linearity or can it just be whatever? How precise/stable does a given setting need to be? There's an awful lot you're leaving out here...So, probably a pair of 555s, or a 556, or about a dozen transistors can synthesize the same thing in discrete form if you insist. Various logic family monostable timers could be used as well.Tim

author: Infraviolet
author_rank: Super Contributor
timestamp: January 14, 2023, 10:43:49 pm
content: Sorry, when I first saw my problem I thought I was dealing with something much more complex than it actually turns out to be, I had made some mistaken assumptions about what the circuit actually had to do. And it was late at night and I wasn't thinking quite clearly enough to word it all properly.This is about sending pulses to trigger a reset switch within an op amp integrator circuit, and due to various things these pulses have to arrive at a delayed time after waveforms related to those which feed the integrator have experienced pulses. I was hoping to do this in a way which would take minimal board space and not require any extra ICs beyond those already in use, hence my hope to use passives and just one or two transistors. The pulse has to be more than a minimum length, 10us, becausde otherwise the switch isn't on long enough to drain the intgerator's capacitor, and must not go on too long lest the integrator still be resetting itself when the next incoming event for it to intgerate arrives.I didn't ask for variable timing, but rather gave those 50us to 300us range because I expected that with just passives things might get a bit imprecise, so I was indicating the range of delays I'd be happy with, anything from 50uS to 300us would do, and as long as it was reliably within that range I don't think inconsistency would actually affect anything even if one delay was 50us and the next was the full 300us, the 50us ensures that the integrator has already reached a stable value after the event which entered it. Having the 10us reset pulse (positive pulse) arrive more than 50us after the initial event ensures it won't intefere with the value stored in the integrator at the instant another part of the circuit smaples that integrator's accumulated value, and having the reset pulse over before 300us ensures it won't possibly intefere with the next incoming event for the integrator to integrate.I already have circuitry in place which gives a 10us positive pulse at the time the integratable event begins, and it is this pulse I am trying to make a delayed "copy" of.Two 555's or 6 transistors is definitely more space-hungry than I'd hoped for though.Thanks

author: jonpaul
author_rank: Super Contributor
timestamp: January 15, 2023, 03:28:00 am
content: see Eventide Digital Delay and Instant Flanger in Eventide legacy.Jon

author: T3sl4co1l
author_rank: Super Contributor
timestamp: January 15, 2023, 12:02:58 pm
content: Ah, so timing sequences in an analog circuit, and they can all be fixed, and presumably the absolute timing is irrelevant. Yeah, look up a few monostable timers, depending on edge or level trigger, you'll have what you need.Depending on how many timers you have there... you might find it easier to run a state machine. Instead of a chain of overlapping timers, use one master sequencer. This could be a free-running oscillator, or triggered by the start event; when triggered, a counter/decoder (held in reset before triggering) starts advancing, and when it reaches MAXVAL, clears the trigger (so, there's a f/f in front of everything). Then you have fixed delays and pulse widths per each output, and you can diode-OR (or logic proper) any combinations you like to get longer, offset, or overlapping pulses. Or cascade counters and decoders to get more pulses, etc. Also trivial to get on-off-on sequences in various patterns.In case the absolute timing should be relative to the trigger, a gated oscillator can be used for clock, simple enough.This is an old problem in computing: while it's easy enough to make a logic circuit with sequenced operations (like the various operations that turn a pile of bus gates, latches, ALU etc. into a CPU) with timers, it's notoriously difficult to resolve the logic of so many overlapping signals triggering each other. Sequential logic (combinatorial logic into a clocked flip-flop; minimal delays, everything propagates before the next cycle) has been the dominant design pattern for a very long time, with good reason.Now, maybe you only have a handful of delays, they're not interconnected or overlapping, and you have absolutely no plans to add more -- in that case, the design is easy, and, this is just to be aware there is a completely different (and ultimately easier) way to do it, should you need more.Tim

author: BillyO
author_rank: Super Contributor
timestamp: January 15, 2023, 03:10:46 pm
content: Perhaps a single 74LS123 will do the job. It will only require 2 resistors and 2 capacitors along with the chip. Rise times will be plenty fast (better than 1/10 us). They can be had pretty cheap.You could also use a little microcontroller, like an ATtiny13. It's only 8 pins, needs no external components and can be re-programmed if things need changing.

author: Zero999
author_rank: Super Contributor
timestamp: January 15, 2023, 06:03:04 pm
content: Quote from: Infraviolet on January 14, 2023, 10:43:49 pmSorry, that doesn't make much sense.What exactly are you trying to do?QuoteAn acoustic delay line could do that in theory, but will still take up a considerable amount of space.

author: nali
author_rank: Frequent Contributor
timestamp: January 15, 2023, 06:37:35 pm
content: LTC6994 will do what you want, 2x3mm DFN small enough?Good luck getting hold of one though...

author: BillyO
author_rank: Super Contributor
timestamp: January 15, 2023, 11:32:17 pm
content: Quote from: Zero999 on January 15, 2023, 06:03:04 pmHe's looking for a sub 1 us rise time. What acoustic delay lines are designed for 3MHz+ bandwidth?

author: DavidKo
author_rank: Frequent Contributor
timestamp: January 16, 2023, 01:10:02 pm
content: TV delay line mentioned by T3sl4co1l is "acoustic". Dave created aabout it.I think that Infraviolet wants to calculate RCL line with slow propagation - he can starthere. I cannot say anything about the signal deformation. He need to have comparable delays for frequencies in his pulse. At the end he can use Schmidt trigger to recreate the input signal. Delaying a square pulse is not ideal. The spectrum is too wide and the propagation speed for different frequencies can vary a lot.

author: Infraviolet
author_rank: Super Contributor
timestamp: January 20, 2023, 02:34:29 am
content: Not as pretty as I'd have liked, but in the end I found myself forced in to using:A 555 in monostable mode triggered by the falling edge of a pulse (the triggering signal is already a short downward pulse shorter than the delay needed)The output of this 555 then goes through a capacitor and pullups setup (as discussed in another recent thread of mine), which ends up outputting just a negative short pulse at the moment the 555's long output pulse (delay length) ends, with diodes and stuff to eliminate the positive pulseThe negative pusle gets given to a single transistor inverter circuit, the final output being a positive pulse delayed after the initial input by the 555 timer's delay.The actual length of the delayed pulse itself is adjustable via changing the capacitor's size.

author: Terry Bites
author_rank: Super Contributor
timestamp: January 20, 2023, 01:02:32 pm
content: Just an RC between a couple of schmitt inverters??74HC2G14?

author: dobsonr741
author_rank: Frequent Contributor
timestamp: January 20, 2023, 03:15:12 pm
content: Yes and yes. That how it’s done. RC and a Schmitt trigger buffer, 7414. Two buffers if don’t want inverted signal.