智能交通灯

上传人:工**** 文档编号:486068075 上传时间:2023-04-08 格式:DOCX 页数:31 大小:291.37KB
返回 下载 相关 举报
智能交通灯_第1页
第1页 / 共31页
智能交通灯_第2页
第2页 / 共31页
智能交通灯_第3页
第3页 / 共31页
智能交通灯_第4页
第4页 / 共31页
智能交通灯_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《智能交通灯》由会员分享,可在线阅读,更多相关《智能交通灯(31页珍藏版)》请在金锄头文库上搜索。

1、嵌入式课程设计报告题目:智能交通灯专 业:计算机班 级:学 号:姓 名:指导教师:完成日期:2目录一、前言 111 课题研究背景 112 课程研究目的和意义 1二 、需求分析 2三、开发环境及系统结构 331 开发环境 332 系统结构 3四、详细设计 441 程序框架设计 442 3 秒程序的控制 542 8 秒程序的控制 6五、结论 751 实验截图 7附件 1 10一、前言11 课题研究背景交通是城市经济活动的命脉,对城市经济发展、人民生活水平的提高起着十 分重要的作用。城市交通问题自人类进入 21 世纪以来,道路交通一直是困扰城市 发展、制约城市经济建设的重要因素。而使用合理的交通灯可

2、以合理的规划城市 交通,从而为城市的快速运输和发展提供最优化的交通解决方案。可以肯定的说,城市道路增长的有限与车辆增加的无限这一对矛盾是导致城 市交通拥挤的根本原因。对于减轻交通拥塞及其副作用特别是对于大的交通网络 而言,仍然缺乏一种真正的交通响应控制策略。计算机硬件能力与控制软件能力 很不相符,由此造成的影响是很多交通控制策略根本不能实现。在少数几个例子 中,一些新的控制策略确实能得以实现,但他们却没能对早期的控制策略进行改 进。由于缺乏能提高交通状况、特别是缺乏拥塞网络交通状况的实时控制策略, 几乎可以说真正成熟的控制策略仍然不存在.智能化和集成化是城市交通信号控 制系统的发展趋势和研究前

3、沿,而针对交通系统规模复杂性特征的控制结构和针 对城市交通瓶颈问题并代表智能决策的阻塞处理则是智能交通控制优化管理的关 键和突破口。12 课程研究目的和意义车辆的不断增多,表明车辆对道路容量的要求仍然很高,短期内还不可能改 变。自从开始使用计算机控制系统后,不管在控制硬件里取得什么样的实际进展, 交通控制领域的控制逻辑方面始终没能取得重大突破。因此,研究基于智能集成的城市交通信号控制系统具有相当的学术价值和实 用价值。把智能控制引入到城市交通控制系统中,未来的城市交通控制系统才能 适应城市交通的发展。从长远来看该研究具有巨大的现实意义。二 、需求分析城市交通信号控制系统的管理是保障城市交通高效

4、有序运行的一个重要组成 部分,如何实时有效的对交通信号进行控制,优化城市交通车流是目前国内外学 者研究的热点。对交通信号控制系统的优化,现阶段主要体现在对城市交叉路口 相位中的绿信比的调节,通过调节绿信比来形成各个车道的路阻,改变交通车流 量。随着数字智能技术与通信和控制领域的结合,交通信号控制系统的优化逐渐 的由孤立路口的控制向大规模区域网络控制、定时控制向自适应控制、集中控制 向分布式协同控制的方向发展,传统城市交通网也将被智能交通网络所取代。1、城市交通信号控制系统的优化交通信号灯的控制是城市交通网络中一个最主要的控制手段。通过优化交通 岔路口交通灯的红绿灯配时方案,设计有效的交通信号优

5、化控制策略,可提高城 市交通资源的利用率,缓解道路拥堵。目前,设计一个实时可靠并且实际可行的交通信号控制系统仍然有诸多的问 题需要解决。这些问题集中在以下几个方面:a)绿灯转换是一个离散变化过程, 其优化组合往往是一个NP困难问题;b)城市交通规模巨大,除了要处理大量交 通数据外,一定范围内相邻路口交通车流量存在相关性,故相邻路口应有一定的 协调特性才能达到整体优化;c)交通中面临着许多的不可知以及难以测量的扰动 因素(如:交通事故,非法停车,行人穿行等);d)交通状态的测量信息往往是 局部信息,并且测量的准确度受许多因素的影响。针对以上问题,国内外研究学 者提出了交通信号控制系统的解决方案,

6、按几何拓扑可分为交叉路口控制、城市 主干道控制和网络控制三类。2、智能交通系统与分布式协同优化控制智能交通系统的提出为全面解决城市交通运输问题提供了一个有效的路径。 智能交通系统涵盖了交通领域中的许多方面,包括信息服务系统、交通管理系统、 电子收费系统等,是高度综合化、智能化的交通控制系统。在交通管理方面,智 能交通系统采用先进的车辆检测技术和计算机信息处理技术,获取实时交通路况 信息,并根据收集到的信息对交通进行控制,信息的收集一方面提高了交通控制 的准确性,但同时大量的数据也增加了消息处理的复杂性。三、开发环境及系统结构31 开发环境Linux操作系统从1991年问世到现在,短短十几年的时

7、间已经发展成为功 能强大、设计完善的操作系统之一。作为最能体现互联网自由和开放精神的代表, Linux 自诞生以来就以软件源代码开放、可自主开发和高效灵活等特点迅速得到 众多软件开发者的推崇。并且,随着互联网的迅猛发展,Linux正取代Windows成 为全球增长最快的操作系统。随着Linux应用的普及,Linux下的软件开发无疑 会成为IT业发展的又一次高潮。Linux操作系统主要有以下特点:自由软件;完全兼容 POSIX1.0 标准; 支持多用户和多任务; 良好的用户界面; 支持多种文件系统; 丰富的网络功能;可靠的系统安全;良好的可移植性;正是由于以上特点,Linux在短时间内获得了飞速

8、的发展,已在各个行业得 到了广泛的应用。同时,Linux嵌入式系统具有优秀的可移植性,利用Linux系 统来进行软件开发已经成为一种趋势12。可以想象,Linux的发展前景非常可 观。32 系统结构本系统以单片机为核心,系统硬件电路由状态灯,LED显示,按键,组成。 其具体的硬件电路总图如图3.1所示。其中P0用于送显两片LED数码管,P1用于控制红绿黄发光二极管,XTAL1和XTAL2接入晶振时钟电路,REST引脚接上 复位电路,P2.6P2.7对数码管进行片选,P3.2即INT0紧急情况处理按键,P3.3 即INT1接时间调整中断按键。四、详细设计41 程序框架设计本文介绍的智能交通灯有普

9、通交通灯的功能(此处设置时间为 3 秒)和监测到震动后调整时间(本文设置为 8 秒)的功能。程序流程图如图 4.1 所示:图 1 程序流程图42 3 秒程序的控制3 秒中的程序是在车流量较少时即未检测到震动时执行的程序,其流程图如 图 4.2 所示:开始i=3Ni=0Y执行3秒代码延时点亮数码管点亮点阵图 2 3 秒程序流程图42 8 秒程序的控制8 秒中的程序是在车流量较多时即检测到震动时执行的程序,其流程图如图4.3 所示开始i=8Ni=0Y结束执行3秒代码点亮数码管点亮点阵延时图38秒程序流程图五、 结论51 实验截图(1)程序刚启动时,执行3秒中的红灯。终端上显示的结果如图5-1所示图

10、4 3秒红灯实验截图2)红灯过后执行3秒的绿灯,终端显示结果如图5-2所示:图5 3秒绿灯实验截图3)监测到震动,交通灯切换到8秒的时间,终端执行结果如图5-3所示:图6 8秒绿灯实验截图附件 1#include#include#include#include#include#include#include#include#include#include#include#include#include#includepthread.h#include #include wsnserial.h #define LED 1#define PWM 1#define SEG 1#define STEP

11、PER_START 0#define STEPPER_STOP 1#define DCMOTOR_START 0#define DCMOTOR_STOP 0int nread=0;char Recbuff1024;int sRecDataLen = 0;char save_byte4;char save_byte5; pthread_mutex_t mutex;int buffer_has_item =0;int buffer_has_send =0;int SendNum = 0;struct serial_config serialread;static int serial_fd;int

12、 speed_arr = B230400, B115200, B57600, B38400, B19200, B9600, B4800, B2400, B1200, B300,B38400, B19200, B9600, B4800, B2400, B1200, B300;int name_arr = 230400, 115200, 57600, 38400, 19200, 9600, 4800, 2400, 1200, 300,38400, 19200, 9600, 4800, 2400, 1200, 300;/ void set_speed(int fd,int speed) int i;

13、int status;struct termios Opt;/struct termios oldOpt;tcgetattr(fd, &Opt);/ printf(serialread.speed is %dn,serialread.serial_speed);for( i = 0; i sizeof(speed_arr)/sizeof(int); i+)if(speed = name_arri)tcflush(fd, TCIOFLUSH);cfsetispeed(&Opt, speed_arri);cfsetospeed(&Opt, speed_arri); status = tcsetat

14、tr(fd, TCSANOW, &Opt);if(status != 0)perror(tcsetattr fd1);return;tcflush(fd, TCIOFLUSH); int set_Parity(int fd,int databits,int stopbits,int parity) struct termios options;/struct termios oldoptions; if(tcgetattr(fd, &options) != 0)perror(SetupSerial 1);return(FALSE);/options.c_cflag |= (CLOCAL|CREAD); options.c_cflag &=CSIZE;/ printf(serialread.databits is %dn,serialread.databits); switch(databits)case 7:options.c_cflag |= CS7;break;case 8:options.c_cflag |= CS8;break;default:fp

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号