Jak na kalibracni krivku?

Jaroslav Buchta jaroslav.buchta na hascomp.cz
Sobota Leden 26 10:40:34 CET 2019


Zrovna v arduinu (ATMEGA) by mel byt prevodnik dost linearni, pokud neni 
nejaky nesmysl v zapojeni analogoveho vstupu.
Bezne staci kalibrovat stylem offset, gain, kdy se nejdrive odecte 
offset pro nulovou hodnotu a pak se to nasobi koeficientem aby z toho 
vypadla realna vystupni hodnota. Minimalne to bude presne sedet ve 2 bodech.
Pro vic bodu to delam jednoduse tak, ze techto dvojic mam vic a podle AD 
hodnoty se vybere, prevod je spojity jen tam budou lehka zalomeni prubehu.
Dost nelinearni AD prevodnik ma treba ESP32, maji na to v API i funkci, 
ktera to podle nejake tovarni kalibrace linearizuje (a to celkem dobre). 
Mozna tam by se dala najit inspirace, nezkoumal jsem to podrobne ale 
zdrojovy kod prepoctu je docela slozity.

Dne 26.01.2019 v 9:05 Milan Kratochvíl napsal(a):
> Zdravim
>
> Pokud to máte jen takto na hraní, nestačila by funkce map co je v 
> arduinu? Zadá se spodní a horní hodnota vstupu a výstupu, dále vstupní 
> hodnota a vypadne spočtená výstupní. Sice to nebude linearizovat, ale 
> na začátku a na konci budete mít stejné hodnoty. Uprostřed se budou 
> lišit. Otázka je jak moc.
>
> Milan
>
> Dne 25. 01. 19 v 18:30 Pavel Kutina napsal(a):
>> Zdravim,
>>
>> porad si tu hraji s merenim napeti zdroje a celkem mi to chodi, resp. 
>> ukazuje to neco podobneho, jako multimetr, co je k tomu pripojeny.
>>
>> Akorat za AD prevodnik ma daleko k linearite, takze pokud srovnam 
>> nejakou kalibracni konstantou zobrazenou hodnotu na hornim konci 
>> rozsahu, nesedi dole ani vprostred. Takze asi rozdelit rozsah na 
>> nekolik casti a pro kazdy z nich pouzit samostatnou konstantu. Ale 
>> jak? Znamena to, ze na predelu tech casti to na vystupu udela "zub", 
>> zobrazena hodnota skoci vic, nez odpovida zmene na vstupu. Jak se 
>> tohle dela "doopravdy"?
>>
>> Pro technicke stouraly - ano, je to zbytecne a nepotrebuju to. Ale 
>> chci to :) Je to porad takove hrani - zatouzil jsem po tom, aby muj 
>> zdroj ukazoval napeti ne na neprosvicenem LCD, ale na ctyrmistnem LED 
>> displeji, a i kdyz nebudou hodnoty absolutne presne a bude to treba 
>> cestovat se zahratim zdroje, uvidim alespon skokovou zmenu v odberu 
>> proudu v radu miliamper.
>>
>> Pro tento ucel jsem pouzil moduly s TM1637, pripojil je k Arduinu 
>> (Pro Mini, nadratovane do fyzicky prime nahrady tech modulu s 7106) 
>> se zapnutou vnitrni referenci a nasel knihovnu pro oversampling, kde 
>> za cenu jistych casovych ztrat autor dostava k 16bit rozliseni. 
>> Kupodivu to vypada, ze to celkem funguje - ano, dala by se pouzit 
>> lepsi reference, dal by se pouzit lepsi AD prevodnik, dalo by se na 
>> to cele vykaslat a nechat, at si to maluje co chce :)
>>
>> No a jak to tedy cele zkalibrovat, aby mi neskakala zobrazovana 
>> hodnota na predelech tech useku? Nejak mi k tomu chybi vyfutrovani 
>> nejakou teorii...
>>
>> Diky za dobre rady (ty, ktere mi budou rikat, ze se na to mam 
>> vykaslat, za dobre tak uplne nepovazuji :)
>>
>> Pavel Kutina
>>
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list