Показания термистора
- Войдите на сайт для отправки комментариев
Добрый день. Прошу помощи опытных людей. Есть пучок термисторов из китая NTC 3950 на 100КОм. Скетч в интернете есть и довольно подробный на второй ссылке из гугла http://arduino-diy.com/arduino-thermistor. Собственно все работает, да только показания не линейные у него. С подбором нужного сопротивления он показывает достаточно точно (для меня это 0.5 градуса) до границы в 85 градусов. После - начинает чудить с показаниями. Собственно вопрос - как учесть нелинейность ту самую? Видел в инете по первой же ссылке http://skproj.ru/termistor-ntc-3950-100-kom-i-arduino/ человек показывает пример из прошивки принтера, где присутствует оная таблица зависимостей, но как ее реализовать для себя так и не понял. Не очень силен в этом. В общем не кидайте сильно тапками за нубизм, просто поисковик моему уровню уже помочь не может.
Сделал массив из 10 точек. Между точками линейная апроксимация. Точки в массив- тарировка. Мне кажется 10 кОм - лучше.
показания не линейные у него.
А Вы каких хотели? Это его нормальное свойство. Там у него есть B-константа и его сопротивление связано с температурой довольно хитрой формулой - линейностью там и не пахнет.
Так Вы бы лучше даташиты смотрели. Там и формулы есть и значения констант. Вот здесь нужные Вам формулы и пояснения на стр 8 (по внутренней нумерации - 6). Константу В для своего термистора поищите там же.
Видел я эти даташиты. Куда там смотреть то?Тоже зависимости четкой нет. На 100КОм термистор есть в таблице маркировка 4485(стр.15). У меня ж вроде 3950...Такие моменты я уже рассматривал. Говорю же, что рассматривал вроде варианты, но не хватает навыков вклеить это в код. Могу только шаблоны из интернета таскать с минимальными правками
Ну, раз "видел эти даташиты", то удачи в поисках готовых кодов в "этих ваших интернетах" :)
Ну чего издеваться то?)Я ведь не прошу за меня что то сделать. Прошу подсказать что откуда берется, ибо вижу я даташит и что?Один хрен я не понимаю где какой параметр брать.
А чего тут понимать? Судя по даташиту, такого датчика, как у Вас, не бывает.
Но Если Вы уверены в том, что он именно такой (константа B = 3950 и R0=100К), то и флаг Вам в руки. Формулу на стр. 8, которая связывает константу, температуру и сопротивление видите? Вот по ней и считайте.
Для разминки, можете по ней посчитать ту самую таблицу, которую Вы видели по ссылке (автор её сдул откуда-то не понимаю откуда она взялась, а Вы теперь знаете). Если всё совпадёт, значит Вы считаете правильно и может той же программой считать для других значений. Я бы кстати, именно с просчёта той таблицы и начал. чтобы удостовериться. что формулу правильно понял и т.п.
Найдите даташит на именно ваш датчик. А если вам непонятно как реализовать - возьмите готовый кусок кода от любого 3D принтера. Там термистор используется в качестве датчика температуры печатающей головки. Кстати, в исходниках оригинальной прошивки для RepRap Mendel мне по-моему попадалась таблица для вашего термистора. Ищите на www.reprap.org
Да, забыл сказать. Там же есть калькулятор для созддания такой таблицы. Задаете ему основные параметры из даташита (бета и сопротивление), а также сопротивление резистора измерительной цепи. И он генерирует готовую таблицу в виде куска кода, которую можно сразу вставить в программу. Я себе так для 3D принтера считал. Возможно что у меня даже такой же термистор стоит, не помню уже. Принтер несколько лет назад собирал.
Так если ТС уже знает B и сопротивление, то ему и не нужен даташит на этот датчик, формула там такая же. Считается всё также. А тот калькулятор всего лишь реализует эту самую формулу.
А я бы проверил все-таки по даташиту. Сопротивление 100 кОм может быть при +25 градусах указано, а может быть и при +20. А ещё лучше замерить его при +25 градусах и проверить. Реально оно может например 99 кОм или 101 кОм быть при +25 градусах. Можно тогда на калькуляторе пересчитать под конкретный термистор или под среднее значение в партии. И сопротивление резистора в схеме обвязки термистора лучше замерить точно и задать в калькуляторе. Оно тоже на итоговую таблицу влияет.
Это ж китайцы. Там все намного веселее. Один 96.8КОм, другой - 92.6. Поэтому только таблица и только подгон. Попробую воспользоваться советами вышеотписавшихся. Составлю таблицу и попробую залить код по примеру из инета. Отпишусь по успехам)
Все равно результаты проверять надо. Поэтому лучше сразу тарировочную кривую в массив загнать.
.
Я вашу умную фразу в википедии понимал))Вы имеете ввиду массив со значениями?делайте скидку на нубство)