基于Blinker的空气质量检测器-支持Arduino/ESP8266/ESP32-Arduino中文社区 - Powered by Discuz! Archiver

三水 发表于 2018-3-11 00:14

基于Blinker的空气质量检测器-支持Arduino/ESP8266/ESP32

本帖最后由 三水 于 2018-4-17 18:38 编辑

空气质量检测器DIY


一.项目目标1.检测PM1.0/PM2.5/PM10/甲醛/温度/湿度并在OLED中显示检测数据,同时可以在Blinker APP中查看检测数据。2.支持Arduino/ESP8266/ESP32
二.硬件准备1.Arduino UNO/ESP8266/ESP32 中任选一种2.0.96寸12864 OLED(SSD1306) iic3.攀藤PMS5003ST4.HM10/HM11 BLE4.0模块
三.软件准备1.Arduino IDE (ESP8266/ESP32则按需安装对应的Arduino SDK)2.使用 Arduino IDE 的库管理器安装 blinker-library3.使用 Arduino IDE 的库管理器安装 WebSockets4.使用 Arduino IDE 的库管理器安装 Blinker_PMSX003ST5.使用 Arduino IDE 的库管理器安装 U8g2

四.项目代码Blinker_AQI_Detector

五.Arduino UNO + BLE
使用代码
AQI_Detector_BLE.ino
线路连接
UNO A4>OLED SDA
UNO A5>OLED SCL
UNO D13>OLED RST
UNO D2>BLE TX
UNO D3>BLE RX
UNO D4>PMS5003ST TX
UNO D5>PMS5003ST RX
供电部分按模块供电需求对应接到5V 3V3 GND


六.ESP8266 WiFi
使用代码
AQI_Detector_WiFi.ino
线路连接
ESP8266 4>OLED SDA
ESP8266 5>OLED SCL
ESP8266 13>OLED RST
ESP8266 14>PMS5003ST TX
ESP8266 15>PMS5003ST RX
供电部分按模块供电需求对应接到5V 3V3 GND

填写接入WiFi的SSID与PSWD
char ssid[] = "<Your WiFi network SSID or name>";
char pswd[] = "<Your WiFi network WPA password or WEP key>";


七.ESP32 BLE
使用代码
AQI_Detector_BLE.ino
线路连接
ESP32 21>OLED SDA
ESP32 22>OLED SCL
ESP32 13>OLED RST
ESP32 16>PMS5003ST TX
ESP32 17>PMS5003ST RX
供电部分按模块供电需求对应接到5V 3V3 GND


八.ESP32 WiFi
使用代码
AQI_Detector_WiFi.ino
线路连接
ESP32 21>OLED SDA
ESP32 22>OLED SCL
ESP32 13>OLED RST
ESP32 16>PMS5003ST TX
ESP32 17>PMS5003ST RX
供电部分按模块供电需求对应接到5V 3V3 GND

填写接入WiFi的SSID与PSWD
char ssid[] = "<Your WiFi network SSID or name>";
char pswd[] = "<Your WiFi network WPA password or WEP key>";


九.上传代码
点击上传,等待完成固件上传后即可在屏幕中显示PMS5003ST检测到的数据。

可根据需要自行增加功能及外壳。




三水 发表于 2018-3-12 12:28

本帖最后由 三水 于 2018-3-12 13:35 编辑

加上外壳,增加部分功能后
http://wx1.sinaimg.cn/large/4a835867gy1fp9x6mfkfzg20b408wkjn.gif

xuhuanqing 发表于 2018-4-19 09:38

感觉很高大上支持项目

nonzhe 发表于 2018-6-10 05:23

中文显示是怎么搞出来的?

william00544 发表于 2019-3-5 10:20

Arduino:1.8.7 (Windows 7), 开发板:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled, 4M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

警告:库 CHT16K33 LED Matrix Library 中的分类 'LED' 不可用。设置为 'Uncategorized'
警告:库 MechInputs 中的分类 'Input' 不可用。设置为 'Uncategorized'
警告:库 SerialSensors 中的分类 'Input' 不可用。设置为 'Uncategorized'
In file included from C:\Users\swk\Documents\Arduino\libraries\Blinker\src/Blinker.h:24:0,

               from C:\Users\swk\AppData\Local\Temp\arduino_modified_sketch_118651\sketch_mar05a.ino:8:

C:\Users\swk\Documents\Arduino\libraries\Blinker\src/BlinkerSerialBLE.h: In member function 'void BlinkerSerialBLE::begin(uint8_t, uint8_t, uint32_t)':

C:\Users\swk\Documents\Arduino\libraries\Blinker\src/BlinkerSerialBLE.h:72:30: error: 'RX' was not declared in this scope

             if (ss_rx_pin == RX && ss_tx_pin == TX) {

                              ^

C:\Users\swk\Documents\Arduino\libraries\Blinker\src/BlinkerSerialBLE.h:72:49: error: 'TX' was not declared in this scope

             if (ss_rx_pin == RX && ss_tx_pin == TX) {

                                                 ^

C:\Users\swk\AppData\Local\Temp\arduino_modified_sketch_118651\sketch_mar05a.ino: In function 'void loop()':

sketch_mar05a:116:56: error: 'class BlinkerSerialBLE' has no member named 'readString'

         BLINKER_LOG2("Blinker.readString(): ", Blinker.readString());

                                                      ^

sketch_mar05a:116:68: error: 'BLINKER_LOG2' was not declared in this scope

         BLINKER_LOG2("Blinker.readString(): ", Blinker.readString());

                                                                  ^

"WiFiClient.h" 对应多个库
已使用: C:\Users\swk\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.0\libraries\ESP8266WiFi
未使用:C:\Program Files (x86)\Arduino\libraries\WiFi
未使用:C:\Program Files (x86)\Arduino\libraries\WiFi
未使用:C:\Program Files (x86)\Arduino\libraries\WiFi
未使用:C:\Program Files (x86)\Arduino\libraries\WiFi
exit status 1
'class BlinkerSerialBLE' has no member named 'readString'

在文件 -> 首选项开启
“编译过程中显示详细输出”选项
这份报告会包含更多信息。

奈何col 发表于 2019-3-5 10:27

william00544 发表于 2019-3-5 10:20
Arduino:1.8.7 (Windows 7), 开发板:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled, 4M (no SP ...

这是一年前的版本了,最新版本在blinker github上
页: [1]
查看完整版本: 基于Blinker的空气质量检测器-支持Arduino/ESP8266/ESP32