Manual triangle wave generation

5 views (last 30 days)
quando
quando on 1 Jun 2020
Commented: quando on 2 Jun 2020
Hello
I want to generate a triangle wave without built in function and I want to do it using this formula
Unfortunately, the output plot is not looking right
I'd appreciate any suggestions
clc;
clear all;
A = 1;
f = 1;
fs = 1000;
t = 0 : 1/fs : 10;
n = [300];
omega0 = 2 * pi * f;
for i = 1 : length(n)
b = 0;
for j = 1 : 2 : n(i)
H = [0 : 0.5 : n(i)];
sr = (1 / j) * (-1)^H(j) *sin(j * omega0 * t);
b = b + sr;
end
b = ( 8 * A / pi ^ 2 ) * b;
figure()
plot(t, b)
end

Answers (1)

KSSV
KSSV on 1 Jun 2020
Edited: KSSV on 1 Jun 2020
A = 1;
f = 1;
fs = 1000;
t = 0 : 1/fs : 10;
n = [300];
omega0 = 2*pi*f;
K = 8*A/pi^2 ;
N = 20 ; % can be changed
x = zeros(size(t)) ;
for i = 0:N
x = x+(-1)^i*1/(2*i+1)*sin((2*i+1)*omega0*t) ;
end
plot(t,x)
  1 Comment
quando
quando on 2 Jun 2020
It's the same plot, it's not triangle wave

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!