APP下载

基于EasyX的物体运动状态模拟仿真系统分析抛体运动问题

2022-01-19安徽崔北元李德川

教学考试(高考物理) 2021年6期
关键词:小球轨迹物体

安徽 崔北元 李德川

抛体运动知识是高中物理运动学板块的基础内容,也是后续学生研究更为复杂运动的基础。对抛体运动的研究,可以从重力场拓展至电磁场,以提高学生对知识运用的迁移能力。作为高中阶段物理教学核心的知识点,如何能让学生形象直观的理解抛体运动过程是教学的关键。抛体运动过程可以借助理论推导,计算出物体运行的基本规律,也可以借助数值分析软件对物体运动过程进行解析、还可以借助专业仪器,用传感器实时采集物体的状态,记录物体运动过程;通过对抛体过程的理解,我们可以用抛体理论指导实践活动,例如在体育运动中,利用最大速度下的最优化抛射角度提高投掷和跳跃成绩;利用数值仿真预测足球的运行轨迹,分析足球的状态。因此,在高中物理教学中,抛体运动的讲授至关重要。

在物体运动状态的分析中,利用公式可以推导出运动过程中的物体运动规律,数值模拟可以得到物体的运动参数,仿真模拟可实时再现物体的运动过程。传统的书本教学难以用语言、公式和文字描述物体运动的动态过程,现场实验又因物体的运动速度较快无法准确地捕捉运动过程。因此,我们拟采用Visual C++ 6.0对物体的状态进行模拟仿真,用数值、曲线和动画形象地再现物体的运动轨迹。该软件生成的可执行exe文件,不需要安装软件运行环境,可以在常规电脑上运行,可移植性和便携性强。而且,仿真系统可以任意设置物体抛射的初速度、物体的初始高度和物体的抛射角度,并且能显示物体位置的实时参数,将抽象概念具体化,有助于学生逐帧理解和吸收,实现物理过程的高效理解。

1 抛射运动在物理教学中的地位

平抛运动、竖直上抛运动、斜抛运动均属于抛体运动,除了竖直上抛运动只是在竖直方向上有位置的变化,其他两种运动均在水平与竖直两个方向上移动位置。平抛运动:水平方向匀速直线运动,竖直方向上自由落体运动;斜抛运动:水平方向匀速直线运动,竖直方向为竖直上抛运动。这部分运动学知识在课本上主要以实验的形式呈现,通过实验加深学生对运动过程的理解,让学生熟练掌握运动合成与分解的方法和技巧,将复杂运动转化为简单运动进行分析。可见,抛体运动是高中物理运动学中重要的运动类型,居物理教学中核心地位,贯穿整个高中物理学习。

在各个版本的高中物理教材中,对抛体运动的教学思维方式与侧重点在一定层面上不尽相同,但是同样又各有不足之处。人教版中在“质点在平面内的运动”一节中,“运动的合成与分解”并没有明确提出研究物体运动的方法与过程,而对“抛体运动”内容也只是做了运动轨迹的简单阐述,并没有进行深入的剖析与运动过程的深刻描述。沪科版教材中体现了对“运动的合成与分解”的研究方法,并着重强调了运动的轨迹在实际与理想中的差异,更加符合教学思维与教学目的,但是对于物体做曲线运动时速度的方向、运动性质没有进行讲解。鲁科版教材中各个章节相对独立,对于方法的逻辑构架不够明显,在“运动的合成与分解”与“平抛,斜抛运动”之间可以有更多衔接,比如“运动的合成和分解”的研究方法同样适用于抛体运动,而不仅仅局限于相互垂直的方向上。

2 抛体运动学习中的难点

抛体运动是高中物理学习中重要的运动形式,也是历年来考查的重点,从生活的角度出发结合电场、磁场、机械能守恒定律等各个方向来进行考查。不仅要求学生对物理概念熟练掌握,同时还要对数学理论进行深入的了解,比如讨论速度的合成与分解会用到数学向量的相关知识,平抛运动还需要学生具有一定的空间想象能力。因此对抛体运动的教学从各个角度进行剖析十分重要,为之后物体运动问题中的重难点打基础。

2.1 在概念上的理解

抛体运动是一个大类,学生易将抛体运动下意识地认为是平抛运动或者斜抛运动,忽略其他特殊情况,如竖直上抛运动等,因思维定式陷入理解误区。再加上抛体运动是一个全新的概念,学生一时间无法精准了解该定义的内涵,可能与学过的知识混淆,导致后期学习的障碍。

2.2 在运动过程中的理解

由于抛体运动是一种复杂的运动,学生可能会无法将运动正确分解,无法进一步分析。探究抛体运动,主要是通过实验进行理解与分析,实验过程中若处理不当,很有可能产生较大误差导致实验失败。或者实验数据统计后,无法正确处理数据,分析运动的具体过程。总的来说,需要学生们齐心协力、团队合作,设计合适的实验方案,选择合适的实验器材,准确记录、分析数据,以物理思维去思考。

3 Visual C++ 6.0编译系统的引入

在高中物理课本中,进行平抛运动的实验装置有明显不足,一是整个实验过程所用时间很短,用肉眼很难观察到小球的运动,只能通过两小球的落地声判断其是否同时落地,这样会大大增加实验的误差。二是此装置无法准确描绘出小球做平抛运动的运动轨迹,不能直观地呈现在学生面前。所以,我们可以选择一种能够精准展示出抛体运动过程的实验装置,比如Visual C++ 6.0编译系统。此系统能够完全按照人们的意愿设计抛体运动的初始速度、抛出的角度和所在的高度,计算物体的实时位置,模拟运动并展示出运动轨迹,将三维空间运动降维,以便于学生直观地观察与理解。

3.1 系统可视化界面设计

在物体抛体运动状态模拟仿真系统中,我们通过创建C++程序,加载graphics.h头文件,实现对系统矩形框及背景、文本的字体及大小、物体的形状及颜色、实时数据显示等可视化界面的设计。

如图1所示,利用void initgraph (int width,int height)函数,建立一个初始化的绘图窗口。在该窗口中,其坐标像素点共有width×height个,点数分布样式为矩形点阵。在该矩形点阵中,我们利用坐标像素点精确设计文本及框图出现的位置。例如,利用void setfillcolor[RGB(x,y,z)]设置背景颜色,其中x、y和z为0~255之间的数值,通过改变x、y和z的数值,能够得到任意填充颜色;利用void fillrectangle (int left,int top,int right,int bottom)函数画出有边框的填充矩形。当物体形状设置为小球时,利用void fillcircle(intx,inty,int radius)函数画出小球的位置及大小。

图1 可视化界面

利用outtextxy()和sprint()函数实现静态和动态文本显示。在静态文本中,利用outtextxy(intx,inty,"string")在坐标(x,y)处输出特定文本。当需要输出变量的值时,需要利用sprint()函数把变量值转化为字符串,然后输出。输出的文本会一直显示在指定区域,不会自动消失。因此,在动态文本的设计中,我们采用覆盖和再输出的方法实现文本的动态显示。利用填充函数setfillcolor()设定填充色,确保填充色和覆盖区域的背景色一致,实现文本的清除效果;然后,利用文本的再输出,实现动态显示效果。

3.2 系统仿真

利用该系统,改变抛射小球的发射角度、初始高度和初始速度,观察小球的实时数据和运动轨迹。在模拟系统的左边,可以通过点击初始参数按钮,改变小球的初始数据;在模拟系统的右边,显示小球最近一次的实时状态数据,x代表小球的横向位移,y代表小球的纵向位移,t代表小球运动过程中的某一时刻,其中,x和y的值进行取整。

图2给出的是当小球的初始发射角度发生变化时,小球的运动轨迹图。图中小球抛射的初速度为40 m/s、初始高度为0 m、初始角度分别为90°、60°、0°和-60°。当小球初始角度为90°时,模拟的是竖直上抛运动;当小球的初始角度为0°时,模拟小球的平抛运动;当小球的抛射角度为60°时,模拟小球的斜上抛运动;图2右侧的实时数据一栏,给出的是最后一次小球的抛射角度为-60°时,小球的斜下抛运动的实时数据。从这四次小球的运动状态模拟来看,该模拟系统可以模拟小球的抛体运动,实时给出小球的运动数据。

图2 小球的发射角度变化时的运动路线图

图3给出的是当小球的初始速度发生变化时,小球的运动轨迹图。图中小球抛射的角度为60°、初始高度为0 m、初始速度分别为10 m/s、20 m/s、30 m/s和40 m/s。从图中可以看出,小球初始速度越大,小球能达到的高度越高,抛射的水平距离越远。图3右侧给出的是小球抛射速度为40 m/s时的实时数据。

图3 小球的初速度变化时的运动路线图

图4给出的是当小球的初始高度发生变化时,小球的运动轨迹图。图中小球抛射的角度为0°、初始速度为30 m/s。从图中可以看出,当小球的初始高度变化时,只要初始速度和抛射角度不变,小球的运动路线就会完全重合,变化的只是小球所处的高度数值。

图4 小球的初始高度变化时的实时高度数据变化图

4 结语

猜你喜欢

小球轨迹物体
解析几何中的轨迹方程的常用求法
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
轨迹
轨迹
小球进洞了
小球别跑
深刻理解物体的平衡
揭开物体沉浮的秘密
为什么同一物体在世界各地重量不一样?
悬浮的鸡蛋