EVE 发表于 2019-3-20 17:25:41

Mind+ 掌控板入门教程08 噪音报警器

【Mind+】掌控入门 项目八 噪音报警器-DFRobot官方出品上一篇:【Mind+】 掌控板入门教程07 音乐控制台

下一篇:【Mind+】 掌控板入门教程09 魔法之光

      物理课堂上老师教过我们物体振动会产生声波,声波通过空气等介质传送给我们的耳朵,我们就听到了声音。有了声音就有了动听的音乐、优美的歌声。可是当音量达到一定强度,妨碍到人们正常休息、学习和工作,声音就会成为噪音。

      所以接下来我们就利用掌控板上可以检测声音大小的麦克风,一起来做一个噪音警报器吧。

项目示例

      利用掌控板自带的麦克风(如下图红圈标注),我们将通过学习在屏幕上显示当前环境声音值,完成通过RGB灯亮灯的数量表示噪音强度范围的噪音警报器。

      可通过下面两个任务进行实践:

      ■ 任务一:屏幕显示声音值
      ■ 任务二:噪音警报器
任务一:屏幕显示声音值

      输入以下程序,并将程序上传。
* 思考一下,需要显示几个空格才能完全遮挡“麦克风声音强度”的数值。

      运行结果:

* 声音传感器的返回值为0-4095,声音越大,数值越大。

小试牛刀:

      尝试实现下图中麦克风强度值显示效果。

任务二:噪音警报器

      当声音过大时,通过掌控板上LED灯亮灯数量反应噪音等级。

      输入以下程序,并将程序上传。
      运行结果:

      通过学习使用传感器,我们可以用掌控板做出更加丰富的与现实生活交互的趣味项目。比如使用麦克风传感器,我们还可以做一个分贝仪用来检测声音大小或者做一个声控游戏。发挥你的创意吧!

知识拓展

一、硬件知识

1、声音传感器

      掌控板自带的麦克风也叫声音传感器,声音传感器是一种可以检测声音大小的传感器。

      常见的声音传感器的工作原理是传感器内置一个对声音敏感的电容式驻极体话筒。声波使话筒内的驻极体薄膜振动,导致电容的变化,而产生与之对应变化的微小电压。这一电压随后被转化成0-5V的电压,经过A/D转换被数据采集器接受并进行传送。



      生活中使用的包括声控灯、智能电视等很多声控设备,都离不开声音传感器。声音传感器的应用领域更是不断扩展,从机器人到航空航天技术,声音传感器在现代科技领域中的作用越来越大。

2、噪音

      噪音是一类引起人烦躁、或音量过强而危害人体健康的声音。从环境保护的角度看:凡是妨碍到人们正常休息、学习和工作的声音,以及对人们要听的声音产生干扰的声音,都属于噪音。从物理学的角度来看:噪音是发声体做无规则振动时发出的声音。

二、软件知识

1、逻辑运算

      “与”指令是一种逻辑运算指令,逻辑运算一般用来判断一件事情是真的还是假的。我们在数学中常见的“+、-、*、/”可以统称为算数运算,而编程中常见的“与、或、非”可以统称为逻辑运算。数学运算的结果为某个数值,而逻辑运算的结果为真或假,一般用1代表真(ture),0代表假(false)。

为逻辑“与”指令,表示两侧条件同时成立,则结果为真,否则结果为假。
Mind+中还有逻辑“或”和逻辑“非”指令。为逻辑“或”指令,表示两侧条件只要有一个条件成立,则结果为真。

为逻辑“非”指令,表示将真假颠倒。
2、指令汇总

项目小结

      ■ 掌握掌控板检测及显示声音强度的方法

      ■ 掌握制作简易噪音警报器的方法

      ■ 了解声音传感器

      ■ 了解逻辑运算

挑战一下
      1、在小区楼道一般会有声控灯,声音较大时灯就会亮起来,一会儿后熄灭,尝试用掌控板实现。

      2、利用掌控板做一个声控小游戏。用你的声音来控制这个的英雄小人在平台上跳跃翻滚吧!音量大小可以决定它的跳跃高度!

rzyzzxw 发表于 2019-3-21 13:36:48

精心教程008:call:

rzegkly 发表于 2019-3-21 16:06:18

好文章,大赞

EVE 发表于 2019-3-21 20:28:20

rzyzzxw 发表于 2019-3-21 13:36
精心教程008

哈哈哈 今天也给掌控打电话

有德为善 发表于 2019-7-31 10:11:27

EVE 发表于 2019-3-20 17:25
【Mind+】掌控入门 项目八 噪音报警器-DFRobot官方出品上一篇:【Mind+】 掌控板入门教程07 音乐控制台

下 ...

优秀教程

gada888 发表于 2019-8-3 21:06:31

噪音计。不错

明洋 发表于 2019-9-23 17:06:18

谢谢作者,请问两个问题:一是程序运行开始时的,ESP32主程序这个语句从哪里来的; 二是我把程序运行开始的条件改成A按下时,开始执行。能检测到声音值,但是灯不亮。没找到原因

帘点 发表于 2023-5-16 00:01:33

请问检测到的数据如何换算成分贝呢?这个教程的中的数值划分又是如何确定的呢?

EVE 发表于 2023-5-16 09:41:46

帘点 发表于 2023-5-16 00:01
请问检测到的数据如何换算成分贝呢?这个教程的中的数值划分又是如何确定的呢? ...

这个数值无法转换成分贝,程序中的数值是测试使用的

帘点 发表于 2023-5-17 21:24:26

EVE 发表于 2023-5-16 09:41
这个数值无法转换成分贝,程序中的数值是测试使用的

谢谢,请问您知道如何让屏幕中的字不要刷新抖动地太厉害吗?有时候检测数值总会一瞬间转换成0,然后那个屏幕的字和灯就会一闪一闪的,看着特别不舒服。

EVE 发表于 2023-5-18 09:46:15

帘点 发表于 2023-5-17 21:24
谢谢,请问您知道如何让屏幕中的字不要刷新抖动地太厉害吗?有时候检测数值总会一瞬间转换成0,然后那个 ...

可以将程序中的等待0.1秒,改为等待1秒,减慢刷新频率

三春牛-创客 发表于 2023-7-9 21:57:56

很棒的教程!

三春牛-创客 发表于 2023-7-9 21:59:01

教程很详细!适合新手学习!

花生编程 发表于 2023-7-10 21:31:47

不错不错

花生编程 发表于 2023-7-10 21:32:49

学习了,感谢分享

康振鑫 发表于 2023-11-14 14:35:55

gada888 发表于 2019-8-3 21:06
噪音计。不错

不错不错

goP1Toy3 发表于 2024-3-26 14:11:26

不错,原书没有的部分。讲解了声音传感器,还补充了一个使用场景。

大头张 发表于 2024-9-22 21:02:43

1.实际使用中掌控板声音传感器最高值应该是2500多,不会再上升了;2.这个声音的大小单位是什么?仅仅是模拟声音的大小?
页: [1]
查看完整版本: Mind+ 掌控板入门教程08 噪音报警器