Variable frequency Square pulse - Simulink

Hi,
I would like to know how can I generate a variable frequency controlled square pulse with 50% duty cycle in Simulink? I wish to vary the frequency in the range of 2KHz to 5.5KHz. It would be nice if you guys could help me.
Thanks a ton!

Answers (1)

To generate a square pulse in Simulink, the Pulse Generator block can be used.
Assuming we are using Time based for Pulse type parameter and Use simulation time for Time (t) parameter, the desired waveform of the pulse can be configured by setting the Amplitude, Period (secs), Pulse Width (% of period), and Phase delay (secs) parameters.
Suppose we are using default values for Amplitude and Phase delay (secs). The Pulse Width (% of period) parameter should be set to 50 in order to produce a pulse with 50% duty cycle.
To vary the frequency of the pulse, the Period (secs) can be set based on a base workspace variable. For example, you can define a base workspace variable for frequency:
f = 2000;
Then you can set the Period (secs) parameter to 1/f, which generates a pulse with a frequency of 2 kHz. By varying the value of f, you will be able to vary the frequency of the generated pulse.
To learn more about the Pulse Generator block, please refer to the documentation page on Pulse Generator.

8 Comments

Thanks for the reply. But, Can we give the input to Pulse Generator block, so that we can vary the frequency while the simulation is running? Looking forward to your reply.
hello Haroon, I currently need the exact something. Did you figure out how to vary the frequency while the simulation is running.
I have same question as Haroon. Looking for solution yet.
I need that variable Pulse Generation also while simulation running, if you solve the problem please notify here, thank you.
For me it looks straightforward, you can use a "mod" block with a "clock" to derive this pulse signal.
Regards,
Gadfly
vf_pulse.PNG
could you please explain how to vary the frequency in your block , i am looking for a chirp-like pwm. varies within a frequency range with a specified time.
How to reverse this , means the variable frequency input is there but you have to generate only one fixed frequency from that signal. How to do that?
Hi @Mohamed Haroon Abdul Jabbar,
Use the Signal Builder block which will allow you to define signals that can vary over time, including frequency changes. By connecting the Signal Builder block to the Pulse Generator block, you can control the frequency input while the simulation is running.

Sign in to comment.

Products

Commented:

on 4 Aug 2024

Community Treasure Hunt

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

Start Hunting!