Бортовой монитор темп. и напр. Li-po по-баночно

<font size=“3”>Бортовой монитор температуры и напряжения на каждой банке Li-Po 3S.</font>

<font size=“1”>Часто бывает, когда литий-полимер губят переразрядом или перегревом. От переразряда защищает отсечка регулятора, которую, например, выставляют в 3.2*N V. Но что произойдет, если одна из банок в батарее потеряла часть емкости? В начале работы мы сбалансировали сборку, но стоит слиться 1/2 емкости, как напряжение на одной из банок достигает 3V and falling, а остальные бодро держат 3.6 V. Отсечка не сработает 😵 Слабая банка будет продолжать портится, а мы будет летать в </font>неведении.

Предлагаемый монитор решает эту проблему, контролируя напряжение побаночно на 3S сборке, а также может мерять температуру алмазным терморезистором ТРА, приклеиваемом к средней банке сборки, как наиболее нагреваемой ввиду плохого теплоотвода. Задаются два порога как для напряжения, так и для температуры. Переключаются пороги на напряжение кнопкой, температурные же прошиваются в контроллер. Монитор издает 4 типа сигналов (звук или свет), соответственно нарушенному порогу. Подключается монитор к балансирному разъему батареи.

Дополнительно монитор может отображать напряжение на каждой банке с точностью до 0.1 V и температуру с точностью до 1 C, а также заданные пороги, на LCD дисплее, если он подключен. Используется 16x2 LCD (mt-16s2d), купленный в http://www.chip-dip.ru.

Все резисторы делителя напряжения у балансирного разхема надо брать с 1% точностти или выше.

Схема принципиальная:
Прошивка, исходник: alipo.zip
Прошивка, исходник 2.0 (изменены пороги температуры на 50/60 г. и может работать без подключенного термодатчика): alipo2_c.zip
Схема в формате RusPlan5: ALiPo1.zip
Excel-таблица по расчету таблицы коэффициентов аппроксимации напряжения на терморезисторе при вычислении температуры, в зависимости от характерных для купленного экземпляра сопротивления и коэффициента терморезистивности: Termisting.zip
Макет монтажа: Фото:

Видео измерения температуры:

<font color=“#cc0000”><font size=“1”>P.S. Мне важно Ваше мнение. Оставьте комментарий ! :licklips:</font></font>

  • 1695
Comments
Concord

Девайс интересный, но как я понял информацию с него можно видеть только на земле в реальном времени, т.е. что делается в полете неизвестно. Или я что-то не понял? Вот если бы это был бортовой регистратор типа того что описывал vovic - о то было б дело!!!

Prikupets
Concord

Девайс интересный, но как я понял информацию с него можно видеть только на земле в реальном времени, т.е. что делается в полете неизвестно. Или я что-то не понял? Вот если бы это был бортовой регистратор типа того что описывал vovic - о то было б дело!!!

Девайс пищит и мигает четырьмя способами при переходе через пороги по напряжению и температуре. Слышно и видно с земли 😃 А LCD опционален - я использовал при отладке. Можно и без него.

SSergo

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

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

Prikupets
SSergo

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

Прошивку надо менять да и схему тоже (выкинуть лишнее). Пороги выставлются кнопкой:

const struct Limit Voltages[VoltageCount] =
{{250, 270}, // limit = 0, beep: -
{260, 280}, // limit = 1, beep: - -
{270, 290}, // limit = 2, beep: - - -
{280, 300}, // limit = 3, beep: - - - –
{290, 310}, // limit = 4, beep: - - - – -
{300, 320}, // limit = 5, beep: - - - – - -
{310, 330}, // limit = 6, beep: - - - – - - -
{320, 340}}; // limit = 7, beep: - - - – - - - –

первой число 2.5 v фатальный писк, 2.7 V предупреждающий. beep означает сколько раз пикнет при нажатии кнопки. (если есть LCD то на нем можно и так все видеть).

Температура 32 предупреждение, 40 фатально - это хорошо бы изменить на большие;

#pragma return[] = 70,50,0 // SIGNAL_VoltageLower
#pragma return[] = 10,90,0 // SIGNAL_VoltageUpper
#pragma return[] = 15,10,15,90,0 // SIGNAL_TempWarm
#pragma return[] = 20,10,70,50,0 // SIGNAL_TempHot

это сигналы где 70, 50 - длительность писка и паузы попеременно в ms*10. То есть Voltage фатальный будет так 700ms писк, 500ms пауза. Я подбирал по лучшей различимости.

SSergo

Прошивку надо менять да и схему тоже (выкинуть лишнее).

Спасибо Вам за ответ.
Прошивку пока менять не готов, а схему немного изменю,
чтобы работала и для 2-х банок (просто сымитирую сигнал
3-ей банки на входе А2 PIC’а).

Prikupets
SSergo

Спасибо Вам за ответ.
Прошивку пока менять не готов, а схему немного изменю,
чтобы работала и для 2-х банок (просто сымитирую сигнал
3-ей банки на входе А2 PIC’а).

Имейти ввиду что надо будет ставить lowdrop 5V регулятор с высокой точностью, т.к. схема должна работать при 6V на банках, так что drop-out д.б. <= 1V.
Прошивка там на C - меняете и перекомпилячите - и все.

SSergo

Имейти ввиду что надо будет ставить lowdrop 5V регулятор с высокой точностью, т.к. схема должна работать при 6V на банках, так что drop-out д.б. <= 1V.
Прошивка там на C - меняете и перекомпилячите - и все.

Обязательно учту! Спасибо.

Prikupets

Добавлена Прошивка, исходник 2.0 (изменены пороги температуры на 50/60 г. и может работать без подключенного термодатчика)

spoz

а как сделать что бы 5 банок мерил???

Prikupets
spoz

а как сделать что бы 5 банок мерил???

на большем PIC-е делать 😕
или без LCD

SSergo

Здравствуйте Андрей.
Хочу поблагодарить Вас за полезную разработку.
Очень удобно. Теперь спокойно вылетываю акки. 😛
Захотел добавить к светодиодам еще и пищалку,
но обратил внимание, что импульсы 700ms не
модулированы частотой 4-6кГц. Вы применяете
buzzer со встроенным генератором?
С уважением, SSergo.

Prikupets
SSergo

Здравствуйте Андрей.
Хочу поблагодарить Вас за полезную разработку.
Очень удобно. Теперь спокойно вылетываю акки. 😛
Захотел добавить к светодиодам еще и пищалку,
но обратил внимание, что импульсы 700ms не
модулированы частотой 4-6кГц. Вы применяете
buzzer со встроенным генератором?
С уважением, SSergo.

да - на 3V, и с буферным транзистором и токоограничительным резистором, т.к. PIC не сливает больше 20 мА с ноги.

SSergo

да - на 3V, и с буферным транзистором и токоограничительным резистором, т.к. PIC не сливает больше 20 мА с ноги.

Спасибо. Так и думал.

morituruse

Спасибо ВАМ всем только я не пойму КАК прошивку делать и могу я это сделать дома или как.

Prikupets
morituruse

Спасибо ВАМ всем только я не пойму КАК прошивку делать и могу я это сделать дома или как.

Программатор надо собрать или попросить прошить в фирме которая торугет этими микросхемами. АО Microchip в Москве и Гамма и Тритон и КиТ вроде прошивают бесплатно.

pilot685

А нет ли чего нибудь попроще, без PIC, без датчика температуры, просто чтобы на 3В и диод загорается, или на 9в чтобы все три банки сразу мерять.

Prikupets
pilot685

А нет ли чего нибудь попроще, без PIC, без датчика температуры, просто чтобы на 3В и диод загорается, или на 9в чтобы все три банки сразу мерять.

да сколько угодно google it !

Realtek

Спасибо, Андрей за конструкцию!
Повторил, работает отлично! Индикатор на разъеме. Удобно что работает без индикатора. Развел платку под дип корпус. Выходом делаю АМ вч кварцованого генератора,- получился радио индикатор, который контролирует каждую банку,что наиболее важно, а не тупо всю сборку. Побольше бы таких конструкций.
Виктор.

Prikupets

Сейчас и довольно давно есть Sentry ESC, который мониторит просадку отдельных банок. Но температуру пака пока не меряет 😃