北斗卫星融合定位水质监测智能巡航船查看源代码讨论查看历史
北斗卫星融合定位水质监测智能巡航船伴随着现代文明的进步,水污染也在日益加剧。水质监测是保护水资源的重要环节,然而水质定点检测的方法不足以充分放映整个水域的水质信息,且其工作量大、覆盖范围不全面、检测时效性差、无法实现显示监测信息。
基于以上考虑,本课题研究的是远程水质测量船,针对小型人工湖的水质进行大规模大范围的水质检测,优化处理水质定点检测网络布局,以期实时动态监测检测水域的水质。
本系统设计分为硬件控制终端、无线通信数据传输、监测信息显示平台三大部分。硬件控制终端由STM32开发板主控,搭载NB-IoT模块BC26、蓝牙数据传输模块、GPS/北斗卫星融合定位模块、4.8寸LCD显示屏、多个水质检测传感器[1]。使用蓝牙数据传输模块对巡航船进行指令控制,在水面上实现前进、后退、左转、右转等手动控制操纵。通过主控MCU实现巡航船的卫星定位以及水质检测数据的采集,NB-IoT模块BC26将硬件控制终端所采集的数据通过LwM2M传输协议上传至OneNET云平台上所搭建的监测信息显示平台,应用NB-IoT物联网套件进行实时数据显示,以折线图的形式直观地显示PH、TDS、浊度等水质信息,同时显示巡航船的卫星定位信息。
关键词:STM32;水质检测;北斗模块
设计方案
此设计研究的是远程水质测量船,总体可分为硬件控制终端、无线通信数据传输、监测信息显示平台三大部分。巡航船硬件控制终端采用嵌入式开发板,控制电机转速、舵机转角和卫星定位信息的接收,以保证巡航船的正常航行,更好地执行水质监测任务。在嵌入式开发板上搭载多个水质检测传感器,以采集水质的PH、TDS、浊度等数据信息,通过无线通信数据传输模块实现硬件控制终端与监测信息显示平台之间的数据通信,将水质数据、卫星定位[2]等信息上传至监测信息显示平台,从而进行数据的分析处理、存储显示。此外,通过蓝牙数据传输的方式发送相关指令对巡航船进行控制操作,以实现巡航船的航行以及相关数据采集。
方案论证
船体设计方案选择
方案一:单船体。考虑到巡航时可能会受水流阻力、水面风浪等影响,采取V字型船首结构设计,往船尾逐渐变宽以减少水流阻力,船横切面设计为类矩形结构,船底采用平底。这类船体需充分利用船舱的有限空间,提高船体稳定性,以防止巡航过程中由于船体重心发生偏差导致侧翻的情况,同时需要对船中的电路做防水保护处理。
方案二: 双船体。相对于单一船体而言,采用双船体设计结构更稳固,可提供足够的稳.定性,船舱可利用空间和承重能力也会更大,方便对巡航船进行操纵控制,但相应地巡航船的航行速度会有一定的影响。
本设计对船体整体的稳定性、防水性都有一定的要求,巡航过程中船体必须保持平稳,防止侧翻,同时还需要考虑硬件控制终端电路的防水保护。基于这两点先决条件的考虑,采用方案二,设计一个双船体巡航船,保证巡航船的平稳航行,船首采用V字型结构减少水流阻力,船体之间连接处的船舱部分使用镂空设计,使得硬件控制终端与水平面有一定的高度差,加之辅以泡沫板增加对电路的防水保护。由于本设计中硬件控制终端外设较多,对承重有一定的要求,因此在中间船舱连接处需加固以防止巡航船船体散架。
嵌入式开发板方案选择
方案一:STM32。STMicroelectronics(意法半导体)生产多系列32位数据处理芯片,可满足项目具体应用的需求,其数据运算处理快,提供了丰富的I/O口,成本低、功耗低且有众多软件包支持,另外提供STM32CUBE给用户,可根据具体应用开发需求进行选型,简单易用。
方案二:myRIO。NI(美国国家仪器)的myRIO是一款便携式设备,包含双核处理器、多路输入输出以及WiFi支持,可使用LabView或C/C++对该设备直接编程,连接多种传感器且能直接控制多个外设,只需简单的几个设计就能完成通信设置,成为一个WiFi热点,实现硬件控制终端与监测信息显示平台的数据交互。
方案三:飞控板。相对以上两种嵌入式开发板,飞控板集成度较高,灵巧轻便,配备对应的接口外接所需要的模块,外部线路设计简单,可将上位机的指令转换成各种控制信号,直接控制搭载在飞控板上的各种外设[2]。
本设计使用的外设较多,需要使用多个I/O口,对数据的处理速度有一定的要求,结合应用开发过程中的具体需求,选用STM32嵌入式开发板,技术文档丰富全面,使用社群涵盖面广,便于开发过程中进行借鉴。
无线通信数据传输方案选择
方案一:WiFi。ESP8266是一款WiFi模块。其低成本低功耗,能够快速联网且无线通信数据传输稳定,同时也可进行双向通信,检测多种传感器信息,实现本设计中硬件控制终端的数据上传以及对巡航船的指令控制。特别需要注意的是该模块在300m以内可保持稳定可靠的连接。
方案二:Lora。 Lora无线通信模块使用扩频通信技术,低功耗、抗干扰能力强、传输距离远,有效通信距离可达3千米以上,但Lora自身有服务端,需要自己组网以进行数据传输。
方案三:NB-IoT。NB-IoT(窄带物联网)兼备了Lora的技术优势,覆盖范围大,可同时连接多台终端应用设备,但需要运营商的支持,运营商通过收取资费来提供相应的服务。
本设计基于数据传输距离和通信发展未来性的考虑,选择方案三,所采用的模块是移远通信的NB-IoT模块BC26,这个模组使用的是联发科的芯片MT2625,支持多个云平台,为系统设计提供极大的便利。
监测信息显示平台设计方案选择
方案一:安卓手机应用。用Java设计监测信息显示平台,可以编写一个APP,具有良好的人机交互效果,主要开发平台是Android Studio,代码开源且可利用的技术资源多,若使用ESP8266这款WiFi模块,可与智能手机进行连接,使用所设计的APP直接对巡航船进行指令控制,且能够在手机界面直观显示。
方案二:PC端上位机。使用C#设计上位机,可在PC端设计一个exe运行文件,相对而言C#语言简单实用。另外微软所搭建的Visual Studio平台组件库丰富,可通过简单的控件拖拉即可实现较好的UI界面,可直接与SQL Server连接以进行数据的存储。方便后期数据查看,但数据的上传下发需要通过第三方云服务器,其中需要收取一定的资费。
方案三:物联网云平台。 OneNET是运营商中国移动为物联网应用所搭建的第三方应用开发云平台,通过构建接入平台、大数据平台,提供多设备云端管理、数据流可视化分析、多协议网络适配等服务,可快速实现开发者具体应用设计需求。
本设计只需要显示水质的检测数据以及巡航船的定位信息,从未来的数据显示发展趋势来看,物联网云平台是主流,随着5G通信的日渐成熟,NB-IoT模块不仅能实现数据上传,更能实时上传图片和视频信息,进一步保障水质检测工作的准确性和完整性。所以选择方案三。
参考文献
- ↑ 传感器工作原理以及传感器种类详解 ,搜狐,2022-12-30
- ↑ 我国自己研发的北斗卫星定位系统有多重要?,搜狐,2023-06-01