(完整版)一级直线倒立摆matlab程序

合集下载

基于MATLAB的直线一级倒立摆的PID控制研究

基于MATLAB的直线一级倒立摆的PID控制研究

基于MATLAB的直线一级倒立摆的PID控制研究一、内容概述本文旨在研究基于MATLAB的直线一级倒立摆的PID控制策略。

倒立摆系统作为控制理论中的重要实验对象,具有非线性、不稳定性以及快速运动等特点,对于控制系统的设计与实现提出了较高要求。

PID控制作为一种经典的控制方法,在倒立摆系统中具有广泛的应用价值。

本文利用MATLAB软件平台,对直线一级倒立摆的PID控制进行深入研究和探讨。

文章对直线一级倒立摆系统的基本原理进行介绍,包括其物理模型、运动方程以及稳定性分析等方面。

在此基础上,详细阐述了PID 控制器的基本原理、参数整定方法及其在倒立摆系统中的应用。

通过对比不同PID参数下的控制效果,分析了PID控制器在倒立摆系统中的性能特点。

文章重点介绍了基于MATLAB的直线一级倒立摆PID控制系统的设计与实现过程。

利用MATLAB的Simulink仿真工具,搭建了直线一级倒立摆的仿真模型,并设计了PID控制器进行仿真实验。

通过不断调整PID控制器的参数,观察系统的动态响应和稳态性能,得到了较优的控制参数。

文章还讨论了在实际应用中可能遇到的挑战与问题,并提出了相应的解决方案。

针对倒立摆系统的非线性特性,可以采用模糊PID控制或神经网络PID控制等智能控制方法进行改进;针对干扰和噪声的影响,可以采用滤波技术或鲁棒控制策略来提高系统的抗干扰能力。

文章总结了基于MATLAB的直线一级倒立摆PID控制研究的主要成果和贡献,并展望了未来研究方向和应用前景。

通过本文的研究,不仅加深了对倒立摆系统和PID控制方法的理解,也为实际工程应用提供了有益的参考和借鉴。

1. 直线一级倒立摆系统的介绍直线一级倒立摆系统,作为一个复杂且典型的非线性不稳定系统,历来被视为控制理论教学及实验的理想平台。

它不仅能够有效地反映出控制中的多种问题,如非线性、鲁棒性、镇定等,还因其在多个领域中的实际应用价值而备受关注。

直线一级倒立摆系统主要由小车、摆杆等部件构成,它们之间通过自由连接形成一个整体。

(完整)倒立摆MATLAB建模

(完整)倒立摆MATLAB建模

Matlab程序设计上交作业要求:1)纸质文档:设计分析报告一份(包括系统建模、系统分析、系统设计思路、程序及其执行结果).2)Matlab程序:按班级统一上交后备查。

题目一:考虑如图所示的倒立摆系统.图中,倒立摆安装在一个小车上。

这里仅考虑倒立摆在图面内运动的二维问题.图倒立摆系统假定倒立摆系统的参数如下。

摆杆的质量:m=0.1g摆杆的长度:2l=1m小车的质量:M=1kg重力加速度:g=10/s2摆杆惯量:I=0.003kgm2摆杆的质量在摆杆的中心.设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量%≤10%,调节时间ts ≤4s ,使摆返回至垂直位置,并使小车返回至参考位置(x=0)。

要求:1、建立倒立摆系统的数学模型2、分析系统的性能指标—-能控性、能观性、稳定性3、设计状态反馈阵,使闭环极点能够达到期望的极点,这里所说的期望的极点确定是把系统设计成具有两个主导极点,两个非主导极点,这样就可以用二阶系统的分析方法进行参数的确定4、用MATLAB 进行程序设计,得到设计后系统的脉冲响应、阶跃响应,绘出相应状态变量的时间响应图。

题目二:根据自身的课题情况,任意选择一个被控对象,按照上题所示步骤进行分析和设计,并给出仿真程序及其执行结果。

题目一:考虑如图所示的倒立摆系统.图中,倒立摆安装在一个小车上。

这里仅考虑倒立摆在图面内运动的二维问题.图倒立摆系统假定倒立摆系统的参数如下。

摆杆的质量:m=0.1g摆杆的长度:2l=1m小车的质量:M=1kg重力加速度:g=10/s2摆杆惯量:I=0。

003kgm2摆杆的质量在摆杆的中心。

设计一个控制系统,使得当给定任意初始条件(由干扰引起)时,最大超调量%≤10%,调节时间ts ≤4s ,使摆返回至垂直位置,并使小车返回至参考位置(x=0)。

要求:1、建立倒立摆系统的数学模型2、分析系统的性能指标—-能控性、能观性、稳定性3、设计状态反馈阵,使闭环极点能够达到期望的极点,这里所说的期望的极点确定是把系统设计成具有两个主导极点,两个非主导极点,这样就可以用二阶系统的分析方法进行参数的确定4、用MATLAB 进行程序设计,得到设计后系统的脉冲响应、阶跃响应,绘出相应状态变量的时间响应图.设计分析报告1 系统建模在忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统。

基于matlab的一级倒立摆系统仿真研究

基于matlab的一级倒立摆系统仿真研究

第一章绪论1.1倒立摆系统的简介1.1.1倒立摆系统的研究背景及意义倒立摆系统的最初分析研究开始于二十世纪五十年代,是一个比较复杂的不稳定、多变量、带有非线性和强耦合特性的高阶机械系统,它的稳定控制是控制理论应用的一个典型范例[1]。

倒立摆系统存在严重的不确定性,一方面是系统的参数的不确定性,一方面是系统的受到不确定因素的干扰。

通过对它的研究不仅可以解决控制中的理论问题,还将控制理论涉及的相关主要学科:机械、力学、数学、电学和计算机等综合应用。

在多种控制理论与方法的研究和应用中,特别是在工程中,存在一种可行性的实验问题,将其理论和方法得到有效的验证,倒立摆系统可以此提供一个从控制理论通过实践的桥梁。

近些年来,国内外不少专家、学者一直将它视为典型的研究对象,提出了很多控制方案,对倒立摆系统的稳定性和镇定问题进行了大量研究,都在试图寻找不同的控制方法实现对倒立摆的控制,以便检查或说明该方法的严重非线性和绝对不稳定系统的控制能力,其控制方法在军工、航天、机械人领域和一般工业过程中都有着广泛的用途,如精密仪器的加工、机器人行走过程中的平衡控制、火箭发射中的垂直度控制、导弹拦截控制、航空对接控制、卫星飞行中的姿态控制等方面均涉及到倒置问题。

因此,从控制这个角度上讲,对倒立摆的研究在理论和方法论上均有着深远意义。

倒立摆系统是一个典型的自不稳定系统,其中摆作为一个典型的振动和运动问题,可以抽象为许多问题来研究。

随着非线性科学的发展,以前的采用线性化方法来描述非线性的性质,固然无可非议,但这种方法是很有局限性,非线性的一些本质特征往往不是用线性的方法所能体现的。

非线性是造成混乱、无序或混沌的核心因素,造成混乱、无序或混沌并不意味着需要复杂的原因,简单的非线性就会产生非常的混乱、无序或混沌。

在倒立摆系统中含有极其丰富和复杂的动力学行为,如分叉、分形和混沌动力学,这方面的问题也值得去探讨和研究。

无论哪种类型的倒立摆系统都具有如下特性[2]:(1)非线性倒立摆是一个典型的非线性复杂系统。

基于Matlab的一级倒立摆模型的仿真

基于Matlab的一级倒立摆模型的仿真

基于Matlab的一级倒立摆模型的仿真一.倒立摆模型的研究意义倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想的实验平台。

对倒立摆系统的研究能有效的反应控制中的典型问题:如非线性问题、鲁莽性问题、镇定问题等。

通过对倒立摆的控制,用来检测新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

二.倒立摆模型的数学建模质量为m的小球固结于长度为L的细杆上(细杆质量不计),细杆和质量为M的小车铰链相接分析过程如下:如图所示,设细杆摆沿顺时针方向转东伟正方向,水平向右为水平方向上的正方向。

当细杆白顺时针想要运动时水平方向施加的里应该是水平相应。

对方程组进行拉普拉斯变化,得到摆杆角度和小车位移的传递函数:摆杆角度和小车加速度之间的传递函数:摆杆角度和小车加速度之间的传递函数:位移X对外力F的传递函数:三.在Matlab中输入得到的反馈矩阵:采用MATLAB/Simulink构造单级倒立摆状态反馈控制系统的仿真模型,如下图所示。

首先,在M A T L A B的Command Window中输入各个矩阵的值,并且在模型中的积分器中设置非零初值(这里我们设置为[0 0 0.1 0]。

然后运行仿真程序。

得到的仿真曲线从仿真结果可以看出,可以将倒立摆的杆子与竖直方向的偏角控制在θ=0(即小球和杆子被控制保持在竖直倒立状态),另外说明下黄线代表位移,紫线代表角度。

四.总结由实验中可知,倒立摆系统是一个非线性的较复杂的不稳定系统,故要满足故要满足稳定性要求,就得对系统进行线性化近似和稳定控制。

当然我们调节出来的只是一个理想模型,在实际中会更加复杂,稳定性也会更难获得。

在这次实验中掌握了倒立摆仿真的整个过程,熟悉了MATLAB仿真软件Simulingk的使用,也对系统有了更好的理解。

一阶倒立摆控制系统设计matlab

一阶倒立摆控制系统设计matlab

一阶倒立摆控制系统设计matlab一、控制系统简介控制系统是指通过对某些物理系统或过程的改变以获取期望输出或行为的一种系统。

其中涉及到了对系统的建模、分析以及控制方法的选择和设计等多方面的问题。

控制系统可以通过标准的数学和物理模型来描述,并可以通过物理或者仿真实验进行验证。

本文将围绕一阶倒立摆控制系统设计和仿真展开。

主要内容包括:1.一阶倒立摆系统简介2.系统建模3.系统分析4.设计控制器5.仿真实验及结果分析一阶倒立摆(controlled inverted pendulum)是一种比较常见的控制系统模型。

它的系统模型简单,有利于系统学习和掌握。

一般而言,一阶倒立摆系统是由一个竖直的支杆和一个质量为$m$的小球组成的。

假设球只能在竖直方向上运动,当球从垂直平衡位置偏离时,支杆会向相反的方向采取动作,使得小球可以回到平衡位置附近。

为了控制一阶倒立摆系统,我们首先需要对其进行建模。

由于系统并不是非常复杂,所以建模过程相对简单。

假设支杆长度为$l$,支杆底端到小球的距离为$h$,支杆与竖直方向的夹角为$\theta$,小球的质量为$m$,地球重力为$g$,该系统的拉格朗日方程可以表示为:$L =\frac{1}{2}m\dot{h}^{2}+\frac{1}{2}ml^{2}\dot{\theta}^{2}-mgh\cos{\theta}-\frac{1}{2}I\dot{\theta}^{2}$$I$表示支杆的惯性矩,它可以通过支杆的质量、长度以及截面积等参数计算得出。

$h$和$\theta$分别表示小球和支杆的位置。

我们可以通过拉格朗日方程可以得出系统的动力学方程:$b$表示摩擦系数,$f_{c}$表示对支杆的控制力。

由于一阶倒立摆会发生不稳定的倾斜运动,即未受到外部控制时会继续倾斜。

我们需要对系统加上控制力,使得系统保持在稳定的位置上。

在进行控制器设计之前,我们需要对系统进行分析,以便更好地了解系统在不同条件下的特性表现。

模糊控制一级倒立摆matlab实现

模糊控制一级倒立摆matlab实现

模糊控制一级倒立摆MATLAB实现课程:现代仿真技术及应用专业:控制理论与控制工程学号:姓名:模糊控制一级倒立摆MATLAB实现摘要:一级倒立摆是一个典型的非线性,强耦合,多变量的不稳定系统,为了控制其平衡性,对一级倒立摆系统建立了数学模型,采用模糊控制法设计了控制器,并用MATLAB/SIMULINK对控制系统进行了仿真实验研究,实验结果表明,模糊控制器具有良好的控制效果。

关键词:一级倒立摆;模糊控制;MATLAB/SIMULINK一引言倒立摆最初研究开始于20世纪50年代,麻省理工学院的控制论专家根据火箭发射器原理设计出一级倒立摆实验设备,而后倒立摆就成了验证控制方法和理论的实验平台,被广泛应用与实验教学中。

一级倒立摆具有结构简单,便于模拟的优点,同时它在控制过程中能够优先的反应控制中的许多关键问题,如系统的非线性、鲁棒性等。

因此对倒立摆的研究一直是控制领域中经久不衰的课题。

二一级倒立摆数学模型的建立在忽略各种摩擦之后,一级倒立摆系统是由小车、质量块和匀质杆组成的系统,通过控制小车位置,以使小车上的倒立摆始终处于反转垂直位置,左右倾斜角在︒±5.0范围内,原理结构图如图1.1所示。

图1.1 一级倒立摆原理结构图对该模型进行受力分析,作如下假设:M 小车质量 1.096Kg m 摆杆质量 0.109Kg b 小车摩擦系数 0.1N/m/sec I 摆杆惯量 0.0034Kg*m*m T 采样频率 0.005sl 摆杆转动轴心到杆质心的长度 0.25m F 夹在小车上的力 x 小车位置φ 摆杆与垂直向上方向的夹角θ 摆杆与垂直向下方向的夹角分析小车水平方向所受的合力:N x b F xM --= 摆杆水平方向的合力:)sin (22θl x dtd m N +=即: θθθθsin cos 2ml ml x m N -+= 把这个等式代入上式中,得到系统的第一个运动方程:F ml ml x b xm M =-+++θθθθsin cos )(2 对摆杆垂直方向上的合力进行分析,得到以下方程:θθθcos 2 ml ml mg P --=- 力矩平衡方程如下:θθθ I Nl Pl =--cos sin合并以上两个方程,得到第二个运动方程:θθθcos sin )(2xml mgl ml I -=++ 线性化后两个运动方程如下:⎪⎩⎪⎨⎧=-++=-+u ml x b x m M x ml mgl ml I φφφ)()(2 对方程组进行拉普拉斯变换,得到摆杆角度和小车位移之间的传递函数:mgls ml I mls X s -+=Φ22)()()( 将实际参数代入后得到实际模型:26705.00102125.002725.0)()(2-=Φs s X s 三 模糊控制器控制 3.1 模糊控制原理模糊逻辑控制简称模糊控制,是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字智能控制技术。

一级直线倒立摆matlab程序(最新整理)

一级直线倒立摆matlab程序(最新整理)

非线性作业一 一级直线倒立摆如图1所示系统里的各参数变量M :小车系统的等效质量(1.096kg );:摆杆的质量(0.109kg );1m :摆杆的半长(0.25m );2m J :摆杆系统的转动惯量(0.0034kg*m );g :重力加速度(9.8N/Kg );r :小车的水平位置(m );θ:摆角大小(以竖直向上为0起始位置,逆时针方向为正方向);:小车对摆杆水平方向作用力(N )(向左为正方向),’是其反作用力;h F h F :小车对摆杆竖直方向作用力(N )(向上为正方向),’是其反作用力;v F v F U :电动机经传动机构给小车的力,可理解为控制作用u’(向左为正方向);:摆杆重心的水平位置(m );:摆杆重心的竖直位置(m )。

p x p y 1.1一级倒立摆的数学建模定义系统的状态为[r,r, θ, θ]经推导整理后可以达到倒立摆系统的牛顿力学模型:(1)θθθsin cos )(2mgl l r m ml I =-+ (2)u ml r m M ml -⋅=+-⋅2sin )(cos θθθθ 因为摆杆一般在工作在竖直向上的小领域内θ=0,可以在小范围近似处理:,则数学模型可以整理成:0,0sin ,1cos 2==≈θθθ (3)θθmgl l r m ml I =-+ )(2 (4)u r m M ml =++- )(θ系统的状态空间模型为=+ (5)⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r ⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+++++0)()(010000)(0000102222Mml m M I m M mgl Mml m M I gl m ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθr r ⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡+++++222)(0)(0Mml m M I ml Mml m M I ml I u (6)u r r r y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0000101000θθθ 代人实际系统的参数后状态方程为:=+ (7)⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡08285.2700100006293.0000010⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r u ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3566.208832.00 (8)u r r r y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0000101000θθθ 1.2滑模变结构在一级倒立摆系统的应用主要包括切换函数的设计、控制率的设计和系统消除抖振的抑制。

基于MATLAB-GUI的一级倒立摆控制仿真软件设计

基于MATLAB-GUI的一级倒立摆控制仿真软件设计

基于MATLAB-GUI的一级倒立摆控制仿真软件设计基于MATLAB/GUI的一级倒立摆控制仿真软件设计摘要:本文介绍了一种基于MATLAB/GUI的一级倒立摆控制仿真软件的设计方法。

倒立摆是一个经典的控制系统问题,通过控制摆杆使其保持垂直状态。

本文使用MATLAB作为仿真平台,并通过GUI界面设计,使得用户可以方便地输入参数、观察系统状态和结果。

通过该仿真软件,可以有效地学习和研究控制系统的设计与应用。

关键词:MATLAB;倒立摆;控制系统;仿真软件;GUI一、引言倒立摆是一种非线性、强耦合且不稳定的控制系统,是控制理论中经典的问题之一。

倒立摆控制系统受到广泛的研究关注,其在机器人、飞行器、自动驾驶等领域有着重要的应用。

为了帮助学习者理解控制系统的原理和特点,设计了一种基于MATLAB/GUI的一级倒立摆控制仿真软件。

二、仿真软件设计1. 系统模型建立使用MATLAB工具箱中的Simulink建立倒立摆的系统模型。

系统包含两个部分:摆杆和电机控制器。

摆杆模型包括质量、长度、角度等参数;电机控制器模型包括电压、电流、转速等参数。

连接两个模块,构建完整的倒立摆控制系统。

2. GUI界面设计使用MATLAB的GUI工具进行界面设计,用户可以通过界面方便地输入参数、选择控制算法和观察系统状态。

界面包括输入参数框、按钮、图表等控件。

3. 控制算法设计通过GUI界面,用户可以选择不同的控制算法,如PID控制、模糊控制、自适应控制等。

根据选择的算法,修改Simulink模型中的控制器参数,并进行仿真分析。

4. 仿真结果可视化在GUI界面中添加图表,可以实时显示倒立摆的角度、位置等参数。

用户可以通过修改参数和算法,观察系统的响应结果并进行分析。

三、应用实例以PID控制算法为例,进行系统仿真。

用户可以通过GUI界面输入摆杆的质量、长度、角度等参数。

选择PID控制算法后,可以调节PID参数的值,观察系统响应和稳定性。

(完整版)一级直线倒立摆matlab程序

(完整版)一级直线倒立摆matlab程序

非线性作业一 一级直线倒立摆如图1所示系统里的各参数变量M :小车系统的等效质量(1.096kg );1m :摆杆的质量(0.109kg );2m :摆杆的半长(0.25m );J :摆杆系统的转动惯量(0.0034kg*m );g :重力加速度(9.8N/Kg );r :小车的水平位置(m );θ:摆角大小(以竖直向上为0起始位置,逆时针方向为正方向); h F :小车对摆杆水平方向作用力(N )(向左为正方向),h F ’是其反作用力; v F :小车对摆杆竖直方向作用力(N )(向上为正方向),v F ’是其反作用力; U :电动机经传动机构给小车的力,可理解为控制作用u’(向左为正方向); p x :摆杆重心的水平位置(m );p y :摆杆重心的竖直位置(m )。

1.1一级倒立摆的数学建模定义系统的状态为[r,r, θ, θ]经推导整理后可以达到倒立摆系统的牛顿力学模型:θθθsin cos )(2mgl l r m ml I =-+ (1)u ml r m M ml -⋅=+-⋅2sin )(cos θθθθ (2) 因为摆杆一般在工作在竖直向上的小领域内θ=0,可以在小范围近似处理:0,0sin ,1cos 2==≈θθθ ,则数学模型可以整理成:θθmgl l r m ml I =-+ )(2 (3) u r m M ml =++- )(θ (4) 系统的状态空间模型为⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r =⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+++++0)()(0010000)(0000102222Mml m M I m M mgl Mml m M I gl m ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r +⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡+++++222)(0)(0Mml m M I ml Mml m M I ml I u (5) u r r r y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0000101000θθθ (6) 代人实际系统的参数后状态方程为:⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r =⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡08285.2700100006293.0000010⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r +u ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3566.208832.00 (7) u r r r y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0000101000θθθ (8) 1.2滑模变结构在一级倒立摆系统的应用主要包括切换函数的设计、控制率的设计和系统消除抖振的抑制。

直线一级倒立摆MATLAB仿真报告

直线一级倒立摆MATLAB仿真报告

1便携式倒立摆实验简介倒立摆装置被公认为是自动控制理论中的典型试验设备,是控制理论教学和科研中不可多得的典型物理模型。

本实验基于便携式直线一级倒立摆试验系统研究其稳摆控制原理。

1.1主要实验设备及仪器便携式直线一级倒立摆实验箱一套控制计算机一台便携式直线一级倒立摆实验软件一套1.2便携式倒立摆系统结构及工作原理便携式直线一级倒立摆试验系统总体结构如图1所示:图1 便携式一级倒立摆试验系统总体结构图主体结构包括摆杆、小车、便携支架、导轨、直流伺服电机等。

主体、驱动器、电源和数据采集卡都置于实验箱内,实验箱通过一条USB数据线与上位机进行数据交换,另有一条线接220v交流电源。

便携式直线一级倒立摆的工作原理如图2所示:图2 便携式一级倒立摆工作原理图数据采集卡采集到旋转编码器数据和电机尾部编码器数据,旋转编码器与摆杆同轴,电机与小车通过皮带连接,所以通过计算就可以得到摆杆的角位移以及小车位移,角位移差分得角速度,位移差分可得速度,然后根据自动控制中的各种理论转化的算法计算出控制量。

控制量由计算机通过USB数据线下发给伺服驱动器,由驱动器实现对电机控制,电机尾部编码器连接到驱动器形成闭环,从而可以实现摆杆直立不倒以及自摆起。

2便携式倒立摆控制原理方框图便携式倒立摆是具有反馈功能的闭环系统,其控制目标是实现在静态和动态下的稳摆。

当输入量为理想摆角,即∅∅=0时,偏差为0,控制器不工作;当输入量不为理想摆角时,偏差存在,控制器做出决策,驱动电机,使小车摆杆系统发生相应位移,输出的摆角通过角位移传感器作用于输出量,达到减小偏差的目的。

根据控制原理绘制出控制方框图如图3所示:图3 便携式一级倒立摆控制原理方框图3建立小车-摆杆数学模型便携式倒立摆系统主要由小车、摆杆等组成,它们之间自由连接。

小车可以在导轨上自由移动,摆杆可以在铅垂的平面内自由地摆动。

在忽略了空气阻力和各种摩擦之后,可将便携式倒立摆系统抽象成小车和匀质杆组成的刚体系统,在惯性坐标内应用经典力学理论建立系统的动力学方程,采用力学分析方法建立小车-摆杆的数学模型。

用Matlab完成倒立摆系统的分析与综合

用Matlab完成倒立摆系统的分析与综合

现代控制理论用Matlab 完成倒立摆系统的分析与综合2013/5/23 Thursday 学号:**********杨 博用Matlab 完成倒立摆系统的分析与综合一、实验要求1、熟悉非线性系统数学模型的建立过程。

2、非线性数学模型的近似线性化。

3、判断系统的能控性及能观性。

4、学习利用MATLAB 来分析系统的能观性、能控性和稳定性(Lyapunov 第一法)。

5、掌握状态反馈极点配置控制,并能用MATLAB 仿真软件进行控制算法的仿真验证与分析。

二、实验原理底座导轨摆杆XFϕl图1 一级倒立摆系统模型 图2 小车水平方向受力分析图3 摆杆垂直方向的受力分析Pb ẋ N F小车水平方向受力: Mẍ+bẋ+N =F摆杆水平方向受力:2(sin )2d N m x l dtθ=+即: N =mẍ+mlθcos θ−mlθsin θ得第一个运动方程:(M +m )ẍ+bẋ+mlθcos θ−mlθsin θ=F摆杆垂直方向受力:2(cos )2d P mg m l dtθ-=力矩平衡方程:−Pl sin θ−Nl cos θ=Iθ=+θπφ,cos cos φ=-sin sin φθ=-第二个运动方程:(I +ml 2)θ+mgl sin θ=−mlẍcos θ 两个运动方程化简得:{(I +ml 2)ϕ−mgl∅=mlẍ(M +m )ẍ+bẋ−mlϕ=u拉普拉斯变换得:222()()()()22()()()()()I ml s s mgl s mlX s sM m X s s bX s s ml s s U s ⎧+Φ-Φ=⎪⎨⎪++-Φ=⎩三、实验内容1、一级直线倒立摆传递函数的建立 摆杆输出角度和电机作用力的传递函数为:2()2()()()432ml s s qU s b I ml mgl M m bmgls s s sq q q⋅Φ=+++⋅-⋅-⋅ 其中22[()()()]q M m I ml ml =++-2、一级直线倒立摆状态空间方程的建立求解可得ẍ、ϕ,整理后得到系统的状态空间方程为:010002222()00222()()()00010()00222()()()x x I ml b m gl I ml x xI M m Mml I M m Mml I M m Mml umlbmgl M m ml I M m Mml I M m Mml I M m Mml φφφφ⎡⎤⎡⎤⎢⎥⎢⎥⎡⎤⎡⎤-++⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥++++++⎢⎥⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥-+⎢⎥⎣⎦⎣⎦⎢⎥⎢⎥⎢⎥⎢⎥++++++⎣⎦⎣⎦1000000100x x x y u φφφ⎡⎤⎢⎥⎡⎤⎡⎤⎡⎤⎢⎥==+⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎢⎥⎣⎦3、MATLAB 仿真要求 ➢ 求出状态空间表达式矩阵。

直线一级倒立摆控制方法设计

直线一级倒立摆控制方法设计

直线一级倒立摆控制方法设计倒立摆的数学模型设计倒立摆系统是一个典型的非线性、强耦合、多变量和不稳定系统,作为控制系统的被控对象,许多抽象的控制概念都可以通过倒立摆直观地表现出来。

本设计是以一阶倒立摆为被控对象来进行设计的。

状态空间法:状态空间法可以进行单输入多输出系统设计,因此在这个实验中,我们将尝试同时对摆杆角度和小车位置进行控制。

根据设计要求,给小车加一个阶跃输入信号。

此次用Matlab 求出系统的状态空间方程各矩阵,并仿真系统的开环阶跃响应。

在这里给出一个state.m 文件,执行这个文件,Matlab 将会给出系统状态空间方程的A,B,C 和D 矩阵,并绘出在给定输入为一个0.2m 的阶跃信号时系统的响应曲线。

直线一级倒立摆系统数学建模 在忽略了空气阻力、各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统。

如图所示:系统状态方程为:XAX Bu Y CX Du=+=+假设系统内部各相关参数为:M 小车质量 0.5kg m 摆杆质量 0.2kgb 小车摩擦系数 0.1N/m/sec l 摆杆转动轴心到杆质心的长度 0.3mI 摆杆惯量 0.006kg*m*m T 采样时间 0.005s x 小车位置φ 摆杆与垂直向上方向的夹角θ 摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下) 应用牛顿-欧拉方法,可得到系统状态空间方程为:222222201()0()()0()0()()x I ml b m gl x I M m Mml I M m Mml lb mgl M m I M m Mml I M m Mml φφ⎡⎤⎢⎥⎡⎤-+⎢⎥⎢⎥⎢⎥++++⎢⎥=⎢⎢⎥⎢⎢⎥⎢-+⎢⎥⎣⎦⎢++++⎣⎦ 0 0 0 0 0 0m 0 2220()0()x I ml x I M m Mml u ml I M m Mml φφ⎡⎤⎢⎥⎡⎤+⎢⎥⎢⎥⎢⎥++⎢⎥+⎥⎢⎥⎢⎥⎥⎢⎥⎢⎥⎥⎢⎥⎢⎥⎣⎦⎥⎢⎥++⎣⎦1000000100x x x Y u φφφ⎡⎤⎢⎥⎡⎤⎡⎤⎡⎤⎢⎥==+⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎢⎥⎢⎥⎣⎦ 以上就是一阶倒车摆系统的状态空间表达式。

基于一阶倒立摆的matlab仿真实验

基于一阶倒立摆的matlab仿真实验

成都理工大学工程技术学院基于一阶倒立摆的matlab仿真实验实验人员: --------------学号:-----------------实验日期:20150618摘要本文主要研究的是一级倒立摆的控制问题,并对其参数进行了优化。

倒立摆是典型的快速、多变量、非线性、强耦合、自然不稳定系统。

由于在实际中有很多这样的系统,因此对它的研究在理论上和方法论上均有深远的意义。

本文首先简单的介绍了一下倒立摆以及倒立摆的控制方法,并对其参数优化算法做了分类介绍。

然后,介绍了本文选用的优化参数的状态空间极点的配置和PID控制。

接着建立了一级倒立摆的数学模型,并求出其状态空间描述。

本文着重讲述的是利用状态空间中极点配置实现方法。

最后,用Simulink对系统进行了仿真,得出在实际控制中是两种比较好的控制方法。

目录1 引言 (4)1.1 倒立摆介绍以及应用 (4)1.2 倒立摆的控制方法 (5)2单级倒立摆数学模型的建立 (6)2.1传递函数 (8)2.2状态空间方程 (9)3系统Matlab 仿真和开环响应 (10)4 系统设计 (15)4.1极点配置与控制器的设计 (15)4.2系统仿真: (16)4.3仿真结果 (17)4.4根据传递函数设计第二种控制方法-----PID串级控制 (18)5结论 (19)1 引言1.1 倒立摆介绍以及应用倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。

对倒立摆系统的研究能有效的反映控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。

通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

通过对它的研究不仅可以解决控制中的理论和技术实现问题,还能将控制理论涉及的主要基础学科:力学,数学和计算机科学进行有机的综合应用。

其控制方法和思路无论对理论或实际的过程控制都有很好的启迪,是检验各种控制理论和方法的有效的“试金石”。

一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真

一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真

一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真倒立摆PID控制及其Matlab仿真学生姓名:学院:电气信息工程学院专业班级:专业课程:控制系统的MATLAB仿真与设计任课教师:2014 年 6 月 5 日倒立摆PID控制及其Matlab仿真Inverted Pendulum PID Control and ItsMatlab Simulation摘要倒立摆系统是一个典型的快速、多变量、非线性、不稳定系统,对倒立摆的控制研究无论在理论上和方法上都有深远的意义。

本论文以实验室原有的直线一级倒立摆实验装置为平台,重点研究其PID 控制方法,设计出相应的PID控制器,并将控制过程在MATLAB上加以仿真。

本文主要研究内容是:首先概述自动控制的发展和倒立摆系统研究的现状;介绍倒立摆系统硬件组成,对单级倒立摆模型进行建模,并分析其稳定性;研究倒立摆系统的几种控制策略,分别设计了相应的控制器,以MATLAB为基础,做了大量的仿真研究,比较了各种控制方法的效果;借助固高科技MATLAB实时控制软件实验平台;利用设计的控制方法对单级倒立摆系统进行实时控制,通过在线调整参数和突加干扰等,研究其实时性和抗千扰等性能;对本论文进行总结,对下一步研究作一些展望。

关键词:倒立摆;PID控制器;MATLAB仿真设计报告正文1.简述一级倒立摆系统的工作原理;倒立摆是一个数字式的闭环控制系统,其工作原理为:角度、位移信号检测电路获取后,由微分电路获取相应的微分信号。

这些信号经A/D转换器送入计算机,经过计算及内部的控制算法解算后得到相应的控制信号,该信号经过D/A变换、再经功率放大由执行电机带动皮带卷拖动小车在轨道上做往复运动,从而实现小车位移和倒立摆角位移的控制。

2.依据相关物理定理,列写倒立摆系统的运动方程;2lO1小车质量为M ,倒立摆的质量为m ,摆长为2l ,小车的位置为x ,摆的角度为θ,作用在小车水平方向上的力为F ,1O 为摆杆的质心。

直线一级倒立摆MATLAB仿真报告

直线一级倒立摆MATLAB仿真报告

1便携式倒立摆实验简介倒立摆装置被公认为是自动控制理论中的典型试验设备,是控制理论教学和科研中不可多得的典型物理模型。

本实验基于便携式直线一级倒立摆试验系统研究其稳摆控制原理。

1.1主要实验设备及仪器便携式直线一级倒立摆实验箱一套控制计算机一台便携式直线一级倒立摆实验软件一套1.2便携式倒立摆系统结构及工作原理便携式直线一级倒立摆试验系统总体结构如图1所示:图1便携式一级倒立摆试验系统总体结构图主体结构包括摆杆、小车、便携支架、导轨、直流伺服电机等。

主体、驱动器、电源和数据采集卡都置于实验箱内,实验箱通过一条USB数据线与上位机进行数据交换,另有一条线接220v交流电源。

便携式直线一级倒立摆的工作原理如图2所示:图2 便携式一级倒立摆工作原理图数据采集卡采集到旋转编码器数据和电机尾部编码器数据,旋转编码器与摆杆同轴,电机与小车通过皮带连接,所以通过计算就可以得到摆杆的角位移以及小车位移,角位移差分得角速度,位移差分可得速度,然后根据自动控制中的各种理论转化的算法计算出控制量。

控制量由计算机通过USB数据线下发给伺服驱动器,由驱动器实现对电机控制,电机尾部编码器连接到驱动器形成闭环,从而可以实现摆杆直立不倒以及自摆起。

2便携式倒立摆控制原理方框图便携式倒立摆是具有反馈功能的闭环系统,其控制目标是实现在静态和动态下的稳摆。

∅g=0当输入量为理想摆角,即时,偏差为0,控制器不工作;当输入量不为理想摆角时,偏差存在,控制器做出决策,驱动电机,使小车摆杆系统发生相应位移,输出的摆角通过角位移传感器作用于输出量,达到减小偏差的目的。

根据控制原理绘制出控制方框图如图3所示:图3 便携式一级倒立摆控制原理方框图3建立小车-摆杆数学模型便携式倒立摆系统主要由小车、摆杆等组成,它们之间自由连接。

小车可以在导轨上自由移动,摆杆可以在铅垂的平面内自由地摆动。

在忽略了空气阻力和各种摩擦之后,可将便携式倒立摆系统抽象成小车和匀质杆组成的刚体系统,在惯性坐标内应用经典力学理论建立系统的动力学方程,采用力学分析方法建立小车-摆杆的数学模型。

基于MATLAB(矩阵实验室)的倒立摆控制系统仿真

基于MATLAB(矩阵实验室)的倒立摆控制系统仿真

基于MATLAB的倒立摆控制系统仿真摘要自动控制原理(包括经典部分和现代部分)是电气信息工程学院学生的一门必修专业基础课,课程中的一些概念相对比较抽象,如系统的稳定性、可控性、收敛速度和抗干扰能力等。

倒立摆系统是一个典型的非线性、强耦合、多变量和不稳定系统,作为控制系统的被控对象,它是一个理想的教学实验设备,许多抽象的控制概念都可以通过倒立摆直观地表现出来。

本文以一级倒立摆为被控对象,用经典控制理论设计控制器(PID控制器)的设计方法和用现代控制理论设计控制器(极点配置)的设计方法,通过MATLAB仿真软件的方法来实现。

关键词:一级倒立摆PID控制器极点配置Inverted pendulum controlling systemsimulation based on the MATLABABSTRACTAutomatic control theory (including classical parts and modern parts) is a compulsory specialized fundamental course of the students majored in electrical engineering. Some of the curriculum concept is relatively abstract, such as the stability, controllability, convergence rate and the anti-interference ability of system. Inverted pendulum system is a typical nonlinear, strong coupling, multivariable and unstable system. It is an ideal teaching experimental equipment as a controlled object, by which many abstract control concepts can be came out directly. This paper chose first-order inverted pendulum as the controlled object. First, the PID controller was designed with classical control theory. Then pole-assignment method was discussed with modern control theory. At last, the effectness of the two methods was verified by MATLAB simulation software.KEY WORDS: First-order inverted pendulum PID controller pole-assignment目录摘要 (I)ABSTRACT (II)1 绪论 (1)1.1倒立摆的控制方法 (1)1.2 MATLAB/Simulink简介 (2)1.3 主要内容 (3)2一级倒立摆 (3)2.1 实验设备简介 (3)3直线一级倒立摆的数学模型 (4)3.1直线一级倒立摆数学模型的推导 (4)3.1.1 微分方程模型 (6)3.1.2 传递函数模型 (7)3.1.3 状态空间数学模型 (8)3.2系统阶跃响应分析 (10)4 直线一级倒立摆PID控制器设计 (14)4.1 PID控制分析 (14)4.2PID控制参数设定及MATLAB仿真 (17)5直线一级倒立摆状态空间极点配置控制器设计 (20)5.1 状态空间分析 (21)5.2极点配置及MATLAB仿真 (22)6总结 (26)致谢 (27)参考文献 (28)1 绪论倒立摆起源于20世纪50年代,是一个典型的非线性、高阶次、多变量、强耦合、不稳定的动态系统,能有效地反映诸如稳定性、鲁棒性等许多控制中的关键问题,是检验各种控制理论的理想模型。

基于adams和matlab的一级倒立摆联合仿真

基于adams和matlab的一级倒立摆联合仿真

基于PRO/E,ADAMS和MATLAB/SIMULINK 的双回路PID控制一级倒立摆联合仿真目录一、倒立摆简介1、概述2、倒立摆分类3、倒立摆控制方法二、联合仿真流程三、基于PRO/E的一级倒立摆三维建模四、基于ADAMS的一级倒立摆模型设计五、ADAMS和MATLAB/SIMULINK的联合仿真六、一级倒立摆的双回路PID控制策略1、一级倒立摆的角度控制2、一级倒立摆的双闭环控制3、一级倒立摆摆杆长度参数对控制策略的影响七、问题总结参考文献一、倒立摆简介1、概述倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。

对倒立摆系统的研究能有效的反映控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。

通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

同时,其控制方法在军工、航天、机器人和一般工业过程领域中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等。

倒立摆系统按摆杆数量的不同,可分为一级,二级,三级倒立摆等,多级摆的摆杆之间属于自由连接(即无电动机或其他驱动设备)。

倒立摆的控制问题就是使摆杆尽快地达到一个平衡位置,并且使之没有大的振荡和过大的角度和速度。

当摆杆到达期望的位置后,系统能克服随机扰动而保持稳定的位置。

图1.1一级倒立摆2、倒立摆分类(1)直线型倒立摆它是最常见倒立摆系统,也称车摆装置,根据目前的研究它又分为1,2,3,4级车摆,典型结构图如图11.2所示,图中以三级车摆为例,它是由可以沿直线导轨运动的小车以及一端固定于小车之上的匀质长杆组成的系统,小车可以通过转动装置由力矩电机、步进电机、直流电机或者交流伺服电机驱动,车的导轨一般有固定的行程,因而小车的运动范围都是受到限制的。

图1.2直线型倒立摆(2)环型倒立摆环型倒立摆也称摆杆式倒立摆,如图1.3所示,图中以二级为例,一般是由水平放置的摆杆和连在其端接的自由倒摆组成,原理上也可以看成是车摆的轨道为圆轨情况,摆杆是通过传动电机带动旋转的。

一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真

一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真

一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真倒立摆PID控制及其Matlab仿真学生姓名:学院:电气信息工程学院专业班级:专业课程:控制系统的MATLAB仿真与设计任课教师:2014 年 6 月 5 日倒立摆PID控制及其Matlab仿真Inverted Pendulum PID Control and ItsMatlab Simulation摘要倒立摆系统是一个典型的快速、多变量、非线性、不稳定系统,对倒立摆的控制研究无论在理论上和方法上都有深远的意义。

本论文以实验室原有的直线一级倒立摆实验装置为平台,重点研究其PID 控制方法,设计出相应的PID控制器,并将控制过程在MATLAB上加以仿真。

本文主要研究内容是:首先概述自动控制的发展和倒立摆系统研究的现状;介绍倒立摆系统硬件组成,对单级倒立摆模型进行建模,并分析其稳定性;研究倒立摆系统的几种控制策略,分别设计了相应的控制器,以MATLAB为基础,做了大量的仿真研究,比较了各种控制方法的效果;借助固高科技MATLAB实时控制软件实验平台;利用设计的控制方法对单级倒立摆系统进行实时控制,通过在线调整参数和突加干扰等,研究其实时性和抗千扰等性能;对本论文进行总结,对下一步研究作一些展望。

关键词:倒立摆;PID控制器;MATLAB仿真设计报告正文1.简述一级倒立摆系统的工作原理;倒立摆是一个数字式的闭环控制系统,其工作原理为:角度、位移信号检测电路获取后,由微分电路获取相应的微分信号。

这些信号经A/D转换器送入计算机,经过计算及内部的控制算法解算后得到相应的控制信号,该信号经过D/A变换、再经功率放大由执行电机带动皮带卷拖动小车在轨道上做往复运动,从而实现小车位移和倒立摆角位移的控制。

2.依据相关物理定理,列写倒立摆系统的运动方程;2lO1小车质量为M ,倒立摆的质量为m ,摆长为2l ,小车的位置为x ,摆的角度为θ,作用在小车水平方向上的力为F ,1O 为摆杆的质心。

毕业设计(论文)-基于matlab的一级倒立摆控制器设计与仿真[管理资料]

毕业设计(论文)-基于matlab的一级倒立摆控制器设计与仿真[管理资料]

摘要倒立摆系统是一个典型的多变量、非线性、强耦合和快速运动的高阶不稳定系统,它是检验各种新型控制理论和方法有效性的典型装置。

近年来,许多学者对倒立摆系统进行广泛地研究。

本文研究了直线一级倒立摆的控制问题。

首先阐述了倒立摆系统控制的研究发展过程和现状,接着介绍了倒立摆系统的结构并详细推导了一级倒立摆的数学模型。

本文分别用极点配置、LQR最优控制设计了不同的控制器,极点配置法通过设计状态反馈控制器将多变量系统的闭环系统极点配置在期望的位置上,从而使系统满足要求的瞬态和稳态性能指标。

最优控制理论主要是依据庞特里亚金的极值原理,通过对性能指标的优化寻找可以使目标极小的控制器。

若取状态变量的二次型函数的积分做为系统的性能指标,则称为线性系统二次型性能指标的最优控制。

通过比较和MATLAB仿真,验证了所设计的控制器的有效性、稳定性和抗干扰性。

关键词:单级倒立摆;MATLAB;控制器设计;极点配置;LQRABSTRACTInverted pendulum is a typical multi-variable, non-linear, strong coupling and rapid movement of high-end system instability, It is testing various new control theory and methods of the effectiveness of the typical devices. In recent years, many scholars of the inverted pendulum extensive study.In this paper, a straight two inverted pendulum control on the inverted pendulum control of the development process and the status quo, then introduced the inverted pendulum system and the detailed structure of the two inverted pendulum is derived a mathematical model. In this paper, with pole placement, LQR optimal control design a different controller, By comparing and MATLAB simulation, verified the effectiveness ,stability and anti-jamming of the controller.Pole-zero configuration can configure the closed-loop system poles of multi-variable system in the desired position, by designing of the state feedback controller,so that to make the system meets the requirements of the transient and steady state performance indicators.Optimal control theory is mainly based on the Pontryagin maximum principle, by the optimization of the performance indicators to find the minimal goal of the taking the integral of the quadratic function of state variables as the system of performance indicators, called the as the linear quadratic performance index of optimal control.Key words : Single stage Inverted pendulum; MATLAB; Controller design; Zero-pole ; LQR目录摘要 (1)ABSTRACT (2)1 绪论 0控制理论的发展 0倒立摆系统简介及其研究意义 0倒立摆研究的发展现状及其主要控制方法 (1)研究目标 (2)2 直线一阶倒立摆数学模型的建立 (4)倒立摆系统的物理结构与建模 (4)系统参数设定 (7)系统能控性与能观性 (8)3 极点配置控制方案的设计 (9)极点配置理论 (9)极点配置算法 (10)极点配置控制方案的设计 (11)4 线性二次型最优控制(LQR)方案的设计 (15)最优控制的起源和发展 (15)线性二次型最优控制原理 (15)最优控制矩阵的设计 (18)5 控制系统的MATLAB仿真 (22)MATLAB软件介绍 (22)极点配置控制方案的仿真 (23)线性二次型最优控制(LQR)方案的仿真 (26)干扰条件下控制系统的仿真 (27)S函数模拟动画设计 (28) (31)6 总结与展望 (32)参考文献 (35)致谢 (36)附录 (37)1 绪论控制理论的发展控制理论发展至今已有100多年的历史,随着现代科学技术的发展,它的应用也越来越广泛。

直线一级倒立摆系统的建模及仿真

直线一级倒立摆系统的建模及仿真

计算机控制技术课程设计实验:直线一级倒立摆系统的建模及仿真一、已知条件:图1倒立摆简化模型摆杆角度为输出,小车的位移为输入。

导轨中点为坐标轴的中心即零点,右向为坐标值增加的方向,杆偏移其瞬时平衡位置右侧的角度为正值。

二、任务要求:总体任务通过调节PID参数,设计PID控制器实现摆杆在受到干扰的情况下,依然能恢复平衡。

具体包括以下几部分:1. 理论推导包括倒立摆系统的动力学模型,传递函数,离散传递函数,状态空间或差分方程,稳定性分析,PID控制器设计2. 程序实现实现内容:倒立摆系统模型,控制器以及仿真结果的显示。

开发语言和工具:Matlab m 文件或C/C++ (工具:VC++或其它)3. PID控制参数设定及仿真结果。

分别列出不同杆长的仿真结果(例如:L=0.25 和L=0.5)。

4. 将理论推导、程序实现、仿真结果写成实验报告。

具体求解过程如下:一,倒立摆系统动力学模型的建立图1 摆杆的受力分析图以摆杆为研究对象,对其进行受力分析,如图1所示。

根据质点系的达朗贝尔原理得IC I 0F CP mg CP M →→⨯+⨯-= (1)式中,IC F 为杆的惯性力,表达式为()IC C P CP CP IP ICP ICP t n t nF ma m a a a F F F ==++=++,m 为杆的质量,g 为重力加速度,I M 为杆的惯性力偶。

惯性力及惯性力偶的大小分别为2222IP P ICP I c 2221,,3t d x d d F ma m F m m M J mL dt dt dt θθαα======(2)式中,α为杆的角加速度,P a 为小车的加速度,2L 为杆的长度,θ为杆偏离中心位置的角度,x 偏离轨道中心的位移。

对(2)式代入(1)式,并整理可得22224sin cos 3d d x L g dt dt θθθ-=-(3) 当摆动较小时,可以进行近似处理sin ,cos 1θθθ≈≈。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

非线性作业
一 一级直线倒立摆
如图1所示
系统里的各参数变量
M :小车系统的等效质量(1.096kg );
1m :摆杆的质量(0.109kg );
2m :摆杆的半长(0.25m );
J :摆杆系统的转动惯量(0.0034kg*m );
g :重力加速度(9.8N/Kg );
r :小车的水平位置(m );
θ:摆角大小(以竖直向上为0起始位置,逆时针方向为正方向); h F :小车对摆杆水平方向作用力(N )(向左为正方向),h F ’是其反作用力; v F :小车对摆杆竖直方向作用力(N )(向上为正方向),v F ’是其反作用力; U :电动机经传动机构给小车的力,可理解为控制作用u’(向左为正方向); p x :摆杆重心的水平位置(m );p y :摆杆重心的竖直位置(m )。

1.1一级倒立摆的数学建模
定义系统的状态为[r,r, θ, θ]
经推导整理后可以达到倒立摆系统的牛顿力学模型:
θθθsin cos )(2mgl l r m ml I =-+ (1)
u ml r m M ml -⋅=+-⋅2sin )(cos θ
θθθ (2) 因为摆杆一般在工作在竖直向上的小领域内θ=0,可以在小范围近似处理:
0,0sin ,1cos 2==≈θθθ ,则数学模型可以整理成:
θθmgl l r m ml I =-+ )(2 (3) u r m M ml =++- )(θ (4) 系统的状态空间模型为
⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r =⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+++++0)()
(0010000)(0000102222Mml m M I m M mgl Mml m M I gl m ⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r +⎥⎥⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡+++++222)(0)(0Mml m M I ml Mml m M I ml I u (5) u r r r y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎣⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0000101000θθθ (6) 代人实际系统的参数后状态方程为:
⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣
⎡θθ r r =⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡08285.2700100006293.0000010⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡θθ r r +u ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3566.208832.00 (7) u r r r y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣
⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0000101000θθθ (8) 1.2滑模变结构在一级倒立摆系统的应用
主要包括切换函数的设计、控制率的设计和系统消除抖振的抑制。

基于线性二次型最优化理论的切换函数设计,定义系统的优化积分指标是:
Qxdt x J T ⎰∞
=0 Q>0, 本文采用指数趋近律:)sgn(S kS S ε--= ,其中k 和ε为正数。

将其代人S=Cx=0中,可以得到:
)sgn(S kS CBu CAx x C S
ε--=+== (9) 控制率为:))sgn(()(1S kS CAx CB u ε++-=- (10) ε的选取主要是为了抑制系统的摩擦力和近似线性化所带来的误差和参数摄动等因素,从而使得系统具有良好的鲁棒性。

文中k=25, ε=0.8。

取变换矩阵T 。

其中T=⎥⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎢⎣⎡+-10000100)(01000012ml ml I , 去Q*11=diag([300 50 350]),Q22=10
关于Riccati 方程01112122121111=+-+*-**Q P A Q PA P A PA T T
的解有MATLAB 的lqr 函数可以解出
⎢⎢⎢⎣⎡-=6098.3599281.2147165.692P 8204.1491894.1129281.214-⎥⎥⎥⎦
⎤--4007.3548204.1496098.359 [0000.1000-=C 2717.69- 6295.210 ]9610.35
[r C x S ⋅=0)( r θ ]
T θ 二 程序
%主程序:直线一级倒立摆
clear all
close all
global C M0 F
ts=0.02; %采样时间
T=30; %仿真时间
TimeSet=[0:ts:T];
para=[];
%options 为解微分函数中的调整参数,reltol 和abstol 分别是设置相对误差和绝对误差
options=odeset('RelTol',1e-3,'AbsTol',[1e-3 1e-3 1e-3 1e-3]);
%options=[];
x0=[0.5,0.3,0,0]; %初始值
[t,xout]=ode45('daolibai2eq',TimeSet,x0,options,para);%固定格式,子程序调用 %返回值
x1=xout(:,1);
x2=xout(:,2);
x3=xout(:,3);
x4=xout(:,4);
s=C(1)*x1+C(2)*x2+C(3)*x3+C(4)*x4; %切换函数或切换面
%选择控制器
if F==1
% for k=1:1:T/ts+1
M0=40;
%u(k)=-M0*sign(s(k));
u=-M0*sign(s);
%end
else if F==2
beta=30;
delta=0;
for k=1:1:T/ts+1
u(k)=-beta*(abs(x1(k))+abs(x2(k))+abs(x3(k))+abs(x4(k))+delta)*sign(s(k));
end
end
%绘图
figure(1);
plot(t,x1,'r');
xlabel('time(s)');ylabel('Cart Position');
figure(2);
plot(t,x2,'r');
xlabel('time(s)');ylabel('Pendulum Angle');
figure(3);
plot(t,s,'r');
xlabel('time(s)');ylabel('s');
figure(4);
plot(t,u,'r');
xlabel('time(s)');
ylabel('u');
end
%子程序
function dx=DxnamicModel(t,x,flag,para)%自定义动态函数
global C M0 F
%倒立摆经计算后模型
M=1.096;m=0.109;b=0.1;l=0.25;I=0.0034;T=0.005;g=0.98;
k22=-(I+m*l^2)*b/(I*(M+m)+M*m*l^2);
k23=m^2*g*l^2/(I*(M+m)+M*m*l^2);
k42=-m*l*b/(I*(M+m)+M*m*l^2);
k43=m*g*l*(M+m)/(I*(M+m)+M*m*l^2);
b12=(I+m*l^2)/(I*(M+m)+M*m*l^2);
b14=m*l/(I*(M+m)+M*m*l^2);
A=[0,1,0,0;0,k22,k23,0;0,0,0,1;0,k42,k43,0];
b=[0;b12;0;b14];
%Ackermann's formula
n1=-1;n2=-2;n3=-3;
C=[0,0,0,1]*inv([b,A*b,A^2*b,A^3*b])*(A-n1*eye(4))*(A-n2*eye(4))*(A-n3*eye(4));
s=C*x;
F=2;
if F==1
M0=40;
u=-M0*sign(s);
elseif F==2
beta=30;
delta=0;
u=-beta*(abs(x(1))+abs(x(2))+abs(x(3))+abs(x(4))+delta)*sign(s);
end
%state equation
dx=zeros(4,1);
f0=0.5;
ft=f0*sin(3*t);
dx=A*x+b*(u+ft);
三 仿真结果
time(s)C a r t P o s i t i o n
图2
time(s)P e n d u l u m A n g l e 图3
time(s)s
图4
time(s)
图5。

相关文档
最新文档