亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Arduino Nano 33 IoT:多参数水质监测仪(EC、pH、ORP)支持 BLE 与 PWA

项目概述

本项目将构建一款可测量电导率(EC)、酸碱度(pH)、氧化还原电位(ORP)及温度的水质监测设备,适用于水池、水培系统等场景。设备通过蓝牙低功耗(BLE)与网页通信,利用 Web Bluetooth API 在浏览器中直接读取数据,并将其打包为渐进式网页应用(PWA),可像原生应用一样安装到手机或桌面。

Arduino Nano 33 IoT:多参数水质监测仪(EC、pH、ORP)支持 BLE 与 PWA
设备运行演示:实时显示 EC、pH、ORP 与温度
Arduino Nano 33 IoT:多参数水质监测仪(EC、pH、ORP)支持 BLE 与 PWA
硬件组装实物图

所有传感器模块均可在 ufire.co 购买。

核心概念解析

硬件组装

修改 I2C 地址

uFire ISE 接口板默认 I2C 地址相同,项目使用两块(一块测 pH,一块测 ORP),需修改其中一块地址为 0x3E。详细步骤请参考官方文档。

Qwiic 连接

所有模块采用 Qwiic 连接系统,只需按顺序串联。使用一根 Qwiic 转公头线连接首个模块至 Nano 33 IoT:

Arduino Nano 33 IoT:多参数水质监测仪(EC、pH、ORP)支持 BLE 与 PWA
接线示意图

注意:温度数据默认从 EC 板读取,请务必给 EC 板连接温度探头。所有探头通过 BNC 接口连接。建议将整套电路装入防水外壳。

软件架构

固件运行在 Nano 33 IoT 上,网页端使用 Vue.js 构建,无需后端。通信流程:

  1. 网页通过 BLE 连接设备
  2. 网页发送文本命令(如 ec)请求测量或校准
  3. 设备执行命令,返回 JSON 格式数据(如 {"ec":1.24})
  4. 网页解析数据并更新界面

BLE 服务与特征值

定义一个服务(UUID: 4805d2d0-af9f-42c1-b950-eae78304c408)及两个特征值:

BLEStringCharacteristic tx_Characteristic("50fa7d80-440a-44d2-967a-ec7731ec736a", BLENotify, 20); // 设备→网页
BLEStringCharacteristic rx_Characteristic("50fa7d80-440b-44d2-967b-ec7731ec736b", BLEWrite, 20);  // 网页→设备

tx_Characteristic 启用 BLENotify,数据变化时主动通知网页;rx_Characteristic 启用 BLEWrite,允许网页写入命令。通过 rx_Characteristic.setEventHandler(BLEWritten, rxCallback) 注册回调处理接收命令。

文本命令协议

采用 uFire 官方 JSON 协议,示例:

支持 EC、pH、ORP 读取与校准命令,详见官方文档。

网页端实现

前端使用 Vue.js + Bulma.css,无构建工具,直接浏览器运行。关键点:

PWA 打包步骤

  1. 生成 manifest.json(可用 App Manifest Generator),设置 scope、start_url、display: "standalone"
  2. 编写 service-worker.js 缓存静态资源实现离线访问
  3. 生成多尺寸图标(可用 Favicon Generator)
  4. 在 Vue mounted() 注册 Service Worker
  5. 用 Lighthouse 审计验证 PWA 合规性
Arduino Nano 33 IoT:多参数水质监测仪(EC、pH、ORP)支持 BLE 与 PWA
Lighthouse 审计通过后,Chrome 会提示安装 PWA

代码与资源

原理图

所有模块通过 Qwiic 线串联,详见原理图。

Arduino Nano 33 IoT:多参数水质监测仪(EC、pH、ORP)支持 BLE 与 PWA

制造工艺

  1. 树莓派对接HDC2010:I²C温湿度传感器完整接线与编程指南
  2. Windows IoT + 树莓派打造人脸识别智能门锁
  3. 树莓派 + PIR 传感器 + MQTT 打造 AWS IoT 运动触发按钮
  4. Windows 10 IoT Core 上基于 SHT15 的精准温湿度监测
  5. 树莓派 3 Model B+ 安装 Windows 10 IoT Core 完整步骤指南
  6. 将树莓派 4 打造成 Web 服务器并搭建个人网站
  7. 在树莓派 3 上扩展 GoPiGo v2 的 Windows 10 IoT Core 应用
  8. 基于 Web 控制的 DMX 灯光系统 – Arduino 主控制器
  9. Azure IoT智能游泳池监控系统:温度感知与远程控制
  10. Infineon获Amazon Web Services认定为先进技术合作伙伴
  11. Web启用DDS:连接IoT、云与实时连接
  12. 物联网如何重塑 Web 应用设计与开发范式