您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > adams_matlab联合仿真
LearningMSC.ADAMS/ControlswithMATLAB1、基于Matlab的控制系统设计简介2、ADAMS/Controls控制系统设计流程3、例子——双杆的控制系统设计4、例子——倒立单摆的控制系统设计基于Matlab的控制系统设计例:以二阶线性传递函数为被控对象,进行PID控制。sssG25133)(2Simulink方式:G(xG,yG)mLxVH例:倒立单摆的PID控制系统设计设摆杆偏离垂直直线的角度:摆杆重心的坐标:),(GGyx则有:cossinlylxxGG根据牛顿定律:建立水平和垂直运动状态方程:摆杆围绕其重心的转动运动方程:cossinHlVlI其中:I摆杆围绕其重心的转动惯量摆杆重心的水平运动方程:Hdtlxdm22)sin(摆杆重心的垂直运动方程:mgVdtldm22cosHudtxdm22小车的水平运动方程:假设很小1cos,sin则以上各式变为:HuxMmgVHlxmHlVlI0)(由此,得单级倒立摆的方程:uMmllmMmllMmllmMglmxuMmllmMmlMmllmMglMmm2222222)()()()()(取:单级倒立摆的摆角单级倒立摆的摆速小车位置小车速度)1(x)2(xxx)3(xx)4(则建立倒立单摆的状态方程为:BuAxx其中,0001000000001021ttA4300ttB22423222221)()()(,)()(MmlImMmlItMmlImMmgltMmlImMglmtMmlImMglMmmtM-文件方式的matlab控制系统仿真02468101214161820-0.200.2time(s)Angle02468101214161820-0.500.51time(s)Anglerate02468101214161820-0.500.5time(s)Cartposition02468101214161820-0.500.5time(s)CartrateADAMS/Controls控制系统设计流程DesignProcessBeforeADAMS/ControlsImprovedDesignProcesswithADAMS/Controls基于ADAMS的控制系统设计的二个途径:基于ADAMS/View中的ControlsToolkit:针对具有复杂控制装置的机械系统针对一般的控制环节基于控制系统软件(MATLAB、EASY5或MATRIX):ADAMS/Controls的应用ADAMS/Controls的设计流程确定ADAMS的输入和输出变量,生成对象/过程模型建立控制系统模块模型的仿真建立机械系统的ADAMS模型天线模型的控制系统MSC.ADAMS模型的导入ADAMS/Controls的载入MSC.ADAMS天线模型仿真MSC.ADAMS模型的导入1、打开ADAMS。2、选择文件输入。3、选择模型所在目录,OK。4、在文件输入窗口,击右键,选择“Browse”,并选择文件:antenna.cmd。ADAMS/Controls的载入操作:ADAMS/View=Tools=PluginManger:选择Loadcheckbox=ControlsADAMS天线模型的介绍方位角马达通过旋转副约束与大地相连;减速齿轮通过旋转副约束与大地相连;圆盘通过旋转副约束与大地相连;高位轴承通过固定副约束与天线支撑相连;天线通过旋转副约束与高位轴承相连。天线支撑通过固定副约束与圆盘相连;天线模型的分析失效驱动下的试验仿真操作:Edit选择Deactivate=弹出数据导航表=双击模型main_olt=选择azimuth_motion_csd=OKADAMS/CONTROLS将“azimuth_motion_csd”失效。运行天线模型。确定ADAMS对象的输入输出校验输入变量和输入函数校验输出变量和输出函数MSC.ADAMS控制对象文件的产生核实MSC.ADAMS对象的输入与输出流程输入变量定义与修正选择BuildSystemElementsStateVariableModify双击main_olt,选择“control_torque”,按“ok”选择BuildSystemElementsStateVariableNew定义修正确定输入函数选择EditModify数据导航器双击main_olt,选择“azimuth_actuator”OKVARVAL(id):变量函数,返回状态变量的当前值。确定输出函数天线的机械系统向控制系统输出的两个信号:天线的方位角:azimuth_position;马达转速:rotor_velocity。BuildSystemElementsStateVariableModify数据库浏览器;双击main_olt显示ADAMS/VIEW变量表选择azimuth_posistionOK;显示修改状态变量对话框:方位角变量表达式定义为:AZ(.main_olt.bearings.MAR70,.main_olt.ground.MAR.26)其中,函数AZ(ToMarker,FromMarker):返回环绕Z轴旋转的转角马达转速变量rotor_velocity:函数WZ(ToMarker,FromMarker,AboutMarker):返回两标架角速度矢量差在Z轴旋转的分量。控制对象的生成:ControlPlantexport:在Plantinput栏按右键选择plantinputcreate完成以上过程,构建的模型已经成功的转为MATLAB可以读取的形式,包括:文件名.adm文件名.cmd文件名.m控制系统设计LoadADAMS变量产生Simulink模块在Matlab工作窗口下:whoADAMS_forcesADAMS_inputsADAMS_jointsADAMS_outputsADAMS_prefixADAMS_sysdirADAMS_uy_idsADAMS_modeADAMS_utidir产生Simulink模块在MATLAB中输入”adams_sys”会产生如下的窗口:S-Function:实现非线性MSC.ADAMS模型的Adams_sub包括s-function和其他变量State-Space是线性化的MSC.ADAMS的模型。OutputFilePrefix:设置文件名,生成仿真分析结果:仿真结果文件:*.res仿真要求文件:*.req仿真图形文件:*.gra仿真分析模式:Discrete/continuous动画显示:interactive初始化方式:ADAMS_init构造控制系统仿真过程在ADAMS中的重现:范例:构建机械手臂模型建立测量用传感器在JOINT1上按右键选择measure如下:创建扭矩ADAMS/Controls控制模型输出建立输入变量重复,建立扭矩2:Torque2建立扭矩与变量的联系模型输出:选择controlplantexportMatlab控制ADAMS变量的载入Simulink模块的生成Matlab窗口下:adams_sys设计简单PID控制器
本文标题:adams_matlab联合仿真
链接地址:https://www.777doc.com/doc-5528579 .html