Sida 1 av 2

Tips på beräkning av temperatur för termoelement

Postat: 29 februari 2008, 14:21:10
av swartz
Jag sitter med ett hobbyprojekt där jag skall läsa av en k-givare med en ds2760 från Maxim-IC. Jag har dock problem med själva baräkningsmodellen där avläst microV samt ColdJunctionTemp skall omvandlas. Jag är även lite osäker på vad det är för värden som jag läser ut ;-)
Det hela är ett c#-projekt, men den delen har jag koll på...

Följande värden får jag tex ut vid ett givet lästillfälle:
4.82 - Detta antar jag är matningsspänningen i V
22.1 - Detta vet jag är CJ-temp i Celsius (temperaturen på den kalla sidan)
-0.0018 - Här är jag osäker, men det är detta värde som ändras när k-givaren värms.

Jag vet även att man behöver en uppslagstabell för beräkningen för CJ-kompensationen. Men hur sker beräkningen. Detta är mitt problem.

Tacksam för all hjälp som kan bringa lite ljus över mitt projekt.

/Fredric

Postat: 29 februari 2008, 15:46:51
av Mindmapper
Om du går in på INOR http://www.inor.se/ så kan du ladda ner en katalog (handbok) om Termoelementgivare. Där finns tabeller och allt annat du vill veta.
Teorin om cj på sid2 och tabell på sid 37

Postat: 29 februari 2008, 17:02:19
av swartz
Tackar för länken. Jag har fått lite mer klarhet i hur det fungerar. Dock har jag fortfarande lite problem hur jag skall utnyttja tabellen i dokumentet.

Jag testade att stoppa givaren i kokande vatten för att få ett värde för 100C och fick då -0.095 (mV?) vid samma CJ-temperatur som tidigare. Detta värde går ju inte slå upp i tabellen det refererades till i förra inlägget.

Jag blir fortfarande inte riktigt klok på beräkningsmodellen.
Hoppas att någon vänlig själ kan hjälpa mig på traven ytterligare.

/Fredric

Postat: 29 februari 2008, 22:48:05
av Mindmapper
Vid 100 grader borde du ha 4,096mV - 0,798mV = 3,298mV
Vid cj 20 grader.
Blir inte klok på hur du har mät. :wink:
Om du har samma temperatur på CJ och mätstället ska de ta ut varandra om det är rätt. sen kan du öka mätställets temperatur och se hur stor ökning av mV/grad blir. Jämför det med andra tabeller om det skulle vara en annan typ av givare. Vanligt är att polariteten på givaren är fel men det stämmer inte heller i ditt fall. Kan ej lista ut vilket mätfel du gjort. Du får berätta mer om hur du mätt.

Postat: 1 mars 2008, 12:07:40
av swartz
Vad händer om man skulle råka vända på polariteten på givaren?

/Fredric

Postat: 1 mars 2008, 15:21:09
av swartz
Jag har läst på lite och funnit att "A complete signal conditioning and digitizing solution for use with a thermocouple, the DS2760 contains a 10-bit voltage ADC input, a 13-bit temperature ADC, and a 12-bit plus-sign current ADC". Det är förmodligen "12-bit plus-sign current ADC" som är det varierande värdet jag läser ut enlit tidigare inlägg. Vad innebär detta? Jag är ingen fena på elektronik, så kan nån kanske ge sig på att förklara vad tex ADC är :-) Verkar som att det är strömmen som jag läser ut?

http://www.sensorsmag.com/articles/0102/29/main.shtml

Hjälp!

/Fredric

Postat: 1 mars 2008, 17:49:45
av hcb
Jag skulle nog rekommendera Pentronic för både teoretisk och praktisk information kring temperaturmätning.

Postat: 1 mars 2008, 22:07:28
av swartz
Tackar för länken.
Det är också deras uppslagstabell för k-givare jag använder. Jag tror att jag har ganska bra koll på teorin bakom beräkningarna avseende CJ-compensation mm, numer. Men fortfarande har jag problem med att förstå vad det är för värde jag igentligen läser ut.
Följande läge råder:
Vid CJ på 23C gar jag ett "12-bit plus-sign current ADC" på 0.018 (jag fick ett negativt värde tidigare, innan jag vände på polariteten på k-givaren) när den varma sidan även den har 23C (detta bör kanske vara 0). När jag värmer givaren till 100C, kanske ngt lägre, får jag ett värde på ca 0.105 efter ett antal tester. Vad är detta för värde igentligen? Tycker att jag har lusläst det som jag hittat på nätet, utan att lyckas klura ut detta.
Någon som har några idéer?

/Fredric

Postat: 2 mars 2008, 19:45:04
av Mindmapper
Pentronics sidor var bra.
Swartz titta i databladet. Sidan 8 fig. 4 visar current registret 12 databitar + 1 teckenbit.
Fig7 visar Voltage register 10 databitar + 1 teckenbit
Fig8 visar temperatur registret 10 databitar + 1 teckenbit
Sedan blir det att skala allt rätt och räkna fram det korrigerade tempvärdet. Lite förvillande att de ibland räknar in teckenbiten (vilket är normalt) och ibland anger plus teckenbit. En bild säger mer än............

Postat: 3 mars 2008, 13:58:31
av swartz
Problemet löst! Samma dokument som "Mindmapper" refererade till ger att det finns en "internal 25mOhm current sense resistor" vilket ger mig det rätta värdet.

Tackar. Nu kan jag äntligen sova igen :-)

/Fredric

Re: Tips på beräkning av temperatur för termoelement

Postat: 16 januari 2009, 22:58:05
av the_donk
Men jag ligger sömnlös
Hur gjorde du beräkningen, jag har samma uppsättning som du swartz,
dvs. ds2762, k-givare
Kokande vatten så resultatet borde vara 100C

CJ på 21,375C-> tabellvärde =ca 0,838
0,099375 får jag från sensorn
men dessa siffror får jag inte ut något av

Snälla hjälp mig sova :shock:

Re: Tips på beräkning av temperatur för termoelement

Postat: 18 januari 2009, 16:46:05
av swartz
Jag skickar min metod för att beräkna tempen till dej i ett PM. Det blir lite c#-kod att analysera :-)
Är det ngn mer som är intresserad får ni höra av er...

/Fredric

Re: Tips på beräkning av temperatur för termoelement

Postat: 18 januari 2009, 17:26:44
av blueint
Varför inte lägga koden som ett inlägg? ;)

Re: Tips på beräkning av temperatur för termoelement

Postat: 18 januari 2009, 17:45:21
av swartz
Blir kanske lite långt inlägg. Kanske går att lägga till filer, men jag har inte hittat var. Snabbaste lösningen för mej var...ett PM. Han verkade ju lite desperat :mrgreen: Annars kan man ju som jag sa skicka ett PM om man är intresserad av koden. Jag delar gärna av mej.
/Fredric

Re: Tips på beräkning av temperatur för termoelement

Postat: 18 januari 2009, 19:57:33
av the_donk
Så det ska se ut så här?

värdet_från_sensor X 0,25= spänningen -> spänningen ger tabellvärde
tabellvärde för skillnaden + tabellvärde för CJ = total tabellvärde -> total tabellvärde ger total temperatur

eller ska jag glömma det ikväll, och gå och lägga mig?