[REC] Generator DDS na układzie AD9833

Projekty użytkowników forum zarówno sprzętowe, jak i związane z programowaniem w dowolnym języku.
Awatar użytkownika
ZbeeGin
User
User
Posty: 492
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: Śląsko-Zagłębiowska Metropolia
Kontaktowanie:

[REC] Generator DDS na układzie AD9833

Postautor: ZbeeGin » niedziela 02 lut 2020, 11:29

Dziś na tapecie rozgryziemy moduł generatora DDS opartego na układzie AD9833, który może dostarczyć jeden konfigurowalny przebieg. Do wyboru mamy sinus, trójkąt i prostokąt. Można go spiąć z dowolnym procesorem, który może się z nim komunikować za pomocą interfejsu SPI.
ad9833_mod.jpg

Maksymalna częstotliwość wyjściowa jest ograniczona do 12.5MHz, co wynika z taktowania układu przebiegiem 25MHz dostarczonym z generatora kwarcowego. Układ może dostarczać sygnału na poziomie 0.65V stąd w drugiej części układu znajduje się tandem: elektroniczny potencjometr MCP41010 oraz bardzo szybki wzmacniacz operacyjny AD8051 o stałym wzmocnieniu ok. 5V/V. Razem stanowią układ PGA - Programmable Gain Amplifier sterowany również poprzez interfejs SPI.
Oba elementy mogą pracować na tym samym interfejsie z uwagi na dwa wyprowadzenia wybierające: FS dla układu AD9833 i nCS dla potencjometru. Wystarczy tylko odpowiednio sterować nimi z pinów procesora.

Odzyskany schemat wygląda następująco:
dds_ad9833.png
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.
Ostatnio zmieniony niedziela 02 lut 2020, 16:50 przez ZbeeGin, łącznie zmieniany 1 raz.

Awatar użytkownika
piotrek
User
User
Posty: 155
Rejestracja: niedziela 05 lis 2017, 02:46

Re: [REC] Generator DDS na układzie AD9833

Postautor: piotrek » niedziela 02 lut 2020, 13:25

Moduł godny zainteresowania. Dodając jakiś prosty sterownik dostajemy konkretne narzędzie do swojej pracowni.
Ciekawy jestem jak wygląda kwestia zniekształceń sinusa i konfigurowalność kształtu trójkąta oraz PWM prostokąta.
I czy da radę dopasować wyjście do kabli 50 OM.

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1259
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: [REC] Generator DDS na układzie AD9833

Postautor: gaweł » poniedziałek 03 lut 2020, 16:17

piotrek pisze:Ciekawy jestem jak wygląda kwestia zniekształceń sinusa i konfigurowalność kształtu trójkąta oraz PWM prostokąta.

Konfigurowalność jest całkowicie sofrware'owa. Dajesz odpowiednie zaklęcie po SPI i na wyjściu jest to co powiedziałeś.
Kwestia zniekształceń... w przypadku prostokąta to trudno mówić o zniekształceniach. W przypadku przebiegów analogowych to im bliżej górnej granicy, to przebieg staje się bardzo schodkowy. Jak przy taktowaniu 25MHz zażyczysz sobie sin 10MHz, to zapomnij, że będzie to przebieg sin (podobnie z trójkątem).

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

SuperGość
Uber Geek
Uber Geek
Posty: 2346
Rejestracja: piątek 04 wrz 2015, 09:03

Re: [REC] Generator DDS na układzie AD9833

Postautor: SuperGość » poniedziałek 03 lut 2020, 17:02

W sumie tak powyżej 2MHz nie ma co się spodziewać jakichś szczególnych parametrów ;) ale jak zwykle :arrow: ZbeeGin dobra robota z rozrysowaniem moduliku.

Awatar użytkownika
piotrek
User
User
Posty: 155
Rejestracja: niedziela 05 lis 2017, 02:46

Re: [REC] Generator DDS na układzie AD9833

Postautor: piotrek » poniedziałek 03 lut 2020, 21:15

gaweł pisze: w przypadku prostokąta to trudno mówić o zniekształceniach

Dlatego interesowały mnie zniekształcenia sinusa :)
Z tego co wyczytałem w datasheecie nt konfigurowalności trójkąta i prostokąta jest słabo, bo nie można uzyskać np piły albo PWM innego niż 50%.

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1259
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: [REC] Generator DDS na układzie AD9833

Postautor: gaweł » wtorek 04 lut 2020, 01:04

piotrek pisze:Z tego co wyczytałem w datasheecie nt konfigurowalności trójkąta i prostokąta jest słabo, bo nie można uzyskać np piły albo PWM innego niż 50%.

To nie do tego służy. Przebieg o innym wypełnieniu niż 50%? Chcesz by dodatnia połówka sin miała inną częstotliwość niż ujemna (skoro sygnał ma dojść do zera)? W przypadku generowania trójkąta masz sygnał liniowo narastający a później liniowo opadający. Trójkąt jest "równoboczny". Niestety nie jest to piła. Jeżeli potrzebujesz innych przebiegów, to musisz zastosować inne rozwiązania.
Chcesz uzyskać PWM? W jakich granicach ma się zmieniać współczynnik? W jakich granicach częstotliwościowych ma pracować, bo to jeszcze nie skreśla tego rozwiązania.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1259
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: [REC] Generator DDS na układzie AD9833

Postautor: gaweł » wtorek 04 lut 2020, 13:42

Układ chyba wymaga korekty. Mając do dyspozycji fajne narzędzia, to można przesymulować wybrane fragmenty układu. Przykładowo tor analogowy:
dds0.png
po wklepaniu do programu LTSPICE wygląda:
dds1.png
Co prawda w bibliotece LTSPICE nie znalazłem układu AD8051 i do symulacji zastosowałem AD8039 (ma lepsze parametry niż AD8051). Wynik symulacji pokazuje następujące przebiegi (dla f=1MHz, ofset=0,65V z niewielką amplitudą sygnału =0.2V).
dds2.png
Nie masz wymaganych uprawnień, aby zobaczyć pliki załączone do tego posta.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

SuperGość
Uber Geek
Uber Geek
Posty: 2346
Rejestracja: piątek 04 wrz 2015, 09:03

Re: [REC] Generator DDS na układzie AD9833

Postautor: SuperGość » wtorek 04 lut 2020, 13:56

AD8039 moze ma i lepsze parametry ale AD8051 jest w zasadzie rail to rail a AD8039 chyba tylko do +/-4V przy zasilaniu 5 stad i taka symulacja ponadto raczej tam jest wzmocnienie 6 a nie 5 V/V i tu zgoda powinna byc może korekta.

Awatar użytkownika
ZbeeGin
User
User
Posty: 492
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: Śląsko-Zagłębiowska Metropolia
Kontaktowanie:

Re: [REC] Generator DDS na układzie AD9833

Postautor: ZbeeGin » wtorek 04 lut 2020, 15:15

Napisałem "ok. 5V/V" bo wiadomo, że wzorowo nie będzie. W najgorszym przypadku gdy wliczymy tolerancję rezystorów na poziomie 5% - gdyż na pewno nie są tam zastosowane rezystory 1% lub lepsze - uzyskamy wzmocnienie 5,66(6)V/V.

Awatar użytkownika
gaweł
Geek
Geek
Posty: 1259
Rejestracja: wtorek 24 sty 2017, 22:05
Lokalizacja: Białystok

Re: [REC] Generator DDS na układzie AD9833

Postautor: gaweł » wtorek 04 lut 2020, 16:19

Problem leży w innym miejscu. By nie wprowadzać w błąd sięgam do źródeł. Wzmocnienie w układzie nieodwracającym jest 1+R3/R4, jest 6, tak jak napisał wyżej Wojtek.

Prawdziwe słowa nie są przyjemne. Przyjemne słowa nie są prawdziwe.
Lao Tse

Awatar użytkownika
ZbeeGin
User
User
Posty: 492
Rejestracja: sobota 08 lip 2017, 17:16
Lokalizacja: Śląsko-Zagłębiowska Metropolia
Kontaktowanie:

Re: [REC] Generator DDS na układzie AD9833

Postautor: ZbeeGin » wtorek 04 lut 2020, 16:55

Policz z tolerancją jak ja to zrobiłem. Do tego dojdą "nieidealności" samego wzmacniacza. Naprawdę bezpieczniej będzie napisać tak jak napisałem niż iść w "ideały ze wzorów".

Awatar użytkownika
piotrek
User
User
Posty: 155
Rejestracja: niedziela 05 lis 2017, 02:46

Re: [REC] Generator DDS na układzie AD9833

Postautor: piotrek » wtorek 04 lut 2020, 18:47

gaweł pisze:Przebieg o innym wypełnieniu niż 50%? Chcesz by dodatnia połówka sin miała inną częstotliwość niż ujemna (skoro sygnał ma dojść do zera)?


Obawiam się, że mnie nie zrozumiałeś. Nie spotkałem się jeszcze aby ktoś stosował współczynnik PWM dla sinusa, stąd pytałem w domyśle o przebieg prostokątny a nie modulację FSK przebiegu sinusoidalnego. Tak czy owak mniejsza z tym. Pewne źródła wskazują na AD9911, ewentualnie AD9834+AD9833 jako układy które potrafią wygenerować trójkąt o nierównych ramionach.


Wróć do „DIY”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości