Как измерить много напряжений (Uno) — Аналоговые удлинители — хороший вариант?
Я пытаюсь сделать тестер емкости аккумулятора (литий-ионный аккумулятор 18650 3,7 В) с помощью Arduino Uno. Если возможно, я хотел бы протестировать 20 или более батарей одновременно. Мне нужно измерять напряжение каждой батареи каждую 1 секунду.
У UNO есть 6 аналоговых входов iirc, что слишком мало для этого приложения. Я думаю, что использование нескольких аналоговых расширителей (соединенных с помощью I2C), соединенных вместе, позволит создать достаточное количество аналоговых входов. Например, этот: https://nl.aliexpress.com/ item/32858973834.html?spm=a2g0o.productlist.0.0.57206143DNgWKp&algo_pvid=526d42f2-f7ee-4781-932b-947744ac631e&algo_expid=526d42f2-f7ee-4781-932b-94 7744ac631e-0&btsid=89c452fa-1d7c-4ae9- 9dd5-ed8fc9bff128&ws_ab_test=searchweb0_0,searchweb201602_8,searchweb201603_52 Как вы думаете, смогу ли я получить относительно точные измерения напряжения, используя этот подход?
Целью схемы является измерение количества мАч (емкости батареи) батареи 18650, которая разряжается через резистор 10 Ом. Батарея будет разряжаться с 4,2 В (полностью заряженная) до примерно 2,5 В с помощью резистора 10 Ом, каждую секунду будет измеряться падение напряжения на резисторе, и с его помощью будет вычисляться интеграл времени*ток по прошедшему времени для определения емкость.
Это базовая схема, используемая для подключения каждой батареи 18650, контакт ANALOG1 будет подключен к входу аналоговых расширителей: (Я взял за основу схему из этого видео: https://www.youtube.com/watch?v=WScPyfQz_f8) Идея состоит в том, чтобы измерить падение напряжения на мощном резисторе 10 Ом 10 Вт и рассчитать ток, используя известное значение сопротивления, вычислить интеграл тока * времени, чтобы получить значение емкости для батареи.
Хороший ли это подход? Вы бы порекомендовали использовать для этого аналоговые удлинители? Если нет, что было бы лучшим решением? Большое спасибо!
@Maarten -Monica for president, 👍1
Обсуждение1 ответ
Лучший ответ:
На самом деле это два отдельных вопроса, и я отвечаю на ваш первый вопрос о считывании нескольких аналоговых значений с использованием одного АЦП, и ответ: да, вы можете использовать этот подход, но вы должны дать каждому каналу достаточно времени для зарядки внутреннего конденсатора АЦП при изменении канал. Поэтому, если вы используете более независимый АЦП, вы получаете больше времени для каждого канала и результат лучше
- Питание Arduino от батареи и считывание напряжения батареи
- как узнать, какая батарея (сколько ампер и напряжение) нужна моей схеме для идеальной работы?
- Блок питания для Seeeduino Xiao
- Определение уровня заряда с помощью датчика тока (ACS758) с arduino uno
- Почему пассивный зуммер щелкает, а не гудит, когда установлен на ВЫСОКИЙ?
- Как подключить LCD i2c, используя только контакты A0 и A1 (приведены SDA, SCL, GND и VCC)
- Как найти пиковое значение аналогового сигнала?
- Генерация истинного аналогового сигнала с помощью Arduino
@jsotola Моя ошибка, на самом деле нет, нужен только 1, отредактирую пост, @Maarten -Monica for president
Я бы выбрал набор АЦП с 8 входами, например https://www.digikey.com/product-detail/en/microchip-technology/MCP3208-BI-P/MCP3208-BI-P-ND/319443. 8 каналов, 12-битное разрешение, быстрый доступ по SPI. Этот резистор на 10 Ом может сильно нагреться. Как вы будете отключать аккумулятор, когда он разряжается, чтобы он не был поврежден из-за чрезмерного разряда?, @CrossRoads
Ваша схема будет потреблять около 360 мА от каждой батареи через резистор 10 Ом. У вас есть способ отключить батареи, когда они не тестируются?, @Duncan C
@Duncan C Для отключения батареи я буду использовать MOSFET, который я отключу с помощью Arduino, когда напряжение батареи станет слишком низким. Я забыл нарисовать это в схеме, @Maarten -Monica for president
@Crossroads спасибо за предложение, я посмотрю, используя этот подход. Батарея будет отключена с помощью MOSFET, который управляется Arduino, который отключает MOSFET, когда напряжение батареи становится слишком низким., @Maarten -Monica for president
Я лично получил хороший опыт использования аналоговых мультиплексоров (это то же самое, что Arduino делает для обеспечения 8 аналоговых входов, имея только 1 АЦП, но, конечно, подход CrossRoad тоже хорош. Схема, которую вы предоставили, не работает, вы измеряете напряжение батареи напрямую что потенциально может вывести из строя ардуино.Взгляните еще раз на схему показанную на видео.нужны 2 аналоговых входа для измерения падения напряжения на шунте(ток) и как минимум делитель напряжения для измерения напряжения, @Sim Son
Итак, вы собираетесь постоянно подключать к цепи резистор мощностью 10 Ом? Это означает, что вы будете постоянно потреблять почти 0,4 А тока из вашей батареи. Если это аккумулятор емкостью 4 Ач, измерительный резистор разрядит аккумулятор за 10 часов без фактической нагрузки. Мне кажется, что вы должны отключить MOSFET по умолчанию, включить его на мгновение, измерить вход на аналоговый контакт, а затем снова выключить MOSFET., @Duncan C
@ Duncan C Спасибо за беспокойство. Я не объяснил назначение схемы должным образом, извините. Целью схемы является измерение количества мАч (емкости батареи) батареи 18650, которая разряжается через резистор 10 Ом. Батарея будет разряжаться с 4,2 В (полностью заряженная) до примерно 2,5 В с помощью резистора 10 Ом, каждую секунду будет измеряться падение напряжения на резисторе, и с его помощью будет вычисляться интеграл времени*ток по прошедшему времени для определения емкость., @Maarten -Monica for president