Need to generate 600 Hz signal

6 views (last 30 days)
Fumihiko Sato
Fumihiko Sato on 24 Sep 2024
Commented: Fumihiko Sato on 10 Oct 2024
Hello expert,
I am currently working on a project involving the generation of a 600 Hz signal in a Simulink model.
I am encountering a few challenges that I would appreciate your expertise on:
  1. Symbol Rate: I understand that for Binary Phase Shift Keying (BPSK), the symbol rate is equivalent to the bit rate. To achieve a bandwidth of 600 Hz, I am considering setting the bit rate to 600 bps. Is this the correct approach, or do I need to consider other factors (e.g., filtering effects) that might influence the bandwidth?
  2. Sample Time and Stop Time: I would like guidance on the appropriate sample time and stop time settings for my simulation. Currently, I have set the sample time to 1/600 seconds, which corresponds to one sample per bit. Additionally, for a frame length of 208 bits, I calculated the stop time to be approximately 0.347 seconds to transmit one frame. Is this a correct configuration?
  3. Spectrum Analyzer Placement: I am also unsure about the optimal placement of the Spectrum Analyzer block in my Simulink model. Could you please advise on the best practice for integrating this block to accurately visualize the generated signal's frequency spectrum?
Below are each block information that I set.
RandomPayloadIP(Matlab Function) : Use for generate the Payload String. (I set sample time to 1/600)
SigfoxdataFrame(Matlab Function) : Use for generate the bitStream from Payload String. (Fix output length , 208)
Constant [10x1] : to add 0 at the tails of bistream.
DBPSK : DBPSK modulation
RRC tx Filter (Roll of Factor = 0.5, Filter Span in Symbol = 10, Output Sample per symbol = 8)
And here is what Spectrum look like.
The signal bandwidth is 165 kHz with SA sample Rate = 1.0464 MHz.
But what I need is just 600 Hz wide signal or very close to 600 Hz. Is it possible?
Thank you for your time and assistance!
Best Regards,
Fumihiko Sato

Accepted Answer

Aravind
Aravind on 4 Oct 2024
Edited: Aravind on 4 Oct 2024
“Symbol Rate: ...............................might influence the bandwidth?”
To achieve a bandwidth of 600 Hz, setting the bit rate to 600 bps would work ideally. However, there are several practical considerations and factors that might influence the actual bandwidth required. To account for these factors, you might choose a bit rate slightly lower than the desired bandwidth if you plan to use filtering with a non-zero roll-off factor.
“Sample Time and Stop Time:………….. Is this a correct configuration?”
Ideally, this would be the correct configuration to obtain a signal of bandwidth of 600 Hz, when the frame length is 1, i.e., passing one bit at a time. However, from your model, I can see that you are passing vector inputs to the DPBSK modulator. In the official MATLAB documentation at https://in.mathworks.com/help/dsp/ug/sample-and-frame-based-concepts.html#bso3re7, it is given that when passing vector inputs, the modulator blocks consider each vector input as one frame. In this situation, the sample time must be the time length of each frame = . In this case, it would be . To run a simulation where only one frame is transmitted, then the stop time must also be set to the time length of each frame, which in this case would be approximately 0.347 seconds as you have calculated.
“Spectrum Analyzer Placement……… visualize the generated signal's frequency spectrum?”
The “Spectrum Analyzer” block displays the frequency spectrum of any signal that is provided at its input. In your model, the “Spectrum Analyzer” block is placed in the right location to obtain the frequency spectrum of the filtered signal.
Hope this helps!
  1 Comment
Fumihiko Sato
Fumihiko Sato on 10 Oct 2024
Dear Aravind,
Now I can geneate the signal approximately to 600 Hz bandwidth as needed.
Although it not exactly 600 Hz due to roll off factor from RRC tx filter.
Thank you very much for your good advice.
Best Regards,
Fumihiko Sato

Sign in to comment.

More Answers (0)

Products


Release

R2024b

Community Treasure Hunt

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

Start Hunting!