Comments 49
Может, просто заменить свинцово-кислотную батарею на LiFePo4?
В принципе можно, но итоговая стоимость такого решения будет значительно дороже. Ведь такая батарея довольно дорогая и к ней потребуется отдельный контролер заряда (ведь зарядка UPSа рассчитана обычную АКБ)
И все это никак не убирает изначальную проблему - удаленный контроль состояния АКБ в ИБП.
Но ведь если аккум сам по себе фиговый, его мониторинг мало что даст.
Я сегодня подключил новую LiFePO₄ вместо предыдущей AGM батареи. И, надо признать, с точки зрения юзабилити - это был почти что шок! Единственная особенность AGM/GEL батарей в плане юзабилити - это немного пугающе громкие хлопки с искрами в момент подключения второй клеммы. Моя батарея LiFePO₄ в этом плане отличается принципиально:
- На ней есть кнопка включения! Так что хлопков и искр при подключении удалось избежать.
- Когда батарея включена - кнопка включения подсвечивается!
- На ней есть LCD индикатор! (На котором ещё пара кнопок, с которыми я пока не разбирался.)
- У неё есть Bluetooth и приложение для смартфона:

Да, LiFePO₄ действительно примерно на 25% дороже AGM/GEL, но учитывая разницу в их характеристиках и сроке службы покупать AGM/GEL есть смысл либо если это последние деньги и больше нет (что при покупке аккумулятора для UPS маловероятно - это не жизненно необходимый товар), либо если это массовые закупки в серверную/ДЦ и экономия в 25% сейчас на таких масштабах для компании намного важнее любых возможных преимуществ и экономии которые станут ощутимы через несколько лет.
LiFePO₄ действительно примерно на 25% дороже AGM/GEL,
нолик забыли?
Так что хлопков и искр при подключении удалось избежать.
Небольшой резистор для начальной зарядки ёмкостей в UPS решает, надо то всего раз...
Но в целом согласен, менять надо. Сам со свинцом намаялся. Акк стоят чуть недозаряженными. В отдельном вентилируемом отсеке, в режим баттарей переходит очень редко и не на долго и.... всё равно сульфатация.
У меня в личке уже несколько человек спросили о какой конкретно модели шла речь, так что я всё-таки оставлю ссылку прямо здесь: Аккумулятор LP LiFePO4 12,8V - 100 Ah (1280Wh) (BMS 100A/50А) пластик LCD Smart BT.
А каким образом с телефоном контролируется?
Нормальные ИБП работают по USB без установки дополнительного ПО и драйверов. Сразу после подключения системном трее появляется значёк батареи с процентом заряда, как на ноутбуках.
Согласен, что нормальные ИБП именно так и должны делать.
Вот только где найти такой нормальный и не дорогой ИБП с поддержкой Linux?
В nuts поддержка самых странных протоколов есть. А если нет - можно бросить силы на из поддержку.
У вас немного неправильно поставлен вопрос, не ИБП поддерживает Linux, а Linux поддерживает ИБП - в проекте nut https://networkupstools.org/
уже прописаны протоколы для всех основных производителей ИБП. Всё, что ИБП отдает по USB - можно любым способом обрабатывать.
В серьезных серверных ИБП есть либо слоты для карточек SNMP, либо уже встроены такие карточки.
Поэтому вы с чистой совестью можете брать любой компьютер с Linux, подключать к нему ИБП через USB и всё нужное посмотреть, передать, обработать, графики нарисовать.
Так сказать - всё придумано до нас.
(чтобы не быть голословным - буквально вчера подсоединял ИБП Powercom к NAS Netgear - обоим примерно по десять лет, потратил часа два на изучение вопроса и никак не мог понять почему практически нет информации о том, как нужно сплясать чтобы всё заработало - оказалось что нужно просто вставить провод USB и.... всё! - ИБП определился, оставалось только выбрать уровень заряда аккумулятора, при котором NAS должен штатно завершить работу в случае отключении электросети - nut в Netgear-овский Linux встроен по умолчанию. Нет, совсем без танцев не обошлось - при холодном старте NAS ИБП не определялся, при передергивании провода - определялся, но это проблема алгоритма работы USB портов в NAS - еще пару часов поиска почему такое происходит, по результату написал скрипт на две строчки, который через минуту после загрузки передергивал порт USB - если бы я купил не Powercom, а, например, APC - такого бы не было (поддержка APC в Netgear заявлена)
Но в качестве тренировки - почему нет? Платы, кстати, в Китае собирают и шлют - только через посредника в Китае, информации достаточно как это сделать.
И сисадмины делятся не на 10, а на 11 категорий - вы забыли тех, кто бэкапы потом проверяет на возможность из них развернуть систему.
Идея то хорошая. И меня посещала. У меня не ИБП, а некий электротранспорт, в котором 5 батарей 12в 55а*ч последовательно и не плохо бы каждую из них контролировать. Только вы ничего не сообщили кроме того что есть некий прототип. У меня нет проблем разработать, заказать и спаять платы. И стоимость совсем не космическая. Если бы я делал какой-то вольтметр с BLE для одной батареи, то по себестоимости будет не дороже 500руб.
то по себестоимости будет не дороже 500руб.
В пятьсот рублей у меня никак не влезает: IOT модуль + преобразователь питания (12-24В до 5-7В) + токовый шунт 75мВ + 4 резистора для делителей напряжения + датчик температуры ds18b20. Это минимум без платы и без монтажа.
Не надо никакой IOT модуль, надо дешевый BLE модуль + дешевый процик за 20 рублей. Питание 12-24 -> 3,3v это 20-30 рублей. А надо ли ток контролировать? Может напряжения достаточно. ds18b20 дорого и оригинальный не найти. С частью которая будет измерять я проблем не вижу. А кто будет это всё собирать и показывать?
ESP32 + INA3221+ шунт(для тяговых можно перемычку шунтом использовать) + MP2315(до 20 В) + немного рассыпухи. DS18B20 можно взять производства UMW https://www.chipdip.ru/product/ds18b20-umw
Именно так я и делаю.
DC-DC 40 р., INA3221 80 р., ESP32 150 р., DS18B20 60 р., Шунт 10 р. = 340 р.
INA3221 80 р
Где она по 80р ? И зачем 3 канала?
https://aliexpress.ru/item/32828796768.html Первая что была под руками, лишнее не используйте.
INA3221 - я так понимаю только для измерения напряжения. Чем бы ток мерять ? Можно на обычных шунтах 75мОМ, но они огромные и что-то у меня +-лапоть получаются результаты :(
На токи 1 - 2 А я чтото типа таких https://aliexpress.ru/item/1005002890367177.html?sku_id=12000022640017222 использовал совместно с INA3221 делая стенд для обмеров плат MP2315.
Какой 1-2А? У батареи десятки А ток :(((. При 12В и условной мощности в 360вт получаем 30А...
Кроме 50 мОм там есть 1 - 2 - 2,5 и 3 мОм шунты, 1 мОм при 30 А даст 30 мВ и 1 Вт рассеиваемой мощи.
Ну я примерно таким и пользуюсь, стандартный шунт дает 75мВ на ХА, в моем случае на 100А. Но что-то загоняя в ацп получаю мягко говоря не слишком точные результаты. (десятки процентов разбега). Вероятно нужны дополнительные усилия, четырехпроводная схема может или еще что.... Поди наводки от 50гц есть уже с такими напряжениями.
ЗЫ. Вижу что описался с мОм. Шунты на 75мВ именно.
дешевый BLE модуль + дешевый процик за 20 рублей
для которых еще нужна обвязка MCU + разъем и обвязка для USB (у самых дешевых микроконтроллеров поддержки USB может и не быть) + обязательно плата (навесным монтажом проводки к ножкам не припаяешь).
В итоге все это выйдет гораздо дороже и сложнее какого нибудь ESP32 с уже рабочим USB и встроенными WiFi и Bluetooth
Плата в любом случае нужна. Или вас устроит колхоз из китайских модулей на проводках и соплях? Меня сопли в принципе не устраивают, наигрался в детстве. Зачем USB и WiFi в батарее? ESP32 кушает слишком много.
Для дома смысла маловато. Потери не те. Ну потераяешь 1-2 часа работы, максимум. А на серьезном оборудовании стоят другие решения.
PS. С другой стороны рано или поздно многих посещается идея своего бесперебойника.
Ну потераяешь 1-2 часа работы, максимум.
С точки зрения потери данных, потерь вообще не будет, так как я дома работаю на ноутбуке, только с внешним монитором и клавиатурой.
Тут больше защита от скачков напряжения при продолжении работы при отсутствии питания.
Показометр напряжения на аккумуляторе - почти ничего не даст. Дохлая батарея с повышенным внутренним сопротивлением (например - выкипание) - даст то же самое напряжение (на которое настроен блок заряда), но не выдержит и десятка мс.
Даже если делать параллельно контроль тока и, перемножая между собой и со временем, получать реальные кулоны - остаётся вопрос о граничных условиях. Заряд с N1 до N2 вольт током Inom за время T при температуре t - это норма или потеря ёмкости? А если потеря, то скольких процентов? А "новая" батарея, пролежавшая год на складе - насколько "новая"? Решение вопроса потянет на полноценный НИР с погружением в тематику, поиском информации и опытами.
Без возможности переключения на аккумуляторы для теста - любая "нашлёпка" немного стоит. Отсюда - желательность разбора вендорских протоколов (которые часто являются просто дискретными сигналами на линиях "чего-то, похожего на COM-порт") и неверность опроса. Надо спрашивать не "Защищаетесь ли Вы", а "Чем Вы защищаетесь". Как вариант - "нашлёпка" могла бы подавать сигнал на принудительное переключение внутрь схемы UPS. Но это - сузит круг последователей.
Беспроводной интерфейс для стационарного прибора и прочие свистоперделки вроде "подсветки кнопаськи" - считаю излишеством. Но тут уж - каждый как хочет.
Даже если делать параллельно контроль тока
Именно контроль тока на шунте. В этом случае можно будет и емкость/заряд подсчитать и ручную корректировку настроить при необходимости.
Без возможности переключения на аккумуляторы для теста - любая "нашлёпка" немного стоит.
Для этого нужен контроль входного напряжения, но вот это делать как раз и не хочется.
Беспроводной интерфейс для стационарного прибора и
Беспроводные интерфейсы идут в комплекте, тогда как основной это USB
Дохлая батарея с повышенным внутренним сопротивлением
А если "шатать" напряжение заряда и смотреть за током, получим ли хотя бы примерное внутреннее сопротивление или там всё слишком сложно для какой бы то ни было экстраполяции?
У меня в UPS кстати есть место на плате для управления напряжением заряда и ещё какими-то манипуляциями вокруг зарядки, но детали не распаяны.
Я вас обрадую. Дешманские ИБП ("офисные", оффлайн) выдают на заряд неизвестно что неизвестно каких форм, ограниченное только напряжением, греют АКБ до 40 градусов греющимся трансформатором (если он есть, ссейчас вообще стали делать миниатюрные ИБП в размерах чуть больше сетевого фильтра с кучей импульсных преобразователей). Дорогие "онлайн" (если не брендовые АРС) тоже выдают на заряд неизвестно что: сказано в мануалах, что заряжать надо 13.75В/АКБ, но зарядник выдает абсолютно некалиброванное напряжение, в зависимости от разбега компонентов, к тому же замеряет его на своем выходе, а дальше еще диод ставят, предохранители/клеммы/провода, отбирают часть напряжения на собственные нужды (вторичный блок питания). В настройках "умный" заряд - по факту его нет, в лучшем случае отключается зарядник (плавающий заряд) - но в куче моделей программисты забыли добавить это отключение. Темокомпенсация? Забудьте, там даже датчика температуры нет.
Термокомпенсация с мониторингом состояния АКБ начинается в трехфазке (ка минимум по входу 3 фазы) и на массивах батарей 18.....48 штук последовательно. Но опять же включена термокомпенсация, допустим 0.03В/градус на банку, датчик температуры, все дела, а отклонение напряжения на цепи АКБ может быть до 5...10 Вольт - цепи измерения неоткалиброваны и не калибруются (привет, хуавей и его отечественные копии) - фтопку термокомпенсацию!
Так что если и делать мониторинг, то добавлять и балансировку - а такое уже придумано (криво-косо и вендорозависимо, но есть).
ИБП простенький, 20 аккум*12 вольт (+120 и -120). Есть контроль состояния и калибровка состояния.
RS-485 витой парой примерно 7-8 метров.
Да, нудно нужно ПО от производителя ИБП, но это не точно (просто мне так удобно).
DSP MULTIPOWER online ИБП 20кВА
Свинцовые батареи стабильно дохнут и требуют регулярной замены, наличие мониторинга не решает проблему, а лишь позволяет производить их замену вовремя.
Простенькая лифепо батарея отечественного производителя из Екатеринбурга для простенького домашнего ИБП стоит как 3-4 обычных обычных свинцовых, имеет срок службы 10 лет, при этом мониторинг ей вообще не требуется
У меня есть недешевый онлайн-бесперебойник с мониторингом, но древний как ...овно мамонта, Siemens Masterguard A3000. Как он мне достался, первый комплект аккумов отработал лет 3-5, но это не точно. Т.к. нагружать его начал к концу этого периода и только тогда заметил, что аккумы устали совсем. А вот после аккумы больше года не живут, теряют более половины ёмкости. И тоже задумался о собственном контроллере батареи, чтобы хотя бы понять, это аккумы такие фиговые постоянно попадаются, или бесперебойник их ушатывает. Вот только там батарея из 8 аккумов. И решение автора мне не подойдёт. Ну а для того, чтобы контролировать общие напряжения/ток сборки, можно взять готовые модули PZEM003, и организовать сбор статистики в том же Home Assistant.
Подобный вольтамперметр точно не подойдет для ИБП. У него максимальный ток всего 10А, тогда как при работе от АКБ разрядный ток может быть в несколько раз больше.
С другой стороны, ваш Siemens Masterguard A3000 не только старый как ...овно мамонта, но и стоит как крыло от самолета и должен иметь контроль АКБ (либо иметь модуль расширения для мониторинга).
И вы скорее всего правы в том, что мое решение ему не подойдет не смотря на то, что использование внешних шутов (хоть до килоамер), позволяет контролировать практически любые нагрузки.
Да, насчёт PZEM003 вы правы. Нужен PZEM017 с шунтом на 50А. Так всё-таки вопрос остаётся, есть ли смысл городить что-то своё одноканальное, если есть различные PZEM? На Озоне 950 руб упомянутый PZEM017.
А у моего Masterguard'a есть RS232 порт, и даже nut его вполне понимает и все возможные данные с него получает. И даже позволяет отправить команду калибровки АКБ.
Но, во-первых, я так и не смог добиться реального времени до отключения. Он выдаёт нагрузку в %% и напряжение на одной банке. Оставшееся время он не выдаёт, и остаётся только тестово и/или эмпирически настройкой параметров заставить nut самому считать время. Фигня в том, что при деградации аккумов за год параметры очень быстро становятся не актуальны. С использованием стороннего вольтамперного модуля перед АКБ по идее можно хотя бы понимать, сколько АКБ принимает и отдаёт заряда до полной высадки. Другое дело, что с этими данными делать? Для nut есть готовые клиенты под разные платформы, которые автоматом шатдаунят станции. Ну в принципе на базе HomeAssistant тоже можно свои автоматизации сделать.
Ну а во-вторых, хочу всё-таки понять каким образом бесперебойник обращается с АКБ, и попытаться сделать вывод, он виноват, или аккумуляторы мне такое г... попадаются.
Такой измеритель с токовым шунтом уже попадает в нужный диапазон для измерений.
Но проблему вы сами описали. Это обычный измеритель напряжения и тока и он не приспособлен для определения режима заряда-разряда АКБ (только косвенно по уровню напряжения), как и вычислять деградацию емкости АКБ от времени или её состояния.
А что можно было бы добавить к такому измерителю? Кроме определения направления тока мне ничего в голову не приходит. До построения вольт-амперного графика это, конечно, мои досужие размышления, но думаю, что дальше по табличкам с параметрами алгоритмически не будет проблем с определением заряда-разряда, подсчётом принятой-отданной энергии и оценкой остаточной ёмкости АКБ пропорционально от глубины разряда при очередном отключении питания. Будут небольшие пробелы в статистике при полном отключении на время последующего старта компа с НА.
На самом деле я вашу идею поддерживаю. Вариант с PZEM подразумевает затраты времени на организацию сбора и обработки данных. Готовое решение за разумные деньги было бы интересно. Для полной функциональности подкидываю вам идею реализовать сразу на борту поддержку протокола NUT хотя бы в минимальном варианте, тем более он стандартизирован. Ну и совсем для полного фарша LAN-порт добавить. Хотя это накинет к себестоимости железа 500-900 руб.
О контроллере батареи ИБП (вопрос к читателям Хабра)