智能红绿交通信号灯模拟仿真演示系统的设计与实现

目 录
1 绪论 1
1.1 课题背景及意义 1
1.2 课题的研究内容 1
1.3 论文的主要工作及内容 2
1.4 本章小结 2
2 相关技术概述 2
2.1 JAVA SE平台 3
2.2 JDBC技术 4
2.3 多线程 5
2.4 GRAPHICS 5
2.5 本章小结 6
3 系统需求分析 6
3.1 需求概述 6
3.2 业务流程分析 7
3.3 系统需求分析 7
3.4 本章小结 8
4 系统设计 8
4.1 数据结构设计 9
4.2 系统功能模块设计 9
4.3 数据库设计 10
4.4 本章小结 11
5 系统实现 12
5.1 十字路口的相关图形绘制 12
5.2 动画效果的实现 13
5.3 结果分析的实现 14
5.4 本章小结 15
6 系统测试 15
6.1 测试的目的 15
6.2 系统功能测试 15
6.3 本章小结 25
结 论 26
致 谢 27
1 绪论
1.1 课题背景及意义
在道路建设不断上升的情况下,大城市中仍存在着交通拥挤的状况。道路容量的不足、私家车的普及、整体交通发展战略的缺乏这三个问题,概括起来就是车多路少,是当前大城市交通的基本特点[1~3]。要实现城市交通现代 *好棒文|www.hbsrm.com +Q: 3 5 1 9 1 6 0 7 2 
化,设施装备和交通策略要并驾齐驱。因此需要要从基础的交通设备——红绿交通信号灯出发[4~5],通过对当前各个车道车流量的判断“智能”的改变交通信号灯的时间间隔,在一定程度上缓解交通压力。
随着网络技术日益融入人们的日常生活中,交通方面也不例外。JAVA的面向对象、跨平台、安全性、多线程等特点,使得它的发展前景十分广泛。本系统主要灵活运用JAVA SE、多线程、JDBC以及GRAPHICS画布功能来实现模拟。如今人们对于时间的观念意识逐步加强。因此为了缓解目前众多城市存在着的红绿灯固定的灯时与各个时段的车流量的巨大变化的不相适应,本系统将“传统”形式的固定灯时的交叉路口的交通,与“智能”形式的变化灯时(基于车流量)的交叉路口的交通进行对比并得出一定的结论。通过此系统的仿真模拟以及结果分析,可以比较并得出“智能”模式能在一定程度上给人们的生活带来便利。
1.2 课题的研究内容
随着私家车的普及以及城市规模的不断扩大,继续沿用旧的交通控制策略已经表现出明显的缺点:固定的交通信号灯时间不能随着车流量的变化而有所调整。
目前,绝大多数国内的中小城市依然采用传统的红绿交通信号灯模拟系统,但这显然已经不能满足不断发展的城市,基于车流量的智能红绿交通信号灯模拟仿真演示系统。必将受到大家的欢迎。传统的交通信号灯,通常采用固定时长的分配方式来控制,主要存在以下几个方面的缺陷:(1)绿灯亮时,该某一车道上的车辆通行时,这个车道上并没有车,那么这个时间段就成了交通信号灯指挥的盲点;(2)当该一个车道上的车辆通行时,由于这个车道上的车辆数过多以至于不能在既定的一个周期内车辆完全通过;(3)车道放行时,一个车道上的车辆数明显远远大于另一个车辆,在既定的一个放行周期内,一个车道容易出现车辆堆积,容易造成交通路口的交通堵塞。
该系统主要由两部分组成——仿真模拟和结果分析。仿真模拟部分主要是将“传统”与“智能”模式相对比,通过人为的设置各个方向的车流量大小,来更加直观的看出“智能”模式的优势,以及在不同车流量下(分为市中心和郊区两大块),使用“智能”模式是否存在优势。结果分析部分主要实现对刚模拟的数据进行分析,并对以往测试的数据做个汇总,得出一定的结论。
1.3 论文的主要工作及内容
第一章绪论:论述了智能红绿交通信号灯模拟仿真演示系统这个课题的背景、意义和研究内容等。
第二章相关技术概述:对于开发中用到的软件及相关技术进行相关的基本介绍,包括ECLIPSE、MYSQL软件,JAVA SE平台,GRAPHICS及其API,以及JDBC、多线程等技术。
第三章系统需求分析:首先对需求进行概述,然后对业务流程、系统功能需求以及非功能需求进行分析。
第四章系统设计:在了解设计原则的前提下,对系统功能模块和数据库设计进行相关的分析阐述。
第五章系统实现:对十字路口的相关图形绘制、动画效果的实现以及结果分析的实现进行相关的分析阐述。
第六章系统测试:首先对系统测试的目的有一定的了解,然后进行系统功能测试。
1.4 本章小结
本章对本系统研究的背景和意义进行了相关的阐述,并介绍了本系统所要研究的内容,最后对论文的主要工作与内容进行了分析阐述。
2 相关技术概述
 *好棒文|www.hbsrm.com +Q: 3 5 1 9 1 6 0 7 2 
本系统涉及软件主要包括开发软件和数据库。
开发软件——ECLIPSE:不局限于JAVA IDE目标的ECLIPSE,是基于插件,使得所有工具开发人员都具有同等的发挥场所。ECLIPSE框架还可用来作为软件开发无关的其他应用程序类型的基础。基于ECLIPSE的应用程序的一个突出例子是IBM RATIONAL SOFTWARE ARCHITECT,构成了IBM JAVA开发工具系列的基础[6]。
数据库——MYSQL:是一个关系型数据库管理系统,目前隶属于ORACLE旗下公司。其最流行的关系型数据库管理系统,简称RDBMS,是WEB应用方面顶尖系统[7]。MYSQL开放源码,用关联数据库将数据分开存放,保证了速度又提高了灵活性。
2.1 JAVA SE平台
JAVA平台标准版(JAVA SE)适用于桌面系统。对于桌面、服务器以及嵌入设备和实时环境中的JAVA应用程序的开发和部署,JAVA SE为其提供了类库,用于开发JAVA WEB服务[6]。
本系统涉及的平台技术包括:SERVLETS和APPLET。
SERVLETS采用JAVA技术,是CGI功能的一种技术。各SERVLETS之间可以共享数据,存在在内存中也可以迅速地加载,并且有验证的安全机制,遵循标准API[8]。其中SERVLET在程序中的运行见图2-1。
图2-1 SERVLET的生命周期图
小应用程序一般指APPLET,由JAVA编程语言编写,可以实现图形绘制、字体和颜色控制、人机交互等功能。其中APPLET在程序中的运行见图2-2。
JAVA标准库提供了进程和线程相关的API,java.lang.Thread类表示的是线程。在虚拟机启动后,通常只有JAVA类的main方法这个普通线程运行,并且在它运行的时候也可以创建和启动新的线程。还有一类保护类,守护线程在后台运行,提供程序运行时所需的服务。当虚拟机中运行的所有线程都是守护线程时,虚拟机将终止运行。
多线程的最为典型的作用就是你在网络上放一个服务端,一个客户端访问时,就会新建一个线程处理这个客户端的事务,这样的话只要不断新建线程就可以处理多个用户的请求了[10]。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2963.html

好棒文