基于matlab矩阵实验室的倒立摆控制系统仿真(编辑修改稿)内容摘要:

即: (33)把这个等式代入上式中,就得到系统的第一个运动方程: (34)为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程: (35) 即: (36)力矩平衡方程如下: (37)注意:此方程中力矩的方向,由于,因此等式前面有负号。 合并这两个方程,约去和,得到第二个运动方程: (38) 微分方程模型设,当摆杆与垂直向上方向之间的夹角与1(单位是弧度)相比很小,即 时,则可以进行近似处理:。 为了与控制理论的表达习惯相统一,即一般表示控制量,用来代表被控对象的输入力,线性化后得到该系统数学模型的微分方程表达式: (39) 传递函数模型对方程组(29)进行拉普拉斯变换,得到: (310)注意:推导传递函数时假设初始条件为0。 由于输出为角度,求解方程组(310)的第一个方程,可以得到: (311)或 : (312)如果令,则有: (313)把上式代入方程组(310)的第二个方程,得到: (314)整理后得到以输入力为输入量,以摆杆摆角为输出量的传递函数: (315)其中: 状态空间数学模型由现代控制理论原理可知,控制系统的状态空间方程可写成如下形式: (316)方程组(39)对解代数方程,得到如下解: (317)整理后得到系统状态空间方程: (318)由(39)的第一个方程为:对于质量均匀分布的摆杆有:于是可以得到:化简得到: (319)设,则有: (320)实际系统参数如下: 小车质量 Kg 摆杆质量 Kg 小车摩擦系数 0 .1N/m/sec 摆杆转动轴心到杆质心的长度 摆杆惯量 kg*m*m把上述参数代入,可以得到系统的实际模型。 摆杆角度和小车位移的传递函数: (321)摆杆角度和小车加速度之间的传递函数为: (322)摆杆角度和小车所受外界作用力的传递函数: (323)以外界作用力作为输入的系统状态方程: (324)以小车加速度作为输入的系统状态方程: (325)需要说明的是,在本文的控制器设计和程序中,采用的都是以小车的加速度作为系统的输入,如果需要采用力矩控制的方法,可以参考以上把外界作用力作为输入的各式。 系统阶跃响应分析上面已经得到系统的状态方程,先对其进行阶跃响应分析,在MATLAB中键入以下命令:clear。 A=[0 1 0 0。 0 0 0 0。 0 0 0 1。 0 0 0]。 B=[0 1 0 3]39。 C=[1 0 0 0。 0 1 0 0]。 D=[0 0]39。 step(A,B,C,D)。 得到如下计算结果: 图 33 直线一级倒立摆单位阶跃响应仿真可以看出,在单位阶跃响应作用下,小车位置和摆杆角度都是发散的。 倒立摆状态方程及开环阶跃响应也可以采用编写M文件的仿真,仿真程序如下:M =。 m =。 b =。 I =。 g =。 l =。 p = I*(M+m)+M*m*l^2。 A = [0 1 0 0。 0 (I+m*l^2)*b/p (m^2*g*l^2)/p 0。 0 0 0 1。 0 (m*l*b)/p m*g*l*(M+m)/p 0]B = [ 0。 (I+m*l^2)/p。 0。 m*l/p]C = [1 0 0 0。 0 0 1 0]D = [0。 0]。 T = 0::5。 U = *ones(size(T))。 [Y,X] = lsim(A,B,C,D,U,T)。 plot(T,Y)。 axis([0 2 0 100])。 grid。 运行后得到如图的仿真结果:图 34 倒立摆状态方程及开环阶跃响应仿真结果倒立摆传递函数、开环极点及开环脉冲响应也可采用编写M文件。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。