一种水稻栽培物联网虚拟仿真实验教学系统和方法与流程

文档序号:24243127发布日期:2021-03-12 13:18阅读:99来源:国知局
一种水稻栽培物联网虚拟仿真实验教学系统和方法与流程

本发明涉及水稻栽培仿真实验教学系统和方法,具体涉及一种水稻栽培物联网虚拟仿真实验教学系统和方法。



背景技术:

我国农业现代化进程明显加快,但也面临着资源、环境与市场的多重约束。实施“互联网+农业”工程,对于探索农业物联网理论研究、系统集成、重点领域、发展模式及推进路径,提高农业物联网理论及应用水平,促进农业生产方式转变、农民增收有重要意义。

现在的水稻栽培实验为实体实验,实体实验具有周期长、不可见、不可逆的问题;农业物联网感知的历史数据再利用及虚拟显示仿真技术,为在线农业生产的虚拟仿真实验奠定了物质基础。通过虚拟仿真技术,教学时间内展现农业生产的漫长周期,既能真实再现农业生产全过程,又能克服农产品生产周期较长不便于展现的弊端。在网络、多媒体已经彻底改变了人们获取知识传统途径的今天,以网络为依托来构建虚拟仿真实验教学中心,通过实验教学信息化建设来解决和克服以往实体实验的不足,显得尤为必要。



技术实现要素:

本发明的目的在于提供一种水稻栽培物联网虚拟仿真实验教学系统和方法,解决了实体实验中周期长、不可见、不可逆的问题。

实现本发明目的的技术解决方案为:

一种水稻栽培物联网虚拟仿真实验教学系统,包括信息采集模块、控制处理模块、通信模块、云端服务器以及客户端;其中:

信息采集模块包括传感器模块、电平转换模块和无线模块;传感器模块用于采集水稻栽培参数;电平转换模块用于485电平与ttl电平之间的转换;无线模块用于接收、汇总传感器模块采集的水稻栽培参数并将汇总后的数据传输至控制处理模块;

控制处理模块位于主机端,包括串口监听模块和bat文件批量处理模块;串口监听模块通过串口监听显示接收到的信息采集模块采集的水稻栽培参数,并将水稻栽培参数由十六进制转为十进制发送至云端服务器;bat文件批量处理模块,用于下载云端服务器的代码以及用命令行实现iar文件的下载和编译,并将编译结果发送至云端服务器;

云端服务器用于对客户端发送来的代码和控制处理模块发送的水稻栽培参数进行接收、显示和存储,该服务器包括数据库和wampserver,wampserver用于快速安装配置web服务器,数据库用于对客户端发送来的代码和控制处理模块发送的水稻栽培参数数据进行存储;

客户端,用于显示采集到的水稻栽培参数,以及编写代码和提交代码文件至云端服务器;

通信模块,用于上述各模块之间的数据传输。

进一步的,所述水稻栽培参数为土壤中氮磷钾含量。

进一步的,所述传感器模块选用485型土壤氮磷钾三合一变送器。

进一步的,所述电平转换模块选用ttl转rs485模块,所述无线模块选用cc2530zigbee无线模块。

进一步的,所述传感器模块问询帧格式为:地址码、功能码、起始地址、数据长度、校验码低位、校验码高位,应答帧格式为:地址码、功能码、有效字节数、数据一区、第二数据区、第n数据区、校验码。

进一步的,所述数据库为sqlserver数据库。

进一步的,所述控制处理模块还包括mqtt订阅和发布模块,用于订阅云端服务器代码以及发布水稻栽培参数至云端服务器;所述云端服务器还包括mqtt服务器,mqtt服务器用于实现水稻栽培参数数据的订阅和代码发布至控制处理模块。

进一步的,所述通信模块采用websocket通信。

进一步的,所述客户端界面为人机交互的网页对话框,包含代码编写区域、提交按钮、提示按钮和重置按钮。

一种水稻栽培物联网虚拟仿真实验教学方法,包括以下步骤,

步骤1、在客户端编写代码并提交代码文件至云端服务器;

步骤2、云端服务器将接收代码并保存至数据库,通过mqtt服务器发布控制处理模块订阅的代码;

步骤3、控制处理模块的bat文件批量处理模块下载云端服务器发布的代码并自动运行.bat文件编译代码,编译结果经由服务器返回至客户端;若编译正确,控制处理模块则将其下载进数据采集模块的传感器模块,进行水稻栽培参数采集;若编译错误,则返回步骤1;

步骤4、数据采集模块的无线模块接收、汇总传感器模块采集的水稻栽培参数,并发送给控制处理模块的串口监听模块;

步骤5、串口监听模块接收显示水稻栽培参数,控制处理模块对水稻栽培参数由十六进制转为十进制,然后将十进制的水稻栽培参数通过mqtt订阅和发布模块发布水稻栽培参数至云端服务器;

步骤6、云端服务器将获得的水稻栽培参数保存到数据库;

步骤7、客户端请求云端服务器数据时,云端服务器将水稻栽培参数数据传输给客户端,客户端实时显示。

与现有技术相比,本发明具有以下显著优点:1)本发明一种水稻栽培物联网虚拟仿真实验教学系统,信息采集模块采用了基于cc2530的无线传感器节点,节点可靠性高,具备良好的扩展性,抗干扰性强,功耗低,应用范围广;2)本发明服务器基于mqtt协议,使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合,使用tcp/ip提供网络连接,小型传输,开销很小;3)本发明网页客户端能够远程操控并监控实验数据,解除了时间、空间的限制;4)本发明可用于稻田、大棚种植、水稻、蔬菜种植、果园苗圃、花卉以及土壤研究等多个领域;5)本发明将系统采集的数据上传至云端数据库,即可对历史数据进行查看与比较,便于实验人员对栽培参数数据进行实时监控与管理;6)本发明注重虚实结合,不单方面依赖仿真软件,既注重在网络端重现仪器设备的操作过程,又不忽略实体实验;客户端提交正确代码后,远程实地采集数据,数据来源可靠性高,再通过模型计算以及精确施肥,虚拟仿真水稻生长变化的动态过程,虚实结合,解决了实体实验中周期长、不可见、不可逆的问题。

下面结合附图对本发明作进一步详细描述。

附图说明

图1为本发明的系统构成示意图。

图2为本发明的方法流程示意图。

图3为本发明的装配示意图。

具体实施方式

结合图1,一种水稻栽培物联网虚拟仿真实验教学系统,包括信息采集模块、控制处理模块、通信模块、云端服务器以及客户端;

信息采集模块包括传感器模块、电平转换模块和无线模块;传感器模块用于采集水稻栽培参数;电平转换模块用于485电平与ttl电平之间的转换;无线模块用于接收、汇总传感器模块采集的水稻栽培参数并将汇总后的数据传输至控制处理模块;

传感器问询帧格式如下:地址码、功能码、起始地址、数据长度、校验码低位、校验码高位,起始地址和数据长度为两个字节,传感器应答帧格式如下:地址码、功能码、有效字节数、第一数据区、第二数据区、第n数据区、校验码,第一数据区、第二数据区、第n数据区和校验码为两个字节。读取485传感器地址0x01的水稻栽培参数的数值问询帧格式示例:0x010x030x000x1e0x000x030x650xcd,传感器返回的采集数据格式示例:0x010x030x060x00200x00250x00300x5a0x3d。

控制处理模块位于主机端,包括串口监听模块和bat文件批量处理模块;串口监听模块通过串口监听显示接收到的信息采集模块采集的水稻栽培参数,并将水稻栽培参数由十六进制转为十进制发送至云端服务器;bat文件批量处理模块,用于下载云端服务器的代码以及用命令行实现iar文件的下载和编译,并将编译结果发送至云端服务器;

串口监听模块获取采集数据格式中的水稻栽培参数,并以固定格式显示实时监控返回数据的正确性。控制处理模块得到订阅的代码信息后,bat文件批量处理模块自动运行用于处理命令行的.bat文件,若要编译下载学生代码,.bat文件实现的具体内容为:下载服务器保存的.txt代码文件,强制转换成工程目录下的485.c文件,编译整个工程并返回编译情况;若要编译下载初始代码,.bat文件实现的具体内容为:复制初始485.c文件到工程目录下进行覆盖,编译整个工程并返回编译情况。代码编译成功后,自动下载进无线模块,采集数据。

云端服务器用于对客户端发送来的代码和控制处理模块发送的水稻栽培参数数据进行接收、显示和存储,包括数据库和wampserver,wampserver用于快速安装配置web服务器,数据库用于对客户端发送来的代码和控制处理模块发送的水稻栽培参数数据进行存储;

客户端,用于显示控制处理模块处理后的水稻栽培参数;以及编写、提交学生代码;

通信模块,用于上述各模块之间的数据通讯传输。

若控制处理模块接收到信息采集模块采集的水稻栽培参数,控制处理模块将数据传输至云端服务器;若网页客户端发布了学生代码信息,代码文件将传输至云端服务器,再由控制处理模块下载代码文件。

结合图2,基于上述一种水稻栽培物联网虚拟仿真实验教学系统,包括以下步骤:

步骤1、在客户端编写代码并提交代码文件至云端服务器;

步骤2、云端服务器将接收代码并保存至数据库,通过mqtt服务器发布控制处理模块订阅的代码;

步骤3、控制处理模块的bat文件批量处理模块下载云端服务器发布的代码并自动运行.bat文件编译代码,编译结果经由服务器返回至客户端;若编译正确,控制处理模块则将其下载进数据采集模块的传感器模块,进行水稻栽培参数采集;若编译错误,则返回步骤1;

步骤4、数据采集模块的无线模块接收、汇总传感器模块采集的水稻栽培参数,并发送给控制处理模块的串口监听模块;

步骤5、串口监听模块接收显示水稻栽培参数,控制处理模块对水稻栽培参数由十六进制转为十进制,然后将十进制的水稻栽培参数通过mqtt订阅和发布模块发布水稻栽培参数至云端服务器;

步骤6、云端服务器将获得的水稻栽培参数保存到数据库;

步骤7、客户端请求云端服务器数据时,云端服务器将水稻栽培参数数据传输给客户端,客户端实时显示。

下面结合实施例对本发明技术方案进行详细说明。

实施例

结合图3,本发明实施例中传感器模块选用485型土壤氮磷钾三合一变送器,用于检测土壤中氮磷钾的含量,传感器共有4根接线,棕色线为电源正(12-24vdc),黑色线为电源负,黄色线为485-a,蓝色线为485-b,其中正负电源线外接12v电源,负电源线、485-a、485-b分别与485转ttl模块的gnd、a+、b-相连,采集的氮磷钾数据通过485转ttl模块发给cc2530发送节点。

电平转换模块选用ttl转rs485模块,用于转换485电平与ttl电平,将传感器模块采集的数据发给cc2530zigbee无线模块。

cc2530zigbee无线模块包括传感器接口,2530_uart_tx、2530_uart_rx、sys_vdd、gnd分别连接ttl转rs485模块的txd、rxd、vcc、gnd,将氮磷钾数据信息传输至cc2530芯片,所述氮磷钾数据信息包括待测对象的氮磷钾含量;cc2530无线发送节点,用于接收氮磷钾数据信息并对其进行数据格式处理,然后将数据通过点对点无线传输至cc2530协调器节点;cc2530无线协调器节点,用于汇总接收到的各参数数据,然后通过无线节点调试接口板传输至控制处理模块。

所述控制处理模块还包括mqtt订阅和发布模块,用于订阅云端服务器代码以及发布水稻栽培参数至云端服务器;所述云端服务器包括mqtt服务器,mqtt服务器用于实现水稻栽培参数数据的订阅和代码发布至控制处理模块,http服务用于控制处理模块从服务器下载代码;数据库采用sqlserver数据库,用于存储数据,也可查看历史数据;websocket通信,用于网页客户端和服务器之间的数据交换,进行双向数据传输。

串口监听模块获取采集数据格式中的氮磷钾数据,并以固定格式:'*',host,datanh,datanl,dataph,datapl,datakh,datakl显示,host对应主机号,datanh,datanl,dataph,datapl,datakh,datakl对应十六进制的高八位、低八位氮磷钾数值,实时监控返回数据的正确性。

编写的代码通过websocket通信提交至服务器,主机端利用mqtt服务订阅代码,利用http协议下载代码,将代码编译下载进cc2530无线节点并执行,采集的数据通过mqtt协议发布至服务器,服务器再通过websocket通信将数据返回给网页客户端。

云端服务器接收控制处理模块发送的氮磷钾数据信息并将其按固定格式:[machine_num],[data_time],[n_data],[p_data],[k_data]存入数据库,可对历史数据进行查看与比较,便于实验人员对氮磷钾数据进行实时监控与管理;machine_num为主机号,data_time为当前时间,n_data、p_data和k_data为氮磷钾数值;服务器将订阅的代码信息保存为.txt文件,控制处理模块可自行下载代码文件并做相应处理;

客户端界面为人机交互的网页对话框,用于编写、提交代码;用于显示采集到的氮磷钾数据信息。

在网页端,学生基于cc2530无线传感器驱动程序485.c的初始代码进行编写和完善,编写完成后进行提交。网页端界面上有一个人机交互的网页对话框,对话框里面为无线传感器节点的驱动程序,在网页对话框进行传感器配置和驱动的程序的编写。对话框有三个按钮,“提交”、“提示”、“重置”。学生编写完代码,点击“提交”按钮,代码将保存至云端服务器,并有提示框弹出,提示框显示返回的编译信息;学生点击提示按钮后会弹出显示代码框架的代码提示框;学生代码写乱之后,学生点击“重置”按钮代码将变成初始的内容。

本实施例中,其它未描述的内容与上述具体实施方式相同,此处不再赘述。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1