Pages: [1] 2   Go Down
Author Topic: Cylinder head temperature sensor?  (Read 4187 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 11
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm looking to make a few pieces of my gauge set up out of nixie tubes.  I've already made a lovely clock out of the tubes so I know how to set up that portion of this..
So my issue is, how can I get the temperature from a cylinder head?  C.H. gauges as far as I know are wrenched down with the sparkplug and then a wire goes to the gauge.  I've been looking for a temperature sensor that would work the same, but all I can find is that ambient temperature transistor looking device.

It needs to be able to read 0-500 degrees Fahrenheit. 

Any tips on what to do?



Logged

nr Bundaberg, Australia
Offline Offline
Tesla Member
***
Karma: 127
Posts: 8517
Scattered showers my arse -- Noah, 2348BC.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

A thermocouple will do well over 500 degrees, as to how you mount it, no idea.

______
Rob
Logged

Rob Gray aka the GRAYnomad www.robgray.com

0
Offline Offline
Shannon Member
****
Karma: 206
Posts: 12179
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

For high temperatures like that standard thermocouples are often used - http://www.ladyada.net/learn/sensors/thermocouple.html - the sensor you picture is probably a thermocouple fashioned as a washer.
Logged

[ I won't respond to messages, use the forum please ]

Offline Offline
Newbie
*
Karma: 0
Posts: 11
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Oh, very interesting!  I was reading about thermistors and thermocouplers but was a bit confused, that link is absolutely perfect!  This is great news indeed!  At this point I'm debating if I want to use numbers to display the temperature or a bargraph.   Hrmm...
Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

A thermocouple would be a good choice, they are used for CHT (and EGT) measurement in light aircraft. Thermocouples produce a low voltage which needs amplifying before you can read it from an Arduino, and a specialist thermocouple amplifier chip is recommended. See e.g. http://www.adafruit.com/products/269.
Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Portland, OR
Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

This is an old thread, but for those still looking for solutions to measure CHT (and since this comes up when searching for CHT and arduino in Google), be aware that the thermocouple amplifier breakout board linked above does not support probes with a grounded junction. IOW, those common washer style CHT probes won't work with the MAX31855 based amplifiers.

Holger
Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I think the MAX31855 will read the temperature OK if you connect the grounded side to the T- input (pin 2), because this input is connected to ground inside the chip during temperature detection. However, the fault detection circuitry will indicate a short to ground. I don't think this will affect the ability of the device to produce a temperature reading. So if you have a MAX31855, I suggest you try it out.

Alternatively, use an instrumentation amplifier such as INA122 to amplify the thermocouple signal.
« Last Edit: June 04, 2013, 03:39:44 am by dc42 » Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Portland, OR
Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hmm, maybe you're right! I just checked the code for the Adafruit MAX31855 breakout board, and it has this:

Code:
if (v & 0x7) {
    // uh oh, a serious problem!
    return NAN;
  }

  // get rid of internal temp data, and any fault bits
  v >>= 18;
  //Serial.println(v, HEX);

  // pull the bottom 13 bits off
  int16_t temp = v & 0x3FFF;

Tomorrow I'll comment out that first if block, and test again.

Just to be sure: those washer style CHT probes are grounded at the hot junction, not T-.  *)

Holger

*) Well, AFAIK that is.
« Last Edit: June 04, 2013, 04:06:04 am by shadowbrush » Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Just to be sure: those washer style CHT probes are grounded at the hot junction, not T-.  *)

Provided that the output from the non-grounded side is positive, that should be OK. However, ground noise may be a problem - in which case the instrumentation amplifier is the way to go.
Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Portland, OR
Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bingo, with that code change I'm getting temperature readings with grounded probes. This is great, and I can't thank you enough to point me into the right direction! I was about to throw the towel with the cumuli towering up and my motorglider still on the ground without engine temps.

Yes, I've been fighting ground noise when using Auber Instruments pyrometers to indicate engine temps in the past, and learned a bit about ground loops. I hope this won't be a major issue again this time. I'm fine averaging readings in 10 second intervals, still fast enough to warn about engine overheating.

Thanks,
Holger
« Last Edit: June 05, 2013, 01:13:47 am by shadowbrush » Logged

United Kingdom
Offline Offline
Tesla Member
***
Karma: 224
Posts: 6614
Hofstadter's Law: It always takes longer than you expect, even when you take into account Hofstadter's Law.
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm glad you got it working! You might want to reinstate the code you commented out, modified so that it is still sensitive to the open-circuit bit, because thermocouples do sometimes go open-circuit - although it's usually the EGT ones rather than the CHT ones in my experience (of a PA28R with a turbocharged Continental engine). That's on the assumption that the fault detection can still detect an open circuit thermocouple when the T- pin is grounded - but you can easily test that.
« Last Edit: June 05, 2013, 03:20:43 am by dc42 » Logged

Formal verification of safety-critical software, software development, and electronic design and prototyping. See http://www.eschertech.com. Please do not ask for unpaid help via PM, use the forum.

Portland, OR
Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Another good thought. The Adafruit library still provides the error through readError(). That part was unaffected by my commenting out. In my case it's of little relevance, because any value below 100ºC is not a valid engine temperature (while it's running). Yeah, both probe types seem to break occasionally. Or worse, go out of calibration with the tendency to read low.

I'm curious how the Arduino based data collection performs out in the field. It's my first attempt.

Thanks,

Holger
Logged

New Jersey
Offline Offline
God Member
*****
Karma: 2
Posts: 525
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bingo, with that code change I'm getting temperature readings with grounded probes. This is great, and I can't thank you enough to point me into the right direction! I was about to throw the towel with the cumuli towering up and my motorglider still on the ground without engine temps.

Yes, I've been fighting ground noise when using Auber Instruments pyrometers to indicate engine temps in the past, and learned a bit about ground loops. I hope this won't be a major issue again this time. I'm fine averaging readings in 10 second intervals, still fast enough to warn about engine overheating.
What exactly did you change in the code?  I have three thermocouples connected to three Adafruit breakout boards. One is connected to a motor housing. The other to are in thermowells measuring water temp. I have had lots of problems (mostly reading 32F) maybe this grounding issue is the cause.
Logged

Portland, OR
Offline Offline
Newbie
*
Karma: 0
Posts: 23
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

What exactly did you change in the code?  I have three thermocouples connected to three Adafruit breakout boards. One is connected to a motor housing. The other to are in thermowells measuring water temp. I have had lots of problems (mostly reading 32F) maybe this grounding issue is the cause.
I commented out Adafruit_MAX31855.cpp, line 71-74:
Code:
  // if (v & 0x7) {
  //   // uh oh, a serious problem!
  //   return NAN;
  // }
The MAX31855 will return the type of error that would get you the 32F reading. Use Adafruit_MAX31855::readError(). I don't have the error codes here, but it will tell you whether the probe is open or grounded.

Holger
Logged

New Jersey
Offline Offline
God Member
*****
Karma: 2
Posts: 525
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

What exactly did you change in the code?  I have three thermocouples connected to three Adafruit breakout boards. One is connected to a motor housing. The other to are in thermowells measuring water temp. I have had lots of problems (mostly reading 32F) maybe this grounding issue is the cause.
I commented out Adafruit_MAX31855.cpp, line 71-74:
Code:
  // if (v & 0x7) {
  //   // uh oh, a serious problem!
  //   return NAN;
  // }
The MAX31855 will return the type of error that would get you the 32F reading. Use Adafruit_MAX31855::readError(). I don't have the error codes here, but it will tell you whether the probe is open or grounded.

Holger

Just tried your suggestion, but it didn't help. My temp reading are fine when I only have one thermocouple hooked up, but as soon as I have more then one, I have problems.  I'm giving up on thermocouples and am going to switch to 1-wire temp sensors.
Logged

Pages: [1] 2   Go Up
Jump to: