2. 杭州电子科技大学 计算机学院, 杭州 310018
2. School of Computer Science and Technology, Hangzhou Dianzi University, Hangzhou 310018, China
在人类的生产生活之中, 水资源是必不可少的物质[1]. 但是, 现代工业的快速发展都在以一定的环境污染作为代价, 给生态环境带来了不好的影响, 特别是水污染方面, 尤其严重[2]. 这也使得人们对于水质安全问题特别在意, 生活用水的安全质量问题也受到了社会各界的广泛关注[3,4].
在现如今科技发达的信息时代, 物联网的发展速度也是极快的, 已经逐步进入万物互联的物联网时代了[5]. 而其中, NB-IoT更是物联网通信技术中的佼佼者, 与传统的WiFi、GPRS和蓝牙等无线通信技术相比, NB-IoT具有广覆盖、低功耗、低成本和大连接等特点, 更加符合万物互联这个物联网概念, 能更好地实现全球部署[6–8]. 当前, NB-IoT技术已被应用于多个领域, 如智慧停车系统、农田远程监测系统和远程抄表系统等等, 技术发展已经逐渐成熟, 相信在不久的将来会被人们应用在各个领域[9].
为保障人们生活用水的安全性, 本文提供了一种基于NB-IoT技术的家庭水质检测系统, 该系统能实时检测水中温度、TDS值和pH值, 且将采集到的数据实时上传至云平台和服务器, 实现远程监控. 该系统极大降低了家庭水质检测的难度, 满足了生活用水检测设备的要求, 给人们的生活提供了非常大的便利而且还带来了很大的安全感.
1 系统方案家庭水质检测系统主要由3个部分组成, 水质检测终端、无线通信模块和远程监控平台.
水质检测终端可以即时采集生活用水的水质状态数据信息, 并且实时处理采集到的传感器数据, 将处理好的数据发送给无线通信模块. 无线通信模块作用相当于是远程监控平台和水质检测终端进行信息交互的驿站, 所有信息都要通过无线通信模块进行传递. 终端系统将打包好的数据信息先发给无线通信模块, 经由无线通信模块发送给服务器, 服务器再发送给远程监控平台[10]. 远程监控平台的功能是对终端系统发送上来的数据包进行解析和整理统计, 一方面将解析完成之后的实时水质数据以非常直观的方式呈现给用户, 另一方面将过往的水质数据进行整理统计, 方便用户查看之前的数据, 方便用户对家里的水质安全有个更加全面的了解[11]. 整个检测系统的架构见图1.
2 硬件设计终端系统的硬件部分由5个部分组成, 包含有MCU控制模块、通信模块、数据存储模块、传感器模块以及电源模块. 模块化的设计有利于降低整个系统的设计难度, 提高系统设计的效率和有效性. 水质检测终端系统的硬件框图见图2.
2.1 MCU控制模块
本系统的主控芯片采用的是ST公司的超低功耗的STM32L433CBT6芯片. 它的运行功耗84 μA/MHz, 睡眠功耗只有2 μA. 它的主时钟频率最高达48 MHz, 可以满足整个系统的运行和运算, 一般被应用在物联网和可穿戴等设备上.
2.2 传感器模块传感器模块一共由3种传感器组成, 分别是pH传感器、温度传感器和TDS传感器.
2.2.1 pH传感器模块pH传感器是用来检测被测溶液中氢离子浓度并转换成相应的电信号的传感器. 本系统的pH传感器模块的工作原理是用氢离子玻璃电极与参比电极组成原电池, 在玻璃膜与被测溶液中氢离子进行例子交换过程中, 通过测量采集电极之间的电位差, 来检测溶液中的氢离子浓度, 从而检测出被测液体的pH值[12].
该传感器电路使用反向跟随放大电路, 主要电路组成有稳压电路、电压跟随电路和反向放大电路. 稳压电路由电压基准芯片TL432组成, 它的主要功能是输出精准稳定的1.25 V基准电压, 用作MCU的ADC采样时的参考电压. 电压跟随电路和反向放大电路由精密运放MS8628组成. 它们的作用是将采集到的电位信号进行精密准确放大, 让MCU采集到的信号数据更加的准确, 增加可信度.
2.2.2 温度传感器模块温度传感器模块使用NTC热敏电阻来采集温度变化信号. 热敏电阻的灵敏度较高, 体积小, 使用方便. 本系统使用的是负温度系数热敏电阻器, 即在温度越高时, 其电阻值越低. 且本系统使用两个NTC热敏电阻进行对比测试, 防止本系统在长时间工作之后, 其中一个热敏电阻出现损耗而导致采集的数据错误.
2.2.3 TDS传感器模块本系统的TDS传感器采用电导电极法测量水的电导率, 而水的电导率和TDS值成正比例关系, 从而实现间接测量值的TDS值[13]. 该传感器电路采用分压法来实现电导率的采集. 将测量电极与精密电阻串联, 通过采集精密电阻上的分压值来计算出电极间的等效电阻, 从而推断出水质的电导率. 为避免使用的铂金探针电极因为长时间单向通电造成氧化, 本系统采用了双向交替通电的方法, 延长TDS探针的使用寿命, 提高测量精度.
2.3 电源模块本系统的电源模块由DC-DC电源模块和低压差线性稳压(LDO)电路组成. 输入电压为外部电源适配器输入的24 V, 经由DC-DC芯片SY8201组成的BUCK电路降压至5 V, 提供给NB-IoT模块. 之后, 5 V电源经由ME6119C33芯片组成的LDO电路降压至3.3 V, 为MCU和其他各模块提供稳定的输入电压. 本模块选取的两种电源芯片都保证了输出电压的稳定, 输出电流满足系统所需要的驱动电流.
2.4 存储模块本系统选取CAT24C256芯片作为EEPROM存储芯片, 容量为256 KB, 使用I2C接口与MCU进行数据传输. 本设计运用存储模块是为了将过去一周采集到的数据保存下来, 防止设备的突然断电断网造成的数据缺失. 在设备重新上电联网之后, 会将存储器里的数据同步到云平台和服务器, 保证数据的一致性和准确性.
2.5 NB-IoT模块本系统使用的NB-IoT模块是上海移远的BC-35G模组, 它使用的是华为的Hi2115芯片, 支持B1/B3/B8/B5/B20/B28共6个工作频段, 支持UDP/TCP/MQTT/CoAP/LWM2M共5种工作协议. 本系统使用的是移动的NB卡, 所以它的工作中心频段应当设置在900 MHz. BC-35G模块通过串口与MCU系统进行数据交互, MCU通过串口向BC-35G模块发送AT指令集, 来控制BC-35G模块, 实现与平台、服务器的通信和数据传输.
3 软件设计水质检测终端的系统软件设计可分为MCU控制驱动程序和IoT云平台产品开发设计两部分. MCU控制驱动程序用KEIL软件编写和调试. IoT云平台产品开发设计是在华为的OceanConnect云平台上进行开发设计.
3.1 IoT云平台产品开发设计OceanConnect云平台, 是华为公司打造的IoT物联网开发者平台, 能够帮助开发者轻松实现设备对接, 还提供了完善的配套的开发指导, API参考等资源, 能极大的帮助开发者缩短开发周期, 提升开发者的开发效率. 在本设计中, NB-IoT模块与OceanConnect云平台之间的信息交互是通过CoAP协议来实现的. 云平台与其他开发应用之间是基于HTTPS通信的[14].
OceanConnect云平台的工作原理: 通过图形化的方式实现设备的二进制码流到IoT平台的JSON格式消息的转换, 同时将平台下发的控制命令编码成设备的二进制码流格式[15]. OceanConnect云平台工作流程图见图3.
OceanConnect云平台产品开发工作主要包括Profile产品模型定义和编解码插件开发. 在本设计中Profile产品模型需要定义pH值、温度值和TDS值3种服务信息模型, 编解码插件开发需要设置这3个服务信息的映射服务, 使其数据格式可以转换成JSON格式, 以便于平台处理和保存数据.
3.2 MCU控制驱动程序设计本系统的工作流程: 系统上电后, MCU先完成系统设备初始化, 各工作模块初始化, 作运行准备; pH、温度、TDS传感器开始工作, 采集水质状态数据, 并按照相应的协议完成数据打包; NB-IoT设备进入联网状态, 确认入网成功之后, MCU将打包好的数据报文通过串口发送给NB-IoT模块, NB模块按照CoAP协议将打包好的数据报文发送给云平台; 判断是否发送成功, 确认发送成功后, 将结束一次数据传输; 反之, 若发送失败, 则再次发送数据, 超过3次发送失败, 则将此次发送失败数据保存在存储模块中, 等待下次发送数据时一起发送. 系统主程序流程图见图4.
4 系统测试与应用
为了检测系统设计的可靠性和准确性, 选用温度计作为标准温度计, 选用梅特勒托利多电导率仪作为标准TDS检测仪, 选用已经标定好pH值的标准溶液作为被测水质, 对本设计的温度、TDS和pH传感器分别进行对比实验.
4.1 温度传感器对比测试在对温度传感器进行对比试验时, 使用恒温水箱当作测试环境, 利用恒温水箱的加热功能, 将水温调节到不同温度, 分别使用标准温度计和温度传感器的去采集水箱里水的温度数据, 然后对比恒温水箱所设定的温度, 查看并记录这三者之间的差值. 对比温度数据见表1.
由表中数据可以得出, 恒温水箱温度与标准温度计和温度传感器测试所得出的数据误差在±0.5 ℃以内, 本系统的温度传感器的准确度在±0.5 ℃以内, 误差在可接受范围之内, 已经可以满足日常生活所需.
4.2 TDS传感器对比测试梅特勒托利多电导率仪是高品质的TDS检测仪, 应用在覆盖卫生要求严格的半导体和制药生产、生产条件恶劣的化工厂及电厂高纯水电导率测量等. 在对水质的TDS进行测试时, 将配置不同浓度的水溶液来模拟不同水质, 用梅特勒托利多电导率仪和TDS传感器分别测试不同的TDS值的水质, 来验证TDS传感器的准确性, 记录下两者间数据的差别. 对比TDS数据见表2.
由表中数据可以得出, 本设计的TDS传感器测得的TDS值与标准TDS检测仪检测出的TDS值误差并不大, 在1%以内. 一般情况下, 自来水的TDS值在400左右, 在该阈值范围之内, 本系统的TDS传感器的测试准确性和精度已经可以满足日常水质检测的基本需求, 达到设计时的目标.
4.3 pH传感器对比测试在对水质的pH进行测试时, 使用的pH标准溶液的PH值分别为4、7和10, 分别观察在3种酸碱度差异如此明显的水溶液中, pH传感器的测试效果. pH测试数据见表3.
由表3所提供的数据, 可以得出该pH传感器在酸性和中性溶液中的测试结果很好, 误差在±0.1之内, 满足日常生活所需的基本要求. 但是在强碱性pH=10的溶液中误差却达到了0.5左右, 经过分析, 本系统设计所用的球泡玻璃电极并不适用于强碱环境, 所以在检测强碱性水溶液时的测试结果并不好. 如需在强碱性环境下使用, 需要更改相应的球泡玻璃电极和电路.
4.4 OceanConnect云平台效果展示硬件系统设备连接完好并且主程序运行正常, OceanConnect云平台会接收到被测水质的温度、pH值和TDS值, 如图5所示.
5 结束语基于NB-IoT技术的家庭水质检测系统实现了对家庭用水的水体质量检测且达到实时监控与反馈的目标, 为人们提供了准确即时的水质信息, 让人们能更加安全、更加放心的用水. 通过实际应用和测试, 本系统的测试结果达到了理想的期望值, 可以满足人们的日常生活需要, 这对于家庭水质检测这一方面具有非常重要的现实意义和参考价值.
[1] |
张晓. 中国水污染趋势与治理制度. 中国软科学, 2014(10): 11-24. DOI:10.3969/j.issn.1002-9753.2014.10.002 |
[2] |
张利平, 夏军, 胡志芳. 中国水资源状况与水资源安全问题分析. 长江流域资源与环境, 2009, 18(2): 116-120. DOI:10.3969/j.issn.1004-8227.2009.02.004 |
[3] |
李玉鑫. 生活饮用水与水源水微生物检验结果的探讨. 中国医药指南, 2019, 17(8): 292-293. |
[4] |
王熹, 王湛, 杨文涛, 等. 中国水资源现状及其未来发展方向展望. 环境工程, 2014, 32(7): 1-5. DOI:10.11835/j.issn.1000-582X.2014.07.001 |
[5] |
戴国华, 余骏华. NB-IoT的产生背景、标准发展以及特性和业务研究. 移动通信, 2016, 40(7): 31-36. DOI:10.3969/j.issn.1006-1010.2016.07.007 |
[6] |
聂健波, 吕洁印, 周受钦, 等. 基于低轨卫星和窄带物联网的智能冷链运输终端系统. 计算机系统应用, 2019, 28(4): 119-124. DOI:10.15888/j.cnki.csa.006846 |
[7] |
邹玉龙, 丁晓进, 王全全. NB-IoT关键技术及应用前景. 中兴通讯技术, 2017, 23(1): 43-46. DOI:10.3969/j.issn.1009-6868.2017.01.010 |
[8] |
张万春, 陆婷, 高音. NB-IoT系统现状与发展. 中兴通讯技术, 2017, 23(1): 10-14. DOI:10.3969/j.issn.1009-6868.2017.01.003 |
[9] |
赵星. 窄带物联网下的应用与发展趋势. 电子技术与软件工程, 2019(7): 9. |
[10] |
王明, 王志成. 基于NB-IoT的机车油量监测系统. 计算机系统应用, 2019, 28(3): 88-92. DOI:10.15888/j.cnki.csa.006818 |
[11] |
李慧, 刘星桥, 李景, 等. 基于物联网Android平台的水产养殖远程监控系统. 农业工程学报, 2013, 29(13): 175-181. DOI:10.3969/j.issn.1002-6819.2013.13.023 |
[12] |
Qin YH, Alam AU, Pan S, et al. Integrated water quality monitoring system with pH, free chlorine, and temperature sensors. Sensors and Actuators B: Chemical, 2018, 255: 781-790. DOI:10.1016/j.snb.2017.07.188 |
[13] |
Devesa R, Dietrich AM. Guidance for optimizing drinking water taste by adjusting mineralization as measured by total dissolved solids (TDS). Desalination, 2018, 439: 147-154. DOI:10.1016/j.desal.2018.04.017 |
[14] |
蒋震, 王筝, 曹中强, 等. 基于NB-IoT的温湿度采集系统设计与实现. 信息化研究, 2018, 44(6): 63-69. |
[15] |
黄海峰. 华为OceanConnect IoT平台获" 最佳平台奖”. 通信世界, 2019(3): 45. |