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

时间:2019-05-13 23:54:20下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《基于adams和matlab的一级倒立摆联合仿真》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《基于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所示,图中以二级为例,一般是由水平放置的摆杆和连在其端接的自由倒摆组成,原理上也可以看成是车摆的轨道为圆轨情况,摆杆是通过传动电机带动旋转的。此摆设计好了可以摆脱普通车摆的行程限制,但是同时带来了一个新的非线性因素:离心力作用。

图1.3 环形倒立摆

(3)旋转式倒立摆

环型摆也叫旋转式倒立摆,但是这里的旋转式倒立摆不同于第二种的环型摆,它的摆杆(旋臂)是在竖直平面内旋转的,而环型摆摆杆是在水平面旋转的,如图1.4所示。图中倒立摆系统是单级旋转倒立摆,将摆杆安装在与电机转轴相连的旋臂上,通过电机带动旋臂的转动来控制倒摆的倒立,整个系统复杂,不稳定。

图1.4 单级旋转式倒立摆

(4)复合倒立摆系列

复合倒立摆为一类新型倒立摆,由运动本体和摆杆组件组成,其运动本体可以很方便的调整成三种模式,一是(2)中所述的环形倒立摆,还可以把本体翻转90度,连杆竖直向下和竖直向上组成托摆和顶摆两种形式的倒立摆。

3、倒立摆控制方法

控制器设计是倒立摆系统的核心内容,因为倒立摆是一个绝对不稳定的系统,为了实现倒立摆稳定性控制并且可以承受一定的干扰,需要给系统设计控制器,目前典型的控制器设计理论有: a.PID控制。通过机理分析建立动力学模型,使用状态空间理论推导出非线性模型,并在平衡点处进行线性化得到系统的状态方程和输出方程,从而设计出PID控制器实现控制。

b.状态反馈控制。使用状态空间理论推导出状态方程和输出方程,应用状态反馈实现控制“如刘珊中等应用状态反馈和Kalman滤波相结合的方法,对二级倒立摆平衡系统进行控制。

c.利用云模型实现对倒立摆的控制。用云模型构成语言值,用语言值构成规则,形成一种定性的推理机制。

d.模糊控制。模糊控制是采用模糊化,模糊推理,解模糊运算等的模糊控制方法。其主要工作是模糊控制器的设计。现以倒立摆控制来简单说明模糊控制器设计的一般方法。以摆杆的倾角和速度作为输入变量”可以将倾角描述成:向左倾角大;中;小;向右倾角小;中;大。速度描述成:倒得非常快;快;慢;静止;升得慢;快;非常决。它们都可以用模糊语言变量来表示用类似的模糊集合可以对控制小车运动的输出进行定义。接着定义某些隶属函数,这个安排隶属度的过程就是对变量实现模糊化的过程“接着是建立一系列的模糊规则,如:如果摆杆向左倾斜大并倒的非常快,那么向左作快运动;如果摆杆向左倾斜大并升的慢,那么向左作慢运动,等等。最后,模糊输出被分解成可以加到小车上的确切的驱动电压,这个过程为解模糊判决。此外,还有对倒立摆的双闭环模糊控制方案。

e.神经网络控制。神经网络能够任意充分地逼近复杂的非线性关系,它能够学习和适应严重不确定性系统的动态特性,所有定量或定性的信息按等势分布储存与网络内的神经元,有很强的鲁棒性和容错性,也可将Q学习算法和BP神经网络有效结合,实现状态未离散化的倒立摆的无模型学习控制。以及杨振强等为解决模糊神经网络在控制多变量系统时的规则组合爆炸问题,提出用状态变量合成模糊神经网络控制倒立摆。

f.自适应控制。主要为倒立摆设计各种自适应控制器。上述控制算法大都针对倒立摆工作在平衡点的稳定控制”本论文设计的控制器首先是能实现倒立摆的起摆,在摆起到平衡位置附近时再切换至稳定控制。

二、联合仿真流程

本文以一级倒立摆为研究对象,建立的倒立摆由轨道,滑块,摆杆和转轴组成,滑块在轨道上做往复的直线运动,摆杆绕滑块做转动。具体的联合仿真流程如下:

1、在PRO/E软件里建立上述各个零件的三维模型,然后进行装配。装配后的组件另存为x_t文件,输入到ADAMS里。

2、将PRO/E的生成的三维模型导入ADAMS中,在ADAMS中定义各零件的质量,施加固定副、移动副和转动副,然后建立输入和输出的状态变量(输入为作用在滑块上的水平力,输出为滑块的位移和摆杆相对于竖直方向的角度),最后将生成的adm文件导出到MATLAB。

3、将ADAMS生成的倒立摆模型导入MATLAB,建立控制模型(采用PID双闭环的控制方法),设置好参数之后进行联合仿真。

三、基于PRO/E的一级倒立摆三维建模

1、在PRO/E中建立一级倒立摆的三维模型,摆杆的初始位置为竖直方向。

2、在组装零件时需要注意,为了保证倒立摆模型导入ADAMS里面之后位置正确(即摆杆摆动平面为X-Y平面),需要使导轨安装的长度方向沿组件默认坐标轴的x轴方向,其中心与组件坐标轴中心重合。

3、建立倒立摆之后,保存副本,选择x_t文件格式保存。

图3.1 一级倒立摆的PRO/E模型

四、基于ADAMS的一级倒立摆模型设计

1、将PRO/E生成的x_t文件导入ADAMS中,选择file-import,文件类型选择x_t,找到PRO/E的文件导入。导入的文件如下图所示,可以看到,摆杆的运动平面在x-y平面内,轨道的质心与ADAMS的默认坐标轴原点重合。图4.1 导入ADAMS的倒立摆三维模型

2、设置文件的保存路径。为了避免PRO/E文件导入和MATLAB程序运行失败,我们将ADAMS的保存路径设在根目录下,文件名为英文字符,PRO/E的所有文件放入此目录下。

3、将导入的PART2,PART3,PART4和PART5分别命名为guidao,huakuai,baigan和zhou。然后定义各零件质量,材料选择steel.4、添加约束。这里需要添加的约束有三个:

(1)ground和guidao之间的固定副,用来固定轨道。

图4.2 固定副定义界面

图4.3 固定副

(2)huakuai和baigan之间的转动副,保证摆杆相对滑块作转动。

图4.4 转动副定义界面

图4.5 转动副(3)guidao和huakuai之间的移动副,保证滑块沿轨道作水平运动。

图4.6 移动副定义界面

图4.7 移动副

5、定义作用力。初始力作用在滑块上,方向选择与摆杆偏移方向一致。

图4.8 滑块上的水平作用力

6、建立输入和输出状态变量。建立三个system elements,包括输入变量(force),输出变量(angle,position)。(1)Force的参数设为零,由MATLAB输入。

图4.9 定义状态变量force(2)Angle为摆杆距离竖直方向的角度,使用AZ函数测量。选取的参考点为摆杆上的MARKER_16和滑块上的MARKER_17。

图4.10 定义状态变量angle

(3)Position为滑块质心到全局坐标原点的距离。位移的测量值使用DZ函数。需要注意的是,由于轨道在PRO/E 中的坐标轴与ADAMS的默认坐标系不一致,所以要修改MARKER_20以保持和滑块的质心坐标一致。修改方式见下图的orientation参数栏。

图4.11 定义状态变量position

图4.12MARKER点定义界面

(4)完成状态变量的设置后,需要将force与上面建立的作用力SFORCE_1关联,使用函数VARVAL。

图4.13 SFORCE_1与force关联

7、创建输出文件。这一步我们要创建一个可以输入到MATLAB的文件。(1)首先要创建输入和输出元素,选择build—-data elements---plant---plant input,设置输入文件名和变量名。输出元素同理。

图4.14 创建plant input

图4.15 创建plant output(2)打开controls---plant export New controls plant一栏中填入inverted_pendulum,file prefix同理。输入和输出信号选择刚才建立的两个变量。Target software选择MATLAB。其他选项默认。点击OK即可。这样就会有相关的文件在我们最初设置的保存路径中生成。

图4.16 设置ADAMS和MATLAB接口

图4.17 ADAMS输出文件

这一步完成之后就完成了ADAMS里的建模。下图为倒立摆的完成模型。

图4.18 ADAMS的倒立摆最终模型

五、ADAMS和MATLAB/SIMULINK的联合仿真

完成ADAMS建模之后,我们将输出的文件导入到MATLAB里进行仿真。

使用ADAMS和MATLAB/SIMULINK的联合仿真有一个好处,即不用对物理模型进行分析,再建立传递函数。ADAMS导出的模型直接包含其所有的力学特性,更加方便进行相关控制。联合仿真的步骤:

1、将MATLAB的当前文件夹设为ADAMS的文件夹,然后在命令窗口输入inverted_pendulum(即ADAMS输出的文件名),会导入倒立摆的参数和变量。最后输入adams_sys指令,会弹出一个SIMULINK的仿真窗口,我们可以在里面添加控制模块进行倒立摆仿真。

图5.1 MATLAB导入ADAMS文件命令

图5.2 生成的adams_sys

2、MATLAB控制方法设计。

在这里我们采用双闭环的PID控制方法,一路是角度控制,一路是位移控制。

首先给倒立摆系统一个扰动,这里用阶跃信号实现(持续时间0.1秒,幅值为1),使系统不稳定,然后通过角度和位移反馈控制系统,达到稳态。摆杆角度给定值设定为0度,位移给定值设为0,分别与模型输出的实际角度和实际位移进行比对,差值输入到PID中进行反馈控制,控制的结果输入到force接口,实现系统的控制。建立的模块图如下:

图5.3 MATLAB/SIMULINK的倒立摆PID控制模块图

3、动态仿真。先确定PID参数(PID参数设置下一章会讲到)。然后设置adams sub模块参数,将animation mode改为interactive,communication interval设为0.005。最后将仿真时间设为10秒,开始仿真。仿真时会打开ADAMS软件,动画演示倒立摆的平衡控制过程。

图5.4联合仿真时调用的ADAMS界面 六、一级倒立摆的PID控制策略

1、一级倒立摆的角度控制

前面我们提到了对一级倒立摆的控制目标有摆角和滑块位移,下面先对角度控制的PID参数进行设置,然后再加上位移控制环。

首先使用PI调节,调节比例参数使系统出现震荡,然后加上积分环节进行微调,最后取Kp=20,Ki=0.1,系统的摆角响应曲线如下:

10.80.60.40.20-0.2-0.4-0.6-0.800.511.522.533.544.55图6.1 采用PI控制方案的角度响应曲线 从输出曲线可以看出,尽管PI的控制作用总是趋于消除稳态误差,但由于积分环节的缺陷而延缓了响应速度,所以不能及时地将超调遏制住,控制效果也就不怎么好了。

基于上述问题,可以加入微分环节(相当于加入了角速度反馈),参数设置为Kp=20,Ki=0.1,Kd=3。进行动态仿真后,得到的角度响应曲线如下。

0.035

0.030.0250.020.0150.010.0050-0.00500.511.522.533.544.55图6.2 采用PID控制方案的角度响应曲线

可以看到加入微分环节后,系统的动态特性得到了很大的改善,系统受到0.1s的扰动后,在0.6s左右就达到了稳态,而且稳态精度也大大提高。

但是由于角度有稳态误差的存在,所以不加位置反馈控制的话,滑块会一直向一个方向偏移,如图6.4所示为滑块的位移曲线。

-4x 10420-2-4-611.051.11.15图6.3 采用PID控制方案后角度的稳态误差

500-50-100-150-200-250-300

00.511.522.533.544.55图6.4 采用PID控制方案的位移响应曲线

2、一级倒立摆的双闭环控制

在角度反馈的基础上,加入位置反馈。由于两路反馈并不是相互独立的,所以单单设置位移的PID参数必定会影响到角度的反馈。所以这里PID参数的设置思想是,先调好角度反馈,然后根据角度的稳态误差设定位移的PID参数,使两路的反馈可以将这一稳态误差抵消,最后微调两路的参数优化控制效果。经过调试,确定角度反馈的PID参数为Kp=40,Ki=0.02,Kd=10;位移反馈的PID参数为Kp=-0.04,Ki=-0.01,Kd=-0.02。经过仿真后,得到的摆杆摆角和滑块位移的响应曲线如下

0.030.020.010-0.01-0.02-0.03012345678910图6.5 双回路PID控制的角度响应曲线(L=500mm)

50-5-10-***910图6.6 双回路PID控制的位移响应曲线(L=500mm)

双回路控制的平衡时间比单独的角度控制要长,但是在2s左右也基本达到了平衡,控制效果很好。

3、一级倒立摆摆杆长度参数对控制策略的影响

之前我们建立的一级倒立摆模型的摆杆长度是L=500mm,下面将摆杆长度设为L=250mm,分析上面PID的控制策略对该系统动态响应的影响。

使用PRO/E对一级倒立摆重新建模,将摆杆长度设为250mm,然后将模型导入到ADAMS中,完成系统力学定义后导入MATLAB进行仿真。

系统的控制策略仍采用双回路的PID控制。这里将上一节得到的角度和位移PID参数输入到此模型,观察其动态响应与之前的模型有何不同。

经过联合仿真,得到的角度和位移响应曲线如下

0.0150.010.0050-0.005-0.01012345678910图6.7双回路PID控制的角度响应曲线(L=250mm)

420-2-4-6-8

012345678910图6.8双回路PID控制的位移响应曲线(L=250mm)

分析:

角度响应:L=500模型的超调量和二次超调量分别为0.025和0.02,平衡时间大概为2.5s;L=250模型的超调量和二次超调量分别为0.015和0.008,平衡时间为4.5s。

位移响应:L=500模型的超调量和二次超调量分别为7和13,平衡时间为6s;L=250模型的超调量和二次超调量分别为2和7,平衡时间为8s。

可以看出来,L=250模型要比L=500模型容易稳定,即在受到相同的扰动状况下,使用较小的PID参数就可以达到平衡。

七、问题总结

本文利用PRO/E、ADAMS和MATLAB软件成功地对一级倒立摆控制系统进行了仿真分析.在仿真过程中不需要推导机械系统的复杂微分方程,直接用ADAMS建立的虚拟模型进行分析,大大方便了建模过程.而且通过ADAMS软件建立的虚拟模型能更好地接近实际物理模型,与那些近似线性化的简易数学模型相比,这为我们以后的物理样机试验提供了更为可靠的依据。

在联合仿真过程中,遇到了一些问题:

1、PRO/E导入ADAMS会有模型位置放错的情况,这个时候需要保证两个软件里设定的坐标轴一致。

2、对于各零件的MARKER点局部坐标和ADAMS全局坐标不一样情况,需要修改orientation,否则会出现测量错误的情况。

3、在使用角度测量函数AZ和DZ时,如果将FROM MARKER 和TO MARKER位置搞反的话,后面输出的角度值可能为负,后面的PID参数也随之改变。

4、使用PID调节,发现如果时间足够长的话,倒立摆不能保持位置上的稳定,滑块也会越走越远,直到脱离轨道。这是因为使用PID控制角度时,总会有微小的稳态误差,这个误差最终会导致位置上的不平衡。

5、本文PID参数的确定采用的是试凑法,即通过控制经验和多次系统调试来确定参数,往往比较繁琐,难以达到期望的精度。而且双回路控制比单回路控制的难度更大。这种情况下可以采用极点配置法或扩充临界比例法等。

参考文献

1、范成建等(2006).虚拟样机软件MSC.ADAMS应用与提高.北京市, 机械工业出版社.2、贾长治,殷军辉(2010).MD ADAMS虚拟样机从入门到精通.北京市, 机械工业出版社.3、姜学军(2009).计算机控制技术.北京市,清华大学出版社.4、应再恩,平雪良.(2012).“基于ADAMS和MATLAB的双回路PID控制倒立摆联合仿真.” 机械传动(08): 64-67.5、杨世勇,徐莉苹.(2007).“单级倒立摆的PID控制研究.” 控制工程(S1): 23-24+53.6、肖力龙(2007).直线一级倒立摆起摆与稳摆控制研究及控制系统设计, 中南大学.硕士: 77.

第二篇:基于ADAMS与MATLAB的倒立摆联合仿真实验

基于ADAMS与MATLAB的倒立摆联合仿真实验

一、实验目的

在传统的机电一体化研究设计过程中,机械工程师和控制工程师虽然在共同设计开发一个系统,但是他们各自都需要建立自己的模型,然后分别采用不同的分析软件,对机械系统和控制系统进行独立的设计、调试和试验,最后进行机械系统和控制系统各自的物理样机联合调试,如果发现问题又要回到各自的模型中分别修改,然后再联合调试,显然这种方式费时费力。

基于多领域的建模与联合仿真技术很好的解决了这个问题,为机械和控制系统进行联合分析提供了一种全新的设计方法。机械工程师和控制工程师就可以享有同一个样机模型,进行设计、调试和试验,可以利用虚拟样机对机械系统和控制系统进行反复联合调试,直到获得满意的设计效果,然后进行物理样机的建造和调试。

ADAMS与MATLAB是机械系统仿真和控制系统仿真领域应用较为广泛的软件,其中ADAMS为用户提供了强大的建模、仿真环境,使用户能够对各种机械系统进行建模、仿真和分析,具有十分强大的运动学和动力学分析功能;而MATLAB具有强大的计算功能、极高的编程效率及模块化的建模方式,因此,把ADAMS与MATLAB联合起来仿真,可以充分将两者的优势相结合,将机械系统仿真分析同控制系统设计有机结合起来,实现机电一体化的联合分析。

本实验以倒立摆为例,进行ADAMS与MATLAB的联合仿真,对倒立摆的运动性能和运动规律进行分析。

二、实验方法

软件环境:MD ADAMS R3,MATLAB R2009b 2.1 建立倒立摆的动力学模型

启动ADAMS/View模块弹出如图1所示对话框,建立小车及摆杆模型。首先选择“Create a new model”选项,创建一个新的模型,将该文件保存在相应的文件夹下,本实验将结果保存在E:daolibai_adams文件夹下,将文件名取为“daolibai_adams”,其余选项保持默认。注意,在ADAMS中路径名和文件名最好采用英文字符,否则有可能在运行的过程中出现意想不到的错误。

图1 启动ADAMS/View模块

进入ADAMS/View界面后,需要对相关参数进行设置。选择菜单栏中的“Settings→Working Grid”选项,弹出如图2所示的对话框,设置网格的大小。将“Spacing”设置为X:10mm,Y:10mm,其余参数保持默认。在“Settings”选项中还可以设置图标的大小,单位等等参数,在本实验中这些参数都保持默认即可。

图2 设置网格的大小

与此同时,单击菜单栏“View”选项下的“Coordinate Window”(或者按下键盘上的F4按钮),如图3所示。可随时在窗口中观察鼠标的当前空间坐标位置,方便我们进行建模。

图3 打开鼠标当前空间位置观察窗口

右键点击ADAMS建模工具箱中的图标,选择工具Box,在视图中(0,0,0)处建一个长、宽、高分别为30cm,20cm,20cm的长方体代替小车模型,如图4所示。

图4 长方体尺寸设置

图5 在视图中建立的长方体前视图

长方体建立完毕后,需要进一步在视图中调整其位置。在当前视角下,点击工具箱中的图标,进入如图6所示的界面。在Distance选项中输入15cm,选择长方体,然后点击向左的箭头,小车模型即向左平移15cm。单击工具箱中的按钮,即可返回工具箱主界面。点击图标,切换到右视角视图,再次运用按钮,在Distance选项中输入10cm,选择长方体,然后点击向右的箭头,将小车模型向右平移10cm,如图7所示。

图6 将小车模型向左平移15cm

图7 将小车模型向右平移10cm

小车模型位置修改完毕后,右键点击小车模型,选择Rename,将模型的名称修改为xiaoche,如图8所示。与此同时,在右键菜单中选择Modify,将小车的质量修改为0.5KG,其修改方法如图9所示。

图8 修改模型名称

图9 修改小车模型的质量

至此,小车模型及参数设置完毕,接下来建立摆杆的模型。在建模工具箱中选择(Cylinder)工具建立摆杆模型,其参数设置如图10所示。

图10 摆杆参数的设置

摆杆参数设置完毕后,沿小车垂直向上的方向建立该圆柱体,建好后单击右键修改其特性参数,将部件名称修改为baigan,将摆杆质量修改为0.2kg,转动惯量修改为0.006kg·㎡。建好后,运用工具箱中的顺时针旋转5°,建完后的模型如图11所示。

工具,将摆杆绕端点

图11 倒立摆模型前视图与三维视图

倒立摆的三维模型建立好后,我们需要为模型添加相应的运动副和运动。小车与地面用平移副约束,右键单击图标,在弹出菜单中选择工具,添加方式选择2 Bod-1 Loc方式,分别选择小车和大地,在小车质心处添加水平方向的平移约束副,如图12。

图12 在小车与大地之间添加移动副

摆杆与小车之间存在旋转运动,故需要在小车与摆杆之间添加一个转动副。单击工具中的图标,添加方式选择2 Bod-1 Loc方式,分别选择摆杆和小车,在摆杆与小车的铰接处建立旋转副,如图13所示。

图13 在摆杆与小车之间建立旋转副JOINT_2

倒立摆模型的约束添加完毕之后,我们可以对模型进行运动测试。点击工具,进入运动仿真测试对话框,设置仿真时间为1秒,步长为1000,如图14所示。

图14 运动仿真参数设置

点击按钮开始运动仿真测试,可以看到小车沿着水平方向作直线运动,摆杆绕着铰接点作旋转运动。

2.2 定义倒立摆机械系统的输入输出变量

1)定义输入变量

本实验中需要在ADAMS中定义一个状态变量接收控制小车运动的水平力。选择Build菜单下的System Elements创建一个名为controlforce的状态变量,如图15所示。

图15 创建输入状态变量

由图15可以看出F(time,„)后面输入栏中的数值为0,表示该控制力的数值将从控制软件的输出获得。

给小车定义一个水平力,单击ADAMS工具箱中的工具,选择Body Moving的建模方式,一次选择小车质心作为力的作用点,选择水平向右作为其加载方向(如图16),这样该水平力将一直随着小车的移动而移动。

图16 为小车添加水平方向作用力

上述过程完成以后,右键单击该水平力,选择Modify,将其函数值定义为VARVAL(.daolibai_adams.controlforce),以实时从状态变量controlforce中接收力的数值,如图17。

图17 函数值的定义

2)定义输出变量

定义输出变量的方法与定义输入变量的方法相同,定义ADAMS状态变量以输出动力学模型的运动状态至控制软件,本实验就是要输出摆杆的摆角。选择Build菜单下的System Elements创建一个名为rotateangle的状态变量,选择摆杆的上端点和小车的铰接点出的MARKER点为摆杆绕Z轴旋转运动的参考点,如图18所示。

图18 定义输出变量

其中,在F(time,„)后面的文本输入栏输入摆杆摆角表达式AZ(MARKER_11,MARKER_12),AZ函数用来测量绕Z轴旋转的角度,本实验中即表示摆杆绕着Z轴旋转的角度。利用ADAMS工具箱中的工具,在摆杆的上端点创建一个测点MARKER_11,在小车上创建测点MARKER_12,此点为小车与摆杆的铰接点。设置完毕后单击OK按钮保存设置。3)将状态变量指定为输入/输出变量

上述状态变量定义完成之后,还需要将定义好的状态变量指定为输入或输出变量。

指定状态变量controlforce为输入变量。单击主菜单Build→Data Elements→Plant→Plant Input→New后,弹出输入变量定义对话框,如图19所示。将Variable Name栏中输入controlforce,然后单击OK按钮即完成设置。

图19 输入变量定义对话框

指定状态变量rotateangle为输入变量。单击主菜单Build→Data Elements→Plant→Plant Output→New后,弹出输入变量定义对话框,如图20所示。将Variable Name栏中输入rotateangle,然后单击OK按钮即完成设置。

图20 输出变量定义对话框 4)导出ADAMS模型

通过以上工作,已经在ADAMS机械系统模型中定义了同控制系统交互的相关状态变量和函数,接下来需要利用ADAMS/Controls模块将这些状态变量定义为输入输出信号,并将相关信息导出,以便和其他控制程序连接。

单击Controls菜单下的Plant Export子菜单,弹出如图21所示的设置窗口。将输出文件名修改为test123;在输入信号定义栏中,单击From Input按钮后,弹出数据库浏览窗口,选择定义的PINPUT_1为输入项,双击后,定义的状态变量controlforce将自动出现在输入信号一栏中,同理,输出信号的设置方法同上。目标控制软件下拉菜单可以根据需要选取,本实验目标软件选为MATLAB,其他选项保持默认。单击OK按钮,ADAMS将导出*.m文件,同时产生调用ADAMS/Solver的cmd文件和*.adm的ADAMS模型文件。

图21 ADAMS变量导出设置 上述过程完成后,MATLAB已经可以读取ADAMS模型的相关信息了。

2.3 在MATLAB/Simulink中导入ADAMS模型

1)变量的导入

启动MATLAB后,在命令窗口中输入导出的ADAMS模型名称test123,在MATLAB窗口将出现如下信息:

>> clear all >> test123 ans = 26-Jun-2013 08:53:34 %%% INFO : ADAMS plant actuators names : 1 controlforce %%% INFO : ADAMS plant sensors names : 1 rotateangle 在MATLAB命令提示符下输入who命令,显示文件中定义的变量列表,在MATLAB命令窗口中返回如下结果:

Your variables are: ADAMS_cwd ADAMS_mode ADAMS_solver_type arch ADAMS_exec ADAMS_outputs ADAMS_static flag ADAMS_host ADAMS_pinput ADAMS_sysdir machine ADAMS_init ADAMS_poutput ADAMS_uy_ids temp_str ADAMS_inputs ADAMS_prefix ans topdir 可以选择以上显示的任何一个变量名,检验变量,例如,如果输入ADAMS_outputs,则MATLAB将显示在ADAMS中定义的输出变量:

ADAMS_outputs = Rotateangle 注意:ADAMS导出的文件必须置于MATLAB工作目录下,即ADAMS与MATLAB共用同一个工作目录,否则上述过程不能进行。与此同时,还要把ADAMS/win32文件夹下的“adams_plant.mexw32”及ADAMS/Controls/win32/文件夹下的“plant.lib”放在ADMAS与MATLAB的共用工作目录下。这两个文件是adams_sub模块的核心。ADAMS提供一个S函数,用于ADAMS和simulink联合仿真的调度和通信,如果simulink找不到它,联合仿真就不能进行。2)ADAMS模块的导入

在MATLAB命令窗口中输入“adams_sys”命令,即可导入ADAMS模块,如图22所示。

图22 adams_sys模块

3)仿真参数的设置

点击图22中的adams_sys模块,即可进入adams_sub模块,如图23所示。

图23 adams_sub模块 点击图23中的MSC.Software模块,弹出如图24所示的对话框,在对话框中设置如下参数:

图24 仿真参数的设置

将联合仿真的通信间隔Communication Interval选项设置为0.001,该选项定义了ADAMS与MATLAB/Simulink交换数据的通信间隔,调整该参数将控制联合仿真的速度,并影响计算的速度。

将simulation mode选项设置为continuous,即连续仿真模式。其余参数保持默认,单击OK按钮,保存参数设置。3)联合仿真分析

在MATLAB/Simulink中建立如下控制框图(图25),设置仿真时间为5s。

图25 联合仿真控制框图

点击start命令,开始进行联合仿真,几秒钟后,将弹出一个DOS窗口,显示ADAMS在联合仿真分析中的各种数据。联合仿真结束后,仿真结果既可以在MATLAB/Simulink中查看,也可以在ADAMS后处理器中查看。图26和图27分别为Simulink模型中示波器输出的摆杆摆角随时间变换曲线和输入力矩随时间变化曲线。

图26 摆杆摆角随时间变化曲线 图27 输入力矩随时间变化曲线

一、实验结果

由图26和图27可以看出,摆杆的摆角在输入力矩的作用下,转角由0逐渐增大,当到达最大摆角(5°)时,保持不变。

第三篇:基于一阶倒立摆的matlab仿真实验

成都理工大学工程技术学院 基于一阶倒立摆的matlab仿真实验

实验人员:-------

-------学

号:--------

---------

实验日期:20150618 摘要

本文主要研究的是一级倒立摆的控制问题,并对其参数进行了优化。倒立摆是典型的快速、多变量、非线性、强耦合、自然不稳定系统。由于在实际中有很多这样的系统,因此对它的研究在理论上和方法论上均有深远的意义。本文首先简单的介绍了一下倒立摆以及倒立摆的控制方法,并对其参数优化算法做了分类介绍。然后,介绍了本文选用的优化参数的状态空间极点的配置和PID控制。接着建立了一级倒立摆的数学模型,并求出其状态空间描述。本文着重讲述的是利用状态空间中极点配置实现方法。最后,用Simulink对系统进行了仿真,得出在实际控制中是两种比较好的控制方法。

Abstract

This paper mainly studies the level of the inverted pendulum control problem, and its parameters are optimized.Inverted pendulum is a typical rapid, multi-variable, nonlinear, strong coupling, natural unstable system.In practice, however, because there are a lot of such a system, so the study of it in theory and methodology have profound significance.This article first introduced the inverted pendulum, and simple of the inverted pendulum control method, made a classification and the parameter optimization algorithm is introduced.And then, introduced in this paper, choose the optimization of the parameters of state space pole configuration and PID control.Then set up the level of the mathematical model of inverted pendulum, and find out the state space description.This paper focuses on the pole assignment method is the use of state space.Finally, the system are simulated using Simulink, it is concluded that in the actual control is two good control method.This paper mainly studies the level of the inverted pendulum control problem, and its parameters are optimized.Inverted pendulum is a typical rapid, multi-variable, nonlinear, strong coupling, natural unstable system.In practice, however, because there are a lot of such a system, so the study of it in theory and methodology have profound significance.This article first introduced the inverted pendulum, and simple of the inverted pendulum control method, made a classification and the parameter optimization algorithm is introduced.And then, introduced in this paper, choose the optimization of the parameters of state space pole configuration and PID control.Then set up the level of the mathematical model of inverted pendulum, and find out the state space description.This paper focuses on the pole assignment method is the use of state space.Finally, the system are simulated using Simulink, it is concluded that in the actual control is two good control method.目 录 引言..................................................4 1.1 倒立摆介绍以及应用.........................................4 1.2 倒立摆的控制方法...........................................5

2单级倒立摆数学模型的建立...............................6 2.1传递函数...................................................8 2.2状态空间方程...............................................9

3系统Matlab 仿真和开环响应.............................11 4 系统设计.............................................15 4.1极点配置与控制器的设计....................................15 4.2系统仿真:................................................16 4.3仿真结果..................................................17 4.4根据传递函数设计第二种控制方法-----PID串级控制............18

5结 论

...............................................19引言

1.1 倒立摆介绍以及应用

倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。对倒立摆系统的研究能有效的反映控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

通过对它的研究不仅可以解决控制中的理论和技术实现问题,还能将控制理论涉及的主要基础学科:力学,数学和计算机科学进行有机的综合应用。其控制方法和思路无论对理论或实际的过程控制都有很好的启迪,是检验各种控制理论和方法的有效的“试金石”。倒立摆的研究不仅有其深刻的理论意义,还有重要的工程背景。在多种控制理论与方法的研究与应用中,特别是在工程实践中,也存在一种可行性的实验问题,使其理论与方法得到有效检验,倒立摆就能为此提供一个从理论通往实践的桥梁,目前,对倒立摆的研究已经引起国内外学者的广泛关注,是控制领域研究的热门课题之一。

倒立摆不仅仅是一种优秀的教学实验仪器,同时也是进行控制理论研究的理想实验平台。由于倒立摆系统本身具有的高阶次、不稳定、多变量、非线性和强耦合特性,许多现代控制理论的研究人员一直将它视为典型的研究对象,不断从中发掘出新的控制策略和控制方法,相关的科研成果在航天科技和机器人学方面获得了广阔的应用。二十世纪九十年代以来,更加复杂多种形式的倒立摆系统成为控制理论研究领域的热点,每年在专业杂志上都有大量的优秀论文出现。因此,倒立摆系统在控制理论研究中是一种较为理想的实验装置。

倒立摆主要应用在以下几个方面:(1)机器人的站立与行走类似于双倒立摆系统,尽管第一台机器人在美国问世至今已有三 十年的历史,机器人的关键技术--机器人的行走控制至今仍未能很好解决。(2)在火箭等飞行器的飞行过程中,为了保持其正确的姿态,要不断进行实时控制。

(3)通信卫星在预先计算好的轨道和确定的位置上运行的同时,要保持其稳定的姿态,使卫星天线一直指向地球,使它的太阳能电池板一直指向太阳。(4)侦察卫星中摄像机的轻微抖动会对摄像的图像质量产生很大的影响,为了提高摄像的质量,必须能自动地保持伺服云台的稳定,消除震动。

(5)为防止单级火箭在拐弯时断裂而诞生的柔性火箭(多级火箭),其飞行姿态的控制也可

以用多级倒立摆系统进行研究。

由于倒立摆系统与双足机器人、火箭飞行控制和各类伺服云台稳定有很大相似性,因此对倒立摆控制机理的研究具有重要的理论和实践意义。

1.2 倒立摆的控制方法

倒立摆有多种控制方法。对倒立摆这样的一个典型被控对象进行研究,无论在理论上和方法上都具有重要意义。不仅由于其级数增加而产生的控制难度是对人类控制能力的有力挑战,更重要的是实现其控制稳定的过程中不断发现新的控制方法,探索新的控制理论,并进而将新的控制方法应用到更广泛的受控对象中。当前,倒立摆的控制方法可分为以下几类 :

(1)线性理论控制方法

将倒立摆系统的非线性模型进行近似线性化处理,获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法,得到期望的控制器。PID控制、状态反馈控制、能量控制]、LQR控制算法是其典型代表。

(2)预测控制和变结构控制方法

预测控制:是一种优化控制方法,强调的是模型的功能而不是结构。变结构控制:是一种非连续控制,可将控制对象从任意位置控制到滑动曲面上仍然保持系统的稳定性和鲁棒性,但是系统存在颤抖。预测控制、变结构控制和自适应控制在理论上有较好的控制效果,但由于控制方法复杂,成本也高,不易在快速变化的系统上实时实现

2单级倒立摆数学模型的建立

在忽略了空气流动,各种摩擦之后,可将倒立摆系统抽象成小车和匀质杆组成的系统,如下图1所示

图1 单级倒立摆模型示意图

那我们在本实验中定义如下变量:

M

小车质量

(本实验系统

1.096 Kg)m

摆杆质量

(本实验系统

0.109 Kg)b

小车摩擦系数(本实验系统

0.1 N/m/sec)l

摆杆转动轴心到杆质心的长度(0.25 m)I

摆杆惯量

(0.0034 kg*m*m)F

加在小车上的力

x

小车位置

φ

摆杆与垂直向上方向的夹角 θ

摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)下面我们对这个系统作一下受力分析。下图2是系统中小车和摆杆的受力分析图。其中,N和P为小车与摆杆相互作用力的水平和垂直方向的分量。

注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图,图示方向为矢量正方向。

图2 倒立摆模型受力分析

分析小车水平方向所受的合力,可以得到等式:

应用Newton方法来建立系统的动力学方程过程如下:

分析小车水平方向所受的合力,可以得到以下方程:

FbxN Mx由摆杆水平方向的受力进行分析可以得到下面等式:

Nmd2dt2

(xlsin)

2sinmlcosmlx即 Nm

把这个等式代入上式中,就得到系统的第一个运动方程:

cosml2sinFbxml(Mm)x(1)

为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:

d2Pmgm2(lcos)dtsinml2cos即:Pmgml

力矩平衡方程如下:

PlsinNlcosI

注意:此方程中力矩的方向,由于,coscos,sinsin,故等式前面有负号。

21ImlN3P合并这两个方程,约去和,由得到第二个运动方程:

43mglsinmlcosml2x(2)

设(是摆杆与垂直向上方向之间的夹角),假设与1(单位是

d()20sin,dtcos1,弧度)相比很小,即《1,则可以进行近似处理:。用u来代表被控对象的输入力F,线性化后两个运动方程如下:

4gx3lubxmlx(Mm)(3)

2.1传递函数

对方程组(3)进行拉普拉斯变换,得到

422l(s)sg(s)X(s)s3(Mm)X(s)s2bX(s)sml(s)s2U(s)(4)

注意:推导传递函数时假设初始条件为0。

由于输出为角度,求解方程组(4)的第一个方程,可以得到

4gX(s)[l2](s)3s

把上式代入方程组(4)的第二个方程,得到

(Iml2)g(Iml2)g2(Mm)(s)sb2(s)sml(s)s2U(s)ssmlml

整理后得到传递函数:

ml2sqs443(s)U(s)bml2qs3(Mm)mgl2bmglssqq

22q[(Mm)(Iml)(ml)] 其中

2.2状态空间方程

系统状态空间方程为

AXBuXyCXDu

,x方程组(3)对解代数方程,得到解如下: xx4b3mg4xxu(4Mm)(4Mm)(4Mm)3b3g(Mm)3xu(4Mm)l(4Mm)l(4Mm)l

整理后得到系统状态空间方程:

10x4b0(4Mm)x003b0(4Mm)l03mg(4Mm)03g(Mm)(4Mm)l00x40x(4Mm)u1030(4Mm)l

xx1000x0y0u0010

带入参数可得系统的状态空间方程:

0x100-0.08831670.629317x0000-0.23565527.82850x0x0.883160u1002.35655 xx1000x0y0u0010 3系统Matlab 仿真和开环响应

系统开环稳定性分析

num=[2.35655 0 0];den=[1 0.088167-27.9169-2.30942];sys=tf(num,den)[z,p,k]=tf2zp(num,den);step(sys)%阶跃响应曲线: grid on

阶跃响应曲线

rlocus(sys)%根轨迹

根轨迹

bode(sys)%波特图

[A,B,C,D]=tf2ss(num,den);Q=ctrb(A,B)rank(Q)%系统能控性分析

Q =

1.0000-0.0882 27.9247 0 1.0000-0.0882 0 0 1.0000

ans = 3

由得到的rank(Q)的值可知,原系统的能控性矩阵为3,所以我们可知原系统是不能控的。m=obsv(A,C)rank(m)m = 2.3565 0 0-0.2078 65.7876 5.4423 65.8059-0.3580-0.4798

ans = 3 由得到的rank(m)的值可知,原系统的能观性矩阵为3,所以我们可知原系统是能观的。eig(A)ans =

5.2810-5.2864-0.0827

由eig(A)的值可知系统是不稳定的。4 系统设计

4.1极点配置与控制器的设计

采用极点配置法设计多输出的倒立摆系统的控制方案。可以用完全状态反馈来解决,控制摆杆和小车的位置。

设计状态反馈阵时,要使系统的极点设计成两个主导极点和两个非主导极点,用二阶系统的分析方法确定参数。

根据系统性能要求: 最大超调量10%,调节时间为 1s

-运用超调量计算公式:% 得到0.707wn5.66

1-2 t3

sn P2=-4-4.33j 得到两个主导极点为:P1=-4+4.33j P4=-20 选取两个非主导极点:P3=-20 根据MATLAB求取状态增益矩阵,程序如下: a=[0 1 0 0 0-0.0883167 0.629317 0 0 0 0 1 0-0.23655 27.8285 0];b=[0 0.883167 0 2.35655];p=[-4+4.33j-6-4.33j-20-20];k=acker(a,b,p)k =

-740.4267-247.3685 646.9576 113.8866

4.2系统仿真:

根据状态空间表达式建立一阶倒立摆SimuLink仿真图,如下:

4.3仿真结果

系统仿真图(位置,速度,角度,角速度)

根轨迹

4.4根据传递函数设计第二种控制方法-----PID串级控制

PID控制器系统框图:

经过几次参数调试得出Kp=300,Ki=200,Kd=20满足性能要求,其仿真图形如下:

5结 论

本次设计主要通过PID串级控制和状态空间极点配置的方法对直线一级倒立摆进行校正,通过此次课程,掌握MATLAB的基本使用方法。在课程设计过程中,培养了团队协作能力,刻苦钻研以及编程能力,为今后的学习工作打下了良好的基础。经过这次课程,是我受益匪浅。

第一、学会了如何运用自己所学的知识结合实践

第二、硬件最然需要不断尝试,但不是盲目的调试,而是需要有理论作为指导,指明调整的方向,这样设计系统就会事半功倍。第三、Matlab等工具软件的使用也大大提高了设计系统的速度。这些都是试验中珍贵的收获。

最后再一次感谢老师的耐心讲解与精心的教诲,让我渡过难关,顺利完成实验。

第四篇:倒立摆专题

洛阳理工学院毕业设计(论文)

第1章:绪论

1.1 倒立摆的发展历史及现状

控制理论教学领域,开展各种理论教学、控制实验、验证新理论的正确性的理想实验平台就是倒立摆控制系统。对倒立摆系统的研究能有效的反映控制中的许多典型问题,同时兼具多变性、强非线性和自然不稳定性等优点,通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题。倒立摆系统作为一个实验装置,形象直观、结构简单、构件组成参数和形状易于改变、成本低廉,且控制效果可以通过其稳定性直观地体现,也可以通过摆杆角度、小车位移和稳定时间直接度量其实验效果,直观显著。因而从诞生之日就受到国内外学者的广泛研究。

倒立摆系统的最初研究始于二十世纪50年代末,麻省理工学院的控制论专家根据火箭发射助推器的原理设计出一级倒立摆实验设备。1966年Schaefer和Cannon应用Bang Bang控制理论将一个曲轴稳定于倒置位置,在60年代后期作为一个典型的不稳定严重非线性证例提出了倒立摆的概念,并用其检验控制方法对不稳定、非线性和快速性系统的控制能力受到世界各国许多科学家的重视。而后人们又参照双足机器人控制问题研制出二级倒立摆控制设备,从而提高了检验控制理论或方法的能力,也拓宽了控制理论或方法的检验范围。对倒立摆研究较多的是美国、日本等发达国家,如Kawamoto-Sh.等讨论了有关倒立摆的非线性控制的问题以及倒立摆的模糊控制的稳定性问题为其后的倒立摆模糊控制研究开辟了道路,美国国家航空和宇航局Torres-Pornales,Wilfredo等人研究了从倒立摆的建模、系统分析到非线性控制器设计的一系列问题,比较深入的研究了倒立摆的非线性控制问题并进行了实物仿真;科罗拉多州大学的Hauser.J正在从事基于哈密尔顿函数的倒立摆控制问题的研究;日本东京大学的Sugihara.Tomorniehi等研究了倒立摆的实时控制问题及其在机器人控制中的应用问题。此外,还有如德国宇航中心的Schreiber等研究了倒立摆的零空间运动控制问题,分析了倒立摆的零空间运动特性与其稳定性之间的联系。

国内研究倒立摆系统的控制问题起步虽晚,但成果也还是挺多较早的,如尹征琦等于1985年采用模拟调节器,实现了对倒立摆系统的稳定控制;梁任秋等于1987年讨论了设计小车一二阶倒立摆系统数学控制器的一般方法;任章、徐建民于1995年利用振荡器控制原理,提出了在倒立摆的支撑点的垂直方向上加入一零均值的高频震荡信号以改善倒立摆系统的稳定性。同年,程福雁先生等研究了使用参变量模糊控制对倒立摆进行实时控制的问题。北京理工大学的蒋国飞、吴沧浦等实现了状态未离散化的倒立摆的无模型学习控制。仿真表明该方法不仅能成功解决确定和随机倒立摆模型的平衡控制具有很好的学习效果。

90年代以来,由于数学基础理论、控制理论和计算机技术的发展,不断地有新的控制理论和控制思想问世,使得倒立摆控制系统的研究和应用更加广泛和深入,把这些理论应用在实际的实物控制和分析中己经成为当前控制理论研究和应用的核心问题。人们为了检验新的控制方法是否具有良好的处理多变量、非线性和绝对不稳定型的能力,不断提升倒立摆系统的复杂性和难度,如增加摆杆的级数,加大摆杆的长度,改变摆的形状和放置的形式等。2002年8月,北京师范大学教授李洪兴领导的复杂系统智能控制实验室,首次成功实现了直线运动四级倒立摆实物系统控制,2003年10月,他们采用高维变论域自适应控制理论,在世界

洛阳理工学院毕业设计(论文)

上第一个成功地实现了平面运动三级倒立摆实物系统控制。但是多年来小车一多级摆系统的控制研究主要集中在摆倒立点的稳定控制方面,同时也只是针对在水平轨道上的研究,而对于在倾斜轨道上的倒立摆的研究,还不多见。然而对于摆的摆起倒立稳定控制,由于小车多级摆摆起倒立稳定的高难性,目前国际上罕见小车二级摆以上实际系统的摆起倒立成功的例子。在小车二级摆摆起倒立控制的研究中,一般采用了混杂控制转换的方法,即将控制过程分为摆起和倒立稳摆两个阶段。在摆起阶段,采取基于能量的控制(K.J.Astrom,K.Furuta,W.spong),通过不断增加两摆杆的能量,直至达到倒立稳摆的位置。这样的方法对于小车单摆系统摆起倒立十分有效。然而,由于能量是一个标量,基于能量正反馈的方法在摆起过程中,无法兼顾和有效控制欠驱动多摆杆之间的相对运动,存在着摆杆与摆杆之间相对运动难以协调控制的问题。其它的采用直接数字求解动态方程获得理想轨迹,然后将其与实时参数比较形成闭环控制的方法,以及部分反馈线性化等方法,但这些方法都同样存在对摆杆之间相对运动难以协调控制的问题。捷克学者J.Rubl,在研究直线小车二级摆的摆起倒立过程中,运用了数字方法、最优控制与分段线性化结合的综合控制方法,解决了水平轨道上小车二级摆摆起倒立控制的实物实现问题。重庆大学李祖枢教授等人利用仿人智能控制方法分别成功地实现了在水平轨道上和在倾斜轨道上小车二级摆的摆起倒立稳定实时控制,而小车三级摆的摆起倒立稳定控制,由于控制难度更大,国际上尚无成功的先例。近年来在结合模糊控制与神经网络等方面也取得了很多成果。

总之,倒立摆系统是一种能够有效检验控制理论和控制算法的实验设备。目前应用于倒立摆系统的算法主要有以下几类:经典控制(LMI,PDI)、现代控制(LQR 最优控制法,极点配置法)、变结构倒立摆系统最初研究开始于二十世纪 50 年代,麻省理工学院的控制论专家们根据火箭发射的原理设计出了一级倒立摆实验装置;发展到今天,倒立摆系统已经由原来的一级直线倒立摆衍生出了异常丰富的类别。按照倒立摆摆杆的数目可以分为一级倒立摆、二级倒立摆、三级倒立摆、四级倒立摆等,且控制难度也随着摆杆的级数增加而变大;按照倒立摆系统结构的不同,可以分为:直线倒立摆系统、旋转倒立摆系统、平面倒立摆系统、复合倒立摆系统等;按照倒立摆摆杆的不同还可以分为刚性倒立摆和柔性倒立摆。在检验不同的控制方法对各种复杂的、不稳定的、非线性系统的控制效果中得到广泛的应用,并且越来越受到世界各国科研工作者的重视

2.该课题的意义:

随着实际工程控制系统的研究发展的需要,对于理论方面的研究迫切需要一 个平台去检验新理论的正确性和在实际中的可行性,倒立摆系统作为一个具有绝 对不稳定、高阶次、多变量、强藕合的典型的非线性系统,是检验控制理论和方 法的理想模型,所以本文选择倒立摆系统作为研究对象具有重要的理论意义和应 用价值。相对于其他研究倒立摆系统的控制方法,Backstepping方法最大的优点是不必对系统进行线性化,可以直接对系统进行递推性的控制器设计,保留了被控象中有用的非线性项,使得控制设计更接近实际情况,而且所设计的控制器具有很强的鲁棒性。而且国内外用此方法研究倒立摆系统的成果还不多见,因而具有很大的理论研究价值;由于当前国内外对于倒立摆系统的研究大都仍只局限于理论分析或计算机软件的数值仿真而缺少实际的实验检验分析,而MATLABSim-ulink就是提供了进行仿真实验的良好平台,它利用自带的模块建立系统模型,然后进行仿真,形象直观,非常有利于研究者进行分析和总结,同

洛阳理工学院毕业设计(论文)

时可以利用MATLAB-RTW实时工具箱构建实时控制平台,把设计好的控制器建立的Simulink仿真樟型连接在实时内核中运行,驱动外部硬件设备,实现对倒立摆系统的实时控制,倒立摆的控制模型与直立行走机器人的平衡控制、两轮小车的自平衡控制、导弹拦截控制、火箭发射时的垂直控制、卫星飞行中的姿态控制和航空对接控制等涉及平衡和角度的控制问题非常相似,所以在机器人、航天、军工等领域和一般的工业过程中都有着广泛的应用。倒立摆系统作为研究控制理论的一种典型的实验装置,具有较为简单的结构、可以有效地检验众多控制方法的有效性、参数和模型易于改变、相对低廉的成本等优点,研究控制理论的很多科研人员一直将它们视为主要的研究对象,用它们来描述线性控制领域中不稳定系统的稳定性以及在非线性控制领域中的无源性控制、变结构控制、非线性观测器、自由行走、非线性模型降阶、摩擦补偿等控制思想,且从中不断开发出新的控制方法和控制理论,所以倒立摆系统是研究智能控制方法较为理想的实验装置。倒立摆系统自身是一个典型的多变量、非线性、高阶次、强耦合和绝对不稳定系统,许多抽象的控制概念如系统的可控性、稳定性、系统的抗干扰能力和系统的收敛速度等,都可以由倒立摆系统直观地展示出来。此外,通过倒立摆系统还可以研究非线性观测器、变结构控制、目标定位控制、摩擦补偿和混合系统等。不仅如此,倒立摆系统也是进行控制理论教学的理想平台。传统的教学中,实验只是作为理论教学延伸,往往是理论知识的比重大于实验,即使有实验课程也只是学生完全按照实验指导书上的指导去完成实验,整个实验过程中学生们完全是消极的被动的接收知识,甚至学生对实验方法、内容完全没有兴趣。很显然,这种实验教学方法难以培养学生综合素质和实践能力。所以必须在实验环节的内容和形式上进行改革与创新,以培养学生的创新意识和实践动手能力。因此,进行设计性、开放性的综合实验具有极其重要的现实意义。若在控制理论的教学中,如果构建一个高效的合理的倒立摆系统实验平台,就可以在深入理解控制理论知识的同时,还可以让学生们对硬件回路仿真技术的开发流程有一定的了解,并掌握基于 MATLAB 的实时仿真操作,这样就可以从理论和实践上提高学生对控制理论的兴趣和认识。将倒立摆系统研究应用于高校的控制理论教学和实验早已在欧美等教育发达地区流行多年。因此,倒立摆控制策略的研究在我国高校的控制理论教学和实验中具有广阔的前景。较理想的控制效果,能够快速稳定并且有很强的抗干扰能力。

3.本论文的主要工作:

本论文是对一级倒立摆系统的LQR控制器设计。验证算法采用实验室的倒立摆装置。用 Matlab 中的 Simulink 搭接仿真的实验原理图,编写恰当的模糊规则,通过对隶属度曲线以及参数的适当调整,得到理想的仿真曲线。最后,通过倒立摆实验装置来验证所设计的模糊控制算法的可行性。具体内容如下:

第一章是绪论部分,主要概括介绍了倒立摆控制系统研究的发展历史及现状,本课题研究的背景和意义,本文主要研究的内容及章节安排以及本文的创新点。初步了解目前倒立摆的研究现状以及研究热点,论述了控制理论在倒立摆系 统运用的不断发展和完善,智能控制器越来越受到专家学者的关注。

第二章是预备知识,主要概述了本文主要用到的倒立摆装置,Matlab仿真平台简介及应用。

洛阳理工学院毕业设计(论文)

第三章详细介绍了一级倒立摆控制系统的工作原理、两轮小车的硬件设计。包括自平衡小车的组成模块及工作原理、各模块硬件设计。

第四章介绍了MATLAB/Simulink建模原理,利用本文设计的非线性控制器在 MATLAB环境下对系统进行了离线仿真分析、能控性分析、能观性分析,基于卡尔曼滤波器的LQR控制器设计。对单级倒立摆进行了详细的受力分析,建立倒立摆系统的数学模型,并对倒立摆系统进行定性分析。证明了倒立摆系统是开环不稳定的,但在平衡点是能观的和能控的,可以对系统进行控制器的设计,使系统稳定。

第五章介绍了基于MATLAB的倒立摆实时控制系统,利用所设计的非线性控 制器对实际的硬件系统进行了控制实验,并和固高公司提供的控制器对系统的控 制效果进行了对比,然后利用所设计的非线性控制器对倒立摆系统进行了实时控 制开发的研究。

第二章:倒立摆简介: 1.倒立摆简介:

倒立摆系统是非线性、强藕合、多变量和自然不稳定的系统。在控制过程中,它能有效的反映诸如可镇定性、鲁棒性、随动性以及跟踪等许多控制中的关键问 题,是检验各种控制理论的理想模型。迄今,人们己经利用古典控制理论、现代 控制理论以及各种智能控制理论实现了多种倒立摆系统的控制。因此,对倒立摆 系统的研究无论在理论上还是在实际上均有很大的意义。

倒立摆系统包含倒立摆本体、电控箱及由计算机和运动控制卡组成的控制平台三大部分,组成了一个闭环系统。其中电控箱内主要有以下部件:(1)交流伺服驱动器(2)1/0接口板(3)开关电源

控制平台主要部分组成:(1)与IBM PC/AI机兼容的PC机,带PCI/SCI总线插槽(2)GT400-SV-PCI运动控制卡

(3)GT400-SV-PCI运动控制卡用户接口软件

电机通过同步带驱动小车在滑杆上来回运动,以保持摆杆平衡。其工作原理 框图如图3-1所示,以直线一级倒立摆为例。电机编码器和角码器向运动控制卡反

馈小车和摆杆位置,小车的位移可以根据光电码盘1的反馈通过换算获得,速度信

号可以通过对位移的差分得到,并同时反馈给伺服驱动器和运动控制卡;摆杆的 角度由光电码盘2测量得到,而角速度信号可以通过对角度的差分得到,并同时反

馈给控制卡和伺服驱动器。计算机从运动控制卡中读取实时数据,确定控制决策(小车向哪个方向移动,移动速度,加速度等),并由运动控制卡来实现控制决 策,产生相应的控制量,使电机转动,带动小车运动,保持摆杆平衡。

硬件部分包括计算机、运动控制卡、电控箱、伺服系统、倒立摆本体和旋转光电编码器、位移传感器等几大部分,它们构成一

洛阳理工学院毕业设计(论文)

个闭环

系统。伺服电机通过同步皮带与小车相连接,并带动小车同步运动,以此来控制小

车在水平轨道上做直线运动。匀质刚体摆杆与小车相连,由小车的水平移动来控制摆杆 的稳定竖直倒立。旋转光电编码器是一种角位移传感器,其输出的检测信号是数字信号,因此可以直接进入计算机进行处理,而不需放大和转换等过程,使用非常方便。可以用

它准确的测出倒立摆摆杆的偏转角度。将旋转光电编码器、位移传感器、以及状态反馈

信息输入运动控制器,而运动控制卡中采集的这些信息经一定的控制算法会得出控制信

息并将被输入伺服电机。通过这样一个闭环系统就能达到倒立摆的稳定控制。其中计算

机从运动控制卡实时读取数据,计算并确定控制决策,即根据倒立摆的实时状态不断地

调用相应的函数程序如速度、加速度等,经过电控箱内的转换电路产生相应的控制量,由此驱动伺服电机转动的

倒立摆系统由机械部分和电路部分组成。机械部分包括底座、框架、滑轨、齿 轮带、轮、电机、小车和摆体等。电路部分由测量电位器、C805lF020单片机(A/D 转换器、D/A转换器)、计算机、信号放大与功率放大、电机等组成。计算机作为数

字控制器实现对系统的实时控制,同时也为操作者提供人一机界面,完成对系统的

监督管理功能:如实时画图、数据采集等。C8051F020单片机(A/D转换器、D/A 转换器)完成模数、数模的转换,放大器用于电压和功率放大。电动机是系统的执 行元件和速度反馈元件,电位器是倒立摆角度的反馈测量元件。一级倒立摆系统的

整套机械部件分别安装在两块底板上,底板上固定着导轨支架、电机底座、滚动轴

承等,通过导轨支架安装好小车滑行导轨,小车用电机和滚动轴承通过传动皮带实

现运动,小车连接着角位移电位器。单级倒立摆原理结构图如图1.1所示。倒立摆是一个数字式的闭环控制系统,其工作原理:小车在电动机的拖动下沿 固定的直线轨道进行运动,相应的产生了小车的直线位移和倒立摆的转角。小车位

移通过电动机电位器测得,角位移由安装在倒立摆轴上的电位器测得。角位移经过

刀D转换送到计算机经过计算机内部的实时控制程序运算产生控制指令。该控制指

令经D/A变换、再经功率放大,然后输出给电动机,产生相应的控制作用,从而实

洛阳理工学院毕业设计(论文)

东北大学硕士学位论文第1章绪论 现对小车位移和倒立摆角位移的控制。)))))))}}}(臼臼

图1.1单级倒立摆原理结构图

Fig.1.1ThePrineiPleofsingleinvertedPendulumstrueturedrawing 倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学 及开展各种控制实验的理想实验平台。对倒立摆系统的研究能有效的反映控制中的

许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。

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

问题的能力。同时,其控制方法在军工、航天、机器人和一般工业过程领域中都有

着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星

飞行中的姿态控制等,且对于揭示定性定量转换规律和策略具有普遍意义

2.MATLAB简介及应用:

第三章 两轮小车硬件设计(1、自平衡小车的组成模块及工作原理

2、各模块硬件设计)第四章 一级倒立摆的数学建模(1、一级倒立摆的数学建模

系统的建模就是用形式化模型或者抽象的表示方法,对事物本身和外部的 某些因素进行描述。科学家们通过大量的观察和实验,建立了抽象的表示方法

和定律,这些方法和定律是对现实世界中一些已被证明正确的假设加以形式化。

例如:爱因斯坦的相对论和牛顿万有引力定律等等。实物系统的建模找出了所

要建模系统的基本性质,人们可以在模型上进行试验推理、研究和设计,从而

获得控制实物系统的方法。系统建模帮助人们不断地加深对事物现象的认识,并且启发人们去进行可以获得满意结果的实验。因此,系统建模是研究系统的

前提条件和十分有效地手段。

系统建模是对系统进行仿真、分析、设计、控制和优化的基础。在建模过 程中,要想模型能包含实际系统的全部信息,是难以现实的。这是因为模型中

存在着过多的实体,实体之间又存在相互关联。因此,包含实际系统的全部信

洛阳理工学院毕业设计(论文)

息的模型难以获得,也难以处理。对于建立好的模型,通常存在着两个相互矛

盾的因素:简单化和精确性。为了使模型尽可能的精确和简单,建模者通常要

决定忽略那些次要的因素,忽略次要因素的前提是:忽略这些因素以后不会显

著地改变整个模型行为,相反能够使模型更加简单化

建立系统数学模型的方法一般有两种:第一种是机理建模,根据现实对象 的特性,分析其存在的因果关系,找出反映现实对象内部的规律,所建立的模

型一般都具有明确的物理意义或者现实意义。第二种是实验建模,将现实对象

看作一个“黑箱”,由于内部的规律并不能直接的得到,必须分析现实对象的输

入数据和输出数据,用统计学方法分析。根据分析得出的结论,按先前规定的

标准来选出一个实验数据最符合的模型。这种方法也称为系统辩识。倒立摆系

统的形状较为规则,是一个绝对不稳定的系统,用实验建模方法获取其数学模

型有一定的困难。故在下面的论文中采用机理建模对一级倒立摆系统建模。

在忽略了空气阻力和各种摩擦之后,可将直线型一级倒立摆系统抽象成小车 和匀质摆杆组成的系统,如图所示:

洛阳理工学院毕业设计(论文)

图3-2一级倒立摆系统的力学示意图 系统中小车和摆杆的受力分析图如图 2.2 所示。其中,N 和 P 为小车与摆杆相 互作用力的水平和垂直方向的分量。

将摆杆视为刚体,则一级倒立摆系统的参数为:小车质量M,摆杆质量m,摆 杆重心到铰链的长度l,重力加速度g,小车位置x,摆杆角度9,作用在小车上 的驱动力F。当小车在水平方向运动时,若忽略摩擦力矩的非线性,对小车和摆 杆进行水平和垂直方向受力分析,如图:

1、运用牛顿力学分析方法建立了一级倒立摆系统的数学模型。并对倒立摆系统进

行定性分析。证明了倒立摆系统是开环不稳定的,但在平衡点是能观的和能控的,可以

对系统进行控制器的设计,使系统稳定。

2、通过建立模糊规则,研究倒立摆系统的模糊控制算法。本文把摆杆的角度和角 速度作为输入量,单独组成一个角度控制器;把小车的位置和速度作为输入量,组成另

一个位置控制器。从而实现“摆体不倒,小车停住”的总体控制目标。

3、倒立摆模糊控制仿真。本文利用Simulink建立倒立摆系统模型,实现了倒立摆

模糊控制系统的仿真。仿真结果表明:模糊控制器不仅可以使摆杆稳定,还可以使小车

稳定在特定位置。

由于倒立摆系统存在不确定性、耦合性等特性,在数学上完全准确的描述它

几乎是不可能的。为简化系统,解决实际系统中的控制问题,我们在建模时要忽

略了一些次要因素,如空气阻力、伺服电机的静摩擦力、系统连接处的松弛程度、洛阳理工学院毕业设计(论文)

摆杆连接处质量分布不均匀、传送带的弹性、传动齿轮的间隙等,并将小车抽象

为质点,认为摆杆是匀质刚体,从而将二级直线倒立摆简化成小车和摆杆组成的

系统,建立一个较为精确地倒立摆系统的数学模型。

目前,对倒立摆系统建模一般采用两种方法:牛顿力学分析方法,欧拉—拉

格朗日原理(Lagrange方程)[41]。建立被控对象的数学模型常采用牛顿力学的方法,建立倒立摆系统的数学模型先分析小车和各个摆体的受力情况,然后列出小车和

各个摆体在X方向和Y方向的运动方程以及各摆体相对各个转轴处的转动力矩平衡

式。再通过求解各摆体运动方程和各个转轴处的转动力矩平衡方程得到倒立摆系

统的数学模型。可见,采用牛顿运动定律建模,需要解算大量的微分方程组,而

且要考虑到质点组受到的约束条件,建模将更加复杂

倒立摆系统的数学建模一般有牛顿欧拉法和拉格朗日法两种。对于结构相对简单的

一级直线倒立摆可以使用牛顿欧拉法,先对小车和摆杆进行受力分析,并分别求出他们 的运动方程。将线性化后的两个运动方程进行拉普拉斯变换。最后整理后可以得到系统 的状态空间方程 [1-9]。但在对二级、三级以上的倒立摆进行数学建模时,这种方法就显

得有些复杂。牛顿运动定律来求解质点组的运动问题时,计算量会比较大。在许多实际 的运算中,求解微分方程组会遇到较大的困难。有时,还需要确定各质点间的位移、相

互作用力、速度、加速度等关系来解决质点组中存在约束情况,联立求解这些方程组就 更为困难 [10-13]。为了简化倒立摆系统的数学建模过程,本章采用了分析力学中的拉格朗 日方程推导直线倒立摆的数学模型,并对该系统的可控性进行了分析。

洛阳理工学院毕业设计(论文)

2、能空性分析

3、能观性分析

4、基于卡尔曼滤波器的LQR控制器设计)

第五章 基于MATLAB的仿真(1、基于MATLAB的倒立摆模型

于在教学和工程实验领域广泛应用的 MATLAB/Simulink平台,MATLAB 实时控

制软件实验平台,使得实验和先进算法研究变得无比轻松。在不需要熟练掌握其他编程

语言的基础上就能做控制理论实验,只需要把精力集中在控制算法研究上而不需要接触

艰深的硬件接口。现在,在此平台上可以把系统的建模、仿真和实时控制,用户的建模

和仿真结果不需要太多修改就可以直接在同一平台上针对实际物理设备进行控制实验 验证。

MATLAB 实时控制软件的特点:实控软件采用了 MATLAB/Simulink 的实时工具箱

RTW(Real-Time Workshop)实现控制任务,运行在 Windows 操作系统基础上,专用的

实时内核代替 Windows 操作系统接管了实时控制任务。内核任务执行的最小周期是

1ms,大大地提高了系统控制的实时性,完全可以满足 Windows 下较高的实时性控制要

求而不用担心 Windows 本身的实时性问题。

2、控制器设计及实时仿真)

第五篇:直线一级倒立摆课程设计论文

自动化07级2班

目录

一、倒立摆的介绍....................................................................................................................2

1、简介..............................................................................................................................2

2、分类..............................................................................................................................2

二、直线一级倒立摆的组成....................................................................................................4

1、电控箱..............................................................................................................................5

2、交流伺服电机及其工作原理.........................................................................................5

3、编码器及其工作原理..................................................................................................6

4、控制卡..........................................................................................................................7

三、倒立摆的建模....................................................................................................................7

四、倒立摆系统控制器的设计..............................................................................................11

1、频率响应分析............................................................................................................11

2、频率响应设计与仿真................................................................................................13

五、设计总结..........................................................................................................................22

六、参考资料..........................................................................................................................23

自动化07级2班

一、倒立摆的介绍

1、简介

倒立摆是机器人技术、控制理论、计算机控制等多个领域、多种技术的有机结合,其被控系统本身又是一个绝对不稳定、高阶次、多变量、强耦合的非线性系统,可以作为一个典型的控制对象对其进行研究。最初研究开始于二十世纪50 年代,麻省理工学院(MIT)的控制论专家根据火箭发射助推器原理设计出一级倒立摆实验设备。近年来,新的控制方法不断出现,人们试图通过倒立摆这样一个典型的控制对象,检验新的控制方法是否有较强的处理多变量、非线性和绝对不稳定系统的能力,从而从中找出最优秀的控制方法。倒立摆系统作为控制理论研究中的一种比较理想的实验手段,为自动控制理论的教学、实验和科研构建一个良好的实验平台,以用来检验某种控制理论或方法的典型方案,促进了控制系统新理论、新思想的发展。由于控制理论的广泛应用,由此系统研究产生的方法和技术将在半导体及精密仪器加工、机器人控制技术、人工智能、导弹拦截控制系统、航空对接控制技术、火箭发射中的垂直度控制、卫星飞行中的姿态控制和一般工业应用等方面具有广阔的利用开发前景。平面倒立摆可以比较真实的模拟火箭的飞行控制和步行机器人的稳定控制等方面的研究。

2、分类

倒立摆已经由原来的直线一级倒立摆扩展出很多种类,典型的有直线倒立摆,环形倒立摆,平面倒立摆和复合倒立摆等,倒立摆系统是在运动模块上装有倒立摆装置,由于在相同的运动模块上可以装载不同的倒立摆装置,倒立摆的种类由此而丰富很多,按倒立摆的结构来分,有以下类型的倒立摆:

直线倒立摆系列

直线倒立摆是在直线运动模块上装有摆体组件,直线运动模块有一个自由度,小车可以沿导轨水平运动,在小车上装载不同的摆体组件,可以组成很多类别的倒立摆,直线柔性倒立摆和一般直线倒立摆的不同之处在于,柔性倒立摆有两个可以沿导轨滑动的小车,并且在主动小车和从动小车之间增加了一个弹簧,作为柔性关节。

自动化07级2班

环形倒立摆系列

环形倒立摆是在圆周运动模块上装有摆体组件,圆周运动模块有一个自 由度,可以围绕齿轮中心做圆周运动,在运动手臂末端装有摆体组件,根据摆体组件的级数和串连或并联的方式,可以组成很多形式的倒立摆。

平面倒立摆系列

平面倒立摆是在可以做平面运动的运动模块上装有摆杆组件,平面运动

模块主要有两类:一类是XY运动平台,另一类是两自由度 SCARA 机械臂;摆体组件也有一级、二级、三级和四级很多种。

复合倒立摆系列

复合倒立摆为一类新型倒立摆,由运动本体和摆杆组件组成,其运动本 体可以很方便的调整成三种模式,一是2)中所述的环形倒立摆,还可以把本体翻转 90 度,连杆竖直向下和竖直向上组成托摆和顶摆两种形式的倒立摆。按倒立摆的级数来分:有一级倒立摆、两级倒立摆、三级倒立摆和四级倒立摆,一

自动化07级2班

级倒立摆常用于控制理论的基础实验,多级倒立摆常用于控制算法的研究,倒立摆的级数越高,其控制难度更大,目前,可以实现的倒立摆控制最高为四级倒立摆。

二、直线一级倒立摆系统的组成

直线一级倒立摆是最基础和最简单的倒立摆,也是这次创新实践课程的主要研究对象,它由由直线运动模块和一级摆体组件组成,是最常见的摆之一,如图1所示:

图1 倒立摆实物图

系统图组成图如下:

图2 一级直线倒立摆系统组成图示

自动化07级2班

倒立摆的工作方式为小车由电机通过同步带驱动,在滑杆上来回运动,保持摆杆平衡,电机编码器和角编码器向运动卡反馈小车位置和摆杆位置(线位移和角位移)

1、电控箱

电控箱内安装有如下部件: 交流伺服驱动器 I/O接口板 开关电源

开关、指示灯等电气元件

2、交流伺服电机及其工作原理

交流伺服电动机的定子绕组和单相异步电动机相似,它的定子上装有两个在空间相差 90 °电角度的绕组,即励磁绕组和控制绕组。运行时励磁绕组始终加上一定的交流励磁电压,控制绕组上则加大小或相位随信号变化的控制电压。转子的结构形式笼型转子和空心杯型转子两种。笼型转子的结构与一般笼型异步电动机的转子相同,但转子做的细长,转子导体用高电阻率的材料作成。其目的是为了减小转子的转动惯量,增加启动转矩对输入信号的快速反应和克服自转现象。空心杯形转子交流伺服电动机的定子分为外定子和内定子两部分。外定子的结构与笼型交流伺服电动机的定子相同,铁心槽内放有两相绕组。空心杯形转子由导电的非磁性材料(如铝)做成薄壁筒形,放在内、外定子之间。杯子底部固定于转轴上,杯臂薄而轻,厚度一般在 0.2 — 0.8mm,因而转动惯量小,动作快且灵敏。交流伺服电动机的工作原理和单相异步电动机相似,LL 是有固定电压励磁的励磁绕组,L K是有伺服放大器供电的控制绕组,两相绕组在空间相差 90 ° 电角度。如果 IL 与 Ik 的相位差为 90 °,而两相绕组的磁动势幅值又相等,这种状态称为对称状态。与单相异步电动机一样,这时在气隙中产生的合成磁场为一旋转磁场,其转速称为同步转速。旋转磁场与转子导体相对切割,在转子中产生感应电流。转子电流与旋转磁场相互作用产生转矩,使转子旋转。如果改变加在控制绕组上的电流的大小或相位差,就破坏了对称状态,使旋转磁场减弱,电动机的转速下降。电机的工作状态越不对称,总电磁转矩就越小,当除去控制绕组上信号电压以后,电动机立即停止转动。这是交流伺服电动机在运行上与普通异步电动机的区别。

交流伺服电机有以下三种转速控制方式:

(1)幅值控制 控制电流与励磁电流的相位差保持 90 ° 不变,改变控制电压的大小。

(2)相位控制 控制电压与励磁电压的大小,保持额定值不变,改变控制电压的相位。

(3)幅值 — 相位控制 同时改变控制电压幅值和相位。交流伺服电动机转轴的转向随控制电压相位的反相而改变。

下图为交流伺服电动机原理图:

自动化07级2班

图3 交流伺服电动机原理图

3、编码器及其工作原理

旋转编码器是一种角位移传感器,它分为光电式、接触式和电磁感应式三种,其中光电式脉冲编码器是闭环控制系统中最常用的位置传感器。

图4 光电编码器原理示意图

旋转编码器有增量编码器和绝对编码器两种,图 2-1 为光电式增量编码器示 意图,它由发光元件、光电码盘、光敏元件和信号处理电路组成。当码盘随工作 轴一起转动时,光源透过光电码盘上的光栏板形成忽明忽暗的光信号,光敏元件 把光信号转换成电信号,然后通过信号处理电路的整形、放大、分频、记数、译 码后输出。为了测量出转向,使光栏板的两个狭缝比码盘两个狭缝距

自动化07级2班

离小 1/4 节 距,这样两个光敏元件的输出信号就相差π/2 相位,将输出信号送入鉴向电路,即可判断码盘的旋转方向。

光电式增量编码器的测量精度取决于它所能分辨的最小角度α(分辨角、分 辨率),而这与码盘圆周内所分狭缝的线数有关。

3600 a=

n其中 n——编码器线数。由于光电式脉冲编码盘每转过一个分辨角就发出一个脉冲信号,因此,根据脉冲数目可得出工作轴的回转角度,由传动比换算出直线位移距离;根据脉冲频 率可得工作轴的转速;根据光栏板上两条狭缝中信号的相位先后,可判断光电码 盘的正、反转。绝对编码器通过与位数相对应的发光二极管和光敏二极管对输出的二进制 码来检测旋转角度。

角度换算:

对于线数为 n 的编码器,设信号采集卡倍频数为 m,则有角度换算关系为:

式中 f ——为编码器轴转角;

N ——编码器读数 对于电机编码器,在倒立摆使用中需要把编码器读数转化为小车的水平位置,以下转换关系:

式中 l ——小车位移;

f ——同步带轮直径

4、控制卡

倒立摆使用了由固高科技提供的控制卡,该控制卡的特点是输出类型可以是模拟量或者脉冲量,它还采用了PID滤波器,外加速度和加速度前馈。通过调节,设置合适的参数,可提高控制系统的速度和精度。

三、倒立摆的建模

由于状态反馈要求被控系统是一个线性系统,而倒立摆系统本身是一个非线性的系统,因此用状态反馈来控制倒立摆系统首先要将这个非线性系统近似成为一个线性系统。

可用牛顿力学方法来建模:在忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图2所示:

自动化07级2班

图2直线一级倒立摆模型

我们不妨做以下假设:

M 小车质量;m 摆杆质量;b 小车摩擦系数;l 摆杆转动轴心到杆质心的长度;I 摆杆惯量;F 加在小车上的力;x 小车位置;φ 摆杆与垂直向上方向的夹角;θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)

下图是系统中小车和摆杆的受力分析图。其中,N和P为小车与摆杆相互作 力的水平和垂直方向的分量。注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图3示,图示方向为矢量正方向。

图3及摆杆受力分析

分析小车水平方向所受的合力,可以得到以下方程:

由摆杆水平方向的受力进行分析可以得到下面等式:

d2 nm2(xlsin)(3-1)

dt8

自动化07级2班

即:

mlcosmlsin

nmx(3-2)把这个等式代入式(3-1)中,就得到系统的第一个运动方程:

...2bxmlcosml2sinF

(Mm)(3-3)x为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:

d2 pmgm2(lcos)

dt....(3-4)pmgmlsinml2cos...(3-5)力矩平衡方程如下:

plsinNlcosl(3-6)注意:此方程中力矩的方向,由于θ =π +φ,cosφ =-cosθ,sinφ =-sinθ,故等式 前面有负号。

合并这两个方程,约去P和N,得到第二个运动方程:

cos(3-7)(Iml)mglsinmlx2....设θ =π +φ(φ是摆杆与垂直向上方向之间的夹角),假设φ与1(单位是弧dθ

2度)相比很小,即φ<<1,则可以进行近似处理:

dcos1,sin,()20

dt(3-8)用,来代表被控对象的输入力F,线性化后两个运动方程如下:

u bxml(Mm)x(3-9)mglmlx(Iml2)(3-10)注意:推导传递函数时假设初始条件为0。

由于输出为角度φ,求解方程组的第一个方程,可以得到:

(Iml2)g2](s)

x(s)[mls

(3-11)或

自动化07级2班

mls

2(3-12)X(S)(Iml2)s2mgl(s)如果令v = x,则有: (s)ml

V(s)(Iml2)s2mgl(3-13)

把上式代入方程组的第二个方程,得到:

(M+m)[(lml2)g(ml-s](s)s+b[lml22)ml+gs2](s)s-ml(s)s2=U(s)整理后得到传递函数:

ml(s)s2U(s)qs4b(Iml2)(Mm)mglbmgl qs3qs2qs其中

q[(Mm)(Iml2)(ml)2] 设系统状态空间方程为:

.xAXBu yCXDu

由(9)方程为:

(Iml2)..mglmlx 对于质量均匀分布的摆杆有: I13ml2

于是可以得到:

(122..3mlml)mglmlx(3-18)化简得到:

..3g4l34lx 实际系统的模型参数如下: M 小车质量 1.096 Kg m 摆杆质量 0.109 Kg b 小车摩擦系数 0.1N/m/sec l 摆杆转动轴心到杆质心的长度 0.2 5m I 摆杆惯量 0.0034 kg*m*m 把上述参数代入,可以得到系统的实际模型。

(3-14)(3-15)(3-16)

(3-17)

(3-19)自动化07级2班

摆杆角度和小车位移的传递函数:

mls2

(3-20)22X(S)(Iml)smgl(s)摆杆角度和小车加速度之间的传递函数为:

G(s)(s)X(S)0.02725(3-21)20.0102125S0.26705可以看出,系统的状态完全可控性矩阵的秩等于系统的状态变量维数,系统的输出完全可控性矩阵的秩等于系统输出向量y的维数,所以系统可控,因此可以对系统进行控制器的设计,使系统稳定。

四、倒立摆系统控制器的设计

系统对正弦输入信号的响应,称为频率响应。在频率响应方法中,我们在一定范围内改变输入信号的频率,研究其产生的响应。

频率响应可以采用以下三种比较方便的方法进行分析,一种为伯德图或对数 坐标图,伯德图采用两幅分离的图来表示,一幅表示幅值和频率的关系,一幅表 示相角和频率的关系;一种是极坐标图,极坐标图表示的是当ω从0变化到无穷 大时,向量 G(jω)G(jω)的轨迹,极坐标图也常称为奈奎斯特图,奈奎斯特稳 定判据使我们有可能根据系统的开环频率响应特性信息,研究线性闭环系统的绝 的稳定性和相对稳定性。

1、频率响应分析

原系统的开环传递函数为:

G(s)(s)X(S)0.02725(4-1)

0.0102125S20.26705

其中输入为小车的加速度V(s),输出为摆杆的角度Φ(s)。在MATLAB下绘制系统的Bode图和奈奎斯特图。绘制Bode图的命令为: Bode(sys)绘制奈魁斯特图的命令为: Nyquist(sys)在MATLAB中键入以下命令: clear;num=[0.02725];den=[0.0102125 0-0.2

z=roots(num);

自动化07级2班

p=roots(den);

subplot(2,1,1)bode(num,den)subplot(2,1,2)nyquist(num,den)得到如图4示的结果: z = Empty matrix: 0-by-1 p = 5.1136-5.1136

图6 原系统Bodel图和Nyquist图

可以得到,系统没有零点,但存在两个极点,其中一个极点位于右半s平面,根据奈奎斯特稳定判据,闭环系统稳定的充分必要条件是:当ω从-∞到变+∞ 化时,开环传递函数G(jω)沿逆时针方向包围-1点 p圈,其中 p为开环传递函数

自动化07级2班

在右半S平面内的极点数。对于直线一级倒立摆,由图 3-21我们可以看出,开 环传递函数在 S 右半平面有一个极点,因此G(jω)需要沿逆时针方向包围-1 点一圈。可以看出,系统的奈奎斯特图并没有逆时针绕-1点一圈,因此系统不稳定,需要设计控制器来镇定系统。

2、频率响应设计及仿真

直线一级倒立摆的频率响应设计可以表示为如下问题: 考虑一个单位负反馈系统,其开环传递函数为: G(s)(s)X(S)0.02725(4-2)

0.0102125S20.26705设计控制器G(s),使得系统的静态位置误差常数为 10,相位裕量为50°,增益裕量等于或大于10分贝。

根据要求,控制器设计如下:

1)选择控制器,上面我们已经得到了系统的Bode图,可以看出,给系统 增加一个超前校正就可以满足设计要求,设超前校正装置为:

1sTs1T(4-3)GC(s)KcK1Ts1sTc已校正系统具有开环传递函数Gc(s)G(s)。设

0.02725K G1(s)KG(s)(4-4)

0.0102125s20.26705式中

K=Keα。

2)根据稳态误差要求计算增益K,1(s)0.02725T KplimGC(s)G(s)limK(4-5)2s0s010.0102125s0.26705(s)Tc可以得到:

K=98 于是有:

0.0272598 G1(s) 20.0102125s0.26705(4-6)3)在MATLAB中画出G(s)的Bode图: clear;num1=[2.6705];den1=[0.0102125 0-0.26705];bode(num1,den1)

自动化07级2班

可以获得图7的结果:

图7 加入增益后的Bode图 输入:nyquist(num1,den1)可以获得图8:

图8 增加增益后的Nyquist图

4)可以看出,系统的相位裕量为0°,根据设计要求,系统的相位裕量为50°,因此需要增加的相位裕量为50°,增加超前校正装置会改变 Bode 的幅曲线,这时增益交界频率会向右移动,必须对增益交界频率增加所造成的G1(jω)的相位滞后增量进行补偿,因此,假设需要的最大相位超前量φm近似等于

自动化07级2班

55°。因为

Sinβ=1-α/1+α 计算可以得到:α =0.0994 5)确定了衰减系统,就可以确定超前校正装置的转角频率ω =1/T和ω=1/(αT),可以看出,最大相位超前角φm 发生在两个转角频率的几何中m心上,即ω,在ω点上,由于包含(Ts+1)/(αTs+1)项,所以幅值的变化为:

1jT 1jT111jT1j1

(4-7)于是 G1(jω)=-10.0261分贝对应于ω = 28.5rad/s,我们选择此频率作为新的 增益交界频率ωc,这一频率相应于ω,即: 1/T=8.8735 1/Tα=90.3965 6)于是校正装置确定为:

(4-8)Kc=985.9155 7)增加校正后系统的根轨迹和奈魁斯特图如下:

(进入MATLAB Simulink 实时控制工具箱“Googol Education Products”打 开“Inverted PendulumLinear Inverted PendulumLinear 1-Stage IP Experiment Frequency Response Experiments”中的“Frequency Response Control M Files”)输入: clear;num=98*[0.02725];den=[0.0102125 0-0.26705];subplot(2,1,1)bode(num,den)subplot(2,1,2)nyquist(num,den)

z=roots(num);p=roots(den);

za=[z;-8.9854];pa=[p;-90.3965];

自动化07级2班

k=985.9155;sys=zpk(za,pa,k);figure subplot(2,1,1)bode(sys)subplot(2,1,2)nyquist(sys)figure sysc=sys/(1+sys);t=0:0.005:5;impulse(sysc,t)可以得到,如图9Bode图和图10Nyquist图所示:

图9 Bode图

图10 Nyquistl图

自动化07级2班

图11利用频率响应方法校正后系统的单位阶跃响应图(一阶控制器)

从 Bode 图中可以看出,系统具有要求的相角裕度和幅值裕度,从奈魁斯 特图中可以看出,曲线绕-1点逆时针一圈,因此校正后的系统稳定。

利用频率响应方法校正后系统的单位阶跃响应图可以看出,系统在遇到干扰后,在1秒内可以达到新的平衡,但是超调 量比较大。

8)打开“L1dofFreq.mdl”,在 MATLAB Simulink 下对系统进行仿真(本 例和以下的例子都不再仔细说明每步的操作方法,详细的步骤请参见前一章 内容).(进入MATLAB Simulink 实时控制工具箱“Googol Education Products”打 开“Inverted PendulumLinear Inverted PendulumLinear 1-Stage IP Experiment Frequency Response Experiments ”中的“ Frequency Response Control Simulink”)

自动化07级2班

图12 系统仿真图

图13 环节参数设计图

自动化07级2班

可以获得图14的结果:

图14 增加超前校正后的单位阶跃响应图

9)可以看出,系统存在一定的稳态误差,为使系统获得快速响应特性,又 可以得到良好的静态精度,我们采用滞后-超前校正(通过应用滞后-超前 校正,低频增益增大,稳态精度提高,又可以增加系统的带宽和稳定性裕量),设滞后-超前控制器为:

11)(s)T1T2 Gc(s)K

1(s)(s)T1T2(s(4-9)10)设计滞后-超前控制器。设控制器为: Gc(s)Kc(31)可以得到静态误差系数:

KplimGc(s)G(s)lim1465s0s01(sT)(sT12)1(sT)(s1T21)1191.3445s8.7099s2

s106.0284s0.1988s8.1164s20.02725100.6s121.3221s0.19880.0102125s20.26705

比超前校正提高了很多,因为-2 零点和-0.1988 极点比较接近,所以对相 角裕度影响等不是很大,滞后-超前校正后的系统Bode图和奈魁斯特图如下

自动化07级2班

所示: 输入: clear;num=98*[0.02725];den=[0.0102125 0-0.26705];subplot(2,1,1)bode(num,den)subplot(2,1,2)nyquist(num,den)

z=roots(num);p=roots(den);

za=[z;-8.9854;-2];pa=[p;-90.3965;-0.1988];k=985.9155;sys=zpk(za,pa,k);

figure subplot(2,1,1)bode(sys)subplot(2,1,2)nyquist(sys)

figure sysc=sys/(1+sys);t=0:0.005:5;impulse(sysc,t)可以获得图15和图16所示的结果:

图15增加一阶控制器后系统 Bode图

自动化07级2班

图16增加一阶控制器后的 Nyquist图

利用频率响应方法校正后的 Bode 图和 Nyquist图(二阶控制器)

进入MATLAB Simulink 实时控制工具箱“Googol Education Products”打

开“Inverted PendulumLinear Inverted PendulumLinear 1-Stage IP Experiment Frequency Response Experiments ”中的“ Frequency Response Control Simulink”)设“Controller2”图17所示:

自动化07级2班

图17 系统参数设置 可获得图18的结果:

图18 增加二阶控制器后的单位阶跃响应图

可以很明显的看出,系统的稳态误差较少。

五、设计总结

倒立摆控制系统是一个复杂的、不稳定的系统,是进行控制理论教学及开展各种控制实验的理想实验平台。对于倒立摆的研究有很深的意义。倒立摆系统的研究能有效的反映控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。

通过本次创新实践,我了解了倒立摆系统的特点,学会了直线一级倒立摆的建模过程。本次实践用的是机理建模,即对倒立摆系统用牛顿定律进行力学分析,建立运动方程。直线一级倒立摆建模的关键是弄清楚分析对象。通过对不同对象的分析而建立的方程组要进行线性化处理后才进行拉普拉斯变换,这样才能用经典控制理论对系统模型进行分析,并设计控制器。

我们小组的设计是采用的是频率响应法。频率响应法是用MATLAB对控制过程的传递方程进行频率分析。用MATLAB程序绘制出系统的波特图和奈奎斯特图,这样就能分析控制过程的稳定性,并计算出稳定裕度。用频率响应法设计控制器首先要确定设计指标,包括稳态误差,相位裕度,幅值裕度。之后选择控制器模型,本次设计采用的是超前校正。设计方法是先根据稳度误差确定增益,通过对新传递函数的分析确定最大超前相角,通过控制器模型及以上参数确定转角频率。

自动化07级2班

这样控制器的理论参数就能计算出来。通过MATLAB分析验证控制器的控制效果。

在这次设计当中,最大的体会是理论与实践是有差别的。在理论上建好模仍需通过不断的实验微调控制器参数,才能实现一个比较完美的控制器,达到稳定快速控制的目的。还有就是对各种建模方法的深刻体会。现实中的很多问题都是通过建模之后,再运用已有的理论知识以及大量的实验、测试来解决的。可以说建模理论的出现,对人类解决各种复杂的问题(包括自动控制问题)有里程碑式的作用。

六、参考资料

《自动控制原理》——————华南理工大学出版社 《现代控制理论》(第3版)——————机械工业出版社 《倒立摆与自动控制原理实验》——————固高科技

以及大量网上关于直线一级倒立摆控制器的设计资料,在此不作罗列。

下载基于adams和matlab的一级倒立摆联合仿真word格式文档
下载基于adams和matlab的一级倒立摆联合仿真.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    直线一级倒立摆创新实践

    直线一级倒立摆创新实践 学 院: 班 级:姓 名: 学 号: 指导老师: 目录 一、倒立摆系统的介绍.........................................................1、倒立摆系统简介...........

    adams运动仿真教学

    起重机的建模和仿真,如下图所示。 1)启动ADAMS 1. 运行ADAMS,选择create a new model; 2. modal name 中命名为lift_mecha; 3. 确认gravity 文本框中是earth normal (-global Y......

    倒立摆课程设计

    西北民族大学2012级自动化3班钟小龙 摘 要 倒立摆系统作为一个具有绝对不稳定、高阶次、多变量、强祸合 的典型的非线性系统,是检验新的控制理论和方法的理想模型,所以 本文......

    倒立摆实验报告(5篇可选)

    一、实验内容 1、完成Matlab Simulink 环境下的电机控制实验。 2、完成直线一级倒立摆的建模、仿真、分析。 3、理解并掌握PID控制的的原理和方法,并应用与直线一级倒立摆 4......

    倒立摆实验报告(大全五篇)

    倒立摆实验报告 机自 82 组员:李宗泽 李航 刘凯 付荣 倒立摆与自动控制原理实验 一.实验目得:1、运用经典控制理论控制直线一级倒立摆,包括实际系统模型得建立、根轨迹分析与控......

    Adams振动仿真心得(共5篇)

    Adams单自由度隔振扫频研究心得: 1. 对于box刚体,讨论y方向单自由度,对box需要两点移动副约束,两点要求是棱角点 或者中心点,而且两点不能在一个y的高度上(猜测可能有冗余约束)。......

    amesim与matlab联合仿真步骤(自己总结)(精)

    Amesim 与 matlab 联合仿真参数设置 实验软件平台 Matlab2009a , amesimR8a , VC6.0 企业版 (英文版 步骤: 1 将 VC++中 的 "vcvar32.bat" 文 件 从 Microsoft Visual C++目......

    基于Matlab的ASK仿真

    基于MATLAB的2ASK调制 根据数字带通调制原理,运用MATLAB进行编程,仿真调制过程,记录并分析仿真结果。 形成设计报告。 课程设计需要运用MATLAB编程实现2ASK,2FSK,2PSK,2DPSK调......