Why does Simulink generate a sine wave as a triangle wave?

22 ビュー (過去 30 日間)
monmatlab
monmatlab 2015 年 10 月 24 日
コメント済み: azeddine 2023 年 6 月 26 日
Hey community, i am new to Simulink. I wanted to generate a sine wave : sin(15*2*pi*t). But I always get a triangle wave even the amplitude is incorrect.
(see pictures)
Is there something I'm doing wrong?
thank you!
  2 件のコメント
Stephen Ofori
Stephen Ofori 2019 年 1 月 17 日
I'm also having the same problem here, it works fine when I take the pi
But generate a triangular wave when the pi is there
Yazdan Tanveer
Yazdan Tanveer 2019 年 12 月 23 日
You have to take care of “simulation stop time”. Simulink sets the step size by default according to simulation stop time. If you want to change it manually regardless of simulation stop time, you have to adjust the ‘sample time’ in the properties of the sine block.

サインインしてコメントする。

採用された回答

Sebastian Castro
Sebastian Castro 2015 年 10 月 24 日
編集済み: Sebastian Castro 2015 年 10 月 24 日
This is definitely a sampling issue. You need to run the model at a faster rate to adequately capture the generated signal.
What's the time step size in your model? Go to the model configuration parameters and check the sample time options in the Solver pane.
Based on the Nyquist criterion, you need to sample the signal AT LEAST at twice its frequency. In your case, that is 30 Hz, or 1/30 sec sample time. To be safe, you should use an even smaller sample time.
EDIT: If you see your model has an "auto" step size, this depends on your version. If you're using one of the newest versions, Simulink can actually try use your block's frequency to decide a better sample time. However, the traditional value for a while before that has been (1/50) of the total simulation time, which is probably too large given your parameters.
- Sebastian
  2 件のコメント
Hussain Ali
Hussain Ali 2018 年 9 月 15 日
it means that simulation time should be less then half of time period.
azeddine
azeddine 2023 年 6 月 26 日
hi sebastien,
i need to generat a sine wave up to 20KHz, but the sample time of my reel time simulink model must be 0.01S. can u propos any solution ?
best regards.

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by