基于云平台的植物工厂智能控制系统

文档序号:25355508发布日期:2021-06-08 14:40阅读:320来源:国知局
基于云平台的植物工厂智能控制系统

1.本发明涉及一种基于云平台的植物工厂智能控制系统,涉及物联网技术领域、云平台技术领域、zigbee无线通信技术领域、android应用软件开发领域、pwm调光技术领域、智能控制技术等相关领域,尤其涉及一种适用于android系统控制终端的基于云平台的植物工厂智能控制系统。


背景技术:

2.我国作为世界人口大国,人口数量庞大且逐年累加,而国民的衣食所需都依赖农业产出。但随着经济的迅速发展和城市化进程的加快,我国的耕地面积不断减少,人们对绿色健康食品的需求却越来越大,因此,如何利用有限的耕地供给日益增长的人口需要成为我国农业发展的重点和难点。而传统农业技术水平低,农业生产受气候条件影响大;近年来,温室大棚在农业生产中普及,但是大棚内的采光性很差,温湿度只能依靠人为粗略调节,也不能满足现代农业发展的需要。同时,经济的增长也带来了环境污染和资源浪费问题,节能环保成为了现代社会发展的主题;此外,劳动力成本也随着经济的增长而上升,年轻人不愿务农的现象日趋严重,吸引年轻人务农成为我国面临的社会难题,这一系列突出问题促使着我国农业生产向智能化、科技化方向发展。
3.植物工厂作为现代农业智能化和科技化的最高水平,能够使作物在生长过程中不受外界环境的影响,通过智能控制植物工厂内的环境因素,可降低生产周期、显著提升作物产量、提高耕地利用率,实现周年按计划均衡生产、稳定供给。植物工厂的智能化和精确化,在降低了人工成本的同时也解决了资源浪费问题;不施用农药,农产品绿色安全,品质得到了保障;而且作为高技术密集型产业,植物工厂也能够吸引年轻人务农,因此成为解决上述问题的有效办法。近年来,国内外先后开始对植物工厂进行深入研究和开发并发展迅速,传统的单片机植物工厂智能控制系统和现场总线植物工厂智能控制系统虽操作简单、成本低、控制灵活,但是带来的严重问题是布线复杂、可靠性差、故障率高、维护成本高,而plc(可编程式控制器)植物工厂智能控制系统虽可靠性高、稳定性强,但成本较高、普及难度大。而且植物工厂智能控制系统是一个复杂的系统工程,涉及到采集数据接入、数据传输、数据存储、数据处理、智能控制和终端应用等诸多环节,对系统的可靠、可维护性和易操作性要求都较高。


技术实现要素:

4.基于背景技术中说明的问题,本发明提供了一种基于云平台技术、android系统软件开发技术、zigbee等无线通信技术、pwm调光技术以及智能控制技术的植物工厂智能控制系统,采用c/s架构,对现有的植物工厂智能控制系统进行改进和完善,能够通过android移动控制终端随时随地调控植物工厂作物的生长环境状态(包括光照强度、温度和相对湿度),实现了设备接入绑定、数据管理和存储、环境监测和智能控制等功能,既保证了用户的智能操作需求,又能够达到促进作物生长、增加作物产量和质量的目的。达到了农业生产智
能化、可视化、数据化的目标,对农业发展、环境保护和社会进步都具有重要研究价值和意义。
5.本发明采用的技术方案为基于云平台的植物工厂智能控制系统,该系统包括云平台、android系统控制终端、智能设备端和通信网络。智能设备间通过zigbee无线通信网络实现数据传输,智能设备端通过路由器或交换机接入云平台,android系统控制终端通过移动网络或wifi和云平台进行数据交互。
6.智能设备端包括智能控制器和配件设备,配件设备包括温湿度传感器、光敏传感器、调光器、水泵、风扇等,两者在zigbee无线通信网络下进行数据互通,实现对植物工厂内的数据采集和远程调控功能。智能控制器内置电源模块、接入模块(wifi+ether)、zigbee模组、控制模块(含嵌入式处理器单元、存储单元、时钟单元)、显示操控模块(含按键单元、指示灯单元),配件(天线、电源适配器、网线等)。其中,智能控制器通过接入模块的有线(ether)方式接入路由器,并通过mqtt协议进一步接入到云平台,上传监控数据及接收云平台的控制指令;另外,智能控制器需要在android控制终端进行添加才能实现后续远程智能控制,添加时,通过接入模块的无线(wifi)方式连接到路由器,在同一局域网下的android控制终端通过udp通信广播获取智能控制器信息并将其利用http网络请求发送给云平台,云平台返回设备三元组,至此智能控制器添加成功。嵌入式处理器采用stm32f091rct6,主程序将设备影子更新指令下发至zigbee模组,zigbee模组根据设备id将控制信息透明传输给相应的智能配件设备,同时将设备信息存至存储单元,以备上报至云平台。
7.云平台包括业务应用服务器、物联网平台和云端数据库三部分。作为系统的核心,云平台为设备提供安全可靠的设备连接通信、用户管理和数据分析管理功能。云平台中的业务应用服务器是系统的控制逻辑中心,通过服务器端程序执行业务逻辑处理(事务处理),数据库连接和系统安全等功能。作为android控制终端的直接访问对象,业务应用服务器会在android控制终端发来控制请求时,根据请求内容调用物联网平台api/http接口查询或更改设备影子,最后将请求结果返回android控制终端,并存储到云端数据库中。服务器端程序采用ssm框架封装处理方法并与mysql数据库进行交互,服务器端程序事务处理流程为:
8.android控制终端发送json格式请求到dispacherservlet(分发器),由dispacherservlet控制器查询handermapping,定位到处理请求的controller,controller数据解析后调用业务逻辑处理或物联网平台api,从数据库中提取所需数据查询到设备影子状态数据后返回,dispacherserclet得到返回的数据后将其打包成json格式数据包发送给android控制终端并显示在手机界面上。
9.物联网平台是一个设备管理平台,它向下连接系统设备,动态创建设备影子,接入和管理智能设备,支撑设备数据采集上云;向上提供云端api,业务应用服务器通过调用云端api将指令下发至设备端,实现远程控制。其中,设备影子用于缓存设备状态,设备在线时,可以直接获取云端指令,设备离线时,上线后可以主动拉取云端指令,并根据时间戳判断指令是否过期从而选择更新与否。设备影子是一个json文档,用于存储设备上报状态、应用程序期望状态信息。应用程序通过调用updatedeviceshadow下发期望状态给设备影子,设备影子再将文件以json格式下发给设备端,设备根据影子更新状态,并上报最新状态给影子;应用程序调用getdeviceshadow接口获取设备最新状态,用于响应控制终端或存储在
数据库中。
10.android控制终端是实现设备管理、远程监控和数据显示的用户操作平台,是系统构架中的应用端。作为直接与用户交互的平台,android控制终端能够将复杂的后端控制逻辑以简单快捷的操作界面的形式呈现给用户,实现远程访问和控制植物工厂的功能。
11.android控制终端软件采用mvp框架进行控制终端软件的搭建,mvp框架即model—view—presenter,其中,presenter作为沟通view和model的桥梁从model层获取数据后返回给view层,使得view和model之间没有耦合,也将业务逻辑从view层中抽离出来,model层负责提供数据的存取或网络请求,presenter需要通过model层存储或获取数据,view层最终将处理完的数据以ui的形式展示出来。为了使程序逻辑更加清晰,在传统mvp框架的基础上加入contract契约类,将定义同一个界面的view和presenter的接口通过规范的方法统一命名或注释,整个页面的逻辑清晰可见。数据访问和解析采用rxjava+retrofit+okhttp的网络请求及异步处理框架,以此来获取网络数据,并利用gson对json数据进行解析,最终将结果返回给客户端。retrofit对网络请求接口进行封装,能够将基本的java接口通过动态代理的方式翻译成http请求并通过okhttp发送请求,rxjava的异步处理使程序在请求成功结束后自动进行后续操作或者在请求失败后调用onerror()方法。
12.通信网络作为系统的搭建桥梁,是实现状态信息和控制指令的传输机制。智能控制器通过广域网,连接到物联网平台,采用设备影子topic实现数据流转;android控制终端app直接连接智能控制器,采用udp通信协议进行本地控制和设备管理;通过wifi路由器或移动数据连接到云平台,采用http协议进行远程控制和设备管理。特别地,智能控制器与外部配件设备之间通过zigbee透明传输机制实现安装区域内的无线网络通信。智能控制器配置zigbee中心节点(协调器),外部配件配置为zigbee路由节点,所有节点配置不同的id,拥有相同的网络panid和频段。中心节点负责将控制数据广播下发到各子节点,路由节点负责上报和中继监测数据给父节点。
13.系统软件平台实现了设备管理、区域管理、控制操作和用户管理功能。其中,设备管理是对智能设备进行连接配网并在云平台绑定,采用udp进行数据通信,通过广播获取设备ap参数,手动添加完成配网,绑定成功后,能够实时查看设备状态信息;区域管理是在添加设备时设定设备行数和列数,保证每个设备都有确切的空间位置,采用gridlayout布局实现对现实空间中设备分布位置的直观显示,可任意添加、删除、更改群组成员,方便用户对设备进行管理;控制操作中,手动控制为用户提供随时控制功能,定时控制为通过设定一天(24小时)之内的控制逻辑,实现自动控制植物工厂内智能设备的状态改变;联动控制为设备及其所关联的开关,根据所联动传感器的值和目标值自动调整控制,与传感器值联动的,可以是单个开关,也可以是群组开关。定时和联动控制数据,如光周期文件,可上传到云平台数据库存储,也可下载云平台推荐控制场景;用户管理中,账号管理涉及用户安全问题,注册、登录及修改密码功能都需要进行账号验证,账号验证通过云平台向用户电子邮箱发送验证码实现;问题反馈为用户提供反馈渠道,有利于软件的进一步完善;帮助中心能够提供操作指导、植物种植知识等信息供用户借鉴和采纳。
附图说明
14.图1是系统设计方案图。
15.图2是智能控制器内部结构图。
16.图3是云端业务应用服务器程序事务处理流程图。
17.图4是系统通信网络图。
18.图5是android控制终端软件平台功能图。
19.图6是android控制终端软件注册界面逻辑框架图。
20.图7是android控制终端软件图。
21.其中,(a)是注册界面,(b)是首页界面。
22.图8是android控制终端软件联动控制图。
23.图9是android控制终端软件图。
24.其中,(a)是意见与反馈,(b)是帮助与支持界面。
具体实施方式
25.结合附图对本发明的实施方式做具体说明。
26.本系统由云平台、android系统控制终端、智能设备端和通信网络四个主要部分组成。
27.(1)云平台包括业务应用服务器、物联网平台和云端数据库三部分。作为系统的核心,云平台为设备提供安全可靠的设备连接通信、用户管理和数据分析管理功能。云平台中的业务应用服务器是系统的控制逻辑中心,通过服务器端程序执行业务逻辑处理(事务处理),数据库连接和系统安全等功能。作为android控制终端的直接访问对象,业务应用服务器会在android控制终端发来控制请求时,根据请求内容调用物联网平台api/http接口查询或更改设备影子,最后将请求结果返回android控制终端,并存储到云端数据库中。服务器端程序采用ssm框架封装处理方法并与mysql数据库进行交互;物联网平台是一个设备管理平台,它向下连接系统设备,动态创建设备影子,接入和管理智能设备,支撑设备数据采集上云;向上提供云端api,业务应用服务器通过调用云端api将指令下发至设备端,实现远程控制。
28.(2)android系统控制终端:android控制终端是实现设备管理、远程监控和数据显示的用户操作平台,是系统构架中的应用端。作为直接与用户交互的平台,android控制终端能够以图表、文字相结合的ui简明扼要地展现植物工厂内环境参数情况,并将控制操作精简化,注重用户操作体验,容错能力强,实现了设备管理、智能控制和数据显示等综合功能。采用mvp框架进行控制终端软件的搭建,其中,presenter作为沟通view和model的桥梁从model层获取数据后返回给view层,使得view和model之间没有耦合,也将业务逻辑从view层中抽离出来,model层负责提供数据的存取或网络请求,presenter需要通过model层存储或获取数据,view层最终将处理完的数据以ui的形式展示出来。为了使程序逻辑更加清晰,在传统mvp框架的基础上加入contract契约类,将定义同一个界面的view和presenter的接口通过规范的方法统一命名或注释,整个页面的逻辑清晰可见。数据访问和解析采用rxjava+retrofit+okhttp的网络请求及异步处理框架,以此来获取网络数据,并利用gson对json数据进行解析,最终将结果返回给客户端。
29.(3)智能设备端:智能设备端包括智能控制器和配件设备,配件设备包括温湿度传感器、光敏传感器、调光器、水泵、风扇等,两者在zigbee无线通信网络下进行数据互通,实
现对植物工厂内的数据采集和远程调控功能。智能控制器内置电源模块、接入模块(wifi+ether)、zigbee模组、控制模块(含嵌入式处理器单元、存储单元、时钟单元)、显示操控模块(含按键单元、指示灯单元),配件(天线、电源适配器、网线等)。其中,智能控制器通过接入模块的有线(ether)方式接入路由器,并通过mqtt协议进一步接入到云平台,上传监控数据及接收云平台的控制指令;另外,智能控制器需要在android控制终端进行添加才能实现后续远程智能控制,添加时,通过接入模块的无线(wifi)方式连接到路由器,在同一局域网下的android控制终端通过udp通信广播获取智能控制器信息并将其利用http网络请求发送给云平台,云平台返回设备三元组,至此智能控制器添加成功。嵌入式处理器采用stm32f091rct6,主程序将设备影子更新指令下发至zigbee模组,zigbee模组根据设备id将控制信息透明传输给相应的智能配件设备,同时将设备信息存至存储单元,以备上报至云平台。
30.(4)通信网络:客通信网络作为系统的搭建桥梁,是实现状态信息和控制指令的传输机制。智能控制器通过广域网,连接到物联网平台,采用设备影子topic实现数据流转;android控制终端app直接连接智能控制器,采用udp通信协议进行本地控制和设备管理;通过wifi路由器或移动数据连接到云平台,采用http协议进行远程控制和设备管理。特别地,智能控制器与外部配件设备之间通过zigbee透明传输机制实现安装区域内的无线网络通信。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1