Obtaining Sine Wave From Square Wave
27 次查看(过去 30 天)
显示 更早的评论
Hello,
I have a square wave but this wave is not an ideal square wave. What I mean is, for example from the first sample of positive peak to the last sample of the positive peak, I have 100 datas. In the next positive peak, I have 91 datas. I want to plot a sine wave which changes adaptively by the number of samples in the positive and negative peaks. This sine wave's positive period should end when the square waves positive peak drops to the zero. Or the best continuous wave that fits with this square wave. Thanks for your advices.
3 个评论
Image Analyst
2022-9-28
"I have a square wave" <== but you forgot to attach it. Please attach it as a .mat or .txt file with the paperclip icon.
采纳的回答
Chunru
2022-9-28
% generate a square wave with no fixed period
f = 0.125; fs=1;
s = 0.3+sin(2*pi*f*(0:40)); % a sine wave with offset
x =2* (s>0) -1; % square wave
stem(x);
y = lowpass(x, f*1.5, fs);
hold on
plot(y)
3 个评论
Walter Roberson
2022-9-29
The offset biases there to be more positive values than negative values.
However the end result has fixed frequency, f: the 0:40 are acting as time.
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!