基于ADAMS与MATLAB联合仿真的倒立摆设计毕业论文

合集下载

基于ADAMS和Matlab的协同仿真及分析

基于ADAMS和Matlab的协同仿真及分析

基于ADAMS和Matlab的协同仿真及分析摘要: 应用多体动力学仿真软件ADAMS/Control和强大的控制系统仿真软件Matlab/Simulink进行机械系统和控制系统的协同仿真研究。

以雷达天线为实例,Matlab中输出的控制力矩为机械模型的输入参数,机械模型的天线仰角和电机转速为输出,形成一个闭环系统。

结果表明,利用ADAMS和Matlab进行机械系统和控制系统协同仿真,可以为机电产品的系统动态仿真分析提供有效手段。

关键词: ADAMS; Matlab; 协同仿真复杂产品的开发设计过程通常分为液压、机械、电子、控制等不同子系统,各子系统采用各自领域内的商用仿真软件进行单点仿真[1]。

但单点仿真并不能真实地反映整个系统之间的相互影响,而且当某个系统的参数有变动时,各子系统都要重新设计。

而虚拟样机技术的发展为复杂产品进行精确仿真提供了有效的支持。

虚拟样机技术是一种基于计算机仿真的产品数字化设计方法,涉及到多体运动学与动力学等技术,是在CAX(如CAD、CAE、CAM 等)/DFX(如DFA、DFM等)技术基础上的发展,进一步融合了信息技术、先进制造技术和先进仿真技术,并将这些技术应用于复杂产品的全生命周期[2]。

利用虚拟样机代替物理样机对产品进行创新设计、测试和评估,可缩短开发周期,降低成本。

雷达天线是一种典型的机电一体化产品,利用虚拟样机技术对机械系统和控制系统协同仿真,在可视化的环境下观察控制系统和机械系统的相互影响,输出多种仿真结果。

本文基于ADAMS的强大的动力学仿真建模功能和Matlab/Simulink强大的控制仿真功能,利用ADAMS建立了雷达天线机械模型,并在Matlab/Simulink中设计了控制器,结合在ADAMS中建立雷达天线机械模型,最终建立了基于ADAMS和Matlab的协同仿真模型,通过协同仿真可保证雷达天线达到预定仰角位置,稳定系统。

1 机械系统的虚拟建模本文利用ADAMS/View对雷达天线进行建模。

倒立摆的仿真与实时控制毕业论文

倒立摆的仿真与实时控制毕业论文

倒立摆的仿真与实时控制摘要倒立摆系统是一个典型的快速、多变量、非线性、不稳定系统,对倒立摆的控制研究无论在理论上和方法上都有深远的意义。

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

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

关键词:一级倒立摆,PID,MATLAB仿真DESIGN AND RESEARCH OF INVERTEDPENDELUMabstractInverted pendulum system is a typical fast, multivariable, nonlinear and unstable system, the control of the inverted pendulum research both in theory and methods on have far-reaching significance. This paper by laboratory original straight line level inverted pendulum experiment device as a platform, focuses on the PID control method, designed the corresponding PID controller, and the control process simulation in MATLAB. This article main research content is: first Outlines the development of automatic control and the present situation of the inverted pendulum system research; Introduces the composition of hardware of inverted pendulum system, modeling of single-stage inverted pendulum model, and analyze its stability; Study several kinds of inverted pendulum system control strategy, the corresponding controller is designed, based on the MATLAB, do a lot ofsimulationKey words: primary inverted pendulum, PID, the MATLAB simulation毕业设计(论文)原创性声明和使用授权说明原创性声明本人重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。

matlab仿真毕设--倒立摆现代控制理论研究

matlab仿真毕设--倒立摆现代控制理论研究

内蒙古科技大学本科生毕业设计说明书(毕业论文)题目:倒立摆现代控制理论研究倒立摆现代控制理论研究摘要倒立摆系统是一个复杂的非线性、强耦合、多变量和自不稳定系统。

在控制工程中,它能有效地反映诸如可镇定性、鲁棒性、随动性以及跟踪性等许多控制中的关键问题,是检验各种控制方法的理想工具。

理论是工程的先导,它对倒立摆系统的控制研究具有重要的工程背景,单级倒立摆与火箭的飞行有关,二级倒立摆与双足机器人的行走有相似性,日常生活中的任何重心在上,支点在下的问题都与倒立摆的控制有极大的相似性,所以对倒立摆的稳定控制有重大的现实意义。

迄今,人们已经利用古典控制理论、现代控制理论及多重智能控制理论实现了多种倒立摆系统的稳定控制[5]。

倒立摆的控制方法有很多,如状态反馈控制,经典PID控制,神经网络控制,遗传算法控制,自适应控制,模糊控制等。

其控制方法已经在军工、航天、机器人和一般工业过程等领域得到了应用。

因此对倒立摆系统的控制研究具有重要的理论和现实意义,成为控制领域中经久不衰的研究课题。

本文是应用线性系统理论中的极点配置、线性二次型最优(LQR)和状态观测器等知识,设计了倒立摆系统线性化模型的控制器,通过MA TLAB仿真,研究其正确性和有效性。

通过分析仿真结果,我们知道了,状态反馈控制可以使倒立摆系统很好的控制在稳定状态,并具有良好的鲁棒性。

关键词:倒立摆;现代控制;Matlab仿真;Modern Control Theory Of Inverted PendulumAbstractInverted pendulum system is a complex nonlinear and strongly coupled,multi-variable and unstable system since.In control engineering,it can effectively reflect such stabilization,robustness,with the mobility of control and tracking,and many other key issue,It is the test ideal for a variety of control methods.Theory is the project leader,inverted pendulum control system also has important engineering research background,inverted pendulum with single-stage related torocket for the flight,Inverted pendulum and biped walking robot similar nature in any life in the center of gravity,the fulcrum in the next issue with the inverted pendulum control has a great similarity,so the stability control of inverted pendulum significant practical significance.So far,it has been the use of classical control theory,modern control theory and control theory of multiple intelligence to achieve a variety of inverted pendulum system stability control[5].Inverted pendulum control methods there are many,such as the state feedback control,the classic PID control,neural network control,genetic algorithm control,adaptive control,fuzzy control.The control method has been in military,aerospace,robotics and general industrial processes and other areas have been intended use.Therefore,the control of inverted pendulum system research has important theoretical and practical significance,of becoming enduring research topics in the field.This is the application of the theory of linear systems pole placement,linear quadratic optimal (LQR) and the state observer of such knowledge,the design of the linear inverted pendulum model of the controller,through simulation to study the correctness and effective sex.By analyzing the results of MATLAB simulation,state feedback control can make a goodcontrol of inverted pendulum system in a stable state,and has good robustness,stability control features.Key words: Inverted pendulum;Modern control;Matlab simulation;目录摘要 (I)Abstract (II)第一章绪论 (1)1.1倒立摆系统模型简介 (1)1.2倒立摆研究的背景与意义 (2)1.3国内外研究现状、水平和发展趋势 (3)1.3.1倒立摆和控制理论的发展 (3)1.3.2倒立摆的控制方法 (4)1.3.3倒立摆的发展趋势 (5)1.4本论文的主要工作介绍 (6)第二章一级倒立摆的数学模型建立及其性能分析 (7)2.1 系统的组成 (7)2.2 一级倒立摆数学模型的建立 (8)2.2.1 数学模型的建立 (8)2.2.2 系统的结构参数 (9)2.2.3 用牛顿力学方法来建立系统的数学模型 (9)2.2.4 一级倒立摆的性能分析[7] (13)2.3 本章小结 (15)第三章现代控制理论在倒立摆控制中的应用 (16)3.1 自动控制理论的发展历程 (16)3.2 经典控制理论 (18)3.2.1 PID控制现状 (18)3.2.2 PID控制的基本原理 (18)3.2.3 常用PID数字控制系统 (20)3.3 现代控制理论 (21)3.3.1 极点配置[11] (22)3.3.2 线性二次型最优的控制理论[7,8] (24)3.3.3 加权矩阵的选取 (26)3.3.4 状态观测器[7] (26)3.4 本章小结 (29)第四章MA TLAB仿真技术 (30)4.1 仿真软件——Matlab简介 (30)4.1.1 MA TLAB的优势 (30)4.2 Simulink简介 (32)4.3 S-函数简介 (33)4.3.1 用M文件创建S-函数 (34)4.4 倒立摆仿真模块的建立 (36)4.5 本章小结 (37)第五章一级倒立摆线性模型系统的仿真 (38)5.1 倒立摆控制器结构选择 (38)5.2 一级倒立摆线性模型系统仿真 (38)5.2.1 Simulink仿真 (42)5.3 本章小结 (46)结束语 (48)参考文献 (49)附录A (51)致谢 (53)第一章绪论1.1倒立摆系统模型简介倒立摆控制系统是一个复杂的、不稳定的、非线性的系统,是进行控制理论教学及开展各种控制实验的理想实验平台,但它并不是我们想象的那样抽象,其实在我们日常生活中就有很多这样的例子。

基于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所示,图中以三级车摆为例,它是由可以沿直线导轨运动的小车以及一端固定于小车之上的匀质长杆组成的系统,小车可以通过转动装置由力矩电机、步进电机、直流电机或者交流伺服电机驱动,车的导轨一般有固定的行程,因而小车的运动范围都是受到限制的。

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

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

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

基于多领域的建模与联合仿真技术很好的解决了这个问题,为机械和控制系统进行联合分析提供了一种全新的设计方法。

机械工程师和控制工程师就可以享有同一个样机模型,进行设计、调试和试验,可以利用虚拟样机对机械系统和控制系统进行反复联合调试,直到获得满意的设计效果,然后进行物理样机的建造和调试。

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

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

二、实验方法软件环境:MD ADAMS R3,MATLAB R2009b建立倒立摆的动力学模型启动ADAMS/View模块弹出如图1所示对话框,建立小车及摆杆模型。

首先选择“Create a new model”选项,创建一个新的模型,将该文件保存在相应的文件夹下,本实验将结果保存在E:\daolibai_adams文件夹下,将文件名取为“daolibai_adams”,其余选项保持默认。

注意,在ADAMS中路径名和文件名最好采用英文字符,否则有可能在运行的过程中出现意想不到的错误。

利用ADAMS与MATLAB对平面三级倒立摆的仿真

利用ADAMS与MATLAB对平面三级倒立摆的仿真

利用ADAMS与MATLAB对平面三级倒立摆的仿真孔凡国;相飞;钟廷志【摘要】利用ADAMS建立了平面三级倒立摆的虚拟样机模型,并采用ADAMS与MATLAB联合控制的方式,首次完成了平面三级倒立摆的虚拟样机控制仿真.仿真结果表明,尽管X向和Y向系统采用了相同的控制器且初始参数设置完全一样,但仿真结果二者存在一定的区别,这证明了X向和Y向系统存在耦合现象.此外,利用ADAMS与MATLAB联合进行系统的控制仿真,能即时反映控制算法的效果,具有很大的推广价值.%Built in ADAMS planar triple inverted pendulum virtual prototyping model, and uses the ADAMS and MATLAB joint control simulation ways, first completed virtual prototype control simulation of planar triple inverted pendulum. The simulation results show that although X and Y direction system to use the same controller and initial parameters settings exactly the same, but the simulation results to X and Y direction system are different, which proves to X and Y direction system exists coupling phenomenon. In addition, ADAMS and MATLAB joint system control simulation, can reflect the effect of real-time control algorithm, with a great promotion value.【期刊名称】《工业仪表与自动化装置》【年(卷),期】2012(000)003【总页数】3页(P3-4,30)【关键词】三级倒立摆;ADMS软件;虚拟样机;仿真【作者】孔凡国;相飞;钟廷志【作者单位】五邑大学,广东江门529020;五邑大学,广东江门529020;五邑大学,广东江门529020【正文语种】中文【中图分类】TP2730 引言倒立摆系统作为一个高阶次、不稳定、多变量、非线性、强耦合的复杂被控系统[1-2],在对其控制过程中能有效地反映控制中的许多关键问题,如镇定问题、非线性问题、鲁棒性问题、随动问题以及跟踪问题等,是进行控制理论验证的理想实验平台。

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

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

基于ADAMS与MATLAB的倒立摆联合仿真实验5篇第一篇:基于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与Matlab联合仿真实例

环形倒立摆Adams与Matlab联合仿真实例

机械运动系统设计与实践报告学院:工程学院专业:机械设计及理论姓名:学号:指导教师:2012 年 3 月环形倒立摆Adams与Matlab联合仿真分析一、实践目的1.熟悉和理解环形倒立摆的组成部件及运动原理。

2.通过ADAMS软件对环形倒立摆进行建模,熟练该款软件。

3.通过运用ADAMS导出模块与matlab进行对接处理,熟悉matlab软件的PID运行控制以及掌握simulink的相关设置。

二、实验原理环形倒立摆是通过电机驱动,带动连杆,同时连杆来带动摆杆运动。

中间需要测量的物理参数主要有:连杆的角度、连杆的角速度、摆杆的角度、摆杆的角速度。

通过两个光电编码器进行反馈。

从反馈过程中来调节电机的转速及转向,进而达到摆杆的倒立并保持相对平衡。

下图1即为实验室固高环形倒立摆系统组成框架:图1 环形倒立摆组成框架实验室固高模型使用程序如下:(1)老师给的程序:% this is a new simulation program for new arm-type inverted pendulum % by lgr input on the state of 0 of arm and that of 0 of pendulum% ! CAUTION ,changed base of direction of arm% Suc.clear allclose all%---------------------------------Ma=0.21;Mp=0.062;la=0.133;lp=0.068;La=0.25;Lp=0.19;Ja=5E-3;Jp=5.65E-4;Ca=5.52E-3;Cp=1.69E-4;kt=0.0419;g=9.8;%------------------continuous state equation--------------------ce=[ 1 0 0 0 ;0 1 0 0 ;0 0 Mp*La^2+Ja Mp*La*lp ;0 0 Mp*La*lp Jp ];ca=[ 0 0 1 0 ;0 0 0 1 ;-(Mp*la+Mp*La)*g 0 -(Ca+Cp) Cp ;0 Mp*g*lp Cp -Cp ];cb=[0;0;kt;0];CA=inv(ce)*ca;CB=inv(ce)*cb;C=[1 0 0 0 ; 0 1 0 0];%---------------------------------------------------------------Q=diag([100,10,1,1]);R=1;[f,s,e]=lqr(CA,CB,Q,R);%---------------------------------------------------------------dt=0.005;%sampling timeth_a=0.1 %accdd('Initial angle of arm ',0.1);% ! caution,clock di%rectionth_p=pi;% =accdd('Initial angle of pendulum ',pi);% ! caution,clock dir %ection +d_th_a =0.0;%d_th_p =0.0;%initial values of statesdd_th_a =0.0;%dd_th_p =0.0;%u =0.0;z =0.0;energy =0.0;i =1;%-------------------------- input parameter---------------------alpha =30.0 ; %alpha =accdd('Design Parameter alpha',30.0);energy_d =1.5*Mp*g*lp; %accdd('Desired Energy',1.5*Mp*g*lp);zeta =1 % accdd('Damping Factor',1.0);wc =1 % accdd('Cut Off Frequency',1.0);flag =0;%-------------------------- starting loop ----------------------for i =1:6.0/dtth_a_0 =th_a;%th_p_0 =th_p;%d_th_a_0 =d_th_a;%d_th_p_0 =d_th_p;%dd_th_a_1 =dd_th_a;%dd_th_p_0 =dd_th_p;%if cos (th_p)>=cos(0.2);flag=1;endif flag==0 %----------------------- swimping up ------------------dd_th_a = z-(2*zeta*wc*d_th_a+wc^2*th_a);ydd_temp =-Mp*La*lp*cos(th_a-th_p)*dd_th_a+Mp*La*lp*d_th_a^2*sin(th_a-th_p);dd_th_p =(ydd_temp+Mp*g*lp*sin(th_p)+Cp*d_th_a-Cp*d_th_p)/Jp;d_th_a =d_th_a_0+dd_th_a*dt;d_th_p =d_th_p_0+dd_th_p*dt;th_a =th_a_0+d_th_a_0*dt+dd_th_a*dt^2*0.5;th_p =th_p_0+d_th_p_0*dt+dd_th_p*dt^2*0.5;elseeq_1_1=-Mp*La*lp*d_th_p^2*sin(th_a-th_p)-(Mp*la+Mp*La)*g*sin(th_a);eq_1_2 =-(Ca+Cp)*d_th_a+Cp*d_th_p+kt*u;eq_1_left =eq_1_1+eq_1_2;eq_2_1 =Mp*La*lp*d_th_a^2*sin(th_a-th_p)+Mp*lp*g*sin(th_p);eq_2_2 =Cp*d_th_a-Cp*d_th_p;eq_2_left =eq_2_1+eq_2_2;%-------------------------- calculation of inverse matrix ------------- M11 =Mp*La^2+Ja;M12 =Mp*La*lp*cos(th_a-th_p);M21=Mp*La*lp*cos(th_a-th_p);M22=Jp;M=[M11 M12;M21 M22];MI=inv(M);%-------------------calculation of parameters------------------dd_th_a=MI(1,1)*eq_1_left+MI(1,2)*eq_2_left;dd_th_p=MI(2,1)*eq_1_left+MI(2,2)*eq_2_left;d_th_a= d_th_a_0+ dd_th_a*dt;d_th_p= d_th_p_0+ dd_th_p*dt;th_a= th_a_0+ d_th_a_0*dt+ dd_th_a*dt^2*0.5;th_p= th_p_0+ d_th_p_0*dt+ dd_th_p*dt^2*0.5;energy=0.5*Jp*d_th_p^2+Mp*g*lp*cos(th_p);%energy of pendulumpotential=Mp*g* lp*cos(th_p);kinetic=0.5*Jp*d_th_p^2;%------------------------------------------------------------------------if flag==0error=energy-energy_d;u1=(Mp*La^2+Ja)*dd_th_a+Mp*La*lp*cos(th_a-th_p)*dd_th_p+(Ca+Cp)*d_th_a;u2=Mp*La*lp*d_th_p^2*sin(th_a-th_p)+(Ma*la+Mp*La)*g*sin(th_a)-Cp*d_th _p;u=(u1+u2)/kt;z=alpha*d_th_p*cos(th_p)*error;elseu=-f*[th_a;th_p;d_th_a;d_th_p];end%-----------------Limit input--------------if u>=4.995u=4.995;else if u<=-4.995u=-4.995;endend%----------------------------save data----------------------------accel_th_a(i)=dd_th_a;accel_th_p(i)=dd_th_p;veloc_th_a(i)=dd_th_a;veloc_th_p(i)=dd_th_p;angle_th_a(i)=th_a;angle_th_p(i)=th_p;Energy1(i)=energy;Energy2(i)=kinetic;Energy3(i)=potential;input(i)=u;t(i)=i*dt;end%----------------------------end loop-------------------------------subplot(221);plot(t,angle_th_a);xlabel('time[sec]');ylabel('Angle of Arm [rad]');subplot(222);plot(t,angle_th_p);xlabel('time[sec]');ylabel('Angle of Pendulum [rad]');gridsubplot(223);plot(t,input);xlabel('time[sec]');ylabel('Input');gridsubplot(224);plot(t,Energy1,t,Energy2,':',t,Energy3,'--'); xlabel('time[sec]');ylabel('Energy of Pendulum');控制模型的如图2所示:图2 控制模型控制曲线如图3所示:246-0.4-0.200.20.4time[sec]A n g l e o f A r m [r a d ]246-20246time[sec]A n g l e o f P e n d u l u m [r a d ]246-55time[sec]I n p u t246-0.0500.050.10.15time[sec]E n e r g y o f P e n d u l u m图3 控制曲线三、 A DAMS 建模及参数设置处理 1. 建模此处为了更为清晰的建模,将电机驱动以及连杆、摆杆的模型简化。

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

基于ADAMS与MATLAB联合仿真的倒立摆设计摘要:倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。

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

本文先分别用MATLAB和ADAMS两种软件对倒立摆系统进行建模仿真,然后将两者联合仿真,采用PID控制,用三种方法实现了对倒立摆系统的的控制。

仿真结果互相对比、补充,充分展现了各种仿真方法的特点,并直观的论证出利用两种软件进行联合仿真的优点和意义。

关键词:ADAMS;MA TLAB;倒立摆;联合仿真Design of inverted pendulum based on the co-simulationof ADAMS and MATLABAbstract: The control of inverted pendulum system is a nonlinear,complex, unstable,system, It’s an ideal experimental platform of control theory teaching and carrying out of various control experiments. Control methods of inverted pendulum are widely used in military, aerospace, robotics and general industrial fields, such as robot balance control in rocket launch, the verticality control and satellite flight attitude control. This paper first respectively by MATLAB and ADAMS for modeling and Simulation of the inverted pendulum system, and then combining the two for co-simulation.With the PID control, the control of inverted pendulum system are realized by three methods. The simulation results contrast and complement each other, fully demonstrated the characteristics of various simulation methods, and intuitive proves the advantages and significance of combined simulation using this two kinds of software.Key words: ADAMS,MATLAB,inverted pendulum, co-simulation目录第1章绪论 (1)1.1 课题研究背景与意义 (1)1.2 国内外发展现状 (1)1.3 本论文主要内容 (2)第2章倒立摆的数学模型及控制方法 (3)2.1 建模方法的选择 (3)2.2 倒立摆系统模型 (3)2.3 控制方法的选择 (6)2.4 PID算法简介 (6)本章小结 (8)第3章基于MATLAB的倒立摆控制系统设计 (10)3.1 MATLAB软件简介 (10)3.2 倒立摆系统开环稳定性分析 (11)3.3 摆杆角度PID控制 (12)3.4 小车位移PID控制 (13)3.5 Simulink模型构建 (14)3.6 系统闭环稳定性分析 (14)3.7 系统脉冲响应分析 (15)3.8系统阶跃响应分析 (17)本章小结 (19)第4章基于ADAMS的倒立摆控制系统设计 (20)4.1 ADAMS软件介绍 (20)4.1.1 ADAMS简介 (20)4.1.2 ADAMS软件组成 (20)4.2 ADAMS中倒立摆控制方案 (22)4.3 倒立摆ADAMS模型建立 (22)4.4 PID控制 (24)4.4.1 不加控制时系统仿真分析 (24)4.4.2 PID控制时系统仿真分析 (26)本章小结 (27)第5章基于MATLAB和ADAMS联合仿真的倒立摆控制系统设计 (29)5.1 ADAMS与MATLAB联合仿真意义 (29)5.2 ADAMS与MATLAB联合仿真过程 (29)5.2.1 建立ADAMS模型 (29)5.2.2 确定ADAMS的输入输出 (30)5.2.3 ADAMS与MATLAB的连接 (31)5.2.4 构建控制模型 (32)5.2.5 联合仿真 (34)本章小结 (35)总结 (36)致谢................................................... 错误!未定义书签。

参考文献 (37)第1章绪论1.1课题研究背景与意义倒立摆控制系统是一个不稳定的、复杂的、非线性系统, 主要是由导轨、小车和各级摆杆组成。

其在控制理论教学中有重要的作用,同时它也是开展各种控制实验的的理想实验平台。

非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等各种控制中的典型问题都可以通过对倒立摆系统的研究得到有效的反映。

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

本课题在深入理解倒立摆基本原理的基础上,确立单级倒立摆控制为本文的研究课题。

单级倒立摆系统是一个典型多变量、不稳定和强耦合的非线性系统。

它的这些特性使得许多抽象的控制理论概念如系统稳定性、可控性等等,都可以通过单级倒立摆系统实验直观的表现出来。

而作为实验装置,它本身又具有成本低廉、结构简单、便于仿真、形象直观的特点。

因此,许多现在控制理论的研究人员一直将它视为典型的研究对象。

而在欧美发达国家的许多高等院校,也将它视为必备的控制理论教学实验设备。

所以,研究倒立摆系统对以后的教育研究领域和控制研究领域具有非常深远的影响。

ADAMS能够对各种机械系统进行建模、仿真和分析,建模直观、清晰,同时具有十分强大的运动学和动力学分析功能;MATLAB具有强大的计算功能,计算结果和程序设计的可视化也令它的使用更加的方便和广泛,是控制理论中使用最广泛的软件。

把ADAMS和MA TLAB联合起来仿真,可以将机械系统仿真分析同控制设计仿真有机地连接,将两种软件的优势结合起来。

本课题以实验室典型控制系统倒立摆为对象,对其进行机电机电一体化联合分析。

1.2国内外发展现状自倒立摆系统产生以来,国内外研究者就不断的进行着研究,也取得了很大的成果.上个世纪60年代,国外有学者提出了bang-bang的稳定控制。

在60年代后期,控制理论界提出了倒立摆的概念,受到世界各国许多科学家的重视。

从上世纪70年代初期开始,状态反馈理论对不同类型倒立摆的控制问题成了当时的一个研究热点。

上世纪80年代后期,将模糊理论应用于单级倒立摆的控制,取得了很大的成功。

从上世纪90年代开始,神经网络控制倒立摆的研究有了快速的发展。

另外,还有其他的控制方法用于倒立摆的控制。

利用云模型实现智能控制倒立摆。

利用云模型的方法,不用建立系统的数学模型,根据人的感觉、经验和逻辑判断,将人用语言值定性表达的控制经验,通过语言院子和云模型转换到语言控制规则器中,解决了倒立摆控制的非线性问题和不确定性问题。

遗传算法是美国密歇根大学Holland教授倡导发展起来的, 是仿真生物学中的自然遗传和达尔文进化理论而提出的并行随机优化算法。

1.3本论文主要内容设计要求:利用动力学仿真软件ADAMS搭建倒立摆的虚拟仿真系统,进行运动学及动力学仿真;通过ADAMS与MATLAB的接口模块ADAMS/control,利用MATLAB/Simulink模块搭建倒立摆的联合仿真控制系统,设计合适的参数,使满足性能指针要求;实现基于MATLAB与ADAMS的倒立摆的联合仿真。

要求倒立摆系统具有较好的动态响应特性。

在对设计要求的充分理解下,本文中完成了单级倒立摆的建模工作,包括数学建模和ADAMS软件建模,重点论述了用ADAMS建模的过程以及其和MATLAB联合仿真的具体步骤和过程。

本文将采用用三种方法实现对倒立摆的控制,首先在MATLAB中控制倒立摆,然后在ADAMS中建立倒立摆模型并实现初步控制,最后联合ADAMS与MATLAB,再次实现对倒立摆系统的控制。

通过这三种方法,可以很直观的体会到ADAMS与MATLAB联合仿真的优点。

第2章倒立摆的数学模型及控制方法2.1建模方法的选择系统建模的方法可以分为两种:机理建模和实验建模。

实验建模就是通过在研究对象上加上一系列的研究者事先确定的输入信号,激励研究对象并通过传感器检测其可观测的输出,应用数学手段建立起系统的输入-输出关系。

这里面包括输入信号的设计选取,输出信号的精确检测,数学算法的研究等等内容。

机理建模就是在了解研究对象的运动规律基础上,通过物理、化学的知识和数学手段建立起系统内部的输入-状态关系。

由于倒立摆系统本身是自不稳定的系统,实验建模存在一定的困难。

但是忽略掉一些次要的因素后,倒立摆系统就是一个典型的运动的刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。

在本设计中采用牛顿-欧拉方法建立单级倒立摆系统的数学模型。

为了方便研究倒立摆系统的控制方法,建立一个比较精确的倒立摆系统的模型是必不可少的。

目前,人们对倒立摆系统建模一般采用两种方法:牛顿力学分析方法,欧拉—拉格朗日原理。

本文采用牛顿—欧拉方法建立直线型一级倒立摆系统的模型。

2.2倒立摆系统模型倒立摆系统由水平移动的小车及由其支撑的单节倒立摆构成。

控制输入为驱动力F(N),是由拖动小车的直流伺服电机提供的;被控制量是摆杆与垂直位置方向夹角θ(rad)和小车的位移1所示。

实际倒立摆系统的模型参数:M :小车的品质,1.096kg ;m :摆杆的品质,0.109kg ;b :小车的摩擦系数,0.1N /(m /sec );L :摆杆的中心到转轴的长度,0.25mJ :摆杆对重心的转动惯量,0.0034kg ⋅m 2;T :采样周期,0.005秒;对小车进行受力分析,图中P 和N 分别表示摆杆运动在水平方向和垂直方向上对小车的作用力(N),f v 是小车的摩擦力,等于xb 。

摆的运动由水平方向、铅直方向以及旋转方向的运动构成。

相关文档
最新文档