Generate a variable sine wave during simulink simulation

19 views (last 30 days)
Hi,
I want to generate a sine which amplitude and delay is changing during a simulation.
From this formula:
out = M * sin(2*pi*50*t + (pi*phi/180)))
I want to change M and phi.
I've tried to generate it using blocks but I am stucked in the sine part. I've tried using a gain but it gives me an error.
The perfect solution for me will be to use the sine wave block and change the variables on the block through an external variable.
Many thanks.

Accepted Answer

Kaustubha Govind
Kaustubha Govind on 14 Jan 2013
The Sine Wave block from the Simulink>Sources library does not accept any inputs, so you cannot use this block to change 'M' and 'phi' as you intend. Instead, you should use the MATLAB Function block to implement the same equation while accepting 'M' and 'phi' as inputs to the block.
  5 Comments
Guy Rouleau
Guy Rouleau on 15 Jan 2013
Thanks for sharing the image, that's what I meant. One minor suggestion. You can replace the Product and 1/360 Constant by a Gain block. This will not have significant effects on your small model, but in general the less blocks in a model the better it is. This is especially true on the update time.
Vaibhav Banajwade
Vaibhav Banajwade on 15 Dec 2016
Thank you for the answer. I was also looking for it. But I didn't understand why the "clock" is used.

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

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

Start Hunting!