DDS - AD9834 rekonstrukcni filtr

balu@home daniel.valuch na orange.fr
Středa Březen 16 11:55:53 CET 2011


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.



On Mar/16/2011 11:22 PM, j.Krajinka na seznam.cz wrote:
> Takze, pokud bude frekvence mericiho sin 100kHz, budeme chtit merit 4x za periodu pomoci ADC, ktery se spousti pulsem , nastavime na druhe DDS hodiny 400kHz a tim padem mame za periodu 4x sestupnou hranu, ktera odpali prevod.
> Jsem DDS nepoliben, proto se zeptam, jak se zajisti, ze obe DDS pojedou synchronne?
> Jak se tim generuje obdelnik, to se vyuziva SIGN BIT Out te AD9834?
>
> Asi to je univerzalnejsi reseni, ale vyplati se jen pokud je frekvence z ktere jede DDS>>  nez frekvence na ktere pripadne pojede citac Pokud oboje pojede na stejne frekvenci a je citac v procesoru asi se nevyplati osadit druhou DDS, pokud jede citac na 40 a DDS na 66 ci 75 (teoreticke max) je otazka zda se tech 6$ vypati.
> Skoda, ze AD9834 neumi 100MHz ci 200MHz hodiny pak by byla volba jasna. Jsou i DDS jedouci z vyssich hodin, ale jednak nejsou v tak malem pouzdru a nestoji 6$.
>
> Jeste mi neni jasne, pokud se pouzije 16bit ADC s dynamickym rozsahem cca 89dB, prijde mi ze bude nutne pouzit nejaky filtr pred samotnym ADC, jinak to bude tak 6 bity merit spis sum nez uzitecny signal. Nicmene s filtrem asi nepujde pouzit digitalni mereni IQ , jelikoz filtr pozmeni vlnu. Nebo jsme zcela mimo?
>
> Jirka
>
>
> Jirka
>
>
>
>
>> druha dds by generovala frekvenciu (hodiny) ktore budu v presnom pomere
> frekvencie s meranym signalom. Nie je dolezite ci je to sinus alebo
> obdlznik, v tomto pripade to bude obdlznik.
> Tento signal bude spustat prevod u AD prevodnika. U rychlych prevodnikov
> nie je vstup start, su tam len hodiny a prevadza stale. U tychto
> pomalsich su interne hodiny a startovaci vstup. Z hladiska funkcie je to
> to iste. Pre princip demodulacie a vektoroveho merania je dolezite prave
> to presne spustanie.
> Citac by mohol byt tiez riesenie, ale strati sa tym univerzalnost. V
> pripade dvoch DDS je mozne merat na lubovolnej frekvencii v rozsahu
> rychlosti prevodnika.
> V pripade pouzitia interneho citaca na generovanie hodin a dds na
> generovanie budiaceho signalu to nebude take plynule. Urcite sa to ale
> bude fungovat v mnozstve frekvencnych bodov, kde delic hodinovej
> frekvencie bude generovat stabilnu frekvenciu bez jitteru.
> b.
>
>
>
>
> On Mar/15/2011 7:49 PM, j.Krajinka na seznam.cz wrote:
>> Jak to myslite s tou druhou DDS? Minimalne PulSAR prevodniky od Analog maji interni hodiny a spousti se externim signalem. Celkove mi neni uplne jasne k cemu by byl sin z druhe DDS, pokud jsme to spravne pochopil tak jde o sejmout I a pak co nejpresneji k nemu sejmout druhy vzorek otoceny o 90 Q.
>> Nejpresnejsi co mame jsou hodiny ridici DDS tedy 66.6 MHz , neni proto nejlepsi pouzit citac tikajici na techto hodinach?
>> 24bit citac by mel stacit na nejaky 250ms tedy i pri 100Hz na neajkych 25 period.
>>
>>
>> Jirka
>>
>>
>>
>>> Dolezite pri principe digitalneho iq demodulatora je mat zviazanu
>> vzorkovaciu frekvenciu s frekvenciou signalu. Nemusi to byt
>> stvornasobok, ale musi to byt nejake racionalne cislo. Ak by sa mala
>> meracia frekvencia menit (zrejme preto je na budenie pouzita DDS) asi by
>> bolo najjednoduchsie pouzit druhu DDS s rovnakou hodinovou frekvenciou
>> na generovanie hodin ADC. Cipy su lacne ($6) a zeru par mA takze by to
>> az tolko nebolelo.
>> Je to samozrejme trochu zlozitejsie ako prevodnik zaveseny na nohu
>> procesora, ale poskytne to uplne univerzalne meranie v celom frekvencnom
>> rozsahu AD prevodnika s tym ze odpadaju starosti o presnost casovania
>> lebo oba kanaly su zviazane spolocnymi hodinami a vystupna frekvencia je
>> deterministicky definovana z hodinovej frekvencie.
>> b.
>>
>>
>>
>> On 3/15/2011 12:30, Draček Fráček wrote:
>>> Pocat to chapu, me spis slo o praktickou realizaci.
>>> Predpokladejme max frekvenci sinus 100kHz
>>> At se to dobre pocita, k rizeni MCU s hodinami 40MHz
>>> Jako ADC rekneme AD7623 16bit 1,33MSPS , ma trigrovaci spoust, doba
>>> prevodu 750ns
>>>
>>> DDS AD9834 na vystup SIGN BIT Out, ktery se nahodi pri nahozeni MSB,
>>> to budeme povazovat za zacatek cas 0.
>>> SIGN odpali casovac, ktery odpocita 1250ns a spusti ADC (doba prevodu
>>> 750ns + neco na presypani do MCU), dalsi prevod o 90St dalsi prevod
>>> tedy v case 3750ns,
>>> dalsi v case 6250ns a posledni v 8750ns.
>>> Prepneme z mereni napeti na mereni proudu a v nejake jine periode vse
>>> zopakujeme.
>>> Slo by to takto realizovat?
>>>
>>> Takhle na prvni pohled to vypada pekne, ale casove merime 90st 2500ns
>>> s chybou rekneme 25ns tj. 1%, je to pouzitelne pro rozumne mereni?
>>> Priznam se ze bych predpkladal nutnou presnost o jeden az dva rady vyssi?
>>>
>>> Nebude pred ADC nutny nejaky antialias filtr?
>>>
>>>
>>> Dik
>>>
>>> Martin
> _______________________________________________
> 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