Založen: Jan 17, 2007 Příspěvky: 6476 Bydliště: Husinec-Řež
Zaslal: út březen 23 2021, 16:00 Předmět: Arduino a analogový šum
Zdravím,
postavil jsem si zařízení, kde potřebuju měřit hodnoty o velikosti promile maxima.
Pro převod do PC jsem použil Arduino UNO a vše pracovalo správně. Minimální naměřená hodnota je 0 až 0.1 % z maxima a šum v průměru (10 vzorků) odpovídá cca 0.02 %.
Problém nastal, když jsem do Arduina doprogramoval web server. Došla paměť!
Koupil jsem tedy Arduino ZERO (Seeedstudio), kde s pamětí problém není a navíc získám 12 bit ADC. Juchů.
Zklamání přišlo při testech šum narostl na 0.4 % i když jsem ho očekával někde na 0.04 % a průměrování s tím nic nenadělá - jeden vzorek jako druhý. Prostě šumí ADC respektive multiplexor dělá bordel.
Otázka tedy zní: Víte někdo jak na Arduino Zero (ARM Cortex+ M0) ovládat multiplexer z Arduino IDE. Jde mi o buď výrazné snížení přepínání multiplexoru či přímo výběr jednoho konkrétního kanálu. Funkce Delay před funkcí analogRead nic neřeší.
Díky Čust
Založen: Jul 21, 2006 Příspěvky: 25741 Bydliště: skoro Brno
Zaslal: út březen 23 2021, 17:05 Předmět:
To vypadá, že se jedná o rozšířený mor.
U NRF9E5 jsem například zjistil, že když se přepne jádro na čtyřnásonek, abych z toho vyrazil na UART 56kbit, tak 12bit převodník ukazuje asi o 10% méně. Což o to, to se dá zkalibrovat, ale u serie 10ks jsem našel 5, co byly dost výrazně nelineární.
Přeju příjemný zážitky. _________________ Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
Založen: Oct 30, 2010 Příspěvky: 6668 Bydliště: Praha
Zaslal: út březen 23 2021, 17:53 Předmět:
Jak se začne potřebovat pořádně měřit, tak se skončí u externího převodníku. Ono v jednočipu nepanuje zrovna z hlediska rušení přátelské prostředí. Také se stačí podívat, co stojí běžný jednočip a co slušný převodník, rozdíl je celkem markantní. Pak se to samozřejmě nesmí zabít layoutem desky. _________________ Krátce před tím, než se to rozbilo, tak to ještě fungovalo...
Prostuduj datasheet k tomu obvodu. Byva tam napsane co vsechno se ma povypinat v prubehu mereni, jak rychle se ma merit apod. aby se redukoval sum. Ale obecne jsou ty integrovane prevodniky dost tragedie.
Založen: Jul 21, 2006 Příspěvky: 25741 Bydliště: skoro Brno
Zaslal: út březen 23 2021, 19:52 Předmět:
Zaky to napsal přesně. Taky jsem skončil externím převodníkem. Jo ten můj slavnej zákazník, ten nezná ani slovo kalibrace. Pak nadává, ale mně...
Stochastické chyby se bohužel sčítají. _________________ Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?]
Tiež som si kedysi na začiatku kúpil arduino zero, že ho použijem na nejaké sofistikované veci, ale nakoniec som skončil pri neoficiálnom arduino pro micro, čo je zmenšená verzia arduino leonardo s čipom mega32u4. Za tie tri doláre z ebay by som v tomto prípade použil aj dve arduina. Jedno na meranie a druhé na internet.
Založen: Jan 17, 2007 Příspěvky: 6476 Bydliště: Husinec-Řež
Zaslal: st březen 24 2021, 0:59 Předmět:
Hmmm
já bych raději potřeboval vyřešit to ZERO... Něco málo jsem vylepšil, ale
nicméně šum stále je! něco jsem měl špatně... předchozí příspěvek je error
PO HODINĚ PRÁCE:
Každopádně, Zero má vlastní offset cca 0.15 % rozsahu i po zapnutém HW průměrování, u mě tedy cca 3.7 mV. Pak se šum zmenšuje s impedancí zdroje, logicky - vyhodil jsem RC článek (dolní propust) a zapojil jsem výstupní OZ natvrdo (přes odpor 47 Ohm) do ADC.
Další kus práce:
Nyní mám šum s offsetem OZ (a po odečtení offsetu ADC) na hodnotě 0.17 %.
Po odečtení offset OZ (dle měření osciloskopem 250 uV) jsem na hodnotě šumu 0.16 %.
Řekněme, že tomu věřím a ukončuji akci improve ADC!
Signál budu asi 4x zesilovat, takže se mi šum projeví jako 0.04 %. To už je lepší než 60 dB a s tím se dá pracovat!
Založen: Jan 17, 2007 Příspěvky: 6476 Bydliště: Husinec-Řež
Zaslal: so duben 10 2021, 20:16 Předmět:
Ještě jsem si cvičně koupil STM32... Přesněji desku Nucleo G071RB. Je to dokonce levnější než to Arduino.
Tam ten šum na AD převodníku je mnohonásobně lepší naž na procesoru SAMD21.
Takže pokud budete chtít měřit analogové hodnoty Arduino Zero není nejlepší volba.
Zatím nejlepší výsledky mám na Arduinu Due.
Založen: Jan 17, 2007 Příspěvky: 6476 Bydliště: Husinec-Řež
Zaslal: út duben 13 2021, 17:36 Předmět:
Tak to Arduino Due beru zpět. Sice moc nešumí, ale offset dle datasheetu nic moc (můj kus je zrovna OK). Tedy spíše bych šel do toho STM, když už teda interní ADC. A číst chvilku po přepnutí kanálů...
Nemůžete odesílat nové téma do tohoto fóra. Nemůžete odpovídat na témata v tomto fóru. Nemůžete upravovat své příspěvky v tomto fóru. Nemůžete mazat své příspěvky v tomto fóru. Nemůžete hlasovat v tomto fóru. Nemůžete připojovat soubory k příspěvkům Můžete stahovat a prohlížet přiložené soubory
Informace na portálu Elektro bastlírny jsou prezentovány za účelem vzdělání čtenářů a rozšíření zájmu o elektroniku. Autoři článků na serveru neberou žádnou zodpovědnost za škody vzniklé těmito zapojeními. Rovněž neberou žádnou odpovědnost za případnou újmu na zdraví vzniklou úrazem elektrickým proudem. Autoři a správci těchto stránek nepřejímají záruku za správnost zveřejněných materiálů. Předkládané informace a zapojení jsou zveřejněny bez ohledu na případné patenty třetích osob. Nároky na odškodnění na základě změn, chyb nebo vynechání jsou zásadně vyloučeny. Všechny registrované nebo jiné obchodní známky zde použité jsou majetkem jejich vlastníků. Uvedením nejsou zpochybněna z toho vyplývající vlastnická práva. Použití konstrukcí v rozporu se zákonem je přísně zakázáno. Vzhledem k tomu, že původ předkládaných materiálů nelze žádným způsobem dohledat, nelze je použít pro komerční účely! Tento nekomerční server nemá z uvedených zapojení či konstrukcí žádný zisk. Nezodpovídáme za pravost předkládaných materiálů třetími osobami a jejich původ. V případě, že zjistíte porušení autorského práva či jiné nesrovnalosti, kontaktujte administrátory na diskuzním fóru EB.