球棒系统的建模及反馈控制.docx
- 文档编号:1271208
- 上传时间:2022-10-19
- 格式:DOCX
- 页数:15
- 大小:251.42KB
球棒系统的建模及反馈控制.docx
《球棒系统的建模及反馈控制.docx》由会员分享,可在线阅读,更多相关《球棒系统的建模及反馈控制.docx(15页珍藏版)》请在冰豆网上搜索。
球棒系统的建模及反馈控制
球棒系统的建模及反馈控制
题目:
球棒系统的建模及反馈控制
姓名:
学院:
工学院
班级:
学号:
指导教师:
李玉民林相泽
20年6月7日
南京农业大学教务处制
自动控制原理Ⅱ实习报告
由刚性球和连杆臂构成的球棒系统,如图一所示。
连杆在驱动力矩作用下绕轴心点O做旋转运动。
连杆的转角和刚性球在连杆上的位置分别用,r表示,设刚性球的半径为R。
当小球转动时,球的移动和棒的运动构成复合运动。
刚性球与机械臂的动态方程由下式描述
选取刚性球的位移和其速度,以及机械的转角及其角速度作为状态变量,令,可得系统的状态空间表达式
设球棒系统各参数如下:
,,,,。
一、将系统在平衡点处线性化,求解线性系统模型。
首先求系统的平衡点,令,
即,解得
若要维持系统稳定,平衡状态时0,既得;
用李雅普诺夫第一方法将系统在平衡点处线性化处理如下:
经过线性化处理,系统模型为:
利用matlab可求得:
可知该系统是不稳定的。
二、利用状态反馈将线性系统极点配置于,,求解状态反馈增益,并画出小球初试状态为,横杆角度为和初始状态,横杆角度为时的仿真图像。
先判断系统是否完全能控
,
可知该系统是完全能控的,可进行状态反馈。
极点配置于的闭环特征多项式为:
状态反馈设置
令,则状态反馈后系统的状态空间表达式为:
利用Matlab编程,最后求得系统状态反馈控制矩阵为:
即所求的状态反馈增益。
则状态反馈后系统的状态空间表达式为:
状态反馈后的模拟结构图为:
用matlab做出的simulink状态反馈图为
图2.simulink状态反馈图一
下面分别通过M文件和simulink分别进行两种初始状态的仿真
Ⅰ,时
Ⅱ,时
Ⅰ编写M程序【附录1】
画出小球初试状态为
时系
统的仿真图像,
见图3。
Simulink仿真的图像如图4所示:
图4初始状态为时simulink仿真图
Ⅱ编写M程序画出小球初试状态为,时系统的仿真图像,程序中只需将程序一中的x0=[0.30pi/60]改为x0=[-0.30-pi/60]即可,见图5
Simulink仿真的图像如图6所示:
图6初始状态为时simulink仿真图
三、设计具有合适极点的状态观测器,实现状态反馈,给出状态反馈增益和观测器增益,并画出小球初试状态为,横杆角度为和初始状态,横杆角度为时的仿真图像,以及观测器输出与系统状态差值图像()。
由分离性原理,可分别设计状态反馈增益与观测器增益,下面先设计状态反馈增益,然后设计观测器增益
图7加入状态反馈和观测器后系统的模拟结构图
Part1.状态反馈增益的设计
由上从求得的仿真图可知,系统的调节时间和超调量都比较大,运行matlab时,系统还提示:
Warning:
Polelocationsaremorethan10%inerror.
因此很有必要通过限制超调量和调整时间重新配置极点。
设定系统的超调量为,调整时间为。
得到不等式,解不等式,取
所以,将其作为主导极点,另外两个极点可选为任意实部大于5倍,此处选择。
在matlab中通过acker函数【附录2】直接求得k和A-BK:
求得状态反馈增益为,反馈后的系统矩阵为:
Part2.设计观测器增益
首先判断系统能观性:
系统完全能观,可设计状态观测器。
状态观测器为取得较为合适的特征值,根据的原则选择观测器的极点,。
由分离性原理知,在matlab中通过place函数【附录3】直接求得E和A-EC:
求得,。
程序【附录四】画出小球初试状态为,时系统的仿真图像,见图
图8.初试状态为,时系统的仿真图像
Simulink搭建系统图如图9
图9simulink搭建系统的观测器输出与系统状态差值t-e
初试状态为,时系统观测器输出与系统状态差值t-e见图10。
图10初试状态为,时系统的观测器输出与系统状态差值图像
把上面程序中的x0=[0.30pi/60]改为x0=[-0.30-pi/60]即为小球初试状态为,时系统的仿真图像,见图11。
图11小球初试状态为,时系统的仿真图像
观测器输出与系统状态差值图像,见图11
图11球初试状态为,时
系统的观测器输出与系统状态差值图像
分析与总结:
该系统搭建出来是一个非线性系统,需要用李雅普诺夫第一方法将系统在平衡点处线性化为四阶线性系统;用能控性判据判断出该系统是完全能控的,可进行状态反馈,第二问中给出了两对目标极点,可利用matlab求得状态反馈增益K,我们得到了反馈后的系统。
然后利用simulink仿真,题目中给出了球棒的两种初始状态,我们通过仿真图可以发现系统性能很不理想,超调量过大,调整时间过长,实际上是由于极点选择不当造成的,这样才有了第三问中全维观测器的设计。
对原系统进行能观性判断,可知系统完全能观测,可进行观测器设计。
由分离性原理,可分开设计状态反馈增益与观测器增益,两者互不干扰,我们自己设定了超调量(5%)和调整时间(1s),然后求出一对极点,我们运用主导极点的思想,设计了另外一对极点,这样状态反馈增益k就得到了;然后为状态观测器选取特征值,进而用matlab求得观测器增益E,我们用m程序画出t-x仿真图,用simulink画出t-e仿真图,发现系统性能得到了很大提高,符合设计要求。
M程序附录:
程序一:
>>A=[0100;00-140.140;0001;-24.52000];
>>B=[0;0;0;50];
>>C=[1000;0010];
>>D=[0];
>>P=[-1-2*j,-1+2*j,-2-j,-2+j];
>>K=acker(A,B,P)
>>A1=A-B*K
>>u=0;
>>G=ss(A1,B,C,D);
>>x0=[0.30pi/60];
>>[y,t,x]=initial(G,x0);
>>plot(t,x)
程序二:
>>A=[0100;00-140.1430;0001;-24.523000];
>>B=[0;0;0;50];
>>C=[1000;0010];
>>D=[0];
>>P=[-4-4.2*j,-4+4.2*j,-40-4.2*j,-40-4.2*j];
>>K=acker(A,B,P)
>>A-B*K
程序三:
>>A=[0100;00-140.140;0001;-24.52000];
>>B=[0;0;0;50];
>>C=[1000;0010];
>>D=[0];
>>P=[-15+4.2*j-15-4.2*j-65+4.2*j-65-4.2*j];
>>C=C';
>>A=A';
>>E=place(A,C,P);
>>E'
>>A=A-(E')*(C')
程序四
>>A=[0100;00-140.140;0001;-24.52000];
>>B=[0;0;0;50];
>>C=[1000;0010];
>>D=[0];
>>P=[-15+4.2*j-15-4.2*j-65+4.2*j-65-4.2*j];
>>C=C';
>>A=A';
>>G=place(A,C,P);
>>A=A'-(G')*(C');
>>C=C';
>>B=[0;0;0;0];
>>x0=[0.30pi/60];
>>G=ss(A,B,C,D);
>>[y,t,x]=initial(G,x0);
>>plot(t,x)
>>x0=[-0.30-pi/60];
>>G=ss(A,B,C,D);
>>[y,t,x]=initial(G,x0);
>>plot(t,x)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 球棒 系统 建模 反馈 控制