CN105208016A - 农业物联网多种数据传输及处理的方法 - Google Patents
农业物联网多种数据传输及处理的方法 Download PDFInfo
- Publication number
- CN105208016A CN105208016A CN201510563417.3A CN201510563417A CN105208016A CN 105208016 A CN105208016 A CN 105208016A CN 201510563417 A CN201510563417 A CN 201510563417A CN 105208016 A CN105208016 A CN 105208016A
- Authority
- CN
- China
- Prior art keywords
- data
- client
- frame
- txt file
- array
- 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.)
- Granted
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
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(),在监听线程下新建子线程newThread(newThreadStart(method)),解析出来数据,服务器端调用数据库操作的类,插入数据库;
c、将txt文件的接收也封装成类,提供接收txt文件的方法Process(),在另一个监听线程下新建子线程newThread(newThreadStart(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(),在监听线程下新建子线程newThread(newThreadStart(method)),解析出来数据,服务器端调用数据库操作的类,插入数据库;
c、将txt文件的接收也封装成类,提供接收txt文件的方法Process(),在另一个监听
线程下新建子线程newThread(newThreadStart(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、将处理串口数据帧封装成类,提供按照自定义农业大棚数据协议解析数据帧的方法method(),在监听线程下新建子线程newThread(newThreadStart(method)),解析出来数据,服务器端调用数据库操作的类,插入数据库;
c、将txt文件的接收也封装成类,提供接收txt文件的方法Process(),在另一个监听线程下新建子线程newThread(newThreadStart(Process)),在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 true CN105208016A (zh) | 2015-12-30 |
CN105208016B 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) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897526A (zh) * | 2016-05-23 | 2016-08-24 | 珠海格力电器股份有限公司 | 一种基于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 | 天津市农业科学院信息研究所 | 温室系统多点采集数据更新方法、装置、介质和电子设备 |
CN109828095A (zh) * | 2019-04-04 | 2019-05-31 | 大连理工大学 | 一种基于物联网的水质监测系统数据存储、无线传输及远程控制方法 |
CN109859446A (zh) * | 2018-12-19 | 2019-06-07 | 国网山东省电力公司无棣县供电公司 | 一种开关柜隔离挡板闭锁报警装置 |
CN111283680A (zh) * | 2020-02-28 | 2020-06-16 | 华南理工大学 | 一种无线远程遥控机器人的系统和方法 |
CN112489514A (zh) * | 2020-11-18 | 2021-03-12 | 扬州大学 | 一种水稻栽培物联网虚拟仿真实验教学系统和方法 |
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 | 中国农业科学院农业信息研究所 | 基于物联网的奶牛场无线监测系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105897526A (zh) * | 2016-05-23 | 2016-08-24 | 珠海格力电器股份有限公司 | 一种基于BACnet树形图模式的医护管理方法及系统 |
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 | 大连理工大学 | 一种基于物联网的水质监测系统数据存储、无线传输及远程控制方法 |
CN111283680A (zh) * | 2020-02-28 | 2020-06-16 | 华南理工大学 | 一种无线远程遥控机器人的系统和方法 |
CN112489514A (zh) * | 2020-11-18 | 2021-03-12 | 扬州大学 | 一种水稻栽培物联网虚拟仿真实验教学系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105208016B (zh) | 2018-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105208016A (zh) | 农业物联网多种数据传输及处理的方法 | |
Mendez et al. | A WiFi based smart wireless sensor network for monitoring an agricultural environment | |
CN102681511B (zh) | 基于物联网的数据信息采集智能管控系统 | |
CN209605863U (zh) | 农业环境监测系统 | |
CN104950760A (zh) | 一种集供电管理的海洋监测通用数据采集器 | |
CN205647550U (zh) | 一种智能实验室的监控系统 | |
de Oliveira et al. | Wireless sensor network for smart agriculture using ZigBee protocol | |
CN110069088A (zh) | 一种基于nb-iot的智能农业控制监控系统 | |
CN203349869U (zh) | 一种鸡舍环境无线监测装置系统 | |
CN202372207U (zh) | 农作物温湿度监测系统 | |
WO2016062154A1 (zh) | 信息采集方法及装置、通信系统 | |
Al-Tarawneh et al. | Environmental tracking system using IoT based WSN: Smart agriculture | |
CN106643872A (zh) | 一种基于Zigbee的空间光度分布智能监控系统 | |
CN205212881U (zh) | 物联网农田产地环境监测系统 | |
CN104135403B (zh) | 一种分布式环境监测数据传输校验方法 | |
CN106303925A (zh) | 一种智能农业系统 | |
Kuang et al. | Farmland monitoring system based on cloud platform | |
CN111812577A (zh) | 一种智能电能表自动化检定流水线能耗监测系统 | |
CN209432188U (zh) | 一种电缆工井温湿度检测系统 | |
CN204086969U (zh) | 一种大棚蔬菜生产环境自动监测装置 | |
CN207588915U (zh) | 一种病房无线监控系统 | |
CN103533562B (zh) | 无线传感器网络节点协议一致性测试装置及方法 | |
CN203179214U (zh) | 基于zigbee的无线烟雾传感器系统 | |
CN207337251U (zh) | 基于虚拟仪器的远程测控系统 | |
CN220474118U (zh) | 一种燃气报警器的数据传输装置及燃气安全监测系统 |
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 |