ImageVerifierCode 换一换
格式:DOC , 页数:21 ,大小:800.50KB ,
资源ID:2359042      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-2359042.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(直线一级倒立摆系统的建模及仿真-计算机控制技术课程设计.doc)为本站会员(为人民服务)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

直线一级倒立摆系统的建模及仿真-计算机控制技术课程设计.doc

1、 计算机控制技术课程设计实验:直线一级倒立摆系统的建模及仿真一、已知条件:图 1 倒立摆简化模型摆杆角度为输出,小车的位移为输入。导轨中点为坐标轴的中心即零点,右向为坐标值增加的方向,杆偏移其瞬时平衡位置右侧的角度为正值。二、任务要求:总体任务通过调节 PID 参数,设计 PID 控制器实现摆杆在受到干扰的情况下,依然能恢复平衡。具体包括以下几部分:1. 理论推导包括倒立摆系统的动力学模型,传递函数,离散传递函数,状态空间或差分方程,稳定性分析,PID 控制器设计2. 程序实现实现内容:倒立摆系统模型,控制器以及仿真结果的显示。开发语言和工具:Matlab m 文件或 C/C+ (工具: VC

2、+或其它)3. PID 控制参数设定及仿真结果。分别列出不同杆长的仿真结果(例如:L=0.25 和 L=0.5)。4. 将理论推导、程序实现、仿真结果写成实验报告。具体求解过程如下:一,倒立摆系统动力学模型的建立图 1 摆杆的受力分析图以摆杆为研究对象,对其进行受力分析,如图 1 所示。根据质点系的达朗贝尔原理得(1)式中, 为杆的惯性力,表达式为 ,为杆的质量, 为重力加速度, 为杆的惯性力偶。惯性力及惯性力偶的大小分别为(2)式中, 为杆的角加速度, 为小车的加速度, 为杆的长度, 为杆偏离中心位置的角度, 偏离轨道中心的位移。对(2)式代入(1)式,并整理可得(3)当摆动较小时,可以进行

3、近似处理 。故(3)式可化为(4)对(4)式进行拉普拉斯变换得(5)则系统的开环传递函数为(6)式中,二,离散传递函数,差分方程、状态空间及稳定性分析1,离散传递函数将连续系统离散化,根据连续传递函数 可求得相应的脉冲传递函数为(7)式中, 。将参数 代入(7)式得该参数下的脉冲传递函数为(8)2,根据离散传递函数求系统差分方程由可得(9)进行反变换即可得到对应的差分方程(10)将参数 代入(10)式得该参数下的差分方程为(11)3,根据离散传递函数求系统状态空间表达式根据设(12) 则(13)选取状态变量(14)将 代入 ,取 反变换,可得状态方程(15)将参数 代入(15)式得该参数下的状

4、态方程为(16)4,稳定性分析对于开环系统,由传递函数可得系统的特征方程为(17)特征方程的根为 。由于特征根中有一个大于 1,位于单位圆外,故系统是不稳定的。四,PID 控制器设计由以上分析可知,系统是不稳定的,为使倒立摆在受到干扰时能保持稳定,必须对系统进行 PID 控制器的设计。倒立摆计算机控制系统的框图如下模拟 PID 控制器的基本算式为(18)根据式(16)和(18)可求得在不同 下的摆角值。具体的仿真过程如下:1,取 固定不变, 分别取 0.5,1.0,1.5,2.0,倒立摆的输出变化曲线如下:(a1)(b1)(c1)(d1)由图(a1)、(b1)、(c1)、(d1)可知,当 时,

5、倒立摆在受到干扰时可以达到稳定;继续增大 到 1.0,系统的调节时间变短;当 时,虽然倒立摆仍能稳定,但调节时间变长;当 时,倒立摆已无法恢复稳定。2,取 固定不变, 分别取-0.5,-1.5,-2.5,-3.5,倒立摆的输出变化曲线如下:(a2)(b2)(c2)(d2)由图(a2)、(b2)、(c2)、(d2)可知,当 时,倒立摆在受到干扰时开始可以达到稳定,但当时间变长后无法达到稳定;继续减小 到-1.5,系统可以达到稳定;当 时,系统的调节时间变短;当 减小到-3.5 时,倒立摆已无法恢复稳定。3,取 固定不变, 分别取-0.1,-0.3,-0.5,-0.7,倒立摆的输出变化,曲线如下:

6、(a3)(b3)(c3)(d3)由图(a3)、(b3)、(c3)、(d3)可知,当 从-0.1 减小到-0.7 时,倒立摆在受到干扰时达到稳定的调节时间先减小后增大,到-0.7 时系统已无法恢复稳定。五,改变杆长后的仿真结果将杆长由 改为 ,系统的仿真结果如下:1,取 固定不变, 分别取 0.2,0.4,0.8,1.0,倒立摆的输出变化曲线如下:(a11)(b11)(c11)(d11)由图(a11)、(b11)、(c11)、 (d11)可知,当 时,倒立摆在受到干扰时可以达到稳定;继续增大 到 0.4,系统的调节时间变短;当 时,虽然倒立摆仍能稳定,但调节时间变长;当 时,倒立摆已无法恢复稳定

7、。2,取 固定不变, 分别取-1.0,-1.3,-1.6,-1.9,倒立摆的输出变化曲线如下:(a12)(b12)(c12)(d12)由图(a12)、(b12)、(c12)、 (d12)可知,当 时,倒立摆在受到干扰时开始可以达到稳定,但当时间变长时会失去稳定;继续减小 到-1.3,系统可以达到稳定;当时系统可以稳定但调节时间变长;当 减小到-1.9 时,倒立摆已无法恢复稳定。3,取 固定不变, 分别取-0.01,-0.1,-0.2,-0.24,倒立摆的输出变化,曲线如下:(a13)(b13)(c13)(d13)由图(a13)、(b13)、(c13)、 (d13)可知,当 从-0.01 减小到

8、-0.24 时,倒立摆在受到干扰时达到稳定的调节时间先减小后增大,到-0.24 时系统已无法恢复稳定。附录:1,PID 设计过程的 Matlab 程序如下l=1;g0=10;%重力加速度tt=0.01;%采样周期a=3/(4*l);%代数 anumGs=-a 0 0;%连续传递函数的分子denGs=1 0 -a*g0;%连续传递函数的分母sysGs=tf(numGs,denGs);%系统连续传递函数F,G,C,D=ssdata(c2d(sysGs,tt,zoh);%求得 ZOH 下 以 tt 为采样周期的状态空间(离散)t(1)=0;x=zeros(1,1000);%一行 1000 列 0 矩

9、阵theta(1)=0;e=zeros(1,1000); %一行 1000 列 0 矩阵s=0;KP=0.5;KI=-2.0;KD=-0.3;% 设置 PID 参数y=0;0;for k=2:1000;t(k)=t(k-1)+tt;if k=20delta=0.1;elsedelta=0;endtheta(k-1)=theta(k-1)+delta; e(k)=-theta(k-1);%PID 公式的第一项s=s+e(k);%PID 公式的第二项x(k)=KP*e(k)+KI*s+KD*(e(k)-e(k-1);%PID 公式theta(k)=C*y+D*x(k);%初始输出 y 为零y=F*

10、y+G*x(k);endfigure(1)plot(t,theta),gridtitle(KP=0.5,KI=-2.0,KD=-0.3)xlabel(t/s),ylabel(theta)2,为便于改变参数,可利用 Matlab 的 GUI 界面来方便的进行 PID 参数的设计,所设计的界面如下图所示:此时需将程序命令添加到 Plot 按钮下,即function plot_push_Callback(hObject, eventdata, handles)l=str2double(get(handles.L_edit,String);tt=str2double(get(handles.T_edi

11、t,String);g0=str2double(get(handles.G_edit,String);KP=str2double(get(handles.KP_edit,String);KI=str2double(get(handles.KI_edit,String);KD=str2double(get(handles.KD_edit,String);a=3/(4*l);numGs=-a 0 0;denGs=1 0 -a*g0;sysGs=tf(numGs,denGs);F,G,C,D=ssdata(c2d(sysGs,tt,zoh);t(1)=0;x=zeros(1,1000);theta(

12、1)=0;e=zeros(1,1000);s=0;y=0;0;for k=2:1000;t(k)=t(k-1)+tt;if k=20delta=0.1;elsedelta=0;endtheta(k-1)=theta(k-1)+delta; e(k)=-theta(k-1);s=s+e(k);x(k)=KP*e(k)+KI*s+KD*(e(k)-e(k-1);theta(k)=C*y+D*x(k);y=F*y+G*x(k);endplot(t,theta),gridxlabel(t/s),ylabel(theta) 如输入杆长 为 1.0,采样时间 为 0.01,重力加速度 为 10.0,比例环节 为 1.0,积分环节 为-2.0,微分环节 为-0.3,点击 Plot,可观察此时的图形界面如下图所示:

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报