thermocouples

David M Parrish dmp at bmesun1.MCG.EDU
Fri Mar 15 17:54:33 GMT 1996


> > I use the AD594 device to compensate and linearize thermocouples.  
> > 
>   Just because the specs say something like "output is 10mV/Deg C" dosn't
> mean that these devices linerize themocouples.  I don't think they do.

Nope. It amplifies and provides an ice reference, but doesn't do 
linearization. The polynomials to linearize the output of all the common 
thermocouples are well known and I've attached a small Pascal program I used 
for demonstration with the AD595 and a K thermocouple. You can use the 
polynomial in the controller firmware, or better yet, use this program 
to generate a look-up table.

> > Does anyone have experience multiplexing in front of one?

I may be a bit banger, but I know that mux'ing millivolt signals can 
be tricky. Any analog guru's out there?

Program Kcouple;
{
	AD595	outputV= (K voltage + 11uV)*247.3
		K volt = outV/247.3 - 11uV
		K volt =4.043672e-5*digits - 1.1e-5	(10.24Vref)
		K volt =2.9631204e-5*digits - 1.1e-5	(15.00Vref)
		K volt =1.9754136e-5*digits - 1.1e-5	(15.00Vref, 2/3 gain)

	EGT	max = 954oC (1750oF)

	K thermocouple:	0 to 1370 oC	+/- 0.7 oC
}


var	x	: integer;
	v, T	: double;

Begin
writeln('  x    K mV     T oC          T oF');
{        NNNN NN.NNNN NNNN.NNN NNNN NNNN.NNN NNNN }
for x:=0 to 2047 do
  begin
{ v:= 4.043672e-5*x - 1.1e-5;}
  v:= 1.9754136e-5*x - 1.1e-5;
  T:=	0.226584602 +
	    v*(24152.10900 +
	      v*(67233.4248 +
		v*(2210340.682 +
		  v*(-860963914.9 +
		    v*(4.83506e10 +
		      v*(-1.18452e12 +
			v*(1.38690e13 +
			  v*(-6.33708e13))))))));
  writeln(x:4,(v*1000):8:4,T:9:3,T:5:0,((T*9/5)+32):9:3,((T*9/5)+32):5:0);
  end;
End.


---
David Parrish
Hey, don't laugh.
I taught myself Pascal
with the original Wirth compiler.



More information about the Diy_efi mailing list