主管单位:农业农村部
主办单位:中国乡镇企业协会
编辑出版:《乡镇企业导报》杂志社
国际标准刊号:ISSN 1006-2203
国内统一刊号:CN 11-3564/F
期刊级别:国家级
语 言:中文
周 期: 月刊
出 版 地:北京市
开 本: 大16开
投稿邮箱 :bianji7@126.com
张敬云
随着开源硬件的广泛应用和不断发展,其与实验教学深度融合,开展数字化实验教学变得更加容易。因为除了计算机,只要再给学生一些通用的传感器、主板,他们便能利用信息化手段、数字化设备自由地创造性地完成一些实验项目,而不再只是单纯地利用配套的资源重复教材中的实验。目前,高中信息技术教材选择的编程语言是Python语言,那么如何开展利用Python给开源硬件编程进行数字化实验的教学呢?Jupyter的应用给我们提供了一种新的思路。笔者认为,基于Jupyter来编写数字化实验的交互式教材进行教学大可一试。
● Jupyter简介
Jupyter这个名字是它要服务的Julia、Python和R三种语言的缩写,但目前能使用的语言Jupyter都支持。Jupyter全称为Jupyter Notebook。它是一款免费、开源的交互式Web工具,它能够让用户将软件代码、运行结果、说明文本和多媒体资源组合在一个易于共享的文档中。换句话说,Jupyter Notebook是以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。
● Jupyter教学优势分析
用Jupyter Notebook进行教学的主要优势如下:
①集各功能于一体,适合实验数据分析。Jupyter Notebook能将所有需要处理的程序、呈现的内容收归一处,还支持导出HTML、Markdown、PDF等多种格式的文档。
②交互式展现。页面结构是以Cell形式组织的,每个Cell都是独立的单元,能够实现文字、图像、表格、程序代码等混排格式。在交互式插件的支持下,它还可以呈现一些互动的可视化内容,如缩放的地图或者旋转的三维模型等。
● 基于Jupyter编写的单摆测重力加速度的实验案例
1.实验说明
单摆测重力加速度是高中阶段的物理实验,该实验对掌握单摆测周期等物理知识有重要的意义。传统物理实验需要借助秒表工具,并通过手动计数以及手动计算来完成,不仅费时费力,而且存在一定的人为误差。因此,笔者利用Arduino和周边的电子模块,制作一个自动化的单摆测重力加速度的实验装置,使用这款装置,无需手动计数及计算便可通过计算机及时得到所需数据。
2.实验目的
学会利用开源硬件及周边电子模块自制实验装置,配合单摆测重力加速度;培养学生实践动手能力。
3.实验原理
单摆在摆角小于5度的震动是简谐运动,其固有周期T=2π√L/g,根据这个公式可以换算出g=4π2L/T2。可见,测出单摆的摆长L和周期T,就可以求出重力加速度。
4.实验方案设计
使用Arduino配合单摆测重力加速度的设计并不复杂。最主要的是让学生在理解单摆实验原理的基础上,确定使用何种传感器检测小球,从而开始自动计时及记录单摆摆动的次数。综合考虑实验目的及课堂时间,笔者设计了如上表所示的实验方案。
5.硬件搭建
红外数字避障传感器也称红外接近开关,是一种集发射与接收于一体的光电开关传感器。传感器在接收到信号后,会引起后侧指示灯的亮灭。这款传感器背面有一个电位器,可以根据需要调节障碍的检测距离。当探头前方无障碍时,红外数字避障传感器输出高电平,有障碍时则相反。
硬件搭建的实物图略,接线图如下图所示,本实验将红外数字避障传感器接在了8号数字针脚。
6.编写程序
程序编写需解决两个问题:一是要记录单摆来回摆动的次数和时间;二是根据检测到的次数和时间计算单摆的周期,从而计算重力加速度的值并输出。由于单摆刚开始摆动时不是很稳定,所以有必要略过前几次摆动的次数及时间,这里笔者从单摆摆动的第三次开始计时和计数。测出需要的摆动次数和时间后,就可用总时间除以总次数求出单摆的周期,进而计算重力加速度的值。需要注意的是,每次传感器检测到小球经过最低点时,是经过了半个周期,因此,在计算单摆周期时,需将次数除以2,具体程序扫描下方二维码。(摆长=摆线长+小球半径,本实验摆长L设为1米)。
7.效果测试
运行程序,等待计算机与Arduino通过串口完成通信连接。然后释放小球,待红外避障传感器第63次检测到小球时,周期及重力加速度的值便自动输出,本次实验测试的结果约为9.8与实际数值完全一样,运行结果扫描下方二维码。
● 数字化实验的交互式教材设计
物理、化学、生物等学科的实验项目很多,拿物理学科来讲,可以利用红外避障传感器测单摆周期及重力加速度,利用声音传感器探究噪声的波形,利用光线传感器探究不同物质的透光性能等。
利用开源软件和开源硬件中的各类传感器進行实验教学,不仅加强了学生实验探究和工程实践的结合,同时也激发了学生的创造性思维,提升了学生数字化学习能力和科学素养。这是进行数字化实验教学的一种新的尝试,本文主要对物理实验做了研究,我们期待更多不同学科的教师能够参与其中。
参考文献:
[1]刘征,郭君红.探究Jupyter Notebook编程工具在项目式学习中的应用[J].教育科技应用,2020(07):29-33.
[2]吴建惠,黄凯宇.基于arduino开源项目的自主开发物理数字化实验室[J].中学物理,2017(10):29-31.
本文由: 乡镇企业导报杂志社编辑部整理发布,如需转载,请注明来源。
乡镇企业导报杂志社编辑部
2021/12/22