how to set samplerate in QAM Modulator?

2 views (last 30 days)
Giovanni on 31 Aug 2015
Commented: Noah Wölki on 23 Aug 2021
since some time I am struggling with a little inconvenient. I am trying to generate a M-QAM signal. In past I always did it by generating a stream of binary data with a certain length by using the "randi" function, I was configuring a modem.qammod object by using the parameter M (order of the modulation) in advance, and using it to generate my transmitted symbols. After this I was adding my pulse shaping raised cosine filter, filtering the number of samples I gave as input parameter after the apposite upsampling. Unfortunately the quality of the signal´s constellation I was obtaining was not optimal, after the raised cosin filter I get a constellation which is not really clean. My problem is also, defining the bandwidth of my signal. This normally depends on the symbolrate and on the pulse shaping filter. I have tried to use the function implementing the Rectangular QAM Modulator (comm.RectangularQAMMModulator()), but still my problem is related to the way I define the reltationship between the samplerate and the band occupied by my signal. In general with those functions I get the constellation I am looking for, but how can I then get the relationship with the samplerate and draw the PSD of my baseband signal with pwelch for instance???
  1 Comment
Noah Wölki
Noah Wölki on 23 Aug 2021
hello Giovanni,
here I am 6 years later struggling with the same problem. I have to generate QAM signal but want to limit bandwidth myself (qammod etc. just take full nyquist spectrum).
Have you found a way to do this? Would be very helpful to know even though im very late on this question :)
Best regards

Sign in to comment.

Answers (0)


Find more on Get Started with Communications Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!