How to programe clipping sine wave

67 views (last 30 days)
Mvana
Mvana on 2 Aug 2022
Commented: Sam Chak on 5 Sep 2022
TIME =linspace(0,6*pi,200)
SignalVoltage = 7*sin(Time)

Accepted Answer

Sam Chak
Sam Chak on 2 Aug 2022
Edited: Sam Chak on 2 Aug 2022
Cannot open your jpg (I'm lazy to fix the link). If you study Pure Math in high school, you need to use the sign function to clip the signal. But in MATLAB, it's a pretty easy job do something like this. In Electrical Engineering, you can use the Diode Clipper circuit.
% original sine wave
t = linspace(0, 6*pi, 3600*3+1);
x = 7*sin(t);
plot(t, x, 'linewidth', 1.5), hold on
% clipped sine wave
ub = 4; % upper bound
lb = -4; % lower bound
y = max(lb, min(x, ub));
plot(t, y, 'linewidth', 1.5), hold off
grid on, xlabel('t'), ylabel('x(t)'), ylim([-10 10])
  2 Comments
Thando
Thando on 5 Sep 2022
@Sam Chak, i followed the instruction the exact same way as you instructed @Mvana but im only getting 1/3, is there another way to get all 3 correct
Sam Chak
Sam Chak on 5 Sep 2022
@Thando, Not exactly sure what you meant by getting 1/3 and all correct. Please enlighten.

Sign in to comment.

More Answers (1)

Mbongeni
Mbongeni on 8 Aug 2022
how do i use the end function? i have a row by column vector and matlab instructions say that i must use the end command,but it gives me an error when i try it. What can i do to solve this problem?
  1 Comment
Sam Chak
Sam Chak on 8 Aug 2022
@Mbongeni, Please post a new question and the error
function Mbongeni
% type your code here.
end

Sign in to comment.

Categories

Find more on MATLAB in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!