Расчет сопротивления датчика
- Войдите на сайт для отправки комментариев
Доброго времени суток.
Решил я на базе ардуины расширить возможности приборной панели авто, и одной из функций стало подключение к показателям температуры и топливу. Т.к. там показания могут меняться от 0 до 12 вольт был собран делитель на резисторах довольно странной конструкции. По сути датчик - это переменный резистор с сопротивлением до 500 ом, который подключается между FUEL и землей на схеме. Основная проблемма в том, что напряжение VCC - это напряжение борт. сети и оно плавающее, но ардуина его знает, т.к. один из входов ацп через делитель заведен на питание. Так же проблемма еще в том, что резистор R16 находится в приборной панели, и его точное значение не известно, но на тестовом макете он 1 кОм.
Из того, что уже делал - подключал заранее известные резисторы и смотрел значения ацп, потом поднимал напряжение питания на 1 вольт и проделывал тоже самое. Далее занес точки (сопротивление, значение ацп) в вольфрам альфа, и он выдал график, который неплохо описывается функцией axˆ2 + bx + с; Где x - это значение ацп, а результатом решения - сопротивление датчика. Но вот проблемма в том, что коэффиценты a, b, c зависят от напряжения питания. Как мне вычислить на сопротивление датчика?
Лучше всего завести напряжение бортовой сети через делитель на Aref микроконтроллера и выбрвть в настройкахьАЦП внешний источник опорного напряжегия. Тогда показания АЦП не будут плавать от изменения напряжения бортовой цепи.
Врятли так получится, т.к. аналоговых датчиков несколько, при этом есть внешний терморезистор, который подтягивается уже к стабилизированным 5 вольтам. И к тому же одна из функций - измерение напряжения питания.
Основная проблемма в том, что напряжение VCC - это напряжение борт. сети и оно плавающее, но ардуина его знает, т.к. один из входов ацп через делитель заведен на питание.
Использовать внутренний ИОН как более стабильный. И Измерять напряжение на двух концах датчика. Тогда показания не зависят от напряжения питания, а только от сопротивления датчика.
И Измерять напряжение на двух концах датчика. Тогда показания не зависят от напряжения питания, а только от сопротивления датчика.
И Измерять напряжение на двух концах датчика. Тогда показания не зависят от напряжения питания, а только от сопротивления датчика.
Да, если второе сопротивление в цепи известно. Иначе никак. Закон Ома суров, но справедлив..
А еще закон ома говорит, что если второй конец датчика надежно присоединен к массе, то на нем всегда будет ноль относительно массы, как бы напряжение питания не менялось.
А куда второй конец датчика идет? И еще вопрос, а "0" - это что? Не величина напряжения?
И Измерять напряжение на двух концах датчика. Тогда показания не зависят от напряжения питания, а только от сопротивления датчика.
Да, если второе сопротивление в цепи известно. Иначе никак. Закон Ома суров, но справедлив..
Суровый закон Ома суров и справидлив только для обычных резисторов и металлических проводников. А для остальных электронных компонентов надо смотреть ВАХ https://ru.wikipedia.org/wiki/Вольт-амперная_характеристика
вот это и надо выяснить в первую очередь.
подключить тестовый резистор (1 kOm, например) между корпусом и R16, измерить напряжение в точке соединения, измерить бортовое напряжение, рассчитать по результатм R16.
И Измерять напряжение на двух концах датчика. Тогда показания не зависят от напряжения питания, а только от сопротивления датчика.
Да, если второе сопротивление в цепи известно. Иначе никак. Закон Ома суров, но справедлив..
А от тока не зависит?
Суровый закон Ома суров и справидлив только для обычных резисторов и металлических проводников. А для остальных электронных компонентов надо смотреть ВАХ https://ru.wikipedia.org/wiki/Вольт-амперная_характеристика
Ересь - закон Ома справедлив для всех элементов. Неважно какую ВАХ имеет элемент. Для того чтобы ее построить применяют все тот-же закон Ома.
Ну и далее, нам нужно измерить сопротивления датчика, а оно никак не зависит от напряжения питания .
Измерив напряжение на обеих клеммах датчика (Uвх и Uвых) мы однозначно можем определить его сопротивление. Величина и стабильность U вх никакой роли не играют и при вычислениях сокращаются. Важно соотношение U вх и Uвых.
По сути у ТС такая-же схема и ему достаточно измерить Uвх и Uвых, единственный нюанс - значения резисторов делителя на вход АЦП следует увеличить хотя-бы на порядок. Тогда можно пренебречь их влиянием на напряжение Uвых и сопротивление датчика считается исходя из соотношения Uвх и Uвых.
Ересь - закон Ома справедлив для всех элементов. Неважно какую ВАХ имеет элемент.
Ну и далее, нам нужно измерить сопротивления датчика, а оно никак не зависит от напряжения питания .
И Измерять напряжение на двух концах датчика. Тогда показания не зависят от напряжения питания, а только от сопротивления датчика.
Закон Ома един R=U/I и если мы измерим напряжение на стабилитроне и ток через него проходящий, то узнаем сопротивление. Стабилитрон имеет нелинейную ВАХ, но чтобы ее снять придется снять зависимость тока от напряжения и вычислить динамическое сопротивление по той- же формуле. Да оно нелинейно, но подчиняется закону Ома и всегда равно напряжению деленному на ток.
По поводу того что АЦП измеряет напряжение, а не сопротивление, согласен. Хотя конечная цель даже не сопртивление , а количество бензина в баке. Которое тоже слабо зависит от напряжения бортсети. Поэтому принимать его внимание по крайней мере глупо. ТС писал, что у него коэффициенты зависят от напряжения. Я утверждаю, что это не так. Если в цепи нет нелинейных элементов, то результаты измерения сопротивления датчика от напряжения бортсети не зависят.
Закон Ома един R=U/I и если мы измерим напряжение на стабилитроне и ток через него проходящий, то узнаем сопротивление. Стабилитрон имеет нелинейную ВАХ, но чтобы ее снять придется снять зависимость тока от напряжения и вычислить динамическое сопротивление по той- же формуле. Да оно нелинейно, но подчиняется закону Ома и всегда равно напряжению деленному на ток.
И покажите на конкретном примере, как это "сопротивление" можно использовать в практическом расчете.
Закон Ома - закон эмпирический, а не фундаментальный, который исходит из предположения о линейной зависимости проходящего тока от приложенного напряжения. Коэффициент пропорциональности предполагается константой. Если ток не пропорционален приложенному напряжению, закон Ома не выполняется. Собственно, это следует непосредственно из формулировки закона Ома. Даже вне зависимости, какую формулировку мы берем за основу - словесную или математическую.
ТС писал, что у него коэффициенты зависят от напряжения. Я утверждаю, что это не так.
PS. И формула для динамического сопротивления у Вас неверная. Должно быть R = dU/dI.
Из того, что уже делал - подключал заранее известные резисторы и смотрел значения ацп, потом поднимал напряжение питания на 1 вольт и проделывал тоже самое. Далее занес точки (сопротивление, значение ацп) в вольфрам альфа, и он выдал график, который неплохо описывается функцией axˆ2 + bx + с; Где x - это значение ацп, а результатом решения - сопротивление датчика. Но вот проблемма в том, что коэффиценты a, b, c зависят от напряжения питания. Как мне вычислить на сопротивление датчика?
Вот цитата от ТС, в ней он говорит о зависимости коэффициентов от напряжения питания если учесть, что в цепи нет нелинейных элементов - это нонсенс. Сопротивление - оно и в африке сопротивление и от напряжения (в разумных пределах) не зависит, если не пропускать через него дикие токи, которые изменят его физические характеристики. Так что схема ТС - обычный делитель напряжения, странные коэффициенты появились только из за того, что вторй делитель (на вход АЦП) имеет сопротивление соизмеримое с основным. Если увеличить значения его резисторов на порядок, а лучше на два т.к. входное сопротивление АЦП очень велико, то все сведется к простейшей формуле - соотношение сопротивлений образцового - R16 и датчика= соотношению напряжения питания и выходному напряжеию делителяю И никаким образом от напряжения питания не зависит.
А по поводу динамического сопротивления стабилитрона спросит у Гугла.
И по моему мы с вами спорим чисто теоретически , а для ТС толку в этом нет. И еще, не надо трогать святое - законы Ома и Кирхгофа это святое.
Величину R16 в моем случае мерить и использовать при расчетах бесмысленно, т.к. по этой схеме подключается несколько датчиков, и у каждого эта велична будет своя. Я понимаю, что вычисление сопротивления можно сделать матиматически, зная значения ацп, напряжения питания и сопротивление 3х резисторов.
По поводу переподключения датчкив есть проблемма в том, что плата с таким подключением уже пришла из резонита, и мне нужно решить эту задачу чисто программно. Да и в случае использования напряжения питания как опорного тоже вылезут подводные камни, т.к. нужно будет использовать делители и вносить уже поправку на них.
Изначально пытался решить эту задачу через баланс токов в замкнутом участке цепи, я споткнулся на том, что у меня получилась формула на пол листа, на которой я и споткнулся. Вольфрам альфа тоже не смог из этой формулы вычленить искомое. Думал, может тут кто поможет.
я думаю, что нужно исходить из того, что производитель уже при проэктировании заложил ВАХ в показание прибора учета топлива. поэтому просто выводим эти же показания у себя.
И даже в том случае, если при изменении напряжение бортовой сети показания датчика топлива имеют не линейную характеристику, к минимальному коэфиценту погрешности она будет стремиться в сторону уменьщения топлива в баке.
У производителя в данной приборке все просто - стоит измерительная головка с 2мя обмотками. Одна подлюченна к зажиганию, а вторая через датчик. И направлен магнитный поток у них в противофазе, из-за этого плавающее напряжение питания не приносит проблемм. В приборках иномарок уже обычно стоит стабилизатор , вольт на 9, и датчики притягиваются к нему.
Да и я пытаюсь сделать так, что бы мое решение было одинакого применимо и для уровня и топлива, и для температуры двигателя и для давленя масла. На все датчики их производитель дает характеристику зависимости сопротивления то того, что он измеряет, именно по этому у меня сейчас задача - это вычисление сопротивления, исходя из показаний ацп.
matuei,Вам не надо искать сопротивление. Вам надо просто постороить зависимость :Полный бак - такие показания ; пол бака -столько; пустой бак столько. Потом сделать поправку на температуру. При такой температуре откинуть такую величину от показаний АЦП. И так примерно и построить алгоритм работы. Веселуха в том , что компьютер расчитан работать точно, а Вам написать надо программу, тоторая работает "на глазок" +/- 10 % точность.
ага и после всего проделанного еще внести в прошивку возможность дополнительной калибровки
http://cxem.net/avto/electronics/4-81.php
запитываем ОУ от бортовой сети или после R16, на выходе ставим делитель и меряем свои попугаи...
делаем несколько экземпляров запасных плат и ложим в бардачок )))
Величину R16 в моем случае мерить и использовать при расчетах бесмысленно, т.к. по этой схеме подключается несколько датчиков, и у каждого эта велична будет своя. Я понимаю, что вычисление сопротивления можно сделать матиматически, зная значения ацп, напряжения питания и сопротивление 3х резисторов.
Зная 4 значения (r14, r15, vcc и ttl_fuel), можно вычислить сопротивление датчика между fuel и gnd.
у вас функция от четырех параметров, какие пол-листа?
решайте кусками, только ом без кирхгофа:
- ток через делитель,
- напряжение в точке fuel,
- ток через r16,
- ток через датчик,
- сопротивление датчика.
можно функцию вообще не сочинять, а тупо считать промежуточные переменные, как написано. ардуине на один зуб.
Да, спасибо за подсказку , это сработало. Расписал , подставил в формулу, сошлось в пределах 10%. Чуть позже немного сокращу её и перепешу в ардуину. https://photos.google.com/share/AF1QipNmbvTgoqxIihwTJt_Vahxt3al9jmXHQZY17a1rsn3mHH0ix4oHrD4J2gY2Mdve0g/photo/AF1QipM1WHaYckwZb80nEi02RfTwlrxkHMJ_usszkAtZ?key=LWpJSTZXeG1RSnN6blVkRmtFR2pMeVd5MkduendB