1、基于双闭环PID控制的一阶倒立摆控制系统设计福州大学至诚学院本科生课程设计题 目: 基于双闭环PID控制的一阶倒立摆控制系统设计 姓 名: 学 号: 系 别: 电气工程系 专 业: 电气工程与自动化 年 级: 07级 指导教师: 2010 年 4 月 28 日1、系统模型的建立 3.2、模型验证. 4.3、设计的内外环的PID控制器 10.4、SIMULIN仿真. 13.5、检测系统的鲁棒性 16.6、遇到问题 19.7、心得体会.20.8、结论.21.9、参考文献.22.一.系统模型的建立如图01所示的“一阶倒立摆控制系统”中,设计一个能通过检测小车的位置与摆杆的摆动角,来适当控制电动机驱动
2、力的大小的控制系统。图011)对模型的理论分析建立一阶倒立摆的精确模型(实际模型)如下所示:2).点进行线性化后得到(近似模型): 若只考虑摆角在工作点等零附近的细微变化,这是可以将模型线性化,得到近似模型,将J=m(l2)/3,M=1kg代入即可得到要求的关于参数m、l的模型,让后再进行线性化表达式在模型验证中。二.模型验证1)子系统的建立 实际模型 图1Fcn:(4*m*(l2)/3)*u1+l*m*(4*m*(l2)/3)*sin(u3)*(u22)-10*(m2)*(l2)*sin(u3)*cos(u3)/(4*m*(l2)/3)*(1+m)-(m2)*(l2)*power(cos(u
3、3),2) Fcn1:(m*l*cos(u3)*u1+(m2)*(l2)*sin(u3)*cos(u3)*(u22)-10*(1+m)*m*l*sin(u3)/(m2)*(l2)*power(cos(u3),2)-(1+m)*(4*m*(l2)/3)线性模型 图2Fcn2:(30*(1+m*u2-3*u1)/(l*(4+m)Fcn3:(5*u1-30*m*u2)/(4+m)做完以上之后点击鼠标左键不放对图形进行选定,接着右击creat subsystem如下图所示: 图32)模型的封装:倒立摆的振子质量m和倒摆长度L作为子系统的参数:图4 双击函数模块: 图5 欲改变其中的任一个参数只要点击其
4、中二者之一的函数方块就行,在其中的m,l改就行了。 有两种实现的方法:一种是利用示波器观察如下图所示,另一种是采用绘图程序实现。1)示波器实现如图6: 图6示波器显示结果如图7所示图72)用程序实现:%Inerted pendulum%Model test in open loop%Signals recuperation%将导入到xy.mat中的仿真试验数据读出load xy.matt=signals(1,: ); %读取时间信号f=signals(2,: ); %读取作用力F信号x=signals(3,: ); %读取精确模型中的小车位置信号q=signals(4,: ); %读取精确模型
5、中的倒摆摆角信号xx=signals(5,: ); %读取简化模型中的小车位置信号qq=signals(6,: ); %读取简化模型中的倒立摆摆角信号%Drawing control and x(t) response signals%画出在控制力的作用下的系统响应曲线%定义曲线的纵坐标、标题、坐标范围和曲线的颜色等特征figure(1) %定义第一个图形hf=line(t,f (:); %连接时间-作用力曲线grid on;xlabel(Time (s) %定义横坐标ylabel(Force (N) %定义纵坐标axis(0 1 0 0.12) %定义坐标范围axet=axes(Positi
6、on,get (gca,Position),. XAxisLocation,bottom,.YAxisLocation,right,Color,None,. XColor,k,YClor,k); %定义曲线属性ht=line(t,x,color,r,parent,axet); %连接时间-小车位置曲线ht=line(t,xx,color,r,parent,axet); %连接时间-小车速度曲线ylabel(Evolution of the x position (m) %定义坐标名称axis(0 1 0 0.1) %定义坐标范围title(Response x and x in meter t
7、o a f (t)pulse of 0.1 N)%定义曲线标题名称gtext ( leftarrow f (t),gext(x (t) rightarrow),gtext ( leftarrow x(t)%drawing control and theta (t)response singalsfigure (2)hf=line (t, f (:);grid onxlabel(Time)ylabel(Force in N)axet=axes(Position,get (gca,Position),. XAxisLocation,bottom,.YAxisLocation,right,Color
8、,None,. XColor,k,YClor,k);ht=line(t,q,color,r,parent,axet);ht=line(t,qq,color,r,parent,axet);ylabel(Angle evolution (rad)axis(0 1 -0.3 0)title(Responsetheta (t) and theta (t)in rad to a f (t)pulse of 0.1 N)gtext ( leftarrow f (t),gext(theta (t) rightarrow),gtext ( leftarrowtheta (t)在m文件里写入如上程序,在运行该程
9、序之前,先运行系统。之后再运行此程序得出波形图如图所示。观察结果如图8所示: 图8 三、设计的内外环的PID控制器一阶倒立摆系统为“自不稳定的非最小相位系统”。将系统小车位置作为“外环”,将摆杆摆角作为“内环”,设计的内外环的PID控制器。其模型图如图9所示: 图93.1 内环控制器设计对系统内环采用反馈校正进行控制 ,其方框图如图6所示。图6 内环反馈校正方框图反馈校正采用PD控制器,设其传递函数为,为了抑制干扰,在前向通道上加上一个比例环节。设的增益,则内环控制系统的闭环传递函数为:令 则内环控制器的传递函数为内环控制系统的闭环传递函数为:3.2 外环控制器设计图7 外环系统结构图由图7可
10、知外环系统前向通道的传递函数为:可见,系统开环传递函数为一个高阶且带不稳定零点的“非最小相位系统”。因此,首先对系统外环模型进行降阶处理,若忽略W2 (s)的高次项,则可近似为一阶传递函数为:其次,对模型 1G (s)进行近似处理,则1G (s)的传递函数为:外环控制器也采用 PD 形式,其传递函数为为了使系统有较好的跟随性,采用单位反馈构成外环反馈通道,即1D (s) =1,则系统的开环传递函数为采用第十章基于 Bode 图法的希望特性设计方法,得K3 = 0.12, = 0.877,取 =1,则外环控制器的传递函数为:一级倒立摆双闭环控制系统的方框图如图8所示。图8 一级倒立摆双闭环控制系
11、统的方框图 四、在单位阶跃输入下,进行的SIMULINK仿真如下以及用示波 器观察的结果:1)用示波器现实结果如图10所示: 图10 2)程序结果:load PID.matt=signals(1,: );q=signals(2,: );x=signals(3,: );%drawing x(t)and theta(t) response signals%画小车位置和摆杆角度的响应曲线figure(1)hf=line(t,q);grid on;xlabel(Time (s)ylabel(Angle evolution(rad)axis(0 10 -0.3 1.2)axet=axes(Positio
12、n,get (gca,Position),. XAxisLocation,bottom,.YAxisLocation,right,Color,None,. XColor,k,YClor,k);ht=line(t,x,color,r,parent,axet);ylabel(Evolution of the x potion(m)axis(0 1 -0.3 1.2)title( theta (t) and x (t)Response to a step input)gtext ( leftarrow x (t),gext(theta (t)uppwrrow)同上可知,得出的波形图如图11所示: 图
13、113)编程求解系统性能指标:最大超调量( max_overshoot)、 调节时间(settling_time)、 上升时间(rise_time)。Load PID2049.matt=ans(1,:);y=ans(2:3,:);figure(1)hf=line(t,q(:);grid onaxis(0 10 -0.3 1.2)ht=line(t,y,color,r);C=1;C=dcgain(y); max_overshoot=100*(max_y-C)/C %超调量计算 s=length(t); %调整时间计算while y(s)0.98*C&y(s)1.02*Cs=s-1;endsettling_time=t(s)r1=1; %上升时间计算,以从稳态值的10%上升到90%定义while (y(r1)0.1*C) r1=r1+1;endr2=1;while (y(r2)0.9*C) r2=r2+1;endrise_time=t(r2)-t(r1) step(sys) 运行完原理图之后,打开程序PID2049.m文件运行。之后会出现波形,把波形图复制在word里,而在MATLAB中会出现
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1