摘要:从数学建模到仿真系统的搭建,再到加进控制环节进行实时控制,最后得出结果的过程中,参考了大量的资料,通过对比整合,设计出了适合自己的一套实验方法:本研究的核心在于构建相应的倒立摆数学模型,首席按通过牛顿-欧拉法完成相关模型的基本搭建,之后通过动态系统空间状态方程来确定其系数矩阵的值,完成上述工作之后,通过MATLAB编程的方式,将构建的数学模型转化成相应的传递函数,从而获得传递函数模型。此后便可在此基础之上,通过Simulink软件通过PID控制算法实现相应的仿真工作,先用连续系统的设计方法设计出模拟控制器,然后在满足一定条件下,对其进行离散化处理,(采用加零阶保持器的Z变换法)形成数字控制器。接着进行PID参数整定,利用试凑法,根据PID控制器各部分组件和性能之间的联系,在某个初始化参数的条件下重复进行试凑工作,最终得到较好的结果。研究过程中,系统的控制非常稳定,性能较好。
关键词:Matlab;仿真;PID;连续系统
目录
1绪论............................................................................................................................. 2
1.1连续性系统简介.............................................................................................. 2 1.2连续性系统基本处理方法.............................................................................. 2
1.2.1数值积分法........................................................................................... 2 1.2.2替换法................................................................................................... 3 1.2.3离散相似法........................................................................................... 4 1.3MATLAB在连续性系统的应用 ..................................................................... 6 2 MATLAB基础 ........................................................................................................... 7
2.1MATLAB语言介绍 ......................................................................................... 7 2.2MATLAB工具箱 ............................................................................................. 8 2.3MATLAB对连续性系统的仿真性能分析 ..................... 错误!未定义书签。 3直线一级倒立摆系统设计......................................................................................... 8
3.1倒立摆系统概述.............................................................................................. 8 3.2倒立摆系统工作原理...................................................................................... 8 3.3倒立摆系统数学模型建立.............................................................................. 9
3.3.1确定系统输入输出量及中间变量:................................................. 10 3.3.2受力分析,列写运动方程:............................................................. 10 3.3.3系统非线性方程的线性化:............................................................. 11 3.3.4零初始条件下的拉氏变换:............................................................. 11 3.3.5代入参数求解传递函数:................................................................. 11
4基于MATLAB的一级倒立摆系统仿真结果及分析 ............................................ 12
4.1校正前系统性能仿真分析............................................................................ 12
4.1.1稳定性分析:..................................................................................... 12
1
4.1.2阶跃响应分析:................................................................................. 12 4.1.3频率特性分析:................................................................................. 13 4.2PID控制设计校正装置 ................................................................................. 14
4.2.1计算开环增益K: .............................................................................. 14 4.2.2计算校正后的增益交界频率ωc: .................................................... 16 4.2.3计算参数确定传递函数:................................................................. 16 4.3 控制实验仿真分析....................................................................................... 16 5总结和展望............................................................................................................... 21 参考文献...................................................................................................................... 22
1绪论
1.1连续性系统简介
所谓连续系统,其实就是体系的状态会在时间迁移的条件下产生光滑且连续的改变的一个系统。其也包含那些因离散采样而引起非连续改变的体系。这类系统通常能够通过微分方程组进行表示。如果方程之中的相关系数皆是常数,那么可将之称作定常系统,如果相关系数会因时间的改变发生改变,那么可将之称作。除此之外,相关的数学模型也可分为多个类别,除了连续模型(即通过微分方程进行表示)之外,还有离散模型(通过差分方程进行表示)以及二者的混合模型。如果某个体系能够通过非线性的常微分方程组进行表示,那么其就属于非线性系统。其中的各个方程不仅含有状态变量及其各阶导数的线性组合,也含有非线性项。其非线性特性主要表现在:(1)线性系统同时满足均匀性与叠加性。线性方程必定有解,并且其解为零输人响应和零状态响应之和。非线性系统则不具有这些特征,即对非线性系统,通常叠加性原理不成立,非线性方程通常没有解析表达形式的解。(2)给定一个线性系统,对于不同的初始状态,它只有一种类型的运动。但对于非线性定常自由系统则不然,初始状态不同,它对应的运动类型可以不一样。非线性系统有三种类型的运动,即稳定运动、不稳定运动和周期运动。
1.2连续性系统基本处理方法
1.2.1数值积分法
如果通过相关的状态方程来表示被模拟的体系,其对应的一阶微分方程以及初始值可以通过下式表示:
2
Y=Ft,Y(1-1) Yt0=Y0在这之中,Y代表维度为n的状态向量,而F则代表维度为n的向量函数。
对于上式,当tt0,t1,…,tn,tn1时其对应的连续解可以写成:
Ytn+1=Yt0+Ft,YdtY(tn)t0tn+1tn+1t0Ft,Ydt(1-2)
设 Yn=Y(tn),令
Yn1YnQn(1-3)
则有:
Yn1Ytn+1
也就是说,
tn1QntnF(t,Y)dt(1-4)
如果Yn准确解Y(tn)为近似值,Qn是准确积分值的近似值,则式(1-4)就是式(1-2)的近似公式。换句话说,连续系统的数值解就转化为求两个相邻时刻之间的积分。
综上所述,(1-1)的数值求解策略本质上就是求得该式的实际解在相应的离散时间点t1 通过数值积分策略实现对连续体系的模拟,本质上已对其实施了离散化 3 的操作,只是在进行离散化的各个步骤之中都会使用连续体系的模型,每一步都是离散之后再进行求解。因此,可以先将相关连续模型实施离散化操作,获得等价的离散模型,在这之后的各个计算工作中可以不必再涉及最初的连续模型,而是能够直接使用该离散模型。通过对连续模型简化得到相应的离散模型,能够很好地适应计算机上的计算环境,不但能够应用在连续体系的数字模拟工作中,同时也能够通过计算机实现相应的数字控制器。 替换法的核心思路为:对某个传递函数G(s),寻找将s域映射至z域的策略,从而实现属于S域的变量到z平面之间的映射工作,从而能够将和连续体系相关的G(s)转化为离散的G(z)。之后可以通过G(z)进行相应的z反变换,得到对应的通过差分方程进行表示的离散模型,从而实现高效率的计算工作。 根据z变换理论,s域到z域的最基本的映射关系是ZeTs或 s1lnz如T果按这一映射关系直接代入G(s),得到的G(z)是相当复杂的,不便于算 1法实现,所以往往借助于Z变换的基本映射关系ZeTs或slnz作一些简 T化和近似处理。 1.2.3离散相似法 离散相似法能够把某个连续的体系实施离散化操作,并获得与之对应的差分方程形式的离散模型。 得到对应的离散模型的策略包括两类: (1)对传递函数实施相应的离散化操作,从而获得离散化的传递函数——这类模型通常叫做“频域离散相似模型”; (2)对状态方程实施相应的离散化操作——这类模型通常叫做“时域离散相似模型[3]”; 为了实现连续体系的数字模拟工作,首先可向体系之中添加相应的虚拟采样器以及保持器,具体的架构可以参考下图: u保持器T G(s)yT 图1-1 连续系统离散化结构图 附注:上图之中给出的采样开关以及保持器实际上是不存在的,而是为 4 了将(1-5)式离散化而虚构的。 然后通过z变换实现对应体系脉冲传递函数的求解,之后可在此基础之上获得体系所对应的差分方程。 根据上图不难得到相应的脉冲传递函数模型,其可通过下式进行表示: G(z)Y(z)ZG(s)G(s)(1-5) hU(z)在这之中,Gh(s)代表保持器的传递函数,并且可根据保持器的种类获得相应的G(z),具体可参考下表: 表1-1不同保持器的G(z) 保持器的传递函数Gh(s) 脉冲传递函数G(z) 1eTs零阶: s1eTs一阶: s(1eTs)2eTs三角形: 2Tsz1G(s)Z zsz12G(s)(1Ts)()Z 2zTs(z1)2G(s)Z 2zTs对于某个连续体系,其状态方程可以表示成下式: xAxBu(1-6) 如果在体系的输入以及输出部分都添加相应的采样控制开关,在输入部分额外添加保持器以确保相关信号能够良好地还原,那么此时可获得下图所给出的结构: u零阶保持器yx=Ax+BuT T 图1-2采样控制系统结构图 若对方程(1-6)式两边进行拉普拉斯变换,得: sX(s)X(0)AX(s)BU(s)即: (sIA)X(s)X(0)BU(s) 以(sIA)1左乘上式的两边可得 : 5 X(s)(sIA)1X(0)(sIA)1BU(s)(1-7) 考虑到状态转移矩阵:teAtL1(sIA)1(1-8) 故对(1-7)式反变换可得: teA(t)BU()d(1-9) X(t)eAtx(0)0 此为(1-5)式的连续解,由此可推导出系统的离散解。 根据上式,n及n+1两个相连的采样瞬间,有: kTeA(kT)BU()d(1-10) X(kT)eAkTx(0)0 X(k1)TeA(k1)T(k1)TA(k1)Tx(0)0eBU()d(1-11) 将(1-10)式减去(1-10)式后乘以eAT,得: (k1)TA(k1)TX(k1)TeATX(kT)kTeBU()d 将(1-11)式右边积分进行变量代换,即令: (1-12) kTt(1-13) TeA(Tt)BU(kTt)dt(1-14) 则得:X(k1)TeATX(kT)0 但由图1-2可知:若系统采用零阶保持器时,则两个采样点之间输入量可看做常数,即u(nT+t)=u(nT),这样(1-14)式可写为: TX(k1)TeX(kT)eA(Tt)BdtU(kT)0 G(T)X(kT)H(T)U(kT)ATG(T)eAT式中 : TeA(Tt)BdtH(T)0 1.3MATLAB在连续性系统的应用 瑞典的著名高校Lunds大学曾经开展过时间为3个月的极地研究工作,并在 6 这个过程中大量运用到了MATLAB和相关工具箱,其主要用于考察北极的放射性物质和当地环境之间的作用关系。相关研究者通过MATLAB来完成数据处理以及分析工作,同时通过提供的神经网络工具箱实现了对北冰洋之上漂浮木材的年轮图像识别工作,从而确定相关浮木的来源。除此之外,Forsmark核电站也通过MATLAB来完成对核反应堆的功率优化工作,相关的研究者能够在各个堆芯之中得到海量的数据,并在此基础上求解各燃料棒以及控制设备坐标的最优值,从而获得最高的功率。这个数据处理过程的规模非常大,且复杂度也极高,涉及到超过1700个结点的处理工作,为能精简这个流程, Forsmark通过MATLAB开发得到了相应的GUI交互界面,其能够让毫无经验的人员进行数据的处理和分析工作。不仅如此,Forsmark还进一步通过MATLAB对一系列失效和扰动的场景进行建模处理。一旦反应堆出现了扰动现象,应当对相关信息进行详实的分析,从而实现引发扰动因素的定位工作,利用MATLAB的种种优势,上述工作所耗费的时间已经从原本的7天降低到15分钟。 Calspan先进技术中心曾对相关的飞行器进行仿真测试,并有效提高了其性能。相关的模拟软件工作与一系列并行的浮点DSP中,硬件部分则使用的dSPACE。在地面阶段,首先通过Simulink模块实现相关飞行器及其控制系统的建模以及模拟工作,之后通过Workshop产生对应的C语言代码,并传输到飞行器的DSP之中。进行试飞之时,试飞员能够通过DSP模块对该系统进行考察,飞行过程之中涉及到的一系列参数也能够实时调整,同时也可下载到硬件之中进行测试,从而有效降低了成本,提高了效率,能够在控制系统原型的实际构建之前便将相关试验全部完成。 2 MATLAB基础 2.1MATLAB语言介绍 MATLAB诞生初期,其仅仅是用于为数据分析工具Eispack与Linpack提供接口,其最早通过Fortran实现,之后通过C实现。1975年左右,M公司将其推出面向市场,并且将其功能逐渐丰富,开发了文字图像的处理、数值的运算以及符号的解译等功能,将其编程语言升级为面向对象语言,并以此为用户界面的设计语言,从而将其打造成了一个能够在多个领域、多个学科都很好地发挥功能的软件。其版本也逐渐的更新换代,其有效综合了各种数据处理功能,包括矩阵求解、数据可视化、非线性体系的分析等等,目前在工程领域以及科研工作之中都得到了普遍的应用,其主要包括下面几个部分: 7 2.2MATLAB工具箱 现阶段,MATLAB已经拥有了超过37个工具箱,同时其主要包括两个类别,分别是功能类以及领域类。后者通常依赖于较高的特定领域专业知识,主要有信号处理、自控、逻辑分析、图象处理、通讯、偏微分方程等等很多细化的工具箱,可应用的领域涵盖了化学、数学、工程还有经济等等很多的领域范围。功能型的工具箱主要是增强其图形文字处理能力、模型建立和仿真功能、数值符号运算解议以及和软硬件系统的通信等一系列作用。使用者可以直接对相关工具箱的源代码进行自行定制,以满足特定的需求。 3直线一级倒立系统设计 3.1倒立摆系统概述 倒立摆系统是用于进行控制理论分析工作的一个非常经典的设备,其有着非常精简的构造,十分低廉的成本,同时相关参数以及构造可以灵活地更改。该系统处于非稳态,涉及变量多、阶次高、耦合高。通过该系统,可以有效体现出控制流程里面的可能问题,包括稳健性、可定位性等等,该系统能够用于对相关的控制理论进行检验。在各类控制理论的基础之上,相关研究者已经设计了各种类型的倒立摆系统。 3.2倒立摆系统工作原理 倒立摆系统的整体构造可以参考下图: 图3-1便携式一级倒立摆试验系统总体结构图 该体系总的来说由摆杆、支架、导轨、驱动设备以及小车等部分构成。主体、 8 驱动器、电源和数据采集卡都置于实验箱内,实验箱通过一条USB数据线与上位机进行数据交换,另有一条线接220v交流电源。 便携式直线一级倒立摆的工作原理如图3-2所示: 图3-2便携式一级倒立摆工作原理图 数据采集卡能够获得各个编码器产生的数据,其中,旋转编码器和摆杆之间处在相同的轴线之上,而电动机和车辆之间以皮带相连,因此能够求出摆杆的偏角和车辆的偏移,并可进一步得到角速度以及线速度,之后就能够利用相关的控制理论求得对应的控制量。后者会由计算机传输到驱动设备之中,从而能够进行电机的控制工作,并保证摆杆处在竖直状态。 该闭环体系拥有反馈功能,主要的控制目的是在静止和运动状态下实现稳摆。如果输入∅𝑔=0,则此时的偏差=0,控制设备并不会执行操作;否则,偏差不等于0,控制设备会进行分析处理,并对电机进行控制,引起摆杆的运动,获得的摆角通过角位移传感器作用于输出量,达到减小偏差的目的。根据控制原理绘制出控制方框图如图3-3所示: 图3-3便携式一级倒立摆控制原理方框图 3.3倒立摆系统数学模型建立 该体系主要包括小车以及摆杆两个模块。摆杆能够在垂直的平面内自由地摆动,小车能够在轨道上自由移动。忽略摩擦力以及空气阻力,不妨将该系统视作 9 均质杆体和小车构成的一个刚体,因此可在经典力学的基础之上得到相应的动力模型,对其进行受力分析可以获得对应的数学模型,在平面坐标系中该系统的结构如图4-1所示,规定逆时针方向的转角和力矩均为正。 图4-1 便携式倒立摆结构图 模型参数符号如下: 𝑀: 小车质量;𝑚: 摆杆质量;𝐼: 摆杆转动惯量;𝑙: 摆杆质心到转轴的距离;𝐿: 摆杆长度; 𝐹: 外加在小车上的力;𝑁:摆杆给小车的力;𝑃:小车给摆杆的支持力; ∅: 转角;𝑥: 小车位置;𝑏: 小车与导轨间的摩擦系数。 3.3.1确定系统输入输出量及中间变量: 输入量:𝐹: 加在小车上的力 输出量:∅: 转角 中间变量:𝑥: 小车位置 3.3.2受力分析,列写运动方程: 在水平方向上,根据上图可以得到小车的受力为: FbxNMx (1) .. 在水平方向上,根据上图可以得到摆杆的受力为: d2Nm2(xlsin) (2) dt根据式(2)有:Nmxmlcosmlsin (3) .2.....2综合以上各式,能够获得体系的运动方程1: (Mm)xbxmlcosmlsinF (4) 在竖直方向上,根据上图可以得到摆杆的受力为: 10 .....d2Pmgm2(lcos) (5) dt由(5)得:Pmgmlsinmlcos (6) ...2对摆杆进行力矩分析,有: IPlsinNlcos (7) ..联立式(3)、(6)以及(7),可以获得体系的运动方程2: (Iml)mglsinmlxcos (8) 2....因此可以获得体系的2个运动方程,如下所示: { (Mm)xbxmlcosmlsinF(Iml2)mglsinmlxcos..........2 3.3.3系统非线性方程的线性化: 对于该系统,摆杆通常不会产生较高的偏角,也就是说θ≪1,因此能够近似化处置。对于该体系,当(𝐹0,∅0)为(0,0)之时处在平衡态,因此: sin,cos1,20. 因此可得线性化的方程: { (Mm)xbxmlF(Iml2)mglmlx......... 3.3.4零初始条件下的拉氏变换: (Mm)s2X(s)bsX(s)mls2(s)F(s) { (Iml2)s2(s)mgl(s)mlX(s)s23.3.5代入参数求解传递函数: 该体系的物理参数为: 小车的质量𝑀:0.618 kg 摆杆的质量𝑚:0.0737 kg 摆杆的长度𝐿:0.350m 摆杆质心到转轴距离𝑙:0.1225m 11 把相关数据回代到上式之中,即可计算出摆杆的偏角和车辆偏移之间的传递函数: ∅(s)𝑋(𝑠) =6.122𝑠2𝑠−60 4基于MATLAB的一级倒立摆系统仿真结果及分析 4.1校正前系统性能仿真分析 4.1.1稳定性分析: 可通过下面的代码得到体系进行矫正之前的Nyquist图,具体结果可参考下图: num=[6.122]; den=[1 0 -60]; nyquist(num,den) 图4-1校正前系统开环Nyquist图 由图分析知,系统开环右极点数𝑃=1,𝑁=0。此时有𝑍=𝑃+𝑁=1,所以体系处在非稳态。 4.1.2阶跃响应分析: 可通过下面的代码得到体系进行矫正之前的阶跃响应图,具体结果可参考下 12 图: s=tf('s') G=6.122/(s^2-60); GB=G/(1+G); step(GB) 图4-2校正前系统阶跃响应曲线图 根据该结果不难发现,体系的阶跃响应数据不会随时间迁移而降低,并处在逐渐发散的状态中,所以体系处在非稳态。 4.1.3频率特性分析: 可通过下面的代码得到体系进行矫正之前的Bode图,具体结果可参考下图: num=[6.122]; den=[1 0 -60]; bode(num,den); 13 图4-3校正前系统Bode图 由图分析知,相频特性图中相位裕度为0,因此体系处在非稳态,可以通过频率控制器进行调整。 4.2PID控制设计校正装置 构建相应的控制器,从而让校正之后体系的稳态位置误差系数𝐾𝑝=10,同时对应的相位裕度γ(𝜔𝑐)=50°。 在进行校正工作之前,体系的传递函数可通过下式表示: αG𝑐(𝑠)= 𝑇𝑠+1 𝑇𝑠+1𝛼如果用K代表开环增益,那么进行校正之后对应的传递函数可通过下式表示: 𝐾αG𝑐(𝑠)𝐺(𝑠)=𝐾 𝑇𝑠+16.122 2−60𝑇𝑠𝑠+1 𝛼4.2.1计算开环增益𝑲: 由于 Kp10,因此limGk(s)10: s0𝐾αG𝑐(𝑠)𝐺(𝑠)=𝐾 𝑇𝑠+16.122 =10 2−60𝑇𝑠𝑠+1 𝛼14 可以求出: K98 因此: 𝐾𝐺(𝑠)= 6.122×98 𝑠2−60可通过下面的代码得到KG(s)的Bode图,具体结果可参考下图: num=[6.122*98]; den=[1 0 -60]; bode(num,den) 图4-4添加增益后的便携式倒立摆的Bode图 不难发现,此时体系的相位裕量依旧是0°,因此对于相关的矫正设备,其应当产生的最大相位超前角𝜑m可通过下式进行计算: m01[(wc)'(wc)] 对本系统: m500[180(180)]50 通过𝜑m 可以得到相应的α: 𝛼= 1+sin𝜑𝑚 ≈7.55 1−sin𝜑𝑚 15 4.2.2计算校正后的增益交界频率𝝎𝒄: 为能充分显示出相关校正设备的相位超前效果,可以把校正设备的最大超前相角确定为体系增益交界频率𝜔𝑐,也就是𝜔𝑚=𝜔𝑐,在该处,有: 𝐿𝑐(𝜔𝑚)+𝐿(𝜔𝑐)=0 带入可得: 20lg√𝛼+𝐿(𝜔𝑐)=0 可以计算出:𝜔c=39.5𝑟𝑎𝑑/𝑠 4.2.3计算参数确定传递函数: 𝜔𝑚=𝜔𝑐= √𝛼𝑇 =39.5𝑟𝑎𝑑/𝑠 得: 𝑇 =0.0696s 则校正后系统的开环传递函数为: 𝐾αG𝑐(𝑠)𝐺(𝑠)=98× 0.0696𝑠+16.122 0.0092𝑠+1𝑠2−604.3 控制实验仿真分析 首先确定临界增益𝐾𝑢和临界振荡周期𝑇𝑢,只加入P控制器,令𝐾p=9得: Gk(s)9*6.122s260 可通过下面的代码得到体系进行增益之后的阶跃响应图,具体结果可参考下图: s=tf('s') G=9*6.122/(s^2-60); GB=G/(1+G); step(GB,10) 16 图4-5𝐾p=9时系统的阶跃响应曲线图 根据该结果不难发现,体系的阶跃响应数据不会随时间迁移而降低,并处在逐渐发散的状态中,所以体系处在非稳态。因此提高P控制量,令𝐾p=100得系统的阶跃响应曲线图如图4-6: Step Response2.521.5Amplitude10.5000.511.52Time (sec)2.533.54 图4-6𝐾p=100时系统的阶跃响应曲线图 根据该结果不难发现,体系的阶跃响应数据处在逐步收敛的状态中,为让该曲线处在震荡状态,应降低Kp,故令𝐾p=90得系统的阶跃响应曲线图如图4-7: 17 图4-7 𝐾p=90时系统的阶跃响应曲线图 根据该结果不难发现,临界的增益𝐾𝑢=90,此时的周期𝑇𝑢=0.4。因此可算出𝐾𝑝、𝑇𝑖以及𝑇𝑑: 𝐾𝑝=0.6𝐾𝑢=0.6×90=54 𝑇𝑖=0.5𝑇𝑢=0.2{ 𝑇𝑑=0.125𝑇𝑢=0.05𝐺𝑘(𝑠)=54×(1+0.05𝑠+ 10.2𝑠 )× 6.122 𝑠2−60 可通过下面的代码得到体系进行PID校正之后的阶跃响应图,具体结果可参考下图: s=tf('s') G=54*(1+0.0375*s+1/0.15/s)*6.122/(s^2-60); GB=G/(1+G); step(GB,4) 18 图4-8 𝐾p=90时PID校正后系统的阶跃响应曲线图 根据该结果不难发现,曲线处在剧烈震荡之中,所以要提高比例系数,取𝐾p=100可绘制出PID校正后系统阶跃响应曲线图如图4-9: 图4-9 𝐾p=100时PID校正后系统的阶跃响应曲线图 由图分析知,稳态误差较大,稳定时间较大,故增加微分参数,加大微分作用,分别取𝑇𝑑=0.05、0.1、0.3。在MATLAB中输入如下代码,可绘制出三种情况下的系统阶跃响应曲线图如图4-10: s=tf('s') G1=100*(1+0.05*s+1/0.15/s)*6.122/(s^2-60); GB1=G1/(1+G1); G2=100*(1+0.1*s+1/0.15/s)*6.122/(s^2-60); GB2=G2/(1+G2); G3=100*(1+0.3*s+1/0.15/s)*6.122/(s^2-60); GB3=G3/(1+G3); subplot(3,1,1) step(GB1,4) subplot(3,1,2) step(GB2,4) subplot(3,1,3) 19 step(GB3,4) 图4-10 𝑇𝑑=0.05、0.1、0.3时系统的阶跃响应曲线图 上图之中的𝑇𝑑从上到下逐渐提高。根据该结果不难发现,稳定时间随着稳态误差的降低而降低,控制效果则越明显。 可通过下面的代码得到体系进行校正之后的Nyquist和Bode图,具体结果可参考下图: s=tf('s') G=599.956*(0.0696*s+1)/((0.0092*s+1)*(s^2-60)); nyquist(G) bode(G) 图4-11校正后系统的Nyquist图 20 Bode Diagram50Magnitude (dB)Phase (deg)0-50-100-120-150-180-110100101102103104Frequency (rad/s) 图4-12校正后系统的Bode图 根据该结果不难发现,Nyquist曲线沿着逆时针的方向环绕(−1,0)一周,也就是𝑁=−1。此时体系的开环右极点数𝑃=1。因此有𝑍=𝑃+𝑁=0,此时体系处在稳态下;同样,在Bode图中,增益交界频率𝜔𝑐=0处对应的相位裕度为最大值,约为50°,达到校正要求。 5总结和展望 通过本次实验,笔者对倒立摆和PID控制理论拥有更为全面的认知,并根据PID理论构建了直线一级倒立摆的控制体系。结果显示,通过PID进行倒立摆的控制工作,能够体现出较高的准确性和可靠性,并且其系统成本低、安装简单、维护调试方便,更易于扩展。本次实验也让我更加了解MATLAB软件的操作,并加深认识信号之间的处理和图像的处理,MATLAB的功能很强大,很多实验都可以用MATLAB仿真,表现了MATLAB强大的仿真及数据分析处理能力。MATLAB 是现阶段工业领域和科研领域常用的技术,目前得到了广泛的应用。就本研究而言,对于线性控制领域, MATLAB拥有非常方便快捷的数据处理能力。其实我了解MATLAB只是一小部分,在今后的日子我会继续学习MATLAB,经过这次实验,我对MATLAB的认识和应用有了更加深刻的理解。 (1)本实验,从数学建模到仿真系统的搭建,再到加进控制环节进行实时控制,最后得出结果的过程中,参考了大量的资料,通过对比整合,设计出了适合自己的一套实验方法:倒立摆数学模型推导部分:首先用牛顿—欧拉方法建立数学模型,接着用动态系统空间状态方程法导出状态方程系数矩阵,然后用 21 MATLAB对数学模型进行从状态空间到传递函数的变换(包括传递函数的拉氏变换与Z变换),得到系统的传递函数模型。接着根据数学建模得出的传递函数进行系统模型的搭建,在Simulink软件上进行系统仿真,采用最为广泛的PID控制算法,先用连续系统的设计方法设计出模拟控制器,然后在满足一定条件下,对其进行离散化处理,(采用加零阶保持器的Z变换法)形成数字控制器。接着进行PID参数整定,利用试凑法,根据PID控制器各组成环节对系统性能的影响,从一组初始PID参数开始反复试凑,直至获得,满意的控制效果。此实验中,系统的控制非常稳定,性能较好。 (2)根据实验不难发现,倒立摆系统属于非线性的非稳态系统,且复杂度比较大,因此要获得良好的稳定性,需要将之线性化处理并实施控制策略。本研究通过线性化以及相关的控制方法,让系统达到了良好的稳定状态。当然,这只是一个理想模型,在实际应用中情况会更加复杂,稳定性也更难获得。不过,通过实验,我们至少掌握了简单控制的基本方法,同时产生了期望的结果。 (3)本次研究让笔者对于倒立摆模拟的各个环节拥有了更全面的认知,也对模拟软件Simulink更加了解,同时也深刻地掌握了系统控制的各个过程,无论是在最初的模型搭建还是后续的模拟测试,都秉着认真负责的态度完成了倒立摆仿真研究。 (4)此外,通过仿真,再次认识到了自动控制在改善系统性能方面的重要性,并激发了良好的关于系统控制方面的学习兴趣,在此基础上,相信对以后的进一步研究将会有较大帮助。 参考文献 [1] 马扬龙, 陈琼, 宁玉玲. 基于MATLAB的单级倒立摆的LQR控制研究[J]. 工业控制计算机, 2013, 26(2):98-99. [2] 罗芳, 潘光辉, LUOFang,等. 基于MATLAB的模糊控制倒立摆系统研究[J]. 清远职业技术学院学报, 2015, 8(3):80-82. [3] 尹贻晓, 直线一级倒立摆系统研究[D]. 山东农业大学, 2015. [4] 王惠萍, 孔庆忠. 直线一级倒立摆的数学建模和根轨迹控制[J]. 内蒙古工业大学学报, 2015, 34(1):20-24. [5] 蒲建波, 彭晓乐, 尹彦东,等. 倒立摆控制方法的比较研究[J]. 工业仪表与自动化装置, 2016(2):11-15. [6] 刘二林, 姜香菊. 基于双PID的旋转倒立摆控制系统设计与实现[J]. 制造业自动化, 22 2015(6):139-142. [7] 李永强,杨明忠.智能控制理论在倒立摆系统中应用研究,现代机械,2006,2:100-103 [8] 王卫华,单级倒立摆的专家模糊控制[J].湖北大学学报(自然科版),1999,(6):117-120. [9] 夏德钤,翁贻芳.自动控制理论[M].北京:机械工业出版社,2004:1-30. 23 因篇幅问题不能全部显示,请点此查看更多更全内容