Тестер батарей Arduino с веб-интерфейсом пользователя: 5 шагов
Тестер батарей Arduino с веб-интерфейсом пользователя: 5 шагов
Anonim
Тестер батарей Arduino с веб-интерфейсом пользователя
Тестер батарей Arduino с веб-интерфейсом пользователя

Сегодня в электронном оборудовании используются резервные батареи для сохранения состояния, в котором была оставлена работа, когда оборудование было выключено или когда оборудование было выключено случайно. Пользователь при включении возвращается в точку, где он оставался, и тем самым не теряет ни времени, ни порядка выполнения своих задач.

Шаг 1. Введение

Вступление
Вступление

Я делаю проект по измерению состояния батарей с разной емкостью и напряжением, используя метод: Двухуровневая нагрузка постоянного тока. Этот метод состоит из получения небольшого тока от батареи в течение 10 секунд и высокого тока в течение 3 секунд (стандарты IEC 61951-1: 2005). На основании этого измерения рассчитывается внутреннее сопротивление и, следовательно, его состояние.

Рабочая станция будет состоять из нескольких разъемов, по одному на каждый тип аккумулятора, и ПК. Для этого необходим пользовательский интерфейс (UI). Наиболее важной частью этого руководства является пользовательский интерфейс, потому что в других инструкциях были описаны эти методы тестирования батареи. Я попробовал Processing и получил хорошие результаты, но решил создать собственное программное обеспечение с использованием локального веб-сервера и воспользоваться потенциалом HTML, CSS и php.

Известно, что очень сложно отправить информацию с Arduino на ПК с Windows, но в конце концов мне это удалось. Все программы включены в это руководство.

Шаг 2. Что мы собираемся измерять и как

Что мы собираемся измерять и как
Что мы собираемся измерять и как
Что мы собираемся измерять и как
Что мы собираемся измерять и как

Внутреннее сопротивление.

Каждая настоящая батарея имеет внутреннее сопротивление. Мы всегда предполагаем, что это идеальный источник напряжения, то есть мы можем получить большой ток, сохраняя номинальное напряжение постоянным. Однако размер батареи, химические свойства, возраст и температура - все это влияет на величину тока, которую батарея может выдавать. В результате мы можем создать лучшую модель батареи с идеальным источником напряжения и последовательно включенным резистором, как показано на рис.1.

Батарея с низким внутренним сопротивлением может обеспечивать больший ток и сохранять холод, однако батарея с высоким сопротивлением вызывает нагрев батареи и падение напряжения под нагрузкой, вызывая преждевременное отключение.

Внутреннее сопротивление можно рассчитать по соотношению тока и напряжения, заданному двумя точками на кривой разряда.

Двухуровневый метод нагрузки постоянного тока предлагает альтернативный метод применения двух последовательных разрядных нагрузок с разными токами и продолжительностью времени. Батарея сначала разряжается при низком токе (0,2 ° C) в течение 10 секунд, а затем при более высоком токе (2 ° C) в течение 3 секунд (см. Рисунок 2); закон Ома рассчитывает значения сопротивления. Оценка сигнатуры напряжения при двух условиях нагрузки предлагает дополнительную информацию о батарее, но значения являются строго резистивными и не отражают состояние заряда (SoC) или оценки емкости. Нагрузочное испытание является предпочтительным методом для батарей, питающих нагрузки постоянного тока.

Как указывалось ранее, существует множество методов измерения батарей, рассматриваемых в других инструкциях и которые могут быть реализованы с помощью Arduino, но в этом случае, хотя он не предлагает полной оценки состояния батареи, он дает значения, которые могут быть используется для оценки их будущего поведения.

Внутреннее сопротивление находится с помощью соотношения

Где

Ri = (V1 - V2) / (I2 - I1)

? 1-Напряжение измеряется при слабом токе и в более длительный момент времени;

? 2-Напряжение, измеренное в течение более короткого промежутка времени;

? 1 - ток в более длительный момент времени;

? 2 - Ток в более короткий момент времени.

Шаг 3: Схема

Схема
Схема
Схема
Схема
Схема
Схема

Схема представляет собой источник тока, который потребляет 0,2 ° C (в данном случае 4 мА) и 2 ° C (в данном случае 40 мА) от батарей, используя только одну схему, управляемую сигналом PWM от Arduino. Таким образом можно измерить все резервные батареи с C = 20 мАч, независимо от их напряжения в диапазоне от 1,2 В до 4,8 В, а также другие батареи с другой емкостью. В первой версии я использовал два транзистора, каждый с нагрузкой для стока 4 мА, а другой - 40 мА. Этот вариант не подходил для будущего, так как они хотели измерить другие батареи с другой емкостью, а эта схема требовала большого количества резисторов и транзисторов.

Схема с источником тока представлена на рис. 3. Частота ШИМ-сигнала с вывода 5 платы Arduino составляет 940 Гц, поэтому Fc фильтра нижних частот (LPF) составляет 8 Гц, это означает, что первая гармоника ШИМ-сигнал (940 Гц) будет ослаблен на 20 дБ, поскольку RC-фильтры обеспечивают ослабление 10 дБ на декаду (каждые 10 раз Fc - ослабление будет составлять 10 дБ для 80 Гц и 20 дБ для 800 Гц). Транзистор IRFZ44n имеет слишком большой размер, потому что в будущем будут испытываться батареи большей емкости. LM58n, двойной операционный усилитель (OA), представляет собой интерфейс между платой Arduino и IRFZ44n. ФНЧ был вставлен между двумя операционными усилителями, чтобы обеспечить хорошую развязку между микропроцессором и фильтром. На рисунке 3 контакт A1 Arduino подключен к истоку транзистора IRFZ44n для проверки тока, потребляемого от батареи.

Схема состоит из 2 частей, под платой Arduino UNO и над источником тока, как показано на следующей фотографии. Как видите, в этой схеме нет ни переключателей, ни кнопок, они есть в пользовательском интерфейсе на ПК.

Эта схема также позволяет измерять емкость аккумулятора в мАч, поскольку в ней есть источник тока, а на плате Arduino есть таймер.

Шаг 4: Программы

Программ
Программ
Программ
Программ
Программ
Программ
Программ
Программ

Как упоминалось выше, приложение имеет, с одной стороны, пользовательский интерфейс, созданный с помощью HTML, CSS, а с другой стороны, скетч Arduino. На данный момент интерфейс чрезвычайно прост, поскольку он выполняет только измерение внутреннего сопротивления, в будущем он будет выполнять больше функций.

На первой странице есть выпадающий список, из которого пользователь выбирает измеряемое напряжение батареи (рис. 4). Программа HTML для первой страницы называется BatteryTesterInformation.html. Все батареи имеют емкость 20 мАч.

Вторая страница, BatteryTesterMeasurement.html.

На второй странице аккумулятор подключается к указанному разъему и запускается (кнопка СТАРТ) измерения. На данный момент этот светодиод не включен, потому что у него только один разъем, но в будущем у них будет больше разъемов.

После нажатия кнопки START начинается связь с платой Arduino. На этой же странице отображается форма результатов измерений, когда плата Arduino отправляет результаты теста батареи, а кнопки СТАРТ и ОТМЕНА скрыты. Кнопка НАЗАД используется для начала проверки другой батареи.

Функция следующей программы, PhpConnect.php, заключается в подключении к плате Arduino, передаче и приеме данных с плат Arduino и веб-сервера.

Примечание. Передача с ПК на Arduino происходит быстро, но передача с Arduino на ПК происходит с задержкой в 6 секунд. Я пытаюсь разрешить эту досадную ситуацию. Пожалуйста, приветствуем любую помощь.

И скетч Arduino, BatteryTester.ino.

Когда результирующее внутреннее сопротивление в 2 раза больше начального (новая батарея), батарея неисправна. То есть, если тестируемая батарея имеет сопротивление 10 Ом или более и, согласно спецификации, батарея такого типа должна иметь сопротивление 5 Ом, эта батарея неисправна.

Этот пользовательский интерфейс был протестирован с FireFox и Google без проблем. Я установил xampp и wampp, и они хорошо работают в обоих.

Шаг 5: Заключение

Этот тип разработки с использованием пользовательского интерфейса на ПК имеет много преимуществ, поскольку позволяет пользователю легче понять выполняемую им работу, а также позволяет избежать использования дорогостоящих компонентов, требующих механического взаимодействия, что делает их уязвимыми для поломок.

Следующим шагом этой разработки является добавление разъемов и изменение некоторых частей схемы для тестирования других батарей, а также добавление зарядного устройства. После этого будет спроектирована и заказана печатная плата.

В пользовательский интерфейс будет внесено больше изменений, включая страницу с зарядным устройством.

Пожалуйста, любые идеи, улучшения или исправления, не стесняйтесь комментировать, чтобы улучшить эту работу. С другой стороны, если у вас есть вопросы, задавайте мне, я отвечу на них как можно быстрее.