|
STM32F100 от батарейки, контроллер питания, с зарядчиком |
|
|
|
Oct 14 2015, 05:44
|

Частый гость
 
Группа: Участник
Сообщений: 101
Регистрация: 2-05-15
Из: Россия, Омск
Пользователь №: 86 474

|
Если именно мониторить - то Вам нужен встраиваемый контроллер батареи, например, тот же bq27545. Последний должен быть постоянно подключен к батарее и, в идеале, откалиброван. Плюс, небольшая обвязка вокруг. Опять же, плюс контроллер заряда (уже не Fuel Gauge, а именно чип, ограничивающий ток заряда и регулирующий напряжение).
|
|
|
|
|
Oct 14 2015, 06:36
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 13-07-10
Из: Солнечногорск-7
Пользователь №: 58 414

|
У нас в приборе BQ25060DQC стоит в компании с транзистором. До этого стоял BQ24070, но в конечном итоге он не подошёл из-за термистора, который в той батарее, на которой наша контора остановилась, поэтому заменили.
А с уровнем заряда тяжко. Проблема в том, что почти при любом заряде батарея выдаёт одно и то же напряжение, поэтому на него опираться нельзя. Приходится подсчитывать заряд, втекающий в батарею при зарядке и вытекающий при разрядке, а для этого в общем случае нужен более продвинутый контроллер, о чём выше написали.
|
|
|
|
|
Oct 14 2015, 09:59
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(SII @ Oct 14 2015, 12:36)  А с уровнем заряда тяжко. Проблема в том, что почти при любом заряде батарея выдаёт одно и то же напряжение, поэтому на него опираться нельзя. Приходится подсчитывать заряд, втекающий в батарею при зарядке и вытекающий при разрядке, а для этого в общем случае нужен более продвинутый контроллер, о чём выше написали. Странно... У меня в одном из моих устройств стоит литиевая батарейка. И напряжение на ней в процессе разрядки хоть и медленно, но всё же падает. И индикация разряда батареи, по достижении некоторого уровня (измеренного АЦП МК), работает вполне нормально. Речь не идёт именно о "уровне заряда" как размерной величине, а только о приблизительном достижении некоего порога.
|
|
|
|
|
Oct 14 2015, 10:40
|

Местный
  
Группа: Свой
Сообщений: 494
Регистрация: 23-06-09
Из: Полтава, UA
Пользователь №: 50 579

|
Цитата(SII @ Oct 14 2015, 09:36)  А с уровнем заряда тяжко. Проблема в том, что почти при любом заряде батарея выдаёт одно и то же напряжение, поэтому на него опираться нельзя. Вполне возможно для комнатных условий. Себе для приемничка без индикатора заряда и 8-ми бит АЦП ставил такие точки: #define U_1 206 //3.4 V critically low voltage #define U_2 219 //3.6 V #define U_3 231 //3.8 V #define U_4 243 //4.0 V #define U_5 252 //4.15 V highest possible voltage Не утверждаю про какую-то точность, особенно в полевых условиях с большим "разбегом" температур но вполне можно оценить степень заряженности литиевого АК. Соотв. 0-25-50-75-100 %
Сообщение отредактировал Ga_ry - Oct 14 2015, 10:44
|
|
|
|
|
Oct 15 2015, 06:04
|

Частый гость
 
Группа: Участник
Сообщений: 101
Регистрация: 2-05-15
Из: Россия, Омск
Пользователь №: 86 474

|
Цитата(Ga_ry @ Oct 14 2015, 16:40)  Вполне возможно для комнатных условий. Себе для приемничка без индикатора заряда и 8-ми бит АЦП ставил такие точки: #define U_1 206 //3.4 V critically low voltage #define U_2 219 //3.6 V #define U_3 231 //3.8 V #define U_4 243 //4.0 V #define U_5 252 //4.15 V highest possible voltage Не утверждаю про какую-то точность, особенно в полевых условиях с большим "разбегом" температур но вполне можно оценить степень заряженности литиевого АК. Соотв. 0-25-50-75-100 % Когда-то делал нечто похожее на, вроди бы, мелкой ATTiny. Но ограничился 3 светодиодами, показывающими 5 уровней: Мигающий жёлтый - заряд высокий (более 80%) Жёлтый - 60-80 Зелёный - 40-60 Красный - 20-40 Мигающий красный - < 20 Замерял точно так же, по напряжению. Точных значений даже не вспомню, но отталкивался от величин 3.5V ~ 4.2V Всё, что было выше 4.05 считал перебором.
|
|
|
|
|
Oct 19 2015, 07:22
|
Местный
  
Группа: Свой
Сообщений: 229
Регистрация: 3-02-06
Из: Санкт-Петербург
Пользователь №: 13 974

|
Цитата(SII @ Oct 14 2015, 09:36)  У нас в приборе BQ25060DQC стоит в компании с транзистором. До этого стоял BQ24070, но в конечном итоге он не подошёл из-за термистора, который в той батарее, на которой наша контора остановилась, поэтому заменили.
А с уровнем заряда тяжко. Проблема в том, что почти при любом заряде батарея выдаёт одно и то же напряжение, поэтому на него опираться нельзя. Приходится подсчитывать заряд, втекающий в батарею при зарядке и вытекающий при разрядке, а для этого в общем случае нужен более продвинутый контроллер, о чём выше написали. Под нагрузкой нужно измерять
|
|
|
|
|
Oct 19 2015, 08:36
|

Частый гость
 
Группа: Участник
Сообщений: 101
Регистрация: 2-05-15
Из: Россия, Омск
Пользователь №: 86 474

|
Цитата(aaarrr @ Oct 19 2015, 12:55)  Можно, если напряжение батареи не превышает допустимого на выводе АЦП. В случае Li-Ion это маловероятно. Подбором номиналов делителя можно выбирать измеряемое напряжение в широких пределах. Например, для 1:1, допустимое напряжение равняется 2*Vcc. Для 2:1 - уже 3*Vcc, и так далее. Опять же, уже говорили про постоянный ток, протекающий через делитель, что не есть хорошо. И лучше исользовать готовый контроллер питания - он всяко окажет меньшее воздействие на АКБ и длительность работы.
|
|
|
|
|
Oct 19 2015, 09:29
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AlanDrakes @ Oct 19 2015, 14:36)  Подбором номиналов делителя можно выбирать измеряемое напряжение в широких пределах. Например, для 1:1, допустимое напряжение равняется 2*Vcc. Для 2:1 - уже 3*Vcc, и так далее. Опять же, уже говорили про постоянный ток, протекающий через делитель, что не есть хорошо. aaarrr писал про мою схему. И максимальное напряжение батареи в этом случае не должно превышать макс.напряжения для входа АЦП, ни от какого делителя это не зависит. Если превышает - для защиты можно применить нелинейный элемент от средней точки делителя. Постоянного тока нет, смотрите внимательнее - "выход ОК" - выход с открытым коллектором, вроде должно быть ясно.
|
|
|
|
|
Oct 19 2015, 10:57
|

Частый гость
 
Группа: Участник
Сообщений: 101
Регистрация: 2-05-15
Из: Россия, Омск
Пользователь №: 86 474

|
Хорошо. Теперь посчитаем следующее: Напряжение батареи - 4.1V. Допустим, полностью заряженная ячейка LiIon. Питание контроллера идёт через микромощный стабилизатор (тот же TPS76333) на 3.3V. Ток его собственного потребления порядка 0.1mA. Теперь. Допустим, контроллер находится в состоянии останова и потребляет ещё 0.1mA. Расчитаем нелинейные элементы и резисторы. Допустим, R1 - 10kOhm, а R2 (на землю) - 5kOhm (например, составленный). Тогда суммарный ток через них будет (4.1 / (10000+5000)) = 4.1 / 15000 = 0.27mA. Неплохо. Даже больше, чем потребляет контроллер в режиме останова (остановлена переферия в том числе... по большей части). Нелинейный элемент тут вообще не потребуется. Теперь подключаем по схеме +Cell -> R1 -> R2 -> GPIO. Выход с ОК в состоянии "1", то есть, не притянут к земле. Получаем ток (4.1 - 3.3 / (10000) = 0.08mA в сторону Vcc через защитный диод. Фактически, даже меньше (4.1 - (3.3 + 0.4)) = 0.4V / 10000Ohm = 0.04mA, которыми можно в принципе пренебречь, выставив порт ADC в режим GPIO. Опять же, второй случай - выход с ОК в состоянии "0". Аналогично подключению +Cell -> R1 -> R2 -> GND, описанному выше. На входе ADC будет не более 2/3 Vcell (4.1 * 0.66 = 2.7V), но ток "утечки" будет чуть больше. Нелинейный элемент можно поставить и на 2.5 и на 3V, но это излишки. При выбранных номиналах потребуется только поставить небольшой блокировочный конденсатор паралельно R2 (где-то 10-100nF) для корректной работы ADC.
|
|
|
|
|
Oct 19 2015, 14:58
|

Частый гость
 
Группа: Участник
Сообщений: 101
Регистрация: 2-05-15
Из: Россия, Омск
Пользователь №: 86 474

|
Цитата(aaarrr @ Oct 19 2015, 17:50)  Лихо считаете, я бы сказал. Вот 0.05mA на все - это годится для батарейного изделия. Это не на всё. Это только ток, протекающий через резистивный делитель. Но в целом, можно добиться похожих показателей. Удавалось запустить STM32L152 + LCD (Nokia 1110i) в режиме работы и отображения времени при рабочем токе в 0.71mA. Если обесточить экран - 0.3mA. Остновить ядро полностью, и перевести его в Standby - не смог измерить точно, но менее 0.1mA.
|
|
|
|
|
Oct 22 2015, 08:38
|

Частый гость
 
Группа: Участник
Сообщений: 135
Регистрация: 13-07-06
Из: С-Пб
Пользователь №: 18 778

|
Цитата(AlanDrakes @ Oct 20 2015, 03:58)  Удавалось запустить STM32L152 + LCD (Nokia 1110i) в режиме работы и отображения времени при рабочем токе в 0.71mA. Если обесточить экран - 0.3mA. Остновить ядро полностью, и перевести его в Standby - не смог измерить точно, но менее 0.1mA. похвально
--------------------
тут может быть какаято реклама
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|