DS2760 thermocouple temperature reading strange problem
MrBean
Posts: 8
Hi everyone,
I posted this in the sensors section but I didn't get any responses I'm thinking because I should have posted it here where people are using the propeller chip.
I'm having a strange problem with the DS2760 thermocouple kit. I am using it with the propeller chip and I am using the only object available from the propeller object exchange.
Here is the link to the webpage to download that object.
http://obex.parallax.com/objects/385/
I am recording the temperature to a variable and then displaying that variables data in the parallax serial terminal to see if I am getting a correct temperature reading. It shows the correct temperature for anywhere between 0 and 25 degrees celsius, but when the temperature goes higher than that it gives me an erroneous reading of 65535 no matter how high I go with the temperature. What is really strange is that if I measure the temperature of a frozen item from my freezer so I can get the DS2760 to read to a very low temperature or even all the way down to zero and then reset the propeller chip, all of a sudden I am able to get temperature readings over 100 degrees celsius and it seems that everything is functioning correctly. Then after some time, maybe a few minutes, maybe longer, it stops working again at any temperature above 25 degrees celcius giving me 65535 again. Measuring the temperature down to zero and reseting the propeller chip doesn't even work all the time. Also the temperature used to work until 28 or 29 degrees celsius in the summer when the temperature in the room was hotter. That makes me think of the chip on the DS2760 for the compensation temperature being a different temperature, but I don't know what to think
This is very frustrating and I was wondering if there was anyone out there who has successfully got the DS2760 to work with the propeller chip using the object that I gave a link to. I don't know if somehow I got a defective DS2760, but since it does work in some way, I would think it is probably not a hardware issue. This just doesn't make any sense to me. However I am new to microcontrollers in general and the propeller is my first experience with a microcontroller. I did tinker with the object, quoting out some of the code a bit at a time and I found that the compensation temperature was working properly as well as all the calculations for the final temperature, but when I left only the code for just the first temperature reading without any calculations for the final temperature, I found that this temperature reading was the part of the code giving wierd readings and all the other code seemed to be doing it's job properly. So all the code seems to be good except that basic temperature reading, which to me could still mean a hardware issue since I can somehow get the thing to work temporarily in a way that doesn't make any sense to me. The person who made the object did claim on that page from the link I gave that the object works. Does anyone have any ideas? Does anyone think hardware or software issue? Any ideas at all would be appreciated.
I posted this in the sensors section but I didn't get any responses I'm thinking because I should have posted it here where people are using the propeller chip.
I'm having a strange problem with the DS2760 thermocouple kit. I am using it with the propeller chip and I am using the only object available from the propeller object exchange.
Here is the link to the webpage to download that object.
http://obex.parallax.com/objects/385/
I am recording the temperature to a variable and then displaying that variables data in the parallax serial terminal to see if I am getting a correct temperature reading. It shows the correct temperature for anywhere between 0 and 25 degrees celsius, but when the temperature goes higher than that it gives me an erroneous reading of 65535 no matter how high I go with the temperature. What is really strange is that if I measure the temperature of a frozen item from my freezer so I can get the DS2760 to read to a very low temperature or even all the way down to zero and then reset the propeller chip, all of a sudden I am able to get temperature readings over 100 degrees celsius and it seems that everything is functioning correctly. Then after some time, maybe a few minutes, maybe longer, it stops working again at any temperature above 25 degrees celcius giving me 65535 again. Measuring the temperature down to zero and reseting the propeller chip doesn't even work all the time. Also the temperature used to work until 28 or 29 degrees celsius in the summer when the temperature in the room was hotter. That makes me think of the chip on the DS2760 for the compensation temperature being a different temperature, but I don't know what to think
This is very frustrating and I was wondering if there was anyone out there who has successfully got the DS2760 to work with the propeller chip using the object that I gave a link to. I don't know if somehow I got a defective DS2760, but since it does work in some way, I would think it is probably not a hardware issue. This just doesn't make any sense to me. However I am new to microcontrollers in general and the propeller is my first experience with a microcontroller. I did tinker with the object, quoting out some of the code a bit at a time and I found that the compensation temperature was working properly as well as all the calculations for the final temperature, but when I left only the code for just the first temperature reading without any calculations for the final temperature, I found that this temperature reading was the part of the code giving wierd readings and all the other code seemed to be doing it's job properly. So all the code seems to be good except that basic temperature reading, which to me could still mean a hardware issue since I can somehow get the thing to work temporarily in a way that doesn't make any sense to me. The person who made the object did claim on that page from the link I gave that the object works. Does anyone have any ideas? Does anyone think hardware or software issue? Any ideas at all would be appreciated.
Comments
did you ever get any answers to this? I'm experiencing the same issue. I think that for the object it's something in the way the TC and CJ are combined. What I find for mine is that as long as the TC end is the same temperature or colder than the CJ it works fine, but as soon as the TC end gets much hotter than CJ it goes to -1
I used to have the DS2760s working in SX/B I just have to find the code. I used a work-around for mine instead of doing table lookups. We know that for each bit change in the value read there is a corresponding change in temp. for the SX I just calculated what the degree change per bit was and used that as a multiplier for what I read in from the DS2760 (after compensating for CJ difference)
I'm going to dig around and see what I can find..
Theirs nothing linear about a T/C, Thats why the look-up table is used.
'
Remember the DS2760 will read type "K","J", and "T" T/C's with the write look-up table.
'
I have found a bigger problem with MSB and LSB, messing things up.I have not resolved this problem.
thanks
just sitting there TC and CJ report the same temp within a degree. when I pinch the TC junction, temp goes up to around 36 or so then comes back down to match CJ temp a couple seconds after I let go.
part of the problem (which may be my TC wire) is that all you have to do is bump the wire and it will jump up to 45 degrees, which isn't possible.. but I think it may be a 'bad' connection just having the wires plugged into the sockets on the board.
I'll keep poking at it and post what I come up with
Late Friday Afternoon: good thing my boss doesn't watch over my shoulder too closely.. spent way too much time on this .. uh.. I mean got lots of work-related work done today.
anyway.. I basically have the DS2760 functioning. I took John McPh-williams 1-wire object and started from scratch. Right now the way I have it setup it will not function correctly if the TC is colder than the CJ..It will just completely ignore the TC then.. mainly did that to help me try to figure out what was going on.
my code is an absolute mess right now, but I will get it cleaned up and posted so we can work together on getting it complete.
in the attached pic I have some debugging statements on there so you can pretty much ignore those, but of interest you see CJ Temp (yes it's warm.been running all day) and then tc lookup which is the temp from the K type table.. I'm pinching on the end of the TC wire and I'd say that 34C for my fingers is reasonable.. let go of the wire and over a few seconds the TC temp comes back down to match CJ..
I don't have a lighter or anything to try higher temps at this point.. but I'm looking around for one. might have to dig out a soldering iron or something