SMT 160 a PIC

J. Danhel j.danhel@centrum.cz
Pondělí Duben 19 17:13:02 CEST 2004


Zdravim, nasel jsem doma nejaky popis zpracovani signalu z toho cidlo. Kod k
tomu nemam.

J. Danhel

-------------------------------

Zpracování signálu z čidla SMT 160 30 Vpravidelných časových intervalech
zjišťujeme stav výstupu. Je možno použít velmi pomalé vzorkování. Ze
známého celkového počtu vzorků a počtu vzorků s úrovní H vypočteme
střídu. (duty cycle - DC)

DC = 0,320 + 0,0047*t

DC - 0,320 = 0,0047*t

(DC - 0,320)/0,0047 = t

DC/0,0047 - 68,085 = t

pro 65536 vzorků (přetečení 16 bit čítače)

(x/65536)/0,0047 - 68,085 = t

x/308,0192 - 68,085 = t

dělit 308 a odečíst 68 se už dá udělat na procesoru, ale chtělo by to
zjednodušit.

Změna celkového počtu vzorků tak, abychom dělili 256

(x/?????)/0,0047 - 68,085 = t

65536*0,0047 = 308,0192

?????*0,0047 = 256

256/0,0047 = 54468,085

Vzorkujeme tedy 54468 krát. Vzorky s úrovní H ukládáme do 16 bit čítače
(TempHi:TempLo). Na konci měření máme teplotu v TempHi, stačí jen
odečíst 68 a máme výslednou teplotu. V TempLo je poměrná část jednoho
stupně. Stačí tedy převést na např. setiny (procenta) pomocí rutiny
BYTE2PERCENTAGE. Tzn. prakticky vydělit TempLo 2,56. Dělit 2,56 je to
samé jako násobit 0,390625 (přesně). Toto číslo se dá převést do
dvojkové soustavy jako 0,011001 takže se dá použít jednoduchého násobení
s využitím instrukcí rotace a součtu. Jemné doladění přesnosti je možno
provést změnou celkového počtu vzorků.

Přesnot se dá zlepšit zvýšením celkového počtu vzorků. Vzorkovací
frekvence nesmí být malým celočíselným násobkem či dílem frekvence
výstupního signálu čidla (nesmí být vzájemně korelované). Mohlo by dojít
k pravidelnému vzorkování v době, kdy je výstupní signál opakovaně v
jedné úrovni. Dále hrozí ztrhávání oscilátoru čidla rušením na napájení.
Praxe ukazuje, že tento způsob je nepoužitelný je-li vzorkovací
frekvence menší než dvojnásobek frekvence signálu čidla. Tato metoda se
dá použít pouze v případě, že po dobu vzorkování proběhne velký počet
period signálu z čidla. (odhadem alespoň 100). Při menším počtu je údaj
velmi nestabilní. Pokud máme rychlý procesor je lepší použít metodu
přímého měření periody a střídy signálu.


----- Original Message ----- 
From: "Jan Matuska" <marver@centrum.cz>
To: <hw-list@mailman.nethouse.cz>
Sent: Monday, April 19, 2004 3:12 PM
Subject: SMT 160 a PIC


> Zdravim,
>
> zrovna tvorim, respetive dodelavam do jedne konstrukce teplotni cidlo a
asi nejrozumeji vychazi SMT 160. Koukal jsem na datasheet a je tam pomerne
narocnej prepocet stridy na teplotu. Nemate nekdo uz hotovej nejakej
algoritmus na zjednoduseny prevod te stridy na teplotu. Ma to merit
orientacni venkovni teplotu.
>
> Predem dekuji za pomoc.
>
>
> Jan Matuska
> marver@centrum.cz
>
>


----------------------------------------------------------------------------
----


_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
HW-list@mailman.nethouse.cz
http://nethouse.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list