哈喽,大家好,本期带来的是常用的数字量输出传感器的原理与使用说明,希望能对伙伴们有帮助!
实现目标:
了解常用传感器的原理实现,达到举一反三的效果,学会如何操作;
硬件准备:
声音传感器(或者其他同类传感器)
LED灯
单片机(STM32F103C8T6或其他)
软件:
keil5
先来介绍几款我们在DIY小玩意的时候经常用到的几款传感器:
一、常用传感器认识
1、声音传感器
声音传感器,在某宝很容易找到,一般有4线制,三线制,主要区别是4线兼容3线的,4线的多一个模拟量输出,让我们开发的空间更大,比如对声音粗略的分等级,不同分贝的声音控制不同的设备,当然这种模块精度不高。
输出方式:
1)数字量输出:通过板载电位器设定声音检测阈值,当检测到声音超过阈值时,通过数字引脚DO输出低电平。
2)模拟量输出:声音越大,AO引脚输出的电压值越高,通过ADC采集的模拟值越高。
4线制声控传感器模块
3线制声控传感器模块
2、光敏传感器
接收端是光敏电阻,光照不同会呈现不同的电阻值,这种传感器同样也是有3线制,4线制,与上面声控传感器原理相同。
输出方式:
1)数字量输出:通过板载电位器设定光照检测阈值,当检测到光照强度超过阈值时,通过数字引脚DO输出低电平。
2)模拟量输出:光照强度越大,AO引脚输出的电压值越高,通过ADC采集的模拟值越高。
4线制光敏传感器模块
3线制光敏传感器模块
3、烟雾传感器
接收端是MQ-2烟雾传感器,MQ-2传感器对可燃气、烟雾等气体灵敏度高,这种传感器同样也是有3线制,4线制,与上面传感器原理相同,这个模块某宝大多是4线制,可能3线的不怎么好卖吧,哈哈
输出方式:
1)数字量输出:通过板载电位器设定烟雾检测阈值,当检测到烟雾浓度超过阈值时,通过数字引脚DO输出低电平。
1)模拟量输出:烟雾浓度越大,AO引脚输出的电压值越高,通过ADC采集的模拟值越高。
4线制烟雾传感器模块
诸如此类的传感器还有很多,像雨水传感器、震动传感器等等,下面图片中的许多都是一样的原理,大家学会一种,就可以举一反三啦。
二、原理图说明
接下来,小飞哥以声音传感器为例,对此类传感器的通用底板做点简单介绍,下图是找的某款模块手册,做的也是非常用心了,板子上有LM393进行数字量输出,LM386对声音信号放大后作为模拟量输出,接着来分析下此模块的原理图。
可以看到,声音信号进来之后,是比较微弱的,经过R1可调电阻控制声音的幅值,经过LM386对声音信号进行放大,放大倍数有两种方式,一种是pin 1及pin 8间加一个10μF的电容即可使增益变成200,也就是此模块采用的方式,另外一种是在1脚和8脚之间增加一只外接电阻和电容,便可将电压增益调为200以内的任意值。
然后放大后的声音信号,一路是经过c6电容去直流之后,直接输出至模块AOUT引脚,此信号可以结合我们的单片机ADC进行采集,然后可以对声音信号做傅里叶变化,显示屏显示,就可以得到音乐频谱啦。另一路是输入至LM393电压比较器,通过调节R3可调电阻,作为正相输入电压,当反相输入电压大于正相电压时,LM393输出高电平,反之,输出低电平,实现不同阈值下的电压比较功能,也就是检测声音的大小。
什么是电压比较器? 简单地说, 电压比较器是对两个模拟电压比较其大小(也有两个数字电压比较的,这里不介绍),并判断出其中哪一个电压高,如图1所示。图1(a)是比较器,它有两个输入端:同相输入端(“+” 端) 及反相输入端(“-”端),有一个输出端Vout(输出电平信号)。另外有电源V+及地(这是个单电源比较器),同相端输入电压VA,反相端输入VB。VA和VB的变化如图1(b)所示。在时间0~t1时,VA>VB;在t1~t2时,VB>VA;在t2~t3时,VA>VB。在这种情况下,Vout的输出如图1(c)所示:VA>VB时,Vout输出高电平(饱和输出);VB>VA时,Vout输出低电平。根据输出电平的高低便可知道哪个电压大。
如果把VA输入到反相端,VB输入到同相端,VA及VB的电压变化仍然如图1(b)所示,则Vout输出如图1(d)所示。与图1(c)比较,其输出电平倒了一下。输出电平变化与VA、VB的输入端有关。
其他一些模块大多是没有前级放大芯片,模拟量是直接输出的,可能是由于输出的信号比较强吧,柱极咪头输出的声音电信号是非常微弱的,若果没有前置放大的话,单片机AD不好采集得到,所以前置放大器还是必须的。简单的应用场景,平时用的更多的是数字量输出,直接接到单片机IO,检测高低电平,然后控制后端继电器或者其他设备。
三、声音传感器模块测试
代码比较简单,主要用到外部中断引脚,或者普通IO轮训方式也可以,就不多说了,主要介绍下,实验用到的最小系统部分,主芯片用的是STM32F103C8T6,这也是小飞哥以前无聊画的板子,把以上介绍的多种传感器原理在最小系统板子上实现了,板子开源大家可以进群获取资料,主要包括以下功能:
1) NRF24L01
2) EEPROM
3) 4个独立按键
4) LED灯
5) LED灯驱动电路
6) 电压比较器电路
7) 串口一键下载
本次的介绍就到这里啦,后面有更精彩的内容,欢迎大家持续关注!