How to generate a signal with duration and period?
6 views (last 30 days)
Show older comments
I want to generate a signal using the function: (sin(2π/u)T +1), taken at t = 0, 1, 2, . . . 32sec with u = 32 sec and repeated every 128 seconds.
A noise with the variance of 0.01 also needs to be added to the signal.
The signal should look like this:
0 Comments
Accepted Answer
Ameer Hamza
on 27 Apr 2020
I guess you made a mistake will writing the equation of periodic function. (sin(2π/u)T +1) canot create such a signal. Try the following code
duration = 32;
period = 128;
u = 32;
T = 0:32;
one_cycle = [sin(pi/u*T) zeros(1, period-numel(T))]+1;
num_cycles = 5;
signal = repmat(one_cycle, 1, num_cycles);
noisy_signal = signal + randn(1, numel(signal))*0.1; % noise with variance 0.1
T = 0:numel(noisy_signal)-1;
subplot(2,1,1);
plot(T, signal);
subplot(2,1,2);
plot(T, noisy_signal);
2 Comments
More Answers (0)
See Also
Categories
Find more on Waveform Generation 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!