资料下载
链接:https://pan.baidu.com/s/1OfaxDexNl3Lwj1GnbxnQnw?pwd=lx88
1.1 介绍:
雨滴传感器是一种传感装置,主要用于检测是否下雨及雨量的大小,并广泛应用于汽车自动刮水系统、智能灯光系统和智能天窗系统等。传感器采用优质FR-04双料,大面积5.0 * 4.0厘米,镀镍处理面。 它具有抗氧化,导电性和更出色的耐久性能; 用电位器调节灵敏度; 工作电压为3.3 V至5 V. 输出形式:数字值输出(0和1)和模拟值AO电压输出, 使用LM393双电压比较器, 当传感器连接到5v电源时,感应板上没有水滴,DO输出处于高电平。 当滴下液滴时,DO输出处于低电平。 如果我们刷掉水滴,输出将返回高水平状态。 AO模拟输出可以连接到微控制器上的AD接口,以检测上面雨滴的大小。 DO数字输出也可以连接微控制器,以检测是否有雨。
1.2 模块相关资料:
1.3 实验组件:
1.4模块接线图:
1.5 实验代码:
/*
雨滴传感器
https://sourl.cn/sAMzeU
*/
void setup() {
Serial.begin(9600); //设置波特率
}
void loop() {
int sensorValue = analogRead(A0); //读取到的A0的数值,并赋值给数字变量sensorValue
Serial.println(sensorValue, DEC); //显示sensorValue数值,并自动换行
}
1.6 代码说明:
1.在实验中,我们定义管脚变量名为sensorValue,意思就是模拟值,它输出的是模拟值(0~1023),所以我们把管脚设置为模拟口,这里我们接A0。
2.analogRead(pin)这个函数从指定的模拟引脚pin读取值。 Arduino 板包含一个多通道、10 位模数转换器。 这意味着它会将 0 和工作电压(5V 或 3.3V我们这里是5V)之间的输入电压映射为 0 和 1023 之间的整数值。例如,在 Arduino UNO 上,这会产生以下读数之间的分辨率:5 伏/1024 单位即每单位 0.0049 伏 (4.9 mV)。在基于 ATmega 的板卡(UNO、Nano、Mini、Mega)上,读取模拟输入大约需要 100 微秒(0.0001 s),因此最大读取速率约为每秒 10,000 次。
3.pin:要读取的模拟输入引脚的名称(大多数板上的A0到A5,我们plus板上的A0到A7,Mega2560上的A0到A15)。设置1个整数变量item,将所测结果赋值给item。函数返回值为引脚上的模拟读数。虽然它受限于模数转换器的分辨率(0-1023 为 10 位或 0-4095 为 12 位)。数据类型:int。
串口监视器显示sensorValue的值,显示前需设置波特率(我们默认设置为9600,可更改)。
1.7实验结果:
按照接线图连接好线,烧录好测试代码;利用USB接口上电后,进入串口监视器,设置波特率为9600。当水蒸气传感器上检测到水分时,输出的模拟值在串口监视器显示出来,水量越多输出的电压越大,模拟值越大,如下图。