(完整版)Matlab与adams联合仿真+仿真结果动画的保存与后处理

合集下载

MATLAB+ADAMS联合仿真

MATLAB+ADAMS联合仿真

1.建立一个简单的模型MODEL_Co_Simulation,创建一个构件PART_2,创建一个转动约束JOINT_1,给转动约束一个驱动MOTION_12.创建两个变量VARIABLE_PART2_CMx和变量VARIABLE_motion1创建变量如下:命名好名字点击OK则生成两个变量如图:3.然后在变量variable_part1中填写函数DX(PART_2.cm)这个函数用来测量构件PART_2质心点cm的X坐标;变量variable_motion1不做任何改变;在MOTION_1 中填入VARVAL(VARIABLE_motion1),variable_motion1将作为ADAMS的输入变量,MATLAB传递给ADAMS的数据,通过变量variable_motion1传递给MOTION_1。

4.在adams中点击Plugins——Controls——Plant Export,进行adams控制模块设置窗口点击Plant Export后出现如下界面然后对图中标记的地方进行修改同理操作右侧空白选中VARIABLE_Part1_CMx,然后如下图注意修改Target Software为MATLAB,显示这样的界面后点击OK,此时在模型的工程目录下会生成如下几个文件这样ADAMS中的操作就已经完成打开MATLAB,在MATLAB中输入工程目录下生成的文件的文件名如Control_Plant_3,回车MATLAB如下然后输入adams_sys回车,打开如下的一个窗口新建一个Simulink空白文档把ADAMS_sub拖进新的文档双节adams_sub如图双击MSC_Software如图设置2中的0.005为ADAMS仿真步长,1中的batch可以自己试着设置一下设置Simulink的仿真步长,Simulink的仿真步长一定要和ADAMS中的仿真步长一致点击绿色按钮开始仿真,adams_sub就是ADAMS在Simulink中的模型,输入motion为正弦信号,输出为part2质心的X坐标值。

adams-matlab联合仿真

adams-matlab联合仿真

➢ MSC.ADAMS模型的导入 ➢ ADAMS/Controls 的载入 ➢ MSC.ADAMS天线模型仿真
MSC.ADAMS模型的导入
1、打开ADAMS。 2、选择文件输入。 3、选择模型所在目录, OK。 4、在文件输入窗口,击右键,选择“Browse”,
并选择文件:antenna.cmd。
失效驱动下的试验仿真
操作: ➢ Edit>选择 Deactivate=>弹出数据导航表=>双击模
型main_olt=>选择azimuth_motion_csd=>OK ADAMS/CONTROLS 将“azimuth_motion_csd”失效。 ➢ 运行天线模型。
确定ADAMS 对象的输入输出
➢ 校验输入变量和输入函数 ➢ 校验输出变量和输出函数 ➢ MSC.ADAMS 控制对象文件的产生
核实MSC.ADAMS 对象的输入与输出流程
输入变量定义与修正
定义
选择Build>System Elements>State Variable >New
修正
选择Build>System Elements>State Variable >Modify 双击main_olt,选择 “control_torque”, 按“ok”
who ADAMS_forces ADAMS_inputs ADAMS_joints ADAMS_outputs ADAMS_prefix ADAMS_sysdir ADAMS_uy_ids ADAMS_mode ADAMS_utidir
产生Simulink 模块
在MATLAB中输入”adams_sys”会产生如下的窗口:
其中, 0 1 0 0

基于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对雷达天线进行建模。

ADAMS+matlab联合仿真

ADAMS+matlab联合仿真

一、ADAMS /Controls模块ADAMS /Controls是ADAMS其他模块如ADAMS/View,ADAMS/Car,ADAMS/solver等的插件模块,为建立的模型添加控制系统。

通过ADAMS/Controls 模块,可以将机械系统仿真分析工具同控制设计仿真软件MATLAB,EASY5,MATRIX等有机地连接起来,实现以下功能。

(1)将复杂的控制系统添加到机械系统模型中,然后对机电一体化进行联合分析。

(2)直接利用ADAMS程序创建控制系统分析中的机械系统仿真模型,而不需要使用数学公式建模。

(3)在ADAMS环境或控制应用程序环境获得机电联合仿真结果。

ADAMS /Controls控制系统可以有两种使用方式:●交互式:在ADAMS/Car, ADAMS /Chassis,ADAMS/Rail, ADAMS/View等模块中添加ADAMS /Controls,通过运动仿真查看控制系统和模型结构变化的效果。

●批处理式:为了获得更快的仿真结果,直接利用ADAMS /Solver这个强有力的分析工具运行ADAMS /Controls。

设计ADAMS/Controls控制系统主要分为4个步骤:1.建模:机械系统模型既可以在ADAMS /Controls下直接建立,也可以外部输入已经建好的模型。

模型要完整包括所需的所有几何条件、约束、力以及测量等。

2.确定输入输出:确定ADAMS 输入输出变量,可以在ADAMS和控制软件之间形成闭环回路。

3.建立控制模型:通过一些控制软件如Matlab、Easy5或者Matrix等建立控制系统模型,并将其与ADAMS机械系统连接起来。

4.仿真模型:使用交互式或批处理式进行仿真机械系统与控制系统连接在一起的模型。

二、MA TLAB/Simulink工具箱MA TLAB是MathWorks公司开发的软件,具有很多工具箱,其中Simulink工具箱,可以应用于对动态系统进行仿真和分析,他可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。

ADAMS与Matlab联合仿真

ADAMS与Matlab联合仿真

7.1机械夹紧机构建模使用实例机械系统建模实例将创建一种机械夹紧机构模型,是阿波罗登月计划中用于夹紧登月舱和宇宙飞船的十二个夹紧机构之一。

夹紧机构包括:摇臂(Pivot)、手柄(Handle)、锁钩(Hook)、连杆(Slider)和固定块(ground Block)等物体。

夹紧机构的工作原理是:如图7-1所示,在夹紧机构手柄(Handle)处施加一个作用力,驱动机构运动,使其锁钩(Hook)处产生十倍于作用力的夹紧力,用于夹紧登月舱和宇宙飞船。

夹紧机构的设计要求是:至少产生800N的夹紧力;施加在手柄上的力应不大于80N;释放手柄的力应最小;在振动环境中夹紧机构应安全可靠。

手柄Handle锁钩Hook图7-1 夹紧机构三维模型图以下将从创建几何构件、添加约束、添加载荷及结果后处理等几个方面详细介绍机械夹紧机构模型的建立。

通过本实例的学习,能够详细了解ADAMS软件设计流程及使用方法。

7.1.1创建几何构件1、创建新模型本实例将使用ADAMS/View的零件库、约束库和力库创建夹紧机构模型。

首先打开ADAMS/View,选择“Create a new model”,模型名称(Model Name):Latch,点击OK,创建新模型完毕。

其它设置如图7-2所示:图7-2 创建新模型2、设置工作环境选择菜单栏【Settings】→【Units】命令,设置模型物理量单位,如图7-3所示:图7-3设置模型物理量单位选择菜单栏【Settings】→【Working Grid】命令,设置工作网格,如图7-4所示:图7-4设置工作网格3、创建设计点设计点是几何构件形状设计和位置定位的参考点。

本实例将通过设计点列表编辑器创建几何构件模型所需要的全部设计点。

选择并点击几何模型库(Geometric Modeling)中的点(Point),下拉菜单选择(Add to Ground)、(Don’t Attach),并单击Point Table列表编辑器,创建并生成Point_1、Point_2等六个设计点,如图7-5、图7-6所示:图7-5设计点列表编辑器图7-6创建设计点4、创建摇臂(Pivot)选择并点击几何模型库(Geometric Modeling)中的平板(Plate),设置平板厚度值(Thickness)为1,圆角半径(Radius)为1,用鼠标左键选择设计点:Point_1、Point_2、Point_3,按鼠标右键完成摇臂(Pivot)的创建,将其重新命名(Rename)为Pivot,如图7-7所示:图7-7创建摇臂5、创建手柄(Handle)选择并点击几何模型库(Geometric Modeling)中的连杆(Link),用鼠标左键选择设计点:Point_3和Point_4,完成手柄(Handle)的创建,将其重新命名(Rename)为Handle,如图7-8所示:图7-8创建手柄6、创建锁钩(Hook)选择并点击几何模型库(Geometric Modeling)中的拉伸体(Extrusion),选择“New Part”和“Clsoed”,拉伸体长度(Lengh)设为1,用鼠标左键选择表7-1所示的11个位置,按鼠标右键完成锁钩的创建,将其重新命名(Rename)为Hook,如图7-9示:表7-1锁钩节点坐标图7-9创建锁钩7、创建连杆(Slider)选择并点击几何模型库(Geometric Modeling)中的连杆(Link),用鼠标左键选择设计点:Point_5和Point_6,完成连杆(Slider)的创建,将其重新命名(Rename)为Slider,如图7-10所示:图7-10创建连杆8、创建固定块(Ground Block)选择并点击几何模型库(Geometric Modeling)中的长方体(Box),选择“On Ground”,使其与大地(Ground)固结在一起,按下图创建固定体用鼠标左键选择设计点:Point_5和Point_6,完成连杆(Slider)的创建,将其重新命名(Rename)为Slider,如图7-11所示:图7-11创建固定块7.1.2添加约束1、添加旋转约束副选择并点击约束库(Joints)中的旋转副(Revolute Joints);选择“1 Location”(一个位置),“Normal To Grid”(垂直于工作网络),用鼠标左键选择Point_1,创建摇臂和大地的约束副;选择“2 Bodies - 1 Location”(两个物体一个位置),“Normal To Grid”(垂直于工作网络),选择摇臂和锁钩两个物体,左键选择Point_2,创建摇臂和锁钩的约束副;同理选择摇臂和手柄,位置为Point_3,手柄和连杆,位置为Point_5,创建摇臂和手柄、手柄和连杆的旋转约束副。

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

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

基于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)致谢................................................... 错误!未定义书签。

(完整版)Matlab与adams联合仿真+仿真结果动画的保存与后处理

(完整版)Matlab与adams联合仿真+仿真结果动画的保存与后处理

(完整版)Matlab与adams联合仿真+仿真结果动画的保存与后处理Matlab与adams联合仿真实例本实例以matlab为外部控制程序,使用PID算法控制偏心杆的摆动,使偏心杆平衡到指定位置。

1.在adams/view中建立偏心杆模型图1 偏心杆模型1)新建模型如图所示,将Units设置为MMKS。

设置自己的Working Directory,这里设置为C:\adams\exercise。

点击OK按钮。

图2 新建模型对话框2)创建连杆设置连杆参数为Length=400,Width=20,Depth=20,创建如图所示的连杆。

图3 创建连杆3)创建转动幅在连杆质心MARKER点处创建转动幅,旋转副的参数设置为1Location和Normal To grid将连杆与大地相连。

图4 创建转动幅4)创建球体球体选项设置为Add to part,半径设置为20,单击连杆右侧Marker点,将球体添加到连杆上图5 创建球体5)创建单分量力矩单击Forces>Create a Torque(Single Component)AppliedForces,设置为Space Fixed,Normal to Grid,将Characteristic设置为Constant,勾选Torque并输入0,单击连杆,再点击连杆左侧的Marker点,在连杆上创建一个单分量力矩。

图6 创建单分量力矩2.模型参数设置1)创建状态变量图7 新建状态变量点击图上所示得按钮,弹出创建状态变量对话框,创建输入状态变量Torque,将Name 修改为.MODEL_1.Torque。

图8 新建输入状态变量Torque再分别创建状态变量Angel和Velocity(后面所设计控制系统为角度PID控制,反馈变量为Angel,Velocity为Angel对时间求导,不需要变量Velocity,这里设置Velocity是为了展示多个变量的创建)。

adam与matlab联合仿真的实现

adam与matlab联合仿真的实现

以电动助力转向的联合仿真实现为例,看看怎么联合起来的4.3 ADAMS-MATLAB联合仿真实现ADAMS提供了两种实现机电一体化联合仿真的方法。

一种方法是利用ADAMS 提供的控制工具箱(Control Toolkit)来实现控制等电气系统与机械系统的联合仿真。

控制工具箱提供简单的线性控制模块和滤波模块,可以方便地实现前置滤波、PID控制和其他连续时间单元的模拟仿真。

对于较为简单的控制问题,可以直接在样机模型中添加控制模块,搭建控制系统,完成机电一体化联合仿真。

另一种方法是使用ADAMS/Control模块来实现,利用ADAMS/Control模块可以实现将在ADAMS中建立的样机机械模型与MATLAB、EASY5、MATRIX等软件中建立的电气模型联合起来,实现机电一体化联合仿真。

由于在MATLAB/Simulink中进行电气控制系统建模非常方便,很适合建立比较复杂的控制系统模型,所以本文使用ADAMS/Control模块来将在ADAMS/Car中建立的整车模型与在MATLAB/Simulink中建立的电动助力转向系统模型联合起来,完成整个机电一体化联合仿真。

仿真的过程中,会在ADAMS/Car和MATLAB/Simulink中形成回路[31],如图4-10所示:图 4-10 ADAMS/Car和MATLAB/Simulink联合仿真回路图中,Control Application即在MATLAB/Simulink中建立的电动助力转向系统。

ADAMS/Car中的整车模型输出车速及方向盘扭矩,作为MATLAB/Simulink中建立的电动助力转向系统的输入,电动助力转向系统输出齿条助力,作为整车模型的输入,在仿真的过程中的每个采样时刻信号在两个软件之间进行交换一次。

本文实现联合仿真的过程如下[32][33][34]:1. 要定义好整车模型的输入输出:(1)建立输入,在建立转向系统模板时提到要在Template Builder模式下建立状态变量rack_ assist_ force,使用VARVAL函数,使VFORCE取状态变量rack_ assist_ force的值,即VFORCE的函数值设为VARVAL(._rack_pinion_steering.rack_assist_force),再建立一个名为“control”的Plant_ Input,使用状态变量rack_ assist_ force。

我的Adams和matlab联合仿真接口设置

我的Adams和matlab联合仿真接口设置

Adams/matlab联合仿真软件接口设置
1、安装adams 2010
2、安装matlab r2009a
3、因matlab 默认工作目录为其安装路径的work 目录,因此将adams 默认目录修改为此目录,以保证联合仿真不会出错。

方法:右击ADAMS/view或car快捷方式----属性—在起始位置处修改,如下图:
或者两个软件都设置为adams默认目录,每次启动matlab时,将此目录设置为工作目录。

PS:我都改成了E:\matlab2009\work。

即matlab的默认工作目录。

4、设置环境变量
ADAMS_CONTROLS_WTIME = 60
该设置非常重要,必不可少!
5.将adams安装目录里的adams_plant.mexw32文件复制一份到MATLAB和ADAMS公用的工作目录下。

(我的是E:\matlab2009\work。


如果电脑是64位的,则拷贝adams_plant.mexw64文件。

我的电脑目前是32位,装的XP系统,各位参考。

这样设置好了,可以做一个联合仿真的
小实例来验证两个软件是否正确联通。

ADAMS和MATLAB联合仿真技术应用_衣袖帅

ADAMS和MATLAB联合仿真技术应用_衣袖帅

3 5
联合仿真的结果 图 8 为制动过程中速度变化曲线 , 图 9 为左前
从图 8~ 10 的仿真数据显示 , 在制动过程中 , 制 动效果明显 , 制动时间为 2 1 s, 制动距离为 23 5 m, 制 动过 程 车 轮 没 有 抱 死 , 制 动 结 果满 足 国 家 标 准[ 5] .
16
北京工商大学学 报( 自然科学版 )
2009 年 9 月
4) brake - abs1. right- rear - brake- pressure- in put. 这 4 个输入由控制模型输出, 同时作为制动系 统的输入 , 作为制动压力的变化系数. 输出变量是系统的测量, 分别如下 : 1) test rig. body - velocity - x , 输出样机模型在 X 轴上速度 ; 2) brake- abs1. left - f ront- wheel- omega; 3) brake- abs1. left - rear - w heel- omega; 4) brake- abs1. rig ht - f ront- wheel- omega; 5) brake- abs1. rig ht - rear - w heel- omeg a. 2) ~ 5) 分别为样机模型的 4 个轮的轮速 . 以左前轮制动力矩为例: M = 2* VARVAL ( lef t- front- brake- pressure input ) * pvs- front - pist on- area* varval( left - front brake- line - pressure) * pvs- front - brake - mu* pvsfront - eff ect ive- piston- radius * ST EP ( VARVAL ( left - f ront- wheel- omega) , - 0 0175, 1, 0 0175, - 1) , ( 1) 式( 1) 中, pvs- f ront- piston - area 块有效作用面积 ; left - front - brake - line- pressure 制动压力 ; pvs- front - brake - mu 左前 轮 缸 制动器摩擦衬

基于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_car与Matlabd的联合仿真

Adams_car与Matlabd的联合仿真

Adams/car与Matlab的联合仿真一、状态变量的建立1、在建模器界面通过菜单栏Build→System Elements→Sate Varible→New建立输入状态变量和输出状态变量。

其中输入变量F(time)定义框中设为零,其值从matlab中输入。

输出变量通过定义框右侧方块定义,如下图所示。

2、点击定义框右侧方块后出现Function builder对话框,如下图所示。

可通过下拉菜单选择位移、速度、加速度等根据需要定义输出变量。

3、在打开的模板中根据需要建立合适的作动器,通过Function将建立的作动器与输入状态变量建立联系。

二、Adams整车模型的输出1、将建立状态变量的模版生成子系统,再使用生成的子系统组成成整车装配。

2、在标准界面通过菜单栏Tools→Plugin Manager选中control模块,点击OK,如下图所示,将其加入到标准界面。

3、通过菜单栏Controls→Plant Export进入模型输出对话框。

假设输出模型命名为car_1。

在Input Signal(s)框中右键单击,通过Browse选择输入变量。

在Output Signal(s)框中右键单击,通过Browse选择输出变量(所选择的状态变量在前面步骤中已建好)。

Target Software选择MATLAB,点击OK。

生成的m文件存放到Adams的工作目录当中。

三、仿真激励的输出1、标准界面,通过菜单栏Simulate或Ride选择仿真项目。

以单移线为例,进入Single Lane Change对话框根据需求进行设置,其中Mode of Simulation选择files_only。

假设仿真取名为lane_change。

生成的仿真文件存放在Adams的工作目录当中,生成的文件前缀为lane_change_sin。

四、联合仿真的实现1、打开Matlab设置为与Adams相同的工作目录。

用Matlab打开生成的car_1.m,将ADAMS_prefix = 'car_1_sin'修改为ADAMS_prefix = 'lane_change_sin',将ADAMS_init = 'file/command=car _1_sin_controls.acf'修改为ADAMS_init = 'file/command=lane_change_sin_controls.acf',保存。

M精编b与ams联合仿真仿真结果动画的保存与后处理

M精编b与ams联合仿真仿真结果动画的保存与后处理

M精编b与a m s联合仿真仿真结果动画的保存与后处理The document was prepared on January 2, 2021Matlab与adams联合仿真实例本实例以matlab为外部控制程序,使用PID算法控制偏心杆的摆动,使偏心杆平衡到指定位置。

1.在adams/view中建立偏心杆模型图1 偏心杆模型1)新建模型如图所示,将Units设置为MMKS。

设置自己的Working Directory,这里设置为C:\adams\exercise。

点击OK按钮。

图2 新建模型对话框2)创建连杆设置连杆参数为Length=400,Width=20,Depth=20,创建如图所示的连杆。

图3 创建连杆3)创建转动幅在连杆质心MARKER点处创建转动幅,旋转副的参数设置为1Location和Normal To grid将连杆与大地相连。

图4 创建转动幅4)创建球体球体选项设置为Add to part,半径设置为20,单击连杆右侧Marker点,将球体添加到连杆上图5 创建球体5)创建单分量力矩单击Forces>Create a Torque(Single Component)Applied Forces,设置为Space Fixed,Normal to Grid,将Characteristic设置为Constant,勾选Torque并输入0,单击连杆,再点击连杆左侧的Marker点,在连杆上创建一个单分量力矩。

图6 创建单分量力矩2.模型参数设置1)创建状态变量图7 新建状态变量点击图上所示得按钮,弹出创建状态变量对话框,创建输入状态变量Torque,将Name修改为.。

图8 新建输入状态变量Torque再分别创建状态变量Angel和Velocity(后面所设计控制系统为角度PID控制,反馈变量为Angel,Velocity为Angel对时间求导,不需要变量Velocity,这里设置Velocity是为了展示多个变量的创建)。

ADAMS课仿真结果的后处理.ppt

ADAMS课仿真结果的后处理.ppt
数据曲线自变量轴的选择
• 默认条件:X轴作为自变量轴,时间为自变量
11
5.4 仿真结果曲线的编辑和运算
曲线编辑和运算工具 曲线数据的简单数学运算 数据曲线的积分和微分 通过数据曲线产生样条函数 改变数据点的值 曲线的统计运算 输出绘图数据 5.5 仿真结果数据处理
125.6 设置和修改默源自设置绘图参数设置与保存 设置仿真回放参数 设置颜色 设置曲线默认特性---曲线的颜色、线型和符号 设置输入命令文件的方式 字体、视图方向和单位的设置 指定保存目录
10
绘制仿真数据曲线
选择数据类型:Objects、Measures、Requests或 Results 在列表框中自左向右,选择作曲线图的数据
选择Add Curves命令,完成数据曲线绘制 选择Surf选择项, 快速浏览各种仿真数据的曲线图 添加数据曲线,添加曲线方式选择框
• Add Curves to Current Plot---添加曲线 • One Curve Per Plot---产生新的一页曲线图 • One Plot Per Result Set ---产生同样类型数据曲线的曲线图
5.3 绘制仿真结果曲线
绘制曲线模式下的控制面板区
Objects 、Measures、Requests和Results 4种类型的数据
• Objects---各种对象的数据,如:质心的位置、速度、加速度,运
动副的各种分力和合力等等
• Measures---测量对象的有关特性数据 • Requests---指定要求ADAMS/Solver输出的计算结果 • Results---ADAMS程序设定的一系列输出计算结果
视窗的操作
• 视窗布置 12种不同页面布置方案 • 选择视窗 只有一个视窗是活动的,用鼠标选取活动视窗 • 放大视窗 将当前的视窗扩大到整个视图----扩大视图命令 • 转移视窗内容 将一个视窗中的内容移到另一个视窗中 • 删除视窗内容 在View菜单,选择Clear View命令

ADAMS与Matlab联合仿真例子

ADAMS与Matlab联合仿真例子

7.1ADAMS/Controls使用实例本实例以MA TLAB作为外部控制程序,以偏心连杆模型为例,讲解ADAMS与MA TLAB的联合仿真过程。

主要包括创建机械系统模型、模型参数设置、建立MA TLAB控制模型以及结果后处理四个步骤。

机械模型建立、模型参数设置这两步为了导出一个可在MA TLAB软件Simulink 中使用的模块,这个模块包含了所建立ADAMS模型的信息参数,并有输入输出接口。

利用这个模块在MALTAB中建立控制系统,就可以控制ADAMS模型,在仿真结束后,可以直接在MA TLAB 中得到所需的数据结果进行后处理。

偏心连杆的形心与大地以铰链相连,连杆可以绕着铰链转动。

连杆右端连接有一个小球,由于小球的存在,使整个机构的质心与形心不重合,若在连杆左端没有力矩作用,连杆将做顺时针运动。

本例通过测量连杆运动的角速度、角度,对左端力矩的大小进行不断控制,最终使连杆相对平衡,即其角速度为零。

图7-22偏心连杆模型以下将详细介绍联合仿真的详细步骤。

通过本实例的学习,能够详细了解ADAMS软件与MA TLAB联合控制的使用方法。

7.2.1 创建机械系统模型1、设置单位启动ADAMS/View,选择新模型,在模型名输入MODEL_1。

选择菜单栏【Settings】→【Units】命令,设置模型物理量单位,将单位设置成MMKS,长度和力的单位设置成毫米和牛顿,如图7-23所示:图7-23设置模型物理量单位2、创建连杆单击几何工具包中的连杆按钮,将连杆参数设置为Length=400,Width=20,Depth=20,然后在图形区水平拖动鼠标,创建一个连杆,如图7-24。

图7-24创建连杆3、创建旋转副单击运动副工具包中的旋转副按钮,将旋转副的参数设置为1 Location和Normal to gird,单击连杆质心处的Marker点,将连杆和大地关联起来,如图7-25所示。

图7-25创建旋转副4、创建球体单击几何工具包中的球体按钮,将球体的选项设置为Add to Part,半径设置为20,然后在图形区单击连杆,再单击连杆右侧处的Marker点,将球体加入到连杆上,如图7-26所示。

四足机器人Adams与Matlab联合仿真设置

四足机器人Adams与Matlab联合仿真设置

Matlab与adams联合仿真设置1 模型设置 (2)2 运动副设置 (3)3 驱动与力设置 (4)4 检验设置是否正确 (7)5 Adams中与Matlab联合仿真的设置 (8)6 Matlab中与Adams联合仿真的设置 (12)7 联合仿真结果显示 (14)1 模型设置在soildworks建好四足整体模型,开始时做一个简化版的模型就可以了,另存为.x_t格式。

打开adams,点击文件->导入,在文件类型中选择“Parasoild”,双击“读取文件”空白处,打开选取文件界面,找到保存的四足模型,选择。

在模型名称的空白栏处右击,选择模型->创建,命名为“ghost”。

点击确定(图1.1)。

读取的文件目录中不要出现中文,否则会出现错误。

(图1.1)(图1.2)导入后的模型显示如图1.2。

点击界面右下角的球形图标,将模型转化为实体。

(图1.3。

倒数第四个)点击界面左上的设置->单位,将长度量纲改为毫米。

点击设置->重力,将重力设置为Y轴方向-9806.65。

点击界面左侧框图浏览->物体的左侧加号,出现模型各个部件的名称(图1.4)。

由于将模型从soildworks导入adams中时会损失质量信息,接下来将设置每个部件的质量。

双击某一部件,弹出设置界面(图1.5),在“定义质量方式”中选择“几何形状和密度”,随后设置密度。

由于实际中四足的腿的质量很小,大部分质量都集中在身体的铝架上,所以将腿部结构的的密度设为(200.0(kg/meter**3)),将身体部分的密度设为(1200.0(kg/meter**3))(图1.5)(图1.4)逐个双击部件设置密度信息。

完成后可在某个部件上右击,选择信息,查看该部件的信息(图1.6)。

(图1.6)统计质量信息如下:小腿长:0.0435kg*4 、小腿短:0.0252kg*4、大腿0.0132kg*8身体:5.79kg.总质量:6.18kg。

Matlab与Adams联合仿真的实现(3-3)

Matlab与Adams联合仿真的实现(3-3)

Matlab与Adams联合仿真的实现(3-3)最后使⽤MATLAB的Simulink建⽴控制系统:打开Matlab,进⼊刚才的⼯程的⽬录,输⼊刚才的产⽣的m⽂件的⽂件名运⾏,它会做⼀些初始化⼯作。

打开此m⽂件可以看到,它会向Matlab⼯作⽬录添加ADAMS的路径,如X:\MSC.Software\MSC.ADAMS\2005\win32下的adams_plant.dll库函数,是adams_sub的核⼼,ADAMS提供了⼀个S函数,⽤于ADAMS和Simulink联合仿真的调度和通信,如果Simulink找不到它,则仿真就不能运⾏,⽽运⾏那个m⽂件将⾃动向Matlab⼯作⽬录添加以上路径。

另外它还会向当前⼯作空间添加⼀些变量,联合仿真时,Simulink会⽤到,所以每次要做联合仿真时都要先运⾏此m⽂件,在Matlab中输⼊who命令可以看到这些变量。

注意:运⾏以上m⽂件时可能会出警告,不⽤管它。

Warning: Function d:\MSC~1.SOF\MSC~1.ADA\2005\win32\amd.dll has the same name as a MATLAB builtin. We suggest you rename the function to avoid a potential name conflict.然后是导⼊ADAMS模块并使⽤,输⼊adams_sys,将弹出adams_sys_.mdl的模块窗⼝并保存到当前路径,如下上⾯这些就是联合仿真时要⽤到的ADAMS模块,其中S-Function是实现⾮线性MSC.ADAMS模型的,State-Space是线性化的MSC.ADAMS模型,adams_sub包括S-Function和其它变量。

要构建⾃⼰的控制系统时,直接将要⽤到的拖到⾃⼰的Simulink模型中,然后做如下设置即可双击adams_sub模块,出现此⼦系统的框图如下双击MSCSoftware,出现设置对话框这⾥⾯就是ADAMS模块可以设置的属性,可以看到,这⾥⾯已经填好了Matlab⼯作空间中的变量,这些变量就是刚才那个m ⽂件产⽣的,可以修改相应变量的值来达到对ADAMS模块的设置。

ADAMS和MATLAB的联合仿真_李华

ADAMS和MATLAB的联合仿真_李华

(6)采用进口模块设计,同时结合N+1热备份的冗余设计和先进的自主均流技术。

(7)智能监控单元采用大屏幕图形显示和菜单式按键,具有良好的人机界面,操作简便,读取直观。

5 结语太阳能充电回路与风机的功率跟随原理是一样的,只不过太阳能电池板的输入电压低、变化比较缓慢,所以采用PH30048-48模块作主回路。

目前,国内有部分企业生产独立型的风能电源或太阳能电源,而生产风能、太阳能综合电源系统的还没有。

国外有少数企业生产综合型的电源系统,但价格昂贵,不适合国内使用。

因此,利用ATM EGA8单片机控制和北京万众公司的直流变换模块为主电路做成的风光互补发电系统具有较高的经济意义。

(收稿日期:2007-01-05)文章编号:1001-0874(2007)03-0100-02 ADAMS和MATLAB的联合仿真李华1,樊炳辉1,刘强2(1.山东科技大学机器人研究中心,山东青岛266510;2.济南志友集团,山东济南250022)中图分类号:TD391.9 文献标识码:BADAM S是美国M D I公司开发的软件,它为用户提供了强大的建模、仿真环境,使用户能够对各种机械系统进行建模、仿真和分析,具有十分强大的运动学和动力学分析功能,广泛应用于世界各国的工程领域。

M ATLAB以其强大的计算功能和编程的可视化、以及极高的编程效率,迅速成为从事科学研究和工程设计不可缺少的工具软件。

而把ADAM S 和MATLAB联合起来仿真,可以将机械系统仿真分析同控制设计仿真有机地结合起来,实现机电一体化的联合分析。

现以ADAM S和M ATLA B为对象,就联合仿真的若干问题进行探讨。

1 联合仿真实现的功能(1)将复杂的控制添加到机械系统的样机模型中,然后对机电一体化系统进行联合仿真。

(2)直接利用程序建立控制系统分析中的机械系统仿真模型,而不需要使用数学公式建模。

(3)分析在环境或环境获得的机电联合仿真结果。

对机械和控制系统进行联合分析,提供了一种全新的设计方法。

ADAMS 2005R2与MATLAB7.0联合仿真(word文档良心出品)

ADAMS 2005R2与MATLAB7.0联合仿真(word文档良心出品)

ADAMS 2005R2与MATLAB7.0联合仿真ADAMS/Controls(控制模块)可以将ADAMS的机械系统模型与控制系统应用软件(如:MATLAB、EASY5或者MATRIX)连接起来,实现在控制系统软件环境下进行交互式仿真,还可以在ADAMS/View中观察结果。

一般来说,控制系统最好用数学上的控制系统框图来表示,而基于几何外形的机械运动系统则用动画和曲线进行描述。

在仿真计算过程中,ADAMS采取两种工作方式:其一,机械系统采用ADAMS解算器,控制系统采用控制软件解算器,二者之间通过状态方程进行联系;其二,利用控制软件书写描述控制系统的控制框图,然后将该控制框图提交给ADAMS,应用ADAMS解算器进行包括控制系统在内的复杂机械系统虚拟样机的同步仿真计算。

一、ADAMS/Controls的设计流程ADAMS/Controls控制系统设计主要有以下四个步骤,如图1-1所示。

图1-1 ADAMS/Controls的设计流程第一步:建立机械系统模型机械系统模型可以在ADAMS/Controls下直接建立,也可以建立已经建好的外部模型。

第二步:确定ADAMS的输入输出变量通过确定ADAMS的输入和输出变量可以在ADAMS和控制软件之间形成一个闭合回路,如图1-2所示。

Input Controls图1-2 ADAMS的输入和输出变量第三步:建立控制系统模型使用控制软件MATLAB、EASY5或者MATRIX建立控制系统模型,并将其与ADAMS机械系统模型连接起来。

第四步:仿真模型可以使用交互式或者批处理方式仿真机械系统和控制系统连接在一起的模型。

二、ADAMS/Controls的应用实例:ADAMS帮助文件《Getting Started Using ADAMS/Controls》(即李军等人写的《ADAMS实例教程》)中的天线模型(antenna.cmd)。

1、导入用于控制仿真软件(CSS)MATLAB的模型文件。

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

Matlab与adams联合仿真实例
本实例以matlab为外部控制程序,使用PID算法控制偏心杆的摆动,使偏心杆平衡到指定位置。

1.在adams/view中建立偏心杆模型
图1 偏心杆模型
1)新建模型
如图所示,将Units设置为MMKS。

设置自己的Working Directory,这里设置为C:\adams\exercise。

点击OK按钮。

图2 新建模型对话框
2)创建连杆
设置连杆参数为Length=400,Width=20,Depth=20,创建如图所示的连杆。

图3 创建连杆
3)创建转动幅
在连杆质心MARKER点处创建转动幅,旋转副的参数设置为1Location和Normal To grid将连杆与大地相连。

图4 创建转动幅
4)创建球体
球体选项设置为Add to part,半径设置为20,单击连杆右侧Marker点,将球体添加到连杆上
图5 创建球体
5)创建单分量力矩
单击Forces>Create a Torque(Single Component)Applied Forces,设置为Space Fixed,Normal to Grid,将Characteristic设置为Constant,勾选Torque并输入0,单击连杆,再点击连杆左侧的Marker点,在连杆上创建一个单分量力矩。

图6 创建单分量力矩
2.模型参数设置
1)创建状态变量
图7 新建状态变量
点击图上所示得按钮,弹出创建状态变量对话框,创建输入状态变量Torque,将Name 修改为.MODEL_1.Torque。

图8 新建输入状态变量Torque
再分别创建状态变量Angel和Velocity(后面所设计控制系统为角度PID控制,反馈变量为Angel,Velocity为Angel对时间求导,不需要变量Velocity,这里设置Velocity是为了展示多个变量的创建)。

设置Angel的函数AZ(MARKER_3,MARKER_4)*180/PI,Velocity的函数为WZ(MARKER_3,MARKER_4)*180/PI。

(MARKER_3为连杆上的点,MARKER_4为地面上固定的点)AZ(MARKER_i,MARKER_j)表示MARKER_i绕MARKER_j的Z轴旋转的角度,WZ表示MARKER_i绕MARKER_j的Z轴旋转的角速度。

图9 新建输出状态变量Angel、Velocity
2)将输入状态变量Torque与模型关联
双击单分量力矩图标,弹出Modify Torque对话框,修改Function为
VARVAL(.MODEL_1.Torque),VARVAL是用于返回Torque的值。

图10 将输入状态变量Torque与模型关联
3)指定输入输出变量
点击,右键单击Variable Name右边的文本框,如图所示选择Torque。

图11 指定输入变量
图12 指定输入变量Torque
点击,分别两次右键单击Variable Name右边的文本框,分别选择Angel和Velocity。

图13 指定输出变量
图14 指定输出变量为Angel、Velocity
4)导出控制参数
点击Plugins>Controls>Plant_Export。

图15 导出控制参数
点击From Pinput,选择PINPUT_1。

图16 设置输入输出参数
同样的方法,点击From Poutput选择POUTPUT_1。

将Target Software设置为MATLAB。

File Prefix设置为controls_PID,其他按照默认设置不做改动。

图17 导出控制参数对话框
3.建立MATLAB控制模型
1)导出ADAMS模型在MATLAB中的模块
启动MATLAB,先将MATLAB的工作目录指向ADAMS的工作目录,方法是修改当前的工作目录为之前在ADAMS中新建模型时的工作目录,这里是C:\adams。

点击浏览文件夹选择文件夹C:\adams。

在命令窗口提示符》下输入Controls_PID,也就是Controls_PID.m 的文件名,再在命令提示符》下输入adams_sys,弹出一个新窗口,这个窗口是MATLAB/Simulink的选择窗口其中S-Function方框表示ADAMS模型的非线性模型,即进行动力学计算的模型,State-Space表示ADAMS模型的线性化模型,在ADSMA_sub中包含有非线性方程,也包含许多有用的变量。

图18 导出ADAMS在MATLAB中的模块
图19 ADAMS在MATLAB中的模块
2)建立控制方案
在MATLAB/Simulink选择窗口中,单击菜单file>new>model或直接单击新建模型按钮,弹出新的Simulink窗口,单击工具栏中的保存按钮,将新窗口存盘为control_model.mdl(不能与.m文件同名)。

将ADAMS_sub 方框拖拽到control_model窗口中,并搭建如图所示控制系统,此控制系统采用角度PID控制对偏心杆的角度进行控制。

也可以采用其他的控制方案。

图20 Simulink中PID控制图
3)设置MATLAB与ADAMS之间的数据交换参数
在control_model窗口中双击ADAMS_sub方框,在弹出的新的窗口中双击MSC Software,弹出数据交换参数设置对话框,将Adams Solver type设置为Fortran(如果设置为C++,ADAMS的构件不会运动,看不到动画效果。

),将Interprocess设置为PIDE(DDE),如果不是在一台计算机上,选择TCP/IP,Animation mode设置成interactive,表示交互式计
算,在计算过程中会自动启动ADAMS/View,以便观察仿真动画,如果设置成batch,则用批处理的形式,看不到仿真动画,将Simulation Mode设置为continuous,将Communication Interval输入框中输入0.005,表示每隔0.005s在MATLAB和ADAMS之间进行一次数据交换,若仿真过慢,可以适当改大该参数,其他使用默认设置即可。

图21 数据交换参数设置对话框
4)仿真设置和仿真计算
单击窗口中菜单Simulation>Model Configuration Parameters,将Stop Time设置为20。

Type 设置为Variable-step,其他使用默认选项,单击0K按钮。

单击开始按钮,开始仿真。

(若出现错误,重启MATLAB即可。

每次启动MATLAB都需要选择路径包含Controls_PID.m、Controls_PID.cmd、Controls_PID.adm的文件夹,并输入Controls_PID(.m文件名)和adams_sys(ADAMS与MATLAB的接口命令))。

仿真过程中将自动加载Adams/View窗口,并生成一个aviewAS.cmd的文件,如果你的Adams/View所设置的工作目录中含有此文件,那么启动软件时将不会出现欢迎界面,如果需要在启动时出现欢迎界面必须把此文件删除。

4.结果后处理
在MATLAB示波器中,可以得到角度、角速度和力矩的曲线,Angel、Velocity、Torque 的曲线如图所示。

此模型初始受重力作用,产生转动,通过控制力矩地大小,最终角度、角速度、力矩都能达到稳定,角度达到预设值。

控制框图的预设值为幅值为10的阶跃信号,即控制偏心杆的角度为100。

观察角度的变化曲线发现大约在14s时,Angel的值达到预设值10,满足控制要求。

图22 角度变化曲线
图23 角速度变化曲线图21 角速度变化曲线
图24 力矩变化曲线
图25 Adams/Viwe中偏心杆在13.3450s时的状态。

在原模型中导入联合仿真结果文件Controls_PID.res(注意Model Name要选择原模型名),这样就可以在adams中进行后处理了。

可以发现在模型树Results中多了一个Controls_PID的结果。

对此结果可以使用adams的后处理模块Postprocessor进行后处理。

图26 导入联合仿真结果文件
图26 在adams中进行后处理
图27 在adsms中对结果进行动画处理图28 adams中力矩后处理结果。

相关文档
最新文档