Heher
Computer
- Oct 2, 2002
- 11
<Cross posted in Comm & Signal forum>
All,
I am a newbie Electronics Engineer and am working on my first circuit. It is a simple signal conditioner which is just designed to take an input signal (square or sin wave, 50mV to 10V & 10Hz to 20kHz), clean it up and then output it via a RS-485 driver for dual logic levels.
Eveverything seems to be working just fine as far as the circuit goes except for one part, the Hysteresis filter at the end of the signal path (right before the last component, the RS-485 driver).
Initially the signal is passed through a 10Hz high pass filter and then to an AD620 Instrument amp which is set to amplify at 1000 gain, (because this circuit must accept input from 50mV to 10V) then through a 40kHz low pass Bessel 2-pole filter. The signal coming out of the Bessel filter is then offset 2.5 volts with an offset follower and offset summer. The signal is then passed on to a D1N4148 voltage limiter to establish the signal from ~0 to ~5V. At this point, the signal is very clean and looks great within the required frequency range.
The last stage after the voltage limiter is a hysteresis filter. This is where things go bad. I modeled the hysteresis filter (Schmitt trigger) out of p. 231, The Art of Electronics 2nd ed. I am using a LM2904 op-amp with 5V Vcc and V+, V- is GND. All resistors are 10k (I was able to get the low switch point at ~1.7V and the top of the band at ~3.0V). A 33pF speedup capacitor is used across the feedback resistor. A pullup resistor shouldn't be needed because of the op-amp used here.
The filter works fine as I ramp the frequency up to around 3kHz which is where the output changes from a nice square wave to something with a tiny peak at the top and no pulse width and as I continue to increase the frequency the amplitude of the output finally sinks down to almost nothing above 20kHz. This is causing the RS-485 driver to only detect a HIGH for a very small period of time and thus I am getting a pulse waveform out instead of a nice filtered square wave. The output wave (@ 20kHz) has a pulse width of around 5us which should obviously be around 10 times that for a 20kHz wave.
Thanks for any help and I apologize for the lengthy post.
All,
I am a newbie Electronics Engineer and am working on my first circuit. It is a simple signal conditioner which is just designed to take an input signal (square or sin wave, 50mV to 10V & 10Hz to 20kHz), clean it up and then output it via a RS-485 driver for dual logic levels.
Eveverything seems to be working just fine as far as the circuit goes except for one part, the Hysteresis filter at the end of the signal path (right before the last component, the RS-485 driver).
Initially the signal is passed through a 10Hz high pass filter and then to an AD620 Instrument amp which is set to amplify at 1000 gain, (because this circuit must accept input from 50mV to 10V) then through a 40kHz low pass Bessel 2-pole filter. The signal coming out of the Bessel filter is then offset 2.5 volts with an offset follower and offset summer. The signal is then passed on to a D1N4148 voltage limiter to establish the signal from ~0 to ~5V. At this point, the signal is very clean and looks great within the required frequency range.
The last stage after the voltage limiter is a hysteresis filter. This is where things go bad. I modeled the hysteresis filter (Schmitt trigger) out of p. 231, The Art of Electronics 2nd ed. I am using a LM2904 op-amp with 5V Vcc and V+, V- is GND. All resistors are 10k (I was able to get the low switch point at ~1.7V and the top of the band at ~3.0V). A 33pF speedup capacitor is used across the feedback resistor. A pullup resistor shouldn't be needed because of the op-amp used here.
The filter works fine as I ramp the frequency up to around 3kHz which is where the output changes from a nice square wave to something with a tiny peak at the top and no pulse width and as I continue to increase the frequency the amplitude of the output finally sinks down to almost nothing above 20kHz. This is causing the RS-485 driver to only detect a HIGH for a very small period of time and thus I am getting a pulse waveform out instead of a nice filtered square wave. The output wave (@ 20kHz) has a pulse width of around 5us which should obviously be around 10 times that for a 20kHz wave.
Thanks for any help and I apologize for the lengthy post.