Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить

Re: Помогите разобраться с BQ77PL900

Пн окт 10, 2016 20:46:19

ойейейеййй..прррр...поубавьте скептицизму ;)

давайте по пунктам?

1) У меня есть штук 8 паков от ноута которые и горели и взрывались и разбалансировывались так что нет - ноуты не аргумент. а пайка да - повреждает элемент внутри

2) Вы меня конечно извините но вы общаетесь с человеком, который не только разбирал свежеснятую батарею но и ремонтировал её, а так же разбирал на элементы...кроме того у меня есть прошивка на платы бмсок 6S тесловских. Так для общего развития - вот вам картинки Изображение - видны 6S блоки
Изображение - тут отчетливо видно что плюс каждой банки 18650 на общую шину идет не вашими лентами а тонкими волосочками с минимальной длиной и толщиной - экспериментально известно - сгорают при 15 амперах. P90D+ на разгоне берет кратковременно 13 ампер в течении 2.6 секунд разгоняется до 100 кмч. Выход из строя бывает разный - увеличение внутреннего сопротивление и уменьшение до нуля внутреннего сопротивления - меня конечно же волнует уход батки в ноль изза дендритов - они делают КЗ внутри банки и если предохранителя нет - остальные будут эту ячейку вкачивать до красна.

3) Ток то пойдёт да. поровну но вот напряжения будут разные! в одной 12S + 1-на закороченная а во второй 13S и все нормальные. у 12-ти будет перезаряд в то время как рядом же у 13 ячеек будет недозаряд. просимулируйте в симуляторе ситуацию и пойчмёте в чем проблема.

4) По поводу балансирного тока - у меня например в велосипеде 26S2P Лифера 20 ач банками-пакетами. токи 400 ампер долгорвмеенных. снимаю реально 300. заряд предельный 5С - тоесть 100 ампер. номинальный 2С - 40 ампер. какой бы не была у вас балансировка - она никогда не пересилит сварочник! П.С. у меня таки есть версии на 10 ампер балансировки - высаживаются в феты в линейном режиме стабилизатора тока включенные. Феты на общую планку через изолирующие прокладки и вуаля :) подогрев батареи в коробе зимой есть .

Вы ж поймите я представляю не себя и свой опыт а как минимум 20-ть человек электротранспортовиков которые и сами контроллеры векторыне делали для BLDC и бмсок очень много разных перепробовали, и транспорт от электромоноколес до электро мазды RX-8 - дада та самая с роторным мотором. электричка по динамике приблизилась к тесле :)

Гитхаб с андроидом идут лесом парой. исходников я не даю так что смысла в хабе вашем не вижу ;)

Re: Помогите разобраться с BQ77PL900

Пн окт 10, 2016 22:17:21

clawham писал(а):1) У меня есть штук 8 паков от ноута которые и горели и взрывались и разбалансировывались так что нет - ноуты не аргумент. а пайка да - повреждает элемент внутри

я уверен, что паки выходили из строя после добычи их из корпуса.

clawham писал(а):2) Вы меня конечно извините но вы общаетесь с человеком, который не только разбирал свежеснятую батарею но и ремонтировал её, а так же разбирал на элементы...кроме того у меня есть прошивка на платы бмсок 6S тесловских. Так для общего развития - вот вам картинки - видны 6S блоки

Только вашей фотографии нет.
Интернет все стерпит, я, вот, Ктулху видел :idea:

Хорошо, пусть будет с такими контактами. Только, опять же, не аргумент, тесла имеет под сотню кВт*ч, если оно начнет гореть, то будет взрыв, как тротиловой шашки.
Что до Lifepo4, он не взрывается, собственноручно проверялось. Можете в интернете поискать отчеты, есть несколько видео, много кто издевался над батарейками.

И возвращаясь к батарее теслы, ячейки соединены в параллель для получения одной банки и имеют общую точку снятия показаний.

clawham писал(а):3) Ток то пойдёт да. поровну но вот напряжения будут разные! в одной 12S + 1-на закороченная а во второй 13S и все нормальные.

Ток не пойдет поровну, разное итоговое сопротивление линеек и напряжения разные итоговые.

clawham писал(а):Вы ж поймите я представляю не себя и свой опыт а как минимум 20-ть человек электротранспортовиков которые и сами контроллеры векторыне делали для BLDC

Вектроные и BLDC - это очень разные способы управления и двигателя.
А под тем "векторным", о котором ведется речь с электротранспорта, подразумевается синус шим, сам автор так писал. Может, что то изменилось.
И, неплохо бы, спрашивать остальных 20, что вы их представляете, а то они могут быть и не в курсе :tea:

clawham писал(а):Гитхаб с андроидом идут лесом парой. исходников я не даю так что смысла в хабе вашем не вижу

Зря. Никаких секретов в использовании HC-06 или подобных блутусадапторов нет, сейчас любой школьник на ардуине блутусом и вайфаем играется. Но код ваш и только вы решаете куда его давать, а куда не давать.
Последний раз редактировалось pcb Вт окт 11, 2016 15:02:13, всего редактировалось 1 раз.

Re: Помогите разобраться с BQ77PL900

Вт окт 11, 2016 08:07:26

Смотрите какое дело - они все вкурсе :) просто наш форум обитания это не радиокот как основной - а собственно по теме - электротранспорт.
Собственно сходу не нашел своих фоток но вот первая - это фото колеги с которым я в одессе и вскрывал батку.
Ещё раз говорю - ДА у тесля один канал на все 66 запаралеленых банок но у каждой банки есть аппаратный предохранитель!
ДА теслы 5 раз горели! И все разы от подачи лома или люка в батарейный блок на скорости 120-150 до сгорания полного - машина проехала ещё 20 минут припарковалась и сама вызвала спасателей! Если вы присмотритесь то заметите в теслабатарее есть спец переборки, есть слюдяные крышки и есть газоотводные каналы! Кроме того все банки там намертво удерживаются сверху и снизу пластиковым кавером который собственно заливался - тоесть поменять одну определенную банку в середине сборки это адская работа но в теории возможна.

По ноутовым баткам - увы мимо - они ко мне попадали со словами - вынимаеш из розетки - тухнет сразу. Батку менял на новую а старую конечно же ради любопытства разбирал. Кроме того вы никогда не видели этих видео?
https://www.youtube.com/watch?v=UPuoPjAS_Cc и им подобные! Ну горят они и в телефонах горят а там вообще одна банка! Литий опасен! при сильном разряде и последующем заряде большим током в литиевых батареях могут расти дендриты металического лития который и коротит электроды а дальше цепная реакция. Увы только LiFePo4 более менее стабилен и не поддерживает цепную реакцию. Потому кстати я на них и езжу.

Дальше про векторный контроллер... Ну уважаемый синус и вектор это разные вещи принципиально! Вы же понимаете почему векторный так назван? Могу растолковать! Векторный контроллер может применяться для работы совместно не только с асинхронником но и PMSM BLDC ВРД и прочими - это не принципиально - главное что делает векторный контролер - следит чтоб опережение создаваемого вектора магнитного поля катушками было ровно 90 градусов относительно вектора магнитного поля ротора. И если это асинхронник то вектор ротора постоянно проскальзывает с коэфф скольжения и за этим тоже должен следить векторник чтоб не допускать высоких значений и сильно низких тоже ибо это кпд. у BLDC коэфф проскальзывания равен нулю и положение вектора магнитов ротора равно положению ротора вообще! Просто частный случай. Самое главное что контролируется в векторном контроллере это угол между векторами. И в этом процессе оочень много переменных. Там и скорость нарастания тока в катушке ограниченная и режимы ослабления поля и вихревые и зубцевые токи и неравномерность магнитного потока ротора и неодинаковость потока катушек и ещё очень много всего. Потому в векторный контроллер загружают математическую модель двигателя - так называемый наблюдатель. Она расчитывается в реальном времени на основании имеющихся у контроллера данных - положение ротора, пофазный ток и обратные выбросы на индуктивностях. иногда дополнительно на низких скоростях инжектирую вч составляющую чтоб более точно отслеживать положение ротора относительно магнитного потока статора и вот на основании этих данных вразщается и виртуальная модель внутри контроллера - он из неё берет недостающие или не имеющие возможности измериться параметры в текущий момент и реагирует воздействуя на фазовращатель и стабилизаторы тока. Все очень сложно но если хоть раз проехаться на настроенном векторнике и на просто апроксимационном синусе то больше ни на блочнике ни на тупом синуснике ездить не захочется. Разница порой настолько разительна что диву даешся. Так что тоже мимо.

Ток не пойдет поровну, разное итоговое сопротивление линеек и напряжения разные итоговые.

Увы это бред! при зарядке в фазе CV сопротивление батареи с точки зрения зарядника плавно уходит в бесконечность так что выше 4.2 поднять напругу батка дает легко и непринужденно. даже ток в 10 милиампер способен 40 амперчасовую банку лития перезарядить до 6-ти вольт. и да потом она стрельнет при разряде. не сразу. первый цикл разряда она будет супербатареей и отдаст намного больше току при меньшем внутреннем сопротивлении но вот при попытке зарядить такую банку - сразу надо готовиться.

Ещё раз обьясняю для тех кто не понял! Паралелить последовательные паки нельзя - каждому паку своя бмс.
Или паралелить намертво силовыми выводами или делать каждой банке персональный предохранитель! Все кто сваривает а тем более спаивает 18650 паяльником рано или поздно рискуют словить очень много волшебного дыма.

И причем тут HC-06 ? или ардуино? ни то ни другое у меня не используется :) А причина по которой я не хочу отдавать исходник проста - не повторяйте моих ошибок ! Или берите готовую обкатанную долгими годами прошивку или пишите свою с нуля ибо потом не отмоешся :) Только и всего. Тем более что "Никаких секретов в использовании HC-06 или подобных блутусадапторов нет, сейчас любой школьник на ардуине блутусом и вайфаем играется" хотя я и не понимаю как эта строчка относится к моей разработке :) Написано много разных програм на разные платформы, все доведены до необходимого минимума по функционалу. Прошивка тоже уже год как не модифицировалась. Есть екселики для калибровки аналоговой части бкюшки. что ещё надо? бери и пользуйся. тем более на радиокоте я тоже выкладывал все свои наработки - но как видно никто даже не знает о их существовании...

Re: Помогите разобраться с BQ77PL900

Вт окт 11, 2016 14:59:54

clawham писал(а):По ноутовым баткам - увы мимо - они ко мне попадали со словами - вынимаеш из розетки - тухнет сразу. Батку менял на новую а старую конечно же ради любопытства разбирал.

Аккумуляторы ноутбуков обеспечены защитой. Одна ячейка умерла, контроллер не дает заряжаться/разряжаться. И опять же несколько ячеек соединены параллельно. Поэтому выводы о мониторе на каждую ячейку- не состоятельны. Мониторы ставят на банки.

clawham писал(а):сами контроллеры векторыне делали для BLDC

Еще раз процитирую для писателей:
pcb писал(а):Вектроные и BLDC - это очень разные способы управления и двигателя.
А под тем "векторным", о котором ведется речь с электротранспорта, подразумевается синус шим, сам автор так писал. Может, что то изменилось.


clawham писал(а):Увы это бред!

Себе разъясните законы Ома и Кирхгофа, тогда бредом казаться не будет.

Re: Помогите разобраться с BQ77PL900

Ср окт 12, 2016 07:57:34

Ещё раз говорю про аккумуляторы ноутов! Там нет предохранителя на другую банку относительно всего пака запаралеленых по 3м причинам -
1) там обычно вообще одна банка и ничего не паралелится
2) если и паралелятся то всего две и в случае кз одной банки вторая не сможет развить реакцию
3) там тупо экономят место и деньги - сдохло так сдохло - новую купят.

Все это не касается электротранспорта ибо если в электротранспорте и применяется запаралеливание ячеек то они как правило в состоянии гвоздь переплавить не то что микронные электроды выжечь. И поменять аккмуулятор на тесле стоимостью 20000 уе тоже как-то проблематично изза одной вышедшей из строя баночке. потому и применяются средства защиты которые не приведут у умиранию всего пака - просто на 3 амперчаса упадет ёмкость и все.

Никто ж не спорит что если следить за банками и заряжать малыми токами и разряжать тоже не больше 0.1С то ничего страшного не случится и без БМС вообще ибо все проблемы будут выявлены в момент постановки батареи на зарядку. Но мне например с этим париться не хочется - приехал подключил и пошел по своим делам. И да у меня хоть и лифер но всеравно я хочу увидеть одну деектную банку и не 25 винипухов изза перезаряда.....дада лифер тоже боится перезаряда.

Теперь омы и кирхгофы....они тут причееем? не ну конечно же да в начале то сразу после коротыша в батарее из 10S2P запаралеленой только конечными точками одна из 10S гирлянд просто немного зарядит банки из соседней гирлянды и все. скажем было
1-3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7
2-3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7

Тут происходит коротыш истанет
1-4,1 4,1 4,1 4,1 4,1 0,0 4,1 4,1 4,1 4,1
2-3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7 3,7

на бмс прийдёт бмс - 3,9 3,9 3,9 3,9 3,9 2,8 3,9 3,9 3,9 3,9
Да вначале будет ток некислый из второй гирллянды в первую но когда банки зарядятся то токи станут по нулям и даже ездить можно будет легко - никакой разницы не будет.

но потом при заряде получится очень сказочная картина
1-4,66 4,66 4,66 4,66 4,66 0,1 4,66 4,66 4,66 4,66
2-4,20 4,20 4,20 4,20 4,20 4,20 4,20 4,20 4,20 4,20

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

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

Дальше про контроллер с электротранспорта - это вообще что? У нас на форуме например уже есть 6 контроллеров. 2 из них запущены в серию, остальные либо есть в паре экземпляров либо не дают плат схем исходников. Так вот один из них неплохой но скалярник - тупо апроксимирует синус и все. второй - 100% векторник, третий тоже 100% векторник с FOC - тоесть инжекция ВЧ, карта неравномерности магнитов и так далее. Так что уточните уж что за контроллер вы имеете ввиду!

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

Re: Помогите разобраться с BQ77PL900

Ср окт 12, 2016 14:53:46

Спасибо большое! Возник такой вопрос: Вы калибруете bq77pl900?

Re: Помогите разобраться с BQ77PL900

Ср окт 12, 2016 15:46:52

Естественно калибрую!
4 точечная методика ! для каждой точки высчитывается смещение и коэффициент усиления :)

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

https://www.dropbox.com/s/3g05mtcrn2wx2 ... _.png?dl=0

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

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

https://www.youtube.com/watch?v=Yy44yMzi170

ну и вот моя тема со всеми наработками

http://radiokot.ru/konkursCatDay2015/47/

Пользуйтесь учитесь и спрашивайте!

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 12:48:56

clawham писал(а):Естественно калибрую!
4 точечная методика ! для каждой точки высчитывается смещение и коэффициент усиления :)



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


Пользуйтесь учитесь и спрашивайте!


Подскажите пожалуйста, по какой формуле посчитано отклонение для Вашего графика или это отклонение в вольтах?

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 13:30:05

это отклонение в вольтах от того что было подано на каждой балансирный канал. тоесть видно что между каналами нехилая разница но и на протяжении всей шкалы нехилая нелинейность. на графике я выровнял все напряжения в одной точке 4.2 вольта чтоб что на входе что на выходе было - видно как на 3.0 там уже расхождение в 0.15 вольт. итоговый подобный график где-то найти не могу но там просто появляется точка схождения лучей на 2.5 на 3.5 и на 4.2 но все что между - тоже немного расходятся но не так сильно конечно.

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 13:37:03

Я правильно понимаю, что ошибка измерения напряжения может быть 150мВ?

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 13:47:01

без калибровки и больше , с калибровкой по одной точке - да примерно так.

к сожалению внутренний ион бкюшки не выведен наружу чтоб от него завести измерение АЦП а ион атмеги - полная туфта.

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

в общем там не все так просто :)
минимум что нужно это смещение и оффсет
Вот пример калибровочных констант
Код:
    Z.VCELL_Offset[0]   = 1882;
    Z.VCELL_Offset[1]   = 1880;
    Z.VCELL_Offset[2]   = 1887;
    Z.VCELL_Offset[3]   = 1888;
    Z.VCELL_Offset[4]   = 1891;
    Z.VCELL_Offset[5]   = 1882;
    Z.VCELL_Offset[6]   = 1887;
    Z.VCELL_Offset[7]   = 1890;
    Z.VCELL_Offset[8]   = 1888;
    Z.VCELL_Offset[9]   = 1887; 
   
   
    Z.VCELL_Ku[0]       = 742;
    Z.VCELL_Ku[1]       = 744;
    Z.VCELL_Ku[2]       = 744;
    Z.VCELL_Ku[3]       = 744;
    Z.VCELL_Ku[4]       = 746;
    Z.VCELL_Ku[5]       = 748;
    Z.VCELL_Ku[6]       = 748;
    Z.VCELL_Ku[7]       = 748;
    Z.VCELL_Ku[8]       = 750;
    Z.VCELL_Ku[9]       = 751;


1000 это единица для коэффициента усиления или ноль для смещения 1001 для смещения это +1 милливольт к измеренному значению.

Вот функции взаимной калибровки атмеги и бкюшки предварительные
Код:
void bqLoadCalib()
{
        //bqInit();
       
        ADCSRA SET_B(ADEN);
        #ifdef DEBUG
        putsf("**LoadCalib \n\r");
        printf("Cal1 = ");
        #endif   
        bqWriteReg(0x02, 0b01000010);
        bqWriteReg(0x03, 0b00000011);
        bqWriteReg(0x05, 0b00010000);
        CurrDelay();
           
        Cal1 = ADCRead(ADCVPort, MaxIterat); 
       
        #ifdef DEBUG
        printf(" %f\n\r", Cal1);
        #endif
               
        #ifdef DEBUG
        printf("Cal4 = ");
        #endif 
        bqWriteReg(0x05, 0b01000000);
        CurrDelay();

        Cal4 = ADCRead(ADCVPort, MaxIterat); 
       
        #ifdef DEBUG
        printf(" %f\n\r", Cal4);
        #endif
               
        #ifdef DEBUG
        printf("Cal6 = ");
        #endif 
        bqWriteReg(0x05, 0b01100000);
        CurrDelay();
       
        Cal6 = ADCRead(ADCVPort, MaxIterat); 
       
        #ifdef DEBUG
        printf(" %f\n\r", Cal6);
        #endif
   
}

void ProceedCal(float* cal, float Curr)
{
    float tmp;
    float st;
   
    if(CNF.CellMeasureMeth==1)
    {
   
        //tmp = *cal;
        st  = *cal/100000;
        tmp = *cal-Curr;
        if(*cal>0.000001)
        {   
            if(tmp<0)
                *cal += st;
            if(tmp>0)
                *cal -= st;
        }
        else
            *cal=Curr;
    }             
}

void UpdCal()
{
    // обновляем калибровочные коэффициенты
    ADCSRA SET_B(ADEN);
   
    if(CNF.CellMeasureMeth==1)
    {
 
        bqWriteReg(0x01, 0b00000000);
       
        bqWriteReg(0x02, 0b01000010);
       
        bqWriteReg(0x03, 0b00000011);   
       
        #ifdef DEBUG
        putsf("**UpdCal\n\r");
        printf("Cal1 = ");
        #endif 
        bqWriteReg(0x05, 0b00010000);
        CurrDelay();
           
        ProceedCal(&Cal1, ADCRead(ADCVPort, MaxIterat));

        #ifdef DEBUG
        printf(" %f\n\r", Cal1);
        #endif
           
        #ifdef DEBUG
        printf("Cal4 = ");
        #endif 
        bqWriteReg(0x05, 0b01000000);
        CurrDelay();
           
        ProceedCal(&Cal4, ADCRead(ADCVPort, MaxIterat));
           
        #ifdef DEBUG
        printf(" %f\n\r", Cal4);
        #endif
           
        #ifdef DEBUG
        printf("Cal6 = ");
        #endif 
        bqWriteReg(0x05, 0b01100000);
        CurrDelay();
           
        ProceedCal(&Cal6, ADCRead(ADCVPort, MaxIterat));
           
        #ifdef DEBUG
        printf(" %f\n\r", Cal6);
        #endif
           
        Kscale1 = Cal1/0.975;
           
        Kscale2 = (Cal1 - Cal4) / (2.5/Kscale1);
           
        SHDelta = Cal4*Kscale1 - Cal6*Kscale1;
           
        #ifdef DEBUG
           
        printf("Kscale1 = %f\n\r", Kscale1);
        printf("Kscale2 = %f\n\r", Kscale2);
        printf("SHDelta = %f\n\r", SHDelta);
           
        #endif   
    }
   
    ADCSRA CLR_B(ADEN);
}



а это функция просчета значения напряжения ячейки
Код:
void bqCalcCell(char a)
{
    float CellResult=0;
    signed int tmp = 0;
    if(CNF.CellMeasureMeth==1)
    {
        CellResult = Cal1*Kscale1 - (CellsRAW[a]*Kscale1 + SHDelta);
        CellResult = CellResult / Kscale2;
    }   

    if(CNF.CellMeasureMeth==2)
    {
        CellResult  = CellsRAW[a];
        CellResult  = 0.975-CellResult;
        CellResult /= 0.15;
    }   

    if(CNF.CellMeasureMeth==3)
    {
        CellResult  = CellsRAW[a];
        CellResult  = 1.2-CellResult;
        CellResult /= 0.20;
    }   
       
   
    tmp = CNF.VCELL_Offset[a];
    tmp -= 1000;
       
    // вносим оффсет сохраненный в конфиге в десятых милливольта
    CellResult=CellResult + (tmp*0.001);
                                             
    // вносим коэффициент усиления заданный в конфиге умноженный на 1000
    CellResult = CellResult * (CNF.VCELL_Ku[a] / 1000.0);
         
       
    if(Cells[a]<1.0)
    {
        Cells[a] = CellResult;
    }
    else
    {                                                   
        if(flabs(FlDiff(Cells[a], CellResult))>0.14)
        {
            if(++CellsErr[a]>=2)
            {
                CellsErr[a]=0;
            }
            else
            {
                CellResult = Cells[a];
            }           
        }
        else
        {
            CellsErr[a]=0;
        }
       
        if((flabs(Cells[a] - CellResult)>0.1)||(CNF.CellDivider==1))
            Cells[a] = CellResult;
        else
            Cells[a]+= (CellResult - Cells[a])/(CNF.CellDivider*1.0);
    }
       
    if(Cells[a]<0.0)
        Cells[a]=0;
   
}



как видите - у меня 3 метода расчета напряжения ячейки. я пользуюсь полным методом - 1. но многим нравится другие методы - некоторые обеспечивали дорогим опорником опору атмеге и как следствие подстроек не надо.
Но после всех методов - применение коэффициента усиления и смещения ну а потом ещё и фильтрация.

https://www.dropbox.com/s/i0v2b7loevh4o ... 4.png?dl=0

Вот такой график в итоге оно мне рисует. это лифер . синим - ток разряда. 26S1P 3,2 вольта 20 Ач конфигурация.каждое измерение = секунде.

Лог из компорта выглядит вот так
Спойлер
Код:
 I:-11.373,V:83.571,W:-950.453,AhI:0.116,AhO:6.457, WhI:840.678, WhO:539.952

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.218 3.218 3.214 3.221 3.219 3.222 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.2 3.188 3.226

#2= 3.197 3.225 3.225 3.214 3.221 3.211 3.221 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.9 3.188 3.226

#3= 3.208 3.225 3.218 3.216 3.219 3.216 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.188 3.225

#4= 3.190 3.219 3.216 3.192 3.215 3.218 3.214 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.197 3.225
   
 I:-10.987,V:83.582,W:-918.315,AhI:0.116,AhO:6.460, WhI:840.678, WhO:540.207

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.220 3.219 3.215 3.222 3.221 3.224 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.3 3.190 3.225

#2= 3.197 3.226 3.227 3.214 3.223 3.212 3.222 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.9 3.190 3.225

#3= 3.207 3.225 3.219 3.218 3.222 3.217 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.6 3.190 3.227

#4= 3.190 3.220 3.216 3.194 3.216 3.219 3.216 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.197 3.227
   
 I:-12.997,V:83.608,W:-1086.653,AhI:0.116,AhO:6.464, WhI:840.678, WhO:540.508

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.218 3.218 3.213 3.222 3.219 3.222 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.3 3.190 3.227

#2= 3.201 3.228 3.227 3.215 3.223 3.212 3.222 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=31.0 3.190 3.225

#3= 3.210 3.227 3.221 3.218 3.222 3.218 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.190 3.228

#4= 3.191 3.220 3.217 3.195 3.216 3.217 3.213 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.201 3.228
   
 I:-11.750,V:83.615,W:-982.476,AhI:0.116,AhO:6.467, WhI:840.678, WhO:540.780

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.220 3.219 3.214 3.222 3.220 3.221 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.2 3.191 3.228

#2= 3.198 3.227 3.226 3.214 3.222 3.210 3.222 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.8 3.191 3.227

#3= 3.208 3.226 3.219 3.217 3.224 3.217 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.191 3.227

#4= 3.191 3.222 3.216 3.195 3.216 3.219 3.217 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.198 3.227
   
 I:-10.372,V:83.610,W:-867.203,AhI:0.116,AhO:6.470, WhI:840.678, WhO:541.020

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.221 3.220 3.215 3.223 3.222 3.222 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.3 3.191 3.227

#2= 3.199 3.228 3.226 3.216 3.222 3.212 3.223 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.7 3.191 3.226

#3= 3.209 3.226 3.220 3.219 3.224 3.218 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.191 3.228

#4= 3.192 3.222 3.217 3.194 3.215 3.219 3.217 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.199 3.228
   
 I:-11.166,V:83.628,W:-933.790,AhI:0.116,AhO:6.473, WhI:840.678, WhO:541.279

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.218 3.217 3.215 3.222 3.221 3.221 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.2 3.192 3.228

#2= 3.197 3.226 3.225 3.214 3.221 3.210 3.222 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.8 3.192 3.226

#3= 3.206 3.225 3.218 3.217 3.222 3.216 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.192 3.226

#4= 3.191 3.220 3.216 3.192 3.214 3.215 3.214 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.197 3.226
   
 I:-10.315,V:83.583,W:-862.159,AhI:0.116,AhO:6.476, WhI:840.678, WhO:541.518

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.219 3.217 3.215 3.222 3.221 3.221 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.2 3.191 3.226

#2= 3.197 3.226 3.226 3.214 3.221 3.210 3.222 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.8 3.191 3.225

#3= 3.207 3.225 3.218 3.217 3.223 3.217 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.191 3.226

#4= 3.191 3.221 3.217 3.192 3.215 3.216 3.214 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.197 3.226
   
 I:-9.967,V:83.590,W:-833.141,AhI:0.116,AhO:6.479, WhI:840.678, WhO:541.749

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.219 3.218 3.216 3.223 3.222 3.224 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.2 3.191 3.226

#2= 3.198 3.226 3.226 3.214 3.222 3.211 3.222 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.7 3.191 3.225

#3= 3.208 3.226 3.219 3.218 3.223 3.219 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.191 3.226

#4= 3.191 3.222 3.217 3.193 3.215 3.219 3.216 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.198 3.226
   
 I:-9.910,V:83.614,W:-828.615,AhI:0.116,AhO:6.482, WhI:840.678, WhO:541.979

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.221 3.219 3.217 3.223 3.223 3.223 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.1 3.191 3.226

#2= 3.198 3.226 3.227 3.214 3.223 3.212 3.225 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.8 3.191 3.226

#3= 3.210 3.228 3.220 3.220 3.225 3.220 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.191 3.227

#4= 3.192 3.222 3.219 3.195 3.217 3.222 3.217 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.198 3.228
   
 I:-15.085,V:83.648,W:-1261.830,AhI:0.116,AhO:6.486, WhI:840.678, WhO:542.329

 Spd:0.0, CurrTrip:0.0, Ttl:0
 
BqStatus: 00010000
 #1= 3.220 3.219 3.217 3.222 3.220 3.220 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.3 3.192 3.228

#2= 3.199 3.227 3.227 3.216 3.224 3.213 3.225 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=30.9 3.192 3.228

#3= 3.210 3.228 3.221 3.220 3.225 3.221 0.000 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.7 3.192 3.227

#4= 3.196 3.224 3.220 3.199 3.217 3.221 3.216 0.000 0.000 0.000  0000000000 DSG+ CHG+ T=28.8 3.199 3.228


Можете сами потыкать в лог мышкой - https://www.dropbox.com/sh/oeh9uxucyc2y ... GgZTa?dl=0 в этой папке все что надо.

Вот пример - https://www.dropbox.com/s/1ml97vm8tfuartj/V8.rar?dl=0 скачиваете эту программу и открываете с её помощью любые файлы из этого архива - https://cloud.mail.ru/public/CgGt/BGG5raaM4.
В программе море настроек градиентов выделений пределов и так далее. наведя на любую нитку мышкой показывается название нитки и мгновенное значение + дата время. любой кнопкой нитку можно скрыть, пробелом - выделить другим цветом. все управление через правую кнопку мыши
Последний раз редактировалось clawham Пн окт 17, 2016 13:58:17, всего редактировалось 1 раз.

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 13:55:13

Спасибо! Я почему спрашиваю - после калибровки ошибка измерения напряжения на банках порядка 150мВ, вот и стало интересно - нормально это или нет.

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 14:04:01

та калибровка что описана в даташите не приводит к удовлетворительному резульатту но она сильно устраняет влияние температуры на показания!

вот пример красивой картинки :)

Изображение
Вложения
111.gif
Скрин графика разукрашеного. Синим - ток, черным - скорость.
(240.64 KiB) Скачиваний: 1559

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 14:13:40

При такой ошибке, наверное, логично прерывать зарядку на 4.0В, чтобы не случилось перезаряда ячеек? Или такая ошибка только при трансляции процессору, а сама bq напряжение меряет точно и не допускает перезаряда банок?

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 14:33:41

у меня калибровка сводит эти кривые в двух точках - 3.0 и 4.2
тоесть когда на батарее 3 вольта то бкюшка и показывает 3.0 а когда 4.2 то бкюшка показывает 4.2.

выше 4.2 - бкюшка начинает завышать тоесть вместо 4.300 покажет 4.310
а ниже 3.0 она занижает и вместо 2.0 покажет 1.990 - и так и так это хорошо и правильно! ну а на 2.5 она опять один-в-один показывает как надо. тоесть 4точечная калибровка рулит :)

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 14:43:18

Чтобы калибровка работала автоматически в хост режиме, достаточно установить все CBAL биты в единицу и bq сама определит какуя ячейку калибровать? Или нужно процессором самому постоянно следить, какой бит включать?

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 14:54:15

так ещё раз не калибьровать а балансировать!
нет так делать нельзя! сгорят феты балансирные в бкюшке!

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

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 15:08:03

т.е. в одиночном режиме за этим (балансировка через две) следит сама bq, а в хост режиме за этим нужно следить процессором?

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 15:11:56

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

Re: Помогите разобраться с BQ77PL900

Пн окт 17, 2016 15:32:57

Спасибо за ответы )
Ответить