PAGE1
PAGE1
常见传感器应用实例
在本节中,我们将介绍一些常见的传感器及其在ArduinoNano上的应用实例。这些传感器包括温度传感器、光敏传感器、湿度传感器、红外传感器等。通过实际的项目示例,您将学会如何使用这些传感器来实现各种功能。
温度传感器
DS18B20温度传感器
DS18B20是一种数字温度传感器,可以提供高精度的温度测量。它使用单线通信协议,连接简单,适合在ArduinoNano上使用。
连接方式
DS18B20有三个引脚:VCC、GND和DATA。连接方式如下:
VCC连接到ArduinoNano的5V引脚
GND连接到ArduinoNano的GND引脚
DATA连接到ArduinoNano的数字引脚(例如D2),并在DATA和VCC之间接一个4.7kΩ的上拉电阻
代码示例
#includeOneWire.h
#includeDallasTemperature.h
//定义数据引脚
#defineONE_WIRE_BUS2
//创建OneWire对象
OneWireoneWire(ONE_WIRE_BUS);
//创建DallasTemperature对象
DallasTemperaturesensors(oneWire);
voidsetup(){
//初始化串口通信
Serial.begin(9600);
//初始化传感器
sensors.begin();
}
voidloop(){
//请求温度数据
sensors.requestTemperatures();
//读取温度
floattemperature=sensors.getTempCByIndex(0);
//输出温度
Serial.print(温度:);
Serial.print(temperature);
Serial.println(°C);
//延时1秒
delay(1000);
}
DHT11温湿度传感器
DHT11是一种温湿度传感器,可以同时测量环境的温度和湿度。它使用简单的数字信号通信,适合在ArduinoNano上使用。
连接方式
DHT11有四个引脚:VCC、GND、NC和DATA。连接方式如下:
VCC连接到ArduinoNano的5V引脚
GND连接到ArduinoNano的GND引脚
NC不连接
DATA连接到ArduinoNano的数字引脚(例如D2)
代码示例
#includeDHT.h
//定义DHT11的引脚和类型
#defineDHTPIN2
#defineDHTTYPEDHT11
//创建DHT对象
DHTdht(DHTPIN,DHTTYPE);
voidsetup(){
//初始化串口通信
Serial.begin(9600);
//初始化传感器
dht.begin();
}
voidloop(){
//读取湿度
floathumidity=dht.readHumidity();
//读取温度
floattemperature=dht.readTemperature();
//检查读取是否成功
if(isnan(humidity)||isnan(temperature)){
Serial.println(读取失败);
return;
}
//输出湿度和温度
Serial.print(湿度:);
Serial.print(humidity);
Serial.print(%\t温度:);
Serial.print(temperature);
Serial.println(°C);
//延时2秒
delay(2000);
}
光敏传感器
光敏电阻(LDR)
光敏电阻(LDR)是一种随光照强度变化而改变电阻值的传感器。通过测量其电阻值,可以间接测量光照强度。
连接方式
光敏电阻通常与其他电阻组成分压电路,连接方式如下:
一端连接到ArduinoNano的5V引脚
另一端连接到ArduinoNano的模拟引脚(例如A0)和一个10kΩ的电阻
10kΩ电阻的另一端连