基于ZigBee和云服务的智能小车环境监测系统设计与实现毕业论文
2020-03-12 10:26:43
摘 要
随着农业现代化的不断发展,农业的智能化也在飞速地发展和普及。而新兴物联网技术也迅速地分布在每一个需要智能化的地方,由大规模的无线传感器网络组成的“眼睛”、“鼻子”、“耳朵”等感知层使得我们随时随地地获取大量需要的信息;由云平台这个“大脑”在不间断地帮助我们分析和处理感知层的信息,通过预设的程序进行信息的筛选、提炼,给使用者反馈精炼而有质量的信息从而能及时地调节系统和处理突发情况。本文基于以上研究方向,提出了基于Zigbee和云服务的环境检测系统,并以果园为模拟实验平台,设计了对果园的环境检测系统。
首先,本文研究的系统采用基于CC2530的硬件系统采集和对应传感器采集想过的传感数据,包括温湿度、雨滴、土壤湿度和人体感应等数据,使用智能小车进行自动的避障操作和巡逻监测。其次,系统应用Zigbee协议进行自组网和数据传输,将硬件均匀合理地分布到果园。再次,本系统将数据的处理和提炼的程序放置在云平台,以提供不间断的服务。
本文将详细讲述系统设计关于各部分的细节、所采用的技术以及该技术的要点。最后,本文将总结本次的设计作业和对本系统的评估和相关方向的展望。
关键字:无线传感器网络,Zigbee技术,云平台,智能小车
Abstract
With the development of modernized agricultural, the intelligentization of agriculture is also rapidly developing and popularizing. The emerging Internet of Things technology is also rapidly distributed in every place where intelligentization is needed. The “eyes”, “nose”, “ears” and other perceptual layers made up of large-scale wireless sensor networks which allow us to get information we need.The cloud platform---the “brain” of this system helps us to analyze and process the information from the perceptual layer. The preset program carries out information screening and refinement, giving the user refined and weighty information and thus timely adjustment system and handling emergencies. Based on the above research direction, this paper proposes an environmental detection system based on Zigbee and cloud services, and uses Orchard as a simulation experiment platform to design an environmental detection system for orchards.
Firstly, the system studied in this paper adopts the hardware system based on CC2530 to collect sensor data which collected by corresponding sensors, including temperature and humidity, raindrops, soil moisture, and human body sensing data. Using smart cars for automatic obstacle avoidance and patrol monitoring. Secondly, the system applies Zigbee protocol for ad hoc network and data transmission, distributing the hardware evenly and reasonably to the orchard. Thirdly, the system places data processing and refining procedures on the cloud platform to provide continuous service.
This paper will describe in detail the details of the system design, the technologies used, and the points of the technology. Finally, this paper will summarize the current design work and the assessment of the system and the direction of the relevant direction.
KEY WORDS: Wireless Sensor Network,Zigbee Technology,Cloud Platform,Smart Car
目 录
第一章 绪论 1
1.1 课题研究背景和意义 1
1.2 智能检测系统特点 1
1.3 国内外研究现状 2
1.3.1国外研究现状 2
1.3.2 国内研究现状 2
1.4 本文研究的主要内容 2
第二章 相关技术概述 3
2.1 硬件介绍 3
2.1.1 CC2530简介 3
2.1.2 CC2000 Debugger 3
2.1.3 Cortex-A8芯片 3
2.2 开发环境以及开发工具介绍 3
2.2.1 IAR Embedded Workbench 3
2.2.2 IntelliJ IDEA 开发工具 4
2.2.3 Tomcat服务器 4
2.2.4 arm-linux-gcc交叉编译器 5
2.3 JSP技术 5
2.4 Servlet技术 5
2.5 AJAX技术 7
2.6 JavaScript 7
2.7 MVC框架 7
2.8 ZigBee技术 8
2.9 本章小结 9
第三章 系统设计与实现 10
3.1 系统需求分析 10
3. 2 可行性分析 11
3.3 数据采集模块 11
3.3.1传感器数据的获取 11
3.3.2 数据的无线传输和串口输出 12
3.4 数据处理模块 16
3.4.1 串口读取 16
3.4.2 将数据上传数据库 17
3.4.3 模块内联动 17
3.5 数据展示模块 19
3.5.1 JavaBean获取数据 19
3.5.2 Servlet 请求处理 19
3.5.3 JSP界面 20
3.5.4 域名注册即使用 20
3.5.5 配置Tomcat服务器 21
3.5.6 Web项目web.xml配置 21
3.6 智能小车模块 22
3.6.1 智能小车硬件介绍 22
3.6.2智能小车功能需求分析 23
3.6.3 智能小车的操控和自动避障巡逻 24
3.6.4 智能小车的定位 25
3.7 本章小结 25
第四章 系统测试 26
4.1 数据采集模块测试 26
4.2 数据处理模块 28
4.3 数据显示模块 30
第五章 总结 32
5.1课题研究总结 32
5.2 个人工作总结 32
5.3 系统展望 32
参考文献 34
致 谢 35
第一章 绪论
1.1 课题研究背景和意义
随着我国综合实力的增强以及国家政府对农业发展重视程度的增加,我国的农业事业也逐渐由传统农业转型为现代农业,而智能化也是现代化农业的重要标识。以果树种植为主的果园类型农业事业在农业中也拥有比较重要的地位,因果园对于管理(灌溉、防火、防盗)的需求比较高,而果园有面积广、地形复杂等特点,加大了人工管理果园的难度,便是作为现代化的果园应该具备有一套基于物联网云平台以及智能监测小车的智能果园监测系统的意义。
传统的人工监测方法存在许多的问题,消耗很多的人力资源,无法精确的获取环境数据从而不能及时的应对突发状况造。而本课题所进行的研究旨在解决这些问题,通过简单的布置传感器网络,所获得的环境数据广泛、精确、可读、便于记录,具有很高的实时性。
云平台的应用也是管理的无人化和远程化的必然需求,顺应了当前时代只要有网络便处处可达的大环境,不论是监测还是控制,都能通过部署在云平台上的应用高效的完成。
1.2 智能检测系统特点
为更具体表述本课题研究的智能检测系统特性,将特性归纳为以下几点:
(1)部署简易:本系统无线传感器网络采用了Z-Stack协议栈部署,将搭载有zigbee模块的cc2530开发板连接好需要的传感器,按照拓扑图约定将终端、路由、协调节点在无线通信允许的范围之内自由部署,协议栈就会进行自组网,节省了复杂的网络拓扑的设计。
(2)低能耗:得益于zigbee技术,本系统继承了其低能耗的特点。
(3)实时性:因系统的低能耗特性,也使得传感器网络不间断地进行数据采集工作,同时云平台也在服务器不断地读取和处理数据,因此当用户需要时便可以随时进行查看。
(4)系统灵活行:灵活性主要表现于方便拓展,当用户有新的需求,例如添加某一项数据的检测,或者检测的范围进行了扩张,只需更改或者添加需要的硬件再对软件进行稍微的调整即可。
1.3 国内外研究现状
环境的检测一直是智能化研究领域的热门话题,为了使环境检测走向更智能化道路,国内外科研人员一直进行着不断地尝试。应用物联网技术进行环境的监测系统的开发,在发达国家有了比较扎实的基础,也进行了很多对未知的摸索。而在国内方面,我国的环境监测技术也有了很多的突破,目前在此领域的研究已经属于领先地位。
1.3.1国外研究现状
(1)由哈佛大学与BBN公司合作开发了CitySence的无线传感器网络系统,用于监测环境的温湿度,二氧化碳浓度,风速和风向的大气状况数据[1]。
(2)由Byunggu Yu领衔的哥伦比亚大学提出了数十亿量级的移动设备到物联网的连接存在的可靠,可拓展管理,运用云计算解决EXA规模的的时间序列所带来的问题。
(3)日本Fumiko Satoh提出基于云计算的能量管理系统,根据排放报告和循环来规范排放,管理环境。
1.3.2 国内研究现状
(1)中国科学院深联科技“基于ZigBee无线通信写一张的GAINJ\GAINZ等系列传感节点”[1]。
(2)中国移动公司开发“滑坡GPS自动化监测预警系统”使用监测单元、传输单元、处理和控制单元进行滑坡的信息采集和险情预测[1]。
1.4 本文研究的主要内容
本文研究以ZigBee和与平台为基础的环境监测系统的实现,并以果园为模拟研究对象。本文的侧重点在于系统开发所运用的技术进行描述和探讨,以及系统开发过程、系统性能分析、优缺点及改进方法的讨论,具体分为一下几点:
(1)系统研究目的以及意义的分析,国内外的研究现状讨论;
(2)系统相关技术的概述,包括具体实现相关功能的技术和相关开发环境的介绍说明;
(3)系统的流程图和功能概述,各个模块的详细分析,系统的实现展示;
(4)总结研究课程,对存在问题进行探讨。
第二章 相关技术概述
本章主要内容包括:
(1)开发环境描述。包括进行传感器网络开发的IAR编译环境,进行系统后台逻辑开发的IntelliJ IDEA 编译环境,A8智能小车的和云平台服务器系统LINUX以及其运用到的工具。
(2)所应用技术介绍。包括ZigBee技术、Z-Stack协议栈、云服务器后台Servlet技术、前端展示JSP技术、脚本语言JavaScript、Ajax技术、动态折线图HightChart、arm-linux-gcc交叉编译、Tomcat服务器。
2.1 硬件介绍
2.1.1 CC2530简介
CC2530是一块应用于片上系统的解决方案,其一大特点是能以低廉的城边建立强大的网络节点[2]。主要应用包括IEEE 802.15.4系统、ZigBee系统、工业控制和监控系统、医疗保健。
2.1.2 CC2000 Debugger
CC2000 ZIGBEE 仿真器可用于CC2530的 调试、下载、烧写、抓包分析等功能。
2.1.3 Cortex-A8芯片
ARM Cortex-A8基于ARMv7架构,其处理速度能达到600M-1GHZ,大量应用于300Mw以下的移动设备。已经广泛应用的领域包括汽车电子、通讯系统、纺织行业、医疗电子、智能交通、工业控制、通信设备等。
2.2 开发环境以及开发工具介绍
2.2.1 IAR Embedded Workbench
IAR Embedded Workbench的介绍 :
(1)IAR ARM Assembler;
(2)一个通用的IAR XLINK Linker;
(3)功能强大的编辑器;
(4)项目管理器;
(5)命令行实用程序;
(8)IAR C-SPY 调试器;
本系统的无线传感器网络的开发基于IAR Embedded Workbench软件。
2.2.2 IntelliJ IDEA 开发工具
IntelliJ IDEA是一款java语言开发的集成环境,由于其众多优秀的特点广受开发者们的青睐,目前是工人最好开发java开发工具之一。其丰富的功能包括代码的提示、重构、支持JAVAE、Junit还包含了众多前端开发如CSS等。它拥有创新性的GUI设计,简洁的交互风格和实用的提示与纠错功能让协助开发者写出优秀的代码。IDEA的特色功能还包括:智能的选取代码对象、灵活多样的导航模式、优秀的代码重构功能、智能编码辅助系统、灵活的排版功能、智能化代码编辑、代码自动错误检查、自动代码填充功能、程序员意图检测功能等等,强大且完善的功能使得开发得心应手。
2.2.3 Tomcat服务器
Tomcat服务器是一款开源的轻量级web服务器,适用于用户量不多的情况,它是JSP和servlet的一种容器,。在tomcat的conf目录下拥有四个配置文件:
(1)context.xml 文件:公用环境配置文件,服务器会定时地扫描文件,当发现文件内容(某些公共的环境变量)被修改,服务器会重新加载该文件而不是重新启动tomcat服务器,它的作用范围有三个tomcat server级别、Host级别和web app级别;
(2)web.xml文件:应用程序的描述文件,所有web应用中的web.xml文件的父文件;
(3)server.xml文件:对服务器进行设置的文件,设置选项包括设置端口号、添加虚拟机等;
(4)tomcat-users.xml文件:管理用户角色和管理员权限等信息配置。
2.2.4 arm-linux-gcc交叉编译器
在计算机的环境中能编译出能在另一个环境中运行的程序称为交叉编译,及一个平台可以生成另一个平台可运行代码。arm-linux-gcc交叉编译器就是能够在linux上进行编译、编译完成的代码可以在嵌入式arm中运行的gcc编译器[3]。由于编译器在进行编程序编译的过程中会产生大量的中间文件,占用大量的空间资源(包括内存和磁盘)和CPU 资源,所以程序的编译不会在arm上搭载的Linux进行编译。
2.3 JSP技术
JSP(Java Server Pages),java服务界面于HTML同为网页界面,但二者截然不同,JSP属于动态网页而HTML属于静态界面, JSP拥有许多优点:
(1)支持多平台。可以在几乎所有平台上进行开发,在任意的环境中部署;
(2)强大的可伸缩性。简单如只有一个JSP界面,复杂如上万台服务器的协作都能支持;
(3)多种强大的开发工具支持;
支持使用服务器组件。应用强大的服务器端,可以用来处理复杂的需求,大大扩展了功能。
2.4 Servlet技术
从其名字的构成来看:Servlet=Service Applet可以直白地看出servlet其实就是一种服务程序,它运行在服务器端,等候请求到来,通过“请求-访问”模式的编程,来扩展服务器的功能。完整地实现一个servlet 功能的过程大致分一下四步:
(1) 客户端向服务器发送请求;
(2) 服务器接收到请求信息后发送至服务程序servlet;
(3) Servlet程序完成响应将响应处理结果返回给服务器;
(4) 服务器将响应结果返回客户端。
在服务器中,servlet的生命周期为[5]:
(1) 响应请求,将servlet类加载至内存;
(2) 实例化servlet类并加载初始化方法init();
(3) 执行service()方法,根据接收到的请求类型,执行doPost()、doGet()、doDelet()、doPut();
(4) 当服务器停止调用destroy()方法。
图2.1 servlet架构图
需要注意的是,当服务器启动时,会强制地加载和初始化一个特定的Servlet。
编程接口介绍:
(1) init()方法:servlet的初始化方法,每当服务器启动时就会被调用而且整个生命周期中只会被调用一次,不论有多少请求到达,一般用法包括一些其他类的初始化操作,比如数据库的初始化和连接操作;
(2) service()方法:每当进行一次HttpServlet请求,service()方法就会被 调用一次,方法参数要求为一个请求对象和一个响应对象,根据请求类型(GET、POST、PUT、DELETE),选择调用doPost()、doGet()、doDelet()和doPut()方法;
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: