Arduino智能应用
# 传感器
# 介绍
传感器是一种能够感知和检测物理量或环境参数的装置,它能够能检测温度、压力、湿度、烟雾、化学成分等信息,并将这些信息转换为有效信号传递给其他器件或装置,它是实现自动检测与控制的关键元件。
# 光敏电阻
# 介绍
光敏电阻(LDR)是一种能够感应环境亮度的传感器,他的的表面部分对光非常敏感,可以感应光线的强弱。光线强度越亮,它的电阻值越低,光线强度越暗,它的电阻值越高。

# 分压电路
光敏电阻作为可变电阻,需要与固定电阻组成分压电路,此时光线强时,总电阻减小,固定电阻的分压增大,光敏电阻分压减小,A0探测的电压变小。
分压电路使用的固定电阻需要根据光敏电阻的参数而定,我们可以查阅自己型号的光敏电阻亮时的阻值范围,选一个阻值在范围内的固定电阻即可。
使用分压电路可以扩宽A0探测的电压范围,提高测量灵敏度。
并且由于Arduino的模拟输入引脚具有高阻抗特性,如果不使用分压电路,在强光下光敏电阻的阻值极低时,可能会出现5V与GND短路或电流过大的情况。
# 红外人体感应模块
# 介绍
HC-SR501模块是一款红外人体感应传感器模块,它可以感应我们人体向外释放的热量红外线。
当我们人或动物进到到红外感应区域之后,该区域的红外状态发生改变时,传感器就会通过OUT输出引脚发送高电平信号,并延时一段时间持续输出高电平。当人或动物在红外感应区域内禁止不动时,该区域内红外状态没有变化时,就会发送低电平信号。
红外感应区域和高电平感应延时是可以调节的。
# 使用
int irSensorPin = 7;
int irSensorState;
void setup()
{
Serial.begin(9600);
// 因为只有两种状态,所以使用数字信号。
pinMode(irSensorPin, INPUT);
Serial.println("红外人体感应模块启动!");
}
void loop()
{
irSensorState = digitalRead(irSensorPin);
if(irSensorState == HIGH) {
Serial.println("感应到红外发生变化!");
} else {
Serial.println("红外没有变化!");
}
delay(100);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20