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)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的值。

3)

图12 指定输入变量Torque

图10 将输入状态变量Torque与模型关联

指定输入输出变量

点击 ,右键单击Variable Name右边的文本框,如图所示选择Torque。

图11 指定输入变量

点击 ,分别两次右键单击Variable Name右边的文本框,分别选择Angel和Velocity。

图13 指定输出变量

联系合同范文客服:xxxxx#qq.com(#替换为@)