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

조회 수: 54 (최근 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개)

카테고리

Help CenterFile Exchange에서 Signal Generation에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by