Nano33BLE 环境监测站
实现功能
利用 Nano-33 BLE 的传感器,搭建一个小型环境监测站用于监测户外环境。待监测的参数包括:
- 周边环境温度(精度:±0.1°C, ±0.1°F)
- 周边环境湿度(精度:±1%)
- 大气压强(精度:±0.1kPa, ±0.1psi)
- 日照强度(用于判断白天/夜晚)
- 周边平均噪声(精度:±1dB)
数据信息反馈方式可采用以下任意一种方式:
- 通过对开发板外接显示屏显示
- 通过蓝牙在电脑端口显示
- 通过手机 App
代码说明
本项目代码分为两部分
运行平台 | 软件名称 | 说明 |
---|---|---|
Arduino | nina-air.ino | 使用 Arduino IDE 编译、上传 |
PC | EnvironmentalMonitor.py | Python 桌面程序,依赖 pygatt 和 wxPython |
重点说明:
- Arduino 通过板载传感器采集温度、湿度、气压、光强、噪声五组数据,其中温度、湿度、气压数据直接从传感器读取,光强、噪声数据通过计算转换;
- Arduino 开启 Standard Environmental Sensing 服务(181A),温度、湿度、气压使用预设 UUID,光强、噪声则使用自定义 UUID;
- Arduino 的 Standard Environmental Sensing 服务的特征值均使用 Read 和 Notify 方式,因此 BLE Client 可以通过主动读取和被动监听的方式接收数据;
- 通过 BLE 传输的数据均为整型数据,需进行转换才能显示;
- 运行 EnvironmentalMonitor.py 前请先安装依赖,并将 macaddr 修改为您所使用的 Nano 33 BLE 板的 MAC 地址。