Files
2024-07-20 22:09:06 +08:00

55 lines
1.2 KiB
Markdown

# 夏普GP2Y1010AU0F灰尘传感器Arduino库
## 安装库文件
1. 将库目录放到`Arduino安装目录/libraries/`
2. 重启Arduino IDE即可
## 调用库
- 加载头文件
```
#include "GP2Y1010AU0F.h"
```
- 初始化库, 并设置引脚
```
#define PIN_LED 5 //定义LED供电引脚
#define PIN_OUTPUT A0 //定义模拟量输出引脚
GP2Y1010AU0F GP2Y1010AU0F(PIN_LED, PIN_OUTPUT); //初始化
```
- 对空气采样并获取输出电压
```
double outputV = GP2Y1010AU0F.getOutputV(); //采样获取输出电压
```
- 根据输入电压计算灰尘浓度(ug/m3)
```
double ugm3 = GP2Y1010AU0F.getDustDensity(outputV); //计算灰尘浓度
```
- 根据灰尘浓度计算空气质量指数aqi(是将所有粒度的灰尘都按照PM2.5的指标计算的, 并不准确)
```
double aqi = GP2Y1010AU0F.getAQI(ugm3); //计算aqi
```
- 根据空气质量指数计算空气质量级别
质量级别常量如下:
- `GRADE_PERFECT`: 优
- `GRADE_GOOD`: 良
- `GRADE_POLLUTED_MILD`: 轻度污染
- `GRADE_POLLUTED_MEDIUM`: 中度污染
- `GRADE_POLLUTED_HEAVY`: 重度污染
- `GRADE_POLLUTED_SEVERE`: 严重污染
```
int gradeInfo = GP2Y1010AU0F.getGradeInfo(aqi); //计算级别
```