关键词:
水产养殖
无人船
服务器
Android
Web
信息管理系统
任务分配
摘要:
随着自动控制技术、物联网技术、网络通信技术的不断发展,传统水产养殖行业也朝着数字化和智能化的方向在迅速发展。人民日益增长的水产品需求、渔业高质量发展的行业需求,更加凸显了传统水产养殖过程中依靠人工劳作而形成的粗放、简单的养殖方式的落后。养殖效率的提高、养殖成本的降低、养殖质量的改善、养殖过程的规范等,成为水产养殖行业领域的发展目标。针对传统人工撑船投喂方式人工成本高,传统岸边机械投料装置存在的抛洒面积受限、无法实现均匀、定点投料等问题,水产养殖无人船成为近期研究热点,可在远离岸边的宽阔水域中实现定点、定量、定时自动投喂,可降低饲料系数、降低养殖成本。如何实现水产养殖无人船的高效实用,监控管理信息系统的设计成为亟待解决的关键问题。在深入探究水产养殖过程、养殖户需求、水产养殖无人船的设计与实现的基础上,在深入了解监控管理信息系统设计与实现的国内外研究进展的基础上,借助于云计算平台技术、4G通信技术,WEB开发技术、Android开发技术等,设计并实现了水产养殖无人船监控管理信息系统。系统通过一个云平台服务器加两种用户终端监控管理的模式,实现水产养殖无人船相关数据的存储与管理;实现远程用户对水产养殖环境监控、无人船自动巡航饲料投喂控制、投喂任务调度管理、无人船运行维护管理等功能,提高养殖效率,改善养殖户工作方式,并能为科学喂养提供数据支撑,推动数字渔业、智能渔业的进一步发展。针对系统需要实现的功能,对系统进行了功能需求分析、非功能需求分析及系统用例分析。通过对系统用户进行划分,详细地分析并明确了各类用户的功能需求和权限范围。针对需求分析,借助于统一建模工具设计了整个管理信息系统的总体架构,并进行功能模块划分、数据库设计和系统通信方式设计。其中,功能模块包括投喂管理模块、用户管理模块、留言管理模块、无人船管理模块、池塘管理模块和设备管理模块。基于My SQL进行数据库设计,建立的数据库表包含无人船信息、电池信息、池塘信息等共12个数据表,满足了信息存储和管理的需要,保证了数据的查询效率,同时满足系统的安全和性能需要。为提高无人船饲料投喂效率、降低无人船运行成本,在不考虑多船间存在碰撞问题的前提下,建立了多船多任务工作模式下的定点饲料投喂任务分配调度模型。模型将任务完成时间、无人船电池余量、无人船饲料仓最大容量等作为约束条件,将完成投喂饲料任务组合的无人船巡航路径长度和时间作为优化目标,优化设计了进行任务分配的改进的蝴蝶优化算法,基于Matlab进行了仿真实验。结果显示,采用改进的蝴蝶优化算法实现了对无人船饲料投喂任务的高效分配。基于阿里云服务,搭建了系统云服务器,基于MQTT协议,实现无人船与云服务器间的数据传输;基于HTTP协议,实现客户端与云服务器间的数据传输。针对远程养殖户客户端,主要使用Java开发语言,采用主流的开发框架SSM(Spring+Spring MVC+My Batis),采用基于MVC(Model-View-Controller)模式的整体架构,将系统划分为模型、视图、控制器三层,设计实现了Android客户端和Web客户端。