ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

MATLAB 控制系统设计命令速查

2026/8/15 21:25:31 拓冰建站 浏览量
MATLAB 控制系统设计命令速查 MATLAB 控制系统设计命令速查文章目录MATLAB 控制系统设计命令速查MATLAB 基本命令1.1 环境与帮助1.2 常用数学函数1.3 向量与矩阵创建1.4 矩阵操作1.5 统计1.6 输出1.7 绘图数学模型与时域分析2.1 多项式运算2.2 建立系统模型2.3 模型转换2.4 系统连接2.5 时域分析2.6 M 文件结构频域分析3.1 Bode 图3.2 稳定裕度3.3 Nyquist 图3.4 根轨迹3.5 频率响应数据SIMULINK 基本用法4.1 启动4.2 命令行运行仿真4.3 常用模块按子库4.4 常用操作MATLAB 基本命令1.1 环境与帮助help% 显示功能目录help help% 查看帮助用法demo% 功能演示clc% 清除命令窗口clear% 清除工作空间变量close all% 关闭所有图形窗口exit/quit% 退出 MATLAB1.2 常用数学函数sqrt(x)% 平方根abs(x)% 绝对值 / 复数模sin(x)% 正弦弧度cos(x)% 余弦弧度exp(x)% 指数 e^xlog(x)% 自然对数pi% 圆周率 π1.3 向量与矩阵创建a[123]% 行向量空格或逗号分隔b[1;2;3]% 列向量分号分隔v0:0.1:1% 等差序列起点:步长:终点vlinspace(0,1,11)% 等差序列指定点数A[12;34]% 矩阵zeros(m,n)% 全零矩阵ones(m,n)% 全一矩阵eye(n)% n×n 单位矩阵rand(m,n)% 均匀分布随机矩阵 [0,1]randn(m,n)% 正态分布随机矩阵均值0方差1均匀分布在 [a,b]a (b-a)*rand(m,n)正态分布均值μ方差σ²mu sigma*randn(m,n)1.4 矩阵操作A% 转置A.*B% 逐元素乘法A*B% 矩阵乘法A(:,1)% 取第1列A(2,:)% 取第2行A(2:3,2:3)% 取子矩阵A(:)% 按列拉成列向量diag(A)% 取主对角线元素diag(A,1)% 取上移1条对角线元素fliplr(A)% 左右翻转flipud(A)% 上下翻转rot90(A)% 逆时针旋转90°tril(A)% 取下三角矩阵length(v)% 向量长度size(A)% 矩阵行列数1.5 统计max(v)% 最大值min(v)% 最小值sum(v)% 求和round(x)% 四舍五入[m,idx]max(v)% 同时返回值和下标1.6 输出disp(x)% 显示变量值fprintf(a %g\n,a)% 格式化输出1.7 绘图figure% 新建图形窗口plot(t,y)% 绘制曲线plot(t,y,r--)% 指定颜色线型红色虚线hold on% 保持当前图叠加绘制subplot(m,n,k)% 将窗口分成 m×n激活第 k 个title(标题)xlabel(横轴);ylabel(纵轴)legend(曲线1,曲线2)%添加图例grid on% 显示网格数学模型与时域分析2.1 多项式运算rroots(p)% 求多项式的根p 为降幂系数行向量ppoly(r)% 由根向量 r 求多项式系数% 部分分式展开 F(s) B(s)/A(s)[r,p,k]residue(b,a)% r: 留数余数p: 极点k: 整式项2.2 建立系统模型% 传递函数模型systf(num,den)% num/den 为分子/分母系数行向量% 零极点增益模型syszpk(z,p,k)% z: 零点列向量p: 极点列向量k: 增益% 状态空间模型sysss(A,B,C,D)% 多项式乘法构造分母denconv([1,1],[1,2])% (s1)(s2) → [1 3 2]2.3 模型转换函数功能[num,den] ss2tf(A,B,C,D,iu)状态空间 → 传递函数[z,p,k] ss2zp(A,B,C,D,iu)状态空间 → 零极点[A,B,C,D] tf2ss(num,den)传递函数 → 状态空间[z,p,k] tf2zp(num,den)传递函数 → 零极点[A,B,C,D] zp2ss(z,p,k)零极点 → 状态空间[num,den] zp2tf(z,p,k)零极点 → 传递函数2.4 系统连接% 串联[num,den]series(num1,den1,num2,den2)% 并联[num,den]parallel(num1,den1,num2,den2)% 反馈连接默认负反馈[num,den]feedback(num1,den1,num2,den2)% 单位负反馈闭环sign-1 负反馈可省略[num,den]cloop(num,den,-1)2.5 时域分析% 阶跃响应[y,x,t]step(num,den)[y,x,t]step(num,den,t)% 指定时间向量[y,x,t]step(A,B,C,D)% 仅绘图不返回数据step(sys)% 查看响应特征参数infostepinfo(sys)% info.Overshoot 超调量(%)% info.RiseTime 上升时间% info.PeakTime 峰值时间% info.SettlingTime 过渡时间(默认2%)2.6 M 文件结构% 程序文件脚本直接运行命令序列% 函数文件第一行必须为 functionfunction[out1,out2]filename(in1,in2)% 函数说明注释% MATLAB 命令end频域分析3.1 Bode 图% 仅绘图bode(sys)bode(num,den)% 返回数据mag 为幅值非 dB[mag,phase,w]bode(num,den)[mag,phase,w]bode(num,den,w)% 指定频率范围% 幅值转换为 dBmag_dB20*log10(mag)3.2 稳定裕度% 仅绘图并标注裕度margin(sys)margin(num,den)% 返回数据[gm,pm,wg,wp]margin(num,den)[gm,pm,wg,wp]margin(mag,phase,w)% gm: 幅值裕度线性值非dBpm: 相位裕度(°) 相角裕度% wg: 相角交界频率wp: 截止频率(穿越频率)% dB 转换gm_dB20*log10(gm)3.3 Nyquist 图% 仅绘图nyquist(sys)nyquist(num,den)% 返回数据re: 实部im: 虚部 w:角频率矢量[re,im,w]nyquist(num,den)[re,im,w]nyquist(num,den,w)3.4 根轨迹% 仅绘图rlocus(sys)rlocus(num,den)% 返回数据r: 根k: 增益[r,k]rlocus(num,den)[r,k]rlocus(num,den,k)% 指定增益向量% 查询根轨迹上某点的增益rlocfind(sys)% 交互式点选3.5 频率响应数据% 在指定频率点求频率响应Hfreqresp(sys,w)% w 为标量或向量magabs(H)phase_degangle(H)*180/piSIMULINK 基本用法4.1 启动simulink% 打开 Simulink 模块库浏览器4.2 命令行运行仿真[t,x,y]sim(模型文件名,[t0,tf])% t0: 起始时间tf: 终止时间4.3 常用模块按子库子库模块功能ContinuousTransfer Fcn传递函数ContinuousIntegrator积分器ContinuousState-Space状态空间DiscreteZero-Order Hold零阶保持器采样MathSum求和/差加减法MathGain比例增益SourcesStep阶跃输入SourcesSine Wave正弦波SinksScope示波器SinksTo Workspace输出到工作空间4.4 常用操作操作方法翻转模块CtrlF旋转模块CtrlR复制模块鼠标右键拖曳设置参数双击模块