1、ADAMS与Matlab联合仿真例子7.1 ADAMS/Controls使用实例本实例以MATLAB作为外部控制程序,以偏心连杆模型为例,讲解ADAMS与MATLAB的联合仿真过程。主要包括创建机械系统模型、模型参数设置、建立MATLAB控制模型以及结果后处理四个步骤。机械模型建立、模型参数设置这两步为了导出一个可在MATLAB软件Simulink中使用的模块,这个模块包含了所建立ADAMS模型的信息参数,并有输入输出接口。利用这个模块在MALTAB中建立控制系统,就可以控制ADAMS模型,在仿真结束后,可以直接在MATLAB中得到所需的数据结果进行后处理。 偏心连杆的形心与大地以铰链相连,连
2、杆可以绕着铰链转动。连杆右端连接有一个小球,由于小球的存在,使整个机构的质心与形心不重合,若在连杆左端没有力矩作用,连杆将做顺时针运动。本例通过测量连杆运动的角速度、角度,对左端力矩的大小进行不断控制,最终使连杆相对平衡,即其角速度为零。 图 7-22 偏心连杆 模型以将下联TLABMA详细介绍联合仿真的详细步骤。通过本实例的学习,能够详细了解ADAMS软件与 合控制的使用方法。 创建机械系统模型7.2.1 、设置单位 1 】UnitsSettings】【选择菜单栏选择新模型,启动ADAMS/View,在模型名输入MODEL_1。【7-23长度和力的单位设置成毫米和牛顿,如图,命令,设置模型物
3、理量单位,将单位设置成MMKS 所示: 图7-23设置模型物理量单位 2、创建连杆 单击几何工具包中的连杆按钮,将连杆参数设置为Length=400,Width=20,Depth=20,然后在图形区水平拖动鼠标,创建一个连杆,如图7-24。 7-24创建连杆图 3、创建旋转副,单Normal to gird单击运动副工具包中的旋转副按钮,将旋转副的参数设置为1 Location和 7-25所示。Marker击连杆质心处的点,将连杆和大地关联起来,如图 图7-25创建旋转副 4、创建球体 单击几何工具包中的球体按钮,将球体的选项设置为Add to Part,半径设置为20,然后在图形区单击连杆,
4、再单击连杆右侧处的Marker点,将球体加入到连杆上,如图7-26所示。此时连杆的质心产生了移动。 图7-26创建球体 5、创建单分量力矩 单击载荷工具包中的单分量力矩按钮,将单分量力矩的选项设置为Space Fixed和Normal to Grid,将Characteristic设置为Constant,勾选Torque并输入0,然后在图形区单击连杆,再单击 所示。7-27点,在连杆上创建一个单分量力矩,如图Marker连杆左侧的 7-27创建单分量力矩图 至此,偏心连杆模型已经建好。 7.2.2 模型参数设置 1、创建输入状态变量,弹出创建状态变量】ariable】【NewBuild单击菜单
5、【】【System Elements】【State V为变为文件名,Torque(输入框改成. MODEL_1.Torque MODEL_1,将对话框。如图7-28Name 作为输入变量。OK。单击按钮后创建状态变量Torque量名) Torque 7-28图创建输入变量 、将状态变量与模型关联3在图形区双击单分量力矩的图标,打开编辑对话框,如图7-28所示,在Function输入框中输入VARVAL(.MODEL_1.Torque) ,这里VARVAL()是一个ADAMS函数,它返回变量.MODEL_1.Torque的值。通过函数把状态变量Torque与力矩关联起来,力矩取值将来自于状态变量
6、Torque。 图7-28 编辑单分量力矩对话框 4、指定状态变量Torque为输入变量 单击菜单【Build】【Controls Toolkit】【Plant Input】后,弹出定义控制输入对话框,如图7-29所示。将Plant Input Name 输入框改成.MODEL_1.PINPUT_Torque, 在Variable Name输入框中,用鼠标右键快捷菜单输入状态变量.MODEL_1.Torque,单击OK按钮。 图7-29 定义控制输入对话框 5、创建输出状态变量 单击菜单【Build】【System Elements】【State Variable】【New】,弹出创建状态变量
7、对话框。如图7-30所示,将Name输入框修改成.MODEL_1. Angle,在F(time,)=输入框中输入作为第一个输Angle按钮创建状态变量Apply,单击AZ(MARKER_3,MARKER_4)*180/PI表达式出变量,然后将Name修改成.MODEL_1. Velocity,在F(time,)=输入框中输入表达式WZ(MARKER_3,MARKER_4)*180/PI,如图7-31所示。其中AZ()函数返回绕Z轴旋转的转角,这里代表连杆相对于转轴的转角,WZ()函数返回绕Z轴旋转的角速度,这里代表连杆的角速度。 Velocity 创建输出变量 图7-31 7-30 创建输出变
8、量Angle 图 为输出变量、指定状态变量angle、6Velocity】后,弹出创建控制输出对话框,如Plant Output】【Controls Tookit】【单击菜单【Build输。在Variable Name 7-32图所示。将Plant Output Name输入框修改成. MODEL_1.PINPUT_output ,单击OK按钮。入框中,用鼠标右键快捷菜单输入状态变量Angel和Velocity 创建控制输出对话框图7-32 、导出控制参数7,在弹出的】【Plugin Manager】如果还没有加载ADAMS/Controls模块,单击菜单【Tools。按钮,之后出现一个新的菜
9、单Controls插件管理对话框中选择ADAMS/Controls模块,并单击OKFile Prefix在,】弹出导出控制参数对话框,如图7-33所示。】单击菜单【Controls【Plant ExportPlant Torque,在输入框中用鼠标右键快捷菜单输入controlspid输入框中输入,在Plant InputPINPUT_,MA.PINPUT_output输入框中用鼠标右键快捷菜单输入,将Control package选择为TLABOutput单击。Fortran选择为NO,ADAMS/Solver Choice选择Initial Static Analysis,non_line
10、ar选择为TypeOK按钮后,在ADAMS的工作目录下将生成controlspid.m、 controlspid.cmd、controlspid.adm这3个文件。 图7-33 导出控制参数对话框 7.2.3 建立MATLAB控制模型 1、导出ADAMS模型在MATLAB里的模块 启动MATLAB ,先将MATLAB的工作目录指向ADAMS的工作目录,方法是单击工作栏中 后的按钮,弹出选择路径对话框。在MATLAB命令窗口的Current Direction提示符下,输入controlspid,也就是controlspid.m的文件名,然后在提示符下输入命令ADAMS_sys ,该命令是ADA
11、MS与MATLAB的接口命令。在输入ADAMS_sys命令后,弹出一个新的窗口,该窗口是MATLAB/Simulink的选择窗口,其中S-Function方框表示ADAMS模型的非线性模型,即进行动力学计算的模型,State-Space表示ADAMS模型的线性化模型,在ADAMS_sub包含有非线性方程,也包含许多有用的变量。 、建立控制方案2在MATLAB/Simulink选择窗口中,单击菜单【File】【New】【Model】后,弹出一个新的窗口,单击工具栏中的保存按钮,将新窗口存盘为control_model.mdl(不能与.m文件同名),将ADAMS_sub方框拖拽到control_m
12、odel.mdl窗口中,并参考图7-34完成控制系统的搭建,也可采用其他的控制方案。 连接后的控制方案图7-34 之间的数据交换参数与ADAMS3、设置MATLAB击中双新的窗口ADAMS_sub方框,在弹出的击在control_model.mdl窗口中双,如果不是在设置为PIPE(DDE) MSCSDoftware,弹出数据交换参数设置对话框,将Interprocess在,表示每隔0.005sCommunication Interval输入框中输入0.005一台计算机上,选择TCP/IP,将Simulation 之间进行一次数据交换,若仿真过慢,可以适当改大该参数,将和MATLABADAMS
13、,表示交互式计算,在计算过程中会interactiveAnimation mode设置成Mode设置为continuous,则用批处理的形式,看不到仿batch自动启动ADAMS/View,以便观察仿真动画,如果设置成 真动画,其他使用默认设置即可。 仿真设置和仿真计算。4Solver弹出仿真设置对话框,在】,单击窗口中菜单【Simulation】【Simulation Parameters其他使设置为Variable-step, 将Type20设置为0, 将Stop time设置为,Start time页中将即可。每MATLABOK按钮。最后单击开始按钮,开始仿真。(若出现错误,重启用默认选项,单击的文件夹,controlspid.admcontrolspid.cmd、都需要选择路径到包含次启动MATLABcontrolspid.m、 。TLAB的接口命令)ADAMS)controlspid(.m文件名和ADAMS_sys(与MA并输入 7.2.4 结果后处理变变量曲线和VelocityTorque示波器中,可以得到角度和力矩的曲线。得到的在 MATLAB所示。此模型初始受重力作用,产生转动,通过控制力矩的大小,7-36和图7-35量曲线分别如图最终角速度为零,模型达到平衡。 Velocity随时间的变化 图7-35 变量 随时间的变化Torque变量7-36 图
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1