Оглавление:
- Шаг 1. Переход от базового проекта
- Шаг 2: V0.2 платы
- Шаг 3. Макетная плата: расширенный контроллер отображения символов I2c
- Шаг 4: Макетная плата: символьный дисплей со встроенным I2c
- Шаг 5: реализация
- Шаг 6: расширяемость
- Шаг 7: Список деталей
- Шаг 8: Плата: сброс, кнопка Gnd E для выбора батареи
- Шаг 9: Плата: I2c и контакты источника питания
- Шаг 10: Плата: термистор и измерение напряжения
- Шаг 11: Плата: резистор для измерения напряжения
- Шаг 12: Шаг пайки: все контакты
- Шаг 13: Этапы пайки: понижающий резистор и термистор
- Шаг 14: Этапы пайки: МОП-транзистор, сопротивление для проверки напряжения
- Шаг 15: Код
- Шаг 16: Результат после сборки
- Шаг 17: Сначала выберите тип батареи
- Шаг 18: начните разрядку
- Шаг 19: Исключения: Батарея удалена
- Шаг 20: Исключения: предупреждение о температуре
- Шаг 21: проверка силы тока
- Шаг 22: упаковка
![Проверка батареи с температурой и выбором батареи: 23 шага (с изображениями) Проверка батареи с температурой и выбором батареи: 23 шага (с изображениями)](https://i.howwhatproduce.com/images/006/image-17797-11-j.webp)
Видео: Проверка батареи с температурой и выбором батареи: 23 шага (с изображениями)
![Видео: Проверка батареи с температурой и выбором батареи: 23 шага (с изображениями) Видео: Проверка батареи с температурой и выбором батареи: 23 шага (с изображениями)](https://i.ytimg.com/vi/yGeKJPefKeQ/hqdefault.jpg)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
![Image Image](https://i.howwhatproduce.com/images/006/image-17797-13-j.webp)
![](https://i.ytimg.com/vi/qtkX7k1xZDg/hqdefault.jpg)
![Изменить базовый проект Изменить базовый проект](https://i.howwhatproduce.com/images/006/image-17797-14-j.webp)
Тестер емкости аккумулятора.
С помощью этого устройства вы можете проверить емкость батареи 18650, кислоты и других (самая большая батарея, которую я тестировал, это 6v Acid battery 4, 2A). Результат теста выражается в миллиампер / час.
Я создаю это устройство потому, что оно нужно для проверки емкости фальшивого китайского аккумулятора.
В целях безопасности я добавил, используя термистор, температуру силового сопротивления и батареи, чтобы предотвратить перегрев, с помощью этого трюка я могу проверить 6-вольтовую кислотную батарею, не загорая плату (в цикле разряда некоторое время перейдите на резистор горячего питания. и устройство подождите 20 секунд, чтобы снизить температуру).
Я выбираю маленький микроконтроллер atmega328, совместимый с nano (eBay).
Весь код здесь.
Шаг 1. Переход от базового проекта
Я позаимствовал идею из проекта OpenGreenEnergy и переделал доску, чтобы добавить функции, так что теперь перейдем к более общим.
v0.1
- VCC Arduino теперь рассчитывается автоматически;
- Добавлена переменная для более удобного изменения настроек.
- Добавлен процент разгрузки
- Добавлена температура батареи и силового резистора
v0.2
- Добавлена возможность выбора батареи
- Создан прототип платы (см. Схему) с экраном, кнопкой и динамиком вне платы, потому что в будущем я хотел бы создать пакет.
- Добавлено управление температурным пределом для силового резистора, чтобы я мог блокировать процесс при повышении температуры выше 70 ° (выше этой температуры, снижение номинальных характеристик силового резистора).
v0.3
Скоро появится доска с этого сервиса
Шаг 2: V0.2 платы
![V0.2 Правления V0.2 Правления](https://i.howwhatproduce.com/images/006/image-17797-15-j.webp)
В v0.2 для поддержки различных типов батарей я создал структуру, которая должна быть заполнена названием батареи, минимальным и максимальным напряжением (мне нужна помощь, чтобы заполнить ее: P).
// Структура типа батареи BatteryType {char name [10]; float maxVolt; float minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryTypes [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v Acid", 6.50, 5.91 }};
Теперь я использую набор резисторов 10 кОм для делителя напряжения, чтобы считывать двойную температуру аналогового входа. Если вы хотите изменить поддержку напряжения, вы должны изменить это значение (объясните лучше далее):
// Сопротивление напряжения батареи
#define BAT_RES_VALUE_GND 10.0 #define BAT_RES_VALUE_VCC 10.0 // Сопротивление напряжения силового резистора #define RES_RES_VALUE_GND 10.0 #define RES_RES_VALUE_VCC 10.0
Если вы не используете термистор, установите значение false:
#define USING_BATTERY_TERMISTOR true
#define USING_RESISTO_TERMISTOR true
Если вы используете другой дисплей i2c, вы должны переписать этот метод:
ничья недействительна (недействительна)
В проекте вы можете найти схемы фритзинга, фотографии и многое другое.
Шаг 3. Макетная плата: расширенный контроллер отображения символов I2c
![Макетная плата: расширенный контроллер отображения символов I2c Макетная плата: расширенный контроллер отображения символов I2c](https://i.howwhatproduce.com/images/006/image-17797-16-j.webp)
Я использовал универсальный символьный дисплей, построил контроллер i2c и использовал его со своей собственной библиотекой.
Но при желании можно взять нормальный контроллер i2c (менее 1 €) со стандартной библиотекой, код останется прежним. Весь код отображения находится в функции рисования, поэтому вы можете изменить это, не меняя других вещей.
Лучше объясните здесь.
Шаг 4: Макетная плата: символьный дисплей со встроенным I2c
![Макетная плата: символьный дисплей со встроенным I2c Макетная плата: символьный дисплей со встроенным I2c](https://i.howwhatproduce.com/images/006/image-17797-17-j.webp)
Та же схема без управления i2c расширена.
Шаг 5: реализация
Для измерения напряжения мы используем принцип делителя напряжения (подробнее в Википедии).
Проще говоря, этот код является множителем для измерения напряжения батареи.
batResValueGnd / (batResValueVolt + batResValueGnd)
Я вставил 2 сопротивления значений batResValueVolt и batResValueGnd после и перед проводом аналогового считывания.
batVolt = (sample1 / (1023.0 - ((BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)) * 1023.0))) * vcc;
sample1 - средние аналоговые показания;
опорное напряжение vcc Arduino;
1023.0 - это опорное максимальное значение аналогового чтения (аналоговое чтение Arduino изменяется от 0 до 1023).
Чтобы получить силу тока, вам нужно напряжение после силового резистора и до него.
Когда вы измерили напряжение после и до силового резистора, вы можете рассчитать миллиампер, который потребляет батарею.
МОП-транзистор используется для запуска и остановки разряда батареи из силового резистора.
В целях безопасности я вставил 2 термистора для контроля температуры батареи и силового резистора.
Шаг 6: расширяемость
![Расширяемость Расширяемость](https://i.howwhatproduce.com/images/006/image-17797-18-j.webp)
![Расширяемость Расширяемость](https://i.howwhatproduce.com/images/006/image-17797-19-j.webp)
Я пытаюсь создать прототип платы, который можно расширять, но пока я использую только минимальный набор контактов (в будущем я добавлю светодиоды и другие кнопки).
Если вы хотите, чтобы поддерживаемое напряжение превышало 10 В, вы должны изменить номинал резистора батареи и сопротивление в соответствии с формулой
(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)
в схеме Напряжение питания резистора
Напряжение питания резистора GND 1/2 / (Напряжение питания резистора 2/2 + напряжение питания резистора GND 1/2)
Розовый идет пайкой
Шаг 7: Список деталей
Свойства типа части количества
- 2 Винтовые клеммы 5 мм Клеммная колодка для монтажа на печатной плате 8A 250V LW SZUS (eBay)
- 1 клон Arduino Pro Mini (совместимый Nano) (eBay)
- 1 базовый полевой транзистор P-Channel IRF744N или IRLZ44N (eBay)
- 11 Резистор 10 кОм резистор 10 кОм (eBay)
- 2 Температурный датчик (термистор) 10кОм; (eBay)
- * Родовая мужская форма заголовка ♂ (мужская); (eBay)
- * Общая форма женского заголовка ♀ (женский); (eBay)
- 1 плата PerfBoard Доска для прототипа 24x18 (eBay)
-
10R, 10Вт
силовой резистор (eBay) я нахожу свой в старом ЭЛТ-телевизоре.
Шаг 8: Плата: сброс, кнопка Gnd E для выбора батареи
![Плата: сброс, кнопка Gnd E для выбора батареи Плата: сброс, кнопка Gnd E для выбора батареи](https://i.howwhatproduce.com/images/006/image-17797-20-j.webp)
В левой части контактов находится кнопка и зуммер.
Использую 3 кнопки:
- один для смены типа батареи;
- один для начала разряда выбранной батареи;
- Затем я использую контакт сброса, чтобы перезапустить все и активировать новую операцию.
Все контакты уже опущены, поэтому вы должны активировать их с помощью VCC
Сброс активируется с помощью GND
Розовый идет пайкой вниз
Шаг 9: Плата: I2c и контакты источника питания
![Плата: I2c и контакты источника питания Плата: I2c и контакты источника питания](https://i.howwhatproduce.com/images/006/image-17797-21-j.webp)
На базе вы можете увидеть VCC, GND и SDA, SCL для отображения (и другие в будущем).
Розовый идет пайкой вниз
Шаг 10: Плата: термистор и измерение напряжения
![Плата: термистор и измерение напряжения Плата: термистор и измерение напряжения](https://i.howwhatproduce.com/images/006/image-17797-22-j.webp)
Справа находятся контакты для считывания значения термистора, один для термистора силового резистора, а другой для термистора батареи (штырьки / розетки для подключения).
Затем есть аналоговые выводы, которые измеряют дифференциальное напряжение после силового резистора и перед ним.
Розовый идет пайкой вниз
Шаг 11: Плата: резистор для измерения напряжения
![Плата: резистор для измерения напряжения Плата: резистор для измерения напряжения](https://i.howwhatproduce.com/images/006/image-17797-23-j.webp)
![Плата: резистор для измерения напряжения Плата: резистор для измерения напряжения](https://i.howwhatproduce.com/images/006/image-17797-24-j.webp)
Здесь вы можете увидеть резистор, который позволяет поддерживать напряжение вдвое больше, чем вывод Arduino (10 В), вы должны изменить его, чтобы поддерживать большее напряжение.
Розовый идет пайкой
Шаг 12: Шаг пайки: все контакты
![Шаг пайки: все контакты Шаг пайки: все контакты](https://i.howwhatproduce.com/images/006/image-17797-25-j.webp)
![Шаг пайки: все контакты Шаг пайки: все контакты](https://i.howwhatproduce.com/images/006/image-17797-26-j.webp)
Для начала добавляю все пины и паяю.
Шаг 13: Этапы пайки: понижающий резистор и термистор
![Этапы пайки: понижающий резистор и термистор Этапы пайки: понижающий резистор и термистор](https://i.howwhatproduce.com/images/006/image-17797-27-j.webp)
![Этапы пайки: понижающий резистор и термистор Этапы пайки: понижающий резистор и термистор](https://i.howwhatproduce.com/images/006/image-17797-28-j.webp)
Затем я добавляю весь выпадающий резистор (для кнопок) и разъем i2c (дисплей).
Затем термистор силового резистора. Это очень важно, так как кислотная батарея перегревается.
Шаг 14: Этапы пайки: МОП-транзистор, сопротивление для проверки напряжения
![Этапы пайки: MOSFET, сопротивление для проверки напряжения Этапы пайки: MOSFET, сопротивление для проверки напряжения](https://i.howwhatproduce.com/images/006/image-17797-29-j.webp)
![Этапы пайки: MOSFET, сопротивление для проверки напряжения Этапы пайки: MOSFET, сопротивление для проверки напряжения](https://i.howwhatproduce.com/images/006/image-17797-30-j.webp)
Теперь мы должны вставить МОП-транзистор, чтобы активировать разрядку, и сопротивление, чтобы проверить напряжение.
2 сопротивление для напряжения перед силовым резистором 2 сопротивление для напряжения после силового резистора, когда у вас есть это напряжение, вы можете рассчитать потребление в миллиамперах.
Шаг 15: Код
Микроконтроллер совместим с nano, поэтому вы должны настроить свою IDE для загрузки Arduino Nano.
Для работы вам необходимо скачать код из моего репозитория на github.
Затем вы должны добавить 3 библиотеки:
- Wire: стандартная библиотека arduino для протокола i2c;
- Termistor Library отсюда не библиотека, которую вы можете найти в Arduino IDE, а моя версия;
- LiquidCrystal_i2c: если вы используете расширенную / настраиваемую версию адаптера i2c (моя версия), вы должны загрузить библиотеку отсюда, если вы используете стандартный компонент, вы можете взять библиотеку из Arduino IDE, но здесь все лучше объяснено.
Я не тестирую ЖК-дисплей со стандартной библиотекой, мне кажется, что они взаимозаменяемы, но если есть какие-то проблемы, не стесняйтесь обращаться ко мне.
Шаг 16: Результат после сборки
![Image Image](https://i.howwhatproduce.com/images/006/image-17797-32-j.webp)
![](https://i.ytimg.com/vi/qtkX7k1xZDg/hqdefault.jpg)
![Результат после сборки Результат после сборки](https://i.howwhatproduce.com/images/006/image-17797-33-j.webp)
![Результат после сборки Результат после сборки](https://i.howwhatproduce.com/images/006/image-17797-34-j.webp)
Базовая плата есть на фото, потом мы можем ее протестировать.
Шаг 17: Сначала выберите тип батареи
![Сначала выберите тип батареи Сначала выберите тип батареи](https://i.howwhatproduce.com/images/006/image-17797-35-j.webp)
Как описано, у нас есть карта значений с конфигурацией батареи.
// Структура типа батареи BatteryType {char name [10]; float maxVolt; float minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryTypes [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v Acid", 6.50, 5.91 }};
Шаг 18: начните разрядку
![Начать разрядку Начать разрядку](https://i.howwhatproduce.com/images/006/image-17797-36-j.webp)
![Начать разрядку Начать разрядку](https://i.howwhatproduce.com/images/006/image-17797-37-j.webp)
Нажатие второй кнопки начало разряда.
На дисплее вы можете видеть ток в миллиампер, миллиампер / час, процент разряда, напряжение батареи и температуру силового резистора и батареи.
Шаг 19: Исключения: Батарея удалена
![Image Image](https://i.howwhatproduce.com/images/006/image-17797-39-j.webp)
![](https://i.ytimg.com/vi/9EFSpJfukGg/hqdefault.jpg)
![Исключения: предупреждение о температуре Исключения: предупреждение о температуре](https://i.howwhatproduce.com/images/006/image-17797-40-j.webp)
Если убрать разрядку аккумулятора, процесс будет приостановлен, при повторной вставке он перезапустится с последнего значения.
Шаг 20: Исключения: предупреждение о температуре
![Исключения: предупреждение о температуре Исключения: предупреждение о температуре](https://i.howwhatproduce.com/images/006/image-17797-41-j.webp)
![Исключения: предупреждение о температуре Исключения: предупреждение о температуре](https://i.howwhatproduce.com/images/006/image-17797-42-j.webp)
![Исключения: предупреждение о температуре Исключения: предупреждение о температуре](https://i.howwhatproduce.com/images/006/image-17797-43-j.webp)
Если температура (аккумулятор или силовой резистор) становится слишком высокой, процесс разрядки приостанавливается.
#define BATTERY_MAX_TEMP 50
#define RESISTANCE_MAX_TEMP 69 // 70 ° в техническом описании (резисторы для снижения номинальных характеристик) #define TEMP_TO_REMOVE_ON_MAX_TEMP 20
Значение по умолчанию для максимальной температуры составляет 50 ° для батареи и 69 для силового резистора.
Как вы можете видеть в комментарии, мощность резистора снижается при превышении 70 °.
При появлении предупреждения начните TEMP_TO_REMOVE_ON_MAX_TEMP секунд паузы, чтобы установить низкую температуру.
Шаг 21: проверка силы тока
![Испытательная сила тока Испытательная сила тока](https://i.howwhatproduce.com/images/006/image-17797-44-j.webp)
Результат проверки силы тока хороший.
Шаг 22: упаковка
С разделенными компонентами простой для реализации результат.
В коробке необходимо сделать прямоугольник для ЖК-дисплея, отверстия для кнопок и внешнюю розетку для подачи напряжения от блока питания.
Кнопка не требует понижающего резистора, потому что я добавляю его уже на плате.
Когда у меня есть время, я создаю и выкладываю его.
Рекомендуемые:
Светодиодный светильник с синхронизацией по времени с питанием от солнечной батареи и батареи: 4 шага
![Светодиодный светильник с синхронизацией по времени с питанием от солнечной батареи и батареи: 4 шага Светодиодный светильник с синхронизацией по времени с питанием от солнечной батареи и батареи: 4 шага](https://i.howwhatproduce.com/images/002/image-3869-j.webp)
Светодиодный светильник для навеса с синхронизацией по времени и на батарейках: в этом руководстве я покажу вам, как я сделал светодиодный светильник в своем навесе. Поскольку у меня нет подключения к электросети, я сделал его питаемым от аккумулятора. Аккумулятор заряжается через солнечную панель. Светодиодный свет включается с помощью импульсного переключателя и гаснет через
Коробка для камеры с контролируемой температурой DIY с модулем Peltier TEC: 4 шага (с изображениями)
![Коробка для камеры с контролируемой температурой DIY с модулем Peltier TEC: 4 шага (с изображениями) Коробка для камеры с контролируемой температурой DIY с модулем Peltier TEC: 4 шага (с изображениями)](https://i.howwhatproduce.com/images/002/image-3457-16-j.webp)
Коробка для камеры с контролируемой температурой и модулем TEC Пельтье: Я собрал камеру с регулируемой температурой для тестирования небольших электронных плат. В этом уроке я поделился своим проектом, включая исходные файлы и ссылку на файлы Gerbers для создания печатной платы. Я использовал только дешевые общедоступные материалы
Омметр Arduino с автоматическим выбором диапазона своими руками: 3 шага
![Омметр Arduino с автоматическим выбором диапазона своими руками: 3 шага Омметр Arduino с автоматическим выбором диапазона своими руками: 3 шага](https://i.howwhatproduce.com/images/007/image-19158-j.webp)
Самодельный омметр Arduino с автоматическим выбором диапазона: это простой омметр с автоматическим выбором диапазона, использующий Arduino. Измеренное сопротивление отображается на ЖК-дисплее 16 × 2. Устройство достаточно точное и использует минимальное количество внешних компонентов
Простой тестер конденсаторов / измеритель емкости с автоматическим выбором диапазона с Arduino и вручную: 4 шага
![Простой тестер конденсаторов / измеритель емкости с автоматическим выбором диапазона с Arduino и вручную: 4 шага Простой тестер конденсаторов / измеритель емкости с автоматическим выбором диапазона с Arduino и вручную: 4 шага](https://i.howwhatproduce.com/images/004/image-9328-10-j.webp)
Простой тестер конденсаторов с автоматическим выбором диапазона / измеритель емкости с Arduino и вручную: Здравствуйте! Для этого физического модуля вам понадобятся: * источник питания с 0-12 В * один или несколько конденсаторов * один или несколько зарядных резисторов * секундомер * мультиметр для измерения напряжения измерение * Arduino nano * дисплей 16x2 I²C * резисторы 1/4 Вт с 220, 10 кОм, 4,7 МОм и
Контроллер паяльника с регулируемой температурой $ 10ish: 3 шага (с изображениями)
![Контроллер паяльника с регулируемой температурой $ 10ish: 3 шага (с изображениями) Контроллер паяльника с регулируемой температурой $ 10ish: 3 шага (с изображениями)](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10963367-10ish-diy-variable-temp-soldering-iron-controller-3-steps-with-pictures-j.webp)
Контроллер паяльника с регулируемой температурой за 10 долларов: это руководство покажет вам, как превратить ваш паяльник Radioshack «firestarter» в версию с регулируемой температурой, потратив около 10 долларов на детали. Эта идея пришла ко мне после того, как я начал снимать дорожки на печатной плате, потому что я использовал 30 Вт