Vítejte na Elektro Bastlírn?
Nuke - Elektro Bastlirna
  Vytvořit účet Hlavní · Fórum · DDump · Profil · Zprávy · Hledat na fóru · Příspěvky na provoz EB

Vlákno na téma KORONAVIRUS - nutná registrace


Nuke - Elektro Bastlirna: Diskuzní fórum

 FAQFAQ   HledatHledat   Uživatelské skupinyUživatelské skupiny   ProfilProfil   Soukromé zprávySoukromé zprávy   PřihlášeníPřihlášení 

Efektivní (střední) hodnota ze signálu o neznámé frekvenci

 
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů
Zobrazit předchozí téma :: Zobrazit následující téma  
Autor Zpráva
Wolfik



Založen: Jul 28, 2009
Příspěvky: 1093

PříspěvekZaslal: čt říjen 01 2015, 16:27    Předmět: Efektivní (střední) hodnota ze signálu o neznámé frekvenci Citovat

Tohle bude asi trapný dotaz narážející na krátery ve znalostech ohledně zpracování signálu, ale rád bych si v tom udělal jasno Embarassed

Mám několik zdrojů signálu, které mají stejnou frekvencí (přesněji jde o napětí získáné ze senzorů, snímacích rezistorů, převodů z transformátoru apod měřící proud v jedné smyčce). Jenomže tu frekvenci neznám, ale vím, že signál může být i stejnosměrný nebo dosahovat maximální hodnoty frekvence - řekněme konkrétně 100kHz. Další zjednodušení předpokládá, že se perioda v delším čase (jednotky sekund) nemění. Signál může být libovolně komplexní (obdelník, harmonický...).

Otázka zní jak přes MCUčko, které nějak získá vzorky (z interního nebo externího AD) vypočítat efektivní hodnotu. Je vztah RMS = √(∑ (V1^2 + ... + Vn^2) / n), kde Vx jsou jednotlivé vzorky a n je jejich celkový počet.
Jak určit počet vzorků a jakou frekvencí by měli být vzorky vzorkovány, aby pro signál nabývající frekvence od 0 do max. frekvence dal algoritmus rozumné přesné hodnoty rms? Existuje jiná cesta?
Příklad: ARM mcu, co má 12bitový převodník a umí vzorkovat 1Mhz(T=1us). Vzorkuju celou jednu vteřinu, abych pokryl výpočet rms ze signálu o frekvenci 0 až 100kHz, takže pro maximum 100kHz (T=10us) bych měl mít 10 vzorků. Budu mít v každém případě po vteřině vzorkování 1 000 000 vzorků o 16bitech (12 bitů převedu do 16bitové integeru). Když zanedbám nějaké zarovnání v datové paměti, tak zaberu 16 * 1 000 000 = 2 kB paměti. Krapec overkill ne? Je nějaký trik, jak to zjednodušit (průměrování, plovoucí okno). Bude nutné získat pro mcu informaci o frekvenci signálu, aby stanovil kolik period změří?

Určitě je řešení v použití specialních integrovaných obvodů, co na svém výstupu (analogově nebo digitálně) dávají RMS se slušnou přesností, ale jsou pěkně drahé (800kHz za 1000Kč), ale ušetřily by mi spoustu starostí Rolling Eyes

EDIT: Viz dále. Z původního zadání počítající s vypisováním efektivní hodnoty se vyklubala střední hodnota


Naposledy upravil Wolfik dne út říjen 06 2015, 17:24, celkově upraveno 2 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
kony2807



Založen: Jul 29, 2007
Příspěvky: 305
Bydliště: Ostrava

PříspěvekZaslal: čt říjen 01 2015, 19:11    Předmět: Citovat

Jaký je požadovaný dynamický rozsah?

EDIT:
Co tohle? http://www.analog.com/en/products/linear-products/rms-to-dc-converters/ad8436.html. Do 300Kč/ks v kusových množstvích.

_________________
________________________________
"Představte si to ticho, kdyby lidé říkali jen to, co vědí." K.Čapek


Naposledy upravil kony2807 dne čt říjen 01 2015, 20:08, celkově upraveno 1 krát.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: čt říjen 01 2015, 19:36    Předmět: Citovat

Já bych to s tou cenou převodníků TRUE_RMS -> DC zas tak nepřeháněl.

Třeba LTC1966 - www.linear.com/docs/3396

se dá sehnat už od 300Kč. To je cena jedné hodiny práce návrháře.

http://www.ebay.com/itm/LTC1966CMS8-LTC1966-SIGMA-RMS-to-DC-Converter-IC-/120596201245

Pak si to musíš spočítat, jestli strávit desítky hodin laděním softu (vyplatí se pro velký série) nebo koupil speciální IO (pro kusovku).

_________________
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[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Bernard



Založen: May 27, 2005
Příspěvky: 3647

PříspěvekZaslal: čt říjen 01 2015, 20:27    Předmět: Citovat

On ten soft nemusí být nějaká hrůza:
* umocňovat vzorky
* vypočítat střední hodnotu N-vzorek (inspirace)
* vypočítat odmocninu, třeba tabulkou a lineární interpolací
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: čt říjen 01 2015, 20:39    Předmět: Citovat

Nedávno jsme tady vedli debatu o memristoru - tohle je podle mě krásnej příklad kontrastu analogová/digitální technika a příklad jeho aplikace, kde by se dal krásně použít.
_________________
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[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
mtajovsky



Založen: Sep 19, 2007
Příspěvky: 3698
Bydliště: Praha

PříspěvekZaslal: po říjen 05 2015, 16:25    Předmět: Citovat

Longin napsal(a):
... že signál může být i stejnosměrný nebo dosahovat maximální hodnoty frekvence - řekněme konkrétně 100kHz...Vzorkuju celou jednu vteřinu, abych pokryl výpočet rms ze signálu o frekvenci 0 až 100kHz, takže pro maximum 100kHz (T=10us) bych měl mít 10 vzorků. Budu mít v každém případě po vteřině vzorkování 1 000 000 vzorků o 16bitech (12 bitů převedu do 16bitové integeru). Když zanedbám nějaké zarovnání v datové paměti, tak zaberu 16 * 1 000 000 = 2 kB paměti.

1) Potřebná paměť by byla 2MB (ne kB), pokud předpokládám, že MCU nestíhá mezi vzorky počítat druhou mocninu a sčítat.

2) Je třeba stanovit dolní frekvenci, něco - 100 kHz ne 0 - 100 kHz. To určí dobu vzorkování. Čistě ss složka na to nemá vliv. Takže doba vzorkování 1s by odpovídala dolní hranici 1, Hz abychom zachytili celou periodu.

3) Teď nevím jak to dokázat, ale intuitivně si myslím, že pokud bychom vzorkovali náhodně, tak můžeme vzorkovat i s nižší frekvencí než je 1 MHz. Statisticky by to mělo dát efektivní hodnotu. Když uděláme 100 tis. vzorků náhodně rozložených v čase 1 s, troufám si říct, že i tu sinusovku na 100 kHz celkem přesně navzorkujeme. Nejde o to zrekonstruovat ze vzorků původní průběh, ale trefit se do co největšího počtu různých fází signálu. Pokud se použije MCU s 32 bitovou floating point ALU, tak by se mělo stihnout za 10 µs udělat druhou mocninu a součet; dokonce možná i bez té ALU.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail
ZdenekHQ
Administrátor


Založen: Jul 21, 2006
Příspěvky: 25741
Bydliště: skoro Brno

PříspěvekZaslal: út říjen 06 2015, 14:24    Předmět: Citovat

Myslím, že ta Tvoje myšlenka v bodu 3 - t.j. metoda Monte Carlo - ten původní plán úplně pohřbí, to je skoro téma na diplomovou práci... Smile
_________________
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[?
]
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Zobrazit autorovy WWW stránky
Wolfik



Založen: Jul 28, 2009
Příspěvky: 1093

PříspěvekZaslal: út říjen 06 2015, 17:21    Předmět: Citovat

Problém se týkal univerzálního měřáku pro několik senzorů proudu s hall-effectem (galvanicky oddělené), který měřily stejný zdroj. Šlo ověřování přesnosti při různých teplotách (do 125 °C), čiže tu bylo určité omezení v součástkové základně (průmyslovejch 85°C versus 120°C a trošku výš).
Vedlo to na rozdělení problému, kdy modul se senzorama se bude strkat do teplotní komory a z něho povedou dráty k modulu s mcučkem, který bude na displej zobrazovat měřené hodnoty se senzorů resp. posílat do počítače a další zpracování.
Narážel jsem na senzory, co měli analogový výstup (většinou napětový výstup typicky 0-Vcc senzoru), protože u digitálního výstupu (typicky I2C, SPI, UART) jsou ty senzory většinou jenom pro DC.
V zadání stálo, že budeme měřit efektivní hodnoty. Jak poznamenal ZdenekHQ, jedná se o kusovku pro jednu firmu, takže ideální by bylo použtí rms-to-dc integráčů, protože jsou dělané do 125°C a SW pro mcu by byl čistě o automatizaci a nemusel bych se babrat se zpracováním signálu, integritou signálu a dat mezi drahými převodníky (nároky na rozlišení a teploty) a mcučkem, který není pár cenťáků vedle od výstupu senzoru.
Jenomže před chvílí jsem se dozvěděl, že primární cíl je stejnosměrná oblast a v případě střídavého signálu (ss + st složka) nás zajímá střední hodnota, i když původní rozkaz byla efektivní hodnota . Tedy to, co by naměřil multimetr na stejnosměrným rozsahu. (dělat diplomku pro firmu je občas jako kecat s holkou, co neví, co chce Very Happy )
Takže původní problém se krapec mění. Teď zkoumám řešení v průměrování vzorků nebo použití integračních převodníků nebo jiný způsob...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
Zobrazit příspěvky z předchozích:   
Přidat nové téma   Zaslat odpověď       Obsah fóra Diskuzní fórum Elektro Bastlírny -> Programování PIC, ATMEL, EEPROM a dalších obvodů Časy uváděny v GMT + 1 hodina
Strana 1 z 1

 
Přejdi na:  
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

Powered by phpBB © 2001, 2005 phpBB Group
Forums ©
Nuke - Elektro Bastlirna

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.


PHP-Nuke Copyright © 2005 by Francisco Burzi. This is free software, and you may redistribute it under the GPL. PHP-Nuke comes with absolutely no warranty, for details, see the license.
Čas potřebný ke zpracování stránky 0.16 sekund