DDS - AD9834 rekonstrukcni filtr

Draček Fráček dracek.fracek na gmail.com
Čtvrtek Březen 17 02:18:07 CET 2011


Super zkusit to zrealizovat a tim se vracim na zacatek, k filtrum.
Pokud to spravne chapu tak pri pouziti  66.66MHz (f2) hodin, pro
generovani rekneme 100kHz (f1) poleze z  DDS, krome 100kHz,
2 harmonicka na 200kHz s -50dB,
3 harmonicka na 300kHz s -50dB,
PPT ani nevim jak je to cesky na 9.639MHz s -70dB,
pak rozdil f2-f1  s -56.4dB.

Pokud pouzijeme pro snimani 16bit ADC bude dynamicky rozsah mereni cca
90dB, tedy vse nezadouci  s vice jak -90dB muze negativne ovlivnit
mereni.
Znamena to tedy, pokud ma 2 harmonicka -50dB, musime ji potlacit o
dalsich min -40dB?
Pokud ano a mame to udelat pasivnim filtrem musel by tento byt 7 radu,
rekl bych. Plus pokud by se melo merit na (100 Hz,1kHz,10kHz,100kHz)
musel by se pro kazdou f navrhovat zvlastni filtr a ty pak prepinat.
Nebo lze na vystup DDS pouzit rekneme filtr 3radu, ktery potlaci
druhou harmonickou o -18dB, treti o -28dB.
Nasledne pak pouzit ADC s 2MSPs a na data aplikovat digitalni filtr
FIR 200 Taps, 4 radu, ktery potlaci 2harmonickou o dalsich -24dB
Nebo to je cele hloupost?

Mimochodem, pri hledani sw pro navrh filtru jsme narazil na toto
http://www.nuhertz.com/ , stranky delal nejaky graficky invalida,
podobne i uzivatelsky interface a graficky vzhled programu Filter
Solutions , ale z hlediska funkcnosti to asi umi uplne vse, 12 typu
filtru, v pasivnim, aktivnim, digitalnim, spinanem C a ditrib.
provedeni. V 90% pripadu vlastne ani nevim co to umi, viz video na
strance.

Martin


>ano, nieco v tom zmysle.

V pripade dvoch dds je to velmi jednoduche. Princip generovania
frekvencie DDS je uplne jednoducha delicka racionalnym cislom. Toto je
navyse binarne. Takze ak mame dve nezavisle delicky ktore maju spolocnu
hodinovu frekvenciu a naprogramujeme deliaci pomer do jednej n a do
druhej 4n tak budu vystupy presne synchronne.

Faza signalu 1 a 2 nemusi byt definovana, ale bude cely cas konstantna.
Toto bohate staci na meranie napatia aj prudu pokial sa bude vzorkovat
jednym rovnakym prevodnikom, najprv napatie, potom prud, obidva su
vektory vztiahnute ku vzorkovacej frekvencii, ked sa urobi rozdiel fazy
medzi napatim a prudom ten staticky fazovy ofset sa automaticky odcita.
Toto riesenie je velmi robustne.

Este som vecer trochu rozmyslal nad tym delicom v procesore. Toto je
tiez schodna cesta.

Ak mame hodiny 66.6MHz (15ns) a chceme generovat povedzme 100kHz na
meranie mozeme naprogramovat system nasledovne:

- Delicka v procesore vygeneruje pulz kazdych 166 alebo 167 hodinovych
cyklov, co nam da vzorkovaciu frekvenciu 401 204.8 Hz resp. 398 802.3 Hz.
- Meracia frekvencia bude teda 99 700.5 Hz resp. 100 301.2 Hz. Spominana
DDS (AD9834) na ladiace slovo sirky 28 bitov, co nam dava krok ladenia
fclk/2^28 = 0.248104 Hz
Naprogramujeme ladiace slovo 401 849 (da nam frekvenciu 99 700.478)
alebo 404 270 (da nam frekvenciu 100 301.139 Hz)
- Vzorkovacia frekvencia a budiaca frekvencia sa nelisi o viac ako
zlomok promile, takze digitalny IQ demodulator bude mat takmer perfektne
rozostavene vzorky (po 90 stupnov) a dokaze vyuzit celu presnost AD
prevodnika. U 16 bitovych prevodnikov su to kludne tisiciny stupna fazy
a stotiny percenta amplitudy.

Potom sa urobi len trocha matematiky s I a Q komponentami a mame meranu
impedanciu :-)

b.


Další informace o konferenci Hw-list