Sadržaj:
- Korak 1: ADC arhitektura
- Korak 2: Unutrašnje kolo
- Korak 3: Vanjski krug
- Korak 4: I2C Pročitajte upute
- Korak 5: Rezultati
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
U ovom Instructable-u ćemo opisati kako implementirati 8-bitni analogno-digitalni pretvarač (ADC) u SLG46855V koji može osjetiti struju opterećenja i povezati se s MCU-om putem I2C. Ovaj dizajn može se koristiti za različite aplikacije mjerenja struje, kao što su ampermetri, sistemi za otkrivanje grešaka i mjerači goriva.
U nastavku smo opisali korake potrebne za razumijevanje načina na koji je rješenje programirano za stvaranje trenutnog smisla ADC -a. Međutim, ako samo želite dobiti rezultat programiranja, preuzmite GreenPAK softver da biste vidjeli već završenu GreenPAK datoteku za dizajn. Priključite GreenPAK Development Kit na svoje računalo i pritisnite program za stvaranje trenutnog smisla ADC -a.
Korak 1: ADC arhitektura
ADC se u osnovi sastoji od analognog komparatora i digitalno-analognog pretvarača (DAC). Komparator osjeća ulazni napon u odnosu na izlazni napon DAC -a, a zatim kontrolira hoće li povećati ili smanjiti DAC ulazni kod, tako da izlaz DAC konvergira u ulazni napon. Rezultirajući DAC ulazni kod postaje ADC digitalni izlazni kod.
U našoj implementaciji stvaramo DAC koristeći mrežu otpornika kontroliranu pulsno-širinskom modulacijom (PWM). Pomoću GreenPAK -a lako možemo stvoriti precizan digitalno upravljani PWM izlaz. Kada se filtrira, PWM postaje naš analogni napon i stoga služi kao efikasan DAC. Izrazita prednost ovog pristupa je ta što je lako postaviti napone koji odgovaraju nultom kodu i punoj skali (ekvivalentno pomak i pojačanje) jednostavnim podešavanjem vrijednosti otpornika. Na primjer, korisnik želi idealno očitati nulti kôd sa temperaturnog senzora bez struje (0 µA) koja odgovara 4,3 V, a koda u punoj skali na 1000 µA koja odgovara 3,9 V (Tablica 1). To se lako provodi jednostavnim postavljanjem nekoliko vrijednosti otpornika. S obzirom da se raspon ADC -a podudara s rasponom senzora koji nas zanima, maksimalno koristimo ADC rezoluciju.
Dizajn razmatranja ove arhitekture je da interna frekvencija PWM -a mora biti mnogo brža od brzine ažuriranja ADC -a kako bi se spriječilo nedovoljno prilagođeno ponašanje njegove upravljačke petlje. U najmanju ruku trebao bi biti duži od takta brojača podataka ADC -a podijeljenog sa 256. U ovom dizajnu period ažuriranja ADC -a postavljen je na 1,3312 ms.
Korak 2: Unutrašnje kolo
Fleksibilni ADC zasnovan je na dizajnu predstavljenom u Dialog Semiconductor AN-1177. Takt se povećava sa 1 MHz na 12,5 MHz kako bi se okrenuo ADC brojač budući da SLG46855 ima dostupan takt od 25 MHz. Ovo omogućava mnogo bržu brzinu ažuriranja za bolju rezoluciju uzorka. LUT koji radi na ADC taktu podataka je promijenjen tako da će prolaziti kroz signal od 12,5 MHz kada je PWM DFF nizak.
Korak 3: Vanjski krug
Vanjski otpornik i kondenzatorska mreža koriste se za pretvaranje PWM -a u analogni napon kako je prikazano na shemi kola na slici 1. Vrijednosti su izračunate za maksimalnu rezoluciju za maksimalnu struju koju će uređaj osjetiti. Da bismo postigli ovu fleksibilnost, dodamo otpornike R1 i R2 paralelno s VDD -om i masom. Razdjelnik otpornika dijeli VBAT na nisku stranu raspona napona. Omjer razdjelnika za očekivani minimalni VBAT može se riješiti pomoću jednadžbe 1.
Korak 4: I2C Pročitajte upute
Tablica 1 opisuje strukturu naredbi I2C za čitanje podataka pohranjenih u CNT0. I2C komande zahtijevaju početni bit, kontrolni bajt, adresu riječi, bit za čitanje i bit za zaustavljanje.
Primjer I2C naredbe za čitanje unatrag prebrojane vrijednosti CNT0 napisan je ispod:
[0x10 0xA5] [0x11 R]
Brojana vrijednost koja se ponovo čita bit će vrijednost ADC koda. Na primjer, Arduino kôd uključen je u ZIP datoteku ove bilješke o aplikaciji na web stranici Dialoga.
Korak 5: Rezultati
Da bi se ispitala tačnost dizajna osjetnika ADC struje, izmjerene vrijednosti pri datoj struji opterećenja i VDD razini uspoređene su s teoretskom vrijednošću. Teoretske vrijednosti ADC -a izračunate su jednadžbom 2.
ILOAD koji je u korelaciji s ADC vrijednošću nalazi se s jednadžbom 3.
Za sljedeće rezultate koristio sam ove vrijednosti komponenata prikazane u tablici 3.
Rezolucija ADC vrijednosti u ILOAD konverziju može se izračunati pomoću jednadžbe 3 s izmjerenim vrijednostima u Tablici 2 i ADC vrijednosti postavljenom na 1. S VBAT od 3,9 V rezolucija je 4,96 µA/div.
Kako bi se krug osjetnika struje ADC -a optimizirao na minimalni nivo VDD od 3,6 V s maksimalnom strujom od 1100 µA i osjetnikom otpornika od 381 Ω, idealni koeficijent razdjelnika bio bi 0,884, na temelju jednadžbe 1. Sa vrijednostima navedenim u tablici 2, stvarni razdjelnik ima koeficijent razdjelnika 0,876. Budući da je to nešto manje, to će omogućiti nešto veći raspon struje opterećenja, tako da su vrijednosti ADC -a blizu punog raspona, ali se neće prelijevati. Stvarna vrijednost razdjelnika izračunava se jednadžbom 4.
Gore (slike 2-6, tablice 4-6) su mjerenja izvedena u krugu na tri naponska nivoa: 4,3 V, 3,9 V i 3,6 V. Svaki nivo prikazuje grafikon koji prikazuje razliku između izmjerenih i teoretskih vrijednosti ADC-a. Teoretske vrijednosti su zaokružene na najbliži cijeli cijeli broj. Postoji zbirni grafikon za usporedbu razlika na tri naponska nivoa. Nakon toga postoji grafikon koji prikazuje korelaciju između teoretskih vrijednosti ADC -a i struje opterećenja na različitim nivoima napona.
Zaključak
Uređaj je testiran na tri naponska nivoa: 3,6 V, 3,9 V i 4,3 V. Raspon ovih napona modelira punu litijum -jonsku bateriju koja se prazni do nominalnog nivoa. Od tri naponska nivoa, primijećeno je da je uređaj tipično bio precizniji na 3,9 V za odabrano vanjsko kolo. Razlika između izmjerenih i teoretskih vrijednosti ADC -a bila je samo 1 decimalna vrijednost isključena pri strujama opterećenja od 700 - 1000 µA. U danom rasponu napona, izmjerene vrijednosti ADC -a bile su za 3 decimalne točke iznad nominalnih uvjeta u najgorem slučaju. Daljnja podešavanja razdjelnika otpornika mogu se izvršiti radi optimizacije različitih razina napona VDD.
Preporučuje se:
Trenutni izvor DAC AD5420 i Arduino: 4 koraka (sa slikama)
Trenutni izvor DAC AD5420 i Arduino: Pozdrav. U ovom članku želio bih podijeliti svoje iskustvo sa trenutnim digitalno-analognim pretvaračem AD5420, koji ima sljedeće karakteristike: 16-bitna rezolucija i monotonostTrenutni izlazni rasponi: 4 mA do 20 mA, 0 mA do 20 mA, ili 0 mA t
Dodajte Adafruit's Ring LED trenutni prekidač u Raspberry Pi: 3 koraka (sa slikama)
Dodajte trenutni prekidač Adafruit's Ring LED u Raspberry Pi: Kao dio mog sistema za rezanje kabela, želim indikator napajanja i prekidač za resetiranje na medijskom centru sa Raspberry Pi-om koji radi pod Kodi-jem na OSMC-u. Pokušao sam nekoliko različitih trenutnih prekidača. Adafruit -ovo robusno metalno dugme sa plavom LED diodom je super
Cooper Decorator trenutni prekidač: 4 koraka (sa slikama)
Cooper Decorator trenutni prekidač: Ova modifikacija će Cooper dekoraterski prekidač pretvoriti u normalno otvoreni ili normalno zatvoreni trenutni prekidač. Ovo je poluobrnuto, ali izmijenjena strana neće imati normalni čep pa će ići dalje u kućište, ovi prekidači
LED Throwie - Tuba za trenutni razbacivač poruka: 4 koraka
LED Throwie - Instant Messanger Tube: Imate nešto za reći i želite to zalijepiti na metal i pustiti da se to vidi sa LED sjajem. Pa, imao si sreće. Danas ću vam pokazati kako napraviti LED Throwie - Instant Messenger cijevi za širenje vaše poruke u fizičkom svijetu.se … ¦
Kako napraviti kalendar djeda i baka & Spomenar (čak i ako ne znate kako napraviti spomenar): 8 koraka (sa slikama)
Kako napraviti kalendar djeda i baka & Spomenar (čak i ako ne znate kako se bilježiti): Ovo je vrlo ekonomičan (i cijenjen!) Praznični poklon za bake i djedove. Ove sam godine napravio 5 kalendara za manje od 7 dolara svaki. Materijali: 12 sjajnih fotografija vašeg djeteta, djece, nećaka, nećaka, pasa, mačaka ili druge rodbine12 različitih komada