Отображение уровня заряда батареи Lipo с использованием nodemcu

Я разрабатываю подключаемый ошейник для домашних животных для проекта, для этого я использую nodemcu на ESP8266 с питанием от батареи Lipo. Я предполагаю, что емкости около 1000 мАч достаточно для приличной автономности (? Любые советы). Модель Lipo: https://www.lipolbattery.com/lithium%20polymer%20battery.html Чтобы зарядить аккумулятор, я нашел это зарядное устройство USB LiPo (https://learn. sparkfun.com/tutorials/lipo-usb-charger-hookup-guide/all), мой первый вопрос: можно ли использовать его для аккумуляторов LiPo большей емкости (1400 мА)? Также я хотел бы отображать уровень заряда батареи с помощью светодиода RGB (пример: зеленый цвет соответствует ПОЛНОМУ заряду аккумулятора, а КРАСНЫЙ — низкому уровню заряда аккумулятора, нуждающемуся в зарядке). Есть ли способ сделать это? Спасибо

, 👍0

Обсуждение

Измерить емкость LiPo сложно. Я бы посоветовал инвестировать в чип «Fuel Gauge», чтобы измерять его для вас. (Например: https://www.sparkfun.com/products/10617), @Majenko

Я нашел его проект какие-либо предложения? https://www.teachmemicro.com/arduino-lipo-battery-monitor/, @SalmaG


2 ответа


1

Его по-прежнему можно использовать для более высоких мощностей. Я рекомендую вам tp4056 и какой-нибудь повышающий преобразователь. Вы можете использовать резисторный делитель (который безопасно понижает напряжение до 3,3 В nodemcu) и подключить его выход к аналоговому выводу вашего nodemcu. Номиналы резисторов должны быть высокими, например 10k. Вы можете просто подключить свой диод к nodemcu и закодировать, если напряжение меньше 3,2 В, пусть включается красный диод, когда выше 3,8 В, пусть включается зеленый диод

,

1

Отвечая на второй вопрос "Я также хотел бы отображать уровень заряда батареи...?" (в следующий раз, пожалуйста, откройте для этого новый вопрос):

Для измерения уровня напряжения модуля (также известного как VCC) NodeMCU (который представляет собой просто плату, содержащую чип ESP8266), запрограммированной в Arduino IDE (что я предполагаю, учитывая, что вы спрашиваете об обмене стеками arduino), здесь применяется: /p>

Чтобы считать напряжение VCC, используйте ESP.getVcc(), а контакт ADC не должен быть подключен. Кроме того, в скетч необходимо добавить следующую строку:

ADC_MODE(ADC_VCC);

Эта строка должна стоять вне каких-либо функций, например, сразу после #include линии вашего скетча.

Источник: ссылка на ESP8266 Arduino

Таким образом, вы можете просто управлять красным и зеленым светодиодами (не забывайте об обязательном токоограничивающем резисторе) от любых двух других контактов вашего eMCU Nod . Затем переключите их в своем скетче, если VCC упадет ниже 3,2 В (вам может потребоваться поэкспериментировать с этим из-за допусков измерений; скетч для начала это было бы здесь.

,