基于Arduino的声速测量装置

Ardu简介

Ardu控制板是一款开源的硬件电路制作平台。一块ArduUNO板只有一张信用卡般大小,也没有显示器,而且价格低廉,Ardu就如同一台微型计算机[]。

Ardu板虽小,其功能却不容小觑。Ardu板上包含了微控制器和相关电路。微控制器在我们的生活中几乎无处不在,它让我们周围的设备更加智能,小区的门禁系统以及家里的冰箱、洗衣机、空调等设备的自动化控制都用到了微控制器。

如今,越来越多的人用Ardu制作机器人、创作交互艺术、控制3D打印机[2]。不仅如此,我们还可以借助Ardu设计实验装置用于科学探究[3]。Ardu应用——自制声音测量装置

测量声音在空气中传播速度的方法有很多,在实验室中常用的有驻波法、相位法等,但这些方法对实验操作者的理论要求和实验操作要求均较高,借助Ardu与声音传感器,我们可以轻松自制实验装置测量声音在空气中的传播速度。

实验材料

实验所需材料为ArduUNO个、IO扩展板个、模拟声音传感器2个和触摸传感器个。需要特别说明的是,所使用的声音传感器模块是能够检测模拟量的声音传感器模块。

2实验方案

将两个声音传感器模块通过IO扩展板分别连接到ArduUNO的模拟输入引脚A脚与A2脚上。为便于区分,我们将连接在A脚的声音传感器称之为声音传感器;将连接在A2脚的声音传感器称之为声音传感器2;将触摸传感器模块连接在数字输入引脚3号脚上,用于对程序进行控制。之所以选择触摸传感器而不是按键,是为了避免操作按键时发出的声音对测量产生干扰。装置如图所示。

声音传感器与声音传感器2相距为d,且同向放置在一条直线上。声音传感器离声源较近,声音传感器2离声源较远。在声音传感器的正前方制造声音。当发出的声音被声音传感器接收到时,Ardu记录下此时的系统运行时间t;当声音被声音传感器2接收到时,Ardu记录下此时的系统运行时间t2;那么声音从声音传感器处传播到声音传感器2处所用的时间t=t2-t,由v=即可计算出声音在空气中的传播速度。

声音传感器与声音传感器2之间的距离d由实际测量所得。我们可以通过串口将d的测量值发送给Ardu,在Mxly编程软件中编写函数模块t_dst,如图2所示。

我们实验的环境中难免存在一些环境噪音,为了避免环境噪音对测量的影响,我们需要确定Ardu接收到多大的音量值才算检测到被测声音而不是环境噪音。因此,我们需要采集环境中的噪声音量最大值,多次测量,分别获得声音传感器与声音传感器2采集到的环境噪声音量最大值x和x2。若实验时声音传感器与声音传感器2分别采集到的音量值大于x和x2,则表示被测声音已到达相应的声音传感器所处的位置。编写背景噪声音量测试函数vlu_tst,如图3所示。

变量声明中,变量stt用来储存检测状态,值为0表示“声音检测中”,值为表示“检测结束”。

编写主程序如图4所示。程序将实现:Ardu启动时,操作者可向Ardu发送两声音传感器间的距离数据,单位为“米”;接下来,装置会检测环境噪声最大音量值;环境噪声检测结束后,操作者在声音传感器的正前方制造声音,Ardu根据测量到的数据计算出声速并在串口监視器中打印出来。测量完成之后,轻触触摸传感器,系统再次进入测量状态。若需更改声音传感器间的距离值,重启Ardu即可再次上传距离d的值。

3测量声音速度

当Ardu启动时,串口监视器中显示“Plsputthdst:”。如实际测得两声音传感器之间的距离为090米,将距离数据090通过串口监视器发送给Ardu。

串口监视器中显示“Tst”时,表示正在进行环境噪声最大值的检测。当串口监视器中显示“Msur”时,声速测量开始,在声音传感器的正前方通过拍手制造一短促的声音,串口监视器中随即打印出声音在声音传感器与声音传感器2之间传播的时间t与计算所得的声速数据,然后显示“D!”表示测量完成。如图5所示,本次测得的声音在空气中的传播速度是34938/s。

4总结讨论

该实验应在安静的环境条件下进行,以减小环境噪声的干扰。由于声音在空气中的传播速度受气温、湿度、气压影响较大,故测得的数据是特定环境条件下的声速数据,那么环境条件的记录是很重要的,下一步的改进中还可以为装置添加监测环境条件的相关传感器。由于声音在传播过程中音量会发声衰减,实际上被测声音到达不同声音传感器处时对程序的触发能力是不同的。为了减小因此而造成的系统误差,一是制造的被测声音要尽可能地短促响亮;二是在保证传感器能接收到较远的声音前提下,两个声音传感器之间的距离应适当远一些,当然还可以考虑从程序算法上进行优化。

该装置简化了声速测量的过程,为声速的测量在方法上提供了更多的可能,同时也体现了Ardu与声音传感器在科学探究实验中的应用价值。

参考文献

[]MssBz,MhlShlh程晨译爱上Ardu[M]北京:人民邮电出版社,206

[2]JhBxll翁恺译动手玩转Ardu[M]北京:人民邮电出版社,204

[3]贾皓云用Ardu研究自由落体运动[J]无线电,207()

文章来源于:中小学信息技术教育

浏览次数:  更新时间:2018-05-07 10:49:45
上一篇:信息化建设促进学校特色教育发展
下一篇:高中新课程方案和标准2018年秋季起开始执行
网友评论《基于Arduino的声速测量装置》
评论功能已关闭
相关公文