传感器与执行器
传感器和执行器是物联网感知层的核心组件,传感器负责"感知"物理世界,执行器负责"执行"控制命令。本文将详细介绍常用传感器的类型、原理和应用。
传感器概述
什么是传感器?
传感器是一种检测装置,能感受到被测量的信息,并将检测到的信息按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。
传感器分类
| 分类方式 | 类型 | 示例 |
|---|---|---|
| 按被测量 | 物理量、化学量、生物量 | 温度、气体、血糖 |
| 按输出信号 | 模拟、数字 | 热电偶、DS18B20 |
| 按电源 | 有源、无源 | 需供电、热电偶 |
| 按制造工艺 | 集成、薄膜、厚膜 | MEMS 传感器 |
常用传感器详解
温度传感器
温度传感器是最常用的传感器之一,广泛应用于智能家居、工业控制、冷链物流等领域。
常见类型:
| 类型 | 原理 | 特点 | 温度范围 |
|---|---|---|---|
| 热敏电阻 NTC | 电阻随温度变化 | 便宜、精度一般 | -40~125°C |
| 热电偶 | 塞贝克效应 | 宽温度范围 | -200~1800°C |
| RTD PT100 | 电阻随温度变化 | 高精度 | -200~850°C |
| 数字传感器 DS18B20 | 半导体 | 数字输出、精度高 | -55~125°C |
应用示例:
// ESP32 读取 DS18B20 温度传感器
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 4
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
void setup() {
Serial.begin(115200);
sensors.begin();
}
void loop() {
sensors.requestTemperatures();
float tempC = sensors.getTempCByIndex(0);
Serial.printf("Temperature: %.2f°C\n", tempC);
delay(2000);
}
湿度传感器
湿度传感器用于测量空气中的水分含量,常与温度传感器组合使用。
常见类型:
| 类型 | 原理 | 特点 |
|---|---|---|
| 电容式 | 介电常数变化 | 响应快、稳定性好 |
| 电阻式 | 电阻变化 | 便宜、精度一般 |
| 集成式 DHT11/DHT22 | 电容式 | 数字输出、性价比高 |
DHT22 规格:
- 湿度范围:0-100% RH
- 湿度精度:±2% RH
- 温度范围:-40~80°C
- 温度精度:±0.5°C
压力传感器
压力传感器用于测量气体或液体的压力,广泛应用于工业控制、汽车电子、医疗设备等领域。
常见类型:
| 类型 | 原理 | 应用场景 |
|---|---|---|
| 压阻式 | 压阻效应 | 工业压力测量 |
| 压电式 | 压电效应 | 动态压力测量 |
| 电容式 | 电容变化 | 高精度测量 |
| BMP280 | MEMS | 气压、海拔测量 |
BMP280 规格:
- 气压范围:300-1100 hPa
- 气压精度:±1 hPa
- 温度范围:-40~85°C
- 接口:I2C、SPI
光照传感器
光照传感器用于测量环境光照强度,应用于智能照明、农业大棚、摄影设备等领域。
常见类型:
| 类型 | 原理 | 特点 |
|---|---|---|
| 光敏电阻 LDR | 光电导效应 | 便宜、非线性 |
| 光电二极管 | 光生伏特效应 | 响应快、线性好 |
| BH1750 | 光电二极管阵列 | 数字输出、精度高 |
BH1750 规格:
- 测量范围:1-65535 lux
- 分辨率:1 lux
- 接口:I2C
运动传感器
运动传感器用于检测物体的运动状态,包括加速度、角速度、方向等。
常见类型:
| 类型 | 测量量 | 应用场景 |
|---|---|---|
| 加速度传感器 MPU6050 | 加速度 | 运动检测、姿态解算 |
| 陀螺仪 | 角速度 | 姿态测量、导航 |
| 磁力计 | 磁场强度 | 电子罗盘 |
| IMU 模块 | 多轴融合 | 无人机、机器人 |
MPU6050 规格:
- 加速度范围:±2/4/8/16g
- 陀螺仪范围:±250/500/1000/2000°/s
- 接口:I2C
气体传感器
气体传感器用于检测特定气体的浓度,应用于环境监测、工业安全、智能家居等领域。
常见类型:
| 类型 | 检测气体 | 应用场景 |
|---|---|---|
| MQ-2 | 可燃气体 | 燃气泄漏检测 |
| MQ-135 | 空气质量 | 室内空气质量 |
| MQ-7 | 一氧化碳 | CO 报警器 |
| CCS811 | VOC | 空气质量监测 |
MQ-2 规格:
- 检测气体:LPG、丙烷、氢气
- 检测范围:300-10000 ppm
- 输出:模拟电压
距离传感器
距离传感器用于测量物体的距离,应用于避障、测距、液位检测等领域。
常见类型:
| 类型 | 原理 | 测量范围 | 特点 |
|---|---|---|---|
| 超声波 HC-SR04 | 声波反射 | 2-400cm | 便宜、精度一般 |
| 红外 GP2Y0A21 | 红外反射 | 10-80cm | 响应快、近距离 |
| 激光 VL53L0X | 飞行时间 | 3-200cm | 高精度 |
| 激光雷达 | 激光扫描 | 0.1-12m | 2D/3D 扫描 |
HC-SR04 规格:
- 测量范围:2-400cm
- 精度:±3mm
- 工作电压:5V
位置传感器
位置传感器用于确定物体的地理位置,应用于物流追踪、共享单车、车辆定位等领域。
GPS 模块规格:
- 定位精度:2.5m CEP
- 冷启动时间:
<30s - 热启动时间:
<1s - 支持协议:NMEA 0183
执行器概述
什么是执行器?
执行器是将控制信号转换为机械动作的装置,是物联网系统的"手"和"脚",负责执行控制命令。
执行器分类
| 分类方式 | 类型 | 示例 |
|---|---|---|
| 按能源 | 电动、液压、气动 | 电机、液压缸、气缸 |
| 按运动方式 | 直线、旋转 | 电动推杆、电机 |
| 按控制方式 | 开关、模拟、数字 | 继电器、伺服电机 |
常用执行器详解
继电器
继电器是最常用的开关控制器件,用于控制高电压、大电流设备。
类型:
- 电磁继电器:机械触点,有寿命限制
- 固态继电器(SSR):无触点,寿命长
- 光耦继电器:隔离性好,适合小信号
应用示例:
// ESP32 控制继电器
#define RELAY_PIN 5
void setup() {
pinMode(RELAY_PIN, OUTPUT);
}
void loop() {
digitalWrite(RELAY_PIN, HIGH); // 开启
delay(2000);
digitalWrite(RELAY_PIN, LOW); // 关闭
delay(2000);
}
电机
电机是将电能转换为机械能的装置,广泛应用于各种运动控制场景。
常见类型:
| 类型 | 特点 | 应用场景 |
|---|---|---|
| 直流电机 | 简单、便宜 | 风扇、玩具 |
| 步进电机 | 精确位置控制 | 3D 打印机、数控机床 |
| 伺服电机 | 高精度、闭环控制 | 机器人、自动化设备 |
| 无刷电机 | 高效、低噪 | 无人机、电动工具 |
舵机控制:
// ESP32 控制舵机
#include <ESP32Servo.h>
Servo myservo;
#define SERVO_PIN 18
void setup() {
myservo.attach(SERVO_PIN);
}
void loop() {
myservo.write(0); // 0度
delay(1000);
myservo.write(90); // 90度
delay(1000);
myservo.write(180); // 180度
delay(1000);
}
电磁阀
电磁阀用于控制流体(气体、液体)的通断,应用于智能家居、工业自动化等领域。
类型:
- 直动式:直接控制,响应快
- 先导式:需要压差,适合大流量
- 常开型:断电开启
- 常闭型:断电关闭
LED 与显示
LED 是最简单的输出设备,用于状态指示、照明、显示等。
类型:
- 单色 LED:状态指示
- RGB LED:彩色显示
- LED 灯带:氛围照明
- OLED 显示屏:信息显示
传感器选型指南
选型考虑因素
- 测量范围:确保传感器量程覆盖应用场景
- 精度要求:根据应用需求选择合适精度
- 响应速度:实时性要求高的场景需要快速响应
- 环境适应性:温度、湿度、防护等级
- 接口类型:模拟、数字、无线
- 功耗要求:电池供电设备需要低功耗
- 成本预算:平衡性能和成本
常见应用选型
| 应用场景 | 推荐传感器 | 原因 |
|---|---|---|
| 室内温度监测 | DHT22、BME280 | 精度适中、性价比高 |
| 工业温度控制 | PT100、热电偶 | 高精度、宽范围 |
| 智能照明 | BH1750 | 数字输出、精度高 |
| 安防报警 | PIR、门窗传感器 | 可靠、便宜 |
| 环境监测 | BME680 | 多参数集成 |
| 机器人避障 | 超声波 + 红外 | 互补、可靠 |
小结
传感器和执行器是物联网感知层的核心组件,传感器负责采集物理世界的数据,执行器负责执行控制命令。选择合适的传感器和执行器,需要综合考虑测量范围、精度、环境适应性、功耗、成本等因素。
下一步,我们将学习物联网通信协议,了解设备之间如何进行数据交换。