Обсуждение:Термометр сопротивления
Я дополнила страницу наиболее свежими данными о нормировании характеристик термометров сопротивления и указала действующие на настоящий момент стандарты. Информация не была скопирована с какого-либо сайта. Она является общедоступной.Но ссылка на сайт, где размещены более подробные сведение по этой теме была дана для интересующихся проблемой специалистов.--Наталия Моисеева 16:58, 26 мая 2009 (UTC)
Ссылка и другие замечания
правитьСсылка не ведёт на страницу с информацией о термопреобразователях сопротивления, поэтому должна быть либо изменена, либо удалена.
Наиболее распространены платиновые термопреобразователи — далеко не факт. Наиболее распространены медные термопреобразователи — попробуйте оспорить это утверждение. То есть статья должна быть существенно доработана в части описания всех типов термопреобразователей, а не только платиновых, без указания их распространённости (если только не найдётся соответствующий АИ).
И наконец, более грамотным считается термин термопреобразователь, а не термометр сопротивления. Владимир 13:40, 21 марта 2010 (UTC)
Терморезистор
правитьУбрал этот термин из преамбулы, ибо:
- термопреобразователь сопротивления не обязательно содержит терморезистор;
- далеко не всякий терморезистор может использоваться как термопреобразователь сопротивления.
- Термопреобразователь - устройство для преобразования перем. тока в пост., основанное на термоэлектрич. явлениях [1]. В этой же статье речь идет о термометре сопротивления. --LA 09:48, 11 ноября 2012 (UTC)
Код получения температуры на C++
правитьДобавил немного кода. Автор я, пользоваться может любой желающий. Добавил, потому что сам надеялся его тут найти. Александр 16:23 18 ноября 2010 (MSK)
А зачем такой громозкий-то? 85.26.233.211 22:40, 28 декабря 2010 (UTC)
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;
if (r > Pt100[i = 0])
do {
int dt = (t < 110) ? 5 : (t > 110) ? 50 : 40;
if (r < Pt100[++i])
return t + (r - Pt100[i-1]) * dt / (Pt100[i] - Pt100[i-1]);
} while (250 > t += dt);
return t;
}
float GetPt1000Temperature(float r)
{
return GetPt100Temperature(r / 10);
}
Да, вы правы:) Тем более, что я там второпях где-то ошибся, и код выдавал температуру ниже реальной. Поэтому заменил на ваш код, в своём лень было разбираться. Только прямо в таком виде он не захотел компилироваться gcc, я его исправил на такой
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;
}
Александр 22:49 25 января 2011 (MSK)