引言
EDA技术是用于电子产品设计中比较先进的技术,可以代替设计者完成电子系统设计中的大部分工作,而且可以直接从程序中修改错误及系统功能而不需要硬件电路的支持,既缩短了研发周期,又大大节约了成本,受到了电子工程师的青睐。
实现路口交通灯系统的控制方法很多,可以用标准逻辑器件、可编程序控制器PLC、单片机等方案来实现。但是这些控制方法的功能修改及调试都需要硬件电路的支持,在一定程度上增加了功能修改及系统调试的困难。因此,在设计中采用EDA技术,应用目前广泛应用的VHDL硬件电路描述语言,实现交通灯系统控制器的设计,利用MAXPLUSⅡ集成开发环境进行综合、仿真,并下载到CPLD可编程逻辑器件中,完成系统的控制作用。
交通灯系统控制器设计要求
路口交通灯控制系统与其他控制系统一样,划分为控制器和受控电路两部分。控制器使整个系统按设定的工作方式交替指挥车辆及行人的通行,并接收受控部分的反馈信号,决定其状态转换方向及输出信号,控制整个系统的工作过程。按照路口交通运行的实际情况,在本系统中,设定系统的工作情况如下。
路口交通灯控制系统的东西路有交通灯R(红)、Y(黄)、G(绿);东西人行安全通道灯:RXR(红)、RXG(绿)。南北路有交通灯:r1(红)、y1(黄)、g1(绿);南北人行安全通道灯:rxr1(红)、rxg1(绿),所有灯均为高电平点亮。设置15s的通行时间和5s转换时间的变模定时电路,由预置输入整数cnt决定是模15还是模5,输入逻辑cx是用来决定计数到4时清零还是到14时清零。Clk是外部提供的基准秒脉冲信号。x0、x1、x2、x3是由控制器输出的表示计数时间的四位二进制数。图1是该系统控制器的符号框图。
图1 系统控制器的符号框图
控制器的ASM图
根据系统设计要求,得到控制器的ASM图,如图2所示。在这里,所有输入信号均为高电平有效。该ASM图反映了交通灯系统的不同状态的转换过程及持续时间。
图2 控制器的ASM图
控制器的VHDL程序设计
根据所分析的系统的ASM图,结合系统的设计要求,用VHDL语言对各个模块进行编程,最后形成顶层文件,在MAX+PLUSⅡ环境下进行编译与仿真,检查所编程序是否运行正确。如果出现错误,需要进行修改,直到完全通过为止。需要说明的是,在进行程序编译时,要先从底层程序开始,所有底层程序都正确后,才能开始顶层程序的编译。这是因为顶层程序是对底层程序的概括,它是把底层程序各个模块连接起来,就相当于把每个模块的功能汇聚到一起,实现整个系统的控制功能,所以底层程序的正确与否,关系到顶层程序的运行结果。
在控制器的程序设计中,在定义结构体时,有两种程序设计方法均可以通过编译及仿真,但在进行时序分析时结果却不同。
(1)如果这样定义:
在进行程序调试时,均通过了编译及仿真,但在进行时序分析中,却出现了不按设定的计数顺序工作的结果:14, 13, 2,1, 0...。经过反复修改调试,对程序进行了修改,如(2)所定义的。
(2)
在这种设计方法中,多定义了一个信号变量,从而使得程序能按设定的状态14,13,12...进行转换。通过这个实例,可以看出EDA技术作为电子设计工具的功能修改及调试的方便快捷,即不需要硬件电路的支持就可以找到问题所在并进行修改,体现了它的优越性。
硬件电路实现
根据交通灯系统的控制要求,图3所示为本系统的硬件电路图。该电路包含了1个CPLD芯片,2个七段LED数码显示器,20个分别表示各个方向上的红、黄、绿灯,以及相应的限流电阻。这个电路与其他控制方法相比,所用器件可以说是比较简单经济的。经过实验,实现了预定的交通灯系统的控制功能。
图3 系统硬件电路图
结束语
本文介绍了采用EDA进行交通灯系统控制器的设计实例。通过本设计可以看到,随着EDA技术的发展,在今后的电子产品的研发中,EDA技术具有更好的开发手段和性价比,具有广泛的市场应用前景。
关键字:控制器 框图 顶层
引用地址:
基于EDA的交通灯控制系统
推荐阅读最新更新时间:2024-05-13 18:11
使用ATmega32微控制器实现LED闪烁
实现闪烁LED功能通常是快速入门电子产品的首要步骤。在本篇文章中,我们将一个LED指示灯与ATmega32微控制器进行连接,该控制器属于AVR系列。我们将以0.5秒的速率闪烁LED。 需要的硬件和软件 ● ATmega32A微控制器 ● 电源(5v) ● AVR-ISP Programmer ● 100uF电容 ● LED指示灯 ● 220Ω电阻 ● Atmel Studio 6.1 ● Progisp或flash magic 电路和工作说明 上图展示了LED指示灯与AVR微控制器进行连接的电路图,这里不需要连接外部晶振。因为ATMEGA默认使用内部的1MHz振荡器。只有在需要时钟精度的
[单片机]
基于GAL器件的步进电机控制器的研究与设计
摘要:介绍了利用阵列逻辑器件GAL16V8对三相六拍步进电机实现控制的方法及其电路设计。通过计算机编程器对GAL进行编程,可以满足各种控制要求。该电路简单,工作稳定可靠,编程灵活方便。
关键词:通用阵列逻辑器件 步进电机 GAL16V8 三相六拍
步进电机广泛应用于对精度要求比较高的运动控制系统中,如机器人、打印机、软盘驱动器、绘图仪、机械阀门控制器等。目前,对步进电机的控制主要有由分散器件组成的环形脉冲分配器、软件环形脉冲分配器、专用集成芯片环形脉冲分配器等。分散器件组成的环形脉冲分配器体积比较大,同时由于分散器件的延时,其可靠性大大降低;软件环形分配器要占用主机的运行时间,降低了速度;专用集成芯片环形脉冲分配器集成度高、可
[工业控制]
LTC3725-反激式、正激式和隔离式控制器
LTC3725系统推出的一款单晶正激控制器,其技术特色在于不需独立的VCC供电源,快速栅驱动及附加对二次侧控制所需的时间信号(例如二次测的同步整流等),从而使二次侧大幅度减少分立元器件用量,简化电源的设计制作。
此外LTC3725还可以用于标准线独立的电压型控制器,以便在一次侧实现光耦反馈,其电压前馈技术提拱了很好的线路调整率及瞬态响应的能力。内部等效方框电路图下所示。
其封装如下所示:
[电源管理]
单片机自动报时控制器
电脑时钟可模拟电子钟显示时、分、秒,此外还可根据学校的作息时间按时打铃,播放音乐和广播操节目。本系统设制了二个按钮,分别用来调时调分,以保证时钟与标准时间相吻合,打开电源开关即可运行。 本系统是通过MCS-51内部定时器T0产生中断来实现计时的。T0工作在定时器工作方式1,每100 ms产生一次中断,利用软件将基准100 ms(1/10 s)单元进行累加计数。当定时器产生10次中断后就产生了1秒信号,这时秒单元加1,同理,可对分单元和时单元计数,从而产生秒、分、时的时间值,并通过连接在8155A口、B口上的六位七段显示器进行显示。系统硬件框图如图1所示。 把学校的作息时间预先制成表格存入EPROM数据区中,利用软件每过1
[单片机]
基于DSP的电动轮自卸车控制器的设计
1. 前言 重型 电动轮 自卸车 是大型露天矿和水利工程的高效运输设备。目前,分布在我国冶金、煤炭行业与大型水利建设工程的正在运行的重型电动轮自卸车约有600台之多,其电传动控制系统国内使用企业一直依赖进口美国通用电气公司(GE)的Statex系列单片机控制系统。由于该系统插件板多,致使线路复杂,调试困难,加之电动轮的工作环境恶劣,使得该类型的车存在故障率高、检修麻烦、备件昂贵等缺点,严重影响了自卸车的作业率。以往,有一些厂矿和研究所的技术研究员对该类产品进行分析与改造 ,但未从根本上解决问题。为此,湖南大学和湘潭电机股份有限公司联合研制了154T电动轮自卸车微机控制与故障诊断系统。该系统的车载电控子系统以 DSP 为核
[嵌入式]
贸泽电子开售适用于智能电机控制和机器学习应用的 NXP Semiconductors MCX微控制器
贸泽电子开售适用于智能电机控制和机器学习应用的 NXP Semiconductors MCX微控制器 2024年4月10日 –提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 即日起开售NXP Semiconductors的MCX工业和物联网微控制器 (MCU)。这些新款MCU属于高性能、低功耗微控制器,配备智能外设和加速器,适用于安全、智能的电机控制和机器学习应用。 贸泽供应的NXP全新MCX N系列微控制器搭载Arm® Cortex®-M33 CPU,配备智能外设和加速器、通信和信号处理功能,可扩展性强,易于开发。 MCX N的低功耗高速缓存
[工业控制]
可编程顺序控制器CIPH9804及其应用
摘要: CIPH9804是一种可编程顺序控制芯片,它具有八路时序信号输出端,每路时序信号均可由键盘设备为0~65535秒的有效输出。文中介绍了它的功能和使用方法,给出了它的实际应用电路以及CIPH9804在交通指挥灯顺序控制系统中的实际应用电路。
关键词: CIPH9804 可编程 顺序控制
顺序控制是指能使生产机械或生产过程按规定的时序而顺序动作,或在现场输入信号作用下按预定规律而顺序动作的自动控制装置。简言之,按时序或事序的自动控制称为顺序控制。在现场化的工厂里,如运输、加工、检验、包装等许多工序都要求顺序控制。即使在一个复杂的大型计算机控制系统中,通常也需要在某些环节采用顺序控制,如某些
[传感技术]
S3C2440的NAND Flash控制器
首先还是启动方式NAND Flash的过程,因为NAND Flash是不支持程序在NAND内部运行的所以要把NAND搬到内存中运行,由于S3C2440内部的SRAM只有4K,当程序远大于4K时,这种方法是行不通的,于是我们可以让NAND中4K之后的程序搬到SDRAM中来运行 正如数据手册上所说,NOR的价格较NAND来说比较昂贵,再加上NOR的容量远比NAND小的多,再比如NOR一页的字节数也比NAND大的很多,而要在某个地址写入数据,必须先把地址所在的页擦除,所以更多的时候NAND用来存储数据,NOR用来存储程序。 如上图模型,当程序的容量大于4K的时候,NAND的前4K的程序将会被硬件自动引导到2440的S
[单片机]