discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Re: Mulitply PN sequence to real and convert outp


From: Bob McGwier
Subject: Re: [Discuss-gnuradio] Re: Mulitply PN sequence to real and convert output to complex - Question
Date: Mon, 15 Jun 2009 19:01:06 -0400
User-agent: Thunderbird 2.0.0.21 (Windows/20090302)

Sir:

Welcome to GnuRadio and happy to have a newcomer. Let me spend some time on netiquette here. Asking the same question, many times in many different ways is a sure fired way to get LESS help and for it to be delayed by an irritation factor.

To convert a complex signal to real, it depends on where you are doing it. You are writing what looks like C/C++. There are gr_complex types for GnuRadio in C++. Let us assume you have a complex number X. Then X.re() is the real part.

Your x(t) is not "making the signal real", it is modulating the complex signal Y at baseband by the complex carrier exp(j 2pi t fc).

This gives

Yc(t)Cos(2*pi*fc*t) - Yi(t)Sin(2*pi*fc*t)



as the REAL PART of that modulation process.
Yc(t)Sin(2*pi*fc*t) + Yi(t)Cos(2*pi*fc*t)  is the imaginary part of that 
complex modulation process.



This is not taking the real part, or "making it real",  it is making a passband 
signal out of a baseband signal.

Your question is somewhat ill posed.  Assuming that you meant modulating the 
signal away from zero frequency by
the carrier frequency fc, and taking the real part to get a passband signal, 
then the answer to your question is yes, you did it right.

Bob




Peng Huo wrote:
sorry a correction,

    To convert this complex signal to a real, one has to do

    this according to the following formula, isn't it?

x(t) = Yc(t)Cos(2*pi*fc*t) - Yi(t)Sin(2*pi*fc*t) where Yc(t) -> Inphase component,Yi(t)-> Quadrature component, fc -> Carrier frequency, x(t) -> real signal.



    I looked at the block "complex_to_real" and it outputs the Inphase component
    as the real signal. Is it because, "fc" is 0Hz as the signal being at
    baseband? I think this sounds right.



    I want to mulitply this real signal with a PN sequence and then pass the 
result
    on to a costas loop which takes a complex input. I want to know how can we
get a complex signal from a real one. Is there a block that does that?


    The book "Communication Systems" by Simon Haykin 2nd edition says,
    - The complex envelope g_complex(t) equals a frequency shifted version of 
the pre-envelope g+(t) as shown
                      g_complex(t) = g+(t)*exp(-j2*pi*fc*t), where fc-> carrier 
frequency.


      and the pre-envelop is defined as, g+(t) = g_real(t) + j*g_hilbert(t).

    I suppose this is what I need to do to get what I want. Is there a block 
that does it all?

    Thanks,
    Peng.


    P.S. - I am sorry but I thought to make sure before I go ahead so that I 
don't spend time doing things that may be unnecessary.




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

_______________________________________________
Discuss-gnuradio mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


--
(Co)Author: DttSP, Quiktrak, PowerSDR, GnuRadio Member: ARRL, AMSAT, AMSAT-DL, TAPR, Packrats,
NJQRP, QRP ARCI, QCWA, FRC.
"You don't need to see the whole staircase, just
take the first step.", MLK.
Twitter:rwmcgwier
Active: Facebook,Myspace,LinkedIn






reply via email to

[Prev in Thread] Current Thread [Next in Thread]