Përmbajtje:
- Hapi 1: Ndryshimi nga Projekti Bazë
- Hapi 2: V0.2 i Bordit
- Hapi 3: Tabela e gatimit: Kontrolluesi i ekranit të karaktereve I2c i zgjeruar
- Hapi 4: Breadboard: Shfaqja e Karaktereve me I2c të Integruar
- Hapi 5: Realizimi
- Hapi 6: Zgjerueshmëria
- Hapi 7: Lista e Pjesëve
- Hapi 8: Bordi: Rivendosni, Gnd E Button për të zgjedhur baterinë
- Hapi 9: Bordi: I2c dhe kunjat e furnizimit me energji elektrike
- Hapi 10: Bordi: Termistor dhe Matja e Tensionit
- Hapi 11: Bordi: Rezistencë ndaj Matjes së Tensionit
- Hapi 12: Hapi i bashkimit: Të gjitha kunjat
- Hapi 13: Hapat e bashkimit: Rezistori dhe Termistori Pulldown
- Hapi 14: Hapat e bashkimit: MOSFET, Rezistenca ndaj Kontrollit të Tensionit
- Hapi 15: Kodi
- Hapi 16: Rezultati Pas Montimit
- Hapi 17: Së pari zgjidhni llojin e baterisë
- Hapi 18: Filloni shkarkimin
- Hapi 19: Përjashtimet: Bateria u Hoq
- Hapi 20: Përjashtimet: Paralajmërimi i temperaturës
- Hapi 21: Testoni fuqinë
- Hapi 22: Paketa
Video: Kontrolluesi i baterisë me temperaturën dhe përzgjedhjen e baterisë: 23 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:21
Testues i kapacitetit të baterisë.
Me këtë pajisje mund të kontrolloni kapacitetin e baterisë 18650, acidit dhe të tjerave (bateria më e madhe që kam testuar It'sshtë 6v Acid bateri 4, 2A). Rezultati i testit është në miliamper/orë.
Unë e krijoj këtë pajisje sepse kam nevojë për të kontrolluar kapacitetin e baterisë së rreme të Kinës.
Për siguri, shtova, duke përdorur një termistor, temperaturën e rezistencës së fuqisë dhe baterisë për të parandaluar që të nxehet shumë, me këtë truk unë mund të kontrolloj 6v Bateri Acid pa zjarr bordin (në ciklin e shkarkimit disa kohë shkoni te rezistenca e nxehtësisë së nxehtë dhe pajisja të presë 20 sekonda për të ulur temperaturën).
Zgjedh pak mikro kontrollues atmega328 nano të pajtueshëm (eBay).
I gjithë kodi është këtu.
Hapi 1: Ndryshimi nga Projekti Bazë
Unë vodha idenë nga projekti i OpenGreenEnergy, dhe e ribëj bordin për të shtuar veçori, kështu që tani bëhuni më i përgjithshëm.
v0.1
- VCC e Arduino tani llogaritet automatikisht;
- Ndryshore e shtuar për të ndryshuar cilësimin në një mënyrë më të rehatshme.
- Përqindja e shtuar e shkarkimit
- Temperatura e shtuar e baterisë dhe rezistencës së fuqisë
v0.2
- Shtohet mundësia e zgjedhjes së baterisë
- U krijua bordi prototip (shikoni skematikisht), me ekran, buton dhe altoparlant jashtë bordit sepse në të ardhmen do të doja të krijoja një paketë.
- Menaxhimi i shtuar i kufirit të temperaturës në rezistencën e fuqisë kështu që unë mund të bllokoj procesin kur temperatura rritet përtej 70 ° (mbi këtë temperaturë duke u zvogëluar rezistenca e fuqisë).
v0.3
Së shpejti një tabelë nga ky shërbim
Hapi 2: V0.2 i Bordit
Në v0.2 për të mbështetur lloje të ndryshme të baterive, krijova një strukturë që duhet të mbushet me emrin e baterisë, tensionin minimal dhe tensionin maksimal (më duhet ndihmë për ta mbushur atë: P).
// Struktura e baterisë tipestruct BatteryType {char name [10]; noton maxVolt; noton 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 }};
Tani unë përdor një grup rezistencash 10k për ndarësin e tensionit për të lexuar temperaturën e dyfishtë të hyrjes analoge. Nëse dëshironi të ndryshoni mbështetjen e tensionit, duhet ta ndryshoni këtë vlerë (shpjegoni më mirë më tej):
// Rezistenca e tensionit të baterisë
#përcakto BAT_RES_VALUE_GND 10.0 #përcakto BAT_RES_VALUE_VCC 10.0 // Rezistenca e tensionit të rezistencës së fuqisë #përcakto RES_RES_VALUE_GND 10.0 #përcakto RES_RES_VALUE_VCC 10.0
Nëse nuk përdorni termistor, vendoseni këtë në false:
#përcakto USING_BATTERY_TERMISTOR të vërtetë
#përcakto USING_RESISTO_TERMISTOR e vërtetë
Nëse përdorni një ekran të ndryshëm i2c, duhet ta rishkruani këtë metodë:
tërheqje e zbrazët (e pavlefshme)
Në projekt, mund të gjeni skema mahnitëse, fotografi dhe më shumë.
Hapi 3: Tabela e gatimit: Kontrolluesi i ekranit të karaktereve I2c i zgjeruar
Kam përdorur një ekran të karakterit të përgjithshëm dhe kam ndërtuar kontrolluesin i2c dhe e kam përdorur me bibliotekën time të personalizuar.
Por nëse dëshironi, mund të merrni një kontrollues normal i2c (më pak se 1 €) me një bibliotekë standarde, kodi mbetet i njëjtë. I gjithë kodi i ekranit është në funksion të tërheqjes, kështu që ju mund ta ndryshoni atë pa ndryshuar gjëra të tjera.
Më mirë të shpjegohet këtu.
Hapi 4: Breadboard: Shfaqja e Karaktereve me I2c të Integruar
E njëjta skemë pa kontrolluar i2c u zgjerua.
Hapi 5: Realizimi
Për matjen e tensionit ne përdorim parimin e një ndarësi të tensionit (më shumë informacion në Wikipedia).
Me fjalë të thjeshta, ky kod është faktori shumëzues për matjen e tensionit të baterisë.
batResValueGnd / (batResValueVolt + batResValueGnd)
Kam futur 2 rezistencat e vlerës batResValueVolt dhe batResValueGnd pas dhe para telave të leximit analog.
batVolt = (mostra1 / (1023.0 - ((BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)) * 1023.0))) * vcc;
mostra 1 është leximet mesatare analoge;
referenca vcc Tensioni Arduino;
1023.0 është vlera maksimale e referencës e leximit analog (leximi analog Arduino shkon nga 0 në 1023).
Për të marrë amperazh ju nevojitet tension pas dhe para rezistencës së fuqisë.
Kur keni matur tensionin para dhe para rezistencës së fuqisë, mund të llogaritni miliamper që konsumon baterinë.
MOSFET përdoret për të filluar dhe ndaluar shkarkimin e baterisë nga rezistenca e energjisë.
Për siguri futa 2 termistorë për të monitoruar temperaturën e baterisë dhe rezistencës së fuqisë.
Hapi 6: Zgjerueshmëria
Unë përpiqem të krijoj një bord prototip që është i zgjerueshëm, por tani për tani unë përdor vetëm një grup minimal të kunjave (në të ardhmen do të shtoj led dhe butona të tjerë).
Nëse dëshironi tension mbështetës më të madh se 10v ju duhet të ndryshoni vlerën e rezistencës së baterisë dhe rezistencën sipas formulës
(BAT_RES_VALUE_GND / (BAT_RES_VALUE_VCC + BAT_RES_VALUE_GND)
në skemën Tensioni i fuqisë së rezistencës
Tensioni i fuqisë së rezistencës GND 1/2/(Tensioni i fuqisë së rezistencës 2/2 + Tensioni i fuqisë së rezistencës GND 1/2)
Pink është duke u bashkuar
Hapi 7: Lista e Pjesëve
Shuma Lloji i Pjesës Prona
- 2 5mm Vidë TermiBlloku i Terminalit të Vidhosjes së PCB -së 8A 250V LW SZUS (eBay)
- 1 klon Arduino Pro Mini (Nano i pajtueshëm) (eBay)
- 1 FET P-Channel IRF744N ose IRLZ44N (eBay)
- 11 Rezistencë rezistente 10kΩ 10kΩ (eBay)
- 2 Sensori i Temperaturës (Termistor) 10kΩ; (eBay)
- * Forma e përgjithshme e titullit mashkullor male (mashkull); (eBay)
- * Forma e përgjithshme e titullit të femrës female (femër); (eBay)
- 1 bord PerfBoard Prototip bordi 24x18 (eBay)
-
10R, 10W
rezistencë e energjisë (eBay) Unë gjej timen në një TV të vjetër crt.
Hapi 8: Bordi: Rivendosni, Gnd E Button për të zgjedhur baterinë
Në pjesën e majtë të kunjave mund të gjeni butonin dhe zilen.
Unë përdor 3 butona:
- një për të ndryshuar llojin e baterisë;
- një për të filluar shkarkimin e baterisë së zgjedhur;
- atëherë unë përdor pinin e rivendosjes për të rinisur të gjitha dhe për të aktivizuar operacionin e ri.
E gjithë pin është tërhequr tashmë, kështu që duhet të aktivizoni me VCC
Rivendosja aktivizohet me GND
Pink është duke u bashkuar
Hapi 9: Bordi: I2c dhe kunjat e furnizimit me energji elektrike
Në bazë mund të shihni VCC, GND dhe SDA, SCL për shfaqje (dhe të tjera në të ardhmen).
Pink është duke u bashkuar
Hapi 10: Bordi: Termistor dhe Matja e Tensionit
Në të djathtë ka kunja për të lexuar vlerën e termistorit, njëra për termistorin e resitsorit të energjisë dhe tjetra për termistorin e baterisë (kunjat meshkuj/femra për t'u bashkuar).
Pastaj ka kunja analoge që matin tensionin diferencial pas dhe para rezistencës së fuqisë.
Pink është duke u bashkuar
Hapi 11: Bordi: Rezistencë ndaj Matjes së Tensionit
Këtu mund të shihni rezistencën që ju lejon të mbani tensionin dyfish se arduino pin (10v), duhet ta ndryshoni këtë për të mbështetur më shumë tension.
Pink është duke u bashkuar
Hapi 12: Hapi i bashkimit: Të gjitha kunjat
Së pari shtoj të gjitha kunjat dhe e bashkoj.
Hapi 13: Hapat e bashkimit: Rezistori dhe Termistori Pulldown
Pastaj shtoj të gjithë rezolutën tërheqëse (për butonat) dhe lidhësin i2c (ekranin).
Pastaj termistori i rezistencës së fuqisë veryshtë shumë e rëndësishme, me baterinë acid që nxehet shumë.
Hapi 14: Hapat e bashkimit: MOSFET, Rezistenca ndaj Kontrollit të Tensionit
Tani duhet të fusim mosfet për të aktivizuar shkarkimin dhe rezistencën për të kontrolluar tensionin.
2 rezistencë për tensionin para rezistencës së fuqisë 2 rezistencë për tensionin pas rezistencës së fuqisë, kur e keni këtë tension mund të llogaritni konsumimin e miliamamit.
Hapi 15: Kodi
Mikrokontrolluesi është nano i pajtueshëm, kështu që duhet të vendosni IDE -në tuaj për të ngarkuar një Arduino Nano.
Për të punuar duhet të shkarkoni kodin nga depoja ime e github.
Atëherë duhet të shtoni 3 biblioteka:
- Wire: biblioteka standarde arduino për protokollin i2c;
- Biblioteka Termistore nga këtu jo bibliotekën që mund ta gjeni në arduino IDE, por versionin tim;
- LiquidCrystal_i2c: nëse përdorni version të zgjeruar/me porosi të përshtatësit i2c (versioni im) ju duhet të shkarkoni bibliotekën nga këtu, nëse përdorni komponentin standard mund të merrni bibliotekën nga arduino IDE, por gjithçka shpjegohet më mirë këtu.
Unë nuk e provoj LCD -në me bibliotekën standarde, më duket se ato janë të këmbyeshme, por nëse ka ndonjë problem, më lër të lirë të më kontaktosh.
Hapi 16: Rezultati Pas Montimit
Tabela bazë është në foto, atëherë mund ta provojmë.
Hapi 17: Së pari zgjidhni llojin e baterisë
Siç është përshkruar ne kemi një hartë të vlerës me konfigurimin e baterisë.
// Struktura e baterisë tipestruct BatteryType {char name [10]; noton maxVolt; noton 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 }};
Hapi 18: Filloni shkarkimin
Klikoni butonin e dytë filloni të shkarkoni.
Në ekran mund të shihni miliamperin aktual, miliamper/orë, përqindjen e shkarkimit, tensionin e baterisë dhe temperaturën e rezistencës së fuqisë dhe baterisë.
Hapi 19: Përjashtimet: Bateria u Hoq
Nëse e hiqni procesin e shkarkimit të baterisë do të ndalet, kur ta rifilloni Rinisni në vlerën e fundit.
Hapi 20: Përjashtimet: Paralajmërimi i temperaturës
Nëse temperatura (bateria ose rezistenca e energjisë) është e nxehtë, procesi i shkarkimit shkon në pauzë.
#përcakto BATTERY_MAX_TEMP 50
#përcakto RESISTANCE_MAX_TEMP 69 // 70 ° në fletën e të dhënave (Rezistentët e dëmtuar) #përcakto TEMP_TO_REMOVE_ON_MAX_TEMP 20
Vlera e paracaktuar për temperaturën maksimale është 50 ° për baterinë dhe 69 për rezistencën e energjisë.
Siç mund ta shihni në koment, rezistenca e fuqisë ndikohet nga deratimi kur kalon mbi 70 °.
Nëse alarmi është ngritur filloni TEMP_TO_REMOVE_ON_MAX_TEMP sekonda pauzë për të vendosur temperaturë të ulët.
Hapi 21: Testoni fuqinë
Rezultati i testit të amperazhit është i mirë.
Hapi 22: Paketa
Me përbërës të ndarë rezultati i paketës është i thjeshtë për tu realizuar.
Në një kuti duhet të ketë një drejtkëndësh për LCD, vrimat për butonat shtytës dhe një fuçi të jashtme femërore për të furnizuar tensionin nga furnizimi me energji elektrike.
Butoni i shtypjes nuk ka nevojë për rezistencë tërheqëse sepse e shtoj tashmë në bord.
Kur kam pak kohë e krijoj dhe e postoj.
Recommended:
Kontrolluesi dhe kontrolluesi i zënies së dhomës MicroBit: 4 hapa
Kontrolluesi dhe kontrolluesi i zënies së dhomës MicroBit: Gjatë një pandemie, një mënyrë për të zvogëluar transmetimin e virusit është të maksimizoni distancën fizike midis njerëzve. Në dhoma ose dyqane, do të ishte e dobishme të dini se sa njerëz janë në hapësirën e mbyllur në çdo kohë. Ky projekt përdor një palë
Paralajmërim për temperaturën dhe lagështinë duke përdorur AWS dhe ESP32: 11 hapa
Paralajmërim Temp dhe Lagështi duke Përdorur AWS dhe ESP32: Në këtë tutorial, ne do të masim të dhëna të ndryshme të temperaturës dhe lagështisë duke përdorur sensorin Temp dhe lagështi. Ju gjithashtu do të mësoni se si t'i dërgoni këto të dhëna në AWS
Matni temperaturën dhe lagështinë duke përdorur DHT11 / DHT22 dhe Arduino: 4 hapa
Matni Temperaturën dhe Lagështinë Duke Përdorur DHT11 / DHT22 dhe Arduino: Në këtë Udhëzues Arduino do të mësojmë se si të përdorim DHT11 ose sensorin DHT22 për matjen e temperaturës dhe lagështisë me bordin Arduino
Si të përdorni sensorin e temperaturës DHT11 me Arduino dhe temperaturën e printimit të nxehtësisë dhe lagështisë: 5 hapa
Si të përdorni sensorin e temperaturës DHT11 me Arduino dhe temperaturën e printimit të nxehtësisë dhe lagështisë: Sensori DHT11 përdoret për të matur temperaturën dhe lagështinë. Ata janë hobi shumë të njohur elektronikë. Sensori i lagështisë dhe temperaturës DHT11 e bën vërtet të lehtë shtimin e të dhënave të lagështisë dhe temperaturës në projektet tuaja elektronike DIY. Pershtë për
Monitoroni dhe regjistroni temperaturën me Bluetooth LE dhe RaspberryPi: 9 hapa (me fotografi)
Monitoroni dhe Regjistroni Temperaturën Me Bluetooth LE dhe RaspberryPi: Ky udhëzues ka të bëjë me mënyrën e krijimit të një sistemi monitorimi të temperaturës me shumë nyje me defektin e sensorit Bluetooth LE nga Blue Radios (BLEHome) dhe RaspberryPi 3B Falë zhvillimit të standardit Bluetooth LE, ekziston tani në dispozicion