Sadržaj:

Napajanje digitalnom baterijom: 7 koraka (sa slikama)
Napajanje digitalnom baterijom: 7 koraka (sa slikama)

Video: Napajanje digitalnom baterijom: 7 koraka (sa slikama)

Video: Napajanje digitalnom baterijom: 7 koraka (sa slikama)
Video: Jovana Jeremić i džinovski jastuk! Boli je dupe od tucanja #balkan #srbija #hrvatska #shorts #bosna 2024, Novembar
Anonim
Napajanje digitalnom baterijom
Napajanje digitalnom baterijom
Napajanje digitalnom baterijom
Napajanje digitalnom baterijom
Napajanje digitalnom baterijom
Napajanje digitalnom baterijom
Napajanje digitalnim baterijama
Napajanje digitalnim baterijama

Jeste li ikada poželjeli napajanje koje možete koristiti u pokretu, čak i bez zidne utičnice u blizini? I zar ne bi bilo super da je i vrlo precizan, digitalni i kontroliran putem računala?

U ovom uputstvu pokazat ću vam kako izgraditi upravo to: digitalno napajanje napajano baterijom, koje je arduino kompatibilno i može se kontrolirati putem računala putem USB -a.

Malo prije sam izgradio napajanje od starog ATX napojnog napona, i iako radi odlično, želio sam pojačati svoju igru digitalnim napajanjem. Kao što je već rečeno, napajaju ga baterije (točnije 2 litijumske ćelije) i može isporučiti najviše 20 V pri 1 A; što je dovoljno za većinu mojih projekata koji zahtijevaju precizno napajanje.

Prikazat ću cijeli proces dizajna, a sve projektne datoteke mogu se pronaći na mojoj stranici GitHub:

Hajde da počnemo!

Korak 1: Karakteristike i cijena

Karakteristike i cijena
Karakteristike i cijena

Karakteristike

  • Režimi konstantnog napona i konstantne struje
  • Koristi linearni regulator s niskim šumom, kojem prethodi predregulator za praćenje kako bi se smanjilo rasipanje energije
  • Upotreba ručno sklopivih komponenti za održavanje pristupačnosti projekta
  • Pokreće ATMEGA328P, programirano sa Arduino IDE
  • Komunikacija sa računarom putem Java aplikacije preko mikro USB -a
  • Pokreću ga 2 zaštićene 18650 litij -ionske ćelije
  • Utikači za banane sa razmakom od 18 mm za kompatibilnost sa BNC adapterima

Specifikacije

  • 0 - 1A, koraci od 1 mA (10 bitni DAC)
  • 0 - 20V, koraci od 20 mV (10 -bitni DAC) (pravi rad 0V)
  • Mjerenje napona: rezolucija 20 mV (10 bitni ADC)
  • Mjerenje struje:

    • <40mA: rezolucija 10uA (ina219)
    • <80mA: rezolucija 20uA (ina219)
    • <160mA: rezolucija 40uA (ina219)
    • <320mA: rezolucija 80uA (ina219)
    • > 320mA: rezolucija 1mA (10 -bitni ADC)

Cost

Potpuno napajanje koštalo me oko 135 USD, sa svim jednokratnim komponentama. Baterije su najskuplji dio (30 USD za 2 ćelije), jer su zaštićene 18650 litijumskih ćelija. Moguće je značajno smanjiti troškove ako nije potrebna baterija. Izostavljanjem baterija i kola za punjenje, cijena pada na oko 100 USD. Iako ovo može izgledati skupo, napajanje sa daleko manjim performansama i značajkama često košta više od ovoga.

Ako vam ne smeta da svoje komponente naručite s ebaya ili aliexpressa, cijena s baterijama pala bi na 100 USD, a bez njih 70 USD. Potrebno je više vremena za ulazak dijelova, ali to je održiva opcija.

Korak 2: Shema i teorija rada

Shema i teorija rada
Shema i teorija rada

Da bismo razumjeli rad kola, morat ćemo pogledati shemu. Podijelio sam ga u funkcionalne blokove, tako da ih je lakše razumjeti; Tako ću i objasniti rad korak po korak. Ovaj dio je prilično dubok i zahtijeva dobro poznavanje elektronike. Ako samo želite znati kako izgraditi krug, možete prijeći na sljedeći korak.

Glavni blok

Rad se temelji na čipu LT3080: to je linearni regulator napona, koji može smanjiti napone, na osnovu upravljačkog signala. Ovaj kontrolni signal generirat će mikrokontroler; kako se to radi, bit će detaljno objašnjeno kasnije.

Podešavanje napona

Krug oko LT3080 generira odgovarajuće upravljačke signale. Prvo ćemo pogledati kako se postavlja napon. Postavka napona iz mikrokontrolera je PWM signal (PWM_Vset), koji se filtrira pomoću niskopropusnog filtera (C9 & R26). Time se proizvodi analogni napon - između 0 i 5 V - proporcionalan željenom izlaznom naponu. Budući da je naš izlazni raspon 0 - 20 V, morat ćemo pojačati ovaj signal faktorom 4. To se postiže neinvertirajućom konfiguracijom opampa U3C. Dobit na postavljeni pin je određena sa R23 // R24 // R25 i R34. Ovi otpornici su tolerantni 0,1%, kako bi se smanjile greške. R39 i R36 ovdje nisu bitni, jer su dio povratne sprege.

Trenutna postavka

Ovaj postavljeni pin se može koristiti i za drugu postavku: trenutni način rada. Želimo izmjeriti trenutno napajanje i isključiti izlaz kada on premaši željenu struju. Stoga ponovo započinjemo PWM signalom (PWM_Iset), generiranim od mikrokontrolera, koji je sada filtriran na niskim prolazima i oslabljen za prelazak iz raspona 0 - 5 V u raspon 0 - 2 V. Ovaj napon se sada uspoređuje sa padom napona na otporniku osjetnika struje (ADC_Iout, vidi dolje) pomoću konfiguracije komparatora opampa U3D. Ako je struja previsoka, ovo će uključiti LED diodu, a također će povući postavljenu liniju LT3080 na masu (preko Q2), čime će se isključiti izlaz. Mjerenje struje i generiranje signala ADC_Iout vrši se na sljedeći način. Izlazna struja protiče kroz otpornike R7 - R16. Ukupno 1 ohm; razlog zašto se 1R ne koristi na prvom mjestu je dvostruk: 1 otpornik bi trebao imati veću snagu (mora raspršiti najmanje 1 W), a paralelnom upotrebom 10 1% otpornika dobivamo veću preciznost od sa jednim 1 % otpornikom. Dobar video o tome zašto ovo funkcionira možete pronaći ovdje: https://www.youtube.com/embed/1WAhTdWErrU&t=1s Kada struja teče kroz ove otpornike, stvara pad napona koji možemo mjeriti, a to je postavljen ispred LT3080, jer pad napona na njemu ne bi trebao utjecati na izlazni napon. Pad napona mjeri se diferencijalnim pojačalom (U3B) s pojačanjem 2. To rezultira rasponom napona od 0 - 2 V (više o tome kasnije), dakle razdjelnik napona na PWM signalu struje. Međuspremnik (U3A) je tu da osigura da struja koja teče u otpornike R21, R32 i R33 ne prolazi kroz trenutni osjetnik otpornika, što bi utjecalo na očitavanje. Također imajte na umu da bi ovo trebao biti opamp od šine do šine, jer je ulazni napon na pozitivnom ulazu jednak naponu napajanja. Neinvertirajuće pojačalo služi samo za mjerenje kursa, iako za vrlo precizna mjerenja imamo ugrađen čip INA219. Ovaj čip nam omogućava mjerenje vrlo malih struja, a adresira se putem I2C.

Dodatne stvari

Na izlazu LT3080 imamo još nekih stvari. Prije svega, tu je sudoper (LM334). Ovo vuče konstantnu struju od 677 uA (podešenu otpornikom R41) za stabilizaciju LT3080. Međutim, nije spojen na masu, već na VEE, negativni napon. Ovo je potrebno kako bi se omogućilo da LT3080 radi do 0 V. Kad je spojen na masu, najniži napon bio bi oko 0,7 V. Ovo se čini dovoljno niskim, ali imajte na umu da nas to sprječava da potpuno isključimo napajanje. Zener dioda D3 koristi se za stezanje izlaznog napona ako pređe 22 V, a razdjelnik otpornika spusti raspon izlaznog napona od 0 - 20 V do 0 - 2 V (ADC_Vout). Nažalost, ova kola su na izlazu iz LT3080, što znači da će njihova struja doprinijeti izlaznoj struji koju želimo mjeriti. Srećom, ove struje su konstantne ako napon ostane konstantan; tako da možemo kalibrirati struju kada je opterećenje prvo isključeno.

Pumpa za punjenje

Negativni napon koji smo ranije spomenuli stvara čudan mali krug: pumpa za punjenje. Za svoj rad, pozvao bih se ovdje: https://www.youtube.com/embed/1WAhTdWErrU&t=1s Napaja se pomoću 50% PWM mikrokontrolera (PWM)

Boost Converter

Pogledajmo sada ulazni napon našeg glavnog bloka: Vboost. Vidimo da je to 8 - 24V, ali pričekajte, 2 litijeve ćelije u seriji daju maksimalno 8,4 V? Zaista, i zato moramo pojačati napon, takozvanim pretvaračem pojačanja. Uvijek smo mogli povećati napon na 24 V, bez obzira na izlaz koji želimo; međutim, ovo bi potrošilo mnogo energije u LT3080 i stvari bi postale jako vruće! Pa ćemo umjesto toga povećati napon na malo više od izlaznog napona. Prikladno je oko 2,5 V više, kako bi se objasnio pad napona u otporniku osjetnika struje i ispadni napon LT3080. Napon se postavlja otpornicima na izlaznom signalu pretvarača pojačanja. Za promjenu ovog napona u hodu koristimo digitalni potenciometar, MCP41010, kojim se upravlja putem SPI -ja.

Punjenje baterije

To nas dovodi do stvarnog ulaznog napona: baterije! Budući da koristimo zaštićene ćelije, jednostavno ih moramo staviti u niz i gotovi smo! Ovdje je važno koristiti zaštićene ćelije kako bi se izbjeglo prekomjerno strujanje ili pretjerano pražnjenje, a time i oštećenje ćelija. Opet, koristimo razdjelnik napona za mjerenje napona baterije i njegovo spuštanje do korisnog raspona. Sada idemo na zanimljiv dio: sklop punjenja. U tu svrhu koristimo čip BQ2057WSN: u kombinaciji s TIP32CG u osnovi sam stvara linearno napajanje. Ovaj čip puni ćelije putem odgovarajuće CV CC putanje. Budući da moje baterije nemaju temperaturnu sondu, ovaj ulaz bi trebao biti vezan za polovinu napona baterije. Ovim je zaključen dio regulacije napona napajanja.

5V regulator

Opskrbni napon od 5 V arduina izrađen je s ovim jednostavnim regulatorom napona. Međutim, to nije najprecizniji izlaz od 5 V, ali to će biti riješeno u nastavku.

2.048 V referentni napon

Ovaj mali čip pruža vrlo preciznu referentnu vrijednost napona od 2.048 V. Ovo se koristi kao referenca za analogne signale ADC_Vout, ADC_Iout, ADC_Vbatt. Zato su nam bili potrebni razdjelnici napona da bismo te signale spustili na 2 V. Mikrokontroler Mozak ovog projekta je ATMEGA328P, to je isti čip koji se koristi u Arduino Uno. Već smo prešli većinu kontrolnih signala, ali ipak postoje neki zanimljivi dodaci. Rotacijski davači spojeni su na 2 jedina vanjska prekidna pina arduina: PD2 i PD3. To je potrebno za pouzdanu implementaciju softvera. Prekidači ispod koriste unutarnji otpornik. Zatim postoji ovaj čudni razdjelnik napona na liniji za odabir čipa potenciometra (lonac). Razdjelnik napona na izlazu, čemu služi to; moglo bi se reći. Kao što je već spomenuto, napajanje od 5 V nije strahovito precizno. Bilo bi stoga dobro to izmjeriti i prema tome prilagoditi radni ciklus PWM signala. Ali pošto nisam imao više besplatnih unosa, morao sam da izvršim dvostruko opterećenje. Kada se napajanje pokrene, ovaj pin se prvo postavlja kao ulaz: mjeri dovodnu šinu i sam se kalibrira. Zatim se postavlja kao izlaz i može pokretati liniju za odabir čipa.

Upravljački program ekrana

Za ekran sam želio općenito dostupan - i jeftin - hitachi LCD ekran. Pokreće ih 6 pinova, ali kako mi više nije bilo iglica, trebalo mi je drugo rješenje. Registar smjena u pomoć! 74HC595 mi dozvoljava da koristim SPI liniju za kontrolu ekrana, pa mi je potrebna samo 1 dodatna linija za odabir čipa.

FTDI

Posljednji dio ovog napajanja je veza sa okrutnim vanjskim svijetom. Za to moramo pretvoriti serijske signale u USB signale. To se radi pomoću FTDI čipa koji je spojen na mikro USB priključak radi lakšeg povezivanja.

I to je sve!

Korak 3: PCB i elektronika

PCB i elektronika
PCB i elektronika
PCB i elektronika
PCB i elektronika
PCB i elektronika
PCB i elektronika
PCB i elektronika
PCB i elektronika

Sada kada razumijemo kako krug funkcionira, možemo ga početi graditi! Možete jednostavno naručiti PCB putem interneta od vašeg omiljenog proizvođača (moj košta oko 10 USD), gerber datoteke se mogu pronaći na mom GitHubu, zajedno sa popisom materijala. Sastavljanje PCB -a tada je u osnovi pitanje lemljenja komponenti na mjestu prema sitotisku i opisu materijala.

Prvi korak je lemljenje SMD komponenti. Većinu njih je lako izvesti ručno, osim iz FTDI čipa i mikro USB konektora. Stoga možete sami izbjeći lemljenje te 2 komponente i umjesto toga upotrijebiti FTDI ploču za razbijanje. Dao sam zaglavlje na koje ovo može biti zalemljeno.

Kada je SMD posao završen, možete prijeći na sve komponente rupa. Ovo je vrlo jednostavno. Za čipove ćete možda htjeti koristiti utičnice umjesto da ih lemite direktno na ploču. Poželjno je koristiti ATMEGA328P s Arduino pokretačkim programom, inače ćete ga morati učitati pomoću ICSP zaglavlja (prikazano ovdje).

Jedini dio koji treba malo više pažnje je LCD ekran jer ga je potrebno montirati pod kutom. Na njega lemite nekoliko muških zakrivljenih zaglavlja, s plastičnim komadom okrenutim prema donjoj strani ekrana. Ovo će omogućiti dobro postavljanje ekrana na štampanu ploču. Nakon toga može se lemiti na mjestu kao i svaka druga komponenta kroz otvor.

Jedino što trebate učiniti je dodati 2 žice koje će se spojiti na stezaljke za banane na prednjoj ploči.

Korak 4: Kućište i montaža

Slučaj i montaža
Slučaj i montaža
Slučaj i montaža
Slučaj i montaža
Slučaj i montaža
Slučaj i montaža

S izrađenom pločom možemo prijeći na kućište. Posebno sam dizajnirao tiskanu ploču oko ovog hamond kućišta, pa se ne preporučuje upotreba drugog kućišta. Međutim, uvijek možete 3D ispisati kućište istih dimenzija.

Prvi korak je priprema završne ploče. Morat ćemo izbušiti neke rupe za vijke, prekidače itd. To sam učinio ručno, ali ako imate pristup CNC -u to bi bila preciznija opcija. Napravio sam rupe prema shemi i lupkao rupe za vijke.

Bilo bi dobro dodati sada neke svilene jastučiće i držati ih na mjestu s malom kapljicom super ljepila. Oni će izolirati LT3080 i TIP32 od zadnje ploče, dok će i dalje omogućiti prijenos topline. Ne zaboravite ih! Prilikom pričvršćivanja čipova na stražnju ploču, upotrijebite podlošku od liskuna kako biste osigurali izolaciju!

Sada se možemo usredotočiti na prednju ploču koja samo klizi na mjestu. Sada možemo dodati utičnice za banane i dugmad za rotacijske davače.

S obje ploče na mjestu, sada možemo umetnuti sklop u kućište, dodati baterije i sve zatvoriti. Koristite zaštićene baterije jer ne želite da ćelije eksplodiraju!

U ovom trenutku hardver je gotov, sada je ostalo samo upropastiti ga u softver softverom!

Korak 5: Arduino kod

Arduino kod
Arduino kod

Mozak ovog projekta je ATMEGA328P, koji ćemo programirati s Arduino IDE -om. U ovom odjeljku ću proći kroz osnovne operacije koda, detalji se mogu pronaći kao komentari unutar koda.

Kod se u osnovi ponavlja kroz ove korake:

  1. Čitajte serijske podatke iz Jave
  2. Dugmad za glasanje
  3. Izmjerite napon
  4. Izmjerite struju
  5. Izmjerite struju pomoću INA219
  6. Pošaljite serijske podatke u javu
  7. Konfigurirajte boostconvertor
  8. Napunite bateriju
  9. Ekran za ažuriranje

Rotacijskim koderima upravlja rutina prekida kako bi bili što je moguće odgovorniji.

Kôd se sada može učitati na ploču putem mikro USB porta (ako čip ima bootloader). Ploča: Arduino pro ili pro mini Programer: AVR ISP / AVRISP MKII

Sada možemo pogledati interakciju između Arduina i računara.

Korak 6: Java kod

Java kod
Java kod

Za bilježenje podataka i kontrolu napajanja putem računara napravio sam java aplikaciju. To nam omogućuje jednostavno upravljanje pločom putem grafičkog sučelja. Kao i kod Arduino koda, neću ulaziti u sve detalje, ali ću dati pregled.

Počinjemo tako što ćemo napraviti prozor sa dugmadima, tekstualnim poljima itd; osnovne stvari sa GUI -jem.

Sada slijedi zabavni dio: dodavanje USB portova za koje sam koristio jSerialComm biblioteku. Kada odaberete port, java će slušati sve dolazne podatke. Takođe možemo poslati podatke na uređaj.

Nadalje, svi dolazni podaci se spremaju u csv datoteku radi kasnije obrade podataka.

Prilikom pokretanja.jar datoteke prvo bismo trebali odabrati odgovarajući port s padajućeg izbornika. Nakon povezivanja podaci će početi pristizati, a naše postavke možemo poslati napajanju.

Iako je program prilično jednostavan, može biti vrlo korisno kontrolirati ga putem računala i evidentirati njegove podatke.

Korak 7: Uspjeh

Uspjeh!
Uspjeh!
Uspjeh!
Uspjeh!
Uspjeh!
Uspjeh!

Nakon svih ovih radova, sada imamo potpuno funkcionalno napajanje!

Moram se zahvaliti i nekim ljudima na podršci:

  • Projekat je zasnovan na EEVBLOG -ovom projektu uSupply i njegovoj šemi Rev C. Zato posebna hvala Davidu L. Jonesu što je objavio svoje sheme pod licencom otvorenog koda i podijelio svo svoje znanje.
  • Veliko hvala Johan Pattynu za izradu prototipova ovog projekta.
  • Također Cedric Busschots i Hans Ingelberts zaslužni su za pomoć pri rješavanju problema.

Sada možemo uživati u vlastitom napajanju, koje će nam dobro doći dok radimo na drugim sjajnim projektima! I što je najvažnije: usput smo naučili mnoge stvari.

Ako vam se svidio ovaj projekt, glasajte za mene na natjecanju powersupply, jako bih vam zahvalan! Https: //www.instructables.com/contest/powersupply/

Takmičenje u napajanju
Takmičenje u napajanju
Takmičenje u napajanju
Takmičenje u napajanju

Druga nagrada na takmičenju za napajanje

Preporučuje se: