设为首页收藏labplus社区产品资料库
0
积分值+2
0
掌控币+1
0  关注
16  粉丝
12  帖子
智能物联学习
2020年05月31日

#首届“掌控板”教学应用设计大赛#掌控板和物联网编程入门1.3-噪声检测仪

一、基本信息

作品名称:噪声检测仪

作者姓名:季晨悦、朱纯艳、黄斯文

作者单位:飞鼠科技

教材名称:《掌控板和物联网编程入门》

教材类型:自编教材

教材简介:这是在谢作如老师指导下,为普及掌控板应用而设计的创客教程。课程的逻辑结构分为神奇屏幕、趣味媒体、智能物联、实战开发四个单元,共18课,综合了编程、造物、物联网等常用技术情境,轻松学习python编程。

执教年级:初中

课时长度:1课时

涉及器材:掌控板

涉及软件:mPython

文件清单:教学设计、配套代码

二、作品内容

第1单元第3课 噪声检测仪


声音由物体的振动产生,以波的形式在一定的介质(如固体、液体、气体)中进行传播。但是当声音达到一定强度,就会对人及周围环境造成不良影响,妨碍我们的正常休息、学习和工作,声音就会成为噪音,还会造成声音污染。日常生活中有一些用于检测环境噪声的仪器,我们也可以利用掌控板上的声音传感器制作一个噪声检测仪。

一、项目描述

身边噪音随处可见,正在影响我们的生活,利用掌控板的声音传感器,来检测我们所处的声音环境如何,制作一个噪声监测仪,实现如下功能:

1.在屏幕上实时显示声音值;

2.用进度条将声音显示出来,直观观察传感器值的变化。

二、项目指导

1.显示声音值

掌控板带有声音传感器,可以获取声音数值,mPython也提供了对声音值获取的代码块。


要将获取的声音值显示在屏幕上,首先需要将声音值转化为文本,以文本的形式显示声音值,


;然后结合显示文本代码块,将转化为文本的声音值代码块放入内容的位置,如图所示。


【思考】为什么要将声音值转化成文本形式?若要实时显示声音值,可以结合重复执行循环语句和清屏模块不断更新数据。

2.显示进度条

显示进度条是可以根据设置的位置、宽、高、进度值绘制出一个进度条。与显示文本类似,在“显示”模块中找到“进度条”,用于显示进度条,进度值范围为0-100。


如上图,屏幕中就会显示一个进度值为20的进度条。


为了直观显示声音值,我们需要想办法将声音值的范围(0-4095)对应到0-100的进度值范围中。这里有两种方法来解决这个问题。

方法一:通过映射将声音值范围从0-4095对应到0-100。方法一:通过映射将声音值范围从0-4095对应到0-100。


方法二:通过数学的方法。找出声音的最大值,转换为0-100之间,找出两者的数学关系,这就是数学的方法。


【思考】声音值范围与进度值范围两者有怎样的关系?该如何声音值范围对应到0-100?上图空白处应该除以多少?

三、项目实施

活动1:研究声音传感器,实时显示声音值

1.活动步骤

1)了解掌控板声音传感器工作原理是怎样的?

工作原理:________________________________________________________________;

声音传感器数据返回值范围:___________________________。

2)确定屏幕显示的内容、位置以及声音值的位置

内容:___________________________;位置___________________________;

声音值的位置___________________________。

3)编写代码并测试效果

2.参考程序和效果截图

参考程序:


效果截图:



屏幕会实时显示声音值的大小。

3.可能遇到的问题

如果发现声音值不显示,检查是否加入“OLED显示生效”代码块,或者声音值是否转化为文本形式。

活动2:加上进度条,直观呈现声音的大小

1.活动步骤

1)将声音值的范围0-4095对应到0-100的进度值范围

方法一:通过映射的方法,调用“映射”代码块;

方法二:计算两者数学关系:_____________________________________________;

2)编写代码并测试效果

2.参考程序和效果截图

参考程序:


效果截图:



3.可能遇到的问题

如果发现进度表显示不准确,检查进度条显示的“进度”设置的“映射”是否正确,或者检查两者数学关系是否正确。

四、项目交流

同学们可以根据下面的方式来评价自己项目:

1.基本功能:                                                                

___________________________________________________________________________                                                                            

2.项目的思路:                                                              

___________________________________________________________________________

3.项目过程遇到的问题:                                                      

___________________________________________________________________________                                                                            

4.需要改进的地方:                                                          

___________________________________________________________________________

0

点赞

1270 次阅读1 条评论
1条评论