![Přidat otázku mezi oblíbené Přidat otázku mezi oblíbené](https://static.poradna.net/images/post/action/favorite.png)
Aproximace množiny bodů křivkou (a elipsou) realizovatelná na 12MIPS MCU
Ahoj,
zase tu jsem s oříškem. Moje zařízení produkuje (hodnoty X a Y) něco takového na základě hodnot z AD převodníků:
Je to UI "křivka" dvou LED diod zapojených paralelně, přičemž jsou navzájem otočené. Jako výpočetní jednotku mám k dispozici pouze 12MIPS osmibitový mikrokontroler PIC18F4550. A teď potřebuji za krátkou dobu (maximální přípustná doba je 100ms, to máme nějakých 1,2 milionu instrukčních cyklů) z množiny bodů (je jich 128, obrázek je zvětšen tak, aby jeden bod měl velikost 4x4 pixelu na tom obrázku) dokázal vytvořit křivku. Obrovskej problém vidím v tom, že u diaků a hlavně, kondenzátorů a indukčností, to není takto jednoduché a jedna hodnota X má přiřazeny dvě různé hodnoty Y - je to prostě elipsa. Už jsem toho zkoušel hodně a nic mi zatím nedalo uspokojivý výsledek. Třeba nejjednodušší algoritmus - projíždět všechna X a průměrovat Y. To sice u diod jakžtakž funguje (i když nic moc), ale u kondenzátorů to pochopitelně udělá rovnou čáru. Oversampling už využívám a zpřesnit samotné měření tedy není možné. Už takhle jsem mimo specifikace a povolené rozsahy délky AD převodu. Pakliže by někdo věděl o algoritmu, který by toto dokázal, ať mi prosím napíše.
Díky moc za odpovědi.
To mi neříkej, že na toto není 12MIPS dost...![:-)](https://static.poradna.net/images/smiley/smile.gif)
Jo, já potřebuju zobrazit napěťově-proudové charakteristiky u diod (1 nebo 2 exponenciální fce), kondenzátorů (elipsy), rezistorů (přímka), tunelové diody ( tunnel.gif ), dalších součástek + jejich kombinací.
V tom pripade je ale vzorec znamej, ne? Aby jsi dokazal pak hledat pomoci regresni analyzy vzorce, ne?
Najdeš si předpis toho pruběhu a necháš "otevřené" keoficienty, které pak dopočítáš na základě metody nejmenších čtverců
Vzorec známý není, protože tam nebude nabídka toho, co to je (výběr součástky), já prostě potřebuju z bodů, které mají určitou chybu udělat přibližnou plynulou čáru.
Zkus se ještě mrknou na metodu nejmenších čtverců, snad by mohla pomoct. Nevím to jistě, už si z analýzy dat pamatuji pramálo...