Измерить группу из 16 АКБ 12в на STM32

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
Mr.Aloof
Родился
Сообщения: 5
Зарегистрирован: Вт фев 05, 2019 08:05:54

Измерить группу из 16 АКБ 12в на STM32

Сообщение Mr.Aloof »

Всем привет! Прошу совета и критики по схеме, так как я чайник :-)
Есть ИБП с группой 16 свинцово-кислотных АКБ по 12В с нулём посередине. Проблема в разбалансе АКБ так как балансиров не предусмотрено.
Хочется повесить на каждый АКБ балансир и измерять напряжение каждой АКБ с помощью STM32, чтоб видеть графики их заряда-разряда и своевременно менять "слабое звено".
Готовых устройств за разумные деньги не нашел, вот и решил колхозить.
Для балансира накидал простую схему с нагрузочным резистором чз полевик IRLML5203TR и TL431. Под рукой были керамические резисторы на 20 Ом 15W, так что ток балансировки вышел 0,7А - вроде достаточно.

А вот с измерением не могу определиться. Измерять весь диапазон в 110 и более вольт - 12 бит точности маловато. Нужно мерить разницу, и на ум приходит ОУ по вычитающей схеме.
Решил использовать 2 АЦП отдельно для положительного и отрицательного плеча. Для измерения напряжений с 16 балансиров тянем шлейф на плату, далее делитель, потом мультиплексоры на 4052 которые коммутируют пары с соседних АКБ, далее ОУ на дешевом LM324. Мультиплексорами будем управлять с STM32 и им же измерять. Накидал схему в Proteus - вроде работает. Смотрите во вложении картинку и сам проект.
Смущают моменты:
- нужно ли ещё какую-то защиту повесить? Или достаточно диоды воткнуть по входу АЦП чтоб в 0-3.3в ограничить?
- когда инвертор ИБП работает от АКБ, простым мультиметром напряжение не померять - цифры скачут. Приборов серьёзнее нет, и что там творится в цепи мне не очень понятно :-( Но подозреваю что там "ад и израиль" из-за мощной импульсной нагрузки с током в 10-15А. Будут ли эти всплески влиять на измерение по такой схеме? Плюсом шлейф на плату порядка 1,5 метра рядом с силовым проводом ПВ-3 по которому эти 10-15А скачут... Воткнул наобум конденсаторы перед ОУ, нужен ли дроссель (как его посчитать?) или всё это лишнее?
- Может я что-то не учёл и при реализации в "железе" будет "бабах"? :shock:

Надеюсь на советы бывалых :-)

PS: перенесите в нужный раздел, я так и не определился к какому больше подходит :-(
И Может кто-то знает доступное готовое устройство с балансиром и показометром на 16 АКБ не дороже 5тр?
Вложения
Схема в Proteus.zip
Схема для Proteus v8
(25.5 КБ) 228 скачиваний
Схема.pdf
Схема картинкой. В симуляции выбрано измерение третьих АКБ. На вольтметрах расчетное значение для 9В и 15В
(227.86 КБ) 299 скачиваний
Реклама
jcxz
Мудрый кот
Сообщения: 1731
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение jcxz »

[uquote="Mr.Aloof",url="/forum/viewtopic.php?p=3563845#p3563845"]А вот с измерением не могу определиться. Измерять весь диапазон в 110 и более вольт - 12 бит точности маловато.[/uquote]
Так если мало - значит надо взять больше. Разве не так? 24 бит надеюсь хватит? И можно выкинуть всю эту мудрёную схему, обойдясь лишь набором резисторов.

[uquote="Mr.Aloof",url="/forum/viewtopic.php?p=3563845#p3563845"]Будут ли эти всплески влиять на измерение по такой схеме?[/uquote]
Главное - чтобы АЦП умел быстро защёлкнуть аналоговое значение на входе. А дальше - программное усреднение из нескольких замеров. Конденсаторы - лишнее.
Реклама
Mr.Aloof
Родился
Сообщения: 5
Зарегистрирован: Вт фев 05, 2019 08:05:54

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение Mr.Aloof »

[uquote="jcxz",url="/forum/viewtopic.php?p=3572486#p3572486"]Так если мало - значит надо взять больше. Разве не так? 24 бит надеюсь хватит? И можно выкинуть всю эту мудрёную схему, обойдясь лишь набором резисторов.[/uquote]
Действительно, есть же недорогие MCP3421. :facepalm: 18 бит уже нормально.
Но тем не менее это не сильно помогает - всё равно нужно как-то коммутировать на АЦП 16 точек измерения, и желательно в дифференциальном режиме а не просто вычитанием, что бы не накапливать ошибку измерения.
В общем, упрощения не получается. Только если отдельный АЦП на каждый аккумулятор и гальванически развязанную шину делать...
viiv
Грызет канифоль
Сообщения: 289
Зарегистрирован: Чт ноя 06, 2014 13:09:06

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение viiv »

Посчитайте какой точности нужны резисторы для обеспечения требуемой точности измерения напряжений АКБ.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение Albert_V »

Mr.Aloof, Не знаю насколько корректно составлены модели в протезе (я им не пользуюсь), но первое, на что обратил внимание - это то, что вы пытаетесь коммутировать входные напряжения, которые в абсолютном значении намного выше напряжения питания 4052.
Это ошибка. Не будет это работать.
Mr.Aloof писал(а):Только если отдельный АЦП на каждый аккумулятор и гальванически развязанную шину делать...
Как вариант - да.
Реклама
Mr.Aloof
Родился
Сообщения: 5
Зарегистрирован: Вт фев 05, 2019 08:05:54

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение Mr.Aloof »

[uquote="viiv",url="/forum/viewtopic.php?p=3573197#p3573197"]Посчитайте какой точности нужны резисторы для обеспечения требуемой точности измерения напряжений АКБ.[/uquote]
Если на делителях - то не сильно важно, учтется программной калибровкой. А вот на ОУ да, есть сомнения. Добавлю подстроечный.
Albert_V писал(а):Mr.Aloof, Не знаю насколько корректно составлены модели в протезе (я им не пользуюсь), но первое, на что обратил внимание - это то, что вы пытаетесь коммутировать входные напряжения, которые в абсолютном значении намного выше напряжения питания 4052.
Это ошибка. Не будет это работать.
Mr.Aloof писал(а):Только если отдельный АЦП на каждый аккумулятор и гальванически развязанную шину делать...
Как вариант - да.
Для cd4052 диапазон до 20в. Не на много выше, но да, нужно подкорректировать делители. К тому же с разводкой как то не очень получается. Буду думать, но кардинально другой схемы не приходит на ум.
Ставить 16 АЦП не хочу - как то совсем не рационально.
Реклама
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение Albert_V »

Mr.Aloof писал(а):есть же недорогие MCP3421
Не намного дороже, есть AD7799.
Mr.Aloof
Родился
Сообщения: 5
Зарегистрирован: Вт фев 05, 2019 08:05:54

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение Mr.Aloof »

[uquote="Albert_V",url="/forum/viewtopic.php?p=3573211#p3573211"]
Mr.Aloof писал(а):есть же недорогие MCP3421
Не намного дороже, есть AD7799.[/uquote]
Минимум в 2 раза дороже. И всё-равно коммутировать. Тогда уж поискать больше каналов. Есть 8-ми канальные, но диф.входы у них парные. то есть можно измерить диф. между 0-1 и 2-3, но не между 1-2 :(
Если измерять диференциально, то есть напряжение отдельно каждой АКБ, то достаточно и 10 бит. Получается вопрос сводится к "схема 16-ти канального диференциального мультиплексора". И выбор - либо самому этот мультиплексор собирать и использовать встроенный в МК (дешевле), либо использовать готовые многоканальные АЦП (проще, и думаю качественней) :dont_know:

Диференциальное измерение думаю критично - так как если меряем цепочку АКБ, то пока измеряли 1,2...8 - на первых уже напряжение изменилось и 8-й будет измерен некорректно. С другой стороны, изменения не настолько динамичны, и если цикл измерения уложить в 0,1с и использовать усреднение в 1с, то получим достаточно правдивые цифры и в одиночном (псевдодиф.) режиме... Главное сгладить скачки от работы инвертора.

PS: Господа, а многоканальные АЦП в псевдодифф. режиме сразу все каналы в УВХ защёлкивают? Или по одному? Смотрю на AD7708 - может разориться на 2 таких и не париться?
PS2: Про УВХ всё понял :) на блок-схеме ж нарисовано что буфер после мультиплексора :facepalm:
Mr.Aloof
Родился
Сообщения: 5
Зарегистрирован: Вт фев 05, 2019 08:05:54

Re: Измерить группу из 16 АКБ 12в на STM32

Сообщение Mr.Aloof »

В общем, это я зря морочился, так как источник измерений у меня достаточно статический по сравнению со скоростью МК.
Оверсемплинг до 16 бит и дальнейшее усреднение показало вполне достаточную точность.
Так что конечный вариант - с АКБ через делители на CD4051, с него на буфер из LM324 в режиме повторителя, далее ещё одно масштабирование до вписания в 3.3В (в отрицательном плече инвертирующий ОУ, в положительном делитель с повторителем, чтоб все 4 ОУ задействовать).
Измерение на каждый АКБ: переключаем канал мультиплексора, делаем 16 замеров, складываем и сдвигаем на 4 бита. Получаем 16 бит. Затем накопленный массив усредняем, вычитанием вычисляем напряжение на каждом АКБ, складываем в буфер.

PS: Решил конечное изделие делать не на STM32, а на ESP32 - чтоб сливать данные по вай-фай. Там правда один АЦП, но на 160 МГц его вполне хватит.
Ответить

Вернуться в «Разные вопросы по МК»