INHOUDSOPGAWE:

Hoe om ADC aktueel te maak: 5 stappe
Hoe om ADC aktueel te maak: 5 stappe

Video: Hoe om ADC aktueel te maak: 5 stappe

Video: Hoe om ADC aktueel te maak: 5 stappe
Video: Tips om snel een proefwerk, examen of tentamen te leren! - DEEL 1 - Psycholoog Najla 2024, November
Anonim
Hoe om ADC Current Sense te maak
Hoe om ADC Current Sense te maak

In hierdie instruksies sal ons beskryf hoe u 'n 8-bis analoog-na-digitale omskakelaar (ADC) in die SLG46855V kan implementeer wat laadstroom en koppelvlak met 'n MCU via I2C kan aanvoel. Hierdie ontwerp kan gebruik word vir verskillende stroomopsporingstoepassings, soos ammeters, foutopsporingstelsels en brandstofmeters.

Hieronder beskryf ons die nodige stappe om te verstaan hoe die oplossing geprogrammeer is om die ADC -huidige sin te skep. As u egter net die resultaat van die programmering wil kry, laai GreenPAK -sagteware af om die reeds voltooide GreenPAK -ontwerplêer te sien. Koppel die GreenPAK Development Kit aan op u rekenaar en druk op die program om die ADC -huidige sin te skep.

Stap 1: ADC -argitektuur

ADC -argitektuur
ADC -argitektuur

Die ADC bestaan in wese uit 'n analoog vergelyker en 'n Digital-to-Analog Converter (DAC). Die vergelyker bespeur die ingangsspanning teenoor die DAC -uitgangsspanning en bepaal daarna of die DAC -ingangskode verhoog of verminder moet word, sodat die DAC -uitset konvergeer na die insetspanning. Die gevolglike DAC -invoerkode word die ADC digitale uitsetkode.

In ons implementering skep ons 'n DAC met behulp van 'n pulswydte modulasie (PWM) beheerde weerstandnetwerk. Ons kan maklik 'n presiese digitaal beheerde PWM -uitvoer skep met behulp van GreenPAK. Die PWM word gefiltreer as ons analoog spanning en dien dus as 'n effektiewe DAC. 'N Duidelike voordeel van hierdie benadering is dat dit maklik is om die spannings wat ooreenstem met nulkode en volskaal (gelykwaardig verreken en versterk) in te stel deur eenvoudig weerstandswaardes aan te pas. 'N Gebruiker wil byvoorbeeld ideaal nulkode lees van 'n temperatuursensor sonder 'n stroom (0 µA) wat ooreenstem met 4,3 V, en 'n volskaalse kode by 1000 µA wat ooreenstem met 3,9 V (tabel 1). Dit word maklik geïmplementeer deur eenvoudig 'n paar weerstandswaardes in te stel. Deur die ADC -reeks te laat ooreenstem met die sensorreeks, gebruik ons die ADC -resolusie ten beste.

'N Ontwerpoorweging vir hierdie argitektuur is dat 'n interne PWM -frekwensie baie vinniger moet wees as die ADC -opdateringsnelheid om ondergedempte gedrag van die beheerkring te voorkom. Dit moet ten minste langer wees as die ADC -datatellerklok gedeel deur 256. In hierdie ontwerp is die ADC -opdateringsperiode op 1,3312 ms gestel.

Stap 2: Interne stroombaan

Interne stroombaan
Interne stroombaan

Die buigsame ADC is gebaseer op die ontwerp wat in Dialog Semiconductor AN-1177 aangebied word. Die kloksnelheid word verhoog van 1 MHz tot 12,5 MHz om die ADC -toonbank te klok, aangesien die SLG46855 'n 25 MHz -klok beskikbaar het. Dit laat 'n baie vinniger opdateringsnelheid toe vir fyner monsteroplossing. Die LUT -klok van die ADC -dataklok word verander, sodat dit deur die 12,5 MHz -sein sal gaan as die PWM DFF laag is.

Stap 3: Eksterne kring

Eksterne kring
Eksterne kring

'N Eksterne weerstand en kondensatornetwerk word gebruik om 'n PWM om te skakel in 'n analoog spanning, soos getoon in die stroombaan skema in Figuur 1. Die waardes word bereken vir 'n maksimum resolusie vir die maksimum stroom wat die toestel sal waarneem. Om hierdie buigsaamheid te bereik, voeg ons weerstande R1 en R2 parallel aan VDD en grond by. 'N Weerstandsverdeler verdeel VBAT na die lae kant van die spanningsbereik. Die verdelerverhouding vir 'n verwagte minimum VBAT kan opgelos word met behulp van die vergelyking 1.

Stap 4: I2C Lees instruksies

I2C Lees instruksies
I2C Lees instruksies

Tabel 1 beskryf die I2C -opdragstruktuur om die data wat in CNT0 gestoor is, terug te lees. Die I2C -opdragte benodig 'n beginbit, beheerbyte, woordadres, leesbit en stopbit.

'N Voorbeeld I2C -opdrag om die CNT0 -getelde waarde terug te lees, word hieronder geskryf:

[0x10 0xA5] [0x11 R]

Die getelde waarde wat teruggelees word, is die ADC -kodewaarde. As voorbeeld is 'n Arduino -kode ingesluit in die zip -lêer van hierdie aansoeknota op Dialog se webwerf.

Stap 5: Resultate

Resultate
Resultate
Resultate
Resultate
Resultate
Resultate

Om die akkuraatheid van die ADC huidige sinontwerp te toets, is die gemete waardes op 'n gegewe laadstroom en VDD -vlak vergelyk met 'n teoretiese waarde. Die teoretiese ADC waardes is bereken met die vergelyking 2.

Die ILOAD wat korreleer met 'n ADC -waarde, word gevind met die vergelyking 3.

Vir die volgende resultate het ek hierdie komponentwaardes in tabel 3 gebruik.

Die resolusie van die ADC -waarde na ILOAD -omskakeling kan bereken word deur gebruik te maak van vergelyking 3 met die gemete waardes in tabel 2 en die ADC -waarde op 1. Met 'n VBAT van 3,9 V is die resolusie 4,96 µA/div.

Om die ADC -stroombespeuringskring te optimaliseer tot 'n minimum VDD -vlak van 3.6 V met 'n maksimum stroom van 1100 µA en 'n 381 Ω sin weerstand, sou die ideale verdelerkoëffisiënt 0.884 wees, gebaseer op vergelyking 1. Met die waardes in tabel 2, het die werklike verdeler 'n verdelerkoëffisiënt van 0,876. Aangesien dit effens minder is, kan dit 'n effens groter lasstroombereik moontlik maak, sodat die ADC -waardes naby die volle omvang is, maar nie oorloop nie. Die werklike verdelerwaarde word bereken met die vergelyking 4.

Bo (Figuur 2-6, Tabelle 4-6) is die metings van die stroombaan op drie spanningsvlakke: 4,3 V, 3,9 V en 3,6 V. Elke vlak vertoon 'n grafiek wat die verskil tussen die gemete en teoretiese ADC-waardes aandui. Teoretiese waardes word afgerond tot die naaste heelgetal. Daar is 'n opsommingsgrafiek om die verskille op die drie spanningsvlakke te vergelyk. Daarna is daar 'n grafiek wat die korrelasie tussen die teoretiese ADC -waardes en lasstroom by die verskillende spanningsvlakke aandui.

Afsluiting

Die toestel is getoets op drie spanningsvlakke: 3,6 V, 3,9 V en 4,3 V. Die omvang van hierdie spannings modelleer 'n vol litiumioonbattery wat na sy nominale vlak ontlaai. Van die drie spanningsvlakke word opgemerk dat die toestel tipies meer akkuraat was by 3.9 V vir die gekose eksterne stroombaan. Die verskil tussen die gemete en teoretiese ADC waardes was slegs 1 desimale waarde af by lasstrome van 700 - 1000 µA. Op die gegewe spanningsbereik was die gemete ADC -waardes in die ergste geval 3 desimale punte bo die nominale toestande. Verdere aanpassings aan die weerstandsverdeler kan gemaak word om verskillende VDD -spanningsvlakke te optimaliseer.

Aanbeveel: