1、计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)1第 0 章 绪论0-1 什 么 是 仿 真 ? 它 所 遵 循 的 基 本 原 则 是 什 么 ?答 :仿 真 是 建 立 在 控 制 理 论 、 相 似 理 论 、 信 息 处 理 技 术 和 计 算 机 技 术 等 理 论 基 础 之 上的 , 以 计 算 机 和 其 他 专 用 物 理 效 应 设 备 为 工 具 , 利 用 系 统 模 型 对 真 实 或 假 想 的 系 统 进 行试 验 , 并 借 助 专 家 经 验 知 识 、 统 计 数 据 和 信 息 资 料 对 试 验 结 果 进 行 分 析 和 研 究 ,
2、 进 而 做出 决 策 的 一 门 综 合 性 的 试 验 性 科 学 。它 所 遵 循 的 基 本 原 则 是 相 似 原 理 。0-2 仿 真 的 分 类 有 几 种 ? 为 什 么 ?答 :依 据 相 似 原 理 来 分 : 物 理 仿 真 、 数 学 仿 真 和 混 合 仿 真 。物 理 仿 真 : 就 是 应 用 几 何 相 似 原 理 , 制 作 一 个 与 实 际 系 统 相 似 但 几 何 尺 寸 较 小 或较 大 的 物 理 模 型 ( 例 如 飞 机 模 型 放 在 气 流 场 相 似 的 风 洞 中 ) 进 行 实 验 研 究 。数 学 仿 真 : 就 是 应 用 数 学
3、 相 似 原 理 , 构 成 数 学 模 型 在 计 算 机 上 进 行 研 究 。 它 由 软硬 件 仿 真 环 境 、 动 画 、 图 形 显 示 、 输 出 打 印 设 备 等 组 成 。混 合 仿 真 又 称 数 学 物 理 仿 真 , 它 是 为 了 提 高 仿 真 的 可 信 度 或 者 针 对 一 些 难 以 建 模的 实 体 , 在 系 统 研 究 中 往 往 把 数 学 仿 真 、 物 理 仿 真 和 实 体 结 合 起 来 组 成 一 个 复 杂 的 仿 真系 统 , 这 种 在 仿 真 环 节 中 有 部 分 实 物 介 入 的 混 合 仿 真 也 称 为 半 实 物 仿
4、 真 或 者 半 物 理 仿 真 。0-3 比 较 物 理 仿 真 和 数 学 仿 真 的 优 缺 点 。答 :在 仿 真 研 究 中 , 数 学 仿 真 只 要 有 一 台 数 学 仿 真 设 备 ( 如 计 算 机 等 ) , 就 可 以 对 不同 的 控 制 系 统 进 行 仿 真 实 验 和 研 究 , 而 且 , 进 行 一 次 仿 真 实 验 研 究 的 准 备 工 作 也 比 较 简单 , 主 要 是 受 控 系 统 的 建 模 、 控 制 方 式 的 确 立 和 计 算 机 编 程 。 数 学 仿 真 实 验 所 需 的 时 间比 物 理 仿 真 大 大 缩 短 , 实 验 数
5、 据 的 处 理 也 比 物 理 仿 真 简 单 的 多 。与 数 学 仿 真 相 比 , 物 理 仿 真 总 是 有 实 物 介 入 , 效 果 直 观 逼 真 , 精 度 高 , 可 信 度高 , 具 有 实 时 性 与 在 线 性 的 特 点 ; 但 其 需 要 进 行 大 量 的 设 备 制 造 、 安 装 、 接 线 及 调 试工 作 , 结 构 复 杂 , 造 价 较 高 , 耗 时 过 长 , 灵 活 性 差 , 改 变 参 数 困 难 , 模 型 难 以 重 用 ,通 用 性 不 强 。0-4 简 述 计 算 机 仿 真 的 过 程 。答 :第 一 步 : 根 据 仿 真 目
6、的 确 定 仿 真 方 案根 据 仿 真 目 的 确 定 相 应 的 仿 真 结 构 和 方 法 , 规 定 仿 真 的 边 界 条 件 与 约 束 条 件 。第 二 步 : 建 立 系 统 的 数 学 模 型对 于 简 单 的 系 统 , 可 以 通 过 某 些 基 本 定 律 来 建 立 数 学 模 型 。 而 对 于 复 杂 的 系 统 ,则 必 须 利 用 实 验 方 法 通 过 系 统 辩 识 技 术 来 建 立 数 学 模 型 。 数 学 模 型 是 系 统 仿 真 的 依 据 ,所 以 , 数 学 模 型 的 准 确 性 是 十 分 重 要 。计算机仿真技术与 CAD基于 MAT
7、LAB 的控制系统(第 3 版)2第 三 步 : 建 立 仿 真 模 型即 通 过 一 定 算 法 对 原 系 统 的 数 学 模 型 进 行 离 散 化 处 理 , 就 连 续 系 统 言 , 就 是 建 立相 应 的 差 分 方 程 。第 四 步 : 编 制 仿 真 程 序对 于 非 实 时 仿 真 , 可 用 一 般 高 级 语 言 或 仿 真 语 言 。 对 于 快 速 的 实 时 仿 真 , 往 往 需要 用 汇 编 语 言 。第 五 步 : 进 行 仿 真 实 验 并 输 出 仿 真 结 果通 过 实 验 对 仿 真 系 统 模 型 及 程 序 进 行 校 验 和 修 改 , 然
8、后 按 系 统 仿 真 的 要 求 输 出 仿真 结 果 。0-5 什 么 是 CAD 技 术 ? 控 制 系 统 CAD 可 解 决 哪 些 问 题 ?答 :CAD 技 术 , 即 计 算 机 辅 助 设 计 ( Computer Aided Design) , 是 将 计 算 机 高 速 而 精确 的 计 算 能 力 、 大 容 量 存 储 和 数 据 处 理 能 力 与 设 计 者 的 综 合 分 析 、 逻 辑 判 断 以 及 创 造 性思 维 结 合 起 来 , 以 加 快 设 计 进 程 、 缩 短 设 计 周 期 、 提 高 设 计 质 量 的 技 术 。控 制 系 统 CAD
9、可 以 解 决 以 频 域 法 为 主 要 内 容 的 经 典 控 制 理 论 和 以 时 域 法 为 主 要 内容 的 现 代 控 制 理 论 。 此 外 , 自 适 应 控 制 、 自 校 正 控 制 以 及 最 优 控 制 等 现 代 控 制 策 略 都 可利 用 CAD 技 术 实 现 有 效 的 分 析 和 设 计 。计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)3第 1 章 仿真软件MATLAB1-1 对 于 矩 阵 A=1 2;3 4, MATLAB 以 下 四 条 命 令 :A.(0.5); A(0.5); sqrt(A); sqrtm(A)所 得 结 果
10、 相 同 吗 ? 它 们 中 哪 个 结 果 是 复 数 矩 阵 , 为 什 么 ?答 :A.(0.5)=1.0000 1.4142;1.7321 2.0000;A(0.5)= 0.5537 + 0.4644i 0.8070 - 0.2124i;1.2104 - 0.3186i 1.7641 + 0.1458i;sqrt(A)= 1.0000 1.4142;1.7321 2.0000;sqrtm(A) = 0.5537 + 0.4644i 0.8070 - 0.2124i;1.2104 - 0.3186i 1.7641 + 0.1458i;其 中 , “A.(0.5)”表 示 向 量 的 乘
11、方 , “A(0.5)”表 示 矩 阵 的 乘 方 , “sqrt(A)”只 定义 在 矩 阵 的 单 个 元 素 上 , 即 分 别 对 矩 阵 的 每 个 元 素 进 行 运 算 , “sqrtm(A)”表 示 对 矩阵 ( 方 阵 ) 的 超 越 函 数 进 行 运 算 。1-4 求 二 元 函 数 方 程 组 : sin(x-y)=0,cos(x+y)=0 的 解 。答 :x,y=solve(sin(x-y)=0,cos(x+y)=0,x,y)x =-1/4*pi1/4*piy =-1/4*pi1/4*pi1-5 求 函 数 y(t)=exp(-t)*|sincost|的 最 大 值
12、( 0f=(-1)*exp(-(abs(x)*abs(sin(cos(abs(x);x=fminsearch(f,0),ymax=exp(-(abs(x)*abs(sin(cos(abs(x)x =0ymax =0.84151-6 设 D2y-3Dy+2y=x,y(0)=1,Dy(0)=0, 求 y(0.5)的 值 。答 : f=D2y-3*Dy+2*y=x;g=dsolve(f,y(0)=1,Dy(0)=0,x);x=0.5;y=eval(g)y =0.61001-7 求 方 程 cos(t)2*exp(-0.1t)=0.5t 的 解 。答 :计算机仿真技术与 CAD基于 MATLAB 的控
13、制系统(第 3 版)4t1=solve(cos(t)2*exp(-0.1*t)=0.5*t,t);t=eval(t1)t =0.83291-8 求 方 程 组 : x2+y2=1,xy=2 的 解 。答 :x,y=solve(x2+y2=1,x*y=2,x,y)x =-1/2*(1/2*5(1/2)+1/2*i*3(1/2)3+1/4*5(1/2)+1/4*i*3(1/2)-1/2*(1/2*5(1/2)-1/2*i*3(1/2)3+1/4*5(1/2)-1/4*i*3(1/2)-1/2*(-1/2*5(1/2)+1/2*i*3(1/2)3-1/4*5(1/2)+1/4*i*3(1/2)-1/
14、2*(-1/2*5(1/2)-1/2*i*3(1/2)3-1/4*5(1/2)-1/4*i*3(1/2)y =1/2*5(1/2)+1/2*i*3(1/2)1/2*5(1/2)-1/2*i*3(1/2)-1/2*5(1/2)+1/2*i*3(1/2)-1/2*5(1/2)-1/2*i*3(1/2)1-9 求 f(kT)=kexp(-akT)的 Z 变 换 表 达 式 。答 :syms k t z;f=k*exp(-a*t);F=ztrans(f,t,z)f =k*z/exp(-a)/(z/exp(-a)-1)1-10 求 一 阶 微 分 方 程 Dx=ax+by(t),x(0)=x0 的 解
15、。答 :f=Dx=a*x+b*y;x=dsolve(f,x(0)=x0,t)x =-b*y/a+exp(a*t)*(b*y+x0*a)/a1-12 求 以 下 方 程 组 边 值 问 题 的 解 。Df=3f+4g, Dg=-4f+3g, f(0)=0, g(0)=1答 :f=Dx1=3*x1+4*x2,Dx2=-4*x1+3*x2;x1,x2=dsolve(f,x1(0)=0,x2(0)=1,t)x1 =exp(3*t)*sin(4*t)x2 =exp(3*t)*cos(4*t)计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)5第 2 章 控制系统的数学模型及其转换2-1
16、 已 知 系 统 的 传 递 函 数 为 2316sG试 用 MATLAB 建 立 其 状 态 空 间 表 达 式 。答 :num=1 1 1;den=1 6 11 6;A,B,C,D=tf2ss(num,den)A =-6 -11 -61 0 00 1 0B =100C =1 1 1D =02-2 已 知 系 统 的 状 态 空 间 表 达 式 为11122212 0 0-3 xtxtuttytxA试 用 MATLAB 求 其 传 递 函 数 阵 。答 : A=0 1;-2 -3;B=1 0;1 1;C=1 0;1 1;D=zeros(2,2); num1,den1=ss2tf(A,B,C,
17、D,1),num2,den2=ss2tf(A,B,C,D,2)num1 =0 1.0000 4.00000 2.0000 2.0000den1 =1 3 2num2 =0 0.0000 1.00000 1.0000 1.0000计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)6den2 =1 3 22-3 已 知 两 子 系 统 的 传 递 函 数 分 别 为,12Gss213Gs试 利 用 MATLAB 求 两 子 系 统 串 联 和 并 联 时 系 统 的 传 递 函 数 。答 : num1=1;den1=1 3 2;num2=1;den2=1 3 0;num,den=
18、series(num1,den1,num2,den2)num =0 0 0 0 1den =1 6 11 6 0 num1=1;den1=1 3 2;num2=1;den2=1 3 0;num,den=parallel(num1,den1,num2,den2)num =0 0 2 6 2den =1 6 11 6 02-4 设 系 统 的 状 态 空 间 表 达 式 为 112212 -3 0xtxtuttytxA若 取 线 性 变 换 阵 -P设 新 的 状 态 变 量 为 ,则利用 MATLAB 求在新状态变量下,系统状态空间表达式。1x答:A=0 1;-2 -3;B=1;2;C=3 0;
19、D=0;P=1 1;1 -1;A1,B1,C1,D1=ss2ss(A,B,C,D,P)A1 =-2 03 -1B1 =3-1C1 =计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)71.5000 1.5000D1 =02-5 已 知 离 散 系 统 状 态 空 间 表 达 式1122120 03 xkxkutyxk试 用 MATLAB 求 其 系 统 的 脉 冲 传 递 函 数 。答 :A=0 1;1 3;B=0;1;C=1 1;D=0;T=1;A1,B1,C1,D1=c2dm(A,B,C,D,T)A1 =2.9598 7.33577.3357 24.9669B1 =1.9
20、5987.3357C1 =1 1D1 =0计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)8第 3 章 连续系统的数字仿真3-1 已 知 线 性 定 常 系 统 的 状 态 空 间 表 达 式 为112212 0-560 xtxtuttytxA且 初 始 状 态 为 零 , 试 利 用 四 阶 -龙 格 库 塔 法 求 系 统 的 单 位 阶 跃 响 应 。答 :%ex3_1.mr=1; A=0 1;-5 -6; B=2;0; C=1 2; d=0;Tf=5; h=0.1;x=zeros(length(A),1); y=0; t=0; for i=1:Tf/hK1=A* x
21、+B*r;K2=A*(x+h*K1/2)+B*r; K3=A*(x+h*K2/2)+B*r;K4=A*(x+h*K3)+B*r;x=x+h*(K1+2*K2+2*K3+K4)/6;y=y;C*x; t=t;t(i)+h;endplot(t,y) 3-2 设 单 位 反 馈 系 统 的 开 环 传 递 函 数 42Gs试 利 用 二 阶 -龙 格 库 塔 法 求 系 统 的 单 位 阶 跃 响 应 。计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)9答 :%ex3_2.mr=1; numo=4; deno=1,2,0; num,den=cloop(numo,deno);A,b
22、,C,d=tf2ss(num,den);Tf=5; h=0.1;x=zeros(length(A),1); y=0; t=0; for i=1:Tf/hK1=A* x+b*r;K2=A*(x+h*K1)+b*r;x=x+h*(K1+K2)/2; y=y;C*x; t=t;t(i)+h;endplot(t,y) 3-4 利 用 input( )函 数 修 改 例 3-1 所 给 程 序 ex3_1.m, 将 其 中 给 定 的 参 数r, numo, deno, numh 和 denh 利 用 键 盘 输 入 , 使 其 变 为 连 续 控 制 系 统 面 向 传 递 函 数 的通 用 数 字 仿 真 程 序 。答 :计算机仿真技术与 CAD基于 MATLAB 的控制系统(第 3 版)103-5 利 用 input( )函 数 修 改 例 3-2 所 给 程 序 ex3_2.m, 将 其 中 给 定 的 参 数r, P, W, W0 和 Wc 利 用 键 盘 输 入 , 使 其 变 为 连 续 控 制 系 统 面 向 结 构 图 的 通 用 数 字 仿真 程 序 。答 :