一种基于物联网的灌溉监测系统实现方法技术方案

技术编号:28877837 阅读:26 留言:0更新日期:2021-06-15 23:13
本发明专利技术提供了种基于物联网的灌溉监测系统实现方法,其特征在于,所述系统包含路由器和节点;每个路由器具有唯一的坐标;一种类型的数据由一个名称唯一标识,一个名称包含前缀和数据ID,其中前缀等于一个路由器的坐标、数据ID标识数据的类型;节点划分为消费节点和提供节点,其中提供者节点能够采集灌溉监测系统中的土壤湿度数据,消费节点能够通过灌溉监测系统获取提供者节点采集的土壤湿度数据从而决定对土壤是否进行灌溉。用户通过本发明专利技术所提供的一种基于物联网的灌溉监测系统实现方法能够快速获取灌溉所需数据,例如土壤湿度等,从而实施及时有效地灌溉,确保农作物健康生长,本发明专利技术可应用于农业灌溉,森林灌溉等领域,具有广泛的应用前景。

【技术实现步骤摘要】
一种基于物联网的灌溉监测系统实现方法
本专利技术涉及一种实现方法,尤其涉及的是一种基于物联网的灌溉监测系统实现方法。
技术介绍
近年来,很多研究工作致力于灌溉监测系统的实现方法,以便对农田实现高效及时的灌溉确保农作物健康成长。随着物联网和大数据的发展,物联网和大数据会成为实现灌溉监测系统的一种重要手段和方法。本专利技术将物联网和大数据应用于灌溉监测系统从而实现高效快速的农作物灌溉。
技术实现思路
专利技术目的:本专利技术所要解决的技术问题是针对现有技术的不足,提供一种基于物联网的灌溉监测系统实现方法。技术方案:本专利技术公开了一种基于物联网的灌溉监测系统实现方法,所述系统包含路由器和节点;每个路由器具有唯一的坐标;一种类型的数据由一个名称唯一标识,一个名称包含前缀和数据ID,其中前缀等于一个路由器的坐标、数据ID标识数据的类型,例如土壤湿度或者土壤温度;节点划分为消费节点和提供节点,其中提供者节点能够采集灌溉监测系统中的土壤湿度数据,消费节点能够通过灌溉监测系统获取提供者节点采集的土壤湿度数据从而决定对土壤是否进行灌溉;一个节点具有一个接口,一个路由器具有两个以上的接口,包含一个以上的上游接口和一个以上的下游接口,每个下游接口与一个消费节点或者提供节点相连,每个上游接口与另外一个路由器相连;一个接口由一个接口ID唯一标识,接口ID为m1的接口简写为接口m1;一个消息由一个消息ID标识;每个路由器保存一个路由器表,一个路由器表项包含前缀、接口ID、延迟、时间戳和生命周期;发布消息包含消息ID、时间戳和坐标;任一个路由器R1定期执行下述操作:步骤101:开始;步骤102:路由器R1从每个上游接口发送一个发布消息,该发布消息的消息ID为1,时间戳为当前的机器时间,坐标等于路由器R1自己的坐标;步骤103:邻居路由器从接口f1接收到该发布消息后,判断是否存在一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标,接口ID等于f1且生命周期大于阈值TH1,TH1的取值范围为最大生命周期的95%-100%,如果存在,则执行步骤108,否则执行步骤104;步骤104:从接口f1接收到该发布消息的邻居路由器判断是否存在一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标且接口ID等于f1,如果存在,则执行步骤105,否则执行步骤106;步骤105:从接口f1接收到该发布消息的邻居路由器选择一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标且接口ID等于f1,将该路由器表项的延迟更新为当前机器时钟与该发布消息中时间戳的差的绝对值,将生命周期设置为最大生命周期,生命周期的取值范围为500ms-1000ms,该路由器表项中的时间戳保持不变,执行步骤107;步骤106:从接口f1接收到该发布消息的邻居路由器创建一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标,接口ID等于f1,将该路由器表项的延迟设置为当前机器时钟与该发布消息中时间戳的差的绝对值,将生命周期设置为最大生命周期,生命周期的取值范围为500ms-1000ms,将该路由器表项中的时间戳设置为当前机器时钟;步骤107:从接口f1接收到该发布消息的邻居路由器从除了接口f1以外的每个上游接口转发该发布消息,执行步骤103;步骤108:结束。路由器通过上述过程建立路由器表,这样,路由器通过接口ID可以正确地转发消息,通过延迟可以判断每个路由器表的服务延迟从而选取最优的路由表项进行转发消息,通过生命周期来确保每个路由器表的实时性和有效性,从而确保数据通信的安全性和有效性。本专利技术所述方法中,每个路由器保存一个节点表,一个节点表项包含节点类型、接口ID和生命周期;节点类型域值0表示该节点为提供节点,节点类型域值1表示该节点为消费节点;一个注册消息包含消息ID和节点类型如果节点MN1与路由器R1相连,定期执行下述操作:步骤201:开始;步骤202:节点MN1发送注册消息,该注册消息的消息ID为2,如果节点MN1为提供节点,则该注册消息的节点类型为0,否则节点类型域值为1;步骤203:路由器R1从接口x1接收到注册消息后,判断是否存在一个节点表项,该节点表项的接口ID等于x1,如果存在,则执行步骤204,否则执行步骤205;步骤204:从接口x1接收到注册消息的路由器R1选择一个节点表项,该节点表项的接口ID等于x1,将该节点表项的节点类型更新为该注册消息中的节点类型,将生命周期设置为最大值,生命周期取值范围为500ms-1000ms,执行步骤206;步骤205:从接口x1接收到注册消息的路由器R1创建一个节点表项,该节点表项的接口ID等于x1,节点类型等于该注册消息中的节点类型,生命周期设置为最大值;步骤206:结束。提供节点或者消费节点通过上述过程向连接的路由器执行注册操作并建立节点表,这样,路由器通过节点类型值可以判断所连接的每个节点的类型,从而通过接口ID实现正确的消息,同时,也能通过每个节点表项的节点类型值来实现消息的推送,从而确保消费节点及时正确地获取数据。本专利技术所述方法中,每个路由器保存一个缓存表,一个缓存表项包含数据ID、数据和生命周期;如果提供者P1与路由器R1相连,数据DA1由名称NA1标识,名称NA1的前缀等于路由器R1的坐标,数据ID等于DID1;缓存消息包含消息ID、数据ID和数据;提供者P1定期产生数据DA1并执行下述操作:步骤301:开始;步骤302:提供者P1发送一个缓存消息,该缓存消息的消息ID为3,数据ID等于DID1,数据为DA1;步骤303:路由器R1接收到该缓存消息后,判断是否存在一个数据ID等于该缓存消息中的数据ID的缓存表项,如果存在,则执行步骤304,否则执行步骤305;步骤304:接收到该缓存消息路由器R1选择一个数据ID等于该缓存消息中的数据ID的缓存表项,将该缓存表项的数据域值更新为该缓存消息中的数据,将生命周期设置为最大值,执行步骤306;步骤305:接收到该缓存消息路由器R1创建一个缓存表项,该缓存表项的数据ID等于该缓存消息中的数据ID,该缓存表项的数据域值等于该缓存消息中的数据,将生命周期设置为最大值;步骤306:结束。提供者通过上述过程定期向所连接的路由器发送新产生的数据,路由器接收到数据后在自己的缓存表中进行缓存,从而能够快速地提供这些数据,从而降低数据通信延迟和代价,同时也确保了数据的实时性和有效性。本专利技术所述方法中,一个请求消息包含消息ID和名称;一个响应消息包含消息ID、名称和数据;每个路由器保存一个消息表,一个消息表项包含响应消息域和生命周期域,响应消息域值为一个响应消息;每个路由器保存一个跟踪表,一个跟踪表项包含名称、接口ID和生命周期;如果消费节点C2与路由器R2相连,数据DA1由名称NA1定义,消费节本文档来自技高网...

【技术保护点】
1.一种基于物联网的灌溉监测系统实现方法,其特征在于,所述系统包含路由器和节点;每个路由器具有唯一的坐标;/n一种类型的数据由一个名称唯一标识,一个名称包含前缀和数据ID,其中前缀等于一个路由器的坐标、数据ID标识数据的类型;/n节点划分为消费节点和提供节点,其中提供者节点能够采集灌溉监测系统中的土壤湿度数据,消费节点能够通过灌溉监测系统获取提供者节点采集的土壤湿度数据从而决定对土壤是否进行灌溉;/n一个节点具有一个接口,一个路由器具有两个以上的接口,包含一个以上的上游接口和一个以上的下游接口,每个下游接口与一个消费节点或者提供节点相连,每个上游接口与另外一个路由器相连;一个接口由一个接口ID唯一标识,接口ID为m1的接口简写为接口m1;/n一个消息由一个消息ID标识;/n每个路由器保存一个路由器表,一个路由器表项包含前缀、接口ID、延迟、时间戳和生命周期;/n发布消息包含消息ID、时间戳和坐标;/n任一个路由器R1定期执行下述操作:/n步骤101:开始;/n步骤102:路由器R1从每个上游接口发送一个发布消息,该发布消息的消息ID为1,时间戳为当前的机器时间,坐标等于路由器R1自己的坐标;/n步骤103:邻居路由器从接口f1接收到该发布消息后,判断是否存在一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标,接口ID等于f1且生命周期大于阈值TH1,TH1的取值范围为最大生命周期的95%-100%,如果存在,则执行步骤108,否则执行步骤104;/n步骤104:从接口f1接收到该发布消息的邻居路由器判断是否存在一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标且接口ID等于f1,如果存在,则执行步骤105,否则执行步骤106;/n步骤105:从接口f1接收到该发布消息的邻居路由器选择一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标且接口ID等于f1,将该路由器表项的延迟更新为当前机器时钟与该发布消息中时间戳的差的绝对值,将生命周期设置为最大生命周期,生命周期的取值范围为500ms-1000ms,该路由器表项中的时间戳保持不变,执行步骤107;/n步骤106:从接口f1接收到该发布消息的邻居路由器创建一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标,接口ID等于f1,将该路由器表项的延迟设置为当前机器时钟与该发布消息中时间戳的差的绝对值,将生命周期设置为最大生命周期,生命周期的取值范围为500ms-1000ms,将该路由器表项中的时间戳设置为当前机器时钟;/n步骤107:从接口f1接收到该发布消息的邻居路由器从除了接口f1以外的每个上游接口转发该发布消息,执行步骤103;/n步骤108:结束。/n...

【技术特征摘要】
1.一种基于物联网的灌溉监测系统实现方法,其特征在于,所述系统包含路由器和节点;每个路由器具有唯一的坐标;
一种类型的数据由一个名称唯一标识,一个名称包含前缀和数据ID,其中前缀等于一个路由器的坐标、数据ID标识数据的类型;
节点划分为消费节点和提供节点,其中提供者节点能够采集灌溉监测系统中的土壤湿度数据,消费节点能够通过灌溉监测系统获取提供者节点采集的土壤湿度数据从而决定对土壤是否进行灌溉;
一个节点具有一个接口,一个路由器具有两个以上的接口,包含一个以上的上游接口和一个以上的下游接口,每个下游接口与一个消费节点或者提供节点相连,每个上游接口与另外一个路由器相连;一个接口由一个接口ID唯一标识,接口ID为m1的接口简写为接口m1;
一个消息由一个消息ID标识;
每个路由器保存一个路由器表,一个路由器表项包含前缀、接口ID、延迟、时间戳和生命周期;
发布消息包含消息ID、时间戳和坐标;
任一个路由器R1定期执行下述操作:
步骤101:开始;
步骤102:路由器R1从每个上游接口发送一个发布消息,该发布消息的消息ID为1,时间戳为当前的机器时间,坐标等于路由器R1自己的坐标;
步骤103:邻居路由器从接口f1接收到该发布消息后,判断是否存在一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标,接口ID等于f1且生命周期大于阈值TH1,TH1的取值范围为最大生命周期的95%-100%,如果存在,则执行步骤108,否则执行步骤104;
步骤104:从接口f1接收到该发布消息的邻居路由器判断是否存在一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标且接口ID等于f1,如果存在,则执行步骤105,否则执行步骤106;
步骤105:从接口f1接收到该发布消息的邻居路由器选择一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标且接口ID等于f1,将该路由器表项的延迟更新为当前机器时钟与该发布消息中时间戳的差的绝对值,将生命周期设置为最大生命周期,生命周期的取值范围为500ms-1000ms,该路由器表项中的时间戳保持不变,执行步骤107;
步骤106:从接口f1接收到该发布消息的邻居路由器创建一个路由器表项,该路由器表项的前缀等于该发布消息中的坐标,接口ID等于f1,将该路由器表项的延迟设置为当前机器时钟与该发布消息中时间戳的差的绝对值,将生命周期设置为最大生命周期,生命周期的取值范围为500ms-1000ms,将该路由器表项中的时间戳设置为当前机器时钟;
步骤107:从接口f1接收到该发布消息的邻居路由器从除了接口f1以外的每个上游接口转发该发布消息,执行步骤103;
步骤108:结束。


2.根据权利要求1所述的一种基于物联网的灌溉监测系统实现方法,其特征在于,
每个路由器保存一个节点表,一个节点表项包含节点类型、接口ID和生命周期;节点类型域值0表示该节点为提供节点,节点类型域值1表示该节点为消费节点;
一个注册消息包含消息ID和节点类型
如果节点MN1与路由器R1相连,定期执行下述操作:
步骤201:开始;
步骤202:节点MN1发送注册消息,该注册消息的消息ID为2,如果节点MN1为提供节点,则该注册消息的节点类型为0,否则节点类型域值为1;
步骤203:路由器R1从接口x1接收到注册消息后,判断是否存在一个节点表项,该节点表项的接口ID等于x1,如果存在,则执行步骤204,否则执行步骤205;
步骤204:从接口x1接收到注册消息的路由器R1选择一个节点表项,该节点表项的接口ID等于x1,将该节点表项的节点类型更新为该注册消息中的节点类型,将生命周期设置为最大值,生命周期取值范围为500ms-1000ms,执行步骤206;
步骤205:从接口x1接收到注册消息的路由器R1创建一个节点表项,该节点表项的接口ID等于x1,节点类型等于该注册消息中的节点类型,生命周期设置为最大值;
步骤206:结束。


3.根据权利要求2所述的一种基于物联网的灌溉监测系统实现方法,其特征在于,
每个路由器保存一个缓存表,一个缓存表项包含数据ID、数据和生命周期;
如果提供者P1与路由器R1相连,数据DA1由名称NA1标识,名称NA1的前缀等于路由器R1的坐标,数据ID等于DID1;缓存消息包含消息ID、数据ID和数据;提供者P1定期产生数据DA1并执行下述操作:
步骤301:开始;
步骤302:提供者P1发送一个缓存消息,该缓存消息的消息ID为3,数据ID等于DID1,数据为DA1;
步骤303:路由器R1接收到该缓存消息后,判断是否存在一个数据ID等于该缓存消息中的数据ID的缓存表项,如果存在,则执行步骤304,否则执行步骤305;
步骤304:接收到该缓存消息路由器R1选择一个数据ID等于该缓存消息中的数据ID的缓存表项,将该缓存表项的数据域值更新为该缓存消息中的数据,将生命周期设置为最大值,执行步骤306;
步骤305:接收到该缓存消息路由器R1创建一个缓存表项,该缓存表项的数据ID等于该缓存消息中的数据ID,该缓存表项的数据域值等于该缓存消息中的数据,将生命周期设置为最大值;
步骤306:结束。


4.根据权利要求3所述的一种基于物联网的灌溉监测系统实现方法,其特征在于,
一个请求消息包含消息ID和名称;
一个响应消息包含消息ID、名称和数据;
每个路由器保存一个消息表,一个消息表项包含响应消息域和生命周期域,响应消息域值为一个响应消息;
每个路由器保存一个跟踪表,一个跟踪表项包含名称、接口ID和生命周期;
如果消费节点C2与路由器R2相连,数据DA1由名称NA1定义,消费节点C2通过下述过程获取数据DA1:
步骤401:开始;
步骤402:消费节点C2发送一个请求消息,该请求消息的消息ID为4,名称为NA1;
步骤403:从接口y1接收到该请求消息的路由器R2判断是否存在一个消息表项,该消息表项的响应消息域值中的名称等于该请求消息中的名称,如果存在,则执行步骤404,否则执行步骤405;
步骤404:从接口y1接收到该请求消息的路由器R2选择一个消息表项,该消息表项的响应消息域值中的名称等于该请求消息中的名称,从接口y1发送该消息表项中的响应消息域值中的响应消息,执行步骤417;
步骤405:从接口y1接收到该请求消息的路由器R2判断自己的坐标是否等于该请求消息中的名称中的前缀,如果等于,则执行步骤406,否则执行步骤407;
步骤406:从接口y1接收到该请求消息的路由器R2选择一个缓存表项,该缓存表项的数据ID...

【专利技术属性】
技术研发人员:王晓喃罗玉峰王兴伟钱昕妍
申请(专利权)人:常熟理工学院
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1