【MATLAB】如何绘制自动控制系统中的经典信号:阶跃,方波,三角,正弦

前言

  在自动控制系统中绘制相关曲线时,可能会需要进行输入和输出信号对比,因此就需要绘制输入信号曲线,一般来说也就是典型信号:阶跃,方波,三角波,正弦波。一开始以为这些应该都有自带的函数才对(“MATLAB除了生孩子啥都会”),但是找了一些资料发现并没有,所以记录一下。

MATLAB代码

  • 阶跃
t = 0:0.01:10; %时间点
dt1 = 200;     %延迟时间(单位为点的个数)
A = 180;       %信号幅值

y0 = [zeros(dt1,1) ; A*ones(length(t)-dt1,1)];  %阶跃信号
%注意:如果没有偏移时间,设置dt1为0即可
plot(t,y0)
  • 方波
t = 0:0.01:10; %时间点
dt1 = 200;     %延迟时间(单位为点的个数)
A = 180;       %信号幅值
T = 5;         %周期信号周期
dy = 180;      %曲线偏移值

y1 = A*square(t*2*pi/T)+dy;                    %方波信号
%注意:其默认周期为2pi,所以要先乘以2pi,然后再除以T
plot(t,y1)
  • 三角波
t = 0:0.01:10; %时间点
dt2 = 1.25;    %延迟时间(单位为时间)
A = 180;       %信号幅值
T = 5;         %周期信号周期
dy = 180;      %曲线偏移值

y2 = A*sawtooth((t+dt2)*2*pi/T, 1/2)+dy;      %三角波信号
%注意:是先减去偏移时间再乘角频率还是先乘角频率再减得根据实际情况判断
plot(t,y2)
  • 正弦波
t = 0:0.01:10; %时间点
dt2 = 1.25;    %延迟时间(单位为时间)
A = 180;       %信号幅值
T = 5;         %周期信号周期
dy = 180;      %曲线偏移值

y3 = A*sin((t+dt2)*2*pi/T)+dy;                      %正弦波信号
%注意:同样,正弦信号周期默认也是2pi
plot(t,y3)
  • 4
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

记录无知岁月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值