基于物联网的远程监控Word文档格式.doc

上传人:wj 文档编号:8431939 上传时间:2023-05-11 格式:DOC 页数:38 大小:2.01MB
下载 相关 举报
基于物联网的远程监控Word文档格式.doc_第1页
第1页 / 共38页
基于物联网的远程监控Word文档格式.doc_第2页
第2页 / 共38页
基于物联网的远程监控Word文档格式.doc_第3页
第3页 / 共38页
基于物联网的远程监控Word文档格式.doc_第4页
第4页 / 共38页
基于物联网的远程监控Word文档格式.doc_第5页
第5页 / 共38页
基于物联网的远程监控Word文档格式.doc_第6页
第6页 / 共38页
基于物联网的远程监控Word文档格式.doc_第7页
第7页 / 共38页
基于物联网的远程监控Word文档格式.doc_第8页
第8页 / 共38页
基于物联网的远程监控Word文档格式.doc_第9页
第9页 / 共38页
基于物联网的远程监控Word文档格式.doc_第10页
第10页 / 共38页
基于物联网的远程监控Word文档格式.doc_第11页
第11页 / 共38页
基于物联网的远程监控Word文档格式.doc_第12页
第12页 / 共38页
基于物联网的远程监控Word文档格式.doc_第13页
第13页 / 共38页
基于物联网的远程监控Word文档格式.doc_第14页
第14页 / 共38页
基于物联网的远程监控Word文档格式.doc_第15页
第15页 / 共38页
基于物联网的远程监控Word文档格式.doc_第16页
第16页 / 共38页
基于物联网的远程监控Word文档格式.doc_第17页
第17页 / 共38页
基于物联网的远程监控Word文档格式.doc_第18页
第18页 / 共38页
基于物联网的远程监控Word文档格式.doc_第19页
第19页 / 共38页
基于物联网的远程监控Word文档格式.doc_第20页
第20页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于物联网的远程监控Word文档格式.doc

《基于物联网的远程监控Word文档格式.doc》由会员分享,可在线阅读,更多相关《基于物联网的远程监控Word文档格式.doc(38页珍藏版)》请在冰点文库上搜索。

基于物联网的远程监控Word文档格式.doc

Thetwomodules:

ServerandClient,Servermodulesimulationbymonitoringequipment,theClientmodulesimulationmonitoringequipment.Thenthroughsimpleautomaticscreenshots,sentautomaticallymautomaticdisplayandsoontocompletetheServer

Keywords:

remotecontrolInternetcommunication

目录

第一章绪论 1

1.1选题背景 1

1.2国内外研究现状 1

1.3选题目的与意义 1

第二章工具介绍 2

2.1JAVA的简述 2

2.2开发语言的选择 2

2.3系统架构模式 2

2.4系统的应用技术 3

第三章系统分析 4

3.1系统需求分析 4

3.2系统总体结构 4

3.3系统的实现方针 5

第四章系统设计 6

4.1功能概要设计 6

4.2性能设计 7

4.3功能划分 7

4.4客户操作 9

4.5系统总体功能结构 10

第五章实验及测试 11

第六章结论 17

参考文献 18

附录 19

部分程序代码 21

外文资料 30

中文翻译 32

谢辞 34

天津工业大学本科毕业论文

第一章绪论

1.1选题背景

物联网是新一代信息技术的重要组成部分。

物联网的英文名称是“TheInternetofthings”。

顾名思义,物联网就是“物物相连的互联网”。

随着国际物联网业的快速发展,大量的信息技术被采用,并且信息技术提高了监控系统的准确性和实时性,现代的物联网发展趋势:

物联网的系统化趋势,物联网的信息化趋势,物联网与商业流,信息流一体化趋势等等。

并且,物联网可以提高经济发展,大大降低成本,物联网将广泛应用于智能交通,环境保护,公共安全的领域。

1.2国内外研究现状

首先,远程监控技术是从20世纪60年代美国发展的故障诊断技术研究的基础和前提下发展而来的。

随着传感技术,移动通信技术和计算机技术的发展,它已经打破了监测终端和控制中心的地域限制。

现在的远程监控都是经过物联网进行远程的监控。

这样可以保持人员的安全和信息的及时有效。

随着技术的发展,远程监控已经从单机远程监控,到基于Internet远程监控,再到现在的基于移动通信网络的远程监控,3G(computer计算机,communication通信,control自动控制)时代的到来,基于移动通信网络的远程监控系统是近几年来发展最快的一种远程监控技术。

1.3选题目的与意义

物联网数字化建设的基础工作之一就是基础数据的采集问题,基础数据的真实与完备是关系到监控系统数字化建设成功与否的关键与瓶颈,物联网的出现恰恰解决了这一难题,所以我想研究并学习一些物联网领域的应用和展望物联网的发展。

我开始是想基于B/S的网络结构来实现监控的功能,但是做起来需要的精力和技术要求都比较高,即使使用现在最流行的企业级框架spring+hibernate来搭建环境也是需要一定的时间,我担心毕业前不能完成任务,所以就用了简单的模拟程序来完成一些功能。

第二章工具介绍

2.1JAVA的简述

1.Java有两方面的含义:

Java语言和Java平台

作为一种开发语言,Java是一种跨平台的开发语言,能开发出跨平台的应用对象和应用程序。

Java语言具有封装,继承,多态和抽象的特点。

2.Java开发环境

Java是面向对象的编程语言,JDK(JavaDevelopmentKit)作为其开发包。

可以在Web上开发相关的Web应用,也可以开发出各种类型的桌面程序。

在此课题中我用的是JDK1.7,现在的Oracle公司推出了最新版本JDK1.8。

并且增加了十个新特性:

interface的默认方式,Lambda表达式,函数方式接口,方法与构造函数引用,Lambda作用域,访问局部变量,访问对象字段与静态变量,访问接口的默认方法,DataAPI,Annotation注解

2.2开发语言的选择

Java是一种通过解释方式来执行的语言,其语法规则和C++类似,同时,Java也是一种跨平台的程序设计语言。

与目前常用的C++相比,Java语言简洁的多,而且提高了额可靠性,除去了最大的程序错误根源,此外它还有较高的安全性,可以说它是有史以来最为卓越的编程语言。

基于这些Java自身的优势,所以我选择了使用Java语言进行开发。

Java语言程序代码的编程和运行过程如图2.2.1所示

计算机

机器码

010010…

JVM(Java虚拟机)

字节码

编译器

程序源代码

图2.2.1java汇编原理

2.3系统架构模式

B/S架构的全称为Browser/Server,即浏览器/服务器结构

B/S模式的优点:

B/S应用系统对客户端计算机的要求比较低,客户端计算机只需要具有网卡和浏览器即

可使用本系统。

并且系统的分成明确,现在最流行的就是MVC(ModelViewController)三层结构,即模型层,显示层和控制层。

这样编写程序的时候快速便捷。

B/S模式的缺点:

1)在跨浏览器上,B/S架构还有些兼容性问题没有解决

2)速度和安全需要,是B/S架构的最大问题,但是这个问题可以用高性能的设备来解决

在此课题中,我用的是B/S结构,为了更加方便的实现本课题的功能,我的是Servlet/JSP来实现了后台功能,前台用到了easyui这个漂亮框架,不过现在前台最流行的框架有angularJS和bootstrap响应式布局,这两套框架做出来的程序会让客户的体验感,大大提升。

其中Servlet实现了若干个Action的实现方法,在getPost方法里面实现了来前台的相关数据处理后又反给前台显示,这一模式有点模仿MVC模式,现在J2EE企业级框架的MVC模式都比较成熟,常见的有struts2(MVC)和spring(MVC)

2.4系统的应用技术

本系统用到的技术后台(struts2springhibernate)前台技术有(javascriptajax/jqueryhtml/css)

Stuts2是webwork的基础上进行了合并的全新的struts2框架,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开。

Spring框架是由于软件开发的复杂性而创建的。

Spring使用的基本是JavaBean来完成,以前可能由EJB完成的事情,然而Spring的用途不仅仅限于服务端的开发。

从简单性、可测试性和松耦合性的角度而言,绝大部分Java应用都可以从spring中受益。

Hibernate是一个快放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思想来操纵数据库,Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的web应用中使用,最具革命意义的是,hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

第三章系统分析

3.1系统需求分析

基于物联网的远程监控系统,能够实现两台设备(计算机)之间的数据交换,主要还是从服务端到客户端的数据传递,并将数据实时的展现给客户的计算机,达到一种点对

点的远程监控功能。

通过物联网实现远程监控的功能,我是通过编写两个模块组,来模拟实现远程监控,即启动服务Server,然后通过客户端Client来查看Server计算机上的操作和情况,达到一种远程监控的功能。

为了实现远程监控功能,Client端每隔一段时间向Server端发送一次请求,这样Server端就可以把它的操作时时的发送给Client端,供客户端查看。

在这个模块组的基础上,为了让软件更加健壮和日后的快速维护,我使用了流行的框架easyui来显示相关信息,供软件的使用者更加清晰明了的观察远程设备的相关状态。

这不仅仅可以使软件有顽强的生命力,而且可以使软件的日后维护起来更加的方便快捷。

3.2系统总体结构

基于物联网的远程监控,也需要有互联网作为强有力的后台支持,在这里我用的协议互联网上更加方便和普遍的http协议,这种协议是一次请求一次连接,可以更加高效的利用网络带宽。

远程监控启动后,系统会不间断的向客户端发送请求,可以让客户端的客户人员时时刻刻知道远程设备的相关状态和参数变化情况,以便做出相应的支持供远程设备使用。

此系统的重要之一就是数据库的使用,现在最流行的数据库有:

Oracle数据库,mySQL数据库,SQLServer数据库。

我在这里用的是mySQL数据库,因为此数据库是免费使用,而且更加流行。

系统的客户端,用户可以随时随地的打开浏览器就可以访问本系统,并且从服务端传来的数据会以列表的形式展现给用户端,在这种典型的B/S结构中浏览器的解析功能,也非常重要,因为每家浏览器生产商所使用的内核都各不相同,导致会出现用不同的浏览器出现不同的展现效果,尤其是IE6的兼容性是最差的。

下面我列出了系统的常规结构如图3.2所示

SQLServer数据库

图3.2web系统示意图

3.3系统的实现方针

为了实现本课题的功能和业务,首先,需要设计一些数据库表格,现在比较流行的关系型数据库有Oracle数据库,mySQL数据库,和SQLServer数据库。

对于一个选定的数据库管理系统(DBMS),数据库系统性能的表现可以有很大差异,它和DBMS参数的选择、数据模式的设计、应用系统的设计、软硬件环境的配置等多个因素密切相关。

本系统选用的是mySQL数据库,是基于它的简单便捷和高性能的查询机制。

选定数据库后,还要有能够接收任何系统访问的服务器,而Tomcat服务器就是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,所以在本课题中我选用了这款apache-tomcat服务器,作为服务端。

在整个系统的开发过程中,使用的核心开发语言还是Java语言,但是任何事物都有它的使用范围,和能力范围,Java语言也是一样的,所以还需要一些Servlet/JSP容器作为后台的容器,和javascript,html这些前台技术的支持

第四章系统设计

4.1功能概要设计

本可以使基于物联网的远程监控,为了更好的实现本系统的功能,我是完成本地电脑对另外一台电脑的屏幕进行监控,在这里我是通过Client模块监控Server模块完成

的。

具体操作是Server模块启动一个线程,等待Client的请求,然后Client模块也启动一个线程后,Server模块就会每隔一段时间向Client模块发送一个截屏信息。

其中Java代码为了清晰明了,我将其分成了若干个class文件,这样便于读者的阅读和理解,今后在写其他程序的时候还用注意相关的分层情况,否则一旦系统出现了故障,那维护起来是相当快困难,并且不利于维护人员的理解。

其中还有一部分显示层(View)的文件,在这里因为不是主要知识点,我就没有做过多的解释和使用,显示层需要使用相关的CSS样式和JavaScript文件,但是由于javascript比较复杂而且对DOM的处理也不尽人意,所以我使用的是jQuery来代替了javascript的功能。

Java代码的结构如图4.1所示

图4.1监控代码结构图

这里我通过两个包来区分两个模块,便于理解和阅读,在系统的使用的开发过程中应该更加清晰的使用封装和分层的思想,这里的封装是为了保证代码的重复利用,不至

于同样的代码太多到时系统看起特别的冗余和沉重,设计模式是一个需要认真学习的思想,并且要有自己的设计思想融入到项目系统中去,这样开发出来的代码才会有生命力和魅力。

4.2性能设计

为了保证系统能够长期,安全,稳定,可靠,高效的运行,系统应该满足一下的性能需求:

1)监控系统的准确性和及时性

这一要求是为了让Server模块快速准确的给Client模块发送远程设备的状态,如果有网络延迟或者系统的其他故障导致了信息的延迟,那么传到Client的信息也就属于垃圾信息,不在具备参考价值,所以我在考虑到这一点,保证了系统的安全稳定运行。

2)监控系统的开放性和系统的可扩展性

其中开放性是本系统发布后,使用者可以自行修改代码和添加自己想要的功能,其中甚至接口模块都可以自己定义,为了使系统日后的升级换代,还要为系统的发展空间留下空余,在这里我使用最多的配置文件方式,使用者可以自行更改相关的xml配置文件

3)监控系统的易用性和易维护性

现在的软件系统要求使用越简单越好,因为在当今快节奏的生活中,每个人的工作越来越单一也越来越专业化,所以为了保证每个人都能快速的使用软件,我也是做了相关的简单化处理,是每个人都能在几分钟的时间里了解本软件的使用方式。

4.3功能划分

其中Server模块是服务层,主要负责开启一个指定端口服务,我设定的是30012端口实现监听请求。

该端口用于接收客户端传来的http请求,在每一次请求完成之后Server模块都会做一次截屏的操作,然后将截取的得图片发送给Client客户端,以便让当前客户能够知道Server计算机的状态和操作进度等一些相关的信息。

功能的划分在日常生活中也非常常见,软件的功能划分不仅是为了让客户使用的更加方便,而且可以使软件开发过程中适应团队的模式开发,而且现在市面上有很多版本控制器,其中我最喜欢的SVN(Subversion)版本控制器,因为太具有小巧便捷,这种Subversion版本控制器,不仅仅是为了使软件开发的过程中实时记录自己的代码开发情况,而且可以更好的团队开发,将项目划分给若干个小组进行同时开发,然后每个人将开发好的代码提交到公共

的开发平台进行整合,整合完成的代码就是将来要发布到服务器上的程序,服务器可以随便使用,免费方便的服务器就可以使tomcat服务器进行相关开发和测试过程,在测试

的过程中需要注意的地方我再后面的章节会具体讲解。

具体代码如图4.3.1所示

图4.3.1开发代码

Client模块是客户端,主要负责发送http请求到服务器(Server),这样就形成了Client时时监控Server的操控功能,不过为了减轻CPU的压力我将请求设置为3秒发送一起,作为示意信息交互。

在Client第一次发送请求的时候,Server已经提前准备到相应的Sokcet端口等待处理来自Client发送过来的请求,再后面的请求送过过来的时候,Server会做一次判断,如果不是停止服务,Server服务器会源源不断的截屏,把图片发送给Client客户端,这样就完成了通过物联网的实现远程监控的功能,是客户端能够时时的观察Server服务的一起操作。

在Client模块是为了给客户提供显示远程设备的状态情况和相关参数,也就是相当于软件的门面,这一部分的好与坏会直接关系到软件的舒适感,在这里我就没有使用现在最流的bootstrap响应式布局,这种响应式布局可以保证软件的美观度和舒适感,而且它不局限于浏览器的厂家和版本,甚至使用不同的手机去运行同一款代码,也不会出现杂乱的现象,这在以前是很难做到的,尤其是当今社会,人们用的浏览器,和手机五花八门,如果没有响应式布局,那开发人员将面对一场灾难性的战斗。

实现远程监控,具体代码如图4.3.2

图4.3.2开发代码

4.4客户操作

如果将系统部署,就应该保持Server服务器的长期启动状态,以保持所有的Client客户都可以随时随地的去访问Server服务器,但是我这里只是示意的完成这一过程,首先启动Server模块的主函数,这样就Server就会自动启动一个线程和一个Socket负责端口的监听,等待Client发来的http请求,然后进行相应的处理。

Server服务器启动结束之后,再启动Client客户端,并且会自动的发送http协议的请求,这是Server就会每隔一定的时间就向Client发送一张桌面截屏,不难理解,如果这个时间间隔无限断,图片就可以变成动态的视频了,不过我这里还是以示意完成功能为主,以3秒发送一次请求,这样只是为了保证所以的CPU都成承受,以后有什么需求可以更改发送请求时间就可以完成了。

客户打开任意浏览器,然后输入http:

//localhost:

8080/workcontrol,

就可以访问服务器,在这里是典型的B/S系统模式,也是使用了现在最流行的MVC思想去编写程序,所以可以给用户最简单的操作功能,不至于传统的系统软件,需要用户十分了解自己的所使用软件的功能才能熟练的掌握使用,那样不潜移默化的前提下就浪费的用户的宝贵时间。

本系统的权限管理也做了简单的处理,因为不同角色的用户登录会有不同的展现效果和不同的使用功能,在这种前提下,拦截器的使用就显得格外重要

了,只需要本系统的管理员在权限设置的页面上选择不角色的使用权限,就可以完成权限设置的功能了,因为这个功能我在后台做了相应的封装管理,就大大减少了用户管理员的操作流程和操作复杂程度,让系统的使用变得舒适简单。

4.5系统总体功能结构

系统的总体结构分为七大部分,其中首先是要启动服务器的Server模块组,在本系统中也可以启动tomcat的startup.bat,让服务器先启动,等待客户端的访问,服务器的功能就算是完成了一大部分,然后是客户端的启动,客户端只需要打开浏览器输入上面的写的浏览器地址就可以访问到本系统的额服务器,这种情况下,服务器就会不间断的做截屏的操作,将远程设备的状态和相关的信息发送给使用浏览器访问服务的用户面前,在此过程中所涉及的数据交互信息量不是特别大,所是对带宽的要求也不是特别的高,只要能够正常的展现有用信息就可以了。

在系统的启动和使用过程中难免会发生更种各样的错误,那么的错误日志的使用就非常的重要了,在这里我要说明的是,常见的错误处理一共分为五大类,在开发过程中和测试过程中都会使用相关的错误信息,在这里为了非常友好的客户体验,所以要做的事情就是把系统错误的信息进行优化和隐藏,不能把恶意的错误信息展现给使用者,那样可能会让使用者感到不舒服或者畏惧使用软件的心理。

动态展现部分,是使用ajax异步的操作功能实现的,在这用异步的数据交换过程中,很给客户端的使用者良好的体验感和舒适感,因为传统的同步数据交换,每次接受到服务器传来的信息,客户端的电脑都会进行一次刷屏操作,这样不仅会伤害用户的眼睛,还会让客户感觉特别的不舒服,ajax异步数据交换能够给客户良好的感觉,因为它不会使显示器刷屏,更不会导致软件的浪费资源。

最后停止系统,关闭浏览器就可以了,即使不关闭浏览器也可以,因为现在打开着浏览器也不会占用网上带宽,浪费资源。

系统的总体结构如图4.5所示

用户启动

服务器启动

数据交换

错误记录

动态展现操作

图片保存

停止系统

图4.5系统模块

第五章实验及测试

程序在编译前或者运行过程中会出现各种各样的问题,遇见程序错误,最重要的就是看控制台的错误信息,通过错误提示去分析错误的原因,例如在我实验的过程中就出现过编译前的错误,如图5.1所示。

在这次的错误中,是因为某些变量的取值发生错误,在java程序中的传递都是值传递,所以一定要明确的知道变量之间的作用域,即使用范文,否则经常会出现空指针异常

java.lang.NullPointerException这样的错误,所以需要通过控制台的提示信息去分析错误的大概位置。

实验过程中,学会看懂错误提示信息也是非常重要的能力,在系统实验过程中错误信息有多种多样的显示情况,可以打印在控制台,也可以专门的准备一个Log4.properties文件接收系统产生的错误,在这里我就使用的是Log4.properties文件来接收系统实验运行过程中产生的错误信息,在日常生活中像这样的记录错误方式非常常见,因为用这种记录文件来收集错误信息,不仅可以避免恶意的错误提示信息,暴露在客户端的面前,而且这也是一种远程监控的应用,在错误信息日志中可以设定指定的时间,每隔一定的时间,错误日志就可以将电脑记录的错误信息发送给维修人员,系统维修人员可以根据,错误日志中所记录的错误信息和时间来判断,产生错误的可能性,并且大大降低了错误查询的盲目性,使工作效率

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2