Springen naar inhoud

DSP drievoudige frequentie genereren.


  • Log in om te kunnen reageren

#1

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 19 april 2013 - 18:54

Graag had ik een systeem (in opengnu ) gemaakt waardoor ik in staat ben een drievoudige frequentie te generen uitgaande van een ingang frequentie.

ik heb hiervoor volgende bedacht. in eerste instantie laat ik het signaal dat binnen komt vermenigvuldigen met zijn eigen we weten dan dat we het dubbele en de dc waarden genereren.
de dc filteren we eruit (laat ons ervan uitgaan dat dit gemakkelijk is) dan vermenigvuldig ik het nieuwe signaal terug met het ingangssignaal en bekom zo drie maal de ingangsfrequentie.

nu dien ik het ingangssignaal er nog uit te krijgen en bekom zo drie maal de ingangsfrequentie
echter dit lukt me niet.
ik zou terug het ingangs signaal van mijn uiteindelijk signaal willen aftrekken echter wat ik ook doe het blijft zitten in mijn uitgangsspectrum.

Iemand enige raad?
Groeten.

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 19 april 2013 - 19:33

Is het evt mogelijk van het signaal gewoon te hersamplen en terug af te spelen aan dezelfde snelheid? In dat geval kan je gewoon een 3-voudige downsampling doen.

#3

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 20 april 2013 - 10:49

klopt dat kan ook maar de bedoeling is dat ik het eventueel later analoog uit zou werken.
maw het feit dat ik met gnu radio werk is enkel maar te verificatie.
hier een prentje van wat ik bedoel: (iets gelijkaardig)
freq_tripler.JPG

bron : http://infoscience.e...iles/getPDF.pdf
hoe maak ik de nodige faseverschuivingen?

Groeten.

#4

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 20 april 2013 - 12:38

Ah ok. Mijn praktische kennis van analoge schakelingen is eerder beperkt, maar wiskundig kan je misschien beter met deze identiteit werken:
LaTeX (bron)

In MATLAB:
f = 20;
fs = 2000;
t = 0:999;
x = sin(2*pi*f*t/fs);
plot(t,x);
x3 = -4*x.^3 + 3*x;
hold on; plot(t,x3,'r');
Dat lijkt mij toch wat je wil bereiken en voor zover ik zie heb je dan geen miserie met een DC component of fase-shift.

#5

Bert F

    Bert F


  • >1k berichten
  • 2588 berichten
  • Ervaren gebruiker

Geplaatst op 20 april 2013 - 13:23

ik moet dus sin^3(x*t) uitvoeren dus sin *sin *sin kan ik dit in één keer? (eigenlijk wel digitaal)

indien niet dan moet ik het achter een doen en dan moet ik in woorden de sin nemen vermenigvuldigen met zijn eigen en dan terug met het oorspronkelijke signaal. dus toch een fase shift nodig om dat origineel signaal te krijgen?

of ik moet natuurlijk X^3 kunnen implementeren later in de analoge wereld. Dit kan waarschijnlijk omdat er ook EN poorten bestaan met drie ingangen.

Bedankt voor de hulp.

#6

Xenion

    Xenion


  • >1k berichten
  • 2606 berichten
  • Moderator

Geplaatst op 20 april 2013 - 13:46

Ik zou ik het ingangssignaal in 4 takken splitsen. De eerste 3 mix je dan samen om die derde macht te genereren en daar trek je dan uiteindelijk de 4e tak van af (met de nodige schalingen uiteraard). Maar er zijn waarschijnlijk nog praktische beperkingen waar ik je niet mee kan helpen.
Uiteindelijk kan je ook dat schema gebruiken dat je zelf gevonden had.

Ik denk niet dat je probleem nog van wiskundige aard is. Ik zal dit topic verplaatsen naar Praktische wetenschappen.





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Gesponsorde vacatures

Vacatures