Design of a Thermocouple Amplifier.


This is just a formatted-edited email thread exported from Eudora
from my mailbox using the content concentrator. The circuit above was
made by TF a student, This thread for circuit above has been put online
to share information. The part under “From: delabs” are my writing.
there may be some mistakes and broken links.

Electronic Tables and Charts

1) Reg diagram STC1000A :
Is the reference voltage REF used for cold temperature compensation ?
2) What is the function of q1 and q2 transistors ? Are they also BEL100N ?
3) What is the function of VR2 ?
4) What is the function of P2 , P1 ?
5) How can I calculate the voltage at the output IC2A?
6) Is is possible for you to send me a circuit explanantion which will help me to understand all the circuit operations ?

The circuit stc1000a.pdf is here name is “temperature controller, j and k input, pdf”

From: TF

is pin no 13 in header of the connector CON1 of board STC1000A. The
CON1 of STC1000A is plugged into CON1 of STC1000B main board. it goes to
Stable Reference LM336 2.5 IC2 of STC1000B, the entire STC1000x series
is a set. RT1 is for cold junction compensation, see how to build it in
dact0006.pdf .

Q1 and Q2 are BC547 small signal NPN,
The act like crude attenuators with the resistor networks. This circuit
is to linearize the output, study other circuits in my page you will
understand. When the analog voltage becomes a bit more than 1% off from a
line the switch can be put on. You can even use things like CD4066 and
other analog switches but it will increment the cost. IC2D is just a
differential opamp circuit see theory.

This amp
switches the transistors to linearize output at an area determined by
VR2. P1 and P2 are for ‘zero’ cold junction and ‘full scale’
calibration, these are given in the theory section. IC2A is a buffer
there is nothing to calculate, read the theory here you have to study many of the links i post and also many other links to other sites, that will help you more.


am planning to make a temperature controller using fuzzy logic
algorithm with a microcontroller as a project. I am planning to use a
thermistor ( NTC for the temperature compensation part, instead of the
CU wire). Will there be any problem with this ??

guide me on why you have used OP07 and LM324 in your cicuit ?Is it
because LM324 is a quad op-amp ? Why not use 2 OP07s ? Is it ok to go
with the 5V supply or should i used higher voltage using 7809 / 7819 ,
because OP07 and LM324 does not have rail to rail swings .
Please also tell me the function of P1/PR1 ( 1k poti )?

am still not clear on why the zener is required for reference voltage
?Also when will you place the jumper for Vcc instead of Vref ? I will be
providing a reference voltage for the serial ADC , isnt this sufficient
?I will be using a TL431 combined with LM317 to give a stable 5V for
the reference voltage.

I will linearise with the
firmware in the microcontroller by setting zones for the thermocouple
.Does this mean that I can delete the transistor linearizing section or
will it still help if it is there ? What accuracy in temperature may be
expected , if the serial ADC is a 12 bit one ?

From: TF

can use a thermistor or even LM335 temperature sensor for more
accuracy, it will work fine. see ST03_3.pdf on same page to know how to
use LM335 for Cold Junction Compensation.

OP07 is
costly but is is a very superior opamp 75uV offset, LM324 is cheap but
only for less gain Av. OP07 has giga ohms input impedance and very low
leakage, LM324 consumes less power.

+/- 5V is ok keep
it less than +/- 12V low ripple and regulated supply will work well.
P1/PR1 is to bias the Cu Cold junction thermistor, you did not trace the
circuits like i told?

LM336 is not a zener it is an IC
which is a precision temperature compensated low drift reference. It
behaves like a Zener and it even can be trimmed. It is made of many
transistors etc. Any good reference chip will do fine for 12 bit system
which is good for temperature measurement.

Accuracy of
+/- 0.3 % may be termed excellent but the curve needs linearization.
This has to be done by a look up table or you have to segment curve to
lines and make equations. If you use auto calibration and self learn
methods you can build the curve in the serial eeprom .

use a uC or uP you just need a amplifier as in 98spct36.pdf and mux as
in dact0024.pdf. the 8751 based flowmetercircuits are mixed up in three
sections this is a complete uC circuit.


I am needing some further clarifications in the issues. Please help me. In the drawing STC1000A :

1) R4 is mentioned as 10E and R23 is mentioned as 100E. I think this is an error and should be 10K and 100K. Is this correct ?

2) D1 I am keeping as IN4148 , since it is not mentioned in the circuit.

The temperature compensation using reference voltage and NTC I am not
connecting it to the OpAmp circuitry. I am connecting it to be 2 channel
serial ADC and doing the compensation in the firmware , by adding the
value to the value from the T/C in order to keep the analog circuit
simpler.Is this a valid way of doing it ?

4) Since my
entire fuzzy logic will be done from the firmware I am deleting the
parts of the circuit using IC2C and IC2B i.e. the o/p from the IC2A will
be directly fed to the AD converter(5V , 12 bit ) . The non-inverting
pin of IC2D will be tied to ground through R13.Is this ok ?

Is there a way of accurately calculating the o/p voltage from the IC2A
and from the OP07 opamps , so that I can cross check the temperature by
measuring with a DVM ?

Can you show me any documentation explaining me on how the transistors q1 and q2 will be used in linearisation.

From: TF

All resistor values are ok, this circuit is not for your need. You need an amplifier with a mux that is all.

amplifier with digital control, pdfdact0009.pdf In place of dip switch
control from your uC. and the output of this you give to A-D convertor.

Analog Section of 8751 based flowmeter, pdfdact0024.pdf this circuit will show you how you can do analog mux.
use one channel for Cold Junction Chip and another for Thermocouple.

is 1N4148 as it is small signal 100mA diode with trr of 4nS i think.
You can use this diode when you use it for low currents only.

temperature compensation using reference voltage and NTC you are right that is the way to do it. This is the way.. thermocouples-and-rtd

See the opamp-circuits
for opamp formulae. So you can calculate and try to figure out. You
need to put the study effort required, if you want to understand.

have to build a millivolt source like millivolt source, pdfST02_1.pdf
or just a 10 turn bourns trimpot with a good IC reference.


I tried out the formulae like you told me :

have modified the circuit and take out R4 and R5 and replaced with one
R4=20k. Please see the attachment of my modified circuit.

OP07 is in non inverting OP Amp , so the voltage output would be Vou t=
( Vin * ( 100+20)) 20 = Vin * 6 Minimum amplification = (Vin *
(200+20) ) 20 = Vin * 11 Maximum amplification

a temperature of 300 deg. Cent , J Type thermocouple , the voltage is
16.6 mV. The amplification assuming maximum will be 11 * 16.6 = 182 mV.
This is getting fed to the LM324 IC2A which is in the non amplification
mode and used as a buffer ,so that there will be no amplification.
The output from this will be given to the ADC.

am still not clear how the IC2D with the transistor follower will
amplify the signal voltage .And how the linearisations will happen. None
of the pages give any indication of the same.Can you please write a
small explanation of this ?It will help us a lot.

by the above the amplification seems too less to feed it to the ADC ( 0
~ 5V ). So should I increase the amplification or am i going wrong in
my calculations ?

From: TF

Now for your doubts, your calculations are correct and you have to make IC2A like IC1-OP07 with gain 10.

ADC is 5V full scale then the gain required is 5V / 16.6mV = 312. Now
have a gain of 30 in the OP07 and a gain of 10 in LM324 then 30 * 10 =
300. that means lm324 ic2a circuit is not buffer but non-inverting opamp
with gain 10.
remove IC2D, R7, R8, R12, R9, R11, R10, D2, R16,
Q1, R14 and R15. These components are for linearizeation so they are not
required. you said you will linearize with software then please omit

send the new circuit in *.gif format in the size
of 500 * 500 or less only. use irfanview to resize and make into gif or
png do not send bmp.


I am using
Eagle from Cadsoft , very simple and user friendly package. I am
sending the circuit as desired by you in jpg again with the alterations
you had suggested.I regret the inconvenenience to you.

, I need to know one more thing : Since the voltage will always be
positive , is it ok to use only +5V and ground the -5V ( pin 4 of Op07 )
to signal ground i.e. ground of 7805 , or will there be problems ? This
will simplify the circuit as I need not used a centre tapped
transformer , 7905 etc.

From: TF

need a dual supply for it to work properly, it is better not to do these
experiments now. Use +5 and -5 both using 7805 and 7905 if space is a
problem use 78L05 and 79L05. Also the 78LXX are low power TO92 packages
and 7805 is 1A TO220 package.

Also use a zener barrier,
or at least a series back to back two zener diodes to gnd after R2.
This will protect OP07 in case a high voltage is applied to its input,
this happens often.

note input offset voltage of OP07
is 75uV and LM324 is 2mV. The gain of OP07 should be more, that is 30
because 75uV * 30 = 2mV which should be offset. The gain of LM324 of 20
is bad because 2mV * 20 = 40mV which is a large error. keep gain of OP07
a bit high 30 to 40 the rest less than 10 in LM324.


Now I am understanding some of the design aspects involved. I will make the corrections which you have indicated.

you please give me some small hints on the linearisation circuit which
you had used with transistors ?Even though I will not be using it I
would like to learn more about that. I am attaching the jpg herewith. As
instructed by you I have adjusted the gains to have higher gain on the

I have also put the zeners back to back for
protection. I have included the preset for offset adjustment of
OP07. Kindly tell me if this circuit looks doable now.

From: TF

is a simple linear variable attenuator circuit, like a volume control.
You can do it many ways, with cmos switch, diode or even D-A circuits.

the circuit does is it changes the overall gain of circuit by
attenuation. It is a transistor switched resistor divider and is very
crude, but low cost. The opamp drives the transistor thru the linear
region to make it smooth. If you use that opamp with high gain or as a
comparator the correction will be stepped.

The way to
do with software is a simple eprom look-up-table. That means just set
ranges or segments with gain values. more segments more accurate will be
the system. Circuit is ok R3 is 300K and not just 300 ohms ? 300K is
correct, change it.

You can also add a 10 Megohm pull
up to +5V at the junction TC+. This is open sensor protection, in case
Thermocouple breaks, Required only in industrial temperature controllers
for protection.

The 1M R5 may not be required as
Thermocouple Resistance is in ohms. When you short TC+ and TC- the
output of circuit has to be zero, if not use offset preset to get zero.
Or you can feed 0 mV from mV source and calibrate.


I have made the changes.Is this how you meant the pull
up ? The question is , if the TC gets open then the Vcc. will be applied
directly to the NI terminal of the OpAmp . Will this not make the OpAmp
give the full output ? My view is that the output should be 0 when the
T/C opens ? Could you clarify on this ?

From: TF

The Pull-up 10M is now ok, you done it right. When a Thermocouple breaks the output of circuit will be max.

means it will be 3.5V which should make you turn off the heater in
software. If it is zero volts it only means you are measuring the
temperature in a cooling chamber. This may also be a temperature in some
cold countries. Then the circuit will never heat up the room.