Matlab程序设计
上交作业要求:
1)电子文档:设计分析报告一份(包括系统建模、系统分析、系统设计思路、程序及其执行结果)。 2)Matlab程序:可执行程序一份(运行程序可显示、输出执行结果) 按班级统一上交。
题目一:
考虑如图所示的倒立摆系统。图中,倒立摆安装在一个小车上。这里仅考虑倒立摆在图面内运动的二维问题。倒立摆系统的参数包括:摆杆的质量(摆杆的质量在摆杆中心)、摆杆的长度、小车的质量、摆杆惯量等。
图 倒立摆系统
设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量? %≤10%,调节时间ts ≤4s ,使摆返回至垂直位置,并使小车返回至参考位置(x=0)。
要求:1、建立倒立摆系统的数学模型
2、分析系统的性能指标——能控性、能观性、稳定性
3、设计状态反馈阵,使闭环极点能够达到期望的极点,这里所说的期望的极点确定是把系统设计成具有两个主导极点,两个非主导极点,这样就可以用二阶系统的分析方法进行参数的确定
4、用MATLAB 进行程序设计,得到设计后系统的脉冲响应、阶跃响应,绘出相应状态变量的时间响应图。
题目二:
根据自身的课题情况,任意选择一个被控对象,按照上题所示步骤进行分析和设计,并给出仿真程序及其执行结果。
假定倒立摆系统的参数如下:
摆杆的质量:m=0.1kg 摆杆的长度:2??=1m 小车的质量:M=1kg 重力加速度:g=10m/??2 摆杆惯量:I=0.003kg??2 摆杆的质量在摆杆的中心。
1. 建立数学模型
在忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,依据经典力学的牛顿定律即可满足要求。如下图所示:
图1.1 一级倒立摆模型
其中:
θ:摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下) 小车的位移为x,作用在小车上的水平方向上的力为
图1.2是系统中小车和摆杆的受力分析图。其中,N和P为小车与摆杆相互作用力的水平和垂直方向的分量。
注意:在实际的倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图所示,图示方向为矢量正方向。
图1.2 小车及摆杆受力分析
分析小车水平方向所受的合力,可以得到以下方程:
M???=??????????? 1-1 由摆杆水平方向的受力进行分析可以得到下面的等式: ??=??即:
N=m???+?????????????????????2???????? 1-3
把这个等式带入式(1-1)中,就得到系统的第一个运动方程:
(??+??)???+?????+?????????????????????2????????=?? 1-4
为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可得到下面方程:
P?mg=m????2(??????????) 1-5 P?mg=?m???????????????????2???????? 1-6
力矩平衡方程如下:
?P??sinθ?N??cosθ=I?? 1-7
注意:此方程中力矩的方向,由于θ=π+φ,cosφ=?cosθ,sinφ=?sinθ,故等式前面有负号。
合并这两个方程,约去N和P,得到第二个运动方程:
(I+m??2)??+??????????????=???????????????? 1-8
设θ=π+φ(φ是摆杆与垂直向上方向之间的夹角),假设φ与1(单位是弧度)相比很小,即φ<<1,则可以进行近似处理:????????=?1,????????=?φ,(????)=0。
用μ来代表被控对象的输入力F,线性化后两个运动方程如下:
(??+????2)???????????=???????{ 1-9 (??+??)???+????????????=??
对式(1-9)进行拉普拉斯变换,得到
{
1-10
(??+??)??(??)??+????(??)???????Ф(??)??=??(??)
2
2
????2
??2
??????????(??+??????????) 1-2
(??+????2)Ф(??)??2???????Ф(??)=??????(??)??2
注意:推导传递函数时假设初始条件为0。
由于输出为角度φ,求解方程组的第一个方程,可以得到:
??(??)=[
或
(??+????2)????
???2]Ф(??) 1-11
??