square wave not "limited"

3 visualizaciones (últimos 30 días)
Federico Paolucci
Federico Paolucci el 30 de Jun. de 2022
Respondida: Jon el 30 de Jun. de 2022
hi, I produced this square wave signal, but as you can see the square peaks have no upper limit. how can i solve?
x=0.03*square(f*t,duty)
in reality I seem to see that the graph is the other way around

Respuesta aceptada

Jon
Jon el 30 de Jun. de 2022
You probably are not correctly specifiying the duty cycle. If you want the square wave to be "on" half the time you should set duty = 50, also note that the first argument to square is in radians, so each cycle is 2*pi radians. You have to scale your input accordingly.

Más respuestas (1)

Sam Chak
Sam Chak el 30 de Jun. de 2022
Doesn't seem to have any issue.
t = linspace(0, 3*pi, 3001)';
f = 2;
duty = 50;
x = 0.03*square(f*t, duty);
plot(t/pi, x, t/pi, 0.03*sin(2*t))
grid on
ylim([-0.05 0.05])

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by