APP下载

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

2015-11-30撰文DassaultSystemsSolidWorks刘红政宋昂

智能制造 2015年1期
关键词:子弹运动学猎人

撰文/Dassault Systems SolidWorks 刘红政 宋昂

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

撰文/Dassault Systems SolidWorks 刘红政 宋昂

一、概述

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

图1 猎人射猴示意图

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

二、现有的论证方式

1.公式推导

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

图2 运动学示意图

按照猴子的竖直位置,可以列出公式:

该公式简化为:

水平方向可以列出:

由公式(2)和(3)可以得出:

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

2.物理试验

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

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

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

图3 SOLIDWORKS中的简化模型

1.加速度法

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

表 出膛后加速度参数

图4 加速度法

2.线性马达法

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

3.初始速度法

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

图5 线性马达法

图6 初始速度法

当然,这三种方法在S0LIDW0RKS M0TI0N中都需要给定重力环境及3D接触的条件,这里做统一说明。最终,我们都能够在猴子下落的方向,得到子弹与猴子接触的位置,而且也可以使用S0LIDW0RKS M0TI0N的结果图解功能,绘制子弹的跟踪路径,如图7所示。

图7 子弹射杀轨迹

四、结语

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

猜你喜欢

子弹运动学猎人
基于MATLAB的6R机器人逆运动学求解分析
三颗子弹
子弹VS防弹
Karma:让子弹飞一会儿
基于D-H法的5-DOF串并联机床运动学分析
子弹
不听劝告的猎人
基于运动学原理的LBI解模糊算法
怪兽猎人③
双足机器人运动学分析与仿真