Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Arduino Uno Atmega328- Voltmetar- pomoć

[es] :: Elektronika :: Mikrokontroleri :: Arduino Uno Atmega328- Voltmetar- pomoć

Strane: 1 2 3 4

[ Pregleda: 6565 | Odgovora: 64 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

goran_68

Član broj: 89012
Poruke: 932
*.dynamic.isp.telekom.rs.



+81 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć27.11.2019. u 20:11 - pre 52 meseci
Citat:
-sa trafom i opterećenjem od 1.5A, PWM preko FET

Ako imaš osciloskop pogledaj kako izgleda napon koji meriš.
gorankg
 
Odgovor na temu

vucko47
Užice

Član broj: 303041
Poruke: 1541



+174 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć27.11.2019. u 20:44 - pre 52 meseci
I kako izgleda napon sa kojim se napaja taj arduino. "Zakucaj" jedan tl431 na 2.5V i iskoristi ga kao eksternu referencu pa vidi sta se desava.
Sinan Hasan Jašar Šaban...
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć28.11.2019. u 12:53 - pre 52 meseci
Sad kada si stavio taj LM358 ispred ulaza u A/D imas mogucnost da stavis kondenzator izmedju ulaza u OP i prema masi (dakle ispred OP, ne posle OP, ne na nozicu od A/D) koji ce sluziti da malo ujednaci i filtrira napon.
Vrednost probaj koja ti vrsi posao, recimo izmedju 100pF do 10nF, veca vrednost ce bolje filtrirati ali ce sporije da reaguje, trebace mu na primer 1-2 sekunda da se napon "smiri".

Tebi to generalno lepo radi ali napon koji meris (koji jos uvek ne kontamo odakle ti i sta meris) je sam po sebi "promenljiv", nije stabilan tj apsolutno ravna linija nego ima neko setanje gore-dole i tako to kontroler i vidi.

Opet se vracam na primer sa baterijom, ako ti na primer sa baterijom od 1.5V to sve radi lepo i mirno onda tu nema sta dalje da se radi sa A/D, sve je to do napona koji dolazi do konvertera.
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.sowireless.org.



Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć28.11.2019. u 15:25 - pre 52 meseci

Ovako si mislio mikikg ?

 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć28.11.2019. u 15:36 - pre 52 meseci
Da tako, probaj razne vrednosti kondenzatora, idi slobodno i do 1uF, vidi sta ti najvise odgovara.

Otpornicki razdelnik ispred ulaza ti ostaje, ne moze bez njega u toj postavci sa kondenzatorom.

Ono sto si pisao u programu da si uzorkovao vise puta pa vadio prosek e to sad radi taj kondenzator analogno ;)
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć29.11.2019. u 15:35 - pre 52 meseci
Citat:
Brkic
Još jedno pitanje,
zašto je tl431 bolji i precizniji od npr. LM7805, naravno u smislu da se TL431 podesi da bude na 5v ??


TL431 pa i LM317 ima bolje tehnicke karakteristike od LM7805, to je mator regulator, sada ima neuporedivo boljih, TL431 je tehnicki izvor referetnog napona, samo to mu je uloga, malo stuje daje ali napon daje vrlo stabilno dok sa druge strane 7805 je snagas koji tera 1A, to dobro radi ali su mu ostale karakteristike truba.

Kada se barata samo sa digitalnim I/O na kontrolerima tu nije preterano problem regulatora napona, medjutim kada se umesa A/D ili D/A onda mora da se napajanje odradi malo bolje i to za pocetak prvo dobar regulator a spomenuh TPS73133 koji ima ADJ pin i koji se cak koristi kao mini remote-sensing kako bi doveo vrlo stabilan napon direktno do nozice kontrolera. Posle toga moze a i ne mora da se dodaje posebno referenca tj nesto poput TL431, pa preko LM4030, moze cak i LM10 i sve do LTZ1000 pa kako ko voli :)

Dobra stvar je sto ATmega328P i UNO plocica imaju vrlo finu opciju da se doda externi referetni napon na Aref pin, kada se to aktivira kroz program onda A/D uzima taj napon sa te nozice za maximum a nula pocinje od nule i to je cela nauka.
Stim sto pricamo ovde o 10bit A/D konverteru, bolje od TL431 nije potrebno osim ako hocete da oversemplujete A/D sto isto nije losa varijnata, tako moze da se digne za jos koji bit rezolucija, tada treba uzeti bolju referencu i bolji OP.
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć29.11.2019. u 16:03 - pre 52 meseci
Evo konkretna funkcija za filtriranje/oversampling (moving average), FILTER_OVERSAMP moze da bude bilo koja vrednost od 1, 2, 4, 8, 16, 32 ... 4096, 8192 ... dok ne "zakucate" kontroler, jede RAM memoriju :)

Ako je uloga tog MCU u "životu" da samo meri napon i to radi ceo dan a imate resursa viska, tu mozete da ih potrosite bar za nesto korisno :)

Upotreba je prosta, samo se rezultat sa A/D "provuce" kroz tu funkciju, ona ce tehnicki tek posle X-tog puta (FILTER_OVERSAMP) poceti da radi dok ne napuni buffer i posle toga radi svojim tempom.

Code:

//LPF
#define FILTER_OVERSAMP 64
int low_pass_filter(int x) {
    static long samples[FILTER_OVERSAMP];
    static int i = 0;
    static long total = 0;

    /* Update the moving average */
    total += x - samples[i];
    samples[i] = x;

    /* Update the index */
    i = (i==(FILTER_OVERSAMP-1) ? 0 : i+1);

    return total/FILTER_OVERSAMP;
}

Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.exe-net.net.



+7 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć04.12.2019. u 17:26 - pre 52 meseci
Moje skromni iskustvo.

Uvek je potreban bafer sa OP jediničnog pojačanja, osim u retkim izuzetcima.

Nikad ne očekujem da mi napon napajanja (Vcc) bude naponska referenca.
Zato na jedan od kanala dovedem napon sa neke naponske reference (ima ih da biraš, ja volim da koristim onu sa naponom 2.048V). Na taj način merim dva napona na osnovu kojih imam Nr i N, od reference i od napona Vx koji merim.

Nr = 1023*Vr/Vcc -> Vcc = 1023*Vr/Nr
N = 1023*Vx/Vcc = Nr*Vx/Vr -> Vx = Vr*N/Nr

Kao što se vidi N ne zavisi od Vcc. Ako se koristi moja omiljena referenca i naponi u mV, onda se množenje sa Vr svodi na šiftanje ulevo za 11 mesta.

Filtriranje merenog napona uvek radim softverskim filtriranjem vrednosti N.

Miki ti je dao kod filtra sa konačnim impulsnim odzivom dužine 64. Naravno on troši RAM, a ako želiš još veću vremensku konstantu, potrošićeš još više RAM-a.

Doduše, RAM se može uštedeti po cenu veće računice:

S1 = x1
S2 = (x1+X2)/2
.
.
Sn = ((n+1)*Sn-1+Xn)/n

što se u praksi svodi na

S = ((n+1)*S+X)/n


gde je S srednja vrednost, a x je ustvari N. Na kraju se primeni Vx = Vr*S/Nr


Ja koristim filtriranja sa beskonačnim impulsnim odzivom, koje se radi po praktićnoj formuli:

S = S + (x-S)/a

Uvek uzimam da je a = 2^m kako bi deljenje sveo na šiftovanje za m mesta udesno. Ovakav filter je ekvivalent NF RC filtru sa vremenskom konstantom dT*a, gde je dT vremenski razmak između uzastopnih konverzija. Prilikom šiftanja udesno, treba voditi računa da se ne izgube validni bitovi, takođe treba razliku x-S eksplicitno konvertovati u neki oznacen tip, na primeru int.

Na primer, ako je konverzija 10-to bitna, a čita se 16-to bitna vrednost konverzje, onda validni bitovi treba da budu najveće težine, tako da u očitanoj vrednosti na najnićim mestimaima 6 nula. Tih 6 bitova nisu validna pa m može da se kreće od 1 do 6.

Za veće vremenske konstante, gde je m veće, samo treba pravilno deklarisati varijable S i X, sa potrebni viškom bitova na najnižem mestu.

Inicijalna vrednost za S može biti bilo koja, a najčešće 0. Ako je prirodni format x 2 bajta, deklarišite ga kao 4 bajta, za veće m, pri čemu vrednost x upisujete u viša 2 bajta. Kada vam treba S vrednost, onda od nje uzimate viša 2 bajta.

Vrednosti koje daje ovaj filter se mogu uzimati u bilo kom trenutku, jer ne postoji vreme filtriranja kao kod prethodnog. Može da filtrira sa velikom vremenskom konstantom, bez da zahteva više RAM-a.

Ekvivalentnost sa RC filtrom se uočava u tome da se napon na kondenzatoru (S) uvećava proporcionalno razlici ulaznog napona (x) i napona na kondenzatoru, naravno kada se ta razlika integrali.

[Ovu poruku je menjao korak dana 04.12.2019. u 22:42 GMT+1]
 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć04.12.2019. u 21:41 - pre 52 meseci
Hvala @korak na vrlo korisnim informacijama.

Sto se tice ustede RAM-a i generalno celekupne efikasnosti trenutno najzgodnije resenje je upotreba predvidjenih instrukcija za DSP koje rade sa minimalnim utroskom RAM-a i CPU resursa ali se obicno trosi ROM za smestanje koeficijenata za FIR i IIR filtere. Ima to sve vec predidjeno na dsPIC kontrolerima i ST ARM-u u malo drugacijem obliku dok Texas Instruments gura dedicated DSP jezgro (vise komada) u svoje ARM kontrolere za te potrebe i radi mnooogo brzoo.
Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.exe-net.net.



+7 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć04.12.2019. u 22:23 - pre 52 meseci
Da, generalno za dobro filtriranje treba DSP.

Međutim na ovoj temi pominjemo filtre prvog reda. Pa čak i kod koji si postavio je FIR filter koji ima impulsni odziv pravougaonog izgleda. Prava stvar da on ne bude pravougaonik, i onda bi njegov oblik bio u flash-u, ali onda ima mnogo množenja i sumiranja za šta bi bio neophodan DSP.

Nego sećam se kada je pre oko 10 god. na ovom pdf-u bilo svakog dana po par novih tema. Hobisti su radili u asembleru i poznavali su svoj MCU u prste. Nisu morale da im se objašnjavaju elementarne stvari, osim početnicima.

Sada je došlo novo vreme, Arduino, biblioteke funkcija i svašta još, i vidim da ljudi malte ne ne znaju sa čim rade (a i ne moraju), pa ih sapliću i neki banalni problemi, koje ne mogu da reše pa se obraćaju ovde za pomoć.

Poludeo sam kada sam nabavio pločicu sa ARM-om (1MB flash, 256KB RAM, 6 SCI, 3 SPI, Eternet i svašta još na 100 pina) a na njoj konektori po Arduino standardu - potpuna degradacija.

I sada je koristim da preko nje programiram svoje prototipske pločice.

Zbog svega toga retko posećujem ovaj pdf, pa kada vidim top temu sa odgovorom od pre 15 dana još više se razočaram.
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.sowireless.org.



Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć04.12.2019. u 23:42 - pre 52 meseci
Ništa te nisam razumeo korak :-)

ajd prvo malo jednostavnije objasni ovo:
Citat:
korak:
Zato na jedan od kanala dovedem napon sa neke naponske reference (ima ih da biraš, ja volim da koristim onu sa naponom 2.048V). Na taj način merim dva napona na osnovu kojih imam Nr i N, od reference i od napona Vx koji merim.
Nr = 1023*Vr/Vcc -> Vcc = 1023*Vr/Nr
N = 1023*Vx/Vcc = Nr*Vx/Vr -> Vx = Vr*N/Nr

Kao što se vidi N ne zavisi od Vcc. Ako se koristi moja omiljena referenca i naponi u mV, onda se množenje sa Vr svodi na šiftanje ulevo za 11 mesta.

Filtriranje merenog napona uvek radim softverskim filtriranjem vrednosti N.

Koja je to referenca sa naponom 2.048V? Na koji od kanala ? ..i celu rečenicu i računicu ? :-)

Sada kao referentni napon koristim 2.5v preko LM431 i svejedno imam razliku kada merim napon baterije od 12v i 12v sa trafa, razlika bude 0.2v manje ili više meri ne znam sad mi mozak stao, unimer uvek meri 12v a Arduino 0.2v manje ili više ne znam sad.
Ulazni napon filtriram prosekom, imao sam 2 varijante,
sabiranjem ulaza u vremenu od 1 sekunde pa vadjenje proseka u odnosu koliko je bilo čitanja
i u vremenu od 1 sek uzimam Min i Max vrednost i od te 2 vrednosti napravim prosek.
Koliko se sećam u 1 sek je bilo oko 7500 merenja kada radi samo to u Loop-u


 
Odgovor na temu

mikikg
System administrator
Srbija

Član broj: 3779
Poruke: 5059
*.dynamic.sbb.rs.

Sajt: yu3ma.net


+505 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć05.12.2019. u 11:39 - pre 52 meseci
BTW: Da ne bude zabune, to sto ja ne stavljam u mojim probama referencu za A/D to ne znaci da one ne trebaju - ja to namerno radim da bih video neke druge pojave.
Preporucio sam da prvo treba da se obezbedi fin stabiln napon za napajanje kontrolera, to je preduslov za uvodjenje dobre reference, sa takvim stabilnim naponom se onda napaja referenca i tada ona radi u najoptimalnijem rezimu.

U vezi problema "meri lepo sa baterijom od 12V a sa transformatorom ne", jedan od mogucih uzroka moze da bude GND-LOOPS.

Ako nije uradjeno dobro rutiranje vodova za GND moze da se desi da se prilikom prikljucivanja tog transformatora (i to samo jedan vod, npr minus) dodje do dodatnog protoka struje kroz nulti vod koji pravi tu razliku od 0.2V.
Dovoljna je vrlo mala struja kroz GND da napravi problem, reda manje od 1mA koji moze da se stvori vrlo lako kroz parazitvine kapacitivnosti i naizmenicnih smetnji koje se tu provuku.

Dakle, za A/D ili D/A mora da se uradi potpuno nuliranje GND linije, dakle princip ZVEZDE i razvodjenje GND linija jednu-po-jednu iz jedne-jedine grupisane GND tacke.
Koliko je ovo sve izvodljivo sa vec gotovom UNO plocicom to vec ne znam ...


Site about Software Defined Radio – SDR
http://yu3ma.net/
https://github.com/yu3ma
On-line LM317 kalkulator
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.exe-net.net.



+7 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć05.12.2019. u 12:48 - pre 52 meseci
Citat:
Brkic:
Ništa te nisam razumeo korak :-)

ajd prvo malo jednostavnije objasni ovo:
Citat:
korak:
Zato na jedan od kanala dovedem napon sa neke naponske reference (ima ih da biraš, ja volim da koristim onu sa naponom 2.048V). Na taj način merim dva napona na osnovu kojih imam Nr i N, od reference i od napona Vx koji merim.
Nr = 1023*Vr/Vcc -> Vcc = 1023*Vr/Nr
N = 1023*Vx/Vcc = Nr*Vx/Vr -> Vx = Vr*N/Nr

Kao što se vidi N ne zavisi od Vcc. Ako se koristi moja omiljena referenca i naponi u mV, onda se množenje sa Vr svodi na šiftanje ulevo za 11 mesta.

Filtriranje merenog napona uvek radim softverskim filtriranjem vrednosti N.

Koja je to referenca sa naponom 2.048V? Na koji od kanala ? ..i celu rečenicu i računicu ? :-)

Sada kao referentni napon koristim 2.5v preko LM431 i svejedno imam razliku kada merim napon baterije od 12v i 12v sa trafa, razlika bude 0.2v manje ili više meri ne znam sad mi mozak stao, unimer uvek meri 12v a Arduino 0.2v manje ili više ne znam sad.
Ulazni napon filtriram prosekom, imao sam 2 varijante,
sabiranjem ulaza u vremenu od 1 sekunde pa vadjenje proseka u odnosu koliko je bilo čitanja
i u vremenu od 1 sek uzimam Min i Max vrednost i od te 2 vrednosti napravim prosek.
Koliko se sećam u 1 sek je bilo oko 7500 merenja kada radi samo to u Loop-u



LM4040 ima za 2,048V i 4,096V. Vezuješ je na bilokoji kanal koji ti je zgodan. Kada referencu vežeš na kanal, a AD koristi referencu Vcc, onda ti je opseg merenja od 0V do Vcc. Ako referencu vežeš na pin za referencu AD konvertora, onda ti je opseg merenja od 0V do napona reference.

Kakve god smetnje da imaš one su AC smetnje i filtriranjem se eleminišu, ali ne ako vršiš konverziju na 1s. Moraš češće da bi hvatao i smetnje i da bi one proćle kroz filter. Loš je postupak ako srednju vrednost računaš između max i min.

Problem može postojati ako je loše izvedena GND veza. GND arduina moraš vezati tako da kroz tu vezu ne prolaze druge struje osim od arduina, kao što je mika rekao u "zvezdu".

7500 merenja u sekundi je oko 133us po jednom merenju, što je sasvim dovoljno da isfiltrira AC smetnje. Integeral AC smetnji teži nuli sa vremenom integracije, a NF filtriranje vrši funkciju integraljenja.

Što se tiče računice ona je jednostavna, i mislim da sam je očigledno predstavio. U suštini, mereći referencu ti možeš da izmeriš koliki je Vcc (jer referencu smatramo apsolutno tačnom). Kada to znaš, onda u merenju napona Vcc zameniš vrednošću koji si dobio mereći referencu, i tako ti merenje ne zavisi od Vcc.

Ako još nešto nije jasno,pitaj.
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.dynamic.isp.telekom.rs.



Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć05.12.2019. u 17:36 - pre 52 meseci
Joj ništa nisam razumeo sem da GND sredim max što mogu

jednu referencu dovedem na AREF
za AREF sam sa LM431, 2.5v, oko 7.5mA i elektrolit od 2.2uF i direktno isao na AREF

šta sa drugom referencom od 5v koju cu isto napraviti od LM431, sa drugom referencom napajam AD i merim istu tu ref.od 5v na jednom ulazu ?

napon napajanja (Vcc) moze sa 7805 ili isto neki Ref napon od 5v ?

opseg merenja AD to sve razumem.
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.exe-net.net.



+7 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć06.12.2019. u 15:05 - pre 52 meseci
Veliki je korak da sreduš GND. To treba da bude po principu da GND arduina vežeš na GND izvora napona tako da kroz tu ćicu ide samo struja Arduina.

Ako referencu vežeš za neki kanal, onda ne moraš da vezuješ na ARF. Ali, ako ti je opseg merenog napona manji od napona reference, onda veži referencu na ARF, izbeći ćeš dodatno preračunavanje.

U obe varijante ti treba samo jedna referenca. Upotreba reference ima za cilj da konverzija ne zavisi od napona napajanja
MCU-a.Tada možeš koristiti 7805 za napajanje, iako je njegova tačnost u okviru 5%, on neće uticati na tačnost konverzije.

Spomenuo si 7500 merenja u sekundi, ako si ostao pri tome pogledaj kako si setovao ADC s obzirom na tu brzinu. 7500 merenja u sekundi znači jedno merenje za 133us, a vreme konverzije se može podesiti u opsegu od 13us do 260us (za ATmega328).
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.sowireless.org.



Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć06.12.2019. u 16:44 - pre 52 meseci
Hvala na odgovoru,
ADC je setovan po Default na D5 je nakačen
Ali kada Loop radi i druge stvari onda je znatno manje očitavanje.
 
Odgovor na temu

korak
Nis

Član broj: 125522
Poruke: 622
*.exe-net.net.



+7 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć06.12.2019. u 17:43 - pre 52 meseci
Uredu.

Ali najbolje je da konverziju vršiš u interaptu gde će se očitati ADC i vrednost smestiti u određenu varijablu. Onda u glavnoj petlji samo pročitaš tu varijablu.
 
Odgovor na temu

Brkic

Član broj: 55360
Poruke: 1222
*.sowireless.org.



Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć06.12.2019. u 18:12 - pre 52 meseci
Ok prihvatam mišljenje ali ne znam kako da ga sproverem, ako može neki primer.

Sada
1.ulaz očitavam A5 sa AD u jedan varijablu i posle 1 sec varijablu podelim sa brojem čitanja gde mi je za 19.4v imao ulaz 727.4

Sada trebam primeniti 2.ulaz sa referentnim naponom od 5v u izračunavanje 1.ulaza

AREF mi je 2.5v

sa 7805 napajam Arduino
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć06.12.2019. u 18:51 - pre 52 meseci
jbt al ste ga zakomplikovali :D ...

napajas duino sa 5V, super, kupi referencu 4.096V i vezi je na Aref.

na taj nacin si dobio da ti merenje ide od 0 do 4.096V (znaci izgubio si 1V, nista strasno, a dobio si preciznost brzinu i jednostavnost)

taj malac ima 10bitni adc, znaci raw adc vrednost koju citas ti ide od 0 do 1023

znaci

Code:

  WORD rawadc;
  WORD Vin;

  rawadc = readadc(0);
  Vin = rawadc << 2;  // vin = rawadc * 4


i u Vin imas vrednost u mV

sto se tice filtriranja, zavisi sta ti je potreba, za klasican voltmetar moving average je smor zato sto kad otkacis ulaz treba mu po sekunde, sekud a mozda i dve sekunde (zavisi kako iskonfigurises) da padne na nulu .. znaci za klasican, citas 8x i sabiras pa odbacis zadnja 3 bita (shiftas u desno) i to prikazes, ili ako imas vremena i memorije citas 10x i sabiras, cuvas min i max, oduzmes min+max i shiftas 3 puta u desno ..

i to ti je to, sve komplikovanije od toga je gubljenje vremena i novca jer ako ti treba bolje od toga mora pocnes od toga da ti treba bolji adc
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.dynamic.sbb.rs.

Sajt: mysql.rs


+2377 Profil

icon Re: Arduino Uno Atmega328- Voltmetar- pomoć06.12.2019. u 19:01 - pre 52 meseci


os ok referencu (0.5% + 100ppm/C)
https://store.comet.rs/Catalogue/Product/99258/

ili do jaja referencu (0.2% + 100ppm/C)
https://store.comet.rs/Catalogue/Product/16223/

prva je 30din, druga 70din ili tako nesto ..

lm431 je cool ali to "adjustable" ... kad ti trebaju te klasicne vrednosti (1.024, 2.048, 4.096 etc) kupis lepo profi referencu za kikiriki i ne razmisljas :D
 
Odgovor na temu

[es] :: Elektronika :: Mikrokontroleri :: Arduino Uno Atmega328- Voltmetar- pomoć

Strane: 1 2 3 4

[ Pregleda: 6565 | Odgovora: 64 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.