APP下载

一种基于GPRS的溶解氧远程采集控制系统

2021-10-27胡树冉封文杰穆元杰李乔宇

物联网技术 2021年10期
关键词:鱼塘溶解氧串口

胡树冉,封文杰,穆元杰,李乔宇

(山东省农业科学院科技信息研究所,山东 济南 250100)

0 引 言

近年来,物联网的快速发展提高了诸多工业应用的效率。但在农业方面,物联网的应该相对较少,基于此,有必要对物联网在农业池塘养殖中的应用进行探究。

本研究团队自主研发了基于GPRS的溶解氧远程采集控制系统,可精准实时地实现农业池塘水中溶解氧的采集、显示、分析等功能。

1 总体架构

控制系统的工作过程:单片机作为主控制CPU,首先通过485电路采集溶解氧传感器的数据,溶解氧数据由单片机处理后,经过协议打包上传给GPRS电路。GPRS模块将数据稳定传输至平台,由平台进一步提取数据,并传输给手持设备。手持设备可以读取和设置参数。如果采集的溶解氧含量超过一定的预警值,那么平台检测到后可以通过GPRS模块向单片机发送指令,单片机接收后,控制继电器模块动作,从而控制增氧机的启停,使池塘里溶解氧的含量维持到一定的范围[1-2]。系统结构如图1所示。

图1 溶解氧采集控制系统结构

2 硬件设计

2.1 主控CPU模块

主控CPU模块选用高性能、易开发的STM32F103单片机。STM32F系列属于中低端32位ARM微控制器,该系列芯片由意法半导体(ST)公司出品,其内核是Cortex-M3,运行稳定,便于开发[3]。主控模块电路如图2所示。

图2 主控模块电路

2.2 RS 485数据采集模块设计

RS 485总线以良好的抗干扰能力、稳定的传输速率、传输距离远等优势得到了广泛的应用,多参数监测系统中各传感器通过RS 485总线与主控CPU模块相连,通过MODBUS协议获得采集数据。STM32F103单片机串口转RS 485电路如图3所示,可实现RS 485通信功能[4]。

2.3 GPRS通信模块设计

GPRS通信模块采用TTL转GPRS透传芯片进行设计。GPRS通信模块电路如图4所示。

图4 GPRS通信模块电路

2.4 电源模块设计

系统内部使用3.3 V供电电压,该电压为芯片常用电压。GPRS模块的供电电压为3.8 V,因为数据发射时的功率较大,所以需要采用大功率电源芯片供电。电源是系统的核心,芯片需采用输出纹波较小的电源进行供电[5]。电源模块电路如图5所示。

图5 电源模块电路

3 软件设计

系统软件包括主控、串口通信,数据采集读取、设备控制等程序块。每个程序块都各自实现自己的程序功能,模块化编程更有利于发挥程序的可读性、可移植性等优势[6]。

系统通电后,程序初始化相应参数,包括中断函数初始化、串口初始化、优先级初始化、标志初始化、GPIO口初始化等。初始化完毕后进入主函数,循环运行。以轮询方式采集溶解氧传感器的数据,采集完毕后,将采集的数据进行处理,按照平台协议打包,之后通过串口将数据发送到平台服务器进行处理。如果接收到平台的控制指令,则进入控制指令程序处理函数并解析,根据解析结果,通过RS 485总线向设备发送控制指令,操作对应的控制设备[7]。系统软件设计流程如图6所示。

图6 系统软件设计流程

4 实验情况

为确保基于GPRS溶解氧远程采集控制系统(如图7所示)的工作稳定性,将设备安装至鱼塘后进行测试。通过微信小程序可以实时查看鱼塘里的溶解氧含量,并可通过小程序发送控制指令实现增氧机的启停,完成采集控制的闭环操作流程,稳定控制鱼塘中溶解氧的含量[8]。

图7 GPRS溶解氧远程采集控制产品

设备部署完成后,通电系统运行,在微信小程序中查看采集数据(如图8所示),溶解氧传感器数据等可正常采集与上传。为测试采集系统的工作稳定性,待其长时间工作后在平台中查看其采集数据的连续性,并查看有无异常数据,也可查看监测系统运行一段时间采集数据的走势[9]。

图8 平台数据分析

试验表明,本文设计的基于GPRS的远程采集控制系统可实时采集鱼塘中溶解氧的含量、鱼塘水温等参数并上传至微信小程序平台,系统衔接顺畅,显示直观,设备长时间运行性能稳定,数据准确,有效展示了当前鱼塘中溶解氧的含量[10]。

5 结 语

为精准检测水中溶解氧的含量,利用物联网传感器对水中溶解氧的含量进行实时检测调控对鱼塘养殖而言意义重大。同时,我们团队自主开发的微信小程序对接稳定,效果显著,能有效监测水中溶解氧的含量。

猜你喜欢

鱼塘溶解氧串口
鱼塘的面积
浅谈AB PLC串口跟RFID传感器的通讯应用
浅析水中溶解氧的测定
巧建鱼塘
污水活性污泥处理过程的溶解氧增益调度控制
城市河道洲滩对水流溶解氧分布的影响
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
好多鱼
基于并行控制的FPGA多串口拓展实现