水产养殖监测控制系统的设计

来源 :装备维修技术 | 被引量 : 0次 | 上传用户:likezzz21cn
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着互联网技术和传感器技术的飞速发展,将互联网技术和传感器应用于农业的中越来越普遍,本文提出一套水产养殖监测控制系统的设计方案,该方案是以Arduino开发板为核心,通过温度、水浑浊度、水位、ph值等传感器采集数据,用户可以通过web端进行监控和控制。该系统设有自动发出警报,通过短信方式提醒用户。系统运行结果表明,方案切实可行,具有一定的实用价值。
  关键字:水产养殖,传感器,Arduino,控制与警报
  作者简介:易家兴,男,湖北黄冈人,本科在读。研究方向:计算机科学与技术。
  通讯作者:卢东方,男,湖北荆州人,硕士研究生。研究方向:计算机检测、物联网应用。
  基金:长江大学工程技术学院2019年大学生创新创业训练计划项目(S201913245010).
  1、前言
  传统水产养殖业以牺牲自然环境资源和大量的物质消耗等粗放的饲养方式为主要特征,经济效益低而且污染水体环境。本文提出一套水产养殖监测控制系统的设计方案,用来检测养殖池中水的温度、水浑浊度、水位、ph值等,通过智能控制换水器、加热器、增氧器等设备来调节池水的相关因素,为鱼类提供更好的生存环境,可以有效的节省人力物力,提高水产养殖的产量和质量。
  2、系统功能设计
  2.1、系统硬件设计
  系統硬件由Arduino主控模块、GPRS通信模块、数据采集模块、功能控制模块等组成。其中GPRS通信模块选用SIM800A;数据采集模块包括温度传感器、ph传感器、浑浊度传感器、水位监测器等,其中温度传感器采用DS18B20,ph传感器采用成本低的模拟PH计;功能控制模块由换水器、加热器、增氧装置等组成。系统设计框图如图1所示。
  硬件各模块功能介绍如下:
  (1)主控模块
  采用Arduino NANO模块作为主控模块,通过引脚输出高低电平的方式去控制其他模块。Arduino模块带有一个微控制器,用户可以将编写的程序,编译成二进制文件,烧录进微控制器中。与电脑的USB接口相连,通过Arduino开发工具的串口监视器来查看引脚的状态。Arduino带有多个模拟信号引脚和数字信号引脚,可以通过引脚连接传感器和继电器等多个模块。
  (2)数据采集模块
  采用了温度传感器、浑浊度传感器、ph传感器等传感器。将DS18B20温度传感器的DQ引脚接至Arduino NANO控制器数字引脚D2,且并联4kΩ的上拉电阻。将PH传感器接模拟信号引脚,其他传感器连接Arduino的数字信号引脚。当系统上电后,传感器会自动将采集的16进制数据传输给Arduino模块。
  (3)通信模块
  使用SIM800A,通过与Arduino主控模块上的TX,RX引脚相连,来实现数据传输。Arduino以报文的形式,将采集到的数据打包成JSON格式,然后传输给GPRS模块,GPRS模块把数据发送到服务器。客户端的响应信息由GPRS模块传回给Arduino主控模块。
  (4)功能实现模块
  换水器、增氧器、加热器等设备,使用继电器作为设备的总开关,通过改变Arduino上相关引脚的高低电平去实现控制。每个引脚都设定一个指令,通过反馈的指令信息去改变相关引脚的电平,从而实现一对一的控制功能。
  2.2、系统软件设计
  本系统软件由后端程序与web前端组成,后端使用java语言开发,使用spring boot框架和spring data jpa持久化工具。Web前端使用bootstrap框架。后端程序的dao层与和Service层实现数据的存储和业务逻辑,由控制器Controller实现Web端和服务器之间的数据交互。在视图渲染上采用了响应式开发技术,适用于手机端和PC端。用户可以通过Web端查询水池内部环境参数,若环境参数出现异常,用户可以通过Web端手动控制水池的换水器、增氧器、加热器等设备来进行调节,实现水产养殖的智能化和远程管理。
  由于硬件传给后端程序的数据是以报文的形式,所以后端程序要对报文进行处理取出数据,后端程序对数据的处理如下:
  (1) 将读取的数据转换成十六进制的字符串。
  (2) 然后对数据的包头包尾进行校验,比如包头设置为“FE”,包尾设置为“E5”。
  (3) 去掉数据包的包头包尾。然后通过字符串进行截取数据,每种数据之间通过“FF”进行隔开,依次提取数据。硬件传送的数据的顺序要与后端解析数据的顺序要一致,不然会引起数据提取混乱。
  (4) 判断截取的数据是否合法,将合法的数据存入数据库以备下次使用,不合法的数据丢弃。
  (5) 上述包头包尾校验不成功,将数据包丢弃,然后重新获取。
  WEB端通过请求服务端获取数据,服务端通过WEB端发送的请求将数据发送给WEB端,WEB端与服务端的数据通过JSON格式传送。
  2.3、系统运行原理
  本系统主要以Arduino为控制主板,通过连接温度、浑浊度、光照强传感器等其他设备来实现对水池环境参数的采集。Arduino通过连接SIM800A的GPRS远程通信模块,将数据传送至服务器,再由后端程序将数据解析并保存在数据库中。异常的数据,后端程序将进行记录,并自动发送短信到用户手机中以此提醒用户达到预警目的,用户可以通过Web网页来查看相关信息,并通过操作发送指令到服务器,服务器再将指令通过TCP通道传输给GPRS通信模块。每条指令分别控制着一个继电器,每个继电器对应一种控制功能。
  3、系统测试
  首先,将程序在本地进行测试,测试通过之后将程序打包上传到远程服务器上进行测试,用户模拟注册登录,再打开相应页面,进行功能测试。为了方便用户便于查看,将解析后的数据渲染成html页面,以折线图的形式展示给用户,如下图所示。(由于篇幅有限只给出温度、PH折线图)
  4、结语
  本文提出一套水产养殖监测控制系统的设计方案,该系统由Arduino主控模块、数据采集模块、GPRS通信模块、功能控制模块构成,使用温度传感器、ph传感器、光敏传感器等实现水池中环境参数的采集,用户可以通过Web端实现水产养殖的实时监控和智能控制。
  水产养殖的环境要求如下:
  (1)温度:18—35℃为正常温度,25—32℃为最适宜生长温度。
  (2)PH值:6.5—8.5,低于6.5肥效不能正常发挥优势,氨氮、硫化氢等毒性增大,易缺氧浮头。
  (3)透明度:20—30cm,过高肥度不够,过低影响光合作用。
  (4)溶解氧:≥3mg/L,小于3mg/L会影响鱼类的摄食,小于2mg/L时会出现浮头,小于1mg/L会出现泛塘,直到大量死亡。
  本系统通过传感器获得水池的环境数据,从而监控水产养殖的情况。硬件设备每次传送数据时会将每个控件的开关状态发送给服务端,服务端每次读取数据的时候,会根据数据来判断是否开启了开关,开启了那个开关。
  当服务端获得的温度数据超出(低于)标准值时,服务端会发送降温(升温)指令给硬件模块,打开降温(升温)开关,当服务端得到的温度达标之后会发送关闭指令给硬件模块,关闭温降(升温)开关。在这个过程中,该系统会通过发送短信的形式及时让用户知晓,从而达到预警的目的。当服务端读取到其他的传感器读到数据超出标准值时,也会触发相应的开关从而调节水池的环境。服务端获得的水池的氧容量达到设定的标准值时,会自动关闭增氧器。当水产养殖的环境达到要求时,养殖的动植物就会更好的生存下来,产量也就上升了。
  系统运行结果表明,方案切实可行,具有一定的实用价值。
  参考文献
  [1] 《水产养殖对水质的要求》 https://zhidao.baidu.com/question/1372497336358881459.html
  [2] 刘文艺.基于Arduino的温度监控系统设计[J].信息技术 ,2018,19(8)
其他文献
随着低变质煤低温热解技术的不断完善,以其气体产物焦炉煤气、液体产物煤焦油为原料进行的分质利用加工技术亦相继成熟,但其固体产物——半焦,由于灰分、硫分较高的特点仅仅
摘要:针对目前印制板设计应用抗干扰技术过程存在的问题,文章从实践角度出发,分析了抗干扰技术的应用现状,并提出了优化控制的方法策略。结果表明,只有在明确噪声干扰产生原因与作用情况基础上,才能是抗干扰设计技术效果充分发挥出来。  关键词:印制板设计;抗干扰技术;电磁噪声;接地技术  引言:  科技水平的不断提升,使得人们越来越认识到印制板电路设计可靠性所带来的价值。然而,印制板设计不合理问题的存在,不
本文通过微波活化焙烧辉钼矿的方法,得到了硫含量较低的三氧化钼,为辉钼矿冶炼提出了新的工艺方法。研究了微波活化前后辉钼矿氧化焙烧的工艺条件和过程,并采用激光粒度分析