avatar_clawham

Разработка народной BMS на BQ77PL900

Автор clawham, 04 Март 2014 в 00:36

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

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

Yurij122

Интересно, а сколько весь комплект примерно стоить будет?

clawham

Чесно говоря уже не знаю. Смотрю что сильно это затратно по времени и сложно для меня одного.
ну считайте так - по 250 пара смарток + 400 блютузка с питанием + 430 пара умощнителей баланса + 220 силовая плата без фетов + 100 грн до 14s феты и 200 грн до 100 вольт феты. итого
500+400+430+220+200 = 1750 грн или 145 доларов полный комплект на 5-20s до 100 вольт 100 ампер разряд 20-30 заряд. с выводом и полной настройкой на лету с любого устройства с блютузом. Бонусом идёт функции циклоаналиста. Ну и любые забаганки по программной части.

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

kag46

Платы еще не разводил - под мои задачи макеток хватало:) хотя не раз смотрел на этот процесс и ничего сложного в нем не увидел) нужно только расходники и рассыпухой запастись, благо утюг и принтер есть:)
Тут для меня вопрос по необходимым компонентам. Думаю в моем текущем городе все можно будет достать, главное знать что:)
Варю продаю кашу из Топпера:
magic pie 3 + markII от e4bike, самопальная батарея из lipo пакетов 14-15Ah, пока 13S1P->17S1P, up to tbd км/ч. Смотри восточный базар.

Следи за собой, будь осторожен.

clawham

#111
список деталей на смартплату(пару)

Спойлер
Гребенка угловая 12 контактов - 2 шт.
Гребенка угловая 2 контакта - 4 шт.
Гребенка угловая 3 контакта - 2 шт.
Гребенка угловая 5 контактов - 2 шт.
BQ77PL900 - 2 шт.
ATMEGA328P-PW - 2 шт.
Кварц Трубочка 32768 Гц - 2 шт.
Оптопара PC817 - 4 шт.
Транзистор SOT23 NPN BC817 - 2 шт.
Светодиод 1206 красный - 2 шт.
Резистор 1206 10 омм - 20 шт.
Резистор 1206 1 омм - 14 шт.
Резистор 1206 1 кОм - 18 шт.
Резистор 1206 330 Ом - 8 шт.
Резистор 1206 24 кОм - 6 шт.
Конденсатор 1206 10мкф - 14 шт.

Список деталей на плату умощнения баланса 2 шт.

Спойлер

Разьём штыревой 11 контактов - 2 шт.
Светодиод 1206 красный - 20 шт.
Резистор 1206 1 кОм - 58 шт.
Резистор 1206 10 Ом - 120 шт.
Резистор 1206 330 Ом - 20 шт.
Транзистор SOT23 PNP BC807 - 20 шт.
Транзистор SOT23 NPN BC817 - 20 шт.
Разъем 12 контактный BLS мама - 2 шт.

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

Гребенка угловая 2 контакта - 1 шт.
Гребенка угловая 3 контакта - 4 шт.
Оптопара PC817 - 4 шт.
Диод выпрямительный 1206 - 2 шт.
Светодиод 1206 красный - 5 шт.
Резистор 1206 1МОм - 10 шт.
Резистор 1206 10 Ом - 17 шт.
Резистор 1206 1КОм - 6 шт.
Стабилитрон 1206 12 вольт - 2 шт.
Стабилитрон 1206 15 вольт - 1 шт.
Транзистор SOT23 биполярный - 2 шт.
Шунт токовый измерительный - 1 шт.
Полевики TO220 / DPAK 5/9 шт.

Плата адаптера блютуза
Спойлер

Блютуз-модуль HC-06 1 шт.
Микросхема TOPSWITCH TOP222 214 221 и т.д. - 1 шт.
Гребенка угловая 2 контакта - 3 шт.
Диод выпрямительный восокоскоростной (до 30 нС) - 2 шт.
Диод выпрямительный 1206 - 1 шт.
Диодный мостик  SMD - 1 шт.
Стабилитрон 1206 9 вольт - 5 шт.
Транзистор полевой SOT 23 IRLML2502 - 2 шт.
Резистор 1206 1 омм - 5 шт.
Резистор 1206 10 омм - 3 шт.
Резистор 1206 100 омм - 1 шт.
Резистор 1206 1 кОм - 5 шт.
Резистор 1206 1 МОм - 2 шт.
Резистор 1206 2 кОм - 2 шт.
Конденсатор 1206 Керам 10 мкф - 6 шт
Конденсатор электролит 470 мкф - 1 шт.
Конденсатор электролит 33 uF - 1 шт.
Светодиод 1206 красный - 2 шт.
78L05 -  1 шт.
LM1117-3.3 - 1 шт.
Катушка индуктивности 12 mH 1А - 1 шт.

По всем деталям - Оптопары можно применять любые на напругу от 35 вольт и падение на открытом канале до 0.2 вольт.
Биполярные транзисторы можно заменять любыми. PNP на ток от 0.1 ампера а NPN только 0.5 и выше. Коэфф усиления не важен. например MMBTA06 MMBTA56/ Напруга от 20 вольт.
Керам кондеры на напругу 50 вольт. можно и 1 vra - особой разницы не будет.
Резисторы можно заменять на +-50% особой роли это нигде не играет.
Токовый шунт можно любой хоть кусок проволоки медной. главное чтоб при макс токе с него не выходило больше 1 вольта(ито можно "погасить" доп резисторами на смартплате.
Вообще список по смартплате и умощнителям - конечный а вот по силовому размыкателю и особенно по блютуз-адаптеру - очень примерный. Они ещё на стадии тестирования. В частности в плате размыкателя я поменял времязадающую цепочку и принцип работы входов разрешения.

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

kag46

bq-шки оказалось немного проблематично найти в мск, однако спасибо разработчикам, выслали бесплатные образцы (заказывал 3 штуки) и они уже трекнулись в мск - скорее всего завтра уже получу (высылали 9 мая из штатов =) ), остальное судя по сайтам в достатке - приезжай - забирай =)

Вопрос по работе самой платы - когда срабатывает undervoltage protection, обрабатывается только на bq? или на размыкание мега дает сигнал? Посмотрел даташит на bq, там не самые привлекательные диапазоны, но больше смутило количество прошивок - 3 раза.

ЗЫ если не секрет, где вы bq брали? а то за 1килорубль(~27.7$) одну микросхему в чип-дип брать как то не хочется, а то мало ли, спалю =)
Варю продаю кашу из Топпера:
magic pie 3 + markII от e4bike, самопальная батарея из lipo пакетов 14-15Ah, пока 13S1P->17S1P, up to tbd км/ч. Смотри восточный базар.

Следи за собой, будь осторожен.

clawham

#113
Где брал я - секрет фирмы.
В смартплатке бкюшка работает как аналоговый переключатель но 10 входов + набор слабеньких полевичков для балансировки + понижатель напряжения на переключающихся конденсаторах + прецизионные опоры и плюс операционный усилитель для токового шунта. Как сейчас модно - аналоговый фронтенд. В Смартплатках всю логику работы реализует мега.
Прошивка уже допилена до полнофункциональный с менюшками и межмикрухной синхронизацией. Теперь 4 микрухи соединенные линией ведут себя так


  I:0,W:0.0,mAhI:0.0,mAhO:0.0



#1= 3.823 3.825 3.825 3.825 3.825 3.825 3.824 3.824 3.820 3.820   0111110000
#2= 3.922 3.935 3.920 3.921 3.923 0.000 0.000 0.000 0.000 0.000   1111100000
#3= 3.827 3.827 3.827 3.825 3.825 3.826 3.825 3.823 3.824 3.822   1110000000
#4= 3.910 3.921 3.923 3.919 3.918 0.000 0.000 0.000 0.000 0.000   1111100000 


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

все платки отзываются на простейший набор комманд. любая команда это строка завершенная ентером в терминале.

@1 - останавливает всякий вывод любой из плат которая это услышыт. и плата с номером 1 выведет заглавное меню
$@ - окончание работы с меню - возврат к обычному режиму работы платок
#1 - сигнал для платы 2 что ей надо бы выдать отчет о побаночном напряжении и балансируемых ячейках.

Потом наверное будут добавлены ещё команды. Пока этих хватает с головой.

Пример основного меню



MAIN MENU
1) Print Curr trip Statictics
2) Print last 30 trip Statictics
3) Modify Battery constants
4) Modify system constants
5) Print Curr Setting set
6) Change Curr setting set
7) Save curr setting set
8) Restore defaults
9) temporary block uv shutdown
10)Restart SmartBMS
0) Exit

SmartBMS 2 :(0..10)>


набирая на клавиатуре цифры нужного пункта меню нажимаем ентер и попадаем в этот пункт.
пункт 3 касается батарейных констант:



  Modifying Battery constants 
1) BalanceStart   =3600
2) BalanceDelta   =5
3) UpperLimit     =3900
4) UpperDelta     =100
5) LowerLimit     =3300
6) LowerDelta     =100
7) LowerTimeReset =1000
8) CHGCurrLim     =20000
9) DSGCurrLim     =80000
10)CuurTimeReset  =0
0) Exit

SmartBMS 2 :Battery constants(0..10)>


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

В пункте 4 главного меню хранятся основные константы системы:

Modifying System constants 
1)  MAC                 =2
2)  ShountResist        =1000
3)  IGainLO             =5000
4)  IGainHI             =25000
5)  MinVBatt            =2000
6)  MaxVBatt            =5000
7)  SpeedoType          =1
8)  SpeedoPKm           =482
9)  Speedo_M_H_Hz       =7466
10) CellMeasureInterv   =1000
11) CellMeasureBalOff   =20
12) CalibUpdInterv      =10000
13) TempUpdInterv       =1000
14) TempMeasInterv      =1000
0)  Exit

  SmartBMS 2 :System constants(0..14)>


Все аналогично предыдущим манипуляциям.

Пункт 5 выдаёт полную конфигу по всем пунктам

MAC                 =2
BattFullCycleCount  =0
BattHalfCycleCount  =0
TotalDSGWh          =0
TotalCHGWh          =0
BalanceStart        =3600
BalanceDelta        =5
UpperLimit          =3900
UpperDelta          =100
LowerLimit          =3300
LowerDelta          =100
LowerTimeReset      =1000
CHGCurrLim          =20000
DSGCurrLim          =80000
CuurTimeReset       =0
ShountResist        =1000
IGainLO             =5000
IGainHI             =25000
Cell 0 Offset = 32768, Ku = 10000
Cell 1 Offset = 32768, Ku = 10000
Cell 2 Offset = 32768, Ku = 10000
Cell 3 Offset = 32768, Ku = 10000
Cell 4 Offset = 32768, Ku = 10000
Cell 5 Offset = 32768, Ku = 10000
Cell 6 Offset = 32768, Ku = 10000
Cell 7 Offset = 32768, Ku = 10000
Cell 8 Offset = 32768, Ku = 10000
Cell 9 Offset = 32768, Ku = 10000
MinVBatt            =2000
MaxVBatt            =5000
SpeedoType          =1
SpeedoPKm           =482
Speedo_M_H_Hz       =7466
CellMeasureInterv   =1000
CellMeasureBalOff   =20
CalibUpdInterv      =10000
TempUpdInterv       =1000
TempMeasInterv      =1000


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

Для сохранения нужно в главном меню выбрать пункт 7. произойдёт запись текущего набора настроек в энергонезависимую память.

В еепроме хранится 4 набора настроек. Один - набор настроек который загрузится при включении и 3 дополнительных. их можно загрузить в текущую конфигурацию пунктом 6 главного меню и прописать как основной при загрузке пунктом 7 главного меню.

Пункт 7 спрашивает в какой именно набор настроек мы хотим сохранить текущие настройки - в основной или в один из тех трех дополнительных.

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

Также каждая платка оснащена светодиодиком.
Нормальное его состояние - раз в секунду ультракоротенькая вспышка.
При балансировке он начинает светиться дольше - тем дольше чем больше надо батарей балансировать вплоть до 50/50 если все банки перелетели(перезаряд)
При входе в основное меню на платке, которая это меню высветали светодиод начинает гореть постоянно коротко погасая раз в секунду.
Ещё у него есть состояние 70/30 - это момент инициализации платы - она проверяет сколько батарей к ней подключено. Есть и другой режим - частое моргание 50/50 раз 10 в секунду - это работа с энергонезависимой памятью. обычно этого режима и заметить нельзя но если с процем чтото не так или сразу после заливки новой прошивки - пару секунд это дело можно наблюдать.
По заливке новой прошивки программа очищает всю внутреннюю память на значения по умолчанию - это долго. в остальных случаях это неисправность.

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

clawham

Обновление. Катаюсь уже месяц на готовых платках v1.3 v1.4 - платки работают. Написал прогу которая графики рисует из файликов логов.

Блютузка Опробована от 140 вольт - полет нормальный день отработала. Блютуз модуль по факту тоже можно анонсировать в продажу. Без него тоскливо.

Так же подвела плата силовых размыкателей. 4 полевика 3205 на 14S и токе 30 ампер неделю назад испустили вольшебный дым. Причин на то небыло. все работало как и раньше. Потому пока одна версия - бракованные полевики ибо сгорели - из новой партии и они кардинально отличаются от прошлой партии пол года назад. Не знаю кого и винить. Но без нагрузки клацали 2000 циклов включение выключение на кондер 10000 мкф 100 Вольт и все было хорошо. а 30 ампер не проблема даже для одного из полевиков. а их там 4 впаралель. Аналогичная плата с двумя впаралель на 20 ампер батарейного катается уже пол года. Там полевики другие.

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

acyd

#115
3205 до 55в, а 14s 4.15*14=58.5в,
оно понятно границы по напряжению не строгие, но при превышении напряжения, токи уже свои не держит.
да и 8мом не ахти, 3206 3207 уже поинтереснее будут

clawham

я ж не до 4.2 пихаю а только до 4. и потом такая разница там только при включении. А циклов включения/отключения я проделывал много. Видать бракованные. моя первая плата именно на 3205 сделана была. и ничего...ездило долго и нудно и сейчас катается боец с ней. всего ДВА полевика...а контроллер на 50 был...сичас на 20. 3205 просто самые дешевые. Это ж не DC-Dc где это напряжение летает туда-сюда ещё и с индуктиными выбросами. Эт ну такая мелочь. В общем ACYD, Если согласны что виной всему полевики хреновые - у меня 99% уверености ибо горят только новые. такая же плата (ну немного другой дизайн) на других таких же полевиках - катается дооолго и нууудно) а эти черти от 10-ти ампер грелись. Вот что меня смутило. 4 в паралель, 14 вольт на затворах а они греются от 10-ти ампер. Что характерно - сгорает полевик интересно - затвор на землю пробивает. Один остаётся в коротыше а  остальные - затвором закрытые и потому рабочие остаются. Сейчас куплю помощнее и повысоковольтнее. Покатаюсь ещё.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

elelectric

Почитал даташит на BQ77PL900. Overvoltage min 4.15 v, max 4.5 V. Этот диапазон значений с разрешением 3 бита можно записать в EEPROM. Как этой штукой LiFe защищать?

acyd

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

clawham

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

П.С. небольшой фотоотчетик о проблеме украины - контрафактные полевики.

Спойлер



























Я кагбэ считаю что плата себя полностью оправдала - она не дала сгореть остальным полевикам и не сгорела сама - просто заменю полевики на 4411 и посмотрим что будет. Я напоминаю что 3205 у меня на службе уже лет 8 и до сих пор они были в глянцевом корпусе и с лужеными ногами.кроме того подошва была полированная. Эти же красафцы матовые, ноги нелуженые и жесткие(что там за медь) а главное - подошва была шершавая. при 10-ти амперах они уже грелись до состояния печет палец!!! Выпаял я один "живой"
только что ему дал через 24 ома 75 вольт - нормально..не пробился...Значит убил его ток.видно как нога посинела. а средняя нога должна быть с подошвой соединена. Подошвой он был припаян и чего той средней ножке синеть? На затворах было тогда и сейчас - 14 вольт. два стабилитрона. У мертвого полевика затвор замкнулся на сурс.
1)8FUN SWXK 250w24V@17A48V 13S4P LGD1, China kontr
3)MXUS 3000 @90A80V LiFePo 20Ah 25S, Nucular 12F
Telegram @clawham

clawham

Ребятки а у кого сколько ёмкости стоит в контроллере? Ну всмысле сколько конденсаторов надо заряжать?
Например у меня 4 штуки по 470 микрофарад. при текущей настройке плавного старта(10 микрофарад 1 мегаомм) получаем пиковую мощность 100 ватт. полевик может схавать 230 долговременно и я на этот параметр и смотрю. обычно из 4-х в паралель работает один в линейном режиме. остальные ещё не открылись

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

SolarRay

[user]clawham[/user], у большинства вообще 1 или два кондёра на 470, сомневаюсь что много кто ставит больше 10000, разве что на монстров каких.

clawham

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

SolarRay


clawham

Ну чтож отмена тревоги!
Все дело было в полевиках!

поставил себе 3 штуки 4410 - полевики холодные, плавный старт нормально. ничяего не сгорело - насиловал как только мог. И на полном газу и с горки на 45 кмч с рекуперацией - побоку - работает!

Правда у меня батарейный 35 ампер ограничен. но то не важно. Кроме того адаптер блютузный на новых компонентах и покупных дроселях тоже норм отъездил. может выдавать правда всего  200 миллиампер 13 или 5 или 3.3 вольта. соответствующие гребенки имеются. кпд получился 90% при реальной работе блютузки.

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

kag46

Пока недостающие компоненты в пути - возник вопрос по bluetooth :
Каким устройством можно управлять BMS(обязательно смартфон или любой с bluetooth device)? Самому писать ПО нужно или как... вроде всю тему пролистал, но ясности не прибавилось..
Варю продаю кашу из Топпера:
magic pie 3 + markII от e4bike, самопальная батарея из lipo пакетов 14-15Ah, пока 13S1P->17S1P, up to tbd км/ч. Смотри восточный базар.

Следи за собой, будь осторожен.