论文部分内容阅读
农业是国民经济的基础产业。而农业物联网是发展现代农业的重要途径之一,对我国农业经济发展有着深远而积极的影响。在农业物联网中,感知层采集信息并通过传输层传输至应用层,产生决策后再经传输层传输至感知层进行调控。在此消息传递的过程中,信息在不同层的传输中需要确保节能的特性以及正确性。鉴于以上需求,本文在节能方面采取多项措施,降低能耗;在准确性方面,把消息推送技术应用于农业物联网中,使用MQTT协议对感知数据进行推送,并改进消息推送服务器,提高服务器的运行性能,保证消息准确到达。针对以上农业物联网关键技术进行研究,主要研究内容为:1、传统发送多个传感数据时,多采用分散的数据包格式,这样会带来多余的能量消耗。针对这个问题,通过设置数据包对多个传感数据进行封装统一发送,避免了在发送多个传感数据情况下,需要多次启动无线单元所带来的能量消耗。通过实验验证:在相同电量下,对集成传感器节点使用自设数据包发送数据时可以多发送1.9倍的数据量,结果表明该节能措施有效。2、汇聚网关节点中若直接推送多个终端节点数据,会因频繁推送而造成能量消耗过多。为解决这一问题,使用哈夫曼编码压缩机制对多个终端节点数据进行压缩,压缩率约41%,然后进行推送。实验结果表明:相同电量下,使用压缩机制可以多推送约25.31%数据包,即单位推送消息能耗更小。3、为了进一步提高服务器的运行性能,保证消息的准确到达,改进消息推送服务器的推送机制,分别在空闲管理连接机制上和消息发送主题匹配机制上进行优化,改善服务器性能。在空闲管理连接机制上对原数组保存连接对象的空闲连接建立索引,并使用动态数组进行保存。当新的连接到来时,可以直接通过索引快速找到空闲连接并进行匹配,避免了现有推送机制中对原数组进行全盘扫描带来的资源浪费。在消息发送主题匹配机制上,使用哈希表保存主题与其对应订阅列表之间的映射地址。当对主题进行操作时,不必对整个订阅树进行扫描,遍历匹配相同的主题,再去找订阅列表,而是直接通过哈希表中主题的映射地址快速找到订阅列表。通过实验验证,改进后服务器的平均响应时间相比原先平均提高了 13.916%,说明该改进方法可有效提高服务器运行性能。综合以上相关技术,对终端采集节点和汇聚网关进行软硬件实现,并搭建温室监测平台进行综合测试,该平台实现了对温室环境信息进行采集、传输、推送的完整过程。通过测试发现,在相同电量下相比原先可多推送42.6%的数据包。