Страница 1 из 2
Датчики температуры
Добавлено: Чт апр 29, 2010 16:37:17
Demus
Письмо на форум
Здравствуйте. Вопрос многим покажется простым, но все же прошу помочь.
Возьмем, напрмер, термомсопротивление. В ГОСТе для него приводится таблица пар значений и полином. При этом везде
рекомендуют проводить линеаризацию номинальной статической характеристики датчика. Но в литературе информации по
самой сути этого процесса ничего не нашел. Да, понятно, что нелинейная характеристика заменяется на отрезок прямой
или несколько отрезков прямых. Да, видимо, МК будет проще вычислить температуру из формулы t=ax+b, чем из полинома.
Но разве так сложно и долго решать в МК полином 3-й степени?
Прошу объяснить простыми словами, зачем делается линеаризация.
Спасибо заранее.
Re: Датчики температуры
Добавлено: Чт апр 29, 2010 19:15:39
Meteor
Важнее расчета полиномов, получить достаточно хорошую повторяемость.
Те данные которые даются в даташитах, таблицах ТУ/ГОСТов и иных документах, обладают одним существенным "недостатком" они отражают усредненную зависимость выборки.
При этом нет никакой гарантии что датчик полностью впишется в эти границы.
Поэтому проще провести линеаризацию методом наименьших квадратов с угрублением точности, нежели проводить расчет полиномами 3 и более высоких степеней.
Re: Датчики температуры
Добавлено: Чт апр 29, 2010 19:33:22
Сэр Мурр
А ещё лучше- делать интерполяцию между известными (табличными или тарировочными) значениями. Достоинство- не надо перепрограммировать новые коэффициенты при замене или калибровке датчика. Математический аппарат горадо проще- не требуется возведение в степень.
Re: Датчики температуры
Добавлено: Чт апр 29, 2010 21:05:57
Пухич
В тех приборах, с которыми я встречался, линеаризация позволяла упростить схемотехнику. Но это аналоговая техника. Для МК в принципе фиолетово.
Re: Датчики температуры
Добавлено: Чт апр 29, 2010 21:25:24
Demus
Meteor писал(а):Поэтому проще провести линеаризацию методом наименьших квадратов с угрублением точности, нежели проводить расчет полиномами 3 и более высоких степеней
Правильно я понял, метод наименьших квадратов дает меньшую точность, чем полином из ГОСТа?
Сэр Мурр писал(а):А ещё лучше- делать интерполяцию между известными (табличными или тарировочными) значениями.
Т.е. пишем в память МК таблицу значений, взятую либо из ГОСТа, либо сверкой с эталонным датчиком и потом интерполируем?
Re: Датчики температуры
Добавлено: Чт апр 29, 2010 22:23:03
Meteor
Полином даст возможность построить кривую n-го порядка по данным измерений n+1 точки. Значения в точках будут "намного" точнее, нежели в промежутках между точками i и i+1.
Метод наименьших квадратов (МНК), позволит найти значения a и b линейной функции y=a*x+b, обеспечивая наименьшую сумму квадратов ошибок. При этом может произойти так, что ни одна (рассчетная) точка уравнения y=a*x+b, при тех же значениях х, не совпадет с точками по которым рассчитывался полином.
Re: Датчики температуры
Добавлено: Пт апр 30, 2010 18:34:18
Сэр Мурр
Demus писал(а):
Т.е. пишем в память МК таблицу значений, взятую либо из ГОСТа, либо сверкой с эталонным датчиком и потом интерполируем?
Да, именно так. Раньше тоже подбирали полиномы; при новой тарировке- новый полином.. Особенно занудно, когда нелинейность проявлялась в конце диапазона- приходилось изощряться с полиномом 3 степени.
Вкошатили таблицу- и всё!
Re: Датчики температуры
Добавлено: Пт апр 30, 2010 20:50:16
Demus
Ну, тогда еще пара вопросов:
А как математически оценить сколько точек достаточно для такой таблицы?
Если все-таки решил считать полином, то как математически выяснить какой степени достаточно? Все вопросы, исходя из предположения, что кучи статей и рекомендаций по этому поводу не существует.
Re: Датчики температуры
Добавлено: Пт апр 30, 2010 21:10:01
Meteor
Про таблицы.
На мой взгляд есть 2 подхода:
1) поправочная таблица может содержать столько значений сколько отсчетов предполагается в системе.
2) в таблице находятся точки узлов для интерполяции. В этом случае можно сэкономить место под таблицу.
Что касается полинома, то чем выше степень тем больше локальных экстремумов на графике, и тем чаще кривая будет отклоняться от идеализированной
Re: Датчики температуры
Добавлено: Пт апр 30, 2010 21:42:38
Пухич
Demus писал(а):Ну, тогда еще пара вопросов:
А как математически оценить сколько точек достаточно для такой таблицы?
Если все-таки решил считать полином, то как математически выяснить какой степени достаточно? Все вопросы, исходя из предположения, что кучи статей и рекомендаций по этому поводу не существует.
Ну как бы точность интерполяции можно оценить тем же МНК. Задавшись некоторым значением.
Re: Датчики температуры
Добавлено: Вс май 02, 2010 16:16:45
andre_ksd
Вопрос вообще не от схемотехники. Возмите "Основы вычислительной математики" Демидович, Марон или любой другой.
Ил справочник Бронштейна, Семендяева - найдете там и массу методов интерполяции и оценку погрешности и даже примеры. Ну, только не от температуры, а от некоторой мистической переменной x.
С АЦП есть нюанс.
Если датчик в интересующем диапазоне сильно нелинеен, то поскольку квантование производится до(!) вычисления значения физ. величины, можно как угодно измываясь с методами обработки никакой точности не получить.
Да и влияние погрешностей АЦП в этом случае может оказаться очень существенным.
По этой причине даже сегодня иногда(редко) используют аналоговые нормализаторы, до(!) АЦП, но это изыск. Или использую АЦП с завышенной для данной задачи разрядностью.
P.S.
Кроме кусочно-линейной и полиномиальной,
есть еще и сплайн-интерполяция(обобщение кусочно-линейной),
и интерполяция на базе ортогональных полиномов (Чебышева например)
Re: Датчики температуры
Добавлено: Вс май 02, 2010 17:13:38
Demus
andre_ksd писал(а):
С АЦП есть нюанс.
Если датчик в интересующем диапазоне сильно нелинеен, то поскольку квантование производится до(!) вычисления значения физ. величины, можно как угодно измываясь с методами обработки никакой точности не получить.
Да и влияние погрешностей АЦП в этом случае может оказаться очень существенным.
Да, спасибо. математикам в этом случае проще. Нет ни погрешностей АЦП, ни резиторов. Задача как раз и поставлена получит макс точность математических алгоритмов при наличии хорошего железа.
Re: Датчики температуры
Добавлено: Вс май 02, 2010 17:18:00
Meteor
А что в задаче говорится о таких ресурсах как память и скорость вычислений?
Re: Датчики температуры
Добавлено: Вс май 02, 2010 17:23:15
andre_ksd
Я вовсе не математик. И им не проще. Вся вычислительная математика - сплошные погрешности и оценки.
Любой расчет на погрешности учитывает и ТКС и разброс резисторов и все существенные особенности используемого АЦП.
Иначе - зачем он нужен?..
А по поводу нюанса вы видимо не поняли - это не свойство "хорошего/плохого железа", это принципиальная вещь, вполне "математическая".
Re: Датчики температуры
Добавлено: Вс май 02, 2010 17:37:16
andre_ksd
Посмотрите на рисунок.
После квантования вы можете абсолютно точно воспроизвести красную кривую (датчик).
Но, в начале диапазона, разрешающая способность, а следовательно и точность будет ужасной.
Даже если ваша расчетная кривая идеально совпадает с реальной кривой датчика.
Re: Датчики температуры
Добавлено: Вс май 02, 2010 21:16:23
Demus
Meteor писал(а):А что в задаче говорится о таких ресурсах как память и скорость вычислений?
а тут 2 варианта. первый - нужна система сбора и управления для вентиляции. Соответственно точность будет никакой по двум причинам. Обработка происходит на МК и нет смысла в точности и скорости , т.к. например для экономии датчики по двухпроводной схеме подключают, монтаж датчиков тоже оставляет желать лучшего.
А вторая задача снимать - точные значения с откалиброванных датчиков. Возможно даже калибровку добавим. Тут обработка на ПК, сбор будет видимо с МК с большим разрешающим АЦП и любым размером памяти. Тех задания на этот счет нет. Надо исследовать, какой способ интерполяции даст макс точность и АЦП подобрать с макс разрешением.
Re: Датчики температуры
Добавлено: Вс май 02, 2010 21:30:01
andre_ksd
Тогда для вас актуальна сплайн-интерполяция.
При использовании интерполяционных многочленов, если точек много -> порядок высокий ->
многочлены имеют неприятное свойство "разбалтываться" и сильно осциллировать между точками.
Re: Датчики температуры
Добавлено: Вс май 02, 2010 21:32:38
Meteor
Сплайн интерполяция потребует (насколько помню) вычисления производных. Подсилу ли автору подобные решения?
Re: Датчики температуры
Добавлено: Вс май 02, 2010 21:39:18
Demus
Автор сам узнает, когда попробует считать. про сплайны слышал, но дальше чтения статей опыта не было. Приложение для Пк конечно писать сразу не буду кидаться. Есть идея обработать данные в скада. Тут тебе и поддержка интерфейсов с протоколами и готовые FBD блоки для вычисления производных.
Re: Датчики температуры
Добавлено: Вс май 02, 2010 22:03:44
Meteor
Не сомневаюсь в ваших намерениях и возможностях.
Просто рассчет производных первого и второго порядка на МК дело столь муторное.
Пожелаю успехов!!!