自动控制原理课程设计实习 姓名:郭家林 班级:测控 12-1 学号:08号
院系:电气信息工程学院
实习日期:2014年 6月 9日至 6月 13日 北华大学 目 录
一、 实习目的和任务 ……………………………………… . … P3 二、 软件介绍 ………………………………………………… .P4 三、 校正前系统分析 ………………………………………… .P5. 四、 理论校正思想 ………………………………………… .....P11 五、 利用 MATLAB 进行设计过程 ………………………… ..P12 六、 校正后系统分析 …………………………… . ……… .. … ..P15 七、 失误及总结 ……………………………………………… P17 八、 参考文献 ………………………………………………… P18 实习目的 :
1.进一步掌握自动控制原理课程所学的理论知识。
2.熟悉几种常用系统的校正方法及其利用 MATLAB 进行仿真。 3.了解控制系统校正的基本思想和方法,学会科学分析和解决 问题。
4.培养认真严谨的工作作风和实事求是的工作态度。
5.作为课程实验与毕业设计的过度,课程设计为两者提供了一 个桥梁。 实习任务:
电 动 机 转 速 控 制 系 统 的 开 环 传 递 函 数 为 G0(s=20/s(0.05s+1(0.5s+1,试设计一个校正装置, 使校正后的系 统的相位裕量 γ>=45°,幅值裕量 GM>=10dB。
3 软件介绍:
MATLAB 是 matrix&laboratory两个词的组合, 意为矩阵工厂 (矩阵实验室 。 MATLAB 工作界面
是由美国 mathworks 公司发布的主要面对科学计算、可视化以及交互式 程 序设计 的高科技计算环境。 它将 数值分析 、 矩阵计算 、 科学数据可视化以及非 线 性 动态系统的 建模 和仿真等诸多强大功能集成在一个易于使用的视窗环境中, 为 科学研究、 工程设计以及必须进行有效 数值计算 的众多科学 领域 提供了一种全面 的解决方案, 并在很大程度上摆脱了传统非交互式 程序设计语言 (如 C 、 Fortran 的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB 和 Mathematica 、 Maple 并称为三大 数学 软件。它在数学类科技 应用软件中在数值计算方面首屈一指。 MATLAB 可以进行 矩阵 运算、绘制 函数 和
数据、实现 算法 、创建用户界面、连接其他 编程语言 的程序等,主要应用于工 程计算、控制设计、 信号处理 与通讯、 图像处理 、 信号检测 、 金融建模 设计与分 析等 领域 。
MATLAB 的基本数据单位是矩阵,它的 指令表达式 与 数学 、工程中常用的 形式十分相似,故用 MATLAB 来解算问题要比用 C , FORTRAN 等语言完成相 同的事情简捷得多, 并且 MATLAB 也吸收了像 Maple 等软件的优点, 使 MATLAB 成为一个强大的 数学软件 。 在新的版本中也加入了对 C , FORTRAN , C++, JAVA 的支持。可以直接调用,用户也可以将自己编写的实用程序导入到 MATLAB 函 数 库中方便自己以后调用,此外许多的 MATLAB 爱好者都编写了一些经典的程 序,用户直接进行下载就可以用。
MATLAB 产品系列重要功能:
·MATLAB®: MATLAB 语言的单元测试框架
·Trading Toolbox™: 一款用于访问价格并将订单发送到交易系统的新产品 ·Financial Instruments Toolbox™: 赫尔 -怀特、线性高斯和 LIBOR 市场模 型的校准和 Monte Carlo 仿真
·Image Processing Toolbox™: 使用有效轮廓进行图像分割、 对 10 个函数 实现 C 代码生成,对 11 个函数使用 GPU 加速
·Image Acquisition Toolbox™: 提供了用于采集图像、深度图和框架数据的 Kinect® for Windows®传感器支持
4
·Statistics Toolbox™: 用于二进制分类的支持向量机 (SVM、用于缺失数 据的 PCA 算法和 Anderson-Darling 拟合优度检验
·Data Acquisition Toolbox™: 为 Digilent Analog Discovery Design Kit 提 供了支持包
·Vehicle Network Toolbox™: 为访问 CAN 总线上的 ECU 提供 XCP 支 持 Simulink 产品系列重要功能
·Simulink®: Simulation Performance Advisor,链接库模块的封装,以及通 过逻辑表达式控制有效变量
·Simulink: 除 LEGO® MINDSTORMS® NXT、 Arduino®、 Pandaboard 和 Beagleboard 外, 还为 Raspberry Pi™ 和 Gumstix® Overo® 硬件提供了内置 支持
·SimRF™: 针对快速仿真和模型加载时间的电路包络求解器
·SimMechanics™: 发布了用于从 CAD 和其他系统导入模型的 XML 架 构 ·Simulink Design Verifier™: 数组超出边界检查 MATLAB 和 Simulink 的系统工具箱
·Communications System Toolbox™: Sphere 解码器和 Constellation 框 图系统对象
·Computer Vision System Toolbox™: Viola-Jones 对象检测培训, FREAK 特征提取和其他新函数
·DSP System Toolbox™: 频谱分析仪和逻辑分析示波器,以及时域示波器 的触发
·Phased Array System Toolbox™: 极化支持、数组锥化以及针对传感器数 组分析、波形分析和雷达方程计算的应用程序
代码生成和实现
·Simulink Coder™: 减少了从 Stateflow® 调用的 Simulink 函数的数据副 本
·Fixed-Point Designer™: 一款结合了 Fixed-Point Toolbox™ 和 Simulink Fixed Point™ 功能的新产品
·HDL Verifier™: 从 MATLAB 生成 HDL 测试工作台 5
校正前系统的分析: 校正前系统的频率特性: 利用 MATLAB 进行编程如下: >> n0=20;d0=conv([0.5 1 0],[0.05 1]; [gm0,pm0,wcg0,wcp0]=margin(n0,d0 gm0 = 1.1000 pm0 = 1.5763 wcg0 = 6.3246 wcp0 = 6.0291
幅值裕量为 1.1000,相位裕量为 1.5763,幅值穿越频率 6.3246, 相位穿越频率 6.0291, 相位裕量和幅值裕量几乎约等于 0很明显 不满足要求。
校正前的系统的阶跃响应: 利用 MATLAB 编程
>> n0=20;d0=conv([0.5 1 0],[0.05 1];[n0,d0]=cloop(n0,d0; t=0:0.1:100;[y,x,t]=step(n0,d0,t;plot(t,y
6
图像如下:超调量为 92%
由图中可以看出 K=20时 , 系统动态指标很差,调节时间快接近 60s 才趋于稳定。
校正前系统的伯德图: 利用 MATLAB 编程:
>> n0=20;d0=conv([0.5 1 0],[0.05 1]; >> bode(n0,d0 图像如下:
7
校正前系统的奈氏图: 利用 MATLAB 编程
>> n0=20;d0=conv([0.5 1 0],[0.05 1]; nyquist(n0,d0 图像如下:
8
校正前系统的根轨迹: 利用 MATLAB 编程
>> n0=1;d0=conv([0.5 1 0],[0.05 1]; rlocus(n0,d0,[k,poles]=rlocfind(n0,d0 Select a point in the graphics window
selected_point = 0 + 6.33i k =
9 22.0755 poles = -22.0058 0.0029 + 6.3346i 0.0029 - 6.3346i
由此可见,根轨迹与虚轴交点处的增益 K=22,这说明当 K<22时系统稳定,当 K>22时,系统不稳定。
10
校正前系统的结构图:
校正前系统的仿真图:
可以看出系统的快速性比较差,达到稳态时间比较长 理论校正思想(滞后校正 :
未校正系统的的幅值穿越频率 wc0=6.32rad/s,r0约等于 0°,根 据 要 求 的 相 位 裕 量 可 确 定 校 正 后 的 相 位 裕 量 为 r ’ =r+(5°~15°=55°, 而 γwc=γ’ +(-180°=-90°-arctan0.5wc-arctan0.05wc, 算出校正后幅值穿越频率
11
wc=1.2253rad/s。由于在该频率处,未校正系统的对数幅值为
L0(wc=20lg(20/wc=-20lgb,算出 b=0.06125,又 1/bT=0.2s^-1,则 T=.33s, 于 是 求 得 滞 后 校 正 环 节 的 传 递 函 数 Gc(s=5s+1/.33s+1,校 正 后 系 统 的 开 环 传 递 函 数 为 Gk(s=G0(s*Gc(s=100s+20/s(0.5s+1(0.05s+1(.33s+1
利用 MATLAB 进行设计:
>> numo=20;deno=conv([0.5 1 0],[0.05 1]; >> [Gm1,Pm1,Wcg1,Wcp1]=margin(numo,deno; >> r=45;w=logspace(-3,0;
>> [mag1,phase1]=bode(numo,deno,w; >> for epsilon=5:15 r0=(-180+r+epsilon; [i1,ii]=min(abs(phase1-r0; wc=w(ii; alpha=mag1(ii; T=5/wc;
numc=[T,1];denc=[alpha*T,1];
[num,den]=series(numo,deno,numc,denc; [Gm,Pm,Wcg,Wcp]=margin(num,den; if(Pm>=r;break;end; 12 end
>> printsys(numc,denc;printsys(num,den; num/den = 5 s + 1
------------- .3311 s + 1 num/den = 100 s + 20
-------------------------------------------------------- 2.2333 s^4 + 49.1571 s^3 + .8811 s^2 + s 得到校正后的开环传递函数:
100s+20
----------------------------------------------------------
202333s^4+49.1571s^3+.8811s^2+s 校正装置的开环传递函数:
5 s + 1 --------------- .3311 s + 1 13
校正后系统的分析: 校正后的系统的频率特性为:
>> num=[100 20];den=conv([0.5 1 0],conv([0.05 1],[83.33 1]; >> [gm0,pm0,wcg0,wcp0]=margin(num,den
gm0 = 16.4361 pm0 =
48.7842 wcg0 = 5.9887 wcp0 = 1.0738
校正后系统的幅值裕量为 16.4, 相位裕量为 48.8, 幅值穿越频率 为 6,相位穿越频率为 1.1,故满足要求。
校正后系统的阶跃响应:
>>num=[100 20];den=conv([0.5 1 0],conv([0.05 1],[83.33 1];[num,den]=cloop(num,den;
>>t=0:0.1:10;[y,x,t]=step(num,den,t;plot(t,y 14
校正后系统的伯德图为:
>> num=[100 20];den=conv([0.5 1 0],conv([0.05 1],[83.33 1]; >> bode(num,den 校正后系统的伯德图:
15
校正后系统的结构图: 仿真后的图像: 16
失误及总结: 总的来说这次实习挺简单的, 主要是考察我们对理论知识的掌握 程度及其对 MATLAB 的引用,当我拿到这次实习的题目后,首 先对校正前系统进行了理论分析, 利用 MATLAB 编程求出了校 正前系统的各项性能指标(幅值裕量,相位裕量,幅值穿越角频 率, 相位穿越角频率) , 然后画了校正前系统的伯德图, 奈氏图, 根轨迹及单位阶跃响应, 然后结合理论知识分析计算之后得到校 正装置的传递函数然后在对校正后的装置进行分析, 最后对校正 前和校正后的系统进行 simulink 仿真对比的结果发现校正后系 统的快速性提高了。 其中在对校正后的装置进行仿真的时候发现 输出波形不对且不是稳定的, 然后检查 MATLAB 的命令窗口发 17
现有很多警告,于是发现选的模块不对, 把零极点函数换成传递 函数模块进行调试后, 波形恢复正常。经过这次实习后发现并学 会了理论联系实际课程设计,通过选择的题目,根据要求,运用 所学知识将其付诸实践来完成。这并不是在课堂上的单纯听懂, 或者课后看书过程中的深入理解, 这需要的是一种理论联系实践 的能力。 理论知识往往都是在一些理想状态下的假设论,而实际 的动手操作则完全不同,需要考虑实际中的很多问题。 有些知识 在理论上可能完全没错但到了实际中则不然。 参考文献: 《计算机仿真技术---基于 MATLAB 的控制原理》 编 《自动控制原理》 张建民 主编 李国勇 主 18
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo8.com 版权所有 湘ICP备2023022238号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务