Перейти к содержанию

Помогите подобрать резистор


Рекомендуемые сообщения

Общитывается терморезистивный датчик температуры охлаждающей жидкости ВАЗ 23.3828  с ЭБУ.

4 часа назад, avv_rem сказал:

А полиномами убирать только оставшуюся нелинейность порядка 1...5%.

Вы имеете в виду апроксимацию между уже заданными точками?

 

4 часа назад, avv_rem сказал:

Можно и нужно АППАРАТНО «выпрямить» зависимость.

что вы меете в виду?

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

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

2 способ. Если цель, все-таки, построить предельно точную математическую модель имеющегося в наличии терморезистора, то можно и это сделать. Но это будет сильно дольше и сильно сложнее. В этом случае вложим в контроллер кусочно-линейную интерполяцию. Будет 16 или 32 линейных участка. Соответственно, пожертвуем 32 или 64 байтами памяти. Думаю, можно будет вычислить температуру с точностью не хуже 0,1% за два математических действия - одно умножение и одно сложение.

Какой способ выбираем?

ПРИЛОЖЕНИЕ_3.xls

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

1 способ может применяться при индивидуальном изготовлении каких либо конструкций в домашних условиях. В серийном или мелко серийном производстве этот метод не имеет ни какого смысла. Диоды свому падению напряжения отличаются друг от друга температура среды где находиться диод тоже плавает. (Но математика красивая)

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

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

44 минуты назад, PEF сказал:

Диоды свому падению напряжения отличаются друг от друга температура среды где находиться диод тоже плавает.

Блин.
Еще раз.
Теперь без формул.
Речь идет именно об аппаратной линеаризации ТЕРМОРЕЗИСТОРОВ.
При чем тут вообще диоды?
Не вижу никакой связи между способами интерполяции и количеством изделий.
Или я никак не пойму, о чем речь идет?

Или увидел на схеме защитный диод? Так он всегда закрыт и ни на что не влияет. Собственно, так же как и помехоподавляющий конденсатор.

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

Подготовительный этап.
Сформировал пока интерполяционные полиномы разных порядков.

Обработка экспериментальных данных терморезистора.zip Обработка экспериментальных данных терморезистора.xls

Ссылка на комментарий
Поделиться на другие сайты

16 часов назад, avv_rem сказал:

аппаратной линеаризации ТЕРМОРЕЗИСТОРОВ.

Аппаратная линеаризация это хорошо но в данном случае она не возможна. Выход делителя подключается к 10 бит АЦП. Сам делитель питается от опорного напряжения этого АЦП соответственно это либо 3,3 либо 5 в. Поэтому ни о каких десятках килоом резисторе речи быть не может. С другой стороны для терморезисторов оговаривается максимальная тепловая мощность рассеивания которая влияет на показания, на столько я помню это 3 мвт. В результате этих ограничений резистор применяют 2..2.5k . АЦП выдает код 0..1023 пропорциональный напряжению на его входе. Необходимо используя код АЦП минимальными затратами контроллера подсчитать температуру. На мой взгляд точность расчетов в рабочем диапазоне должна быть в пределах  0.05..0,1 градус. Наиболее распространенный вариант в память контроллера вноситься таблица всех значений значений терморезистора сначала определяется диапазон в котором находиться это значение, а за тем методом кусочно линей ной апроксимации вычисляется уточнение. Мне этот вариант не нравиться. 

Вот полная характеристика этого терморезистора.image.png.a3ca35a45f0e8ad0047ab10fb3575455.png

Ссылка на комментарий
Поделиться на другие сайты

Еще, еще и еще раз пытаюсь достучаться до Вашего разума.
Вот за каким ху...м в данном устройстве нужна сложная интерполяция?
Все равно контроллер измеряет напряжение. Сопротивление - абсолютно лишний параметр.
Код АЦП от 0 до 1023.
1. Возьмите этот код и рассматривайте его как номер строки в таблице данных.
2. В таблице данных сразу зашивайте семисегментный код индикатора.
3. Всего будет 4 таблицы a, b, c, d:
a) знак минус или сотни градусов;
b) десятки градусов;
c) единицы градусов;
d) десятые доли градусов.
Зачем этот геморрой с интерполяцией да еще и дробями?

Таблица займет какие-то сраные 4096 байтов, будет опрошена от силы за 20мкс. Обеспечит жесткую погрешность не более 0,01%.
Очень сомневаюсь, что программа интерполяции будет быстрее, точнее или хотя бы компактнее. Черта с два. Ни по одному параметру не выиграет. Это я еще перевод из двоичного кода в двоично - десятичный не учитываю.
К тому же сам писал, что быстродействие критично.

Теперь вопрос по делу. На какой диапазон температур рассчитывать термометр?

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

И что за FUCK?
В последней таблице указано сопротивление при 100°C равное 171ом.
А интерполяция в программе ведется по сопротивлению 177ом.
Дальше идет "Плач Ярославны" по поводу разрыва интерполирующей функции.:lol2: А как ему, разрыву, не быть в этом случае?:lol:

Ссылка на комментарий
Поделиться на другие сайты

Сопротивление 177 Ом (171- опечатка), На автомобиле он работает в диапазоне -40..+120. Я делал систему управления твердотопливным котлом меня интересовал диапазон 0..120.  

1 час назад, avv_rem сказал:

1. Возьмите этот код и рассматривайте его как номер строки в таблице данных.

Да никто и сопротивление и ни считал, аппроксимировалась таблица код -> температура. Датчиков 3 шт. Они нужны не только для вывода данных, данные температуры идут на два ПИД регулятора которые управляют своими процессами.

Вывод информации на LCD.

Вот одна строчка это и вся апроксимация куда проще.

temper=20+((kod-630.54)/((-10.96+((kod-411.43)/(-138.77+((kod-241.35)/(0.002222*kod-3.084)))))));

Время расчета 5 мс куда быстрее.

С этим датчиком никаких разрывов нет. Я писал о разрывах вообще, о том что их надо контролировать, графически. Разрывы довольно легко убираются. Нельзя без контроля  загонять функцию в контроллер.

Ссылка на комментарий
Поделиться на другие сайты

Странно. Построил график. Всякие я чудеса видел, но такие в первый раз.
Сразу возникают вопросы:
1. «Как или через что подключен датчик температуры, если одна половина его характеристики – прямая линия, а другая ушла чуть ли не в бесконечность?»
2. Что помешало весь график линеаризовать?

Странно.JPG

Особенно сильно интересует схема подключения. Если это не коммерческий секрет, разумеется.

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

image.png.1e483515cbf5a4bbd63013e0528e0a10.png

Вх- вход АЦП, Rvx входное сопротивление АЦП, Rd - добавочный резистор 2153 Ом шунтирующая емкость 1мкф на схеме не указана. 

image.png.6739c787f6f9ce6ceaabde9cc4778198.png

OX - код АЦП,  OY - температура ему соответствующая.

Ссылка на комментарий
Поделиться на другие сайты

Красные точки коды АЦП для (t=20, Rt=3520 Ом код=630.5423908), (t=40, Rt=1459 Ом код=411.4327193), (t=60, Rt=667 Ом код=241.3503698), (t=80, Rt=332 Ом код=136.4781609), (t=100, Rt=177 Ом код=77.64937618)

А это продифференцированная обратная функция Код (t) чувствительность в градациях АЦП

image.png.5c8d3cf25f4ad1414e119ef58bd18433.png

Ссылка на комментарий
Поделиться на другие сайты

5 часов назад, PEF сказал:

Вх- вход АЦП, Rvx входное сопротивление АЦП,

Что-то АЦП какой-то странный. Никак не могу расчеты повторить.
Чему равно сопротивление Rvx? По расчетам никак бесконечность не получается.

Вышел на Rvx = 200.00000кОм. Не ошибся?

До сих пор не ясен диапазон измерений.
На одном графике 0°С…+110°С.
На другом -15°С…+130°С.
Это важно для построения точной характеристики терморезистора. Мой интерполятор показал примерно 5 ошибок в таблице.
Есть таблица без ошибок? Я пока принял такую.

Ошибки.jpg

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

Rvx = 200 kOm, Опорные точки (t=20, Rt=3520 Ом код=630.5423908), (t=40, Rt=1459 Ом код=411.4327193), (t=60, Rt=667 Ом код=241.3503698), (t=80, Rt=332 Ом код=136.4781609), (t=100, Rt=177 Ом код=77.64937618)

Рабочий диапазон 10...110 градусов

Ссылка на комментарий
Поделиться на другие сайты

По поводу записи

10.05.2020 в 16:12, PEF сказал:

На мой взгляд точность расчетов в рабочем диапазоне должна быть в пределах  0.05..0,1 градус

Таблицы без опечаток не будет? Можно и эту использовать, но точность будет не лучше 0,1°C.
В диапазоне 5°C…128°C на полиноме 3-го порядка максимальные ошибки дают точки.

50°C___973ом___0.097770171292837°C___рекомендуемое_сопротивление___977ом
90°C ___241ом___-0.087743084631882°C___рекомендуемое_сопротивление___240ом
45°C____1188ом___ 0.056085689843314°C___рекомендуемое_сопротивление___1191ом
20°C____3520ом___ -0.054950533354031°C___рекомендуемое_сопротивление___3511ом

Но это всего лишь предположения. Ясно только одно, точность будет невысокой при любых способах расчета.

Для сравнения.
Интерполятор резко рекомендует сопротивление 175.3562962ом в случае задания значения 171ом при температуре 100°C

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

А вот что дал пробный тест на методе наименьших квадратов с полиномами 5-го и 7-го порядков. Даже на исходной кривой таблице, только 171ом заменил на 177ом.
Правда после аппаратной линеаризации (сопротивление Rd изменено на 650ом).
Никаких разрывов, отклонений, делений и прочих прелестей... Классика жанра. В погрешность 0,1°C по всему диапазону уложился запросто, как и обещал.

Это уже пересчет температуры по кодам АЦП. Учтено все, что только можно.

МНК-5.JPG

МНК-7.JPG

МНК_5,7.zip

Зависимость.JPG

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, avv_rem сказал:

Правда после аппаратной линеаризации (сопротивление Rd изменено на 650ом).

Я же писал минимальное добавочное сопротивление 2,2к по причине предельно допустимой тепловой мощности 3мвт выделяемой на терморезисторе, поэтому никакой линеаризации не получиться. А по поводу таблицы, я оней никогда не заморачивался как мне кажется она снята экспериментально с учетом усреднения на большой партии.   

Ссылка на комментарий
Поделиться на другие сайты

01.05.2020 в 23:30, PEF сказал:

Напряжение в нагрузке зависит не только от параметров RC цепочки но и от применяемого динистора который вы не указали.

Самый доступный динистор DB3 с напряжением открывания около 30в. Его можно найти практически в любой энергосберегайке и электроном балласте люминесцентной лампы.

01.05.2020 в 23:00, FussionBart сказал:

чтобы при максимальном повороте потенциометра напряжение не поднималось выше 70-75В.

Опасно. А вдруг симистор пробьёт и сетевое напряжение полностью попадёт на твой тэн.:bomb:

Хочешь накормить человека один раз — дай ему рыбу. Хочешь накормить его на всю жизнь — научи его рыбачить.

Ссылка на комментарий
Поделиться на другие сайты

17 часов назад, PEF сказал:

Я же писал минимальное добавочное сопротивление 2,2к по причине предельно допустимой тепловой мощности 3мвт выделяемой на терморезисторе, поэтому никакой линеаризации не получиться.

Ну, это тоже очередное заблуждение.

1. ЗДРАВЫЙ СМЫСЛ. Утверждение о погрешности по причине избыточной мощности справедливо, если датчик температуры парит в воздухе и не может никуда тепло отдать. Причем, считается, что к датчику температуры даже провода не присоединены и даже через них тепло не рассеивается. Но у нас к датчику не только провода подключены, но он, еще вроде бы, плавает в бачке с водой. Ох и трудновато его будет разогреть измеряемым током в этом случае.

2. РЕШЕНИЕ, ПРИМЕНЯЕМОЕ В ПРОМЫШЛЕННОМ ОБОРУДОВАНИИ. Раз уж есть под рукой контроллер, то никто не запрещает замыкать датчик температуры нахрен через отдельный вывод контроллера. Датчик размыкается буквально на несколько десятков микросекунд, пока его опрашивает АЦП. Нет смысла измерять температуру чаще чем один раз в секунду. Температура – очень и очень инерционный параметр. Таким способом (периодическое замыкание) средняя рассеиваемая мощность на датчике снижается во многие тысячи раз. Серьезно говорить о дополнительной погрешности и в этом случае не приходится.

3. ПЕРЕМАСШТАБИРОВАНИЕ НАПРЯЖЕНИЯ. Этот способ самый и самый глупый. Дело в том, что понижение напряжения на датчике в несколько раз приводит точно к такому же сужению динамического диапазона АЦП. Если снизить напряжение на датчике в 4 раза, то и АЦП автоматически превратится при этом из 10-разрядного в 8-разрядный. При этом также автоматически подскочит и погрешность измерения. Сразу же до 0,4%, прямо на ровном месте. Тем не менее, вспоминая основы теории цепей, изучай рисунок...

Делитель PEF.JPG

Изменено пользователем avv_rem
Ссылка на комментарий
Поделиться на другие сайты

По поводу выделения тепла на терморезисторе, не совсем с Вами согласен. Терморезистор находится в колбе, а колба находится в воде. Между терморезистором и колбой есть какое -то тепловое сопротивление. Следовательно, когда терморезистор нагревается теплом электричества , его температура будет выше температуры колбы, И следовательно, характеристики , в зависимости от количества выделяемого тепла в резисторе будут меняться. По поводу всего остального, я понимаю, что наличие у Вас знаний и пытливого ума позволяет обходить те или иные проблемы, но Вы меня не убедили, что предложенная мной аппроксимация, которая за 3 мкс выдает достаточно точный результат можно называть геморойным вариантом. 

Ссылка на комментарий
Поделиться на другие сайты

Да я уж давно понял, что не убедил. Только вряд ли Вы доведете ошибку интерполяции до 0,015°C используя альтернативные методики.
Тем не менее, я показал, другой вариант решения.
Посмотрите, как выглядит график температурной зависимости в диапазоне 10°C…110°C при Rd = 533ом.
Подробности расчетов в приложенных файлах. Удалова Н.П. нужно смотреть со страницы 41.

Линеаризация терморезисторного моста.zip Удалов Н.П. Полупроводниковые датчики 1965г.djvu

Ссылка на комментарий
Поделиться на другие сайты

Какой смысл имеет доведение ошибки интерполяции до  до 0,015°C  если дискретность АЦП с зашунтированным терморезистором составляет 0,3..0,5 градусов.? 

Необходимость линеаризаций в 60 е годы прошлого века состоит в том, что обработка сигналов велась аналоговыми устройствами. При наличии цифровой обработки сигнала на мой взгляд, ничего кроме потери чувствительности не дает.

За литературу СПАСИБО.

Ссылка на комментарий
Поделиться на другие сайты

P.S.

Я специально сократил количество знаков в коэффициентах для получения погрешности менее 0,1 градус в большей точности с таким АЦП нет смысла.

А исходник вот такой:

temper=20+((kod-630.5423908)/((-10.95548358+((kod-411.4327193)/(-138.7653599+((kod-241.3503698)/(0.00222222732*kod-3.083623003)))))));

а он от сюда:

image.png.9bb6b25ea6b2998d2ec9c62b4c28aa0c.png

2020-05-17_19-58-33.png

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...