can someone please assist to make the square wave plot at 50Hz

7 visualizaciones (últimos 30 días)
Gihahn
Gihahn el 10 de Abr. de 2024
Comentada: Manikanta Aditya el 10 de Abr. de 2024
fs = 1000;
f = 4; %amount of square waves of graph
t = 0:1/fs:1-1/fs;
y = 3 * square(2 * pi * f * t); %generating the square wave
plot(t, y, 'LineWidth', 2)
xlabel('Time (s)')
ylabel('Amplitude')
title('Square Wave with 50 Hz Frequency and 4 Hz Period')
grid on
ylim([-5, 5]) % Set y-axis limits
the code is above . just struggling to make the square wave plot at 50Hz . I dont seem to understand where to modify the code to plot the square wave at 50Hz

Respuestas (2)

Manikanta Aditya
Manikanta Aditya el 10 de Abr. de 2024
Editada: Manikanta Aditya el 10 de Abr. de 2024
Hi,
To plot a square wave at 50 Hz, you need to adjust the frequency value f in your code. The frequency of the square wave is proportional to the argument of the square function, which is 2*pi*f*t in your code.
fs = 1000; % Sampling frequency
f = 50; % Frequency of the square wave (50 Hz)
t = 0:1/fs:1-1/fs; % Time vector
y = 3 * square(2 * pi * f * t); % generating the square wave
plot(t, y, 'LineWidth', 2)
xlabel('Time (s)')
ylabel('Amplitude')
title('Square Wave with 50 Hz Frequency')
grid on
ylim([-5, 5]) % Set y-axis limits
Thanks!

Hassaan
Hassaan el 10 de Abr. de 2024
fs = 1000; % Sampling frequency
f = 50; % Frequency of the square wave
% Time vector from 0 to 1 second, with step size of 1/fs
t = 0:1/fs:1-1/fs;
% Generating the square wave
% square(2 * pi * f * t) generates a square wave with amplitude between -1 and 1
% Multiplying by 3 scales the wave to be between -3 and 3
y = 3 * square(2 * pi * f * t);
% Plotting the square wave
figure; % Opens a new figure window
plot(t, y, 'LineWidth', 2, 'Color', 'b'); % 'k' stands for black color
hold on; % Keeps the plot for further additions
% Adding a zero line for reference, making it easier to see the wave oscillation
plot(t, zeros(size(t)), '--', 'Color', [0.5 0.5 0.5]);
hold off; % No more additions to this plot
% Enhancing plot aesthetics
xlabel('Time (s)', 'FontSize', 12, 'FontWeight', 'bold');
ylabel('Amplitude', 'FontSize', 12, 'FontWeight', 'bold');
title('50 Hz Square Wave Plot', 'FontSize', 14, 'FontWeight', 'bold');
grid on; % Adding a grid for better readability
% Setting y-axis limits
ylim([-5, 5]);
-----------------------------------------------------------------------------------------------------------------------------------------------------
If you find the solution helpful and it resolves your issue, it would be greatly appreciated if you could accept the answer. Also, leaving an upvote and a comment are also wonderful ways to provide feedback.
It's important to note that the advice and code are based on limited information and meant for educational purposes. Users should verify and adapt the code to their specific needs, ensuring compatibility and adherence to ethical standards.
Professional Interests
  • Technical Services and Consulting
  • Embedded Systems | Firmware Developement | Simulations
  • Electrical and Electronics Engineering
Feel free to contact me.

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by