avatar_mr.Dream

Методы измерения напряжений элементов батареи (для BMS, cellog т пр.)

Автор mr.Dream, 08 Дек. 2016 в 21:06

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

yuri

[user]Linkov1959[/user], На Тл-ках (2я схема ) должно быть лучше.
Электротаврия 28S6P (28 консерв Ниссан-лиф+28S2P LG e63). ДС3.6 37000 км

D.J.Vova

На bq77pl900 как решили вопрос увеличения ячеек до н-го количества в случае работы в качестве измерителя для одного микропроцессора? Развязывать шину i2c с каждой микросхемы ? Других решений я вроде там не вижу.....
Кстати еще в тему.....есть недорогие микросхемы для измерения 6 ячеек AP9107 http://www.mouser.com/ds/2/115/AP9107-464725.pdf
Управление правда не i2c, а мультиплексорное.

clawham

я решил влоб - по одному процу для каждых 10 ячеек и межпроцесорная связь
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

D.J.Vova

ну так меж процессоров тогда по любому развязываться придется.......( А может запитать отдельным изолированным источником питания все микросхемы ? Тогда не придется развязывать больше ничего. В документации не увидел что входа внутри как то связаны с питанием. При моих задачах нужно 8-10 таких микросхем последовательно, проще(дешевле) наверное развязать питание и один процессор центральный воткнуть. Вот только в плане безопасности нет ли подводных камней........Почему то производители электромашин все на рассыпухе делают, даже современный Nissan Leaf использует измерители 4-ячеечные (их там 24 микросхемы) и один общий процессор. Не думаю что у них нет возможности заказать спец микросхемы сразу на все ячейки.

clawham

#40
что значит развязать питание? каждым 10-ти ячейкам - своя бкюшка и свой проц. проц стоит 20 грн, бкюшка 200 что экономится? две оптопары на 10 ячеек? а я сейчас и конденсаторную версию развязки испытываю! работает пока нормально!

у меня до 100 ячеек :) нечего там развязывать такого сложного - все очень просто.

Конечно можно заморочиться над развязкой i2c но это можно сделать только в одну сторону и проблема номер два - у всех бкюшек одинаковый i2c адрес. увы никак его не изменить. тоесть или пины данных для каждой микрухи надо будет разделять или тактовые - ни то ни другое не реально.
Кроме того i2c bq77pl900 использует только для конфигурирования - напруги и токи она выдает в аналоговом виде - ктото должен их читать, ктото должен балансить и т.д. и т.п. - итого без проца на каждую бкюшку не обойтись.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

i

Цитата: clawham от 23 Янв. 2017 в 23:06
Конечно можно заморочиться над развязкой i2c но это можно сделать только в одну сторону и ...
Есть решения двунаправленной развязки и для I2C и 1-wire.
Интерфейс I2C с гальванической развязкой

clawham

#42
имелось ввиду низкоскоростное и сверхмалопотребляющее устройство! а эта фигня 3.3 ма жрет в простое - вся моя плата со светодиодами кушает 2 в активном режиме и 0.6 в спячке(при этом продолжают светить два светика в оптопарах)..
И всеравно это ЛИШЕНО СМЫСЛА! BQ77PL900 НЕ СОДЕРЖИТ АЦП!!! Нет его там - она просто i2x управляемый комутатор на 10 каналов - ты её просиш номер и она эту ячейку переносит на свою землю. ещё в ней есть опротник хороший, несколько делителей напряжения, преобразователь питания на 50 милиампер, блок балансировочных ключей, драйвера P канальных силовых ключей и операционник для измерения тока - диференциальный и  с переключаемым коэффициентом умножения.
Все! больше в ней нету ни че го! :) Нет смысла развязываться по логике - adum стоит намного дороже одного проца и 2 оптопары. Кроме того скоро выпущу в релиз конденсаторную версию - линия не будет требовать питания и минусом 2 оптопары и пинусом потребление.
Плюсом идет супервайзинг - каждый проц следит за соседом - пропадание связи на 10 минут - каждый из процесоров оставшихся в живых - разомкнет силовой размыкатель! аналогично если вдруг чтото случится и любой из процев зависнет - то хоть один останется работать и разомкнет. ну и каждый из процев отрабатывает все ячейки всей батареи и пороги отслежывает не только по своим ячейкам а по всем в батарее- итогом опять же - повышение надежности.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

i

Adum-мы славятся конскими ценниками. B-)
Главное, что решение есть (и не только у adum-ов), а целесообразность его применения зависит от конечной цели.
Я использую двунаправленную "однопроводную" гальваноразвязку и на оптронах и на микросхемах-изоляторах (ISO1050 или Si8641EC + IFX1050), смотря для кого и для чего делаю.
Делал и на конденсаторах - дешево и работает отлично.... но только на столе... в моих "боевых" условиях помехи оказываются сильнее сигнала.

clawham

ну вот и у меня та же проблема - делаю просто бешеную скорость и CRC и несколько раз повторяю передачу. данных-то на самом деле не так и много. Ну и плюсом - ставлю кондеры вдесятеро больше развязывающих по землям согласующих устройств.

По поводу изоляторов - я и не говорил что их нет - я говорил что их сложно самому придумать чтоб это все жрало мало. Мы же про бмс говорим - низкое потребление - наше все. Хотя у меня сейчас и организовано аварийное выключение всей бмски при достижении минимального порога и долгом там пребывании - запуск - одной кнопкой. но всеравно неприятно после отпуска увидеть в отсечке аккум.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

i

Еще одна неприятность конденсаторов, это их первичный заряд (до уровня этажа в батарее).
Пока работал на 2-8 ячейках - все нормально, перешел на 15 и первое-же подключение шины с кондерами  вышибло транзисторы. Поставил супрессоры, вылеты при сборке стали реже, ввел предварительный заряд... стало лучше, но гарантии все одно нет. Собираешь и думаешь "повезет - неповезет?".
Потом вылезло влияние длинных проводов (батарейка большая) на фронты сигнала и провалы на плато импульса (1 импульс превращался в пару или тройку... но не для всех) и их расположение относительно земляного провода (образуется контур или нет).
После этого я подумал, что делаю "что-то не так" и выкинул конденсаторную систему, её дешевизна слишком дорого мне обходится.

P.S.
Я не пытаюсь отговорить или опорочить, просто рассказываю про свои "грабли".

clawham

дада это тоже есть - решается килоомником на проц и стабилитроном на землю :) я использую 10 нан кондеры :) и симетричную передачу данных - это когда каждый второй байт это инверсная копия предыдущего байта. ну и в байте у меня 9 бит :)

И да - оптопары намного проще. но скорость никакая и потребление большое
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

i

Скорость мне и не нужна.
Шина молчит всегда, пока её не спросишь или кто-то из ячеек не просигналит по ней, что что-то случилось. Например "я (номер) перегрелась (температура)", или "мое напряжение упало ниже порога" и так далее.
Постоянного опроса всех модулей я не делаю, они сами отрапортуют, если что не так, только при заряде проверяю все-ли модули отвечают и все.

Когда нет ни заряда ни разряда модули находятся в спячке и потребляют меньше микроампера. Выход из спячки по первому импульсу на шине.
Потребление модуля порядка 6 мА, это в активном режиме, когда идет замер параметров и сравнение их с порогами (16 раз в секунду), из этих 6мА светодиод (который индицирует это самый "активный" режим) кушает 5мА .

D.J.Vova

Цитата: clawham от 23 Янв. 2017 в 23:06
что значит развязать питание? каждым 10-ти ячейкам - своя бкюшка и свой проц. проц стоит 20 грн, бкюшка 200 что экономится? две оптопары на 10 ячеек? а я сейчас и конденсаторную версию развязки испытываю! работает пока нормально!

у меня до 100 ячеек :) нечего там развязывать такого сложного - все очень просто.

Конечно можно заморочиться над развязкой i2c но это можно сделать только в одну сторону и проблема номер два - у всех бкюшек одинаковый i2c адрес. увы никак его не изменить. тоесть или пины данных для каждой микрухи надо будет разделять или тактовые - ни то ни другое не реально.
Кроме того i2c bq77pl900 использует только для конфигурирования - напруги и токи она выдает в аналоговом виде - ктото должен их читать, ктото должен балансить и т.д. и т.п. - итого без проца на каждую бкюшку не обойтись.
Я имел ввиду запитать bq не от батареи, а от изолированного от батареи источника, но если у них у всех один и тот же адрес, то вообще смысла нет шину развязывать, и совсем из головы вылетело что ацп то там нет по i2c(

А у вас между собой как процы общаются ? не по i2c ? Мне например надо видеть всю картинку в целом. Какое сейчас напряжение на всех 100 ячейках, для этого само собой придется опросить каждый из 10-ти процессоров.
Каким образом это реализовано у вас ?

clawham

очень просто - уарт
просто в компорт выкидывается строка каждой из субплат в каждой по 10 ячеек.

вот пример ещесекундной посылки из 4-х

I:9.142,W:171.6,
#1= 3.183 3.144 3.159 3.176 3.107 3.113 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=39.3 3.078 3.364
#2= 3.128 3.182 3.181 3.121 3.116 3.086 3.149 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=26.7 3.101 3.364
#3= 3.339 3.325 3.331 3.349 3.348 3.345 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=31.8 3.078 3.364
#4= 3.330 3.334 3.325 3.316 3.321 3.364 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=23.4 3.078 3.354

#1 2 3 4 - номер субплаты
0000000000 - единичка - балансировка соответствующей ячейки
DSG+ - разрешен разряд, - - заплещен
Т - температура платы
3.101 3.364 - минимум и максимум в зоне всей батареи кроме своих ячеек - диагностика качества линии. если там дольше 1 секунды - 5.000 0.000 - связь нарушена/с ошибками

вот такое и кидается ещесекундно в линию. просто слушается уартом или напрямую - блютуз модулем.
это все можно собирать в текстовый файл - и есть прога на комп с удобным отображением графика всех величин.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

D.J.Vova

Но ведь uart - это же связь только для двух устройств, как общаются все 10 субплат ? Или судя по логу вы просто в нужный момент оптопарой "подтыкаете" в линию очередную плату, ждете строку, а предыдущую плату перед этим отключаете от линии и т.д. ?

clawham

Вы не поверите но все намного проще!

Линия это запаралеленые приемные светодиоды оптопар, которые RX каждого процессора подтягивают на +3,3

Потому когда на линии есть +3 вольта - все выводы RX всех плат подтянуты к 1-це - исходное состояние уарта.

Когда любая из плат хочет чтото сказать в линию - она опускает на землю вывод TX и засвечивает оптопару на передачу а та - с помощью транзистора - замыкает линию ниже порога засвечивания светодиодов оптопар! итого у всех плат на процах в линию RX приходит ноль.

Тоесть каждая плата слышит любую из плат которая решилась говорить в линию. конечно если две одновременно начнут говорить - будет каша.

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

Каждая плата все время слушает линию, анализирует строки поячеечных напруг высчитывая общее кол-во ячеек в батарее, кол-во плат, минимум и максимум напряжения на всей батарее. ну и в зависимости от результатов - или отключает чтото или балансит все свои ячейки или уходит в полный повердаун.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

Keil

Добрый день. Еще не видел такого метода: Один ацп и контроллер с гальванической развязкой по питанию  и коммутация на герконовых реле . Из минусов только ток потребления и размер.

UriBas

Цитата: Keil от 01 Июль 2020 в 12:29Добрый день. Еще не видел такого метода: Один ацп и контроллер с гальванической развязкой по питанию  и коммутация на герконовых реле . Из минусов только ток потребления и размер.
Такое вполне может быть..  у меня плата валяется, где пару (а может больше) десятков реле на герконах..  эта плата стояла в древнем ЛБП (лаб блок пит) и коммутировала комбинацию сопротивлений, таким образом достигалась точность с шагом 1мВ и 1мА в диапазоне до 45В (если не ошибаюсь) и до 0,5А.   Может попробую сделать на этой плате, если Бог даст.. спасибо за идею.
Восточная мудрость - "Шакал воет - караван идет"  Эл.вел. 350Вт.   Верую в Иисуса Христа, НЛО.  тема "продвинутой моргалки" https://electrotransport.ru/index.php?msg=1669651