1 / 22
文档名称:

课程设计(论文)-基于双闭环PID控制的一阶倒立摆控制系统设计.doc

格式:doc   页数:22
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

课程设计(论文)-基于双闭环PID控制的一阶倒立摆控制系统设计.doc

上传人:3346389411 2012/11/26 文件大小:0 KB

下载得到文件列表

课程设计(论文)-基于双闭环PID控制的一阶倒立摆控制系统设计.doc

文档介绍

文档介绍:本科生课程设计
题目: 基于双闭环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所示的“一阶倒立摆控制系统”中,设计一个能通过检测小车的位置与摆杆的摆动角,来适当控制电动机驱动力的大小的控制系统。
图01
1)对模型的理论分析建立一阶倒立摆的精确模型(实际模型)如下所示:
.点进行线性化后得到(近似模型):
若只考虑摆角在工作点等零附近的细微变化,这是可以将模型线性化,得到近似模型,将J=m(l^2)/3,M=1kg代入即可得到要求的关于参数m、l的模型,让后再进行线性化表达式在模型验证中。

1)子系统的建立
实际模型

图1
Fcn:(((4*m*(l^2))/3)*u[1]+l*m*((4*m*(l^2))/3)*sin(u[3])*(u[2]^2)-10*(m^2)*(l^2)*sin(u[3])*cos(u[3]))/(((4*m*(l^2))/3)*(1+m)-(m^2)*(l^2)*power(cos(u[3]),2))
Fcn1:(m*l*cos(u[3])*u[1]+(m^2)*(l^2)*sin(u[3])*cos(u[3])*(u[2]^2)-10*(1+m)*m*l*sin(u[3]))/((m^2)*(l^2)*power(cos(u[3]),2)-(1+m)*(4*m*(l^2))/3)
线性模型
图2
Fcn2:(30*(1+m*u[2]-3*u[1])/(l*(4+m)
Fcn3:(5*u[1]-30*m*u[2])/(4+m)
做完以上之后点击鼠标左键不放对图形进行选定,接着右击creat subsystem如下图所示:
图3
2)模型的封装:
倒立摆的振子质量m和倒摆长度L作为子系统的参数:
图4
双击函数模块:
图5

欲改变其中的任一个参数只要点击其中二者之一的函数方块就行,在其中的m,l改就行了。
有两种实现的方法:一种是利用示波器观察如下图所示,另一种是采用绘图程序实现。
1)示波器实现如图6:
图6
示波器显示结果如图7所示
图7
2)用程序实现:
%Inerted pendulum
%Model test in open loop
%Signals recuperation
%
load
t=signals(1,: ); %读取时间信号
f=signals(2,: ); %读取作用力F信号
x=signals(3,: ); %读取精确模型中的小车位置信号
q=signals(4,: ); %读取精确模型中的倒摆摆角信号
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 ]) %定义坐标范围
axet=axes('Position',get (gca,'Position'),...
'XAxisLocation','bottom',...
'YAxisLocation','right','Color','None',...
'XColor','k','YClor','k'); %定义曲线