Fórum témák

» Több friss téma
Fórum » Arduino
 
Témaindító: groening, idő: Szept 28, 2008
A klónok CH340 Soros-USB illesztőjének drivere (Letöltés)
Lapozás: OK   739 / 739
(#) sdrlab válasza Massawa hozzászólására (») Jún 17, 2022 /
 
Egy kis korrekció: nem az a lényeg, hogy a mérendő jel stabil e, hanem hogy az ADC eredménye az e?!!
Ha igen, zajt kell hozzáadni. Ezt vagy a bemenethez, magához a jelhez adod hozzá, vagy azt meghagyod eredetiben, és a referenciát zajosítod el. A végeredmény ugyanaz: zajos ADC értékek....
(#) sdrlab válasza Skori hozzászólására (») Jún 17, 2022 /
 
Ha ezek a billegések, nem kvázi fehér zaj eloszlást mutatnak, akkor ez nem elég a túlmintavételezés helyes működéséhez! Oda az kell, hogy a statisztikai jellege egyenletes eloszlást mutasson, máskülönben lépcsők lesznek továbbra is az eredményben(és itt nem a legutolsó bit lépcsőjére gondolok)
(#) asch válasza Josi777 hozzászólására (») Jún 17, 2022 / 3
 
> A másik hibát pedig maga az ADC produkálja. Nem preciziós ADC van benne és nem is lineáris.

Az ADC-vel kapcsolatban nagyon fontos kérdés az, hogy a csip köré épített áramkör milyen. Emiatt gyengébb "netes forrásokra" nem érdemes hivatkozni, ha tudni akarjuk a pontosságot, akkor az adatlaphoz kell fordulni, illetve ha nem hiszünk neki akkor mérni kell, de rendesen megtervezett áramkörben, nem demo boardon.

Bár kicsit más példa, de érzékelteti a véletlenszerű netes források használhatóságát, hogy az ATMEGA328P csip fogyasztásáról többféle legenda keringett a neten, és egyszer vettem a fáradságot és megmértem amennyire tudtam az eszközeimmel. Sikerült reprodukálnom a netes pesszimista eredményeket, amik a gyári adattól nagyságrendileg rosszabbak voltak.

De elkövettem azt a hibát, hogy nem kötöttem be az összes lábat. Amint bekötöttem az AREF lábat is az adatlap szerint, abban a pillanatban a fogyasztás nagyságrendeket csökkent, és az adatlap szerinti lett (amennyire az ilyen kis értéket mérni tudtam az eszközeimmel).

Ebből arra a következtetésre jutottam, hogy a fórumtalálatok eredményeit szintén hibás áramkörökre alapozva osztották meg. Persze nem adtak hozzá áramköri rajzot, vagy mérési jegyzőkönyvet csak odadobtak egy számot, hogy szerintük a csip nem annyit fogyaszt, mint az adatlap szerint, hanem nagyságrendileg többet, ennyit és ennyit. Így keletkeznek a pletykák.

Tehát ha fogyasztást vagy analóg pontosságot mérünk, akkor nem önmagában a csipet mérjük, hanem a csipet és az áramkört! Ha egy kezdő egy kutyaütő áramkörrel gyenge ADC pontosságot tapasztal, az nem jelenti azt, hogy maga a csip rossz.

Nem akarom védeni az ESP32-t, nem ismerem egyáltalán, csak azért szóltam hozzá, hogy szerintem tisztességes mérések nélkül Internet szóbeszédre hivatkozva ezek megalapozatlan állítások.
(#) Skori válasza sdrlab hozzászólására (») Jún 17, 2022 /
 
Ezt le lehet tesztelni a gyakorlatban, és kiderül mennyire egyenletes az eloszlás. Ha nem tökéletesen egyenletes a zaj eloszlása, akkor az eredmény nyilván rosszabb lesz, mint ideális esetben. Ugyanakkor nagy valószínűséggel jobb jobb lesz, mint túlmintavételezés nélkül.
Végülis a kérdés, hogy arra feladatra amire használni kellene, elegendő-e vagy sem.
(#) vorosj válasza asch hozzászólására (») Hé, 22:55 / 1
 
Sajnos az ESP32 ADC konvertere valóban gyengén sikerült. Három különböző hibája van, ebből kettő csökkenthető szoftveres kompenzálással, a harmadik nem.

Egyik hiba a nem lineáris jelleg, a magasabb tartományban jelentősen görbül a feszültség vs ad value fgv. Ezt lehet szoftveresen javítani.

A következő hiba az, hogy zavarja a saját wifi rádiója. Mikor ad, mást mér. Gondos szűréssel sem védhető ki, az sem világos, hogy nagyfrekvenciás zavar okozza, vagy hőlökés a chipen belül. Ez is javítható szoftveresen - nem mér mikor ad.

A harmadik hiba sajnos nem kivédhető. Kapacitív elvű SAR konvertere van, és pontatlan az egyik kondenzátor értéke. Ez azt eredményezi, hogy mikor az ennek megfelelő bit változik, ugrik több egységet az érték. A végeredmény egy fűrészfog szerű hiba.

Összességében jóval gyengébb eredményt ad, mint egy rendes, jól sikerült 10 bites ADC.
(#) vorosj válasza vorosj hozzászólására (») Hé, 22:59 /
 
Az ADC hibáival saját project fejlesztése során találkoztam. Az lett a vége, hogy beépítettem mellé egy STM32-t, minden mérést az végez, az ESP32 pedig a WiFi-t kezeli.

Próbáltam keresgélni, hogy az újabb változatokban, pl. a RISC-V magos c3-ban javítottak-e az ADC-n. Sajnos nem találtam adatot. Nem meglepő, nagyon munkaigényes korrekt módon letesztelni.
A hozzászólás módosítva: Hé, 23:01
(#) Kovidivi válasza elactrofan hozzászólására (») Kedd, 16:00 / 1
 
Szegény Elactrofan 2 oldalon keresztül olvasta a veszekedést, de senki sem segít neki.
Képzeljétek el, 10bit-tel is el lehet 1mA-es felbontást érni, 5A-ig. Mégpedig a kulcsszó: átlagolás. ha van egy pici zaj a mért jelen (márpedig mindig van), akkor a 10bitből egyből 11 vagy 12bit lesz, és megjelennek a kicsi áramértékek is. Megfelelő kalibrációval pedig a pontosság is meglesz (nagyjából). A kínai labortápok pontossága is kb. 1-5% között van... Kijelzi az 1mA-t is, aztán vagy annyi folyik, vagy nem.
Az átlagolást érdemes állíthatóra programozni, mert minél több mintát veszünk, annál tovább tart a mérés, lehet már 32db is tökéletes eredményt ad. Vagy ahogy Attila86 írta a weboldalán: vett mondjuk 100db mintát, a 10 legkisebbet és 10 legnagyobbat eldobta, a többit átlagolta. Az arányokat majd kikísérletezi mindenki magának. De ha valaki az 5V-ot akarja mint referencia felhasználni, az inkább csak 0.1A-es lépésekben mérjen 0-5A között! Inkább legyen a belső 1.1V-os, vagy egy TL494 a referencia.
(#) Josi777 válasza Kovidivi hozzászólására (») Kedd, 16:21 /
 
Amit említesz, az a statisztikai átlagolás, ami egyfajta digitális szűrés. De az ADC pontatlanságát az sem képes korrigálni. Egy érték még nem válik pontossá attól, hogy sok tizedesjegyet tartalmaz. Nem lehet a 10 bitesből 11 vagy 12 biteset csinálni! Gondold át a működését és rájössz, hogy miért nem.
(#) icserny válasza Josi777 hozzászólására (») Kedd, 17:54 / 1
 
(#) Josi777 válasza icserny hozzászólására (») Kedd, 18:32 /
 
Te amúgy érted az oversampling fogalmát és a működési elvét? Szerinted az átlagolás az analógiája?
És csak úgy mellékesen megjegyzem, hogy mivel már itt megkaptam azt, hogy ez egy hobbi fórum, ezért ne hivatkozzak magasabb szintű eljárásokra, mert csak összezavarja a kezdőket, így most azt is megkérdezem, hogy erről mi a véleményed?
(#) exabit válasza Kovidivi hozzászólására (») Kedd, 19:55 /
 
Én Josi777-tel értek egyet. Ha elolvasod az icserny hozzászólásában lévő Silicon Labs-os dokksit abban benne van hogy mikor működik az amit írtál.:
"The noise amplitude must be sufficient to cause the input signal to change randomly from sample to sample by amounts comparable to at least the distance between two adjacent codes (i.e., 1 LSB - please see Equation 5 in Appendix A).
The input signal can be represented as a random variable that has equal probability of existing at any value between two adjacent ADC codes."
Legalább annyi zajnak kell lennie hogy rángassa az ADC-t legalább egy digitet. Na ez az ami nincs meg gyakran.
(#) sargarigo válasza exabit hozzászólására (») Kedd, 20:07 /
 
Mellé tesz bármit ami zajt termel, és meg is van. Valamelyik doksi éppen írta is.
(#) sdrlab hozzászólása Sze, 8:56 /
 
Ti szoktatok visszaolvasni legalább néhány hozzászólást, mielőtt hiányos hozzáértéssel rágjátok tovább a csontot?!!
Leírtuk nem sokkal korábban, mi a pontos feltétele a túlmintavételezésből adódó felbontásnövelésnek, ami matematikailag is levezethető! Tehát felesleges tovább csámcsogni ezen..., ott van egy beidézett doksi is, ami elég szépen leírja a fizikáját ennek. Tessék elolvasni, és értelmezni...
(#) zolee1209 válasza sdrlab hozzászólására (») Sze, 9:53 /
 
Megelőztél...
(#) sargarigo válasza sdrlab hozzászólására (») Sze, 12:15 /
 
Igazad van. Valóban nem olvastam most vissza. MeaCulpa
(#) Kovidivi válasza Josi777 hozzászólására (») Csü, 15:11 /
 
A pontosság pedig attól fog függeni, hogy hogyan kalibrálod be, mihez, és milyen referenciát használsz. Én kétpont kalibrációt alkalmaztam, és kielégítö eredményt kaptam. 10bit-et simán lehet 11bitre növelni, de a 12bit sem akkora probléma, sokkal pontosabb lesz a mérésed, mint sok más kínai szerkezet! Ha viszont használsz egy 16bites ADC-t, ott meg ugye lefelé fogod a mért eredményt rontani (átlagolni), mivel nem akarsz 12.17554V-ot látni a kijelzön.
Szerinted nincs zaj a tápodon? 1bit zaj 5V-os referenciánál 5mV. Ha csak a kezeddel közelítesz az Arduinohoz, máris viszed az 50Hz-es brummot a rendszerbe. Nézd meg a 7805 saját zaját, már ott kapsz ingyen 40uV-ot (0.04mV). A hosszabbító, dc-dc konverterek, telefon, wifi, stb., mind szórja a zajt.
Következő: »»   739 / 739
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem