Signal generation on Simulink?
Show older comments
I would like to know how can I generate a signal that looks like this (in the image) mainly using Simulink or a script function that can be employed later in simulink.
Thanks

Answers (2)
You can use this script in a function block of Simulink. Just take y as a output in the simulink block.
fs = 9000; % signal sampled at a rate of 200 Hz for 1 second
t = 0:1/fs:1;
y1 = cos(2*pi*30*t);
y2 = cos(2*pi*5*t); % 5 Hz modulating signal
y2 = rescale(y2,0.15,1); % modulation amplitude min/max factor
y = y1 .* y2; % create amplitude-modulated signal
plot(y(1:7000))
This modulation signal can be generated using the following Simulink model and/or this M-ffile:
fs = 5000; % sampling frequency (Hz)
t = 0:1/fs:1; % time vector
x = (1.25+sin(2*pi*25*t+pi/2)).*sin(2*pi*t*175);
plot(t,x), grid on
xlim([0, 0.25])
xlabel('Time, [sec]')
ylabel('Amplitude')
1 Comment
Hossam Amin
on 22 Feb 2022
Categories
Find more on Signal 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!
