Мазмуну:
- 1 -кадам: Негизги долбоордон өзгөртүү
- 2 -кадам: Башкарманын V0.2
- 3 -кадам: Breadboard: I2c Character Display Controller кеңейтилген
- 4 -кадам: Breadboard: I2c интеграцияланган мүнөздөрдү көрсөтүү
- 5 -кадам: ишке ашыруу
- 6 -кадам: Кеңейтүү
- 7 -кадам: Бөлүктөрдүн тизмеси
- 8 -кадам: Такта: Баштапкы абалга келтирүү, Gnd E Button Батарейканы тандоо
- 9 -кадам: Board: I2c жана Power Supply Pins
- 10 -кадам: Board: Thermistor жана өлчөө Voltage
- 11 -кадам: Board: Чыңалуу чыңалуусуна каршылыгы
- 12 -кадам: Soldering Step: All Pins
- 13 -кадам: Лайкоо кадамдары: Пулдаун резистору жана термистор
- 14 -кадам: Soldering Steps: MOSFET, Voltage текшерүү каршылыгы
- 15 -кадам: Код
- 16 -кадам: жыйындан кийин жыйынтыгы
- 17 -кадам: Биринчи Батарея түрүн тандаңыз
- 18 -кадам: Заряддоону баштаңыз
- 19 -кадам: Өзгөчөлүктөр: Батарея чыгарылды
- 20 -кадам: Өзгөчөлүктөр: Температуранын эскертүүсү
- 21 -кадам: Amperage тест
- 22 -кадам: Пакет
Video: Батарея текшергичи Температура жана Батареяны тандоо менен: 23 кадам (Сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Батарея кубаттуулугун текшерүүчү.
Бул аппараттын жардамы менен 18650 батарейканын, кислотанын жана башка кубаттуулугун текшере аласыз (мен сынап көргөн эң чоң батарейка Бул 6v кислоталуу батарея 4, 2А). Тесттин жыйынтыгы миллиамперде/саатта.
Мен бул түзмөктү жасайм, анткени ал жалган кытай батареясынын кубаттуулугун текшерүү үчүн керек.
Коопсуздук үчүн, мен термистордун жардамы менен, электр каршылыгынын температурасын жана батареяны өтө ысып кетпеши үчүн коштум, бул трюк менен мен 6v кислоталык батареяны тактайды отсуз текшере алам (бир аз убакытка чейин заряддын циклинде ысык электр каршылыгына өтүңүз) жана аппарат температураны төмөндөтүү үчүн 20 секунд күтөт).
Мен кичинекей микро контроллерди atmega328 шайкеш нанону (eBay) тандайм.
Бардык код бул жерде.
1 -кадам: Негизги долбоордон өзгөртүү
Мен идеяны OpenGreenEnergy долбоорунан уурдап алдым жана өзгөчөлүктөрдү кошуу үчүн тактаны кайра түздүм, эми жалпы болуп калдым.
v0.1
- VDC Arduino азыр автоматтык түрдө эсептелет;
- Орнотууну ыңгайлуу кылып өзгөртүү үчүн өзгөрмө кошулду.
- Бошотуунун пайызы кошулду
- Батарея жана күч каршылыгынын температурасы кошулду
v0.2
- Батареяны тандоо мүмкүнчүлүгү кошулду
- Экраны, баскычы жана спикери бар прототип тактасы (схеманы караңыз), анткени келечекте мен пакет түзгүм келет.
- Күч резисторуна температура чегинин башкаруусу кошулду, ошондуктан мен температура 70 ° дан жогору көтөрүлгөндө процессти бөгөй алам (бул температура күчүнүн каршылыгы төмөндөп кетет).
v0.3
Жакында бул кызматтын тактайы
2 -кадам: Башкарманын V0.2
Батареялардын ар кандай түрлөрүн колдоо үчүн v0.2де мен батарейканын аталышы, мин чыңалуусу жана максималдуу чыңалуусу менен толтурулушу керек болгон структураны түздүм (аны толтурууга жардам керек: P).
// Батарея типтеринин түзүлүшү BatteryType {char name [10]; float maxVolt; float minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryType Types [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v кислотасы", 6.50, 5.91 }};
Азыр мен аналогдук кирүүнүн эки эсе температурасын окуу үчүн чыңалуу бөлүштүргүч үчүн 10k резисторлордун топтомун колдоном. Эгерде сиз чыңалуу колдоосун өзгөрткүңүз келсе, анда бул маанини өзгөртүшүңүз керек (кийинкиде жакшыраак түшүндүрүңүз):
// Батарея чыңалуусуна каршылык көрсөтүү
#аныктоо BAT_RES_VALUE_GND 10.0 #аныктоо BAT_RES_VALUE_VCC 10.0 // Күч резисторунун чыңалуу каршылыгын аныктоо #RES_RES_VALUE_GND 10.0 #аныктоо RES_RES_VALUE_VCC 10.0
Эгер термистор колдонулбаса, муну жалган деп коюңуз:
#define USE_BATTERY_TERMISTOR чындык
USE_RESISTO_TERMISTOR колдонууну аныктаңыз
Эгерде сиз башка i2c дисплейин колдонсоңуз, анда бул ыкманы кайра жазышыңыз керек:
жараксыз тартуу (жараксыз)
Долбоордо сиз фритинг схемаларды, сүрөттөрдү жана башкаларды таба аласыз.
3 -кадам: Breadboard: I2c Character Display Controller кеңейтилген
Мен жалпы мүнөздөгү дисплейди колдондум жана i2c контроллерин куруп, аны жеке китепканамда колдондум.
Бирок, эгер кааласаңыз, кадимки i2c контроллерин (1 € дан азыраак) стандарттык китепкана менен ала аласыз, код ошол бойдон калат. Бардык дисплей коду чийүү функциясында, андыктан аны башка нерселерди өзгөртпөстөн өзгөртө аласыз.
Бул жерде түшүндүргөн жакшы.
4 -кадам: Breadboard: I2c интеграцияланган мүнөздөрдү көрсөтүү
I2c көзөмөлсүз ошол эле схема кеңейтилген.
5 -кадам: ишке ашыруу
Чыңалууну өлчөө үчүн биз чыңалуу бөлүүчү принцибин колдонобуз (Wikipedia жөнүндө көбүрөөк маалымат).
Жөнөкөй сөз менен айтканда, бул код батареянын чыңалуусун өлчөөчү фактор.
batResValueGnd / (batResValueVolt + batResValueGnd)
BatResValueVolt жана batResValueGnd наркынын 2 каршылыгын аналогдук окуу зымынан кийин жана алдында киргиздим.
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кө чейин).
Амперди алуу үчүн күч резисторунан кийин жана чейин чыңалуу керек.
Күч резисторунан кийинки жана мурунку чыңалууну өлчөгөндө, сиз батареяны сарптаган миллиамперди эсептей аласыз.
MOSFET батарейканын кубаттуулук резисторунан кетүүсүн баштоо жана токтотуу үчүн колдонулат.
Коопсуздук үчүн мен батареяны жана кубаттуулуктун каршылыгынын температурасын көзөмөлдөө үчүн 2 термистор киргиздим.
6 -кадам: Кеңейтүү
Мен прототип тактасын кеңейтүүгө аракет кылам, бирок азырынча минималдуу казыктарды колдоном (келечекте мен леддерди жана башка баскычтарды кошом).
Эгерде сиз 10 вольттон жогору колдоо чыңалууну кааласаңыз, анда формулага ылайык батарейканын жана каршылыктын резисторунун маанисин өзгөртүү керек
(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)
схемада резистордун кубаттуулугу
Резистордук электр чыңалуусу GND 1/2/
Күлгүн түстө түшүп калды
7 -кадам: Бөлүктөрдүн тизмеси
Бөлүмдүн Түрүнүн Касиеттери
- 2 5mm Screw TermInal PCB Mount Screw Terminal Block 8A 250V LW SZUS (eBay)
- 1 Arduino Pro Mini клону (шайкеш Nano) (eBay)
- 1 Негизги FET P-Channel IRF744N же IRLZ44N (eBay)
- 11 10kΩ Резистордук резистор 10kΩ (eBay)
- 2 Температура сенсору (Термистор) 10kΩ; (eBay)
- * Жалпы эркек баш формасы ♂ (эркек); (eBay)
- * Жалпы аялдын баш формасы ♀ (ургаачы); (eBay)
- 1 PerfBoard тактасы Прототип тактасы 24x18 (eBay)
-
10R, 10W
күч каршылыгы (eBay) Меники эски крт сыналгысынан.
8 -кадам: Такта: Баштапкы абалга келтирүү, Gnd E Button Батарейканы тандоо
Пиндердин сол жагында сиз баскычты жана зумерди таба аласыз.
Мен 3 баскычты колдоном:
- батарея түрүн өзгөртүү үчүн бири;
- тандалган батареяны заряддоону баштоо үчүн;
- анда мен бардыгын кайра баштоо үчүн баштапкы абалга келтирүү пинин колдоном жана жаңы операцияны жандандырам.
Бардык пин мурунтан эле тартылган, андыктан VCC менен иштетүү керек
Баштапкы абалга келтирүү GND менен активдештирилет
Күлгүн түстө түшүп калды
9 -кадам: Board: I2c жана Power Supply Pins
Базага VCC, GND жана SDA, SCLди көрө аласыз (жана келечекте башка).
Күлгүн түстө түшүп калды
10 -кадам: Board: Thermistor жана өлчөө Voltage
Оң жакта термистордун маанисин окуй турган казыктар бар, бири термистордун кубаттуулугу үчүн, экинчиси (эркек/ургаа казыктары үчүн) батарея термистору үчүн.
Андан кийин дифференциалдык чыңалууну электр каршылыгынан кийин жана чейин өлчөгөн аналогдук казыктар бар.
Күлгүн түстө түшүп калды
11 -кадам: Board: Чыңалуу чыңалуусуна каршылыгы
Бул жерде ардуино пинине (10v) караганда эки эсе чыңалууга мүмкүндүк берген резисторду көрө аласыз, аны көбүрөөк чыңалууну колдоо үчүн өзгөртүшүңүз керек.
Күлгүн түстө түшүп калды
12 -кадам: Soldering Step: All Pins
Биринчиден, мен бардык төөнөгүчтөрдү кошуп, аны ширетем.
13 -кадам: Лайкоо кадамдары: Пулдаун резистору жана термистор
Андан кийин мен бардык ачылуучу резисторду (баскычтар үчүн) жана i2c коннекторун (дисплей) кошом.
Андан кийин кубаттуу резистор термистор Бул абдан маанилүү, кислота батареясы өтө ысып кетет.
14 -кадам: Soldering Steps: MOSFET, Voltage текшерүү каршылыгы
Эми биз чыңалууну текшерүү үчүн разрядды жана каршылыкты иштетүү үчүн mosfetти киргизишибиз керек.
Күч резисторуна чейинки чыңалууга 2 каршылык, күч резисторунан кийинки чыңалууга 2 каршылык, эгерде сизде бул чыңалуу бар болсо, сиз миллиамперди керектөөнү эсептей аласыз.
15 -кадам: Код
Микроконтроллер нано менен шайкеш келет, андыктан IDEңизди Arduino Nano жүктөө үчүн орнотушуңуз керек.
Иштөө үчүн менин github репозиторийимден кодду жүктөп алышыңыз керек.
Андан кийин сиз 3 китепкананы кошушуңуз керек:
- Зым: i2c протоколу үчүн стандарттуу arduino китепканасы;
- Бул жерден Termistor китепканасы arduino IDEде таба турган китепкана эмес, менин версиям;
- LiquidCrystal_i2c: эгер сиз i2c адаптеринин кеңейтилген/ыңгайлаштырылган версиясын (менин версиямды) колдонсоңуз, анда бул жерден китепкананы жүктөп алышыңыз керек, эгер сиз стандарттуу компонентти колдонсоңуз, анда китепкананы arduino IDEден алсаңыз болот, бирок бул жерде баары жакшы түшүндүрүлгөн.
Мен LCDди стандарттык китепкана менен сынабайм, мага окшош, алар бири -бирин алмаштырат, бирок кандайдыр бир көйгөй болсо, мени менен байланышууга болот.
16 -кадам: жыйындан кийин жыйынтыгы
Негизги такта сүрөттө, анда биз аны сынап көрө алабыз.
17 -кадам: Биринчи Батарея түрүн тандаңыз
Жогоруда айтылгандай, бизде батарейканын конфигурациясы бар баалуулуктардын картасы бар.
// Батарея типтеринин түзүлүшү BatteryType {char name [10]; float maxVolt; float minVolt; }; #define BATTERY_TYPE_NUMBER 4 BatteryType batteryType Types [BATTERY_TYPE_NUMBER] = {{"18650", 4.3, 2.9}, {"17550", 4.3, 2.9}, {"14500", 4.3, 2.75}, {"6v кислотасы", 6.50, 5.91 }};
18 -кадам: Заряддоону баштаңыз
Экинчи баскычты чыкылдатыңыз.
Дисплейде сиз учурдагы миллиамперди, миллиамперди/саатты, разряддын пайызын, батареянын чыңалуусун жана күч каршылыгынын жана батареясынын температурасын көрө аласыз.
19 -кадам: Өзгөчөлүктөр: Батарея чыгарылды
Эгерде сиз батарейканын зарядын чыгаруу процесси токтосо, аны кайра киргизгенде, ал акыркы маанисинде кайра башталат.
20 -кадам: Өзгөчөлүктөр: Температуранын эскертүүсү
Эгерде температура (батарея же кубаттуулук каршылыгы) ысып кетсе, разряд процесси тыныгууга барат.
50
#аныктоо RESISTANCE_MAX_TEMP 69 // 70 ° боюнча маалыматтык баракчада (Резисторлордун маанисин төмөндөтүү) #аныктоо TEMP_TO_REMOVE_ON_MAX_TEMP 20
Максималдуу температуранын демейки мааниси батарейка үчүн 50 ° жана күч каршылыгы үчүн 69.
Комментарийде көрүнүп тургандай, 70 градуска көтөрүлгөндө резистордун кубаттуулугу бузулат.
Эгер эскертүү көтөрүлсө, төмөн температураны коюу үчүн тыныгууну TEMP_TO_REMOVE_ON_MAX_TEMP секунддан баштаңыз.
21 -кадам: Amperage тест
Amperage тестинин жыйынтыгы жакшы.
22 -кадам: Пакет
Бөлүнгөн компонент менен пакеттин жыйынтыгын ишке ашыруу оңой.
Коробкада ЖК үчүн тик бурчтук, баскычтар үчүн тешиктер жана тышкы токтоочу челектин кубаттуулуктан чыңалуусу керек.
Баскычты түшүрүүчү резистордун кереги жок, анткени мен аны бортко кошуп койгом.
Бир аз убактым болгондо аны түзүп, жарыялап коем.
Сунушталууда:
Arduino автоматташтырылган көлөкө экраны долбоору үчүн кадам моторун жана драйверди тандоо: 12 кадам (сүрөттөр менен)
Arduino автоматташтырылган көлөкө экраны долбоору үчүн тепкич моторун жана драйверди тандоо: Бул Нускамада мен Automated Shade Screen долбоорунун прототипине Step Motor жана Driver тандоо үчүн жасаган кадамдарымдан өтөм. Көлөкөлүү экрандар - бул популярдуу жана арзан Coolaroo кол менен жасалган моделдер, мен аны алмаштыргым келди
Mini Motor Dc үчүн RPM текшергичи: 11 кадам (сүрөттөр менен)
Mini Motor Dc үчүн RPM текшергичи: Мүнөтүнө революция, кыскача айтканда, революция мүнөтүндө айтылган айлануу ылдамдыгы. RPMди өлчөө үчүн аспаптар көбүнчө тахометрди колдонушат. Өткөн жылы мен electro18 тарабынан жасалган кызыктуу долбоорду таптым, жана бул менин шыктандыруум, ал жинди болду
Cleverbotтун жардамы менен тандоо жана жасалма интеллект менен баарлашуу: 14 кадам (сүрөттөр менен)
Cleverbotтун жардамы менен Pick жана Жасалма Интеллект Чаты менен сүйлөшүңүз: Бул жерде мен үн буйругун гана эмес, Cleverbotтун жардамы менен ЭЭМ менен Жасалма Интеллект Чатын да сынап көрөм. Чынында, идея балдардын түсүн бир түстөн эң жакынына чейин алганда, боёк кутусуна түстөрдү аралаштырганда пайда болгон. Бирок акыры ишке ашпай жатат
Температура жана нымдуулукту көрсөтүү жана маалыматтарды чогултуу Arduino жана иштетүү менен: 13 кадам (сүрөттөр менен)
Температура жана нымдуулукту көрсөтүү жана маалыматтарды чогултуу Arduino жана иштетүү менен: Киришүү: Бул Ардуино тактасын, Sensor (DHT11), Windows компьютери жана Processing (бекер жүктөлүүчү) программасын колдонуп, Температураны, Нымдуулукту санариптик жана тилке графасынын формасы, убакытты жана күндү көрсөтүү жана эсептөө убактысын иштетүү
Arduino чай текшергичи: TfCD: 4 кадам (сүрөттөр менен)
Arduino Tea Checker: TfCD: Бул Arduino термометри бар чай чыны, бул сизге чайдын эң сонун чайноосун демдөөгө жардам берет, экөө тең чай пакетиңизди керектүү температурага салып, аны күйгүзбөөңүзгө же тилиңизди күйгүзбөөңүзгө жардам берет. үч башка ли жетекчилиги менен