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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(自动控制球杆系统实验指导书资料.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

自动控制球杆系统实验指导书资料.docx

1、自动控制球杆系统实验指导书资料自动控制综合实验 2 实验指导书Part 1球杆系统 GBB1004北京邮电大学自动化学院林雪燕2016.5.24前 言自动控制是一门理论与实践并重的技术,在成功掌握了理论知识(经典控制、 现代控制)的同时再配合做一些经典的自动控制实验,从而加深对自动控制的理解 与掌握,为今后从事自动控制的设计和研究工作打下扎实的基础。为了更好地配合理论教学,达到理论与实践完美的结合,将自动控制相关的实 验独立设置成一门实验课:自动控制综合实验。自动控制理论实验主要目的是通过 实验进一步理解自动控制理论的基本概念,熟悉和掌握控制系统的分析方法和设计 方法,掌握常用工程软件使用,如

2、 MATLAB、LabVIEW 等。上学期开设的自动控制综 合实验(1)主要内容为控制系统的 Matlab/simulink 仿真和基于实验箱的硬件模拟, 以电路系统为研究对象。本学期开始的自动控制综合实验(2)的内容是基于典型 控制理论实验设备(球杆系统和倒立摆系统),熟悉和掌握控制系统的分析和设计 方法。球杆系统机械简单,结构紧凑,安全性高,采用智能伺服驱动模块和Windows 程序界面,可用于教学或科研。对于自动控制理论等课程来说,针对设备的非线性 与不稳定性特点,设计有效的控制系统是项有意义的工作。球杆系统要完成的实验 有:实验一:小球位置的数据采集处理 实验二:球杆系统的PID法控制

3、 实验三:球杆系统的根轨迹法控制 实验四:球杆系统的频率响应法控制倒立摆是一个典型的不稳定系统,同时又具有多变量、非线性、强耦合的特性, 是自动控制理论中的典型被控对象。运用控制手段可使之具有一定的稳定性和良好 的性能。许多抽象的控制概念如控制系统的稳定性、可控性、系统收敛速度和系统 抗干扰能力等,都可以通过倒立摆系统直观的表现出来。倒立摆系统要完成的实验 有:实验五:倒立摆的数学建模及稳定性分析 实验六:倒立摆的状态反馈控制 实验七:不同状态下状态反馈控制效果比较 实验八:倒立摆的LQR 控制同学们完成实验后,要完成相应的实验报告,并及时提交。实验报告内容包含 实验名称、实验目的、实验内容、

4、实验要求、实验原理、实验设备及仪器、实验步 骤、实验结果及分析、问题回答、心得体会、附上必要的实验原程序。成绩评定:考勤 10+实验过程表现 40+实验报告 50=100 分简 介球杆系统机械简单,结构紧凑,安全性高,采用智能伺服驱动模块和Windows 程序界面,可用于教学或科研。对于自动控制理论等课程来说,针对设备的非线性 与不稳定性特点,设计有效的控制系统是项有意义的工作。球杆系统主要由以下部分组成,如下图0-1所示: 机械部分(包含直流伺服电机和电源):通过电机调整横杆的倾斜角,使小球稳定 平衡在横杆的某一位置; 智能伺服驱动:控制箱内的IPM100模块通过RS-232接口与计算机通讯

5、,完成控制 任务; 计算机:在MatLab Simulink环境下设计控制算法,实现控制目标。图 1球杆系统采用电位计检测小球的位置,电位计安装在横杆上,小球位置对应的 电压信号输送给IPM100智能驱动的AD转换器,如图0-2所示图0-2 小球的位置信号采集原理 球杆系统的闭环控制系统结构图0-3如下:图0-3 系统控制结构直流马达通过一个减速皮带轮带动横杆运动,IPM100智能驱动器内部包一个PID 控制算法,用于控制电机的位置,PID控制器的参数已经调整,保证电机具有较快的 响应并没有超调。系统通过以下步骤来实现控制:i. 通过RS232下载控制程序到智能伺服驱动器的板载内部寄存器中。i

6、i. 电机编码器的信号和小球的位置信号每隔一定时间反馈给系统,(伺服时 间可设置,默认为5ms)iii. 板载的DSP对下载的程序进行解码,然后计算根据反馈的位置信息和控制算法计算控制量。iv. 计算得到的控制量被放大并通过IPM的电源驱动模块作用给电机。v. 这样,通过控制电机的位置,使得小球在设定的位置保持平衡。控制系统的流程图如图0-4所示:图0-4 控制程序流程图为了使小球稳定平衡在横杆的某一位置,首先应建立球杆系统的数学模型,然 后对小球位置进行数据采集。控制量的设计方法有PID法、根轨迹法、和频率响应法。系统建模1.1 球杆系统的数学模型球杆系统机械结构原理图如图1-1:图1-1

7、球杆系统机械结构连线(连杆和同步带轮的连接点与齿轮中心的连线)和水平线的夹角为( 的角度存在一定的限制,在最小和最大的范围之间),它作为连杆的输入,横杆的 倾斜角和之间的有如下的数学关系: = d L(1)角度和电机轴之间存在一个减速比n=4的同步带,控制器设计的任务是通过调 整齿轮的角度,使得小球在某一位置平衡。小球在横杆上滚动的加速度如下式: J .+ + - 2 = 0 (2)( m) rR 2mg sinm r( )其中 :小球在横杆上的位置r为输出2已知小球的质量m = 0.11kg;小球的半径R = 0.015m;重力加速度g=9.8m/s2; 横杆长L =0.4m;连杆和齿轮的连

8、接点与齿轮中心的距离为d = 0.04m; 小球的转动 惯量 J = 2mR kg.m2。假设小球在横杆上的运动为滚动,且摩擦力可以忽略不计。5因为期望角度在0附近,因此可以在0附近对其进行线性化,得到近似的线性 方程:. mgr = J =( + m)R 2mgd JL( + m)R 2(3)2=拉氏变换得: r (s) = mgd 10.72(4) (s)L( J + m) s sR 2球杆系统是一个典型的单输入单输出系统,其传递函数可以近似为一个两阶的积分器。R(s)和(s)分别为系统输出(小球位置)和输入(齿轮角度)的拉氏变 换。开环系统的阶跃响应如图 1-2 所示,可以看出,系统不稳

9、定,需要对其实施闭环控制与添加校正器。图 1-2 球杆系统的开环响应1.2 伺服系统的数学模型图0-3中的直流伺服系统由电机、编码器和IPM100智能驱动组成,形成了内闭环, 结构图如图1-3所示。图1-3 闭环系统结构图 设皮带轮的减速比为 n,因为 La 很小,因此简化可以得到:上式可以简化如下:其中,传递函数包含一个积分项1/s,具有积分的特性,通常Ra、J0和Tm都很小,伺服电机 可以看作为一个积分器。实验一 小球位置的数据采集处理为正常运行下面的程序,应将MatLab主窗口的Current Directory文本框设置 为球杆控制程序的系统文件夹, 如c:program file m

10、atlab 2010a toolboxgoogoltech ballbeam。通过IPM Motion Studio和MATLAB采集小球的位置信号,以及对其进行数字滤波 器的设计。小球的位置通过电位计的输出电压来检测,它和IPM100的AD转换通道AD5相连,AD5(16位)的范围为065535,对应的电压为05V,相应的小球位置为0400mm。一、MATLAB Simulink环境下的数据采集MATLAB的数据采集和处理工具箱提供了强大的数据采集功能,可以很方便的进 行数据采集和处理的工作。请参考以下步骤:1. 在Simulink中打开”Googol Educational Product

11、s”工具箱,打开“Ball&BeamControl DemoBall&Beam Data Collection And Filter Design”演示程序。 确认串行口COM Port为1后,双击Start Real Control模块,打开数据采集处理程序界面,程序尚未完成:图2-1尚未完成的数据采集处理程序界面上面的模块不需再编辑设置,其中Noise Filter1模块是专门设计的滤波器,用 来抑制扰动。请参考以下步骤完成剩余部分:(1)添加、设置模块: 添加User-Defined Functions组中的S-Function模块,双击图标,设置name为AD5;parameters为

12、20. 添加Math Operations组中的Gain模块,双击图标,设置Gain为0.4/65535.0. 添加Sinks组中的Scope模块,双击图标,打开窗口,点击(Parameters),设置General页中的Number of axes为2,Time Range为20000,点击OK退出,示波器屏成双; 分别右击双屏,选Axes properties,设置Y-min为0,Y-max为0.4.(2)连接模块:顺序连接AD5、Gain、Noise Filter1、Scope模块,完成后的程序界面如图2-2所示:图2-2 完成的数据采集处理程序界面 图2-2 中各部分的意义如下:“S-

13、Function”模块用于采集IPM100控制器的AD5通道的数值,“Gain ”模块 用于转化AD5通道的数值为小球的实际位置(0400mm),“Noise Filter1”为根 据需要而设计的滤波器,点击“Scope”可以观测到滤波前后的差异,可以作为一个 在MATLAB Simulink环境下的滤波器的设计与实时控制的实验。2. 运行控制程序,使小球在横杆上滚动,可以得到如下图2-3的实验结果:二、实验内容图2-3 小球位置的数据采集处理1. 在MatLab Simulink中完成球杆系统的Data Collection And Filter Design模 型并运行,拨动小球在横杆上滚

14、动,得到数据采集及滤波的实验结果,交Data.mdl图形文件。2.建立球杆系统的simulink模型系统方程(2)、(3)式中包含r, d/dt(r), alpha, and d/dt(alpha),使用非线性函数模块来描述这些函数:1)在Simulink中打开一个新的模型: 从commonly used blocks中插入一个积分模块。 在上面的积分模块右边再添加一个积分模块,并把两个模块连接起来。 在连接线上加上d/dt(r)的注释,在连接线的附近双击就可以添加文字。 从第二个积分模块的输出端画一条线,并标识为r 从commonly used blocks模块库中插入一个Out模块并和r信

15、号线连接。这 就是系统的输出。 更改Out的标识为r。2)接下来插入一个包含向量 r d/dt(r) alpha d/dt(alpha)的函数,输出为d/dt(r): 从user-defined functions模块库中插入一个Fcn模块,并把它的输出和第一 个积分模块的输入相连。 双击Fcn模块,修改函数如下:(-1/ (J/(R2) +m)*(m*g*sin (u 3)-m*u 2*(u 4) 2)此函数模块的输入为向量u,每个元素被指定u1,u2等,设定u1=r,u2=d/dt(r), u3=alpha, u 4=d/dt(alpha).关闭对话框,改变Fcn模块的名称为Ball-Be

16、am Lagrangian Model,3) 构造函数的输入向量u,它可以通过积分器的输出信号以及使用一个Mux模块实现:从commonly used blocks中插入一个Mux模块,并把其输出和Ball-Beam的输入 相连。 双击Mux模块,改变输入的个数为4,这样,Mux模块就有了4个输入。选中display option:none,可将Mux模块变成无黑色填充。 将Mux模块的第二个输入和d/dt(r)信号相连(移动鼠标时按住Ctrl键即可绘制分 岔线)。 将Mux模块的第一个输入和r信号相连。4)通过theta信号构造alpha和d/dt (alpha)信号: 在窗口的左边,从so

17、urce模块库中插入一个模块In1,改变名称为theta。 从commonly used blocks中插入一个Gain模块并和theta模块相连,改变名称为d/L。 将Gain模块的输出和Mux模块的第三个输入相连,标注为alpha. 从continuous模块库中插入一个Derivative模块,并置于alpha信号线的下面。 将Derivative模块的输入和Gain模块的输出相连。 将Derivative模块的输出和Mux模块的第四个输入相连。得到如图2-4所示的球杆的simulink模型。保存模型为ballbeam.mdl, 运行开 环仿真可以得到系统的开环响应,下一步把它封装为一个

18、子模块。1 thetad/L Gai nalphadu/dtDeri vati veM uxf(u)Bal l -beam Largrangi an M odel1 sIntegratord/dt(r)1s r 1rIntegrator15)封装子模块图2-4 球杆的simulink模型 创建一个新的模型窗口(从Simulink的File菜单选择New或是按下Ctrl-N)。 从commonly used blocks中模块库中插入一个“Subsystem”模块。 双击Subsystem模块打开,可以看到一个新的模块窗口,标题为Subsystem。 打开前面的ballbeam.mdl窗口,选择

19、所有的模块和连线。 复制并粘贴到Subsystem窗口中。 关闭Subsystem窗口,可以看到一个没有标题的子模块,该模块有一个标识为 “theta”的输入和一个标识为“r”的输出。 选择模块并拖动角点,改变模块的大小,使得 改变“Subsystem”的模块名称为Ball and Beam Model。6)运行开环仿,得到系统的开环响应从Sources模块库中插入一个“Step”模块,并将它和“Ball and Beam”模块 的输入相连。 双击“Step”模块,修改“Step Time”为0,然后关闭。 从“Sinks”模块中插入一个“Scope”模块,并将它和“Ball and Beam

20、”模 块相连。得到如图2-5所示的球杆开环系统。图2-5 球杆开环系统在得到阶跃信号响应前,需要先设置系统的物理参数,在MATLAB的命令行 中输入:m = 0.11;R = 0.015;g = -9.8; L = 0.4;d = 0.04;J = 2*m*R2/5;现在可以开始仿真,点击“Simulation”菜单的“Start”开始仿真,运行完成后, 双击“Scope”打开运行结果。 如图2-6所示。图2-6 球杆开环系统的阶跃响应从上图中可以看出,开环系统是一个不稳定的系统,小球将滚动到横杆的一端。 这样,需要对小球的位置添加一些控制方法或控制器。假设控制的指标要求如下: 调整时间小于1

21、秒(2误差); 超调量小于10下面将介绍几种适合于此类问题的控制器设计方法:PID控制、根轨迹法、频率响应法。三、实验要求1)在MatLab Simulink中完成球杆系统的Data Collection And Filter Design模 型并运行,拨动小球在横杆上滚动,得到数据采集及滤波的实验结果,交Data.mdl图形 文件。2)在MatLab Simulink中完成球杆开环系统的simulink模型、封装模型和阶跃响应, 结果要验收并放在实验报告中。3)思考:在 MATLAB 中,将球杆系统的 simulink 模型转化为相应的状态空间模 型或是传递函数模型。(MATLAB 函数 l

22、inmod(),ss2tf())四、书写实验报告并提交实验二 球杆系统的PID法控制一、实验原理含有控制器、球杆系统结构和小球位置反馈的系统框图如下图3-1所示:图3-1 闭环比例控制结构图 其中,Xd(s)为小球目标位置的拉普拉斯变换;W(s)为球杆系统的传递函数,2=W(s) = r (s) = mgd 10.72(4); PID 控 制 器 的 传 递 函 数 为 : (s)L( J + m)R 2Ks sK s 2 + Ks + KGC (s) = K P+ I + Ks Ds = D P I s 2其中,K , KP I和K 为PID控制器的比例,积分和微分参数。D比例P控制可改变信

23、号的增益但不影响其相位。用于串联校正时,可提高系统的 开环增益,减小稳态误差,但会降低稳定性。PD控制用于串联校正时,可使系统增加一个开环零点(-1/),提高系统的相 角裕度,有助于动态性能的改善。PD控制用于串联校正时,可使系统增加一个开环极点和开环零点。位于原点的 开环极点可提高系统的型别,以消除或减小系统的稳态误差,而增加的负实数零点 可缓和极点对系统的稳定性产生的不利影响。PID控制:选择适当的参数Ki和KD可使系统增加两个负实数零点和一个位于原点的开环极点。与PI控制器相比,除了同样具有提高系统稳态性能的优点外,还对提 高系统的动态性能有更大的优越性。二、实验内容1. P控制 首先,

24、分析在添加P控制器后,系统的闭环响应,然后,微分和积分控制器将在需要时加。P控制器为:GP (s)=KP闭环系统的传递函数为: 可以比较明显的看出,这是一个二阶系统。(1) 仿真假设比例增益K 3,闭环系统的传递函数可以通过以下的MATLAB命令进行仿真。Pm = 0.11;R = 0.015;g = -9.8; L = 0.4;d = 0.04;J = 2*m*R2/5;K = (m*g*d)/(L*(J/R2+m); %simplifies input num = -K;den = 1 0 0;plant=tf(num,den);kp = 3;sys_cl=feedback (kp*pla

25、nt, 1);step(0.2*sys_cl) 在MATLAB环境下运行文件。 阶跃信号的响应如下图3-2所示:图3-2 P控制下的响应 可以看出,添加P控制器后,系统并不能稳定。改变Kp 的值后,系统还是不稳定的,可以看出,对于一个惯性系统,在P控制器作用下,系统会保持一个等幅振荡。(2) 实验i.在MATLAB Simulink环境下运行演示程序。在Simulink中打开c:program file matlab 2010a toolbox googoltech ballbeam BallBeam PID,运行PID程序,确认串行 口COM Port为1后,双击Start Real Con

26、trol模块,打开控制程序界面,如图3-3所示.图3-3 PID控制演示界面ii. 将控制器设置为P控制器。iii. 设置目标位置为200mmiv. 用手指将小球拨动到100mm的地方。v. 松开小球,系统将对小球的位置进行平衡。vi. 改变并观察其响应,实验结果如下,比较实验结果和仿真结果的区别。(建 议参数不要设置过大)2. PD控制 PD控制器的传递函数为: 闭环系统的传递函数为:图3-4 实验结果GPD (s) = K P + K D s2 X (s) = GPD (s)W (s) = c(K P + K D s) (1) 仿真 X d (s)1 + GPD (s)W (s)s + c

27、K D s + cK P令kp1 = 6, kd1 = 6,编写MATLAB的M文件,运行仿真观察阶跃响应的仿真结果。 仿真结果如图3-5所示。可以看出,闭环系统是一个稳定的系统,但是超调和稳定时 间都过大。写出超调量1%和调整时间ts2。改变控制参数KP2, KD2,编写MATLAB的M文件,运行仿真观察阶跃响应的仿真结果。 记录仿真曲线,计算超调量2%和调整时间ts2。改变控制参数KP3, KD3,编写MATLAB的M文件,运行仿真观察阶跃响应的仿真结果。 记录仿真曲线,计算超调量3%和调整时间ts3。由仿真运行曲线和性能指标,分析控制参数的作用。(2)实验 图3-5 PD控制时的球杆系统

28、的单位阶跃响应i.在MATLAB Simulink中运行PID控制演示程序Ballbeam PID。ii. 切换控制器为PD控制器,并设置参数:kp=6, kd =6。iii. 设置目标位置为200mmiv. 移动小球的位置,使其大概在50mm的地方。 v. 松开小球,系统将试图稳定小球的位置。 vi.观察其响应并记录响应图,计算性能指标。vii. 改变KP和KD ,和matlab仿真设置相同,观察其响应并记录响应图,计算性能指标并使其满足控制目标。 在PD控制器的作用下,系统可以很快的平衡,但是稳态误差比较大,分析小球的位置改变和齿轮转动角度的变化之间的关系,对比实验结果和仿真结果的区别。3

29、.PID控制分析图3-6 PD控制器控制结果PID控制器的传递函数为:GPIDK s 2 + K s + K (s) = D P I s闭环系统的传递函数如下所示:232 X (s) = GPID (s)W (s) = c(K D s + K P s + K I ) (1) 仿真X d (s)1 + GPID (s)W (s)s + cK D s+ cK P s + cK I设置控制参数: KP1=10, KI1=1, KD1 =10,编写MATLAB的M文件,运行仿真观察阶跃响应的仿真结果。记录仿真曲线,计算超调量1%和调整时间ts1。 改变控制参数:KP2=10, KI2=1, KD2 =20,编写MATLAB的M文件,运行仿真观察阶跃响应的仿真结果。记录仿真曲线,计算超调量2%和调整时间ts2。改变控制参数:KP3=15, KI3=1, KD3 =40,编写MATLAB的M文件,运行仿真观察阶 跃响应的仿真结果。记录仿真曲线,计算超调量3%和调整时间ts3。由仿真运行曲线和性能指标,分析控制参数的作用。(2) 实验 i.在MATLAB Sim

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1