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

Странные показания на аналоговом входе микроконтроллера


andrew.progs

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

У меня есть импульсный блок питания(10.5-14.5 вольт), батарея(свинцово-кислотная) и микроконтроллер(arduino pro 8МГц и 3.3v), который управляет напряжением блока питания с помощью цифрового потенциометра, чтобы регулировать силу тока

Есть 2 клеммы на плате(одна для батареи, одна для бп) их плюсы соединены, минус соединен через датчик тока. Аналоговый пин микроконтроллера соединен через делитель напряжения(220кОм и 15кОм) с плюсом клеммы бп

Проблема состоит в том, что без нагрузки микроконтроллер показывает правильное напряжение, но когда от блока питания на батарею идет ток в 8-9А, почему-то значения напряжения завышаются, причем значительно, где-то на 1 вольт(после вычисления (pin * (1.1 / 1023)) / (15000.0 / (216000.0 + 15000.0)).  Помогите разобраться, почему так происходит, ведь ток, проходящий от бп к батарее не должен влиять на работу параллельно подключенного делителя. Я относительно новичок в электротехнике, хочу разобраться.

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

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

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

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

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

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

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

Да вроде схема простая, думал описания хватит, но вот прикладываю. ACS712 у меня модулем, так что на filter уже был конденсатор, не стал его рисовать, да и по идее это опять же никак не должно влиять на работу делителя. R2 соединен с общей землей, а не к микроконтроллеру, на схеме удобнее было просто туда соединить. Делал сплошными линиями, а не модулями, чтобы чуть нагляднее для себя видеть что с чем соединено. Еще на схеме этого нет, но между VIOUT и A1 тоже стоит делитель напряжения. Изначально думал делать с опорным напряжением 5V, припаял к нужному конденсатору на плате arduino опорное напряжение(пина у нее нет), но это почему-то не работало правильно, поэтому сделал с внутренним опорным напряжением 1.1

Проблема с показаниями на А1

Charge_2022-12-11.png

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

Особенности хранения литиевых аккумуляторов и батареек

Потеря емкости аккумулятора напрямую зависит от условий хранения и эксплуатации. При неправильном хранении даже самый лучший литиевый источник тока с превосходными характеристиками может не оправдать ожиданий. Технология, основанная на рекомендациях таких известных производителей литиевых источников тока, как компании FANSO и EVE Energy, поможет организовать правильный процесс хранения батареек и аккумуляторов. Подробнее>>

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

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

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

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

Не правильно подключен  делитель напряжения (220 к и 15 к)-после шунта

Если шунт 0,1 Ом,то при токе 8 ампер напряжение будет завышено на 0,1*8=0,8 вольт

Надо либо программно компенсировать напряжение на шунте,либо ставить делитель до шунта

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

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

Мультиметром измеряли, или только ардуиной?

Да, мультиметром замерял, плюс у меня на самой батарее стоит вольтметр и на блоке питания стоит вольтметр-амперметр. Показания микроконтроллера выше, чем показания вольтметра на блоке питания и на клеммах

 

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

Не правильно подключен  делитель напряжения (220 к и 15 к)-после шунта

Если шунт 0,1 Ом,то при токе 8 ампер напряжение будет завышено на 0,1*8=0,8 вольт

В даташите ACS712 написано, что он на эффекте Холла, там, кажется, нет шунта. Но написано, что его сопротивление 1.2мОм, это получается падение должно быть 0.0012*8=0.0096V, все равно не сходится. Да и мультиметр на клеммах показывает правильно. И, если я не ошибаюсь, напряжение должно ведь наоборот упасть, т.к. оно идет от бп до батареи

У меня есть предположение, что может я не очень хорошо все спаял(сделано на печатной макетной плате, ноги резисторов припаяны напрямую к ногам клеммы и микроконтроллера), но я все хорошо проверил, плюс в покое все в порядке. Было только небольшое отклонение, которое я компенсировал в коде, поэтому считаю не 220кОм, а 216, это отклонение вполне входит в заводское отклонение резистора(5%). Я просто не сильно хорошо прям разбираюсь, поэтому решил тут уточнить, может я просто не знаю какого-то принципа, по которому напряжение на делителе может увеличиваться, когда в параллели течет ток. Если принципа такого нет, то я просто перепроверю все еще несколько раз и перепаяю все контакты

 

43 минуты назад, Alex_641 сказал:

Скорее всего в данной ситуации влияние оказывает место подключения массы АЦП. Я же не зря писал что схема нужна. 

Масса у всех, можно сказать, общая. Я подправил немного схему, физически все выглядит примерно так

Charge_2022-12-11.png

 

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

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

Хорошо, спасибо за совет! Подключить одновременно с существующим подключением или лучше заменить?

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

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

Это всё – полумеры.
Для точного измерения нужно переходить на четырёхпроводную схему:
тянуть отдельные тонкие провода к "крокодилам". 
Эти провода подключить к ОУ, чтобы он вычитал показания между входами. А результат подавать на АЦП.

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

7 минут назад, andrew.progs сказал:

одновременно с существующим подключением или лучше заменить?

Вместо существующего подключения. 

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

7 minutes ago, ChePay said:

Это всё – полумеры.
Для точного измерения нужно переходить на четырёхпроводную схему:
тянуть отдельные тонкие провода к "крокодилам". 
Эти провода подключить к ОУ, чтобы он вычитал показания между входами. А результат подавать на АЦП.

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

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

6 minutes ago, ChePay said:

Начните с того, что делитель нужно подбирать так, чтобы макс напряжение на входе было почти равно опорному напряжению АЦП. 

Так и есть. Максимальное напряжение 15V(на самом деле 14.5, но с запасом), опорное - 1.1V. 15 * (15000 / (216000 + 15000) = 0.97. Что не так?

1 minute ago, Геннадий said:

Что Вас заставило установить датчик в разрыв общего провода, а не в плюсовую линию АКБ?

Видел, что делают так, так и сделал. Так не правильно? И вообще, подскажите в разрыв какой линии лучше ставить датчики\реле и т.д. Или без разницы?

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

Тогда ОК, думал опорное выше.

В разрыв любого провода можно ставить, просто нужно понимать, на что это влияет.

У вас делитель в 15 раз. Если на минусовом выводе напряжение поднимется всего лишь на 0,1 В из-за падения напряжения на проводах, датчике, соединениях, то микроконтроллер будет считать повышение в 15 раз больше – 1,5 В.

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

ACS712 гальванически развязан от входной цепи шунта. Поэтому его лучше устанавливать в плюсовую линию. Так вы избавитесь от проблем падения напряжения на самом датчике, выделяемые в линии общего провода (по Вашей текущей схеме). Далее при нулевом токе через датчик, его выходное напряжение равно VCC/2, т.е. 2,5В, а у Вас опорное всего 1,1В. По схеме, Вы не использовали фильтр, встроенный в датчик (вывод Filter висит в воздухе). 

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

6 minutes ago, ChePay said:

Тогда ОК, думал опорное выше.

В разрыв любого провода можно ставить, просто нужно понимать, на что это влияет.

У вас делитель в 15 раз. Если на минусовом выводе напряжение поднимется всего лишь на 0,1 В из-за падения напряжения на проводах, датчике, соединениях, то микроконтроллер будет считать повышение в 15 раз больше – 1,5 В.

Вот сейчас, скорее всего это и происходит, есть большое подозрение, что масса аккумулятора не 0, я некоторое время назад ради интересна замерял разность потенциалов с массы бп и аккумулятора и там была небольшая разница, как раз около 0.1-0.2 и вероятно это и есть корень моей проблемы

4 minutes ago, Геннадий said:

ACS712 гальванически развязан от входной цепи шунта. Поэтому его лучше устанавливать в плюсовую линию. Так вы избавитесь от проблем падения напряжения на самом датчике, выделяемые в линии общего провода (по Вашей текущей схеме). Далее при нулевом токе через датчик, его выходное напряжение равно VCC/2, т.е. 2,5В, а у Вас опорное всего 1,1В. По схеме, Вы не использовали фильтр, встроенный в датчик (вывод Filter висит в воздухе). 

Я буду в следующей итерации делать на шунте - его лучше в плюс или минус ставить?

По поводу остального - я там дальше писал, что я пытался дать микроконтроллеру опорное напряжение в 5V на AREF, но почему-то это не работало. Долго бился, в итоге поменял делитель на основное напряжение и поставил делитель на VIOUT ACS712. Также, он у меня уже был модулем(почему-то отдельно чипом в одном магазине стоило в 5.5 раз дороже, чем модулем в другом), там уже стоит конденсатор на фильтре

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

Хотя... Если Вы обратите внимание на монитор тока INA138, то его шунт(внешний) устанавливается в плюсовую линию и тем самым освобождает Вас от проблем с падением по общему проводу. Думаю, что Вам это самое то.

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

При зарядке свинцового аккумулятора на проводах получается падение напряжения.
Нужна четырёхпроводная схема измерения напряжения:image.png.818b885da4a223eb98ad4f034d395cea.png

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

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

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

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

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

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

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

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

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

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

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