How to Generate Smooth Transitional Trapezoidal Signal in Simulink

43 views (last 30 days)
Hi, everyone. I want to generate a custom signal demonstrated as follow image in Simulink, I have tried the Signal Editor Block, but the generated trapezoidal signal does not have smooth transition as showed in the attached image.
I would be appreciated that someone could give me some suggestions.
  2 Comments
Sam Chak
Sam Chak on 3 Jun 2024
If you are looking for a one-line math equation for describing the smooth trapezoid, consider the Generalized Gaussian Distribution (GGD) other one-hump functions. However, it is probably easier to achieve that with the piecewise S-curve continuous function.

Sign in to comment.

Accepted Answer

Mathieu NOE
Mathieu NOE on 3 Jun 2024
hello
whatever code you use to create the trapezoidal wave , you can simply then smooth it out, for example with smoothdata
a = 10; %Amplitude
m = 2; %Time Period
l = 5; %Horizontal Spread
c = 2; %Vertical Spread
x = 0:.01:10; %Sample Points
Trapezoidal_Wave = a/pi*(asin(sin((pi/m)*x+l))+acos(cos((pi/m)*x+l)))-a/2+c;
Trapezoidal_Wave_S = smoothdata(Trapezoidal_Wave,'gaussian',50);
plot(x,Trapezoidal_Wave,x,Trapezoidal_Wave_S);

More Answers (0)

Categories

Find more on Simulink in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!