基于STM32及NB-IoT的液体液位监测系统设计

known 发布于 2025-08-25 阅读(326)

摘 要:在日常生活中,精确测量液位有着多样的应用需求。文章基于STM32微控制器及NB-IoT技术设计了一款液体液位监测系统,该系统旨在实现对液体液位的精确测量、该地异常响应以及远程云端监控。通过液位传感器实时采集液体液位数据,在STM32微控制器的作用下完成该地液位异常自动报警与响应,同时借助NB-IoT模块的低功耗、广覆盖、强连接等特性,实现远程监控和管理。实验验证结果表明,该系统性能良好,可以精确采集液体液位数据、该地响应正常、云端监控可靠,能够满足应用需要。

关键词:STM32单片机;NB-IoT;传感器

中图分类号:TP274;TP311.5 文献标识码:A 文章编号:2096-4706(2024)20-0180-05

Design of Liquid Level Monitoring System Based on STM32 and NB-IoT

ZHA Qiming

(Jiangsu University of Technology, Changzhou 213001, China)

Abstract: In daily life, there are diverse application requirements for accurate liquid level measurement. This paper designs a liquid level monitoring system based on STM32 microcontroller and NB-IoT technology. The system is aimed at achieving precise measurement of liquid level, local abnormal response, and remote cloud monitoring. By using a liquid level sensor to collect real-time data on liquid level, the system can complete local automatic alarm and response to liquid level abnormalities with the help of the STM32 microcontroller. Meanwhile, leveraging the low power consumption, wide coverage, and strong connectivity features of the NB-IoT module, the system realizes remote monitoring and management. The experimental verification results show that the system performs well. It can accurately collect liquid level data, the local respond is normal, and cloud monitoring is reliable, meeting the application needs.

Keywords: STM32 Single-chip Microcomputer; NB-IoT; sensor

0 引 言

随着微电子技术的快速发展,智能化控制技术被广泛应用于各行各业。在工业生产及日常生活中,液体存储与管理有着广泛的应用需求,如石油、化工、医药、农业灌溉以及家庭用水系统等[1-3]。在上述应用场景中,实现液体液位的精准控制与实时监测十分必要。传统的液位控制方法较为依赖人工巡检,存在效率低下且响应不及时等问题。因此,开发一种高效、精确、远程可控的液体液位控制系统十分必要[4-5]。

STM32作为一款高性能、低功耗的微控制器,因其丰富的外设接口和强大的计算能力,在嵌入式系统设计中得到了广泛应用。而NB-IoT(Narrowband Internet of Things)作为低功耗广域网(LPWAN)技术的一种,因其覆盖广、功耗低、连接稳定等特点,非常适合用于远程监控和数据传输[6-7]。将STM32与NB-IoT技术结合,设计一款能够实现液位实时监测及远程管理的系统,可以大大提升智能化水平和运营效率[8-9]。

本文基于STM32及NB-IoT技术设计了一款液体液位监测系统,该系统以STM32微控制器作为核心控制单元,结合高精度液位传感器实时监测液位变化,利用水泵等执行机构调节液体液位[10]。

同时,通过集成的NB-IoT模块,实现液位数据的远程传输与监控管理,用户可通过云平台或手机APP实时查看液位状态,并进行远程操控。

接下来将从系统总体设计方案、硬件电路设计、软件程序设计以及系统测试与验证等方面详细介绍该系统的设计与实现过程。并且通过实验验证,评估系统的性能与稳定性。

1 系统的总体设计

该系统采用STM32作为控制核心,配置外接模块和机构,例如水位传感器、水泵、报警装置等用于实现系统的本地响应。此外通过低功耗NB-IoT模块,将本地数据实时传输到远程监控平台,实现系统的云端监控管理。系统整体框图如1所示。

2 系统硬件设计

系统主要由STM32最小系统、液位检测传感器、OLED显示器及NB-IoT模块等组成,具体设计如下。

2.1 STM32最小系统

STM32是一款由意法半导体(STMicroelectro-nics)公司开发的高性能、低成本、低功耗的32位微控制器单元(MCU),它基于ARM Cortex-M系列内核,本系统采用的型号是STM32F103C8T6。其最小系统包括电源电路、晶振电路、复位电路等,原理图如图2所示。

2.2 液位传感器设计

液位传感器作为一种用于测量液体液位状态的设备,广泛应用于工业自动化、环境监测、农业灌溉和航空航天等领域。液位传感器根据测量原理及应用场景的不同,可以分为多种类型。其中压力式液位传感器主要用于监测储罐和管道中液体的液位;光电式液位传感器既可以应用于加湿器、净水器、咖啡机、洗碗机等家用设备,还可以应用于商用设备、工业设备和医疗设备等。电容式液位传感器主要应用于打印机、自动洗手液装置、饮水机、医疗设备等。

本系统采用的是MSP20型液位传感器,内部装配有精密的压阻式压力传感器。该传感器由一个受压后能产生形变的弹性膜片和四个精密的压电电阻器构成,这些电阻器分布在膜片上,共同形成一个惠斯通电桥。当膜片受到水压作用时,电桥的平衡状态被打破,导致输出一个与水深成正比的线性电压信号。这一信号反映了管道内因水深变化而变化的气压,从而可以计算出液位深度。传感器的工作电压为直流5.0 V,能够输出0~3 V的模拟信号,其中水位越深,输出电压值越大。该传感器的检测精度为1 cm,可覆盖10~300 cm的检测量程。其原理图如图3所示。

2.3 NB-IoT模块设计

窄带物联网(Narrowband Internet of Things, NB-IoT)是一种基于蜂窝网络的低功耗广域网(LPWAN)技术,它使用窄带通信技术和现有的LTE网络基础设施,为物联网设备提供长距离、低功耗、广覆盖的连接方案。NB-IoT模块集成了NB-IoT通信协议栈和相关硬件,通过RF芯片将数字信号转换为无线信号进行传输,实现物联网设备与NB-IoT网络的通信。因其低功耗、广覆盖和低成本的优势,被广泛应用于工业监控、智慧农业、智能家居等应用领域。本系统采用的是MN316型模块,该模块基于芯翼XY1100平台,具有低功耗、小尺寸、全网通等特点,广泛应用于智能抄表、智慧城市、智能家居、智能穿戴、智慧农业等多种行业应用场景。支持Band3/Band5/Band8频段,能够接入移动、电信、联通三家运营商的NB-IoT网络。其实物及接线图如图4、图5所示。

3 系统软件设计

3.1 开发环境搭建

在本次液位测量系统的开发过程中,我们选择了Keil MDK-ARM作为软件开发环境。它是一款专为ARM Cortex-M系列微控制器设计的高级嵌入式系统开发工具,它提供了一整套集成化的开发解决方案,包括代码编辑、编译、调试和仿真等。

3.2 主程序设计

在桌面系统中搭建工作环境后编写代码,代码编译后烧入主控芯片,上电运行时的工作流程如下:

1)系统初始化,主控及外接模块初始化。

2)液位传感器采集数据,对采集的数据分析处理后,参照阈值范围控制水泵及报警装置。

3)云端监控,系统通过NB-IoT模块将本地数据传输到云端平台,实时监控系统运行状态。

4)循环监测,云端监控管理系统运行,并循环工作。

其主流程图如图6所示。

3.3 NB-IoT模块软件设计

本系统采用MN316模块通过MQTT协议接入阿里云物联网平台,实现数据上报和指令下发等任务。MQTT协议构建于TCP/IP协议之上,由IBM在1999年发布。该协议采用发布/订阅模式进行消息传输,具有低开销、低带宽占用、实时可靠等优点。在MQTT协议中,消息通过主题(Topic)进行发布和订阅,发布者(Publisher)将消息发送到指定的主题,订阅者(Subscriber)订阅感兴趣的主题并接收相应的消息。阿里云物联网平台作为业界领先的物联网解决方案,提供了一站式的设备接入、设备管理、数据分析和应用开发服务,支持多种通信协议。

4 实验验证

4.1 本地检测功能验证

4.1.1 系统软硬件调试

系统主控芯片模块通过杜邦线连接外部模块,在整体上电前,先依据PCB设计图排查硬件焊接是否正确。随后根据设计图,针对各外部模块独立编程,进行单元测试,验证系统硬件模块正常。其次按照系统整体任务要求,完成代码编程,编译后烧入系统。

4.1.2 液位检测功能验证

在系统软硬件调试完毕后,着手验证系统本地检测功能。在室温环境下,搭建测试场景,用圆柱形玻璃瓶盛放液体,将液位传感器及水泵置入玻璃瓶中,随后给系统供电。

系统正常运行,液位传感器将采集到的液位数据传输到STM32主控芯片,经处理后由OLED显示检测结果,用纸笔记录下传感器采集到的检测结果。同时,在玻璃瓶外部用游标卡尺测量液位高度,也记录下来。

此时,通过手动控制水泵注入或抽出一定量液体,待液位稳定后,再次记录下传感器采集到的结果,同时再次用游标卡尺测量高度。共计采集9组数据,如表1所示。

4.1.3 结果分析

由表1可以看到,随着水泵注入液体后,传感器检测结果上涨,但是与游标卡尺测量结果有一定的误差,误差范围在±0.4 cm以内。随着水泵抽出液体,传感器检测结果也同步改变,误差范围与上涨过程近似。

通过上述分析可知,该系统的本地检测功能是正常的,测量误差对于智能家居等民用场景,是可以接受的。

4.2 云端监测管理验证

阿里云物联网平台作为业界领先的物联网解决方案,可以实现数据上报和指令下发等任务,具有开发迅速、管理便捷及高兼容性等优势。本系统基于阿里云物联网平台实现云端监控和管理,以下为实验验证过程:

1)创建测试实例。在创建测试实例前,首先要完成账号注册认证等前置工作,其次在平台产品中开通公共实例,然后创建产品和设备。

2)定义产品物模型,即将实际产品抽象成由属性、服务和事件所组成的数据模型,用于物联网平台管理和数据交互。本次实验在阿里云物联网平台中定义了液位和温度两个物模型。

3)设备上报数据验证。将设备与阿里云物联网平台建立连接后,在本地搭建测试环境,把液位检测传感器置于测试用具中。首先向测试用具注入一定量液体,静置数秒时间待本地设备采集数据完毕后,观察阿里云物联网平台监测数据如图7所示。

随后,再次向测试用具注入液体,依旧静置数秒时间待设备采集数据完毕后,再次观察云端监测数据如图8所示。

对比图7和图8中物模型数据,可以发现由于本地再次注入液体导致液位上涨,云端监测数据改变,表明云端监测功能正常。

4)云端下发指令验证。当设备检测到的液位超过阈值范围时,系统会控制水泵工作从而注入或者抽出液体,除此之外还可以通过阿里云物联网平台下发指令控制设备运转。指令下发页面如图9所示,当指令下发成功后,系统会根据液位判断控制水泵工作,本地检测结果如图10所示。

从上述检测结果可以发现,云端指令下发后系统可以依照指令工作,云端管理功能正常。

5 结 论

本设计以STM32芯片作为控制核心,通过集成MSP20型液位检测传感器,实现了对液体液位的实时精确采集。同时借由MN316型NB-IoT模块将采集到的数据传输到阿里云物联网平台,实现液位数据的远程监控与管理。实验验证表明,该系统能够稳定可靠地运行,为液位监控提供了一种高效、便捷的解决方案。在智能家居产业蓬勃发展的背景下,本设计可以无缝集成到智能家居系统中,为家庭用水管理、泳池维护、水族箱养护等场景提供实时液位监控管理。

参考文献:

[1] 章子文,梁思程,张洪奇,等.设施温室物联网智能测控系统研究 [J].山东农业大学学报:自然科学版,2024,55(4):633-643.

[2] 朱华乐.智能电表管控系统设计与实现 [D].杭州:杭州电子科技大学,2023.

[3] 陈俊琏,李林洋,辛鑫,等.准确测量液位的反射式螺旋塑料光纤传感器 [J].光学学报,2022,42(1):97-105.

[4] 何宇驰,陈永乐,贺良,等.基于STM32的茶叶揉捻机揉捻桶转速模糊PID设计 [J].食品与机械,2024,40(7):74-80.

[5] 姚建南,刘志成,钟年丙,等.液位-液压-温度同时检测光纤隔膜传感器 [J].仪器仪表学报,2023,44(2):146-153.

[6] 杨立宏,袁夫全.基于NB-IoT的智慧路灯控制器设计 [J].现代信息科技,2024,8(2):177-181.

[7] 徐宁,胡敏英,桑永英,等.基于STM32的分控变量喷雾系统设计与试验 [J].中国农机化学报,2024,45(8):107-111.

[8] 潘美琴.基于NB-IoT物联网的农业水田作物精准灌溉系统 [J].齐齐哈尔大学学报:自然科学版,2024,40(1):32-37+44.

[9] 陈维娜,杨忠,顾姗姗,等.基于NB-IoT技术的智能农业环境监测系统设计 [J].中国农机化学报,2023,44(6):168-175.

[10] 徐建明,徐金辉.基于STM32的步进电机加减速轨迹规划算法 [J].浙江工业大学学报,2024,52(4):465-472.

作者简介:查启明(1992—),男,汉族,安徽凤阳人,助理实验师,硕士,研究方向:嵌入式系统装置设。

标签:  液位 

免责声明

本文来自网络,不代表本站立场。如有不愿意被转载的情况,请联系我们。

iidomino cuppor