madymo操作实例

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Example

Basketball game

目标:测试

创建文件:Playing Basketball

参考坐标系

图1 投篮模型

模型设置:

模拟投篮过程,需要创建手臂模型、地面模型、篮球模型、篮球架模型。其中,要求将篮板建成多面体。

第一部分:一般输入

在CONTROL_ANALYSIS.TIME中,将仿真时间设为2.0秒。

第二部分:地面模型

建立一个参考空间(SYSTEM.SPACE),然后在其中建立一个平面来代表地面(SURFACE.PLANE),平面定义在xy面内,其坐标如下:

第三部分:手臂模型

图2 手臂模型

1. 创建一个新的系统(SYSTEM.MODEL )作为手臂,其中创建3个体(BODY .RIGID ),

分别代表上臂,前臂和手。

2.使用旋转铰将体1和参考空间连接起来,用第二个旋转铰将体2和体1连接起来,用第三个旋转铰将体3和体2连接起来。位置要求如图2所示。

使用ORIENTION.xxx 元素来转动坐标系,以保证铰的转动方向(在图2中,旋转轴应

垂直于纸面,即y轴)。旋转铰的初始旋转轴为x轴,需沿z轴转90°。

3.为上臂创建一个椭球,半轴分别为0.04m,0.04m,0.15m;为前臂创建一个椭球,半轴分别为0.035m,0.035m,0.13m;为手创建一个椭球,半轴为0.04m,0.02m,0.08m。

4.初始条件

(1)使用INTIAL.JOINT_POS为旋转铰1定义初始角度为135°,使用INTIAL.JOINT_STATUS将旋转铰1的状态定义为LOCK。

(2)使用INTIAL.JOINT_POS和INTIAL.JOINT_VEL为旋转铰2定义初始角度为70°,初始角速度为-11rad/s。

(3)为旋转铰3定义初始角度为43°,初始角速度为-11rad/s。

设定初始条件前:设定初始条件后:

5.铰的刚度

为手臂上的铰加入如下刚度特性:

ArmUp_ArmLow_jnt ArmLow_Hand_jnt

x f(x) x f(x)

-0.01 -10.0 -1.57 -5.0

0.0 0.0 0.0 0.0

0.5 5.0 1.57 5.0

1.57 10.0

使用迟滞模型1,迟滞斜率为1e5,阻尼系数为1

第四部分:球体模型

1.建立一个系统模型SYSTEM.MODEL,用来代表篮球。

2.球的质量为0.65kg,转动惯量为0.4 0.4 0.4 0.0 0.0 0.0,半径为0.123m。

3.根据手臂的初始位置设置球的位置,这里在自由铰中设置:

4.为椭球定义接触特性,使用接触力特性(CONTACT_MODEL FORCE),定义加载曲线为:

x f(x)

0.0 0.0

0.01 1000

0.02 10000

0.03 100000

第五部分:篮球架模型

1.创建一个新的系统作为篮球架,在其中创建一个体。该系统包括篮圈、篮板以及连接篮圈和篮板的梁,三部分都建在该体的坐标系下。

2.使用自由铰将体与参考空间连接起来,位置要求如下:

使用INTIAL.JOINT_STATUS将自由铰的状态定义为LOCK。

3.篮圈

篮圈的半径定义为225mm,由12个大小相同的椭球组成,半轴分别为0.01m,0.07m,0.01m。

创建方法:

如图3所示(图中长度单位为mm),半径为225mm的圆(黑色虚线),内接正十二边形(品红色实线),需要创建椭球1,2,…,11,12(蓝色实线)。

x

y

图3 篮圈简图

以椭球1,2,3为例。

根据图中几何关系,计算得椭球1的中心点A的坐标为(-217.3,-58.2,0),椭球2的中心点B的坐标为(-159.1,-159.1,0),椭球3的中心点C的坐标为(-58.2,-217.3,0)。

(1)首先以A,B,C为中心创建椭球(SURFACE.ELLIPSOID),创建后如图3中红色实线椭圆所示。

(2)然后使用ORIENTATION.SUCCESSIVE_ROT分别将椭球1绕z轴旋转15°,椭球2绕z轴旋转45°,椭球3绕z轴旋转75°。

按照上面的步骤,创建椭球4,5,…,11,12。

4.连接篮圈与篮板的梁

创建两个椭球代表两根梁,椭球的半轴分别为0.05m,0.01m,0.01m,坐标位置如下:

5.篮板

(1)根据篮圈和梁的位置,确定篮板的位置,篮板长为1.8m,宽为1.0m。建立一个平面来代表篮板(SURFACE.PLAN),平面定义在yz面内,其坐标如下:

(2)使用菜单栏Tools下的Mesh Surface…将篮板转换为多面体。其中Mesh density设置为Fine。

第六部分:加入重力

使用LOAD.BODY_ACC给所有的系统施加重力场。

第七部分:接触定义

1.分别定义篮球和手、篮球和篮圈、篮球和篮板以及篮球和地面的接触。需要分别建立篮球、篮圈、手、地面的GROUP_MB以及篮板的GROUP_FE(Ball_gmb、Basket_gmb,Hand_gmb,Ground_gmb,backboard_gfe)。

2.对于篮球与篮板的接触,选择篮板作为接触的SLAVE_SURFACE,篮球作为接触的

MASTER_SURFACE。

3.对于篮球和篮板的接触,接触类型选择MASTER,定义一个摩擦系数的函数,如下图所示:

运行模型

在运行模型之前,完成一次空运行,检查模型中有限元的时间步长,在reprint文件中检查有限元模型的子循环数是不是1。

进一步练习

尝试在三分线投篮(三分线相对篮筐距离为6.25米),同时通过改变铰的刚度、摩擦系数、初速度等,观察球的运动有什么不同,并且将篮球投进。

相关文档
最新文档