Interesting sensor design problem

C

Charles Edmondson

Guest
Ok, I am trying to do a little sensor interface design, and running into
an interesting problem.

I am interfacing some of the Freescale pressure sensors to read
barometric pressure. The are basically bridge devices, so I get a
differential voltage on top of a offset.

Now here is my problem. I want to take the range of values for normal
atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp that range to
something like 0 to 3Vdc. So, how do I design a circuit that basically has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc

I am realizing that just a simple instrumentation amplifier ain't gonna
do it this time!

--
Charlie
--
Edmondson Engineering
Unique Solutions to Unusual Problems
 
In article <420d3fa7$1@news.cadence.com>,
Charles Edmondson <edmondson@ieee.org> wrote:
Ok, I am trying to do a little sensor interface design, and running into
an interesting problem.

I am interfacing some of the Freescale pressure sensors to read
barometric pressure. The are basically bridge devices, so I get a
differential voltage on top of a offset.

Now here is my problem. I want to take the range of values for normal
atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp that range to
something like 0 to 3Vdc. So, how do I design a circuit that basically has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc

I am realizing that just a simple instrumentation amplifier ain't gonna
do it this time!
A normal 3 op-amp dif-amp can shift the bridge voltage down to ground as
it amplifies it. To subtract away a voltage, you need a reverence of some
kind.

--/\/\/--- +Vref
!
(-)---!+\ !
! >--+-/\/\/-+--+----/\/\/---
--!-/ ! ! !
! ! ! !
+-/\/\/-- --!-\ !
! ! >------+---
\ --!+/
/ !
\ !
/ !
! !
+-/\/\/-- !
! ! !
--!-\ ! !
! >--+-/\/\/----+
(+)---!+/ !
/
\
/
\
!
GND
--
--
kensmith@rahul.net forging knowledge
 
On Sat, 12 Feb 2005 02:49:23 +0000 (UTC), the renowned
kensmith@green.rahul.net (Ken Smith) wrote:

In article <420d3fa7$1@news.cadence.com>,
Charles Edmondson <edmondson@ieee.org> wrote:
Ok, I am trying to do a little sensor interface design, and running into
an interesting problem.

I am interfacing some of the Freescale pressure sensors to read
barometric pressure. The are basically bridge devices, so I get a
differential voltage on top of a offset.

Now here is my problem. I want to take the range of values for normal
atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp that range to
something like 0 to 3Vdc. So, how do I design a circuit that basically has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc

I am realizing that just a simple instrumentation amplifier ain't gonna
do it this time!

A normal 3 op-amp dif-amp can shift the bridge voltage down to ground as
it amplifies it. To subtract away a voltage, you need a reverence of some
kind.

--/\/\/--- +Vref
!
(-)---!+\ !
! >--+-/\/\/-+--+----/\/\/---
--!-/ ! ! !
! ! ! !
+-/\/\/-- --!-\ !
! ! >------+---
\ --!+/
/ !
\ !
/ !
! !
+-/\/\/-- !
! ! !
--!-\ ! !
! >--+-/\/\/----+
(+)---!+/ !
/
\
/
\
!
GND

Just drop the resistor to +Vref and replace GND with Vref (needs to be
stiff). Maximize the swing at the first stage without risking hitting
the rails.



Best regards,
Spehro Pefhany
--
"it's the network..." "The Journey is the reward"
speff@interlog.com Info for manufacturers: http://www.trexon.com
Embedded software/hardware/analog Info for designers: http://www.speff.com
 
On Fri, 11 Feb 2005 15:58:21 -0800, Charles Edmondson wrote:

...
this is a contest entry.
....

Do your contributors get a piece of the action?
 
On Sat, 12 Feb 2005 02:49:23 +0000 (UTC), Ken Smith wrote:

In article <420d3fa7$1@news.cadence.com>,
Charles Edmondson <edmondson@ieee.org> wrote:
Ok, I am trying to do a little sensor interface design, and running into
an interesting problem.

I am interfacing some of the Freescale pressure sensors to read
barometric pressure. The are basically bridge devices, so I get a
differential voltage on top of a offset.

Now here is my problem. I want to take the range of values for normal
atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp that range to
something like 0 to 3Vdc. So, how do I design a circuit that basically has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc

I am realizing that just a simple instrumentation amplifier ain't gonna
do it this time!

A normal 3 op-amp dif-amp can shift the bridge voltage down to ground as
it amplifies it. To subtract away a voltage, you need a reverence of some
kind.

Look at the specs. Subtraction isn't the answer.
--
Best Regards,
Mike
 
In article <420d3fa7$1@news.cadence.com>,
Charles Edmondson <edmondson@ieee.org> wrote:

Now here is my problem. I want to take the range of values for
normal atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp
that range to something like 0 to 3Vdc. So, how do I design a
circuit that basically has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc
Could you clarify the numbers?

Vout = 0V at Vin = 6.68mV. A zero offset, no prob.

300*(13.6mV - 6.68mV) = 2.076V output swing.

It doesn't reach 3V?

--
Tony Williams.
 
Rich The Newsgropup Wacko wrote:
On Fri, 11 Feb 2005 15:58:21 -0800, Charles Edmondson wrote:


...
this is a contest entry.

...

Do your contributors get a piece of the action?

It depends on if there is any prize money worth piecing out... my last
try got me $300 (after spending about $400...)

--
Charlie
--
Edmondson Engineering
Unique Solutions to Unusual Problems
 
Fred Bloggs wrote:

Now you have the output of the IA=G*(V(+)-V(-)-44/10.044K*V(+)) and this
is IA=G*(Vdiff-44/10.044K*(Vcm+Vdiff/2))=G*(0.9978*Vdiff-0.004*Vcm), and
G=3V/(.9978*7m)=430 -> d(IA)/d(Vcm)= 430*0.004=1.72V/V, this is a not so
good sensitivity to Vcm. Compare this to the INA122 ckt with
d(Vout)/d(Vcm)=840uV/V (even with the crummy R-divider Vref ckt). You
would have servo 0.004*Vcm out of your classic IA.
And when you do that, you lose your offset.
 
Charles Edmondson wrote:

Ok, I am trying to do a little sensor interface design, and running into
an interesting problem.

I am interfacing some of the Freescale pressure sensors to read
barometric pressure. The are basically bridge devices, so I get a
differential voltage on top of a offset.

Now here is my problem. I want to take the range of values for normal
atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp that range to
something like 0 to 3Vdc. So, how do I design a circuit that basically
has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc

I am realizing that just a simple instrumentation amplifier ain't gonna
do it this time!

Why not? I just did this with :
http://www.analog.com/en/prod/0%2C2877%2CAD623%2C00.html
 
In article <n3k1ftlwvqmt$.dlg@ID-222894.news.individual.net>,
Active8 <reply2group@ndbbm.net> wrote:
[...]
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc
[...]
Look at the specs. Subtraction isn't the answer.

With r-r op-amps running on GND and +3, it looks like subtraction is just
right. What did I miss?

--
--
kensmith@rahul.net forging knowledge
 
On Sat, 12 Feb 2005 09:08:21 -0800, Charles Edmondson wrote:

Tony Williams wrote:

In article <420d3fa7$1@news.cadence.com>,
Charles Edmondson <edmondson@ieee.org> wrote:

Now here is my problem. I want to take the range of values for
normal atmosphere, 6.68mV to 13.7mV (I am using 3Vdc) and amp
that range to something like 0 to 3Vdc. So, how do I design a
circuit that basically has:
out = 0 for in < 6.68Vdc
out = 300*Vin for 6.68mVdc < Vin < 13.6mVdc
out = 3 for Vin > 13.6mVdc

Could you clarify the numbers?

Vout = 0V at Vin = 6.68mV. A zero offset, no prob.

300*(13.6mV - 6.68mV) = 2.076V output swing.

It doesn't reach 3V?


Hi Tony,
I would prefer that it did. Was just spewing numbers to get the general
idea across. Wanted to reject values outside that range, and then amp
that range to my full voltage swing...
Change the gain to 433.

--
Best Regards,
Mike
 
On Sat, 12 Feb 2005 15:28:12 -0700, hamilton wrote:

Why not? I just did this with :
http://www.analog.com/en/prod/0%2C2877%2CAD623%2C00.html
How much do they cost?

--
Best Regards,
Mike
 
In article <17d43hzuhe9th.dlg@ID-222894.news.individual.net>,
Active8 <reply2group@ndbbm.net> wrote:
[...]
But will r-r OAs mess with the accuracy near the ends of the input
range? Not that we know the required accuracy... just a thought.
Lightly loaded R-R op-amps will swing within a few mV of the rail. I
remember a cute app-note where a CMOS pair was used as the output of a r-r
op-amp making it very good indeed.

I bet we could come up with a way to use two sections of the r-r op-amp
and a couple of largish transistors to make an almost perfect r-r op-amp.
If the supply voltage was more, I'd suggest MOSFETs. As it is a TIP-35 ad
TIP-36 running in inverted mode may be just the ticket.




--
--
kensmith@rahul.net forging knowledge
 
On Sun, 13 Feb 2005 17:25:07 +0000 (UTC), Ken Smith wrote:

In article <luc04q468arn$.dlg@ID-222894.news.individual.net>,
Active8 <reply2group@ndbbm.net> wrote:
[...]
I don't recall seeing any circuits using transistors to make a
better r-r, like you suggest doing with the TIPs. Again, we don't
know what accuracy the OP needs at the endpoints, but how perfect
can we get?

How much money do you have?

I haven't actually tried the TIP35 but I suspect that you could easily get
to within 1mV of the rail at a few mA of load current. Using a transistor
inverted like that gives a quite low saturation voltage.
Where can I find an example of this circuit?
--
Best Regards,
Mike
 
In article <luc04q468arn$.dlg@ID-222894.news.individual.net>,
Active8 <reply2group@ndbbm.net> wrote:
[...]
I don't recall seeing any circuits using transistors to make a
better r-r, like you suggest doing with the TIPs. Again, we don't
know what accuracy the OP needs at the endpoints, but how perfect
can we get?
How much money do you have?

I haven't actually tried the TIP35 but I suspect that you could easily get
to within 1mV of the rail at a few mA of load current. Using a transistor
inverted like that gives a quite low saturation voltage.
--
--
kensmith@rahul.net forging knowledge
 
In article <4d3c8dee3etonyw@ledelec.demon.co.uk>,
Tony Williams <tonyw@ledelec.demon.co.uk> wrote:


| |
\| |
npn|---------------+
e/| _|_
| \_/
| |
[8k2] [6k8]
| |
--+----------------+--0V

The two transistors inject about 100uA through the
68R resistor. 100uA through 68R is 6.8mV. The two
opamps are forced to adopt a reverse-offset in order
bring things back again.
Use 1% resistors please. :) The OP posted 3 digit numbers.


--
--
kensmith@rahul.net forging knowledge
 
In article <4210dc4c$1@news.cadence.com>,
Charles Edmondson <edmondson@ieee.org> wrote:

BTW, is that a diode in the emitter bias circuit?
Or something else....
They are diodes, compensating for the dVbe/dT of
their respective transistors. Diode-connected
transistors work slightly better, as below.

| |
| +----+
\| | |/c
npn1|--+--|npn2
e/| b |\e
| |
| |
[8k2] [6k8]
| |
+--------+----

Connect npn2's base to collector.

Good thermal coupling is required to avoid drifts
due to stray breezes. Mount the two transistors
alongside each other and glue them together. A
dollop of hot-melt glue over the pair is useful.

--
Tony Williams.
 
In article <42121DD7.1000109@nospam.com>,
Fred Bloggs <nospam@nospam.com> wrote:

On second thought, the transistor current source offset is not so
good in this application for two reasons: 1) it is not
ratiometric to the battery voltage, and 2) it takes a lot
overhead ~ 1.3V to each rail which does not leave a lot of room
for VCM variation- especially when you consider battery drain
down.
That particular transistor current source has a poor
temperature stability. Suggestion withdrawn.

--
Tony Williams.
 
Charles Edmondson wrote:
Fred Bloggs wrote:



Fred Bloggs wrote:

in | | |/ | |
| 100K | |
| | | |
| | | |
+------------------+ |
V | |
ref +----10K----+-------. |
| |100n | |
(66.2mV) e === /| | |
\| | /-|--' |
|--6.8K---+-< | |
/| \+|-----------+
| 2N3904 \|
gnd


That should be changed to below for 120dB attenuation of common mode
noise on the sensor at line frequency with ultimate attenuation of
60dB at high frequency, using something like an OP291:
View in a fixed-width font such as Courier.

| | | | | |
| | | | | 3V |
| | | | | |+ |
| | | | +--||---+--Vbatt
| | | | | | |
| | |\ | | | |
| +-----|-\ | | | 443K
- | | | >-- | | |
V ------|---|-----|+/ | | |
in | | |/ | | |
| 100K | +--10K--+
| | | | |
| | | gnd |
+------------------+ |
V | |
ref +------+------------10K----. |
(66.2mV) |680n | | |
=== e 2N3904 /| | |
| \| /+|--' |
100 |---6.8K----< | |
| /| \-|----'
| | \|
gnd gnd

Hi Fred,
Decided to try simulating this, and just simplified it as a 66.2mV
voltage source tied to Vref. All this does is move the OUTPUT up the
corresponding voltage, doesn't move it down at all. If I inject a
negative voltage here, it lowers the output, but it takes a big voltage
to make much difference...

I guess I am missing something...
It is not how small the signal is, it is how far removed from 1.5V it
is. This is 66.mV-1.56=-1.43V. Since the IA has a gain of
(5+200k/957)=214, this -1.43V corresponds to an equivalent differential
input of -1.43V/214=-6.7mV- in other words the output due to a 6.7mV
input has been subtracted from the output so that when the input is
6.7mV,the IA will be 1.5V. Then for every volt beyond that threshold the
output is gained by 214 and added to 1.5V. By the time you reach 13.7mV
that is 13.7mV-6.7mV=7mv *beyond* 6.7mV so IA output is 214*7mV+1.5V=3V.
Your IA transfer function therefore runs linearly from 1.5V to 3V as the
input differential runs from 6.7mV to 13.7mV. You then want to drive
this into that final stage OA which does the 2*(Vin-1.5V) to translate
the output excursion to 0V to 3V for the same input range. If you want
some offset other than 6.7mV, say Voff, then this would be
Voff=(1.5V-Vref)/214, within limits, where Vref is voltage at Vref input.
 

Welcome to EDABoard.com

Sponsor

Back
Top