adams.doc_第1页
adams.doc_第2页
adams.doc_第3页
adams.doc_第4页
adams.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第四章:为被控对象的输出建立ADAMS模型本章主要内容:为Plant Export建立模型的步骤ADAMS变量的类型建立输入状态变量建立输出状态变量建立被控对象的输入与输出在被控对象的输入或输出中状态变量的顺序为Plant Export指定被控对象的输入输出练习二:建立状态变量为Plant Export建立模型的步骤为了输出被控对象的模型,必须定义被控对象的输入输出。按照下面的步骤去做:1 建立状态变量,而这些状态变量就是被控对象的输入输出。2 建立Plant Inputs和Plant Outputs,它们中都包含了第一步建立的状态变量。3 在ADAMS/Controls下的Plant Export对话框中输入专门的Plant Inputs和Plant Outputs,就可以输出被控对象文件。ADAMS PlantPlant InputPlant Output 都包含一系列的状态变量ADAMS中的变量类型ADAMS/Solver变量ADAMS/View变量说明真正的状态变量,其值在每一步仿真中都要计算。ADAMS/Solver变量的值可以是在ADAMS function builder中创建的任何函数。只是一个预处理的实体。它仅仅是对于要素参数值的一个位置占有者。当生成一个.adm文件时,这些实体将被评估并被看作是数值而输入到Solver数据表中。ADAMS/View变量可以是在ADAMS expression builder中创建的任何表达式。续ADAMS/Solver变量ADAMS/View变量别名ADAMS/Variable(在A/View database navigator中)State Variable(在A/View菜单build下的system elements中)VARIABLE(在ADAMS/Solver的数据表中)Variable(在A/View database navigator中)Design Variable(在A/View菜单build下的system elements中)建立输入状态变量输入变量建立状态变量以控制输入。设置 function=0(通常)如果要进行初始静态仿真,则要设置初始值将输入状态变量赋值给激励者使用VARVAL函数将定义被控对象输入的状态变量赋值给模型中的激励者(例如:力)。建立输出状态变量建立正确的运行时间表达式,向CSS提供一个输出。例如:方位角,仰角创建Plant Input 和Plant Outputs在ADAMS模型中创建Plant Inputs 和Plant Outputs,为ADAMS被控对象提供输入和输出。为ADAMS被控对象指定一个Plant Inputs 和一个Plant Outputs,他们可以包含多个变量。ADAMS PlantPlant InputPlant Output 都包含一系列的状态变量在Plant Input/Output基本要素中状态变量的顺序在Plant Input/Output基本要素中状态变量的顺序非常重要,因为它决定了在CSS中必须定义的变量顺序。为Plant Export指定被控对象的输入输出只要创建了Plant Inputs和Plant Outputs,就把它们引入Plant Export对话框中。使用plant inputs 和outputs代替状态变量,允许用户更直接的编辑被控对象的输入及输出(例如:对于数量众多的状态变量,使用Plant Input/Output就能编辑,而用不着在Plant Export对话框中一个一个的输入)。练习二:建立状态变量及Plant Inputs/Outputs在本次练习中,将建立一个模型控制球在平衡装置上的位置。因此,需要为这个ball_beam模型的非线性输出,创建状态变量及一个plant input和 plant output(下面就是一般步骤,若要精确步骤请查看附录)。1 从ADAMS/Controls中打开Workshop2-General文件夹中的ball_beam.cmd文件。2 对球和横板模型进行10秒200步的仿真球会从板上掉下来,因为横板有一个初始速度。 我们将试图通过控制一个加在横板上的力矩,而让球平衡在横板中心外的某一点上。3 创建3个状态变量,他们将用于被控对象(这个机械系统)的通信。由于你将要使ADAMS模型与现有的控制系统兼容,所以要使用下面的3个状态变量名: Beam_Angle Position Torque_In 4 这3个变量中有2个是被控对象的输出,按照下面的函数定义变量: Beam_Angle=在前视图中横板的w.r.t.水平角度:AZ(.ball_beam.beam.cm) Position=球的质心沿着横板上表面的位置,初始值为0,其值向右增长:DX(.ball_beam.ball.cm, ball_beam.beam.ref, ball_beam.beam.ref)5 对模型再次进行10秒200步的仿真,然后在PostProcessor查看Beam_Angle和Position变量的值看上去是否正确。6 给Torque_In状态变量指定一个值(例如,torque=5)。下一步将要把这个值与加在横板上力矩连建立联系。7 让横板上的力矩(Sforce SFO)从状态变量Torque_In上得到它的值。在Sforce的函数定义中使用VARVAL()便可达到目的。8 对系统进行仿真,横板将在提供的力矩作用下旋转。在状态变量中改变力矩的值并再次仿真,确认变量值被力矩SFO1获得。9 依次打开Build System Elements State Variable Modify,将状态变量Torque_In的值改回到零。10 Build Controls Toolkit Plant Input,创建一个Plant Input。 Plant Input Name: MDI_PINPUT Variable Name: Torque_In11 Build Controls Toolkit Plant Output,创建一个Plant Output。 Plant Output Name: MDI_POUTPUT Variable Name: Beam_Angle, Position 注意:看你的输出中变量顺序是否正确(它们必须和现有的控制模同步)。12 输出被控对象,使用Controls Plant Export File Prefix = ball_test Plant Input = MDI_PINPUT Plant Output = MDI_POUTPUT Control Package = MATLAB13 打开MATLAB。14 键入ball_test 我们刚刚从ADAMS中输出的.m文件这将创建在MATLAB中所需要的状态变量。15 键入adams_sys这个将创建一个plant,你能够在MATLAB中使用它。16 选择FileOpen,打开ball_beam.mdl。这将打开预先做好的MATLAB控制示意图。从adams_sys中将plant复制到这个ball beam控制模型中。现在,在你使用MATLAB仿真这个结合的控制/机械系统前,先设置仿真环境:17 设置仿真参数(Simulation Simulation Parameters): End time=4秒Solver=ode15s(stiff integrator)接下来,设置ADAMS plant属性18 双击Mechanical Dynamics模块。19 设置Output files的前缀名为ball_results 注意:确认有引号()20 设置simulation mode为 discrete21 设置animation mode 为interactive22 选择ok保存23 对含有ADAMS模块的控制系统进行仿真SimulationStart24 在M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论