Ntc термистор измерение температуры

Тема в разделе "Микроконтроллеры AVR", создана пользователем Yerabdi, 25 дек 2021.

  1. Yerabdi

    Yerabdi Гик

    Можете подсказать можно ли ваш эксел
    Пересчитать на другой тип термистора
    И где нужно подправить формуле
     
  2. Igor68

    Igor68 Гуру

    посмотрите сюда:
    https://www.chipdip.ru/product/mcp9700-e-to?from=suggest_product
    шкала линейная, цена 51р, питание внешнее и сразу выход: напряжение кратное температуре. Что ещё надо?
     
    Последнее редактирование: 28 дек 2021
    Рокки1945 нравится это.
  3. akl

    akl Гуру

    пересчитать - можно
    подправить - градуировку, линию тренда, коэффициенты.
    только не лучше ли считать по формуле?
    если ты там запускаешь АЦП и тяжелые расчеты внутри какого-то прерывания - то это принципиально неправильный подход
     
  4. Рокки1945

    Рокки1945 Гуру

    интересно конечно это всё - но почему никто разброс - погрешность не учитывает - а хотя зачем - и так сойдёт
     
  5. akl

    akl Гуру

    разброс между чем и чем?
     
  6. Рокки1945

    Рокки1945 Гуру

    между 1 резистором и другим - или они идеальные
     
  7. akl

    akl Гуру

    по идее их должны выпускать с определенным допуском. если не устраивает - придется под каждый конкретный резистор калибровать.
    но ты же этого не делаешь когда обычные резисторы в свои схемы впаиваешь
     
  8. Рокки1945

    Рокки1945 Гуру

    но поправочный все равно должон быть
     
  9. Рокки1945

    Рокки1945 Гуру

    А вообще моё мнение, что ток через термистор должен идти хороший - а не капелюшечки.
    Да и еще если он выносной будет - провода тоже будут иметь "погоду" при измерении.
    Потому что датчик измеряет температуру прежде всего себя.
    Все эти термисторы - редкостная хрень.
     
  10. akl

    akl Гуру

    нам бы для начала с алгоритмом разобраться, чтобы не надо было всю полезную работу в 100 микросекунд запихивать, а ты про какие-то погрешности.
     
  11. Рокки1945

    Рокки1945 Гуру

    так вроде не 1 раз надо измерять а выборку делать
    убирать заведомо больший и меньший - зимерять раз 10 и выдавать уже за приемлимый - правдоподобный
     
  12. akl

    akl Гуру

    да, я уверен что ТС делает прибор для космического радиотелескопа, именно поэтому он запихал всё что можно и что нельзя во всевозможные прерывания, теперь осталось только достичь небывалого уровня точности измерений.
     
    Рокки1945 нравится это.
  13. parovoZZ

    parovoZZ Гуру

    при правильном подключении не будут.

    зачем?

    вся промышленная автоматизация построена на Pt100 и Cu100. Реже другие.
     
  14. Рокки1945

    Рокки1945 Гуру

    ты про 4-хпроводную и экранированный
     
  15. Рокки1945

    Рокки1945 Гуру

    всю жизнь вот так считал
    0 элемент массива - 180 Ом
    1 элемент - 600 Ом
    2 - 2000 Ом
    3 - 9000 Ом
    4 - 40000 Ом
    Всё - это координатный вектор - массив его
    следующий массив
    0 - 100 градусов
    1 - 60 градусов
    2 - 25 градусов
    3 - минус 10
    4 - минус 40
    Всё это берётся из графика или таблицы из даташита - а никак не из измеренных чем то своим
    Если датчик будет врать на большую погрешность - к стенке продавана:):):):)
     
    Последнее редактирование: 28 дек 2021
  16. Valer5

    Valer5 Нуб

    2
     
  17. Valer5

    Valer5 Нуб

    akl писал
    1. А можете Вы объяснить, как из таблицы данных с помощью эксель получить величины основания степени и показатель степени.
    2. При расчете из величины ADC порядкового номера в массиве напряжений вероятнее всего не попадешь на табличное значение напряжения, как выбрать ближайшее или пару ближайших? Если вопрос покажется наивным, не обессудьте. Учусь.
     
  18. akl

    akl Гуру

    надо обвести таблицу и вставить диаграмму точечную. Потом на этой диаграмме тыкнуть правой кнопкой на линию графика и нажать "добавить линию тренда", там выбрать нужную функцию и поставить галочку "показывать уравнение на диаграмме". потом еще надо будет ткнуть на это уравнение правой кнопкой "формат подписи", там выбрать числовой формат и накрутить достаточное количество знаков после запятой, т.к. по умолчанию их может быть недостаточно. собственно на этой формуле будет всё написано

    второй вопрос не понял. Если в массиве шаг между напряжениями больше чем единица АЦП, то перед тем как переводить АЦП в номер массива его надо поделить на этот шаг.
    то есть типа например
    АЦП № напряжение
    100 0 1,4
    110 1 1,5
    120 2 2,0
    130 3 2,5
    то чтобы из АЦП получить номер массива надо из АЦП вычесть 100 (начальная точка) и результат поделить на 10 (шаг)
    естественно в результате например все значения с 100 по 109 будут относиться к ячейке "0".
    но можно сделать хитрее - округлять например, или вообще линейно интерполировать - то есть рассчитывать промежуточное значение между 1,4 и 1,5 по пропорции - тогда например 105 это будет 1,45. Но это может свести на нет всю скорость рассчетов.
     
  19. Valer5

    Valer5 Нуб

    Спасибо за скорый ответ. Но это значит, что для того, что бы найти промежуточное значение,например 1.45, надо найти значение 1.4, понять, что оно меньше искомой и тогда интерполировать со следующим.
     
  20. akl

    akl Гуру

    надо понять что наше значение АЦП не попадает точно в номер ячейки (не делится нацело на шаг), найти 1.4, а затем к этому 1.4 прибавить то количество между 1.4 и 1.5, которое пропорционально разнице между нашим АЦП и тем АЦП, которое точно попадает в 1.4
    как-то так.
    Но я так не делал - я делал несколько больших диапазонов, в пределах которых рассчитывал по разным функциям - где-то по полиномиальным где-то по линейным. Но у меня там не было задачи все посчитать за микросекунду. Если нужна микросекунда - лучше сделать таблицу побольше. Но тогда потратится больше памяти.

    но у меня там и не термистор был, а более кривая хрень, на термистор то можно одну функцию натянуть и нормально будет.
    короче если нужна точность - считаем по формуле, если нужна скорость - заранее составляем по формуле таблицу и тратим на это память. если помимо скорости нужна еще и точность - составляем таблицу с минимальным шагом и тратим на это дофигища памяти.
     
    Последнее редактирование: 10 янв 2022