基于eda技术的交通灯设计内容摘要:

的编译核心支持Altera的FLEX 10K、FLEX 8K、MAX9000、MAX7000、FLASHlogic、MAX5000、Classic系列可编程逻辑器件; 2. MaxPlus II的设计输入、处理与校验功能一起提供了全集成化的一套可编程逻辑开发工具,可加快动态调试,缩短开发周期; 3. MaxPlus II支持各种HDL设计输入,包括VHDL、Verilog和Altera的AHDL; 4. MaxPlus II可与其他工业标准设计输入、综合与校验工具链接。 与CAE工具的接口符合EDIF200和20参数化模块库( LPM )、Verilog、VHDL及其它标准。 设计者可使用Altera或标准CAE设计输入工具去建立逻辑设计,使用MaxPlus II编译器对Altera器件设计进行编译,并使用Altera或其它CAE校验工具进行器件或板级仿真。 MaxPlus II支持与Synopsys、Viewlogic、Mentor Graphics、Cadence、Exemplar、Data I/O、Intergraph、Minc、OrCAD等公司提供的工具接口。 利用MaxPlus II软件平台进行设统设计。 具体的设计流程图如图12所示:设计要求系统产品设计输入设计编译设计修改设计校验器件编程在线校验图12 MaxPlus II软件的设计流程图城市中常见的大型十字路口如图21所示。 图21 十字路口示意图 一般情况下,当汽车行驶至十字交通路口时,有3种选择: 向前,向左转弯,向右转弯。 根据我国的交通规则规定,汽车是靠右行驶,向右拐弯只要走弧形的支干道即可,不需受十字交通灯的束缚。 因此,本文主要考虑前行和左转这两种情况。 十字路口交通灯负责控制各走向红绿灯的状态及转换,并且各状态之间有一定的时间过渡。 同时,东西南北每条干道上都为人行横道设置了红绿灯,提醒行人在安全时刻穿越道路以保证行人的安全。 交通灯控制系统的功能交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制。 在现代化的大城市中,十字交叉路口越来越多,在每个交叉路口都需要使用红绿灯进行交通指挥和管理,红、黄、绿灯的转换要有一个准确的时间间隔和转换顺序,这就需要有一个安全、自动的系统对红、黄、绿灯的转换进行管理,本系统就是基于此目的而开发的。 交通灯控制系统设计选择城市路口交通信号控制系统大体上分为三种类型: 定周期的信号机、多时段且具有无电缆协调功能的微电脑型信号机以及联网式自适应多相位智能型信号机。 具体采用哪种类型, 应根据其应用场合及特点加以确定。 其中, 第一种类型以其成本低,设计简单, 安装及维护方便等特点得到了广泛应用。 交通灯控制系统设计要求1.能显示十字路口东西、南北两个方向的红、黄、绿灯的指示状态,用两组红、黄、绿三色灯作为两个方向的红、黄、绿灯;2.南北向为主干道,每次通行时间为50S,东西向为支干道,每次通行时间为30S;3.能实现正常的倒计时功能,用两组数码管作为东西、南北向的倒计时显示。 其中,黄灯:5S。 4.能实现特殊状态的功能。 按下SP键后,能实现以下特殊功能:(1)显示倒计时的两组数码管闪烁;(2)计数器停止计数并保持在原来的状态;(3)东西、南北路口均显示红灯状态;(4)特殊状态解除后能继续计数;5. 能实现全清零功能。 按下reset键后,系统实现全清零,计数器由初状态计数,对应状态的指示灯亮;6. 用VHDL语言设计上述功能的交通灯控制器,并用层次化方法设计该电路;7. 仿真、验证设计的正确性。 交通灯控制系统的基本组成模块红 绿 黄主控制器显示器译码器置数器定时计数器特殊状态清零红 绿 黄图22 交通灯控制器原理框图交通灯控制器原理框图如图22所示,包括置数模块、计数模块、主控制器模块和译码器模块。 置数模块将交通灯的点亮时间预置到置数电路中,计数模块以秒为单位倒计时,当计数值减为零时,主控电路改变输出状态,电路进入下一个状态的倒计时。 其中,核心部分是主控制模块。 交通灯控制器状态根据要求,交通灯分四个状态,如下表21:表21 交通灯的四个状态 南北方向(主干道) 东西方向(次干道)状态绿红黄绿红黄1( st0 )1000102( st1 )0010103( st2 )0101004( st3 )010001有一条主干道和一条支干道的汇合点形成的十字路口,为确保车辆安全,迅速通行,在干道和支道的入口设置了红、绿、黄3色信号灯。 交通灯控制器功能描述及设计方法通过两组交通灯来模拟控制东西、南北两条通道上的车辆通行,所有功能在实验操作平台上进行模拟通过,根据原理其主要功能如图31:图31 系统结构图其中ledcontrol部分为控制器模块,ledshhow部分为译码器模块。 控制器包括指数模块、计数模块和主控制器模块。 置数模块将交通灯的点亮时间预置到置数电路中,计数模块以秒为单位倒计时,当计数值减为零时,主控电路改变输出状态,电路进入下一个状态的倒计时。 译码器模块将控制器模块的控制作用通过译码表现出来,即我们看到的交通灯。 最后上图最左边是系统输入,右边是系统输出。 交通灯控制器各模块的程序设计 下面是各功能模块的VHDL程序,文中只写出了它们的核心部分,各模块完整的程序在附录中给出。 控制部分的设计 控制模块是交通控制系统的核心部分,控制模块主要用于控制系统的时钟、计数值、循环周期判别和人工控制信号输入,并将计数值做相关的运算得到数码管的倒计时值,同时控制十字路口信号灯的亮、灭火闪烁。 如图32所示,reset是复位引脚;clk是时钟引脚,其值为分频器的输出时钟信号;urgen是紧急状态引脚;state[1..0]是状态引脚;sub,set1,set2是状态选择引脚。 statelabel:process(reset,clk)beginif reset=39。 139。 then count=0000000。 state=00。 elsif clk39。 event and clk=39。 139。 then if urgen=39。 039。 then count=count+1。 subtemp=39。 139。 else subtemp=39。 039。 end if。 if count=0 then state=00。 set1=39。 139。 set2=39。 139。 elsif count=25 then state=01。 set1=39。 139。 elsif count=30 then state=10。 set1=39。 139。 set2=39。 139。 elsif count=45 then state=11。 set2=39。 139。 elsif count=50 then count=0000000。 else set1=39。 039。 set2=39。 039。 end if。 end if。 end process statelabel。 图32 控制部分的图形 显示部分的设计 显示模块包括数码管动态扫描电路和译码显示电路,动态扫描电路用于选择需要显示的数码管,译码显示电路用于将输入的二进制信息转换为数码管显示编码。 如图33所示,clk是时钟引脚;urgen是紧急状态引脚;state[1..0]是状态引脚;sub,set1,set2是状态选择引脚,在sub为上升沿时,可以用set1和set2来选择调整交通灯的状态;r1,g1,y1,r2,g2,y2分别是主干道方向和次干道方向的红、绿、黄灯信号引脚;led1[7..0。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。