Всем привет! Собираю батарею для себя из 4-х ячеек LiFePO4, 160 а/ч каждая. На каждой ячейке нужно контролировать напряжение с большой точностью, плюс иметь возможность балансировки батареи. Пока что остановился на варианте по отдельному МК и АЦП на ячейку. Вопрос стоит в двухсторонней передаче данных между четырьмя контроллерами и главным МК, земля которого общая с минусом батареи. И если с нижней банкой всё просто, то с остальными оказалось не очень. Двунаправленная передача нужна для того, чтобы ведомые МК управляли и балансировкой батареи. Конденсаторный левел-шифт показал себя не очень здорово с точки зрения помехозащищённости (к слову, от батареи будет питаться мощное импульсное устройство). Токовая петля вроде в этом плане получше, но я не сильно знаком с данной схемотехникой, да и подойдёт ли она вообще здесь... Опторазвязка была бы неплохим вариантом, но оптроны довольно много потребляют. У TI есть изоляторы шин данных, но под 1-Wire ничего нет. Подскажите, если кто уже имел такой опыт, как будет лучше сделать...
Ведомые МК будут скорее всего тини13, 3 ноги на АЦП, одна на балансир, и одна остаётся как раз на шину данных. Есть вариант заюзать ещё и ресет, но это крайний случай, хотелось бы иметь этот вывод свободным для возможности отладки/калибровки.
А может найдутся какие другие предложения?
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
Ну, мне 1-2 мА и на авр-ку не жалко, тем более есть куча энергосберегающих режимов с микроамперами. Меня волнует передача данных с верхних этажей на нижние, мне видится это самым энергопотребляющим. Ну и самый важный вопрос: как?
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
Просто мысль: весьма помехоустойчивы развязывающие трансики подобные тем, что развязывают LAN на платах пользователей... На худой конец просто оптика, но с условием, чтобы обеспечить погашенность оптопар, когда передачи нет (например, вспышками отмечать не уровни, а фронты, тогда вспышки можно сделать короткими - только чтобы хватало перекинуть триггер/вызвать прерывание, а 0/1 кодировать временем между ними). Но сильно смущает выделение только одной ноги...
Ну не ставить же навороченный контроллер ради слежения напруги на банке (да и то, при помощи внешнего АЦП), и дрыгания одним транзистором. 13-я тинька сюда в самый раз.
Ну и повторюсь ещё раз: оптика слишком много жрёт, неважно, передаёт она информацию, или нет. Та-же HCPL2630 кушает в простое 15 мА. Это уж ни в какие рамки...
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
Не, я имел в виду оптику без встроенных драйверов/усилителей - она действительно не годится. Простые транзисторные оптопары
Если её не светить, то и потребления у неё нет. Если светить - потребляет только светодиод, транзисторы же... ну ты ведь знаешь. А светить её можно алгоритмом, который "светит" только тогда, когда идёт смена бита, т.е. по фронтам. В итоге будет достаточно экономноСпойлер
Да, есть такой нюанс. С другой стороны, даже PC817 100 кГц как-то тянет (проверял, хотя фронты уже и смазаны), а для батарейки сверхскоростной обмен гигазами не думаю, что актуален. Будет достаточно вполне неторопливого трепыхания.
LT крайне неохотно шлют семплы, а то я бы с удовольствием. Мне прислали пару навороченных ОУ и пару контроллеров синхронного степ-дауна. И на этом всё, остальные попытки не увенчались успехом.
А доставаемость и цену этих микрух никак нельзя назвать нормальной...
Финт с операционниками не подойдёт, каждый будет вносить свои ошибки + помехи. С таким успехом лучше купить 24 бит АЦП и мерять напругу от земли на каждой банке. Но простых АЦП с такой разрядностью нет, а вкурить работу сложного будет слишком долгим процессом. Ну и стоят они не три копейки. 25-30 баксов за микруху, которую неизвестно запущу ли - как-то жаба душит...
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
Seriyvolk писал(а):Финт с операционниками не подойдёт, каждый будет вносить свои ошибки + помехи.
какие, на хрен, ошибки? LM324 имеет типовое смещение 2 мВ, куда тебе точнее надо? можно еще коррекцию нуля добавить, если уж очень нужно.
какие, на хрен, помехи? откуда они там возьмутся? ОУ - рядом с банками, выходное сопротивление - низкое, ничего на выход, особо, не наведется.
из всего, что тут тебе наговорили, я вижу оптимальным только ОУ для трансляции напряжения ячейки один к одному.
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
В общем-то, я согласен - с помехами весьма эффективно борется банальная фильтрация. Оформить фильтр, отрезающий ВЧ и... 16 вольт - вполне комфортное напряжение для питания и работы ОУ, а уж их можно взять и с малым смещением и дрейфом
Хороший Rail-to-Rail ОУ не так просто достать в моей деревне, да и цены на них негуманные. А вообще, да, я планирую разрешение до одной тысячной вольта. Так что 2 мВ смещение выглядит не очень здорово, и плюс дрейф от температуры и прочего. Я приверженник такого принципа: если делать - то хорошо, а если хорошо сделать не получается, тогда лучше хорошее купить. Поэтому оставлю пока этот вариант, как запасной.
Прибор, защищённый предохранителем, сгорает первым, защитив предохранитель. Закон Мерфи.
У аналоговых девайсов есть изоляторы для шины I2C полагаю их можно использовать для двусторонней шины с подтяжкой.
R-R ОУ тут не нужны, а 2 мВ смещения вполне себе компенсируются в 0 мВ программно, а лучше, аппаратно. Да и не особо нужно за эти 2 мВ бороться при измерении 4 В десятью битами с ~4 мВ разрешения.
А вообще както сложно у вас всё. Я б мерял все банки, как предложил Старичок, только без ОУ и одним контроллером, а балансирами управлял открытым коллектором.