猎人射猴问题在运动仿真中的实现

  • 投稿答完
  • 更新时间2015-09-17
  • 阅读量340次
  • 评分4
  • 90
  • 0

撰文/Dassault Systems SolidWorks 刘红政 宋昂

一、概述

猎人射猴是一个古老的命题:猎人在瞄准猴子扣动扳机的同时,猴子受到惊吓从树上自由下落,猴子是否会被射中(如图1 所示)?

有人认为子弹出膛后在空中会飞行一段时间,无法射中猴子,因此猴子会幸免于难。当然,也有很多人论证了猴子会被子弹射中。下面我们通过多种方式来更深入地解读这个问题。

二、现有的论证方式

1. 公式推导

我们先画出简化的运动学示意图,如图2 所示。

因此,只要子弹可以在猴子掉落到地面之前飞行R 距离,猴子就一定会被猎人射杀。当然,这是以猎人的视角求解所得结果。如果以猴子的视角看待这个问题,则所列公式会有所区别,但得到的结论是一致的。

2. 物理试验

很多高校的教授也在各种场合验证了猎人射猴的问题, 如MIT 的著名教授Walter Lewin 在公开课上的实验( 详见视频https://www.youtube.com/watch?v=ej1paFRZUS0; 台湾大学周祥顺教授所做的实验, 见视频https://www.youtube.com/watch?v=BCkVY1PJwDQ)。这些实验得到了和理论一致的结果。

三、使用SOLIDWORKS MOTION 进行猎人射猴的仿真

首先,我们在SOLIDWORKS MOTION 中建立一个简化的模型,使用球体代表猴子,使用圆柱椎体代表子弹(图3)。下面我们通过设置不同的运动边界条件,来模拟这个问题。

1. 加速度法

模拟子弹在枪膛中先做直线加速运动,出膛后在重力作用下做抛物线运动,如图4 所示。可以按照表中给出的参数给定加速度大小及经历的时间。

2. 线性马达法

模拟子弹沿瞄准线做线性等速运动,指定子弹运行的初始方向及速度,如图5 所示。

3. 初始速度法

设置子弹的初始速度,指定方向及速度大小,如图6 所示。

当然,这三种方法在SOLIDWORKS MOTION 中都需要给定重力环境及3D 接触的条件,这里做统一说明。

最终,我们都能够在猴子下落的方向,得到子弹与猴子接触的位置,而且也可以使用SOLIDWORKS MOTION的结果图解功能,绘制子弹的跟踪路径,如图7 所示。

四、结语

本文通过使用SOLIDWORKS MOTION 的运动仿真功能,验证了猎人射猴这一经典运动学案例。在软件中尝试了不同的运动学边界条件,都可以得到相同的计算结果。使用SOLIDWORKS MOTION 进行运动学仿真,具有很好的操作界面,并能生成可视化的动画及图解。学校老师在介绍这一案例时,也可以尝试使用SOLIDWORKS MOTION 这一工具,为学生带来更多的物理体验。