




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第1章 概述控制系统设计是控制科学与工程系学生的一门必修专业基础课,课程中的一些概念相对比较抽象,如系统的稳定性、可控性、收敛速度和抗干扰能力等。倒立摆系统是一个典型的非线性、强耦合、多变量和不稳定系统,作为控制系统的被控对象,它是一个理想的教学实验设备,许多抽象的控制概念都可以通过倒立摆直观地表现出来。本课程设计的目的是让学生以一阶倒立摆为被控对象,了解用古典控制理论设计控制器(如PID控制器)的设计方法和用现代控制理论设计控制器(最优控制)的设计方法,掌握MATLAB仿真软件的使用方法及控制系统的调试方法,加深学生对所学课程的理解,培养学生理论联系实际的能力。本课程设计的被控对象采用固高公
2、司生产的GIP-100-L型一阶倒立摆系统,课程设计包括三方面的内容:(1)建立一阶倒立摆的线性化数学模型;(2)倒立摆系统的PID控制器设计、MATLAB仿真及实物调试;(3)倒立摆系统的最优控制器设计、MATLAB仿真及实物调试。1.1 实验设备简介一阶倒立摆系统的结构示意图如图1所示。图1 一阶倒立摆结构示意图系统组成框图如图2所示。图2 一阶倒立摆系统组成框图系统是由计算机、运动控制卡、伺服机构、倒立摆本体和光电码盘几大部分组成的闭环系统。光电码盘1将小车的位移、速度信号反馈给伺服驱动器和运动控制卡,摆杆的角度、角速度信号由光电码盘2反馈给运动控制卡。计算机从运动控制卡中读取实时数据,
3、确定控制决策(小车运动方向、移动速度、加速度等),并由运动控制卡来实现该控制决策,产生相应的控制量,使电机转动,通过皮带,带动小车运动,保持摆杆平衡。1.2 设计内容1建立一阶倒立摆数学模型在自动控制理论课程中,有一章专门讲述控制系统的数学模型的建立方法,并将非线性数学模型在一定条件下化简成线性数学模型,在此以一阶倒立摆为例,建立其数学模型,并在摆角附近将其非线性数学模型线性化,学生通过实际数学模型的推导,加深对所学内容的理解。2. 控制系统的MATLAB仿真自动控制理论(古典部分)中所讲的控制器的设计方法很多,如根轨迹设计法、频率特性设计法和PID设计法,在实际系统中PID控制器应用最多,在
4、本课程设计中选择PID控制器,PID控制器的特点是只能对单变量(此处为摆杆角度)进行控制。在现代控制理论中,普遍采用的控制方法是最优控制(LQR控制),最优控制可对多变量进行控制(如同时控制摆杆角度和小车位置),由于现代控制理论课时较少,对最优控制的讲解也很少,在这里通过对倒立摆的控制,让学生理解单变量控制和多变量控制的差别。本部分课程设计的目的是学习PID控制器和LQR控制器的设计方法,了解控制器参数对系统性能指标的影响,学会根据控制指标要求和实际响应调整控制器的参数,加深学生对所学内容的理解。系统的MATLAB控制软件已编好,学生在进行控制系统设计时,只需将控制器参数输入,就可观察到控制系
5、统的输出,仿真的目的一方面是让学生得到满足系统性能指标的控制器参数,另一方面是让学生将理论分析与仿真结果进行对比,更直观地理解各参数对控制性能的影响。3. 倒立摆控制系统实物调试倒立摆系统实验装置如图3所示。具体实验步骤如下:(1)将小车推到导轨正中间位置,并且使摆杆处于自由下垂的静止状态。(2)给计算机和电控箱通电。(3)打开计算机,在DOS操作系统下启动程序,并使系统处于准备状态。(4)起摆:由于PID控制只能控制摆杆的摆角,不能控制小车的位置,若用PID控制方式起摆,可能在摆杆竖起前就已出现“撞墙”现象,因此先采用最优控制方式起摆,等摆杆立起来并稳定下来之后,选择控制器菜单中的控制方式,
6、输入参数,观察小车和摆杆的运动。由于PID控制器只对摆杆角度进行控制,所以在PID控制中小车可能向一个方向运动,此时需用手轻轻扶一下摆杆,以避免小车“撞墙”。最优控制方式可同时对摆杆角度和小车位置进行控制,因此不会出现“撞墙”现象。()观察控制效果:用金属棒碰一下摆杆,观察倒立摆在干扰信号作用下的输出响应。若不能达到指标要求,分析原因,重新设计,直到对实际系统的控制达到满意的结果。具体实验操作见附录1。图3 倒立摆实验装置1.3 实验准备及注意事项1为了安全起见,在进行系统连线、拆卸与安装前,必须关闭系统所有电源。2使用前请仔细检查连线,确保接线正确无误。如果码盘连线接反或断线,将会发生冲撞。
7、3为了避免设备失控时造成人身伤害,操作时人员应该与设备保持安全距离,一定不要站在摆的两端。4如果发生异常,按下空格键,系统会提示“急停按钮被触发,无法继续控制系统,按任意键退出程序。”5超速时,系统会自动关闭伺服电机,并出现“小车失速,系统被终止,按任意键退出程序。”1.4 课程设计任务书哈尔滨工业大学课程设计任务书 姓 名: 院 (系): 专 业: 班 号: 任务起至日期: 年 月 日至 年 月 日 课程设计题目: 一阶倒立摆控制器设计 已知技术参数和设计要求:本课程设计的被控对象采用固高公司的一阶倒立摆系统GIP-100-L。系统内部各相关参数为:小车质量 0.5 Kg ;摆杆质量0.2
8、Kg ;小车摩擦系数0.1 N/m/sec ; 摆杆转动轴心到杆质心的长度0.3 m ;摆杆惯量0.006 kg*m*m ;采样时间0.005秒。设计要求:1推导出系统的传递函数和状态空间方程。用Matlab进行脉冲输入仿真,验证系统的稳定性。2设计PID控制器,使得当在小车上施加1N的脉冲信号时,闭环系统的响应指标为:(1)稳定时间小于5秒(2)稳态时摆杆与垂直方向的夹角变化小于0.1 弧度3设计最优控制器,使得当在小车上施加0.2m的阶跃信号时,闭环系统的响应指标为:(1)摆杆角度和小车位移的稳定时间小于5秒(2)的上升时间小于1秒(3)的超调量小于20度(0.35弧度)(4)稳态误差小于
9、2%。 工作量:1. 建立一阶倒立摆的线性化数学模型;2. 倒立摆系统的PID控制器设计、MATLAB仿真及实物调试;3. 倒立摆系统的最优控制器设计、MATLAB仿真及实物调试。 工作计划安排: 同组设计者及分工: 各项工作独立完成 指导教师签字_ 年 月 日 教研室主任意见: 教研室主任签字_ 年 月 日*注:此任务书由课程设计指导教师填写。第2章 一阶倒立摆的数学模型设计目的:建立一阶倒立摆系统的数学模型,并在摆角附近将其非线性数学模型线性化,学生通过实际数学模型的推导,加深对系统建模和模型线性化问题的理解。对系统加入输入信号,进行Matlab 仿真,理解不稳定极点对系统稳定性的影响。设
10、计要求:写出系统的动态方程,得出传递函数和状态空间方程。用Matlab进行脉冲输入仿真,验证系统的稳定性。2.1 一阶倒立摆数学模型的推导对系统建立数学模型是系统分析、设计的前提,而一个准确又简练的数学模型将大大简化后期的工作。为了简化系统分析,在实际的模型建立过程中,要忽略空气流动阻力,以及各种次要的摩擦阻力。这样,可将倒立摆系统抽象成小车和匀质刚性杆组成的系统,如下图所示。本系统内部各相关参数定义如下: 小车质量 摆杆质量 小车摩擦系数 摆杆转动轴心到杆质心的长度 摆杆惯量 加在小车上的力 小车位置 摆杆与垂直向上方向的夹角 摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)下图是系
11、统中小车和摆杆的受力分析图。其中,和为小车与摆杆相互作用力的水平和垂直方向的分量。注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图,图示方向为矢量正方向。应用Newton方法来建立系统的动力学方程过程如下:分析小车水平方向所受的合力,可以得到以下方程:由摆杆水平方向的受力进行分析可以得到下面等式:即:把这个等式代入上式中,就得到系统的第一个运动方程: (2-1)为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:即:力矩平衡方程如下:注意:此方程中力矩的方向,由于,故等式前面有负号。合并这两个方程,约去和,得到第二个运动方程:
12、(2-2)1微分方程模型设,当摆杆与垂直向上方向之间的夹角与1(单位是弧度)相比很小,即 时,则可以进行近似处理:,。为了与控制理论的表达习惯相统一,即一般表示控制量,用来代表被控对象的输入力,线性化后得到该系统数学模型的微分方程表达式: (2-3) 2传递函数模型对方程组(2-3)进行拉普拉斯变换,得到 (2-4)注意:推导传递函数时假设初始条件为0。由于输出为角度,求解方程组(2-4)的第一个方程,可以得到把上式代入方程组(2-4)的第二个方程,得到整理后得到以输入力为输入量,以摆杆摆角为输出量的传递函数:其中 若取小车位移为输出量,可得传递函数:3状态空间数学模型由现代控制理论原理可知,
13、控制系统的状态空间方程可写成如下形式:方程组(2-3)对解代数方程,得到如下解:整理后得到系统状态空间方程:以上就是一阶倒立摆小车系统的状态空间表达式。2.2 系统MATLAB仿真和开环响应1传递函数在Matlab中,拉普拉斯变换后得到的传递函数可以通过计算并输入分子和分母矩阵来实现。假设系统内部各相关参数为: 小车质量 0.5 Kg 摆杆质量 0.2 Kg 小车摩擦系数 0.1 N/m/sec 摆杆转动轴心到杆质心的长度 0.3 m 摆杆惯量 0.006 kg*m*m 采样时间 0.005秒文件trans.m用于求系统传递函数、传递函数的极点以及开环脉冲响应。% trans.m % 倒立摆传
14、递函数、开环极点及开环脉冲响应% 输入倒立摆传递函数 G(S)=num/denM = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;q = (M+m)*(I+m*l2)-(m*l)2; % 计算并显示多项式形式的传递函数num = m*l/q 0 0den = 1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0% 计算并显示传递函数的极点pr,p,k = residue(num,den);s = p % 求传递函数的脉冲响应并显示t=0:0.005:5;impulse(num,den,t) % 显示范围:横坐标0-
15、1,纵坐标0-60,此条语句参数可根据仿真输出曲线调整axis(0 1 0 60)grid% end 执行上面的文件,得到系统传递函数的分子(num)与分母(den)多项式的Matlab 表示及系统的开环极点(s),显示结果如下所示: transnum = 4.5455 0 0den = 1.0000 0.1818 -31.1818 -4.4545 0s = -5.6041 5.5651 -0.1428 0 由此可知,系统传递函数的多项式表达式为:系统的开环极点为、,由于有一个开环极点位于平面的右半部,开环系统不稳定。MATLAB 仿真的开环脉冲响应(即给系统加一个脉冲推力)曲线如下图所示,系
16、统不稳定。2状态空间法状态空间法可以进行单输入多输出系统设计,因此在这个实验中,我们将尝试同时对摆杆角度和小车位置进行控制。为了更具挑战性,给小车加一个阶跃输入信号。我们用 Matlab 求出系统的状态空间方程各矩阵,并仿真系统的开环阶跃响应。在这里给出一个state.m文件,执行这个文件,Matlab将会给出系统状态空间方程的A,B,C和D矩阵,并绘出在给定输入为一个0.2 m的阶跃信号时系统的响应曲线。state.m程序如下:% state.m % 倒立摆状态方程及开环阶跃响应 % 输入倒立摆相关参数M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l =
17、 0.3;% p用于状态方程计算p = I*(M+m)+M*m*l2;% 输入倒立摆状态方程并显示A = 0 1 0 0;0 -(I+m*l2)*b/p (m2*g*l2)/p 0; 0 0 0 1;0 -(m*l*b)/p m*g*l*(M+m)/p 0B = 0; (I+m*l2)/p; 0; m*l/pC = 1 0 0 0; 0 0 1 0D = 0;0% 求开环系统的阶跃响应并显示T = 0:0.005:5;U = 0.2*ones(size(T);Y, X = lsim(A,B,C,D,U,T);plot(T,Y)% 显示范围:横坐标0-2,纵坐标0-100,此条语句参数可根据仿真
18、输出曲线调整axis(0 2 0 100)grid% end 执行上面的文件,得到系统的状态空间A、B、C、D矩阵, 显示结果如下所示: stateA = 0 1.0000 0 0 0 -0.1818 2.6727 0 0 0 0 1.0000 0 -0.4545 31.1818 0B = 0 1.8182 0 4.5455C = 1 0 0 0 0 0 1 0D = 0 0 MATLAB 仿真的开环阶跃响应曲线如下图所示,系统不稳定。图中,实线是摆杆角度响应曲线,虚线是小车位置响应曲线。2.3 模型仿真实验1实验步骤实际系统参数如下,按照上面给出的例子求系统的传递函数、状态空间方程,并进行脉
19、冲响应和阶跃响应的Matlab仿真。 小车质量 1.096 Kg 摆杆质量 0.109 Kg 小车摩擦系数 0 .1N/m/sec 摆杆转动轴心到杆质心的长度 0.2 5m 摆杆惯量 0.0034 kg*m*m 加在小车上的力 小车位置 摆杆与垂直方向的夹角 采样频率 0.005秒注意:在进行实际系统的Matlab仿真时,请将采样频率改为实际系统的采样频率。2设计报告要求(1)推导一阶倒立摆的数学模型,并将其在工作点线性化,给出微分方程、传递函数和状态空间表达式三种数学模型。(2)给出仿真结果和响应曲线。(3)分析系统的稳定性。第3章 倒立摆系统的PID控制算法设计本章主要利用PID控制算法对
20、一阶倒立摆系统进行控制器设计。在设计的过程中,要求熟悉控制参数、对系统性能的影响,然后按照所要求的控制指标并综合实际响应结果恰当地调整参数。运用MATLAB仿真软件可以快捷地进行系统仿真和参数调整,本章第2节的内容即是运用MATLAB软件对PID控制系统的设计和仿真。第3节中,将对控制系统进行实际的运行和参数调试,以获得一组最佳的PID控制参数。设计目的:学习PID控制器的设计方法,了解控制器各个参数对系统性能的影响,学会根据控制指标要求和实际响应调整PID控制器的参数。设计要求:设计PID控制器,使得当在小车上施加1N的脉冲信号时,闭环系统的响应指标为:(1)稳定时间小于5秒(2)稳态时摆杆
21、与垂直方向的夹角变化小于0.1 弧度3.1 理论分析1PID控制原理在模拟控制系统中,控制器最常用的控制规律是PID控制。常规PID控制系统原理框图如下图所示。系统由模拟PID控制器KD(S)和被控对象G(S)组成。PID控制器是一种线性控制器,它根据给定值与实际输出值构成控制偏差将偏差的比例(P)、积分(I)和微分(D)通过线性组合构成控制量,对被控对象进行控制,故称PID控制器。其控制规律为或写成传递函数的形式式中:比例系数;积分时间常数;微分时间常数。在控制系统设计和仿真中,也将传递函数写成式中:比例系数;积分系数;微分系数。简单说来,PID控制器各校正环节的作用如下:(1)比例环节:成
22、比例地反映控制系统的偏差信号,偏差一旦产生,控制器立即产生控制作用,以减少偏差。(2)积分环节:主要用于消除稳态误差,提高系统的型别。积分作用的强弱取决于积分时间常数,越大,积分作用越弱,反之则越强。(3)微分环节:反映偏差信号的变化趋势(变化速率),并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间。2摆杆角度控制这个控制问题和我们以前遇到的标准控制问题有些不同,在这里输出量为摆杆的位置,它的初始位置为垂直向上,我们给系统施加一个扰动,观察摆杆的响应。系统框图如下:图中是控制器传递函数,是被控对象传递函数。考虑到输入,结构图可以很容易地变换
23、成该系统的输出为其中: 被控对象传递函数的分子项被控对象传递函数的分母项PID控制器传递函数的分子项PID控制器传递函数的分母项被控对象的传递函数是其中 PID控制器的传递函数为只需调节PID控制器的参数,就可以得到满意的控制效果。3小车位置控制小车位置作为输出时,系统框图如下:其中,是摆杆传递函数,是小车传递函数。由于输入信号,所以可以把结构图转换成:其中,反馈环代表我们前面设计的摆杆的控制器。从此框图我们可以看出此处只对摆杆角度进行了控制,并没有对小车位置进行控制。小车位置输出为:其中,分别代表被控对象1和被控对象2传递函数的分子和分母。和代表PID控制器传递函数的分子和分母。下面我们来求
24、,根据前面实验二的推导,有可以推出小车位置的传递函数为其中 可以看出, =,小车的算式可以简化成: 3.2 PID控制算法的MATLAB仿真1摆杆角度控制算法的仿真文件pid1.m是输出为摆杆角度时系统的脉冲响应仿真软件,其中参数、分别为PID控制器的比例、微分和积分参数。文件如下:% pid1.m % 摆杆角度PID控制% 输入倒立摆传递函数 G1(S)=num1/den1M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;q = (M+m)*(I+m*l2)-(m*l)2; num1 = m*l/q 0 0;den1 = 1 b*(I+m*l
25、2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0;% 输入控制器PID数学模型 Gc(s)=numPID/denPIDKp = 1;Ki = 1; Kd = 1;numPID = Kd Kp Ki;denPID = 1 0;% 计算闭环系统传递函数G(s)=num/den% 多项式相乘num = conv(num1,denPID);% 多项式相加den = polyadd(conv(denPID,den1),conv(numPID,num1 );% 求整个系统传递函数的极点r,p,k = residue(num,den);% 显示极点s = p % 求取多项式传递函数的脉冲响应
26、t=0:0.005:5;impulse(num,den,t)% 显示范围:横坐标0-5,纵坐标0-10,此条语句参数可根据仿真输出曲线调整axis(0 5 0 10)grid% end 文件中用到求两个多项式之和的函数polyadd,它不是Matlab 工具,因此必须把它拷贝到polyadd.m文件中, 并把该文件和源文件一起拷贝到MATLAB工作区。polyadd.m文件如下:% polyadd.m % 求两个多项式之和 functionpoly = polyadd(poly1,poly2)if length(poly1) 0 poly = zeros(1,mz),short + long;
27、else poly = long + short;end% end 现在,就可以进行系统脉冲响应的PID控制仿真了。PID控制参数取为,闭环系统极点为:s = -8.0412 3.3105 0.0034 0脉冲响应曲线如下: 有2个闭环极点位于平面右半部,系统不稳定。从系统响应曲线也可看出,系统响应是不稳定的,不能满足要求,需要调整参数、和,直到获得满意的控制结果。首先增加比例系数,观察它对响应的影响,取,闭环极点为:s = -2.3635 +20.4396i -2.3635 -20.4396i -0.0001 -0.0001 系统脉冲响应曲线如下:系统闭环极点均位于平面左半部,系统稳定。系统
28、稳定时间约为2秒,满足要求。由于此时稳态误差为0,所以不需要改变积分环节(你可以改变积分系数,观察系统响应如何变化);系统响应的超调量比较大,为了减小超调,增加微分系数,取,观察响应曲线:系统响应满足指标要求。2小车位置控制算法的仿真pid2.m是仿真小车位置变化的m文件,文件如下:% pid2.m % 小车位置PID控制 % 输入倒立摆传递函数 G1(s)=num1/den1,G2(s)=num2/den2M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;q = (M+m)*(I+m*l2) -(m*l)2; num1 = m*l/q 0 0
29、;den1 = 1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0;num2 = -(I+m*l2)/q 0 m*g*l/q;den2 = den1;% 输入控制器PID数学模型 Gc(s)=numPID/denPIDKp = 1;Ki = 1; Kd = 1;numPID = Kd Kp Ki;denPID = 1 0;% 计算闭环系统传递函数G(s)=num/den% 多项式相乘num = conv(num2,denPID);% 多项式相加den = polyadd(conv(denPID,den2),conv(numPID,num1 );% 求闭环系统极
30、点r,p,k = residue(num,den);% 显示闭环系统极点s = p% 求取多项式传函的脉冲响应t=0:0.005:5;impulse(num,den,t) % 显示范围:横坐标0-5,纵坐标0-10,此条语句参数可根据仿真输出曲线调整axis(0 5 0 10)grid% end 取,阶跃响应仿真曲线如下图所示:由仿真结果能够看出,当摆杆角度处于很好的闭环控制下时,小车位置处于失控状态,会沿着某一方向运动下去。3.3 PID控制实验 PID控制只能对摆杆角度进行控制,而无法控制小车位置。1实际系统PID仿真实际系统参数如下: 小车质量 1.096 Kg 摆杆质量 0.109 K
31、g 小车摩擦系数 0 .1N/m/sec 摆杆转动轴心到杆质心的长度 0.2 5m 摆杆惯量 0.0034 kg*m*m 加在小车上的力 小车位置 摆杆与垂直方向的夹角 采样频率 0.005秒注意:在进行实际系统的Matlab仿真时,请将采样频率改为实际系统的采样频率。按照上面给出的例子,求出实际系统达到性能指标,PID控制器的参数。2实验步骤(1)将小车推到导轨正中间位置,并且使摆杆处于自由下垂的静止状态。(2)给计算机和电控箱通电。(3)打开计算机,在DOS操作系统下,键入“Pend” 启动程序,并按“s”使系统处于准备状态。(4)按 “”键起摆,等摆杆立起来并稳定下来之后(此时为LQR控
32、制),选择”控制器”菜单中的“PID”,输入参数,观察小车和摆杆的运动;(注意由于PID控制器只对摆杆角度进行了控制,所以在PID中输入参数后小车可能向一个方向运动,此时需用手轻轻扶一下摆杆)。(5)按“T”停止摆杆,当摆杆处于自由下垂的静止状态,并在”控制器”菜单中选择“PID”,并参照仿真结果,输入PID控制器参数,观察小车和摆杆的运动,通过调整参数可以控制摆杆摆起并能够竖直向上,此时可能需用手轻轻扶一下摆杆,以避免小车“撞墙”。(6)如果控制效果不理想,调整控制器参数,直到获得较好的控制效果。(7)选择“扰动”菜单中的“小车响应”和“摆杆响应”,可以看到控制曲线,并可以输入文件名将曲线保
33、存在当前路径下。(8)到Matlab中运行如下指令,Matlab会将保存的曲线重新绘制出来。S=load(路径文件名)plot(S)3设计报告要求(1)给出系统摆杆角度和小车位置的仿真控制图形及控制器参数,并对各个参数对系统控制效果的影响进行说明。(2)给出实际控制曲线和控制器参数,并对响应的动态和静态指标进行分析。第4章 倒立摆系统的最优控制算法设计现代控制理论的最突出特点就是将控制对象用状态空间表达式的形式表示出来,这样便于对多输入多输出系统进行分析和设计。线性二次型最优控制算法()是现代控制理论中一种重要的、基本的方法,算法的目的是在一定的性能指标下,使系统的控制效果最佳,即利用最少的控
34、制能量,来达到最小的状态误差。本章主要利用最优控制算法实现对一阶倒立摆系统的摆杆角度和小车位置的同时控制。设计目的:学习如何使用状态空间法设计系统的控制算法。设计要求:用状态空间法设计控制器,使得当在小车上施加0.2m的阶跃信号时,闭环系统的响应指标为:(1)摆杆角度和小车位移的稳定时间小于5秒(2)的上升时间小于1秒(3)的超调量小于20度(0.35弧度)(4)稳态误差小于2%。4.1 理论分析1线性二次型最优控制已知系统状态方程为: (4-1)要求确定最优控制向量 (4-2)的矩阵,使得性能指标 (4-3)达到最小。式中是正定(或正半定)实对称矩阵,是正定实对称矩阵。方程(4-3)右边的第
35、一项体现了对系统误差的要求,第二项体现了对控制信号能量损耗的要求,矩阵和的相对大小,确定了误差和能量损耗的相对重要性。在此,假设控制向量是不受约束的。因此,基于二次型性能指标的最优控制系统的设计归结为确定矩阵的各元素。采用二次型最优控制方法的一个优点是除了系统不可控的情况外,所设计的系统将是稳定的。经推导,当二次型最优控制问题的性能指标由方程(4-3)定义时,其最优控制规律是线性的,并由给出。其中最优控制向量 (4-4)矩阵必须满足下列方程 (4-5)方程(4-5)称为退化矩阵黎卡提方程,其设计步骤如下:(1)解退化矩阵黎卡提方程(4-5)求出矩阵,如果存在正定矩阵(某些系统可能没有正定矩阵)
36、,那么系统是稳定的,即矩阵是稳定矩阵。(2)将矩阵代入方程(4-4),求得的矩阵就是最优矩阵。MATLAB有一条命令,它给出连续时间黎卡提方程的解,并能确定最佳反馈增益矩阵。2最优控制器的设计在第3章中,我们的输入是脉冲量,并且在设计控制器时,只对摆杆角度进行控制,而不考虑小车的位移。然而,对一个倒立摆系统来说,把它作为单输出系统是不符合实际的,如果把系统当作多输出系统的话,用状态空间法分析要相对简单一些,在这一章我们将设计一个对摆杆位置和小车位移都进行控制的控制器。系统状态方程为在倒立摆相关参数为: 小车质量 0.5 Kg 摆杆质量 0.2 Kg 小车摩擦系数 0.1 N/m/sec 摆杆转
37、动轴心到杆质心的长度 0.3 m 摆杆惯量 0.006 kg*m*m 采样时间 0.005秒的条件下,状态方程系数矩阵如下:;最优控制的前提条件是系统是能控的,下面来判断一下系统的能控能观性。系统的能控矩阵的秩 。系统的能观矩阵的秩 。故系统是能控能观的。因此可以给系统加上最优控制器使得系统闭环稳定,且满足暂态性能指标。在运用线性二次型最优控制算法进行控制器设计时,主要的目的就是获得反馈向量的值。由上一小节的推导知道,设计系统状态反馈控制器时,一个关键的问题就是二次型性能指标泛函中加权矩阵和的选取。为了使问题简化及加权矩阵具有比较明确的物理意义,我们将取为对角阵。假设 ;这样得到的性能指标泛函
38、为由上式可以看出,是对的平方的加权,的相对增加就意味着对的要求相对其它状态变量严格,在性能指标中的比重大,的偏差状态相对减小。是对控制量的平方加权,当相对较大时,意味着控制费用增加,使得控制能量较小,反馈减弱,而取值较小时,系统控制费用减小,反馈增加,系统动态响应迅速。考虑到一阶倒立摆系统在运行过程中,主要的被控量为系统的输出量和,因此在选取加权对角阵的各元素值时,由于代表小车位置的权重,而是摆杆角度的权重,所以只选取、,而。选取和时需要注意的几个方面:(1)由于我们采用的系统模型是线性化的结果,为使系统个状态量能够在线性范围工作,要求各状态量不应过大。(2)闭环系统最好能有一对共轭复数极点,
39、这样有利于克服系统的非线性摩擦,但系统主导极点的模不应太大以免系统频带过宽,使得系统对噪声过于敏感,以致系统不能正常工作。(3)加权矩阵的减小,会导致大的控制能量,应注意控制的大小,不要超过系统执行机构的能力,使得放大器处于饱和状态。控制系统如下图所示,图中R是施加在小车上的阶跃输入,四个状态量、和分别代表小车位移、小车速度、摆杆位置和摆杆角速度,输出包括小车位置和摆杆角度。我们要设计一个控制器,使得当给系统施加一个阶跃输入时,摆杆会摆动,然后仍然回到垂直位置,小车到达新的命令位置。4.2 最优控制MATLAB仿真最优控制仿真程序为文件lqr1.m,文件如下:% lqr1.m % 最优控制%
40、确定开环极点的程序如下M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;p = I*(M+m)+M*m*l2;A = 0 1 0 0;0 -(I+m*l2)*b/p (m2*g*l2)/p 0;0 0 0 1;0 -(m*l*b)/p m*g*l*(M+m)/p 0;B = 0; (I+m*l2)/p; 0; m*l/p ;C = 1 0 0 0; 0 0 1 0;D = 0; 0;p = eig(A)% 求向量Kx = 1;y = 1;Q = x 0 0 0; 0 0 0 0; 0 0 y 0 0 0 0 0;R = 1; K = lqr(A
41、,B,Q,R)% 计算LQR控制的阶跃响应并画出曲线Ac = (A-B*K);Bc = B;Cc = C;Dc = D;T = 0:0.005:5;U = 0.2*ones(size(T);% 求阶跃响应并显示,小车位置为虚线,摆杆角度为实线Y,X = lsim(Ac,Bc,Cc,Dc,U,T); plot(T,Y(:,1),:,T,Y(:,2),-)legend(Cart Position,Pendulum Angle)grid% end 运行程序lqr1.m,得到 lqr1p = 0 5.5651 -0.1428 -5.6041K = -1.0000 -1.6567 18.6854 3.4
42、594 第一步:确定系统的开环极点为 0、5.5651、-0.1428、-5.6041,可以看出有一个极点位于S平面的右半部,这说明开环系统不稳定。第二步:在取,的条件下,得到反馈控制向量LQR控制的阶跃响应如图所示其中,实线代表摆杆的角度,虚线代表小车位置。从图中可以看出,响应的超调量很小,但稳定时间和上升时间偏大,小车的位置没有跟踪输入,而是向相反方向移动,这个问题留给同学们讨论,在这里我们来缩短稳定时间和上升时间。可以发现,矩阵中,增加使稳定时间和上升时间变短,并且使摆杆的角度变化减小。这里取,则,响应曲线如下:如果再增大和,系统的响应还会改善。但在保证和足够小的情况下,系统响应已经满足
43、要求了。 现在,要消除稳态误差。在前面的设计方法中,是把输出信号反馈回来乘以一个系数矩阵,然后与输入量相减得到控制信号。这就使得输入与反馈的量纲不一致,因此,为了使输入与反馈的量纲互相匹配,给输入乘以增益,如图所示: 具有量纲匹配的最优控制matlab仿真文件为lqr2.m,如下:% lqr2.m % 最优控制(量纲匹配) % 确定开环极点的程序如下M = 0.5;m = 0.2;b = 0.1;I = 0.006;g = 9.8;l = 0.3;p = I*(M+m)+M*m*l2;A = 0 1 0 0;0 -(I+m*l2)*b/p (m2*g*l2)/p 0;0 0 0 1;0 -(m
44、*l*b)/p m*g*l*(M+m)/p 0;B = 0; (I+m*l2)/p; 0; m*l/p ;C = 1 0 0 0;0 0 1 0;D = 0;0; p = eig(A);% 求向量Kx = 5000;y = 100;Q = x 0 0 0;0 0 0 0;0 0 y 00 0 0 0;R = 1; K = lqr(A,B,Q,R)% 计算LQR控制矩阵Ac = (A-B*K);Bc = B;Cc = C;Dc = D;% 计算增益NbarCn = 1 0 0 0;Nbar = rscale(A,B,Cn,0,K);Bcn = Nbar*B;% 求阶跃响应并显示,小车位置为虚线,
45、摆杆角度为实线T = 0:0.005:5;U = 0.2*ones(size(T);Y,X = Lsim(Ac,Bcn,Cc,Dc,U,T);plot(T,Y(:,1),:,T,Y(:,2),-)legend(Cart Position,Pendulum Angle)grid% end 文件中用到求取输入输出匹配系数函数rscale,它不是Matlab 工具,因此必须把它拷贝到rscale.m文件中, 并把该文件和源文件一起拷贝到MATLAB工作区。rscale.m文件如下:% rscale.m % 求取输入输出匹配系数functionNbar = rscale(A,B,C,D,K) s =
46、size(A,1);Z = zeros(1,s) 1;N = inv(A,B;C,D)*Z;Nx = N(1:s);Nu = N(1+s);Nbar = Nu + K*Nx;% end 用函数来计算,运行程序,得到: lqr2K = -70.7107 -37.8345 105.5298 20.9238即,可以看出,实际上和向量中与小车位置对应的那一项相等。此时系统的响应曲线如下,小车位置跟踪输入信号,并且,摆杆超调足够小,稳态误差满足要求,上升时间和稳定时间也符合设计指标。4.3 最优控制实验1实际系统最优控制仿真实际系统参数如下: 小车质量 1.096 Kg 摆杆质量 0.109 Kg 小车
47、摩擦系数 0 .1N/m/sec 摆杆转动轴心到杆质心的长度 0.2 5m 摆杆惯量 0.0034 kg*m*m 加在小车上的力 小车位置 摆杆与垂直方向的夹角 采样频率 0.005秒注意:在进行实际系统的Matlab仿真时,请将采样频率改为实际系统的采样频率。按照上面给出的例子,求出实际系统达到性能指标,LQR控制器的参数。2实验步骤(1)小车推到导轨正中间位置,并且使摆杆处于自由下垂的静止状态。(2)给计算机和电控箱通电。(3)打开计算机,在DOS操作系统下,键入“Pend” 启动程序,并按“s”使系统处于准备状态。(4)在“控制器”菜单中选择“LQR”,并根据计算结果,输入控制器参数,确定后观察系统的运行状态。(5)如果控制效果不理想,适当调整参
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 衡阳师范学院《马克思主义哲学(下)》2023-2024学年第二学期期末试卷
- 电子科技大学中山学院《车辆建模与仿真》2023-2024学年第二学期期末试卷
- 甘肃省兰州市第六十三中学2025届高三3月期初测试化学试题含解析
- 武汉科技大学《数字化教学资源设计与开发(C)》2023-2024学年第二学期期末试卷
- 许昌职业技术学院《植物保健与和谐植保》2023-2024学年第二学期期末试卷
- 湖南吉利汽车职业技术学院《日本文学》2023-2024学年第二学期期末试卷
- 工程造价领域发展趋势
- 工程教育基础
- 厂房强化护栏施工方案
- 屋面设备基础施工方案
- 第二单元 焕发青春活力 大单元教学设计-2024-2025学年统编版道德与法治七年级下册
- 2025年陕西延长石油集团有限责任公司招聘笔试参考题库含答案解析
- 河南退役军人专升本计算机真题答案
- 2024年湖南省中考英语试题卷(含答案)
- 小学语文新课标学习任务群的基本理解和操作要领
- 催化材料智慧树知到答案章节测试2023年南开大学
- 绩效评价师考试-随机题库
- 专利申请文件 审查意见的答复
- 美的集团优秀员工评选管理办法
- 区块链项目资金申请报告范文
- 进货检验指引及流程到货物料包装、数量、质量检查办法
评论
0/150
提交评论