军用雷达车Web端监控系统软件设计毕业论文
2020-04-08 12:39:01
摘 要
随着计算机技术和通讯技术的飞速发展,信息化和数据化已经成为现代社会各个领域发展的主要方向。特别是军事领域,信息和数据的及时传递分析更是至关重要。其中,雷达是军队的眼睛,雷达部队特别需要保护好这“眼睛”。因此雷达的工作状况数据必须实时监控,采集并写入数据库,以提高军队的管控能力和作战效率。
本文对雷达车的web端监控系统,包括前端界面及后台服务,进行了设计。结合实际应用上雷达监控系统的需要,从数据录入、数据显示、数据库管理、实时地图显示上的功能需求进行分析梳理,设计了一套简洁明了的web端监控系统。
系统基于MVC架构,主要使用HTML语言及C#语言编写,辅以jQuery、bootstrap等开源框架,NPOI等开源插件。Web端监控系统除了实现了完整的数据录入显示及数据库增删查改等基本功能,还支持离线百度地图显示,以及导出Excel文件等功能。
本文首先阐述了信息化时代web网页开发的现状,雷达车的web端监控系统的背景意义,然后从编程人员的角度阐明使用ASP.NET MVC开发的优势。接着,依据该项目的开发过程,从数据库到前端界面设计,到前后端数据交互,百度地图离线显示,导出Excel文件功能等,一步步地阐述web网页开发的全过程。
关键词:部队通讯;web端监控系统;MVC架构;数据库设计;离线地图
Abstract
With the rapid development of computer technology and communication technology, informatization and datamation has become the main direction of development in all fields of modern society. Especially in the military field, the timely transmission of information and data analysis is critical. Among them, radar is the eye of the army, and radar troops need to protect their "eyes". Therefore, the working condition data of radar must be monitored in real time, collected and written to the database, so as to improve the control and operational efficiency of the army.
In this paper, the radar car Web terminal monitoring system, including front-end interface and background services, is designed. According to the needs of the practical application of radar car monitoring system, the functional requirements of data entry, data display, database management and real-time map display are analyzed and combed, and a set of concise and clear radar car Web terminal monitoring system is designed.
The system is based on MVC architecture, mainly using HTML language and C# language, supplemented by jQuery, bootstrap and other open source frameworks, NPOI and other opened source plugins. In addition to the basic functions of the Web terminal monitoring system, such as the complete data entry and display, the database and deletion, the basic functions such as the offline Baidu map display, and the export of Excel files are also supported.
This paper first expounds the status of web web page development in the information age, the background significance of the radar car web end monitoring system, and then clarifies the advantages of using ASP.NET MVC from the perspective of programmers. Then, according to the development process of the project, from the database to the front interface design, to the front and back end data interaction, the Baidu map offline display, the export of Excel file function and so on, the whole process of the web web page development was described step by step.
Key Words:Army communication; Web terminal monitoring system; MVC architecture; Database design; Offline map
目录
摘 要 I
Abstract II
1绪论 1
1.1课题研究背景及意义 1
1.2国内外研究现状 1
1.3课题研究内容及目标 2
2 雷达车监控系统需求分析 3
2.1web端功能需求分析 3
2.2编程工具选择 3
2.2.1IDE及编程语言选择 3
2.2.2MVC架构 4
3 雷达车数据库搭建 5
3.1雷达车数据库设计 5
3.2用户权限数据库设计 6
3.3用户数据库配置 6
4 雷达车监控系统界面设计 9
4.1雷达车数据显示界面设计 9
4.1.1web端母版页设计 9
4.1.2数据显示子页面设计 10
4.2bootstrap构建导航栏特效 12
4.2.1bootstrap引入 12
4.2.2下拉菜单特效实现 12
5 雷达车数据库操作设计 14
5.1基于 Entity Framework的数据库先行设计 14
5.2仓储模式确保雷达车数据可靠存储 15
5.3雷达车数据入库及导出 16
5.3.1web端输入雷达车数据传入控制器 16
5.3.1.1模型绑定方式传递 16
5.3.1.2 AJAX方式传递 18
5.3.2系统控制层获取web端输入数据 19
5.4web端读取雷达车数据 20
5.4.1ViewData方式 20
5.4.2后端返回复杂数据 20
6 雷达车监控系统额外功能 22
6.1离线地图显示 22
6.2Excel文件导出 23
6.3权限校检 24
6.4底层硬件通讯 25
7 总结与展望 26
致谢 27
参考文献 28
1绪论
1.1课题研究背景及意义
对于军人而言,什么最重要?俗语有云“知己知彼,百战不殆”,信息与情报最重要。那么如何才能确保信息与情报的通畅呢?合理地运用网络资源,构建军事网络,并且搭建服务器和网页,确保信息及时准确地传递。
21世纪是信息化、自动化的时代了,军队信息管理也不可能像百年前冷兵器时代那样,依靠斥候和传令官在指挥部和前线部队来回奔波,口头传递信息;军备的管理也不能靠工程师天天检修保障稳定了。
传统方式,雷达车的稳定工作,需要雷达车战士及工程师经常检修保养,但仍然时常无法及时发现故障或者潜在问题——这时候就需要不知疲倦的检测仪器不断检测雷达车工作状况,并及时上报检测结果。然而,现在绝大部分老式雷达车都依靠着设计制造时尽可能地追求稳定,来减轻人工检修的工作负担,而缺乏相应的自动检测装置。为了提高这部分老式雷达车的工作稳定可靠性,除了要加装检测仪器,更需要设计一个web端监控系统以供管理人员及时获取仪器检测结果。
建立起检测仪器上传检测数据、雷达车web端监控系统获取及显示数据的系统,及时将雷达工作状况、运行数据进行采集与显示,能够以较低的投入实现老式雷达车的全面更新,可以有效地以低投入达到提高全军雷达车作战能力的效果。而且信息化的web端监控,给予了指挥部实时掌握雷达车工作状况的能力,极大地提高了军队的管理能力。
1.2国内外研究现状
近两年,HTML5技术迅猛发展已经几乎全面获得浏览器支持;微软继续推出了MVC 5.2,又更新了ASP.NET Core 2.0;以bootstrap为首的大量前端开源框架蓬勃发展;Mybatis逐渐取代hibernate成为Java数据库开发主流……国外的网页技术、数据库管理技术迅速发展,网页编程逐渐变得越发重要。程序员的重心,在渐渐从单机离线应用过渡到web开发及物联网应用上。仅看微软的Visual Studio 2017,安装时web工具包达7个G,比Windows窗体开发需要下载的工具包大小足足大了一倍不止。回望国内,就连360、金山毒霸那些杀毒软件都开始走云查杀,浏览器开发的路——似乎是表明,web开发和物联网已经成为编程主流。
针对雷达的监控系统的研究开发,国外主要针对雷达采集数据的处理上。基于自动控制理论及数学原理、矩阵运算,将雷达阵接收到的回波强度及收发时间进行复杂的数学运算,以获取二维的物体定位及物体速度、预测轨迹。
国内的研究主要针对物联网,实现底层雷达与数据库计算机的通讯,将雷达数据写入数据库,并开发web端读取显示数据。
无论是web开发技术或是雷达物联网技术,都在不断进步,为雷达的web端监控系统开发提供了极大便利。
1.3课题研究内容及目标
该雷达车web端监控系统的主要研究内容为:针对雷达车监控的需求,设计一个具有完整前端、后台的web端系统,可以将采集到的雷达车工作的实时数据输入相应数据库,并且在web端以离线地图的形式,同步实时显示监控雷达的工作状态及雷达车工作地点变动,达到提高雷达车监管程度及提高军队作战效率的要求。在必要时,提供雷达车工作数据报表下载。
为实现研究内容的要求,先需要在雷达车上安装相应的传感器采集雷达工作信息。然后搭建服务器和对应的雷达车信息数据库,以接收雷达车传递来的数据。再接着,相应具有权限的账户登录雷达监控系统web端前端可以向后台的服务器的数据库请求雷达车信息,并显示到web端前端的离线地图上。在服务器建立权限系统和数据处理分析系统,使得户可以对数据进行增删改查等操作。
2 雷达车监控系统需求分析
雷达车的web端监控系统对于老式雷达车的更新以及提高军队作战能力是极其重要的。
经济的必要性上:老式的雷达车的硬件更新远比整一部车退役换新雷达车要实际得多。老式雷达车仅因服役时间较长就必须加装检测仪器监控,也就必须有雷达web端监控系统配套以保障雷达车的工作运行实时处于监控管理下。
功能的重要性上:无论是新式或者老式雷达车,提高其工作运行的监控以及建立数据库记录,都有利于提高雷达车的工作性能和工作效率,也为工程师们维修、改进雷达车提供了数据支撑。
2.1web端功能需求分析
由于该监控系统是web端(B/S端)的系统,因此其最基本的需要就是建立一个具备完整前后端的网站,前端显示数据、后台实现数据库操作。
由于该监控系统主要围绕数据进行操作和处理,因此必须相应建立数据库,不仅要包括雷达车工作参数数据库,还需要有基本的网站用户数据库,还有保密需要的权限数据库。
有了数据库,就得有适合的前端显示界面显示数据。监控系统的前端应该由:匿名用户界面、注册界面、登录界面、雷达车数据查看界面等界面组成。由于该系统设计为军事使用,界面应该尽量简洁,尽量突出数据内容及数据查找要尽量便捷迅速。
相应的,后端应该在实现了数据库的基本增删查改后,需完善与前端的数据交互,处理网页前端页面的路由和跳转等工作,并能依据权限数据库的权限信息显示权限对应的雷达车的信息。
接着便是其余功能的实现,包括但不仅限离线地图、Excel文件上传、雷达车图片上传等等。
2.2编程工具选择
2.2.1IDE及编程语言选择
世界上编程语言多如繁星,支持web开发的语言多不胜数,Python、Java、C#、nodejs……各种编程语言各有优势各有所长,但C#以其代码的简洁性、对泛型的极好支持,及web开发周期短速度快而独树一帜。
虽然大部分web开发人员更青睐Java编写网站,但使用Java开发web周期长、需要自行编写代码量巨大、需要自行安装的插件极多,极其不利于短周期开发web。而基于C#的ASP.NET开发web最大的优势就是开发周期短、开发速度快。而且对于数据库开发,ASP.NET最大的优势就是可以直接基于数据库文件,生成ADO.NET实体数据模型,并在该实体数据模型中实现基本对数据库操作代码,极大的减少了开发人员的重复代码工作量。然而Java开发web中,无论是mybatis还是hibernate,对数据库的操作代码都必须一步步从头开始写,大量的重复代码及相同功能逻辑判断需要开发人员处理,特别是包的配置及引入繁杂而又容易出错,因此不适合个人开发。
更重要的是,该雷达车web端监控系统的目标环境就是Windows操作系统,将部署在Windows环境下。Java最著名的特性除了其跨平台特性,还有其速度的特别缓慢。使用Java编写的网站部署在Windows系统下,远不如用C#编写的响应速度快、兼容性好。
基于编程语言的简洁性、开发的便利性、目标平台的要求,本web端监控系统使用C#编程语言,在微软公司的Visual Studio 2010下开发,并使用了其ASP.NET MVC 2.0的架构,以确保其在Windows环境下的良好兼容性、稳定性。
2.2.2MVC架构
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,是一种软件设计典范。MVC架构意味着:用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面。其直接带来的优势是:在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
视图是用户看到并与之交互的界面。对一般的Web应用程序来说,视图就是由HTML元素加上各种JavaScript代码、js文件引入组成的界面。MVC好处是它能为应用程序处理很多不同的视图。作为视图来讲,它只是作为一种输出数据并提供了用户操纵部分视图部件及输入数据的入口的方式。
模型表示企业数据和业务规则。在MVC的三个部件中,模型主要是指数据库的操作管理,模型承担最多的处理任务。并且模型与数据格式无关,这样一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。
控制器接受用户的输入并调用模型和视图去完成用户的需求,所以当单击Web页面中的超链接和发送HTML表单时,控制器本身不输出任何东西和做任何处理。它只是接收请求并决定调用哪个模型构件去处理请求,然后再确定用哪个视图来显示返回的数据。
上述对于MVC的介绍以及基本涵盖了ASP.NET MVC下的web开发的主要流程:建立数据库,然后编写前端视图代码,然后编写后台控制器代码处理调用和跳转。
MVC的优势就是对web开发的各个部分划分清晰,前后端解耦程度高,而且后端控制器与实体数据模型也高度解耦,极其利于分步开放,合并为一个整体。
3 雷达车数据库搭建
由于该雷达车web端监控系统的目标环境是Windows,而且也使用了微软公司的Visual Studio 2010开发,自然地,也选择MSSQL(SQL Server)作为数据库软件。基于Visual Studio 2010与SQL Server 2008的匹配和官方推荐,选择使用SQL Server 2008搭建数据库及管理数据库。
图3-1 数据库ER图
3.1雷达车数据库设计
依据项目要求,雷达车底层检测仪器共有三个模块,分别检测雷达车的主电路电流值、雷达车是否有辐射发射、雷达车显示屏是否工作。因此雷达车的数据库字段必然需要设计对应这三个检测值的字段。
此外,为了唯一标志每一辆雷达车,需要有雷达车的车名编号字段;为了标识雷达车的归属部队,需要有一段权限编号唯一标识雷达车归属;为了在离线地图上显示雷达车位置,需要有经纬度字段记录雷达车坐标;为了web端用户更清晰地了解雷达车信息,需要有字段存储雷达车图片信息;由于同一雷达车在不同时间采集的数据均需要存入数据库,为了标识数据采集时间也为了在检测到雷达车故障时确定故障时间,需要设计时间字段记录采集时间。
因此,雷达车数据库字段设计为:ID,雷达车车名编号,经度,纬度,电流值,辐射值,屏幕亮灭,雷达车装备,雷达车图片,数据采集时间,权限编号。其中雷达车的车名编号、经度、纬度、电流值、辐射值、屏幕亮灭,应由雷达车模块上传至数据库;ID、数据采集时间、权限编号应由数据写入数据库前自动生成;雷达车装备与雷达车图片应该在web端前端开发相应输入口给用户增补数据。
3.2用户权限数据库设计
权限数据库是基于部队的保密特性需要而设计。部队的权限要求为:具有多个营级、团级、旅级层级。一个团级下面对应多个营级,上面对应一个旅级。但是,并非所有营级都归属一个团级,一个团级只能查看其下属营级的数据,也能查看营级更下级的下属的数据,但是不能查看上面的旅级数据,也不能查看同级的其他团级的数据,更不能查看同级其他团级的下属营级的数据。
显然,权限一级级往上嵌套,同级间互不交叉。因此,权限的要求可以抽象为一颗多叉树,只有一个旅级根节点及多个父结点和多个子结点,每个父结点下面有多个子结点,每个子结点有且仅有一个父结点。因此,权限数据库的字段设计只需要保存——子结点的ID及该子结点对应的父结点的ID就行,根结点对应的父结点的ID设为0。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示:
课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。