Тэрмометр супраціўлення

Тэрмометр супраціўлення — прыстасаванне для вымярэння тэмпературы, прынцып дзеяння якога заснаваны на залежнасці электрычнага супраціўлення рэчываў ад тэмпературы. Для вырабу тэрмометраў супраціўлення звычайна выкарыстоўваюць металы (плаціну, медзь) або паўправаднікі.
Тэрмометры супраціўлення выкарыстоўваюць разам з лагометрамі, вымяральнымі мастамі, нармуючымі пераўтваральнікамі, з дапамогай якіх непасрэдна вымяраюць супраціўленне, якое ўтварае тэрмометр супраціўлення.
Тэрмометр супраціўлення з металу
[правіць | правіць зыходнік]Металы, якія выкарыстоўваюцца ў тэрмометрах супраціўлення, павінны адпавядаць шэрагу патрабаванняў: не акісляцца, добра ўзнаўляць значэнне электрычнага супраціўлення ў інтэрвале рабочых тэмператур, як мага больш змяняць сваё супраціўленне пры змяненні тэмпературы.
Найлепш гэтым патрабаванням адпавядаюць медзь і плаціна.
У прамысловасці тэрмометры супраціўлення з металу звычайна градуіруюць наступным чынам: лічба, якая паказвае значэнне электрычнага супраціўлення гэтага тэрмометра пры 0 °C, і літара, якая паказвае метал, з якага зроблены гэты тэрмометр супраціўлення. Напрыклад: 10М, 50П.
Медныя тэрмометры супраціўлення
[правіць | правіць зыходнік]Выкарыстоўваюцца для вымярэння тэмператур у дыяпазоне ад −50 °C да +200 °C. Залежнасць супраціўлення ад тэмпературы ў гэтым дыяпазоне лінейная:
,
дзе .
Плацінавыя тэрмометры супраціўлення
[правіць | правіць зыходнік]Выкарыстоўваюцца для вымярэння тэмператур у дыяпазоне ад −260 °C да +1100 °C. Залежнасць супраціўлення ад тэмпературы мае складаны характар і ў дыяпазоне ад 0 да 650 выражаецца праз формулу:
,
дзе .
Паўправадніковыя тэрмометры супраціўлення
[правіць | правіць зыходнік]Выкарыстоўваюцца для вымярэння нізкіх тэмператур (да 100 К).
Электрычнае супраціўленне паўправаднікоў пры павышэнні тэмпературы, у адрозненне ад металаў, паніжаецца. Залежнасць тэмпературы ад супраціўлення мае нелінейны характар.
Табліца супраціўленняў некаторых тэрмометраў супраціўлення
[правіць | правіць зыходнік]Тэмпература ў °C |
Pt100 | Pt1000 | ням.: PTC | ням.: NTC | NTC | NTC | NTC | NTC |
Typ: 404 | Typ: 501 | Typ: 201 | Typ: 101 | Typ: 102 | Typ: 103 | Typ: 104 | Typ: 105 | |
−50 | 80,31 | 803,1 | 1032 | |||||
−45 | 82,29 | 822,9 | 1084 | |||||
−40 | 84,27 | 842,7 | 1135 | 50475 | ||||
−35 | 86,25 | 862,5 | 1191 | 36405 | ||||
−30 | 88,22 | 882,2 | 1246 | 26550 | ||||
−25 | 90,19 | 901,9 | 1306 | 26083 | 19560 | |||
−20 | 92,16 | 921,6 | 1366 | 19414 | 14560 | |||
−15 | 94,12 | 941,2 | 1430 | 14596 | 10943 | |||
−10 | 96,09 | 960,9 | 1493 | 11066 | 8299 | |||
−5 | 98,04 | 980,4 | 1561 | 31389 | 8466 | |||
0 | 100,00 | 1000,0 | 1628 | 23868 | 6536 | |||
5 | 101,95 | 1019,5 | 1700 | 18299 | 5078 | |||
10 | 103,90 | 1039,0 | 1771 | 14130 | 3986 | |||
15 | 105,85 | 1058,5 | 1847 | 10998 | ||||
20 | 107,79 | 1077,9 | 1922 | 8618 | ||||
25 | 109,73 | 1097,3 | 2000 | 6800 | 15000 | |||
30 | 111,67 | 1116,7 | 2080 | 5401 | 11933 | |||
35 | 113,61 | 1136,1 | 2162 | 4317 | 9522 | |||
40 | 115,54 | 1155,4 | 2244 | 3471 | 7657 | |||
45 | 117,47 | 1174,7 | 2330 | 6194 | ||||
50 | 119,40 | 1194,0 | 2415 | 5039 | ||||
55 | 121,32 | 1213,2 | 2505 | 4299 | 27475 | |||
60 | 123,24 | 1232,4 | 2595 | 3756 | 22590 | |||
65 | 125,16 | 1251,6 | 2689 | 18668 | ||||
70 | 127,07 | 1270,7 | 2782 | 15052 | ||||
75 | 128,98 | 1289,8 | 2880 | 12932 | ||||
80 | 130,89 | 1308,9 | 2977 | 10837 | ||||
85 | 132,80 | 1328,0 | 3079 | 9121 | ||||
90 | 134,70 | 1347,0 | 3180 | 7708 | ||||
95 | 136,60 | 1366,0 | 3285 | 6539 | ||||
100 | 138,50 | 1385,0 | 3390 | |||||
105 | 140,39 | 1403,9 | ||||||
110 | 142,29 | 1422,9 | ||||||
150 | 157,31 | 1573,1 | ||||||
200 | 175,84 | 1758,4 |
Функцыя атрымання значэння тэмпературы (C++)
[правіць | правіць зыходнік]Прыведзены ніжэй код дазваляе атрымаць значэнне тэмпературы датчыка Pt100 ці Pt1000 з яго бягучага супраціўлення.
float GetPt100Temperature(float r)
{
float const Pt100[] = { 80.31, 82.29, 84.27, 86.25, 88.22, 90.19, 92.16, 94.12, 96.09, 98.04,
100, 101.95, 103.9, 105.85, 107.79, 109.73, 111.67, 113.61, 115.54, 117.47,
119.4, 121.32, 123.24, 125.16, 127.07, 128.98, 130.89, 132.8, 134.7, 136.6,
138.5, 140.39, 142.29, 157.31, 175.84, 195.84};
int t = -50, i, dt = 0;
if (r > Pt100[i = 0])
while (250 > t) {
dt = (t < 110) ? 5 : (t > 110) ? 50 : 40;
if (r < Pt100[++i])
return t + (r - Pt100[i-1]) * dt / (Pt100[i] - Pt100[i-1]);
t += dt;
};
return t;
}
float GetPt1000Temperature(float r)
{
return GetPt100Temperature(r / 10);
}