реклама на сайте
подробности

 
 
> NTC термистор, как определить сопротивление?
moon333
сообщение Dec 8 2016, 20:33
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 27-01-16
Из: Москва
Пользователь №: 90 218



Есть у меня вот такой товарищ NCP18WB.
Я хочу с помощью него определять температуру в пределах от -30 до +60.
В этом каталоге есть уравнения зависимости сопротивления от температуры R=R0 expB (1/T–1/T0), где B - это некий коэффициент температурной чувствительности материала термистора.
В таблицы приведены разные значения этого коэффициента, для разных диапазонов 25-80, 25-85,25-100. На сколько я понимаю этот коэффициент на разных температурах был получен следующим способом:
1. Измеряем сопротивление на 25 град. Ставим точку на графике ln(R(25))
2. Измеряем сопротивление на 80 град. Ставим точку на графике ln(R(80))
3. По двум точкам записываем уравнение прямой Y(X)=B-КХ , К - коэффициент отвечающий за наклон прямой и будет являться нашим коэффициентом B.

Теперь наконец то вопрос. Для моего диапазона температур (-30 .. +60), из какого диапазона(25-80, 25-85,25-100) выбирать значение B, чтобы получить наименьшую погрешность на вычислениях?

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Guest_TSerg_*
сообщение Dec 8 2016, 20:55
Сообщение #2





Guests






Это математическая задачка. Данные есть.
Кто-то должен ее за Вас решать?

P.S.
Я, вот, зашел в даташит и, к примеру, для XM102 1k, взяв табличные данные от минус 30 и до + 60 в одно касание получил вот такую регрессию:
http://shot.qip.ru/00gZ9L-4OPovQHrH/
Go to the top of the page
 
+Quote Post
moon333
сообщение Dec 8 2016, 21:13
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 27-01-16
Из: Москва
Пользователь №: 90 218



Цитата(TSerg @ Dec 9 2016, 00:55) *
Кто-то должен ее за Вас решать?

Должен? Нет. Я ничего не говорил про должен.
Возможно кто то уже сталкивался с подобной задачей, и может быстро дать ответ.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Dec 8 2016, 21:14
Сообщение #4





Guests






Цитата(moon333 @ Dec 9 2016, 00:13) *
Должен? Нет. Я ничего не говорил про должен.
Возможно кто то уже сталкивался с подобной задачей, и может быстро дать ответ.

Повторяю:

P.S.
Я, вот, зашел в даташит и, к примеру, для XM102 1k, взяв табличные данные от минус 30 и до + 60 в одно касание получил вот такую регрессию:
График регрессии:
http://shot.qip.ru/00gZ9L-4OPovQHrH/

Регрессия:
http://shot.qip.ru/00gZ9L-1OPovQHrI/

График погрешности:
http://shot.qip.ru/00gZ9L-1OPovQHrJ/
Go to the top of the page
 
+Quote Post
moon333
сообщение Dec 8 2016, 21:38
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 80
Регистрация: 27-01-16
Из: Москва
Пользователь №: 90 218



Цитата(TSerg @ Dec 9 2016, 01:14) *
Повторяю:

P.S.
Я, вот, зашел в даташит и, к примеру, для XM102 1k, взяв табличные данные от минус 30 и до + 60 в одно касание получил вот такую регрессию:
http://shot.qip.ru/00gZ9L-4OPovQHrH/

Зависимость то и я могу построить. На сколько я понимаю, табличные данные которые там приведены, они получены путём вычисления с применения всё той же B constant. А вопрос как раз заключался, как выбрать эту константу?

Например у них на сайте, нашёл информацию про свой термистор. И там взята B константа для (25/50).

Цитата(TSerg @ Dec 9 2016, 01:14) *
График погрешности:
http://shot.qip.ru/00gZ9L-1OPovQHrJ/

хмм... Странно, а как получали погрешность?
По идее на 25град она должна минимальной т.к. какую B константу не возьми, она все пересекаются в точке 25град.

Сообщение отредактировал moon333 - Dec 8 2016, 22:01
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Dec 9 2016, 10:54
Сообщение #6





Guests






Цитата(moon333 @ Dec 9 2016, 00:38) *
А вопрос как раз заключался, как выбрать эту константу?

Там русским по-белому написано, как:
http://shot.qip.ru/00gZ9L-5OPovQHs5/

Для выбранного мной терморезистора XC102 на 1 кОм для диапазона -30..+60 B = 3373 [K].

При желании можно из двух уравнений получить все необходимые параметры:
По Мурате:
R/Ro = exp(B * (1/T-1/To)); T в [K]
По регрессии:
R(t) = a + b * exp(-t/c); t в [C]

Но по регрессии должно быть точнее.

Цитата(moon333 @ Dec 9 2016, 00:38) *
По идее на 25град она должна минимальной т.к. какую B константу не возьми, она все пересекаются в точке 25град.

Не обязательно. Приведенные константы B как раз имеют диапазон от 25 С (25-80, 25-85,25-100), именно поэтому в этой точке нулевая погрешность.
Приведенная мной регрессия минимизирует среднеквадратичную погрешность в заданном температурном диапазоне и точек с нулевой погрешностью может быть более 1, что и видно на графике.

Сравнение погрешности [%] по Мурате (красный) и регрессии (синий)
Уточненная регрессия:
R = exp(a + t * (b + c * t))
http://shot.qip.ru/00gZ9L-3OPovQHrZ/

P.S.
Если для регрессии увеличить диапазон до -40 и +70, но на краях -30 и + 60 будет еще точнее.

P.P.S.
Для Мураты тоже можно сделать поточнее, для чего вычислить константу B не для крайних температур диапазона, а для -20 и + 40 - в этом случае примерно располовинятся положительная и отрицательная погрешности.

Ну и наконец зелененькая кубическая регрессия вполне укладывается в 0.5%
http://shot.qip.ru/00gZ9L-5OPovQHs0/
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 08:31
Рейтинг@Mail.ru


Страница сгенерированна за 0.01611 секунд с 7
ELECTRONIX ©2004-2016