第三章第3课 科创板-声音采集
1、认识声音传感器并了解其工作原理;
2、掌握声音传感器数据采集的方法;
3、通过编程驱动噪声警报器的正常运行。
1
声音传感器简介——Science
声音传感器也可称为声敏传感器,它是一种可以将在气体、液体或固体中传播的机械振动转换成电信号的器件或装置,它采用接触或非接触的方式检测信号。在电子电路中,声音传感器作为一种触发器件来使用,常见的触发方式是声音的有无。
声音传感器的种类有很多,我们科创板用到的声音传感器是电容式声音传感器。
二、声音传感器工作原理及应用——Engineering and Technology
STEAM百科
声音传感器工作原理
声音传感器内置一个对声音敏感的电容式驻极体话筒,声波使话筒内的驻极体薄膜振动,导致电容的变化,从而产生与之对应变化的微小电压。这一电压随后被转化成0-5V的电压,经过A/D(A是模拟量,D是数据量)转换被数据采集器接受,并传送给计算处理器;声音传感器也可以显示声音的振动图象。
声音传感器应用
1、日常生活
声音传感器对声音信号进行采样,应用到话筒,录音机,手机等器件中;声控照明灯内装有声音传感器等等。
2、工业
缝纫设备生产厂家大部分已采用电子检测仪器来监测声响,检验机器最大声源的产生处,测定零部件受力大小、振动大小等。
3、军事
声音传感器利用声波来确定密闭集装箱内的材料化学组成,以此加强港口的安全防护;防御狙击手的袭击,声音传感系统能对狙击火力进行定位和分类,并提供狙击火力的方位角、仰角、射程、口径和误差距离等。
4、医疗
光纤麦克风具有对磁场天然的抗干扰能力,可以应用于核磁共振成像的通信,是唯一在核磁共振成像扫描时,可以在病人和医生之间进行通讯的麦克风。
三、试验与科学——Technology and Math
1、声音采集
科创板板载声音传感器的管脚为39,而且声音传感器采集的信号为模拟信号,所以会用到模数转换代码块,也称ADC(模拟量转换为)。
认识“初始化模拟输入管脚”代码块以及“获取模拟输入值”代码块
两个代码块均位于“输入\输出”模块中。其中“初始化模拟输入管脚”代码块作用为初始化指定管脚为模拟输入管脚;“获取模拟输入值”代码块作用为获取指定管脚模拟输入的值(范围为0~4095)。
认识“参考电压设置”代码块
“参考电压设置”代码块位于“输入\输出”模块中,它的功能是设置指定模拟输入管脚的参考电压为3.3V,这个代码块对于科创板板载的传感器是非常必要的,如果没有设置,板载传感器的精度就会受到影响。
获取声音传感器数值程序如下:
将上面的程序下载到科创板后,会发现信息菜单会有一列0,轻吹声音传感器探头会发现信息菜单出现一些数值,吹得动静越大,数值越大。
2、OLED屏幕联动声音传感器
我们已经可以将声音传感器测得的数值在电脑上显示出来了,那我们是不是也可以让声音传感器测得的数值直接显示在OLED显示屏上呢?回答是:当然能。
认识“转字符串”代码块
“转字符串”代码块位于“文本”模块中,作用是将一个数字转化为一个字符串,换句话就是将科创板不可显示的语言转换成科创板可显示的语言。
声音传感器测得的数值直接显示在OLED显示屏上的程序:
当我们将这段程序下载到科创板中,运行后会发现OLED显示屏可以显示当前声音传感器测得的值了。
3、噪声警报器
我们已经学会将声音传感器的测得值变成我们可测可用的数值了,接下来我们就用这个值,做一个小创意。
现实生活中,在医院、图书馆等需要安静的地方,总是有人不遵守公共秩序,大声喧哗。我们可以做一个噪声警报器,当喧闹声达到了一定的强度时,大厅显示屏会显示警戒噪音值,蜂鸣器就会报警,可以自动提醒这些人保持安静。
噪声警报器的工作过程是当声音传感器的数值超过800时(科创板上的蜂鸣器与声音传感器靠的太近,所以数值设置偏高,自己做的话可根据实际情况而定),OLED显示屏显示voice>800,蜂鸣器发出2秒的警报声。
下面的代码可以发出滴滴声:
要响2秒,即需要执行10次(因为每次滴滴声的周期是200ms),这时我们需要用到一个for循环程序:
噪声警报器的最终程序如下:
执行以上程序,噪声警报器就可以正常工作了。
四、延伸与扩展——Arts
想一想,能不能用声音传感器结合OLED显示屏做一个声控灯呢,怎样去实现?
请以小组的形式进行合作,尝试做一个声控灯。
设计要求:
(当声音传感器测得数值大于500时,白灯亮3秒,同时OLED显示屏显示灯亮;
(保证控制方式安全可靠。