adams和simulink联合仿真的案例分析
- 格式:doc
- 大小:18.00 KB
- 文档页数:4
万方数据2009年10月刘贵杰等:基于Adams与Matlab/Simulink的水下自航行器协同仿真23的损失。
传统的AUV仿真多集中于数学建模仿真【2】和Simulink控制仿真【31,进而依据仿真曲线分析优化AUV的设计。
这些工作大多偏重计算仿真而忽略图形仿真,不能直观地展现AUV的运动过程,人机交互不足。
后来有学者尝试将虚拟现实技术应用于AUV设计研究卜61,获得了较好的图形仿真界面,解决了人机交互问题;但由于采用的是简化模型和单一的仿真环境,很难综合考虑水动力参数影响,难免会影响仿真结果。
文献【7]利用流体分析软件FLUENT和仿真控制软件Simulink提出协同仿真的解决方案,它克服了AUV仿真中动态行为、流体动力学不足的局限,获得比较好的仿真结果;但系统计算量比较大,实时性和图形界面受限制。
良好的图形界面及人机互动代价大多是仿真系统的复杂化、水动力学仿真性能的减弱和实时性不足,它们之间的优化协调成了AUV仿真的难点。
针对上述问题,本文尝试将虚拟样机技术应用到AUV的仿真分析中,利用虚拟样机分析软件和控制仿真软件联合建立课题组研发的开架式水下自航行器(课题组命名为C—Ranger,简写为CR.AUV)的虚拟样机系统,并在此基础上对设计的空间动态定位控制算法进行仿真分析,验证算法的可行性和有效性。
1AUV虚拟样机模型的建立课题组研发的水下自航行器CR.AUV是一种5自由度低成本开放框架式结构的科研原型样机,采用两舱五推进器的结构模式,整体布局及三维几何模型如图l所示。
图1AUV结构布局示意图1.支架2.仪器仪表高压舱3.两个水平推进器4.三个竖直推进器5.电池高压舱CR-AUV长1.63m,宽1.27m,高1.08m,总排水量208L,正常挂负载工作时总质量为206kg,稳心高度h:0.09m。
1.1虚拟样机的数理模型研究水下自航行器运动学问题首先需要确立一个惯性坐标系。
本文以虚拟环境中的地面坐标系鳓f作为惯性参考坐标系,也称为静坐标系,规定静坐标系原点为虚拟环境的测量零点,Ⅸ指向地心、必指向地理东、励指向地理南。
相信大家在联合仿真ADAMS和SIMULINK时都会遇到很多的问题:ADA MS/contro中的例子ball_beam通过联合仿真,更容易理解a dams和simulink的联合仿真精髓。
小球在一脉冲力的作用下沿着横梁滚动,此时梁的两端受力不平衡,梁的一段倾斜,为了使得小球不掉下横梁,在横梁上施加一个绕Z轴的力矩,横梁达到一定的角度之后逆向转动,然后小球就在这个作用力矩的控制下来回滚动而不掉下横梁!其中控制力矩在整个过程中是个动态变化的,力矩Torque_In是通过位移Position 和横梁转角Bea m_Angle确定,这个是在simulink中通过框图完成的。
首先我申明一下我用的是adams2003和matlab6.5以下我说明一下我的操作步骤:1、把control中的ball_beam文件copy到另外一个文件夹下,同时设置adams和matlab的默认路径即为ball_beam文件夹,这样可以省略很多不必要的麻烦!2、用aview打开ball_beam.cmd文件,先试试仿真一下,可以看到小球会在脉冲的作用下滚动,仿真时间最好大于8s3、载入control模块,点击tools|plugin manager在contro l框选定。
4、点击control|plant export在file prefix下输入你的文件名,这个可以随便的,我输入的是myball,在plant input点击右键点击guess选定tmp_MDI_PINPUT,在tmp_MDI_PINPUT 中就是输入力矩Torque_In,只有一个输入参数;同样在plant output中点击右键guess选定tmp_MDI_POUTPUT,这是模型的输出变量横梁转角Beam_Angle和小球与横梁中心轴的距离position。
controlpackage选择matlab,type是non_linear,初始化分析选择n o,然后按ok!此时m文件已经生成了!5、打开matalb,设置你的工作路径在ball_beam文件夹上,键入myball,马上有%%% INFO : ADAMS plant actuators names :1 Torque_In%%% INFO : ADAMS plant sensors names :1 Beam_Angle2 Position出现6、再键入adams_sys,弹出一个控制框图,这时可以新建一个mdl文件,将adams_sub拖入你新建的mdl框图中,其实再这里有一个偷懒的办法,就是在matlab中打开ball_beam.md l文件,然后把他的那个adams_sub用你的刚产生的这个代替,然后另存为my_ball.mdl!7、设置仿真参数,在你刚建立的my_ball.mdl框图上的simul ation parameter里设置一下stop time为10s,步长为ode1 5s。
基于ADAMS与Simulink的机电一体化系统联合仿真Co-simulationofMechatronicsSystemBasedonADAMSandSimulink任远白广忱(北京航空航天大学能源与动力工程学院,北京100083)摘要:以雷达天线为研究对象,针对天线的方位角控制问题在ADAMS和Simulink的基础上进行了机电一体化仿真研究。
首先利用ADAMS/Controls模块把MATLAB/Simulink与雷达天线样机模型连接在一起,然后分别采用PID算法、PD算法以及模糊理论这3种方法来建立天线方位角控制系统。
仿真结果表明,对于雷达天线这样一个输入输出特性比较复杂且不便于简化建模的受控对象(因为不能忽略天线支撑的柔性及其扭振),模糊控制比前两种经典控制算法更为有效。
关键词:联合仿真雷达天线方位角控制模糊控制doi:10.39690.issn.1007-080X.2009.06.002Abstract:Takingaradarantennaa8researchobjective.themechatronicssimulationbasedonADAMSandSim曲nkWaScarriedouttosolvetheproblemofcontrollingtheantennaazimuth.111evirtualprototypeoftheradarantennawsgcoilnectedtoMATLAB/SimulinkbyADAMS/Controls.Thenthreemethods,i.e.PID,PDand缸研theory,wereutilizedtoestablishtheantennaazimutIIcontrolsystem.Theresultsofthesimulationshowthatfuzzycontrolismoreeffectivethantheothertwoclassiccontrolstrategiesfortheradarantenna,whichhasacomplexinput/outputrelationshipandishardtosimplifybecauseoftheflexibilityoftheantennasupportandthepossibilityofitstorsionalvibration.Keywords:CO—simulationradarantennaazimuthcontrolfuzzycontrolO引育在传统的机电一体化系统设计过程中.机械工程师和控制工程师虽然在共同开发一个系统.但却需要为同一对象建立起各自不同的分析模型.然后在不同的软件平台上进行相互独立的测试与验证.直到在建造物理样机之后才能进行机械一控制系统综合试验。
电铲工作装置EDEM Adams Simulink联合动态仿真电铲是一种用于挖掘和搬运土石等物料的工程机械设备,广泛应用于矿山、建筑工地和水利工程等领域。
电铲的工作装置是其核心部件,直接影响到电铲的挖掘效率和运行稳定性。
为了更好地理解电铲工作装置的动态特性,工程师们常常利用动态仿真技术进行研究和优化。
本文将介绍一种基于EDEM和Adams Simulink联合动态仿真的方法,以及其在电铲工作装置设计中的应用。
EDEM是一种专门用于颗粒动力学仿真的软件,可以模拟颗粒物料在不同工况下的运动和相互作用。
Adams Simulink是一种多体动力学仿真软件,可以模拟机械系统的运动和力学特性。
将EDEM和Adams Simulink两种软件进行联合仿真,可以更加真实地模拟电铲在挖掘和搬运过程中的工作情况,有助于工程师深入理解电铲工作装置的动态特性和工作原理。
我们需要建立电铲工作装置的三维模型。
对于电铲来说,其工作装置主要包括铲斗、铲杆和升降机构等部件。
利用EDEM软件可以对铲斗进行颗粒动力学仿真,模拟挖掘物料的过程,包括物料的流动、堆积和碰撞等。
利用Adams Simulink软件可以对铲杆和升降机构等部件进行多体动力学仿真,模拟电铲的各个部件在不同工况下的运动和力学特性。
我们可以利用联合动态仿真技术进行电铲工作装置的设计优化。
通过对电铲在不同工况下的动态特性进行仿真分析,可以找到电铲工作装置的优化方案,包括改进铲斗结构、优化铲杆长度和升降机构设计等措施,以提高电铲的挖掘效率和运行稳定性。
利用EDEM和Adams Simulink联合动态仿真技术可以更加真实地模拟电铲工作装置的动态特性,有助于工程师深入理解电铲的工作原理和优化设计方案。
相信随着这一技术的不断发展和应用,将为电铲工作装置的研究和设计提供更加有效的工具和方法。
Adams与Matlab联合仿真例子作者寄语:这个文件是基于李增刚《adams入门详解与实例》一书中,Adams与Matlab联合仿真的例子,以及一个名为《2013版ADAMS与Matlab联合仿真(绝对正确版)》的pdf文件上修改来,为了方便起见,用了一些复制、粘贴,所以中间的一些过程会和这两个文件有所重合,不要惊讶,也不要吐槽。
做这个例子的目的,是站在一个普通学习者的角度,介绍联合仿真,和众多学习adams的人共勉。
我的结论是:以上两个例子中的结果并不矛盾,都是正确的,基本上看了我的例子后,他们的也就懂了。
李增刚/uxjACUp7U7Hzf 第236页开始。
《2013版ADAMS与Matlab联合仿真(绝对正确版)》/aeab70fe360cba1aa911da00.html1、知识储备以上两个例子都用到了PID控制(比例(proportion)、积分(integral)、微分(derivative)控制器)比例就是对误差乘以一个系数积分就是对误差积分然后再乘以一个系数微分是对误差求导注意我的模型,上面是角速度Angle velocity,下面是角度angle,这里的积分是对angle进行积分,导致上面两个例子的不同也就在这,这个地方尤其要注意,不要上下搞反了。
表示的是对angle乘以一个系数,这里选了1,为比例调节,即P调节。
就是对angle的积分,(就是累加的意思),即I调节,然后乘以了系数1。
因为输出的是角速度,角速度就是angle的微分的,所以不用做什么操作,后面乘以了一个系数1。
然后这三个相加起来作为反馈调节,所以用了这个模块,这个表示累减。
将角度值送到Matlab的workspace工作空间,这个表示把时间送到workspace中去,因为角度这里是角度与时间的函数。
注意:这些模块不是必要模块,我只是为了做对比而加上去的,去掉不会对仿真产生影响,但是如果要加的话这两个模块缺一不可。
一种基于ADAMS—SIMULINK的机械臂关节动力学分析和联合仿真作者:李科姜迪开王娟来源:《电子技术与软件工程》2017年第12期摘要本文运用ADAMS软件对一种机械臂关节的虚拟动力学模型进行了建模,建模过程中充分考虑了齿轮的啮合刚度、运动副之间的阻尼、负载惯量、传动比以及齿轮间隙等因素。
其中,齿轮的啮合刚度和负载惯量对机械臂关节的频率特性起关键性作用。
研制了机械臂关节的样机。
为了改善机械臂关节机电系统的伺服特性,利用ADAMS-SIMULINK联合仿真建立了机械臂关节的伺服控制模型,将关节的ADAMS动力学模型中的传感器和执行器参数直接嵌入到MATLAB环境中,形成伺服控制系统设计。
通过比对样机的实验数据,对虚拟样机参数进行了优化。
所以,机械臂关节的复杂动力学模型可以用于指导关节的设计、仿真和试验。
【关键词】机械臂联合仿真动力学分析机电伺服控制系统1 引言在提供营救发射失败的卫星和清除太空垃圾等飞行器上,需要安装一种轻型机械臂。
为了提高这种机械臂的柔性、可操作性和抓取性能,技术的关键在于使机械臂的关节更小巧更轻便。
本文提供了一种用于机械臂关节的动力学特性和伺服特性分析的有效方法。
国际研究机构已经对机械臂进行了深入研究,其中包括加拿大国际空间站的的MSS(Mobile Servicing System),它由MBS (Mobile Remote Servicer Base System),SSRMS (Space Station Remote Manipulator System)和 SPDM (Special Purpose Dexterous Manipulator)组成[1];FTS(Flight Telerobotic Servicer)[2], Skyworker[3], Robonaut [4] 和美国的 ORBITAL EXPRESS [5],日本的 JEMRMS (Remote Manipulator System)和ETS-VII;以及欧洲的European ERA(The European Robotic Arm), ROTEX 和 ROKVISS。
相信大家在联合仿真ADAMS和SIMULINK时都会遇到很多的问题:ADA MS/contro中的例子ball_beam通过联合仿真,更容易理解a dams和simulink的联合仿真精髓。
小球在一脉冲力的作用下沿着横梁滚动,此时梁的两端受力不平衡,梁的一段倾斜,为了使得小球不掉下横梁,在横梁上施加一个绕Z轴的力矩,横梁达到一定的角度之后逆向转动,然后小球就在这个作用力矩的控制下来回滚动而不掉下横梁!其中控制力矩在整个过程中是个动态变化的,力矩Torque_In是通过位移Position 和横梁转角Bea m_Angle确定,这个是在simulink中通过框图完成的。
首先我申明一下我用的是adams2003和matlab6.5以下我说明一下我的操作步骤:1、把control中的ball_beam文件copy到另外一个文件夹下,同时设置adams和matlab的默认路径即为ball_beam文件夹,这样可以省略很多不必要的麻烦!2、用aview打开ball_beam.cmd文件,先试试仿真一下,可以看到小球会在脉冲的作用下滚动,仿真时间最好大于8s3、载入control模块,点击tools|plugin manager在contro l框选定。
4、点击control|plant export在file prefix下输入你的文件名,这个可以随便的,我输入的是myball,在plant input点击右键点击guess选定tmp_MDI_PINPUT,在tmp_MDI_PINPUT 中就是输入力矩Torque_In,只有一个输入参数;同样在plant output中点击右键guess选定tmp_MDI_POUTPUT,这是模型的输出变量横梁转角Beam_Angle和小球与横梁中心轴的距离position。
controlpackage选择matlab,type是non_linear,初始化分析选择n o,然后按ok!此时m文件已经生成了!5、打开matalb,设置你的工作路径在ball_beam文件夹上,键入myball,马上有%%% INFO : ADAMS plant actuators names :1 Torque_In%%% INFO : ADAMS plant sensors names :1 Beam_Angle2 Position出现6、再键入adams_sys,弹出一个控制框图,这时可以新建一个mdl文件,将adams_sub拖入你新建的mdl框图中,其实再这里有一个偷懒的办法,就是在matlab中打开ball_beam.md l文件,然后把他的那个adams_sub用你的刚产生的这个代替,然后另存为my_ball.mdl!7、设置仿真参数,在你刚建立的my_ball.mdl框图上的simul ation parameter里设置一下stop time为10s,步长为ode1 5s。
基于ADAMS和Simulink的太阳跟踪器联合仿真郑黎明;黄剑波【摘要】为了了解太阳跟踪器的具体性能,提高设计效率,采用ADAMS和Simulink软件对太阳跟踪器的工作过程进行了虚拟仿真分析.首先利用ADAMS软件建立了系统的动力学模型;利用Simulink软件建立了基于速度闭环的双轴控制系统.然后搭建了机-电联合仿真模型,并进行了仿真研究.分析了太阳跟踪器双轴控制系统的基本性能,确定了太阳跟踪器的目标输入曲线,完成了联合仿真计算.联合仿真结果表明:系统对太阳高度角输入曲线具有较好的跟踪能力,开始跟踪1.5s后系统跟踪非常稳定,跟踪误差小于目标幅值0.1%.得到的结果表明:所建的动力学模型和控制系统模型能够准确地描述跟踪器的工作过程,提高设计效率,可为实际物理样机的开发提供可靠依据.【期刊名称】《光学精密工程》【年(卷),期】2014(022)005【总页数】8页(P1212-1219)【关键词】太阳跟踪器;虚拟样机;联合仿真;ADAMS;Simulink【作者】郑黎明;黄剑波【作者单位】中国科学院长春光学精密机械与物理研究所,吉林长春130033;中国科学院长春光学精密机械与物理研究所,吉林长春130033【正文语种】中文【中图分类】V5561 引言太阳跟踪器能够搭载某些光电仪器载荷,完成对日轨迹跟踪,从而辅助这些载荷实现对日观测工作[1,2]。
太阳跟踪器实际上是一种光电经纬仪[1-3],根据不同地点对日观测的需求,需选用不同的结构形式,具体包括水平式和地平式两种[4-5]。
实现天顶观测时,一般采用水平式结构,其由经轴和纬轴构成,工作时经轴轴线与地球经线重合,纬轴轴线则在某一地球纬线平面内,但该结构无法对初升太阳进行精确跟踪。
不需对天顶观测时,可采用地平式结构,其由方位轴和俯仰轴构成,方位轴实现方位角调整,俯仰轴实现俯仰角调整,这种结构能够完成初升太阳的精确跟踪。
本文研发了某种型号的太阳跟踪器,用于对北半球高纬度地区的太阳观测。
相信大家在联合仿真ADAMS和SIMULINK时都会遇到很多的问题:ADAMS/contro中的例子ball_beam通过联合仿真,更容易理解adams和simulink的联合仿真精髓。
小球在一脉冲力的作用下沿着横梁滚动,此时梁的两端受力不平衡,梁的一段倾斜,为了使得小球不掉下横梁,在横梁上施加一个绕Z轴的力矩,横梁达到一定的角度之后逆向转动,然后小球就在这个作用力矩的控制下来回滚动而不掉下横梁!其中控制力矩在整个过程中是个动态变化的,力矩Torque_In是通过位移Position 和横梁转角Beam_Angle确定,这个是在simulink中通过框图完成的。
首先我申明一下我用的是adams2003和matlab6.5
以下我说明一下我的操作步骤:
1、把control中的ball_beam文件copy到另外一个文件夹下,同时设置adams和matlab的默认路径即为ball_beam文件夹,这样可以省略很多不必要的麻烦!
2、用aview打开ball_beam.cmd文件,先试试仿真一下,可以看到小球会在脉冲的作用下滚动,仿真时间最好大于8s
3、载入control模块,点击tools|plugin manager在control框选定。
4、点击control|plant export在file prefix下输入你的文件名,这个可以随便的,我输入的是myball,在plant input点击右键点
击guess选定tmp_MDI_PINPUT,在tmp_MDI_PINPUT中就是输入力矩Torque_In,只有一个输入参数;同样在plant output 中点击右键guess选定tmp_MDI_POUTPUT,这是模型的输出变量横梁转角Beam_Angle和小球与横梁中心轴的距离position。
control
package选择matlab,type是non_linear,初始化分析选择no,然后按ok!此时m文件已经生成了!
5、打开matalb,设置你的工作路径在ball_beam文件夹上,键入myball,马上有
%%% INFO : ADAMS plant actuators names :
1 Torque_In
%%% INFO : ADAMS plant sensors names :
1 Beam_Angle
2 Position
出现
6、再键入adams_sys,弹出一个控制框图,这时可以新建一个mdl文件,将adams_sub拖入你新建的mdl框图中,其实再这里有一个偷懒的办法,就是在matlab中打开ball_beam.mdl文件,然后把他的那个adams_sub用你的刚产生的这个代替,然后另存为my_ball.mdl!
7、设置仿真参数,在你刚建立的my_ball.mdl框图上的simulation parameter里设置一下stop time为10s,步长为ode15s。
然后双击adams_sub打开adams_pant,再双击adams_pant弹出一个设置框图,在animation mode这一栏中选择interactive这是交互的,如果选择batch的话在联合仿真中看不到adams模型的运行情况(个人这样理解的:)!最后保存一下!
8、开始联合仿真start simulation,就会出现asolver,弹出dos 文件,这个不管他,然后adams模型中的小球开始运动,估计会比较慢,最后会出现小球在横梁上运动而不掉下横梁!
这是我在做这个模型的过程中的一些东东,写的比较杂,呵呵!如果大家觉得好的话可以顶一下,希望能给那些在adams和simulink联合仿真而徘徊的xdjm一点启示就行了!
note:这个例子是adams/cotrol自带的,可以在example中找到!
关于下述错误,我找到一个解决方法
Error reported by S-function 'adams_plant' in 'my_ball/adams_sub/ADAMS Plant/S-Function':
error in startup Could not connect to ADAMS server
编辑myball.m文件,将第24行
ADAMS_sysdir = strcat(topdir, '');
替换为第29行
ADAMS_sysdir = '...' ;依各人配置不同,具体路径有所区别改完之后保存即可。