CN105208016B - 农业物联网多种数据传输及处理的方法 - Google Patents
农业物联网多种数据传输及处理的方法 Download PDFInfo
- Publication number
- CN105208016B CN105208016B CN201510563417.3A CN201510563417A CN105208016B CN 105208016 B CN105208016 B CN 105208016B CN 201510563417 A CN201510563417 A CN 201510563417A CN 105208016 B CN105208016 B CN 105208016B
- Authority
- CN
- China
- Prior art keywords
- data
- client
- greenhouse
- database
- frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
农业物联网多种数据传输及处理的方法,属于物联网技术领域。基于农业物联网的环境下,在农业大棚中利用传感器采集农业大棚内温度、湿度、二氧化碳浓度、光照强度等环境参数,自定义数据帧规范统一传输数据帧的格式,同时提供解析数据帧的方法;农业大棚中使用光谱仪检测得到的光谱数据格式为txt文件,需要传输txt格式文件。使用C#语言编写程序使其支持对以上两种类型数据进行处理并基于网络socket技术进行传输,使数据最终存入远程数据库中。本发明方法实现了传输以及处理多种数据类型的大棚环境参数,可实时地观察、测试并管理改善农业大棚中的各种环境条件。
Description
技术领域
本发明涉及一种农业物联网多种数据传输及处理的方法,属于物联网技术领域。
背景技术
我国是农业大国,在网络技术发展迅猛的背景下,对农业智能化管理的需求越来越迫切,比如实时远程监测农业大棚中的环境参数,可以大大便利从事农业的技术人员掌握大棚内的情况。在查阅资料的过程中发现,很多智能农业物联网的解决方法被提出,却没有提出具体并有效的数据传输及处理的方式。申请号为201420171030.4、发明人为曾旭东、发明名称为“基于物联网的智慧农业管理及实时安全溯源***”的实用新型专利涉及一种基于物联网的智慧农业管理及实时安全溯源***,该***中提出使用ZigBee无线网络技术将传感器的数据传至数据中心,但ZigBee无线网络技术传输范围有限,不能支持将数据传输至远程服务器,且该专利未提出所支持的具体数据格式以及处理方法。
发明内容
为了克服现有技术存在的缺陷和不足,本发明提供了一种农业物联网多种数据传输及处理的方法,结合了串口通信、网络socket技术和多线程编程技术等一套完整的支持农业物联网多种类型数据传输以及处理的解决方案,实现数据实时存入远程服务器数据库的功能。
本发明方法是通过以下具体技术方案实现的:
一种农业物联网多种数据传输及处理的方法,由客户端和远程服务器通过互联网建立的网络***来实现,客户端运行于置于农业大棚里的PC机上,该PC机分别与温度、湿度、光照强度、二氧化碳数据采集模块相通过串口连接,同时光谱仪通过USB接口与该PC机相连;服务器端和数据库运行于远程服务器上,该方法步骤如下:
1)客户端运行在位于农业大棚的PC机上,服务器端运行于远程服务器上,客户端与服务器端通过网络socket技术进行通信;
a、服务器端设置固定的IP和端口号,准备接收数据,在这里对于不同数据类型设置了不同的端口号分别进行监听,可同步接收多种类型的数据;
b、客户端则创建多个Socket的实例,以支持多种数据格式的发送,分别按照服务器所设定的IP和端口号进行连接;
2)客户端与数据采集模块进行串口通信,从而获取各个数据采集模块所检测到的大棚内的数据,通过串口通信获得自定义协议串口数据帧;光谱仪通过USB口与客户端主机相连,直接在某个路径下生成需要发送的txt文件;
a、自定义农业大棚数据协议:
①数据帧总长32位,使用其中16位,后16位作为预留;
②前16位中,前4位作为帧头,后4位作为帧尾,帧头和帧尾一起作为数据帧格式校验;
③第5、6位表示数据帧来自大棚中几号数据采集模块;
④第7位表示数据类型,第8、9、10、11位表示数据内容;当第7位为01时,则第8、9位表示大棚湿度,而第10、11位表示大棚温度;第7位为02时,第8、9、10、11位的数据为二氧化碳浓度;第7位为03时,第8、9、10、11位的数据为光照强度;
⑤第12位作为校验位,为第8、9、10、11位的数据之和,进一步对数据的准确度进行校验;
客户端在发送串口数据帧时,首先检验数据帧长,然后定义一个长度为32的定长byte类型的数组,将数据帧放入数组中,利用Socket实例执行Send发送该数组,最后将数组清零,等待下一帧数据的写入;
b、客户端使用一个FileSystemWatcher实例对文件***进行监视,一旦有新的txt文件产生或txt文件被覆盖,则会触发事件,该事件具体步骤如下:
①将触发了事件的txt文件写入文件流FileStream;
②定义一个长度为500的byte型数组,将文件流分成n个长度为500的数据包循环写入数组进行发送;
③判断最后一个长度不足500的数据包长度是否为0,如果不为零则新定义一个符合该数据包长度的数组进行发送;如果最后一个数据包的长度为0,则表明该文件流已完全写入数组,发送完毕;
3)服务器端需要开启两个线程对两个端口号分别进行监听,使得接收串口数据帧和txt文件时互不干扰,在监听线程下,一旦有客户端与之连接,则需要开启子线程接收并处理数据,最后服务器端与数据库进行连接将数据***数据库;
a、将数据库的操作封装成一个类,提供连接数据库、更新数据库、查询数据、***数据、删除数据的方法,便于数据库的操作;
b、将处理串口数据帧封装成类,提供按照自定义农业大棚数据协议解析数据帧的方法method(),在监听线程下新建子线程new Thread(new ThreadStart(method)),解析出来数据,服务器端调用数据库操作的类,***数据库;
c、将txt文件的接收也封装成类,提供接收txt文件的方法Process(),在另一个监听线程下新建子线程new Thread(new ThreadStart(Process)),在txt文件接收完毕后,服务器端读取该txt文件,调用数据库操作的类,将数据***数据库。
本发明方法基于农业物联网的环境下,实现了传输以及处理多种数据类型的大棚环境参数。在农业大棚中利用传感器采集农业大棚内温度、湿度、二氧化碳浓度、光照强度等环境参数,自定义数据帧规范统一传输数据帧的格式,同时提供解析数据帧的方法;农业大棚中使用光谱仪检测得到的光谱数据格式为txt文件,需要传输txt格式文件。使用C#语言编写程序使其支持对以上两种类型数据进行处理并基于网络socket技术进行传输,使数据最终存入远程数据库中,可实时地观察、测试并管理改善农业大棚中的各种环境条件。
本发明的有益效果是:
1)本发明提供了一套完整的农业物联网多种类型数据采集以及处理的解决方案,使得农业大棚中传感器所采集的环境参数以及光谱仪所检测的光谱数据都传输至远程服务器并***数据库中得以保存。
2)本发明具有较强的可扩展性,客户端的数目和类型可扩展,不只是本发明提供的客户端,且只要是基于Socket网络技术进行传输,且传输数据格式符合自定义数据帧协议的客户端,服务器端都可进行处理。
附图说明
图1是本发明方法所使用的网络***的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步说明,但不限于此。
实施例:
本发明实施例如图1所示,一种农业物联网多种数据传输及处理的方法,由客户端和远程服务器通过互联网建立的网络***来实现,客户端运行于置于农业大棚里的PC机上,该PC机分别与温度、湿度、光照强度、二氧化碳数据采集模块通过串口相连接,同时光谱仪通过USB接口与该PC机相连;服务器端和数据库运行于远程服务器上,该方法步骤如下:
1)客户端运行在位于农业大棚的PC机上,服务器端运行于远程服务器上,客户端与服务器端通过网络socket技术进行通信;
a、服务器端设置固定的IP和端口号,准备接收数据,在这里对于不同数据类型设置了不同的端口号分别进行监听,可同步接收多种类型的数据;
b、客户端则创建多个Socket的实例,以支持多种数据格式的发送,分别按照服务器所设定的IP和端口号进行连接;
2)客户端与数据采集模块进行串口通信,从而获取各个数据采集模块所检测到的大棚内的数据,通过串口通信获得自定义协议串口数据帧;光谱仪通过USB口与客户端主机相连,直接在某个路径下生成需要发送的txt文件;
a、自定义农业大棚数据协议:
①数据帧总长32位,使用其中16位,后16位作为预留;
②前16位中,前4位作为帧头,后4位作为帧尾,帧头和帧尾一起作为数据帧格式校验;
③第5、6位表示数据帧来自大棚中几号数据采集模块;
④第7位表示数据类型,第8、9、10、11位表示数据内容;当第7位为01时,则第8、9位表示大棚湿度,而第10、11位表示大棚温度;第7位为02时,第8、9、10、11位的数据为二氧化碳浓度;第7位为03时,第8、9、10、11位的数据为光照强度;
⑤第12位作为校验位,为第8、9、10、11位的数据之和,进一步对数据的准确度进行校验;
客户端在发送串口数据帧时,首先检验数据帧长,然后定义一个长度为32的定长byte类型的数组,将数据帧放入数组中,利用Socket实例执行Send发送该数组,最后将数组清零,等待下一帧数据的写入;
b、客户端使用一个FileSystemWatcher实例对文件***进行监视,一旦有新的txt文件产生或txt文件被覆盖,则会触发事件,该事件具体步骤如下:
①将触发了事件的txt文件写入文件流FileStream;
②定义一个长度为500的byte型数组,将文件流分成n个长度为500的数据包循环写入数组进行发送;
③判断最后一个长度不足500的数据包长度是否为0,如果不为零则新定义一个符合该数据包长度的数组进行发送;如果最后一个数据包的长度为0,则表明该文件流已完全写入数组,发送完毕;
3)服务器端需要开启两个线程对两个端口号分别进行监听,使得接收串口数据帧和txt文件时互不干扰,在监听线程下,一旦有客户端与之连接,则需要开启子线程接收并处理数据,最后服务器端与数据库进行连接将数据***数据库;
a、将数据库的操作封装成一个类,提供连接数据库、更新数据库、查询数据、***数据、删除数据的方法,便于数据库的操作;
b、将处理串口数据帧封装成类,提供按照自定义农业大棚数据协议解析数据帧的方法method(),在监听线程下新建子线程new Thread(new ThreadStart(method)),解析出来数据,服务器端调用数据库操作的类,***数据库;
c、将txt文件的接收也封装成类,提供接收txt文件的方法Process(),在另一个监听线程下新建子线程new Thread(new ThreadStart(Process)),在txt文件接收完毕后,服务器端读取该txt文件,调用数据库操作的类,将数据***数据库。
Claims (1)
1.一种农业物联网多种数据传输及处理的方法,由客户端和远程服务器通过互联网建立的网络***来实现,客户端运行于置于农业大棚里的PC机上,该PC机分别与温度、湿度、光照强度、二氧化碳数据采集模块通过串口相连接,同时光谱仪通过USB接口与该PC机相连;服务器端和数据库运行于远程服务器上,该方法步骤如下:
1)客户端运行在位于农业大棚的PC机上,服务器端运行于远程服务器上,客户端与服务器端通过网络socket技术进行通信;
a、服务器端设置固定的IP和端口号,准备接收数据,在这里对于不同数据类型设置了不同的端口号分别进行监听,可同步接收多种类型的数据;
b、客户端则创建多个Socket的实例,以支持多种数据格式的发送,分别按照服务器所设定的IP和端口号进行连接;
2)客户端与数据采集模块进行串口通信,从而获取各个数据采集模块所检测到的大棚内的数据,通过串口通信获得自定义协议串口数据帧;光谱仪通过USB口与客户端主机相连,直接在某个路径下生成需要发送的txt文件;
a、自定义农业大棚数据协议:
①数据帧总长32位,使用其中16位,后16位作为预留;
②前16位中,前4位作为帧头,后4位作为帧尾,帧头和帧尾一起作为数据帧格式校验;
③第5、6位表示数据帧来自大棚中几号数据采集模块;
④第7位表示数据类型,第8、9、10、11位表示数据内容;当第7位为01时,则第8、9位表示大棚湿度,而第10、11位表示大棚温度;第7位为02时,第8、9、10、11位的数据为二氧化碳浓度;第7位为03时,第8、9、10、11位的数据为光照强度;
⑤第12位作为校验位,为第8、9、10、11位的数据之和,进一步对数据的准确度进行校验;
客户端在发送串口数据帧时,首先检验数据帧长,然后定义一个长度为32的定长byte类型的数组,将数据帧放入数组中,利用Socket实例执行Send发送该数组,最后将数组清零,等待下一帧数据的写入;
b、客户端使用一个FileSystemWatcher实例对文件***进行监视,一旦有新的txt文件产生或txt文件被覆盖,则会触发事件,该事件具体步骤如下:
①将触发了事件的txt文件写入文件流FileStream;
②定义一个长度为500的byte型数组,将文件流分成n个长度为500的数据包循环写入数组进行发送;
③判断最后一个长度不足500的数据包长度是否为0,如果不为零则新定义一个符合该数据包长度的数组进行发送;如果最后一个数据包的长度为0,则表明该文件流已完全写入数组,发送完毕;
3)服务器端需要开启两个线程对两个端口号分别进行监听,使得接收串口数据帧和txt文件时互不干扰,在监听线程下,一旦有客户端与之连接,则需要开启子线程接收并处理数据,最后服务器端与数据库进行连接将数据***数据库;
a、将数据库的操作封装成一个类,提供连接数据库、更新数据库、查询数据、***数据、删除数据的方法,便于数据库的操作;
b、将处理串口数据帧封装成类,提供按照自定义农业大棚数据协议解析数据帧的方法,在监听线程下新建子线程,解析出来数据,服务器端调用数据库操作的类,***数据库;
c、将txt文件的接收也封装成类,提供接收txt文件的方法,在另一个监听线程下新建子线程,在txt文件接收完毕后,服务器端读取该txt文件,调用数据库操作的类,将数据***数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510563417.3A CN105208016B (zh) | 2015-09-07 | 2015-09-07 | 农业物联网多种数据传输及处理的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510563417.3A CN105208016B (zh) | 2015-09-07 | 2015-09-07 | 农业物联网多种数据传输及处理的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105208016A CN105208016A (zh) | 2015-12-30 |
CN105208016B true CN105208016B (zh) | 2018-06-05 |
Family
ID=54955450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510563417.3A Expired - Fee Related CN105208016B (zh) | 2015-09-07 | 2015-09-07 | 农业物联网多种数据传输及处理的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105208016B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897526B (zh) * | 2016-05-23 | 2018-11-30 | 珠海格力电器股份有限公司 | 一种基于BACnet树形图模式的医护管理方法及*** |
CN106648085A (zh) * | 2016-12-12 | 2017-05-10 | 上海拆名晃信息科技有限公司 | 一种虚拟现实设备姿态信息的捕捉方法 |
CN106710189A (zh) * | 2016-12-29 | 2017-05-24 | 北京国电龙瑞电力技术有限公司 | 监测数据采集传输装置 |
CN109413606A (zh) * | 2018-10-29 | 2019-03-01 | 天津市农业科学院信息研究所 | 温室***多点采集数据更新方法、装置、介质和电子设备 |
CN109859446A (zh) * | 2018-12-19 | 2019-06-07 | 国网山东省电力公司无棣县供电公司 | 一种开关柜隔离挡板闭锁报警装置 |
CN109828095A (zh) * | 2019-04-04 | 2019-05-31 | 大连理工大学 | 一种基于物联网的水质监测***数据存储、无线传输及远程控制方法 |
CN111283680B (zh) * | 2020-02-28 | 2023-07-18 | 华南理工大学 | 一种无线远程遥控机器人的***和方法 |
CN112489514B (zh) * | 2020-11-18 | 2023-03-24 | 扬州大学 | 一种水稻栽培物联网虚拟仿真实验教学***和方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611646A (zh) * | 2012-04-23 | 2012-07-25 | 北京工业大学 | 基于ZigBee和XML的物联网数据网关 |
CN103905558A (zh) * | 2014-04-11 | 2014-07-02 | 中国农业科学院农业信息研究所 | 基于物联网的奶牛场无线监测*** |
CN204010001U (zh) * | 2014-04-10 | 2014-12-10 | 云南寸维科技有限公司 | 基于物联网的智慧农业管理及实时安全溯源*** |
-
2015
- 2015-09-07 CN CN201510563417.3A patent/CN105208016B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102611646A (zh) * | 2012-04-23 | 2012-07-25 | 北京工业大学 | 基于ZigBee和XML的物联网数据网关 |
CN204010001U (zh) * | 2014-04-10 | 2014-12-10 | 云南寸维科技有限公司 | 基于物联网的智慧农业管理及实时安全溯源*** |
CN103905558A (zh) * | 2014-04-11 | 2014-07-02 | 中国农业科学院农业信息研究所 | 基于物联网的奶牛场无线监测*** |
Also Published As
Publication number | Publication date |
---|---|
CN105208016A (zh) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105208016B (zh) | 农业物联网多种数据传输及处理的方法 | |
US7996523B2 (en) | Free string match encoding and preview | |
CN108667807A (zh) | 一种基于监控云平台与网关的协议自适应方法及*** | |
CN110413591A (zh) | 一种工业数据采集方法及边缘计算网关 | |
CN106230826B (zh) | 应用***接口协议自动解析装置 | |
CN109873859A (zh) | 一种校园区域环境空气质量监测***及方法 | |
CN107957940B (zh) | 一种测试日志处理方法、***及终端 | |
CN108733552A (zh) | 一种fpga远程调试***及远程调试方法 | |
CN108400909A (zh) | 一种流量统计方法、装置、终端设备和存储介质 | |
CN103746840B (zh) | 网络设备软件版本信息自动核对方法和*** | |
CN106198866B (zh) | 基于无线传感网络的农场空气质量监测*** | |
CN103957136B (zh) | 一种小卫星can总线监视*** | |
CN111242807A (zh) | 一种变电站数据接入泛在电力物联网的方法 | |
CN108134779A (zh) | Cbtc通信***协议解析方法、协议库管理方法及协议库 | |
CN108415857A (zh) | 一种串口数据的通用处理方法 | |
CN110266702A (zh) | 基于XML的Wireshark用协议解析方法 | |
CN108683590A (zh) | 工业物联网及其中的智能网关、智能网关的数据传输方法 | |
CN107222251B (zh) | 卫星外场试验中与试验基地遥测数据交互方法及*** | |
CN106933712A (zh) | 基于b/s架构的网络化远程测试***及方法 | |
CN110099033B (zh) | 一种下位机架构 | |
CN106791806A (zh) | 一种基于网络的广播电视信号监测*** | |
CN106656709B (zh) | 一种机载端航电总线状态交换协议处理方法 | |
CN104135403A (zh) | 一种分布式环境监测数据传输校验方法 | |
CN109814501B (zh) | 一种现场检测设备灵活接入的信息采集***及方法 | |
CN201450520U (zh) | 基于dnp协议的电力***仿真器与电力***的在线通讯*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180605 Termination date: 20190907 |