针对海水入侵隐蔽性高、难治理,本文基于NB-IoT完成海水入侵检测与预警控制系统设计,以期实现对海水入侵进行实时检测并提供远程预警。系统主要包括硬件设计及软件编程两个方面,其中硬件主要由电源模块、单片机最小系统、TDS (电导率)传感器模块、水温传感器模块、液晶模块、NB-IoT模块等组成。在完成系统设计的基础上,采用溶质主要碳酸氢钠的苏打水溶液,以及模拟海水检测融入一定量氯化钠的清水溶液。测试结果显示:当系统TDS检测数据超过程序设定值时,预警功能触发,蜂鸣器产生蜂鸣开始报警,且系统具备将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能,在实际应用中具有一定的应用价值。 In response to the high concealment and difficulty in managing seawater intrusion, this article designs a seawater intrusion detection and early warning control system based on NB IoT, in order to achieve real-time detection of seawater intrusion and provide remote warning. The system mainly includes two aspects: hardware design and software programming. Among them, the hardware mainly consists of power module, microcontroller minimum system, TDS (conductivity) sensor module, water temperature sensor module, LCD module, NB IoT module, etc. On the basis of completing the system design, a sodium bicarbonate aqueous solution with the main solute is used, as well as a simulated seawater detection mixed with a certain amount of sodium chloride in a clear water solution. The test results show that when the TDS detection data of the system exceeds the program setting value, the warning function is triggered, and the buzzer generates a beep to start the alarm. The system has functions such as uploading measured data to the cloud platform for real-time display of detection data and viewing historical data, which has certain application value in practical applications.
针对海水入侵隐蔽性高、难治理,本文基于NB-IoT完成海水入侵检测与预警控制系统设计,以期实现对海水入侵进行实时检测并提供远程预警。系统主要包括硬件设计及软件编程两个方面,其中硬件主要由电源模块、单片机最小系统、TDS (电导率)传感器模块、水温传感器模块、液晶模块、NB-IoT模块等组成。在完成系统设计的基础上,采用溶质主要碳酸氢钠的苏打水溶液,以及模拟海水检测融入一定量氯化钠的清水溶液。测试结果显示:当系统TDS检测数据超过程序设定值时,预警功能触发,蜂鸣器产生蜂鸣开始报警,且系统具备将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能,在实际应用中具有一定的应用价值。
海水入侵检测,单片机,传感器,NB-IoT
Xiaocui Ma1, Zheng Hu1, Xin Yang1, Jiawu Yang2, Zhiqiang Song2, Daiyi Lu2
1Yancheng Institute of Measurement and Testing, Yancheng Jiangsu
2School of Electrical Engineering, Yancheng Institute of Technology, Yancheng Jiangsu
Received: Aug. 30th, 2023; accepted: Sep. 28th, 2023; published: Oct. 18th, 2023
In response to the high concealment and difficulty in managing seawater intrusion, this article designs a seawater intrusion detection and early warning control system based on NB IoT, in order to achieve real-time detection of seawater intrusion and provide remote warning. The system mainly includes two aspects: hardware design and software programming. Among them, the hardware mainly consists of power module, microcontroller minimum system, TDS (conductivity) sensor module, water temperature sensor module, LCD module, NB IoT module, etc. On the basis of completing the system design, a sodium bicarbonate aqueous solution with the main solute is used, as well as a simulated seawater detection mixed with a certain amount of sodium chloride in a clear water solution. The test results show that when the TDS detection data of the system exceeds the program setting value, the warning function is triggered, and the buzzer generates a beep to start the alarm. The system has functions such as uploading measured data to the cloud platform for real-time display of detection data and viewing historical data, which has certain application value in practical applications.
Keywords:Seawater Intrusion Detection, MCU, Sensor, NB-IoT
Copyright © 2023 by author(s) and beplay安卓登录
This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
地下水是地球表面水循环的重要组成部分,它在其中起着重要的调节和平衡作用,是人类生活、工农业生产和环境保护的重要资源。海水入侵 [
基于上述分析,本文基于NB-IoT完成海水入侵检测与预警控制系统设计,以期实现对海水入侵进行实时检测并提供远程预警。系统在硬件设计方面主要包括电源模块、单片机最小系统、TDS (电导率)传感器模块、水温传感器模块、液晶模块等,为数据测量提供硬件支持。同时运用NB-IoT模块,为数据信号传输提供支持。在软件设计上,采用Keil 5完成程序设计、各模块算法设计,最终系统将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能。在完成系统设计的基础上,采用溶质主要碳酸氢钠的苏打水溶液,以及模拟海水检测融入一定量氯化钠的清水溶液。测试结果显示:当系统TDS检测数据超过程序设定值时,预警功能触发,蜂鸣器产生蜂鸣开始报警,且系统具备将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能,在实际应用中具有一定的应用价值。
本文基于NB-IoT的海水入侵检测与预警控制系统,以监测海水各项参数完成海水入侵实时检测与数据远程传输为最终目标。系统主要包括硬件设计及软件编程两个方面,其中硬件主要由电源模块、单片机最小系统、TDS (电导率)传感器模块、水温传感器模块、液晶模块、NB-IoT模块等组成。系统总体流程为:电源模块为系统供电,单片机最小系统采样TDS (电导率)传感器模块及水温传感器模块检测所得数据,并通过液晶模块实现检测数据的实时显示;当检测数据超过系统设定阈值时,系统通过蜂鸣器进行报警;NB-IoT模块用于实现将检测数据的上传至云平台,从而实现数据的实时在线及历史数据查询等功能,如图1所示。
图1. 系统工作流程概述图
该系统硬件部分主要由电源模块、单片机最小系统、TDS (电导率)传感器模块、水温传感器模块、NB-IoT模块、液晶模块等组成。
电源模块主要由稳压电路实现DC 5 V电源的稳定输出 [
图2. 电源模块电气原理图
单片机最小系统选用STM32F103单片机作为主控单元 [
图3. 单片机最小系统图
TDS (电导率)/水温传感器模块,采用TDS检测模块,采用3.3~5.5 V左右的供电电压、0~2.3 V左右的模拟信号输出 [
图4. TDS原理图
水温传感器模块的型号为DS18B20 [
图5. 水温传感器模块原理图
NB-IoT为窄带物联网,在蜂窝网络的基础上搭建起来,是一种新兴技术,能够提供非常广泛围的网络供应以及大数量的单位链接 [
在本系统中,NB-IoT模块采用的模块型号为中国移动M5311型芯片,RXD与TXD两个引脚为AT指令通信串口,在本次设计中,单片机的PA9与PA10与模块的这两个通信串口相连,以便数据传入与通信,其电气原理图如图6所示。
图6. NB-IoT模块电气原理图
本系统所涉及软件编程部分主要工作为:通过先设计基于STM32的温度采集、温度生成程序以及TDS值采集、生成程序,再通过OLED显示的程序,再设计NB-IoT的AT指令,完成云平台设计以及数据传输、云平台界面设计。
在软件设计中,针对TDS (电导率)数据采集程序主要为定义变量、定义温度与各种TDS校准系数、进行AD转换,部分代码如下。
compensationCoefficient=1.0+0.02*((TEMP_Value/10)-25.0); 此为补偿系数公式。
compensationVolatge=ADC_ConvertedValueLocal[
if((ADC_ConvertedValueLocal[
之后,再通过AD采样数据计算TDS_value值。
本文所涉及温度采集函数如下:
void TEMP_Value_Conversion()//温度采集函数
{
TEMP_Value=DS18B20_Get_Temp();
TEMP_Buff[
TEMP_Buff[
TEMP_Buff[
TEMP_Buff[
}
部分液晶屏的字符显示函数如下。
OLED_ShowStr(0,2Temp: ,2);这是温度显示。
OLED_ShowStr(0,4TDS: ,2);这是 TDS显示。
通过OLED_Shower函数在OLED液晶屏上显示检测数值。
报警功能通过程序体现,在本系统中,采用报警上限值为300作为参考,当采集值超过300时,触发报警设置,蜂鸣器警示,代码如下。
if(TDS_value>300)
{
BEEP=!BEEP; //蜂鸣器启动
delay_10us(100);
}
else
BEEP=0; //蜂鸣器关闭
在本系统中使用“AT+IPSEND”指令,此命令用于将数据发送到网络。响应“OK”仅表示ATCMD格式正确,数据已放入套接字,等待发送。
通过登录云平台 [
图7. 云平台界面示意图
在完成上述系统硬件设计及软件编程后,对系统进行实物测试。本次测试采用两组对照,分别是溶质主要碳酸氢钠的苏打水溶液,以及模拟海水检测融入一定量氯化钠的清水溶液。将TDS探头以及温度传感器探头分别放入两种溶液中,具体显示如图8所示。
图8. 系统测试实验图
由于苏打水中含有其他溶剂以及检测拍摄时间差异等其他因素导致OLED显示与云平台显示存在细微差异。在检测盐水时,由于TDS值超过程序中设定的300,预警功能触发,蜂鸣器产生蜂鸣开始报警。除了数据显示与预警功能,云平台上还可以显示历史检测数据,可通过随时刷新随时监控,并且以excel的形式导出表格。历史数据显示如图9所示。
图9. 检测结果历史数据显示
上述测试结果显示:本系统TDS检测数据超过程序设定值时,预警功能触发,蜂鸣器产生蜂鸣开始报警,且系统具备将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能,在实际应用中具有一定的应用价值。
本文基于NB-IoT完成海水入侵检测与预警控制系统设计,以期实现对海水入侵进行实时检测并提供远程预警。系统在硬件设计方面主要包括电源模块、单片机最小系统、TDS (电导率)传感器模块、水温传感器模块、液晶模块等,为数据测量提供硬件支持。同时运用NB-IoT模块,为数据信号传输提供支持。在软件设计上,采用Keil 5完成程序设计、各模块算法设计,最终系统将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能。在完成系统设计的基础上,采用溶质主要碳酸氢钠的苏打水溶液,以及模拟海水检测融入一定量氯化钠的清水溶液。测试结果显示:在检测盐水时,由于TDS值超过程序中设定的300,预警功能触发,蜂鸣器产生蜂鸣开始报警。除了数据显示与预警功能,云平台上还可以显示历史检测数据,可通过随时刷新随时监控,并且以excel的形式导出表格。综上,本文所述系统当检测数据超过程序设定值时,预警功能触发,蜂鸣器产生蜂鸣开始报警,且系统具备将测得数据上传云平台实现检测数据的实时显示及历史数据查看等功能,在实际应用中具有一定的应用价值。
江苏省市场监督管理局科技项目“燃气预警系统远程测试装置及检测方法研究”(项目编号:KJ2022051)。
马小翠,胡 峥,杨 鑫,杨佳武,宋志强,陆戴诣. 基于NB-IoT的海水入侵检测与预警控制系统设计Design of Seawater Intrusion Detection and Early Warning Control System Based on NB-IoT[J]. 软件工程与应用, 2023, 12(05): 676-684. https://doi.org/10.12677/SEA.2023.125065
https://doi.org/10.1016/j.ejrh.2023.101363