- Drag a S-function builder block in the model.
- Configure S-function having only 1 output (y[0]). No input, No discrete state, No continuous state.
- In the output function write code given below
- Build the S-function and run the model.
How to create a sawtooth signal inside an S-function ?
조회 수: 11 (최근 30일)
이전 댓글 표시
Hi,
I'm working with C-MEX S-function (C code). I was wondering if it is possible to create a sawtooth signal inside a C-coded S-function and see the signal with the Simulink scope. If it is possible, how to do it ?
Thanks for your help
댓글 수: 0
채택된 답변
TAB
2012년 9월 10일
편집: TAB
2012년 9월 10일
A simple demonstration:
y0[0] = y0[0]+1;
if(y0[0]>UPPER_LIMIT)
{
y0[0] = 0;
}
추가 답변 (1개)
Alice
2012년 9월 14일
댓글 수: 3
TAB
2012년 9월 17일
In your S-function builder block
- 1 output (y[0]) for LED,
- 1 input (u[0]) for comparing
- 1 discrete state (xD[0]) for storing Ramp value
- No continuous state.
In your S-function builder Discrete update field
xD[0] = xD[0] + 1;
if(xD[0]>=UPPER_LIMIT)
{
xD[0] = 0;
}
In your S-function builder Outputs field
if(xD[0]>=u0[0])
{
y0[0] = 1; /*LED ON*/
}
else
{
y0[0] = 0; /*LED OFF*/
}
Please go through the s-function document.
참고 항목
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!