交通灯信号控制器的设计实验报告
交通信号灯的plc控制实验报告
交通信号灯的PLC控制实验报告1. 引言交通信号灯是城市交通管理中不可或缺的一部分。
在过去的几十年里,随着科技的发展,人们开始使用PLC(可编程逻辑控制器)来控制交通信号灯,以提高交通流量的效率和安全性。
本实验旨在通过PLC控制交通信号灯的过程,介绍PLC的基础知识和应用。
2. 实验目的本实验的主要目的是通过搭建一个基于PLC的交通信号灯控制系统,实现信号灯的自动切换和交通流量的控制。
具体目标如下:•了解PLC的基本工作原理和编程方法•掌握交通信号灯的控制逻辑和时序•使用PLC软件进行信号灯控制程序的编写和调试3. 实验设备和材料本实验所需的设备和材料如下:•PLC控制器•交通信号灯模型•电源线•编程软件4. 实验步骤步骤1:PLC控制器的连接首先,将PLC控制器与电源线连接,并确保电源正常供电。
接下来,将交通信号灯模型与PLC控制器连接,确保信号灯能够通过PLC控制器进行控制。
步骤2:PLC编程软件的安装与设置在计算机上安装PLC编程软件,并根据软件的操作指南进行设置。
确保软件与PLC控制器成功连接,以便进行后续的编程和调试操作。
步骤3:PLC程序的编写根据交通信号灯的控制逻辑和时序,使用PLC编程软件编写相应的PLC程序。
程序的编写主要包括以下几个方面:•定义输入信号:根据实际情况,定义输入信号,如检测车辆和行人的传感器信号。
•定义输出信号:根据实际情况,定义输出信号,如交通信号灯的红、黄、绿灯控制信号。
•编写控制逻辑:根据交通信号灯的控制规则和时序要求,编写PLC 程序的控制逻辑。
例如,当检测到车辆或行人通过传感器时,相应的信号灯应亮起。
步骤4:PLC程序的调试与测试在编写完PLC程序后,进行程序的调试和测试。
通过PLC编程软件提供的仿真功能,模拟输入信号的变化,观察输出信号和交通信号灯的状态变化是否符合设计要求。
如有问题,及时修改程序并重新调试。
步骤5:实验结果分析根据实际测试结果,对实验结果进行分析和总结。
交通信号灯控制系统设计实验报告
交通信号灯控制系统设计实验报告设计目的:本设计旨在创建一个交通信号灯控制系统,该系统可以掌控红、绿、黄三种交通信号灯的工作,使其形成一种规律的交替、循环、节奏,使车辆和行人得以安全通行。
设计原理:在实际的交通灯系统中,通过交通灯控制器控制交通灯的工作。
一般采用计时器或微电脑控制器来完成,其中微电脑控制器可以方便地集成多种控制模式,并且灵活易于升级。
在本设计中,我们采用了基于Atmega16微控制器的交通信号灯控制系统。
该系统通过定时器中断、串口通信等技术来实现。
由于控制的是三个信号灯的交替,流程如下:绿灯亮:红灯和黄灯熄灭绿灯由亮到灭的时间为10秒黄灯亮:红灯和绿灯熄灭黄灯由亮到灭的时间为3秒红灯亮:绿灯和黄灯熄灭红灯由亮到灭的时间为7秒重复以上过程硬件设计:整个系统硬件设计包含ATmega16控制器、射频芯片、电源模块和4个灯组件。
ATmega16控制器采用DIP封装,作为主要的控制模块。
由于需要串口通信和遥控器控制,因此添加了RF24L01射频芯片。
该射频芯片可以很方便地实现无线通信和小型无线网络。
4个灯组件采用红、绿、黄三色LED灯与对应300Ω电阻并连。
电源模块采用5V稳压电源芯片和电容滤波,确保整个系统稳定可靠。
软件设计:通过ATmega16控制器来实现交通信号灯控制系统的功能。
控制器开始执行时进行初始化,然后进入主循环。
在主循环中,首先进行红灯亮的操作,接着在计时时间到达后执行黄灯亮的过程,然后执行绿灯亮的过程,再到计时时间到的时候执行红灯亮的过程。
每个灯持续时间的计时采用了定时器的方式实现,在亮灯过程中,每秒钟进行一次计数,到达相应的计数值后,切换到下一步灯的操作。
在RF24L01射频芯片的支持下,可以使用无线遥控器来对交通信号灯的控制进行远程控制。
在系统初始化完成后,通过串口通信对RF24L01进行初始化,然后进入控制循环。
在这个控制循环中,接收到遥控器的指令后,进行相应的控制操作,如开、关灯等。
交通信号灯控制器实验报告
交通信号灯控制器实验报告交通信号灯控制器⼀、设计任务及要求 (2)⼆、总体⽅案设计以及系统原理框图 (2)2.1、设计思路 (2)2.2、各模块相应的功能 (2)2.3、系统原理图 (3)三、单元电路设计 (3)3.1、车辆检测电路 (3)3.2、主控电路 (4)3.3、灯控电路 (5)3.4、计时控制电路 (6)3.5、计时显⽰电路 (6)3.6、反馈控制电路 (7)3.7、置数电路 (7)3.8、时基电路 (7)四、⼯作原理 (8)五、电路的软件仿真及结果分析 (8)5.1、时基电路(555接成的多谐振荡器)的电路图以及波形的显⽰ (8)5.2、结果分析 (10)六、电路的组装调试 (10)6.1、使⽤的主要仪器和仪表 (10)6.2、调试电路的⽅法和技巧 (10)6.3、调试中出现的问题、原因和排除⽅法 (11)七、收获、存在的问题和进⼀步的改进意见 (11)7.1、存在的问题和进⼀步的改进意见 (11)7.2、收获以及⼼得体会 (12)附录⼀:电路所⽤元器件 (14)附录⼆:电路全图 (15)附录三:实际电路图 (16)⼀、设计任务及要求在⼀个主⼲道和⽀⼲道汇交叉的⼗字路⼝,为了确保车辆⾏车安全,迅速通⾏,设计⼀个交通信号灯控制电路,要求如下:1、⽤两组红、绿、黄发光⼆极管作信号灯,分别指⽰主道和⽀道的通⾏状态。
2、通⾏状态⾃动交替转换,主道每次通⾏30秒,⽀道每次通⾏20秒,通⾏交替间隔时为5秒。
3、通⾏状态转换依照“主道优先”的原则,即:当主道通⾏30秒后,若⽀道⽆车则继续通⾏;当⽀道通⾏20秒后,只有当⽀道有车且主道⽆车时才允许继续通⾏。
(⽤按键模拟路⼝是否有车)4、设计计时显⽰电路,计时⽅式尽量采⽤倒计时。
⼆、总体⽅案设计以及系统原理框图2.1、设计思路本次设计采⽤模块划分的⽅法,每个模块完成⼀项功能,最后将各个模块连接起来,设计完成后,⽤Multisim进⾏仿真,仿真成功后,再去实验室焊接调试。
交通信号灯的实验报告
中南林业科技大学涉外学院实习报告名称:交通灯控制器姓名:***学号:********专业班级:电子信息工程一班时间:2011-10-5地点:林科大涉外学院目录任务和性能指标 (2)实现(设计)方案 (3)系统设计 (4)调试及性能分析 (6)性能分析: (7)相关知识概述 (7)心得体会 (7)参考文献 (8)任务和性能指标本电路设计一个交通灯控制器,需要达到的目的如下:一个周期64秒,平均分配,前32秒红灯1与绿灯2亮,后32秒绿灯1与红灯2亮。
在红灯1与绿灯2亮的期间的后8秒黄灯1、2闪烁,且在这期间红灯1与绿灯2同时亮。
闪烁频率为2。
在绿灯1与红灯2亮的期间的后8秒黄灯1、2闪烁,且在这期间绿灯1与红灯2同时亮。
闪烁频率为2。
实现(设计)方案为了达到目的,需要设计一个控制电路,这就需要一个脉冲信号发生器,一个二进制加法计数器,一个十进制减法计数器,红灯与绿灯以及黄灯是否亮由二进制加法计数器的输出状态来决定。
因此,设计一个组合逻辑电路,它的输入信号就是二进制加法计数器的输出信号,它的输出就是发光二级管的控制信号。
因此,需要一个组合逻辑电路,六个发光二级管(两个红色发光二极管、两个绿色发光二极管、两个黄色发光二极管)电路,555脉冲振荡器,4024计数器,74LS193计数器,数码管显示电路。
其结构图如下:本电路中的组合逻辑电路的输入信号为二进制计数器的输出信号,输出要控制六个发光二级管不同时刻的状态。
红灯1与绿灯2的状态相同,红灯2与绿灯1的状态相同,两个黄灯状态相同。
所以只要输出三个信号即可,分别为L1、L2、L3。
组合逻辑电路的输出信号L1、L2、L3与电路的输入信号Q7、Q6、Q5、Q4、Q3、Q2、Q1的关系用如下真值表表示:从以上可知:L1=Q7’,需要低电平有效时,L1’=Q7’’L2=Q7,需要低电平有效时,L2’=Q7’L3=Q6Q5=(Q6Q5)’’考虑到黄灯需要闪烁,可以让L3信号和Q1信号(频率为2HZ的脉冲)加到一个二输入的与非门的两个输入端,输出信号为L4,L4=(L3*Q1)’当L3为0时,L4=1当L3为1时,L4=Q1’可见,需要L4低电平有效,这样,L3为0时,黄灯不亮;L3为1时,黄灯闪烁。
交通灯设计实验报告
一、实验目的1. 理解交通灯控制系统的基本原理和设计方法。
2. 掌握使用单片机进行交通灯控制系统的设计与实现。
3. 培养动手实践能力和团队协作精神。
二、实验原理交通灯控制系统是城市交通管理的重要组成部分,其主要目的是通过红、黄、绿三种信号灯的变换,实现对车辆和行人的有序通行。
本实验采用单片机作为控制核心,通过编写程序实现对交通灯的控制。
三、实验设备1. 单片机开发板(如51单片机开发板)2. 交通灯模块(红、黄、绿三色LED灯)3. 按键模块4. 数码管模块5. 电阻、电容等电子元器件6. 调试工具(如万用表、示波器等)四、实验步骤1. 系统设计(1)确定交通灯控制系统的功能需求:实现红、黄、绿三色LED灯的交替闪烁,满足交通信号灯的基本要求。
(2)设计系统框图:单片机作为核心控制单元,通过编写程序实现对交通灯的控制。
系统框图如下:```+------------------+ +------------------+ +------------------+| | | | | || 单片机 |-------| 交通灯模块 |-------| 按键模块|| | | | | |+------------------+ +------------------+ +------------------+```(3)编写程序:根据系统需求,编写单片机控制程序,实现红、黄、绿三色LED灯的交替闪烁。
2. 硬件搭建(1)将单片机开发板与交通灯模块、按键模块、数码管模块等连接。
(2)根据电路原理图,连接电阻、电容等电子元器件。
(3)使用万用表测试电路连接是否正确。
3. 软件编程(1)使用C语言编写单片机控制程序。
(2)编译程序,生成可执行文件。
(3)将可执行文件烧录到单片机中。
4. 系统调试(1)使用示波器观察单片机引脚输出波形。
(2)检查交通灯模块是否正常工作。
(3)使用万用表测试按键模块是否正常工作。
(4)根据实际情况调整程序参数,确保系统稳定运行。
交通信号灯控制器实验报告Word版
交通信号灯控制器一、设计任务及要求 (2)二、总体方案设计以及系统原理框图 (2)2.1、设计思路 (2)2.2、各模块相应的功能 (2)2.3、系统原理图 (3)三、单元电路设计 (3)3.1、车辆检测电路 (3)3.2、主控电路 (4)3.3、灯控电路 (5)3.4、计时控制电路 (6)3.5、计时显示电路 (6)3.6、反馈控制电路 (7)3.7、置数电路 (7)3.8、时基电路 (7)四、工作原理 (8)五、电路的软件仿真及结果分析 (8)5.1、时基电路(555接成的多谐振荡器)的电路图以及波形的显示 (8)5.2、结果分析 (10)六、电路的组装调试 (10)6.1、使用的主要仪器和仪表 (10)6.2、调试电路的方法和技巧 (10)6.3、调试中出现的问题、原因和排除方法 (11)七、收获、存在的问题和进一步的改进意见 (11)7.1、存在的问题和进一步的改进意见 (11)7.2、收获以及心得体会 (12)附录一:电路所用元器件 (14)附录二:电路全图 (15)附录三:实际电路图 (16)一、设计任务及要求在一个主干道和支干道汇交叉的十字路口,为了确保车辆行车安全,迅速通行,设计一个交通信号灯控制电路,要求如下:1、用两组红、绿、黄发光二极管作信号灯,分别指示主道和支道的通行状态。
2、通行状态自动交替转换,主道每次通行30秒,支道每次通行20秒,通行交替间隔时为5秒。
3、通行状态转换依照“主道优先”的原则,即:当主道通行30秒后,若支道无车则继续通行;当支道通行20秒后,只有当支道有车且主道无车时才允许继续通行。
(用按键模拟路口是否有车)4、设计计时显示电路,计时方式尽量采用倒计时。
二、总体方案设计以及系统原理框图2.1、设计思路本次设计采用模块划分的方法,每个模块完成一项功能,最后将各个模块连接起来,设计完成后,用Multisim进行仿真,仿真成功后,再去实验室焊接调试。
2.2、各模块相应的功能(1)车辆检测电路:用来显示主路支路车辆的四种情况。
交通灯控制器报告(北理)
交通灯控制器报告(北理)本科实验报告实验名称:交通灯控制器设计目录一、设计指标 (1)二、设计框图 (1)三、设计过程 (2)3.1系统状态转换图 (2)3.2时钟基准发生电路的设计 (3)3.3传感器电路 (4)3.4预置法时序发生电路设计 (5)3.5预置数电路设计 (5)3.6控制电路设计 (6)3.7交通灯译码电路设计 (7)3.8求反电路和4位二进制码转BCD码电路 (7)3.9显示电路设计 (8)3.10 Vs有效时暂停电路设计(改进部分) (8)四、设计结果 (9)五、实验结果 (10)六、实验中遇到的问题及解决办法 (11)七、实验所需元器件 (11)八、实验心得体会 (12)一、设计指标1)设计一个十字路口交通灯,十字路口有主路和支路,共两组红绿灯;2)主路亮灯顺序为绿灯(16s)→黄灯(4s)→红灯(13s)→黄灯(4s);支路亮灯顺序为绿灯(13s)→黄灯(4s)→红灯(16s)→黄灯(4s);3)主路有一个传感器,当支路无车时,主路亮绿灯;4) 用数码管倒序显示主路的红绿灯显示时间。
二、设计框图绘制设计框图如下,三、设计过程3.1系统状态转换图符号说明:S0:一种状态,表示主路亮绿灯,支路亮红灯;S1:一种状态,表示主路亮黄灯,支路亮黄灯;S2:一种状态,表示主路亮红灯,支路亮绿灯;S3:一种状态,表示主路亮黄灯,支路亮黄灯;:表示主路亮绿灯(支路亮红灯)时间,时间到为1,不到为0;:表示主路(支路)亮黄灯时间,时间到为1,不到为0;:表示支路亮绿灯(主路亮红灯)时间,时间到为1,不到为0;:表示传感器信号,支路有人时为1,没人时为0。
=16s,=4s,=13s得到状态方程如下:可以统一为一个变量于是状态方程变成:由于采用预置法设计电路,所以T,T,T T,l y s3.2时钟基准发生电路的设计经过理论计算,确定R1=19K ,R2=62 K ,C=10F μ。
此T=0.7(R1+2R2)C=1001/1000s,对应频率为f=1000/1001Hz ≈ 1Hz仿真波形如下图所示3.3传感器电路传感器电路由开关代替,开关接R 时正常工作,开关接S 时是表示支路有车,主路一直维持绿灯。
交通灯控制器设计报告
(封面)XXXXXXX学院交通灯控制器设计报告题目:院(系):专业班级:学生姓名:指导老师:时间:年月日设计内容及要求(题目)任务1:交通灯控制器的设计设计内容与要求①设计一个十字路口交通信号灯的控制电路。
要求红、绿灯按一定的规律亮和灭,并在亮灯期间进行倒计时,且将运行时间用数码管显示出来。
②绿灯亮时,为该车道允许通行信号,红灯亮时,为该车道禁止通行信号。
要求主干道每次通行时间为Tx秒,支干道每次通行时间为Ty秒。
每次变换运行车道前绿灯闪烁,持续时间为5秒。
即车道要由X转换为Y时,X在通行时间只剩下5秒钟时,绿灯闪烁显示,Y仍为红灯。
③可以对X,Y车道上交通灯运行的时间进行重新设置,20≦Tx≦99 ,10≦Ty≦39④对器件进行在系统编程和实验验证。
⑤写出设计性实验报告,并打印各层次的源文件和仿真波形,然后作简要说明。
可以看得出其实四个状态可以简化,在后期实施的时候为了简化故将四个状态转换成了两个状态,即为干路和支路的两个不同的状态修改后的状态结构框图如下(未加附加功能):State1:干路绿灯开始常亮,支路红灯开始常亮,等到了干路计时还剩下五秒的时候,干路绿灯交替闪亮,支路红灯不变。
State2: 2.干路转换为红灯常亮,支路变为为绿灯常亮,等到了支路计时还剩下五秒的时候,支路绿灯交替闪亮,干路红灯不变。
在分析系统的组成结构,可以知道系统大概有三个部分组成,其中不难得出,包括:1.显示部分:分为指示灯显示和数码管显示(其中这两者应该是同步的,同一控制器,秒脉冲控制)。
2.计数部分:计数器递减计数要求是以秒脉冲计数,当达到指定时间要有重置部分将时间重置,重新计数。
3.控制部分:提供秒脉冲时钟信号,控制数码管和指示灯的变化以及设置时间等功能。
三部分之间的关系可以表达为:重置计数器重新开始计数控制时间达到预定值经上面分析,大致可以得到整个交通灯的结构框图:系统框图经过分析可知,该设计需要时钟信号,所以需要秒脉冲信号 1.信号发生器要显示亮灯时间需要 2.计数器3.数码显示器对于主路和支路需要显示红绿灯,故需要4.信号显示灯5.状态译码器其中各部分功能如下:交通指示灯:显示主支路通行情况;数码管显示:显示通行剩余时间,从绿灯亮起开始计算,转换灯的颜色后重新计数;状态译码器:经控制器控制,输出交通指示灯和数码管显示当前状态;控制器:控制状态译码器的输出状态和控制递减计数器的计数和重置;重置装置:接收控制器的命令,在相应的时段使递减计数器重置,重新从预设值递减;减法计数器:控制数码显示管的数值计时显示;分频器:将脉冲信号提供的源信号进行分频,得到秒脉冲信号;脉冲源信号:为整个电路提供初始脉冲源信号;设置时间: 由控制器输入设置,改变主支路上的绿灯的时间。
交通灯控制器实验报告
........学院《单片机原理及应用》课程设计报告题目:交通灯控制器班级:学生姓名:学号:指导老师:日期:年月日摘要当前,大量的信号灯电路正向着数字化、小功率、多样化、方便人、车、路三者关系的协调,多值化方向发展随着社会经济的发展,城市交通问题越来越引起人们的关注。
设计交通灯来完成这个需求就显的越加迫切了.为了确保十字路口的行人和车辆顺利、畅通地通过,往往采用电子控制的交通信号来进行指挥。
以下就是运用数字电子设计出的交通灯:本设计是十字路口交通灯控制,所以依据实际交通灯的变化情况和规律,给出如下需求:一个十字路口为东西南北走向。
初始状态25s为南北红灯,初始状态20s东西绿灯。
然后转状态1,南北红灯,东西绿灯闪烁3s,黄灯2s。
再转状态2,南北红灯灭,绿灯亮,东西绿灯灭,红灯亮。
再转状态3,东西红灯,南北绿灯闪烁3s,黄灯2s。
再转初始状态。
关键词:信号灯电路交通控制系统EDA技术目录一. 绪论 (4)引言1.1 设计任务 (4)1.1.1设计题目1.1.2设计内容1.2 系统需求 (4)1.2.1基本要求1.2.2发挥部分1.3小组成员及个人完成情况 (4)1.3.1小组成员1.3.2个人完成情况二.方案比较、方案设计与方案论证 (5)2.1电源提供方案2.2显示界面方案三.单元模块设计 (6)3.1单片机及其外接电路3.2 交通灯时间显示模块3.3按键控制模块3.4声音报警系统四.系统调制与分析 (10)五.总结与心得 (14)参考文献 (14)附录一系统原理图 (15)附录二元件清单 (16)附录三系统源程序 (17)一.绪论引言城市修建城市高速道路,在高速道路建设完成的初期,它们也曾有效地改善了交通状况。
然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,高速道路没有充分发挥出预期的作用。
而城市高速道路在构造上的特点,也决定了城市高速道路的交通状况必然受高速道路与普通道路耦合处交通状况的制约。
交通信号灯实训报告书
一、实验目的1. 了解交通信号灯的基本组成和工作原理。
2. 掌握交通信号灯控制系统的设计方法。
3. 熟悉交通信号灯控制系统的调试和测试过程。
4. 提高动手能力和实际应用能力。
二、实验器材1. 交通信号灯控制器2. 交通信号灯(红、黄、绿)3. 电源4. 导线5. 单片机开发板6. 相关软件(如Keil、Proteus等)三、实验原理交通信号灯控制系统是利用单片机等电子设备实现对交通信号灯的自动控制。
其基本原理如下:1. 传感器检测车辆和行人的数量,将信号传输给单片机。
2. 单片机根据预设的程序和传感器信号,控制交通信号灯的亮灭。
3. 交通信号灯按照预设的时间顺序依次变换,实现交通指挥。
四、实验步骤1. 电路连接:按照实验电路图连接交通信号灯控制器、交通信号灯、电源、导线等器材。
2. 程序编写:使用单片机编程软件(如Keil)编写交通信号灯控制程序。
程序主要包括以下几个部分:- 初始化:设置单片机的端口、定时器等。
- 主循环:检测传感器信号,控制交通信号灯的亮灭。
- 中断服务程序:处理紧急情况,如行人闯红灯等。
3. 仿真调试:使用仿真软件(如Proteus)对程序进行仿真调试,观察交通信号灯的控制效果。
4. 实际测试:将单片机开发板与实际交通信号灯连接,进行实际测试,观察交通信号灯的控制效果。
五、实验结果与分析1. 实验结果:通过实验,成功实现了交通信号灯的自动控制,交通信号灯按照预设的时间顺序依次变换,实现了交通指挥。
2. 分析:- 程序编写过程中,需要根据实际情况调整程序参数,如传感器阈值、信号灯变换时间等。
- 实际测试过程中,需要考虑多种因素,如天气、车流量、行人流量等,以保证交通信号灯的控制效果。
六、实验总结1. 通过本次实验,掌握了交通信号灯控制系统的设计方法,提高了动手能力和实际应用能力。
2. 熟悉了单片机编程和仿真调试方法,为以后的学习和工作打下了基础。
3. 认识到交通信号灯控制系统在实际应用中的重要性,为以后从事相关领域的工作积累了经验。
PLC控制交通信号灯实验报告
PLC控制交通信号灯实验报告实验报告:PLC控制交通信号灯一、实验目的本实验旨在通过PLC控制,实现对交通信号灯的控制和调度。
通过编程和调试,使交通信号灯能够按照规定的时间间隔进行红绿灯的切换,以实现交通的有序通行。
二、实验器材1.S7-1200PLC控制器2.数字输入模块3.数字输出模块4.交通信号灯模型三、实验原理交通信号灯控制系统是通过PLC控制,通过红、绿、黄三种灯光的切换来控制车辆和行人的通行。
系统中使用三个输出模块控制三种灯光的亮灭,一个输入模块用于接收行人请求的信号。
根据一定的时序控制,通过PLC编程,实现灯光的切换和调度。
四、实验步骤1.搭建PLC控制器和信号灯的硬件连接。
2.将信号灯的红灯接到Q0.0(输出模块的输出口0);将信号灯的绿灯接到Q0.1;将信号灯的黄灯接到Q0.2;将行人请求按钮接到I0.0(输入模块的输入口0)。
3.打开PLC编程软件,进行逻辑图的编程。
4.编写程序,设置红灯亮10秒、黄灯亮3秒、绿灯亮10秒、再次黄灯亮3秒,循环往复。
6.观察交通信号灯的切换情况,检查是否按照预期的时间间隔进行灯光切换。
五、实验结果经过编程和调试,实验中的交通信号灯实现了按照预定的时序进行红绿灯的切换。
每个灯的亮灭时间符合要求,红灯亮10秒,黄灯亮3秒,绿灯亮10秒,再次黄灯亮3秒,循环往复。
六、实验总结通过这个实验,我们深入理解了PLC控制器的原理和编程的方法。
实验实现了交通信号灯的控制与调度,使交通能够有序通行。
实验中,我们主要学会了PLC控制的编程方法,使用输入输出模块连接外部设备,以及对程序进行调试的技巧。
在实验过程中,我们也遇到了一些问题和困难。
比如,编程逻辑的构思和写出正确的程序。
需要进行多次调试,才能保证灯的切换和亮灭时间的准确性。
此外,我们还意识到交通信号灯的控制非常重要,对于道路交通的安全性和畅通性起到了关键作用。
通过PLC控制交通信号灯,可以实现更准确,更可靠的灯光切换,提高了交通系统的效率和安全性。
交通信号控制实验报告
交通信号控制实验报告交通信号控制实验报告一、引言交通信号控制是现代城市交通管理的重要手段之一,通过合理的信号灯设置和控制,可以有效地提高道路交通的效率和安全性。
为了进一步了解交通信号控制的原理和应用,我们进行了一次交通信号控制的实验。
二、实验目的本次实验的目的是通过模拟交通信号控制的过程,探究不同信号灯设置对交通流量和交通延误的影响,并分析其优缺点,为实际交通信号的设置提供参考。
三、实验方法1. 实验设备我们使用了一个交通信号控制模拟器,该模拟器可以模拟不同路口的交通流量和信号灯控制。
2. 实验步骤(1)选择不同的交通流量情况,包括高峰时段和低峰时段。
(2)设置不同的信号灯控制方案,包括定时控制和感应控制。
(3)观察和记录交通流量、延误时间等数据。
(4)分析实验结果,总结不同信号灯控制方案的优缺点。
四、实验结果我们进行了多组实验,得到了以下结果:1. 高峰时段在高峰时段,交通流量较大,需要采取较为严格的信号灯控制措施。
我们设置了定时控制和感应控制两种方案进行对比。
(1)定时控制在定时控制方案中,信号灯按照固定的时间间隔进行切换。
我们发现,在高峰时段,定时控制的交通流量较大,容易出现拥堵现象,导致交通延误时间增加。
(2)感应控制在感应控制方案中,交通信号根据交通流量的实时变化进行调整。
我们发现,感应控制能够根据交通流量的变化灵活调整信号灯的切换时间,有效地缓解交通拥堵,减少交通延误时间。
2. 低峰时段在低峰时段,交通流量相对较小,我们设置了两种不同的信号灯控制方案进行对比。
(1)定时控制在低峰时段,定时控制方案能够满足交通需求,交通流畅,但会造成一定的能源浪费。
(2)感应控制在低峰时段,感应控制方案能够根据实时交通流量的变化进行调整,减少能源浪费,提高交通效率。
五、实验分析通过实验结果的分析,我们可以得出以下结论:1. 定时控制和感应控制的优缺点定时控制方案简单易行,但无法根据实时交通流量进行调整,容易导致交通拥堵和延误。
交通灯控制实验报告
一、实验目的1. 理解交通灯控制系统的工作原理和基本组成。
2. 掌握PLC(可编程逻辑控制器)编程和调试方法。
3. 学习交通灯控制系统的硬件连接和电路设计。
4. 提高实际应用中解决复杂问题的能力。
二、实验原理交通灯控制系统是城市交通管理的重要组成部分,其基本原理是通过对交通信号灯进行控制,实现交通流量的有序疏导。
本实验采用PLC作为控制核心,通过编写程序实现对交通灯的定时控制。
三、实验器材1. PLC主机2. 交通灯控制模块3. 电源模块4. 交通灯模型5. 连接线四、实验步骤1. 硬件连接:- 将PLC主机与交通灯控制模块、电源模块和交通灯模型连接。
- 将PLC主机与计算机连接,以便进行程序编写和调试。
2. 程序编写:- 根据交通灯控制要求,编写PLC程序。
- 程序主要包括以下部分:- 启动信号处理:检测启动开关状态,控制交通灯开始工作。
- 定时控制:根据设定的时间,控制交通灯的红、黄、绿灯亮灭。
- 紧急处理:检测紧急处理开关状态,实现交通灯的紧急控制。
3. 程序调试:- 在计算机上运行PLC程序,观察程序运行效果。
- 根据实际情况,对程序进行调试和优化。
4. 实验验证:- 在实际硬件环境中运行程序,观察交通灯控制效果。
- 验证程序是否满足实验要求。
五、实验结果与分析1. 实验结果:- 在实验过程中,成功实现了交通灯的控制,实现了红、黄、绿灯的定时切换。
- 在紧急情况下,能够实现交通灯的紧急控制。
2. 结果分析:- 通过实验,掌握了PLC编程和调试方法,提高了实际应用中解决复杂问题的能力。
- 实验结果表明,所设计的交通灯控制系统具有良好的稳定性和可靠性。
六、实验总结本次实验成功实现了交通灯控制系统的设计与实现,达到了预期目标。
通过实验,我们掌握了以下知识点:1. 交通灯控制系统的工作原理和基本组成。
2. PLC编程和调试方法。
3. 交通灯控制系统的硬件连接和电路设计。
本次实验提高了我们的实际应用能力,为以后从事相关领域工作奠定了基础。
交通灯控制器设计实验报告
一、实习目的:1. 通过实习让学生掌握开关电源整机电路;2. 能够根据印制电路板画出整机电路图;3. 能够识别检测开关电源的元器件;4. 能够正确拆卸和焊接元器件;5. 会测试主要工作点的阻值、电压和波形;6. 能够根据故障现象判断故障部位;7. 能够进行实际故障维修。
二、实训器材:万用表、开关电源套件、电烙铁、焊锡、吸锡器。
三、实习原理与步骤:1.认识拆卸、检测元器件。
电阻:5.6Ω,270k,5.1k,270Ω,2.7k,10k,15k。
四个色环电阻的识别:第一、二环分别代表两位有效数的阻值;第三环代表倍率;第四环代表误差。
五个色环电阻的识别:第一、二、三环分别代表三位有效数的阻值;第四环代表倍率;第五环代表误差。
然后用万用表将两表笔(不分正负)分别与电阻的两端引脚相接测出实际电阻值进行比对。
为了提高测量精度,应根据被测电阻标称值的大小来选择量程。
电容:100uF/400WV,100uF/50,10uF/350,100uF/160,22uF/50V,57PF,47000PF。
用万用表进行测量,只能定性的检查其是否有漏电,内部短路或击穿现象。
测量时,可选用万用表R×10k挡,用两表笔分别任意接电容的两个引脚,阻值应为无穷大。
若测出阻值(指针向右摆动)为零,则说明电容漏电损坏或内部击穿。
二极管:1N4007,RG2,FR107。
测试前先把万用表的转换开关拨到欧姆档的RX1K档位(注意不要使用RX1档,以免电流过大烧坏二极管),再将红、黑两根表笔短路,进行欧姆调零。
①正向特性测试,把万用表的黑表笔(表内正极)搭触二极管的正极,红表笔(表内负极)搭触二极管的负极。
若表针不摆到0值而是停在标度盘的中间,这时的阻值就是二极管的正向电阻,一般正向电阻越小越好。
若正向电阻为0值,说明管芯短路损坏,若正向电阻接近无穷大值,说明管芯断路。
短路和断路的管子都不能使用。
②反向特性测试,把万且表的红表笔搭触二极管的正极,黑表笔搭触二极管的负极,若表针指在无穷大值或接近无穷大值,管子就是合格的。
VHDL交通灯控制器-实验报告
可编程逻辑器件应用项目报告书项目名称:交通灯控制器指导老师:姓名:学号:班级:(以后写报告要包含以下一些内容:)一、设计要求--------------------------------------------------------------------------------二、设计目的--------------------------------------------------------------------------------三、设计方案--------------------------------------------------------------------------------四、设计程序---------------------------------------------------------------------------------五、管脚分配---------------------------------------------------------------------------------六、硬件下载实现现象描述------------------------------------------七、体会、对设计工作的总结与展-------------------------------------------一、设计要求:①在十字路口的两个方向上各设一组红、绿、黄灯,显示顺序为其中一方向(东西方向)是绿灯、黄灯、红灯;另一方向(南北方向)是红灯、绿灯、黄灯。
②设置一组数码管,以倒计时的方式显示允许通行或禁止通行的时间,其中绿灯、黄灯、红灯的持续时间分别是20s、5s和25s。
③当各条路上任意一条上出现特殊情况时,如当消防车、救护车或其他需要优先放行的车辆通过时,各方向上均是红灯亮,倒计时停止,且显示数字在闪烁。
当特殊运行状态结束后,控制器恢复原来状态,继续正常运行。
交通信号控制器设计报告
交通灯控制器设计报告专业:勘查技术与工程班级:勘查学号:姓名:日期:2009-12-23目录一、设计要求: (3)二、设计思路: (3)三、硬件电路设计: (4)四、程序设计: (6)五、实验总结: (12)六、参考文献: (12)一、设计要求利用EDA/SOPC实验开发平台提供的八位七段管码显示模块以及EP2C35核心板,实现交通灯信号控制器。
设交通灯信号控制器用于主干道的交叉路口,要求是优先保证主干道的畅通,因此,平时处于“主干道绿灯,支道红灯”状态。
(1)当处于“主干道绿灯,支道红灯”状态A.主干道有车要求通行,支道也有车要求通行时,若主干道通行时间大于等于30秒,切换到“主黄,支红”,4秒后切换到“主红,支绿”状态。
B. 主干道无车要求通行,支道有车要求通行时,立即切换到“主黄,支红”,4秒后切换到“主红,支绿”。
C.其它情况保持“主绿,支红”。
(2)当处于“主干道红灯,支道绿灯”状态A. 支道有车要求通行时,保持“主红,支绿”状态,但最多保持30秒然后自动切换到“主红,支黄”状态,4秒后切换到“主绿,支红”状态。
B. 支道无车要求通行时,立即切换到“主红,支黄”, 4秒后切换到“主绿,支红”。
C.其它情况保持“主绿,支红”。
(3)利用八位七段管码显示模块其中的2位实现时间显示。
(4)扩展要求:自主设计(如改变各交通灯亮灭的时间,丰富控制逻辑等)二、设计思路1. 从题目要求中不难看出交通灯一共有四个状态,分别为主绿,支红;主黄,支红;主红,支绿;主红,支黄。
根据题目要求得各状态之间转换关系如图(1)所示图(1)注:SM=1,主干道有车;SM=0,主干道无车;SR=1,支干道有车;SR=0,支干道无车;num灯亮时间;根据设计要求和系统所具有的功能,并参考相关的文献资料,经行方案设计,可以画出如图(2)所示的交通信号灯控制器的系统框图。
图(2)三﹑硬件电路设计(1)分频器分频器实现的是将高频时钟信号转换成低频的时钟信号,用于触发控制器、计数器和扫描显示电路。
交通灯控制器 EDA实验报告
一、实验目的1、研究交通灯控制器的工作原理,进行功能设计;2、加深VHDL语言的理解;3、熟练掌握自上而下的分层设计方法;4、熟练掌握EDA软件QUARTUSII的开发流程。
二、实验仪器PC机一台;QUARTUSII 13.0软件;新型设备实验板Altera Blaster下载器三、题目解析1.东西,南北两个方向有红、黄、绿灯指示是否允许通行2. 设置时钟,以倒计时方式显示允许通行的时间3. 绿灯、黄灯、红灯的持续时间分别设置为20秒、10秒和30秒(时间也开自行设置)4. 当东西或南北两路中任一道上出现特殊情况,例如有消防车,警车要去执行任务,交通控制系统可由交警手动控制进入特殊运行状态,即两条道上的所有车辆皆停止通行,红灯全亮,时钟停止计时。
特殊运行状态结束后,管理系统恢复状态继续正常运行四、实验原理五、模块设计以及总电路图1.简要说明由于两个交通灯的倒计时数字的显示是相同的,所以我们这次只使用了两个七段数码管来显示两个交通灯的时间。
我们把60s一个大循环分成了如图所示四个状态s0~s3,且还有一个s4为紧急状态。
当s4启动时,时钟暂停计时,交通灯均亮红灯。
有一个en为紧急状态按钮,rst为复位键,倒计时回到30s,转固态回到s0。
2.分频器模块本次课程使用的实验板默认50MHz晶振。
i_clk为输入信号,用于晶振信号输入;i_rst为复位信号;o_clk为分频信号,输出1Hz;3.LED灯控制模块通过给定的时钟输入判断当前状态下的LED灯点亮情况。
l_clk时钟信号输入l_rst复位l_en为使能端,用于紧急状况4.数码管显示模块通过给定的时钟输入判断当前时间的数字显示c_clk时钟信号输入c_rst复位c_en紧急out_h高位输出用于控制十位out_l地位输出用于控制个位5.数码管将上一部分输出信号进行译码显示6.总电路图根据题意,将各个模块根据原理连接起来,形成如图电路。
六、各个模块代码1.分频器LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;USE ieee.std_logic_unsigned.all;entity FREQUENCY_DIVIDER isgeneric(sys_clk_fre:INTEGER:=50000000;//输入频率div_clk_fre:INTEGER:=1//目标频率);PORT(i_clk : IN STD_LOGIC;i_rst : IN STD_LOGIC;o_clk : OUT STD_LOGIC);END FREQUENCY_DIVIDER;ARCHITECTURE FREQUENCY_DIVIDER_architecture OF FREQUENCY_DIVIDER ISsignal r_div_count:STD_LOGIC_VECTOR(31 downto 0);signal r_div_CLK:STD_LOGIC;BEGINprocess(i_clk,i_rst)beginif(i_rst='1')then //复位r_div_count<=x"00000000";r_div_clk <= '0';elsif(i_clk'event and i_clk='1')thenif(r_div_count=sys_clk_fre/div_clk_fre/2-1)thenr_div_count <= x"00000000";r_div_clk <= NOT r_div_clk;elser_div_count <= r_div_count+1;end if;end if;end process;o_clk <= r_div_clk;END FREQUENCY_DIVIDER_architecture;2.LED控制LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;USE ieee.std_logic_unsigned.all;ENTITY light_control ISPORT(l_clk : IN STD_LOGIC;l_rst : IN STD_LOGIC;l_en : IN STD_LOGIC;red1 : OUT STD_LOGIC;red2 : OUT STD_LOGIC;ye1 : OUT STD_LOGIC;ye2 : OUT STD_LOGIC;green1 : OUT STD_LOGIC;green2: OUT STD_LOGIC);END light_control;ARCHITECTURE light_control_architecture OF light_control IS type state_type is(s0,s1,s2,s3,s4);signal current_state,next_state:state_type;signal counter:std_logic_vector(5 downto 0);BEGINsynch:process(counter)//60s循环beginif l_rst='1'thencounter<="000000";elsif l_clk'event and l_clk='1'thenif l_en='1' thencounter<=counter;elseif counter<59 thencounter<=counter+1;elsecounter<="000000";end if;end if;end if;end process;process(l_rst,l_clk)//状态转换beginif l_rst='1'thencurrent_state<=s0;elsif l_clk'event and l_clk='1'thencurrent_state<=next_state;end if;end process;state_trans:process(current_state)begincase current_state iswhen s0=>if l_en='1' thennext_state<=s4;elseif counter<26 thennext_state<=s0;elsenext_state<=s1;end if;end if;when s1=>if l_en='1' thennext_state<=s4;elseif counter<29 thennext_state<=s1;elsenext_state<=s2;end if;end if;when s2=>if l_en='1' thennext_state<=s4;elseif counter<56 thennext_state<=s2;elsenext_state<=s3;end if;end if;when s3=>if l_en='1' thennext_state<=s4;elseif counter<59 thennext_state<=s3;elsenext_state<=s0;end if;end if;when s4=>if l_en='1' thennext_state<=s4;elseif counter<19 thennext_state<=s0;elsif counter<29 thennext_state<=s1;elsif counter<49 thennext_state<=s2;elsif counter<59 thennext_state<=s3;elsenext_state<=s0;end if;end if;end case;end process;output:process(current_state)//状态输出begincase current_state iswhen s0=>red1<='0';green1<='1';ye1<='0';red2<='1';green2<='0';ye2<='0';when s1=>red1<='0';green1<='0';ye1<='1';red2<='1';green2<='0';ye2<='0';when s2=>red1<='1';green1<='0';ye1<='0';red2<='0';green2<='1';ye2<='0';when s3=>red1<='1';green1<='0';ye1<='0';red2<='0';green2<='0';ye2<='1';when s4=>red1<='1';green1<='0';ye1<='0';red2<='1';green2<='0';ye2<='0';end case;end process;END light_control_architecture;3.计时器LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;USE ieee.std_logic_unsigned.all;ENTITY counter IS-- {{ALTERA_IO_BEGIN}} DO NOT REMOVE THIS LINE!PORT(c_clk : IN STD_LOGIC;c_rst : IN STD_LOGIC;c_en : IN STD_LOGIC;out_h : OUT STD_LOGIC_VECTOR(3 downto 0);out_l : OUT STD_LOGIC_VECTOR(3 downto 0));-- {{ALTERA_IO_END}} DO NOT REMOVE THIS LINE!END counter;-- Architecture BodyARCHITECTURE counter_architecture OF counter ISsignal coul,couh:std_logic_vector(3 downto 0);beginprocess(c_rst,c_clk,c_en)beginif c_rst='1' thencoul<="0000";couh<="0011";//这里是如果启用了复位键,就会从的第一个小循环30s开始倒计时,所以高位是0011也就是3,低位从0开始倒计时,即30→29…elsif c_clk'event and c_clk = '1' thenif c_en='1'thencouh<=couh;coul<=coul;elseif c_rst='0' thenif(coul=1 and couh=0)thencouh<="0011";coul<="0000";elsif coul=0 thencoul<="1001";couh<=couh-1;elsecoul<=coul-1;//这里是每减少10s高位会减1,如20→19高位从2到1,低位置9end if;end if;end if;end if;end process;out_h<=couh;out_l<=coul;END counter_architecture;4译码显示LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;USE ieee.std_logic_unsigned.all;-- Entity DeclarationENTITY digits_h IS-- {{ALTERA_IO_BEGIN}} DO NOT REMOVE THIS LINE!PORT(d_h : IN STD_LOGIC_VECTOR(3 downto 0);a : OUT STD_LOGIC;b : OUT STD_LOGIC;c : OUT STD_LOGIC;d : OUT STD_LOGIC;e : OUT STD_LOGIC;f : OUT STD_LOGIC;g : OUT STD_LOGIC);-- {{ALTERA_IO_END}} DO NOT REMOVE THIS LINE!END digits_h;ARCHITECTURE digits_h_architecture OF digits_h IS signal tmp:std_lOGIC_VECTOR(6 DOWNTO 0);beginprocess (d_h)begincase d_h iswhen"0000"=>tmp<="0000001";when"0001"=>tmp<="1001111";when"0010"=>tmp<="0010010";when"0011"=>tmp<="0000110";when"0100"=>tmp<="1001100";when"0101"=>tmp<="0100100";when"0110"=>tmp<="0100000";when"0111"=>tmp<="0001111";when"1000"=>tmp<="0000000";when"1001"=>tmp<="0000100";when others=>tmp<="1111111";end case;end process;a<=tmp(6);b<=tmp(5);c<=tmp(4);d<=tmp(3);e<=tmp(2);f<=tmp(1);g<=tmp(0);END digits_h_architecture;七、实验验证验证通过!八、心得体会通过本次数字电路与逻辑实验课程的学习以及大作业的完成,我们学习了EDA相关的编程语言基础语法与软件的基本使用,掌握了一定的基础能力,了解电子设计自动化这片领域的重要性以及其发展,实践了从设计到实现的全部过程,培养了对eda设计的兴趣,对本科阶段实操方面的能力很有帮助。
交通信号灯的plc控制实验报告
交通信号灯的plc控制实验报告交通信号灯的PLC控制实验报告摘要:本实验旨在通过PLC控制交通信号灯的变换,以实现交通流量的优化和交通事故的减少。
通过对PLC编程的学习和实践,我们成功地设计了一个基于PLC的交通信号灯控制系统,并进行了相应的实验验证。
1. 引言交通信号灯是城市道路交通管理的重要组成部分,它通过不同颜色的信号灯指示车辆和行人的通行情况。
传统的交通信号灯控制方式往往由定时器控制,无法根据实际交通情况进行灵活调整,容易造成交通拥堵和事故。
而PLC作为一种可编程控制器,具有灵活性强、可靠性高的特点,可以实现对交通信号灯的智能控制。
2. 实验目的本实验的主要目的是设计一个基于PLC的交通信号灯控制系统,实现对交通流量的优化和交通事故的减少。
通过实验验证PLC在交通信号灯控制方面的应用效果,并对实验结果进行分析和总结。
3. 实验装置和方法本实验所使用的装置包括PLC控制器、交通信号灯模型和传感器。
首先,我们根据实际交通场景设计了交通信号灯的控制逻辑,并使用PLC编程软件进行程序设计。
然后,将PLC控制器与交通信号灯模型和传感器连接,进行实验验证。
4. 实验结果和分析在实验过程中,我们通过改变交通信号灯的控制逻辑,模拟不同交通流量情况下的信号灯变换。
通过观察和记录交通流量、通行时间等数据,我们发现PLC控制下的交通信号灯能够更加准确地根据实际情况进行调整,提高交通效率。
同时,我们还进行了多组实验对比,验证了PLC控制相较于传统定时器控制的优势。
5. 实验总结通过本次实验,我们深入了解了PLC在交通信号灯控制方面的应用。
PLC控制可以根据实际交通情况进行智能调整,提高交通效率,减少交通事故的发生。
然而,我们也发现在实际应用中,PLC控制系统的可靠性和稳定性仍然存在一定的挑战,需要进一步的研究和改进。
6. 展望未来,我们将继续研究和改进基于PLC的交通信号灯控制系统。
我们希望能够进一步提高系统的可靠性和稳定性,实现更加智能化和精准化的交通信号灯控制。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
交通灯信号控制器的设计1、实验目的(1)学习QuartusII软件的基本使用方法。
(2)学习VHDL程序的基本结构和基本语句。
2、实验内容欲设计一个由一条主干道和一条支干道的汇合点形成的十字交叉路口的交通灯控制器,具体要求如下:(1)主、支干道各设有一个绿、黄、红指示灯,两个显示数码管。
(2)主干道处于常允许通行状态,支干道有车来时才允许通行;当主干道允许通行亮绿灯时,支干道亮红灯;支干道允许通行亮绿灯时,主干道亮红灯。
(3)当主、支道均有车时,两者交替允许通行,主干道每次放行45s,支干道每次放行25s,在每次由亮绿灯变成亮红灯的转换过程中,要亮5s的黄灯作为过渡,并进行减计时显示。
3、设计思路交通控制器拟由单片的CPLD/FPGA来实现,经分析设计要求,整个系统由8个单元电路组成,包括:JTDKZ:交通灯状态控制CNT45S:45秒计时CNT05S:5秒计时CNT25S:25秒计时XSKZ:产生数码管段码数据,数据为BCD码YMQ:译码器,将BCD码转为段码CTRLS:产生数码管动态扫描信号MUXB41:4选1数据选择器,并产生位选信号整个控制系统中,U1为交通灯控制模块JTDKZ,此模块根据主、支道传感器信号SM、SB以及来自时基发生电路的时钟信号CLK,发出主、支道指示灯的控制信号,同时向各定时单元、显示控制单元发出使能控制信号EN45、EN25、EN05M、EN05B;U2、U3、U4为45s、5s、25s定时单元CNT45S、CNT05S、CNT25S,这些单元根据SM、SB、CLK及JTDKZ发出的有关使能控制信号EN45、EN25、EN05M、EN05B,按要求进行定时,并将其输出传送至显示控制单元;U5为显示控制单元XSKZ,此单元根据JTDKZ发出的有关使能控制信号EN1、EN2、EN3、EN4选择定时单元CNT45S、CNT05S、CNT25S的输出,并将之传送至各显示译码器:U6、U7、U8、U9为译码器YMQ,它将显示控制单元XSKZ的输出作为输入进行译码,将XSKZ的时间BCD码译码为数码管的8位段码,并将产生的段码经MUXB41送给数码管进行动态扫描显示的过程,动态扫描的选测信号由CTRLS产生。
在定时单元CNT45S和CNT25S的设计中,根据设计要求需要进行减计数,但本设计中仍使用的是加法计数,只是在将计数结果转换成两位BCD码时,将计数的最小值对应转换成显示定时的最大值,计数值加1时,转换的显示值减1,以此类推。
同时,由于主、支道从亮绿灯转到亮红灯中间有5s亮黄灯的时间过渡,因此对应的支、主道亮红灯的时间比对应的主、支道亮绿灯的时间要多5s,考虑到此原因,CNT45S和CNT25S计数器在把计数结果转换成显示的BCD码值时,将用于驱动绿灯的BCD码按实际定时要求转换,而将对应的用于驱动红灯的BCD码在实际定时要求的基础上加5进行转换。
4、实验设计1)系统原理框图本系统总体可分为两个两个层次,即LED显示和数码管显示,核心模块为JTDKZ产生系统的所有信号2)VHDL程序JTDKZ的VHDL程序--Jtdkz.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY JTDKZ ISPORT(CLK,SM,SB:IN STD_LOGIC;MR,MY,MG,BR,BY,BG:OUT STD_LOGIC);END ENTITY JTDKZ;ARCHITECTURE ART OF JTDKZ ISTYPE STATE_TYPE IS(A,B,C,D);SIGNAL STATE:STATE_TYPE:=A;BEGINCNT:PROCESS(CLK) ISVARIABLE S:INTEGER RANGE 0 TO 45:=0;VARIABLE CLR:BIT:='0';VARIABLE EN:BIT:='0';BEGINIF(CLK'EVENT AND CLK='1') THENIF CLR='0' THEN S:=0;ELSIF EN='0' THEN S:=S;ELSE S:=S+1;END IF;CASE STATE ISWHEN A=>MR<='0';MY<='0';MG<='1';BR<='1';BY<='0';BG<='0';IF(SB AND SM)='1' THENIF S=45 THEN STATE<=B;CLR:='0';EN:='0';ELSE STATE<=A;CLR:='1';EN:='1';END IF;ELSIF(SB AND (NOT SM))='1' THENSTATE<=C;CLR:='0';EN:='0'; --STATE<=BELSE STATE<=A;CLR:='1';EN:='0'; --END IF;WHEN B=>MR<='0';MY<='1';MG<='0';BR<='1';BY<='0';BG<='0';IF S=5 THEN STATE<=C;CLR:='0';EN:='0';ELSE STATE<=B;CLR:='1';EN:='1';END IF;WHEN C=>MR<='1';MY<='0';MG<='0';BR<='0';BY<='0';BG<='1';IF(SB AND SM)='1' THENIF S=25 THEN STATE<=D;CLR:='0';EN:='0';ELSE STATE<=C;CLR:='1';EN:='1';END IF;ELSIF SB='0' THEN STATE<=A;CLR:='0';EN:='0';ELSIF S=25 THEN STATE<=D;CLR:='0';EN:='0';ELSE STATE<=C;CLR:='1';EN:='1';END IF;WHEN D=>MR<='1';MY<='0';MG<='0';BR<='0';BY<='1';BG<='0';IF S=5 THEN STATE<=A;CLR:='0';EN:='0';ELSE STATE<=D;CLR:='1';EN:='1';END IF;WHEN OTHERS =>STATE<=A;END CASE;END IF;END PROCESS CNT;END ARCHITECTURE ART;XSKZ的VHDL程序--Xskz.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY XSKZ ISPORT(EN45,EN25,EN05M,EN05B:IN STD_LOGIC;AIN45M,AIN45B,AIN25M,AIN25B,AIN05:IN STD_LOGIC_VECTOR(7 DOWNTO 0);DOUTM,DOUTB:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ENTITY XSKZ;ARCHITECTURE ART OF XSKZ ISBEGINPROCESS(EN45,EN25,EN05M,EN05B,AIN45M,AIN45B,AIN25M,AIN25B,AIN05) IS BEGINIF EN45='1' THEN DOUTM<=AIN45M(7 DOWNTO 0);DOUTB<=AIN45B(7DOWNTO 0);ELSIF EN05M='1' THEN DOUTM<=AIN05(7 DOWNTO 0);DOUTB<=AIN05(7DOWNTO 0);ELSIF EN25='1' THEN DOUTM<=AIN25M(7 DOWNTO 0);DOUTB<=AIN25B(7 DOWNTO 0);ELSIF EN05B='1' THEN DOUTM<=AIN05(7 DOWNTO 0);DOUTB<=AIN05(7DOWNTO 0);END IF;END PROCESS;END ARCHITECTURE ART;CNT05S的VHDL程序--Cnt05s.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT05S ISPORT(CLK,EN05M,EN05B:IN STD_LOGIC;DOUT5:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ENTITY CNT05S;ARCHITECTURE ART OF CNT05S ISSIGNAL CNT3B:STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINPROCESS(CLK,EN05M,EN05B) ISBEGINIF(CLK'EVENT AND CLK='1') THENIF EN05M='1' THEN CNT3B<=CNT3B+1;ELSIF EN05B='1' THEN CNT3B<=CNT3B+1;ELSIF EN05B='0' THEN CNT3B<=CNT3B-CNT3B-1;END IF;END IF;END PROCESS;PROCESS(CNT3B) ISBEGINCASE CNT3B ISWHEN"000"=>DOUT5<="00000101";WHEN"001"=>DOUT5<="00000100";WHEN"010"=>DOUT5<="00000011";WHEN"011"=>DOUT5<="00000010";WHEN"100"=>DOUT5<="00000001";WHEN OTHERS=>DOUT5<="00000000";END CASE;END PROCESS;END ARCHITECTURE ART;CNT25S的VHDL程序--Cnt25s.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT25S ISPORT(SB,SM,CLK,EN25:IN STD_LOGIC;DOUT25M,DOUT25B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END ENTITY CNT25S;ARCHITECTURE ART OF CNT25S ISSIGNAL CNT5B:STD_LOGIC_VECTOR(4 DOWNTO 0);BEGINPROCESS(SB,SM,CLK,EN25) ISBEGINIF (SB='0'OR SM='0')THEN CNT5B<=CNT5B-CNT5B-1;ELSIF(CLK'EVENT AND CLK='1') THENIF EN25='1' THEN CNT5B<=CNT5B+1;ELSIF EN25='0' THEN CNT5B<=CNT5B-CNT5B-1;END IF;END IF;END PROCESS;PROCESS(CNT5B) ISBEGINCASE CNT5B ISWHEN"00000"=>DOUT25M<="00100101";DOUT25B<="00110000";WHEN"00001"=>DOUT25M<="00100100";DOUT25B<="00101001";WHEN"00010"=>DOUT25M<="00100011";DOUT25B<="00101000";WHEN"00011"=>DOUT25M<="00100010";DOUT25B<="00100111";WHEN"00100"=>DOUT25M<="00100001";DOUT25B<="00100110";WHEN"00101"=>DOUT25M<="00100000";DOUT25B<="00100101";WHEN"00110"=>DOUT25M<="00011001";DOUT25B<="00100100";WHEN"00111"=>DOUT25M<="00011000";DOUT25B<="00100011";WHEN"01000"=>DOUT25M<="00010111";DOUT25B<="00100010";WHEN"01001"=>DOUT25M<="00010110";DOUT25B<="00100001";WHEN"01010"=>DOUT25M<="00010101";DOUT25B<="00100000";WHEN"01011"=>DOUT25M<="00010100";DOUT25B<="00011001";WHEN"01100"=>DOUT25M<="00010011";DOUT25B<="00011000";WHEN"01101"=>DOUT25M<="00010010";DOUT25B<="00010111";WHEN"01110"=>DOUT25M<="00010001";DOUT25B<="00010110";WHEN"01111"=>DOUT25M<="00010000";DOUT25B<="00010101";WHEN"10000"=>DOUT25M<="00001001";DOUT25B<="00010100";WHEN"10001"=>DOUT25M<="00001000";DOUT25B<="00010011";WHEN"10010"=>DOUT25M<="00000111";DOUT25B<="00010010";WHEN"10011"=>DOUT25M<="00000110";DOUT25B<="00010001";WHEN"10100"=>DOUT25M<="00000101";DOUT25B<="00010000";WHEN"10101"=>DOUT25M<="00000100";DOUT25B<="00001001";WHEN"10110"=>DOUT25M<="00000011";DOUT25B<="00001000";WHEN"10111"=>DOUT25M<="00000010";DOUT25B<="00000111";WHEN"11000"=>DOUT25M<="00000001";DOUT25B<="00000110";WHEN OTHERS=>DOUT25M<="00000000";DOUT25B<="00000000";END CASE;END PROCESS;END ARCHITECTURE ART;CNT45S的VHDL程序--Cnt45s.vhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT45S ISPORT(SB,SM,CLK,EN45:IN STD_LOGIC;DOUT45M,DOUT45B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END ENTITY CNT45S;ARCHITECTURE ART OF CNT45S ISSIGNAL CNT6B:STD_LOGIC_VECTOR(5 DOWNTO 0);BEGINPROCESS(SB,SM,CLK,EN45) ISBEGINIF SB='0' OR SM='0' THEN CNT6B<=CNT6B-CNT6B-1;ELSIF(CLK'EVENT AND CLK='1') THENIF EN45='1' THEN CNT6B<=CNT6B+1;ELSIF EN45='0' THEN CNT6B<=CNT6B-CNT6B-1;END IF;END IF;END PROCESS;PROCESS(CNT6B) ISBEGINCASE CNT6B ISWHEN"000000"=>DOUT45M<="01000101";DOUT45B<="01010000"; WHEN"000001"=>DOUT45M<="01000100";DOUT45B<="01001001"; WHEN"000010"=>DOUT45M<="01000011";DOUT45B<="01001000"; WHEN"000011"=>DOUT45M<="01000010";DOUT45B<="01000111"; WHEN"000100"=>DOUT45M<="01000001";DOUT45B<="01000110"; WHEN"000101"=>DOUT45M<="01000000";DOUT45B<="01000101"; WHEN"000110"=>DOUT45M<="00111001";DOUT45B<="01000100"; WHEN"000111"=>DOUT45M<="00111000";DOUT45B<="01000011"; WHEN"001000"=>DOUT45M<="00110111";DOUT45B<="01000010"; WHEN"001001"=>DOUT45M<="00110110";DOUT45B<="01000001"; WHEN"001010"=>DOUT45M<="00110101";DOUT45B<="01000000"; WHEN"001011"=>DOUT45M<="00110100";DOUT45B<="00111001"; WHEN"001100"=>DOUT45M<="00110011";DOUT45B<="00111000"; WHEN"001101"=>DOUT45M<="00110010";DOUT45B<="00110111"; WHEN"001110"=>DOUT45M<="00110001";DOUT45B<="00110110"; WHEN"001111"=>DOUT45M<="00110000";DOUT45B<="00110101"; WHEN"010000"=>DOUT45M<="00101001";DOUT45B<="00110100"; WHEN"010001"=>DOUT45M<="00101000";DOUT45B<="00110011"; WHEN"010010"=>DOUT45M<="00100111";DOUT45B<="00110010";WHEN"010011"=>DOUT45M<="00100110";DOUT45B<="00110001";WHEN"010100"=>DOUT45M<="00100101";DOUT45B<="00110000";WHEN"010101"=>DOUT45M<="00100100";DOUT45B<="00101001";WHEN"010110"=>DOUT45M<="00100011";DOUT45B<="00101000";WHEN"010111"=>DOUT45M<="00100010";DOUT45B<="00100111";WHEN"011000"=>DOUT45M<="00100001";DOUT45B<="00100110";WHEN"011001"=>DOUT45M<="00100000";DOUT45B<="00100101";WHEN"011010"=>DOUT45M<="00011001";DOUT45B<="00100100";WHEN"011011"=>DOUT45M<="00011000";DOUT45B<="00100011";WHEN"011100"=>DOUT45M<="00010111";DOUT45B<="00100010";WHEN"011101"=>DOUT45M<="00010110";DOUT45B<="00100001";WHEN"011110"=>DOUT45M<="00010101";DOUT45B<="00100000";WHEN"011111"=>DOUT45M<="00010100";DOUT45B<="00011001";WHEN"100000"=>DOUT45M<="00010011";DOUT45B<="00011000";WHEN"100001"=>DOUT45M<="00010010";DOUT45B<="00010111";WHEN"100010"=>DOUT45M<="00010001";DOUT45B<="00010110";WHEN"100011"=>DOUT45M<="00010000";DOUT45B<="00010101";WHEN"100100"=>DOUT45M<="00001001";DOUT45B<="00010100";WHEN"100101"=>DOUT45M<="00001000";DOUT45B<="00010011";WHEN"100110"=>DOUT45M<="00000111";DOUT45B<="00010010";WHEN"100111"=>DOUT45M<="00000110";DOUT45B<="00010001";WHEN"101000"=>DOUT45M<="00000101";DOUT45B<="00010000";WHEN"101001"=>DOUT45M<="00000100";DOUT45B<="00001001";WHEN"101010"=>DOUT45M<="00000011";DOUT45B<="00001000";WHEN"101011"=>DOUT45M<="00000010";DOUT45B<="00000111";WHEN"101100"=>DOUT45M<="00000001";DOUT45B<="00000110";WHEN OTHERS=>DOUT45M<="00000000";DOUT45B<="00000000";END CASE;END PROCESS;END ARCHITECTURE ART;◆YMQ的VHDL程序LIBRARY IEEE;--数据译码器将XSKZ产生的BCD码数据转换为数码管显示的段码USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY YMQ ISPORT(AIN4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);--数据输入,来源是XSKZ产生的8位数据,在取出高4位和低4位OUT8:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));--段码数据END ENTITY YMQ;ARCHITECTURE ART OF YMQ ISBEGINPROCESS(AIN4)BEGINCASE AIN4 IS--将4位BCD码转换为8位段码数据WHEN "0000"=>OUT8<="00111111";WHEN "0001"=>OUT8<="00000110";WHEN "0010"=>OUT8<="01011011";WHEN "0011"=>OUT8<="01001111";WHEN "0100"=>OUT8<="01100110";WHEN "0101"=>OUT8<="01101101";WHEN "0110"=>OUT8<="01111101";WHEN "0111"=>OUT8<="00000111";WHEN "1000"=>OUT8<="01111111";WHEN "1001"=>OUT8<="01101111";WHEN OTHERS=>OUT8<="00000000";END CASE;END PROCESS P2;END ARCHITECTURE ART;◆MXB41的VHDL程序LIBRARY IEEE;--4选一数据选择器,以此实现共阴极数码管动态扫描显示USE IEEE.STD_LOGIC_1164.ALL;ENTITY MUXB41 ISPORT(DATA1,DATA2 : IN STD_LOGIC_VECTOR(7 DOWNTO 0);--数码管显示的数据段码DATA3,DATA4 : IN STD_LOGIC_VECTOR(7 DOWNTO 0);SE: IN STD_LOGIC_VECTOR(1 DOWNTO 0);SEDATA: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);--选择出的数据SECOM: OUT STD_LOGIC_VECTOR( 2 DOWNTO 0));--产生的位选数据--DATA1:主道低位段码--DATA2:主道高位段码--DATA3:支道低位段码--DATA4:支道高位段码END ENTITY MUXB41;ARCHITECTURE ART OF MUXB41 ISBEGINp1: PROCESS(SE) IS--对选择信号验证,以此产生送到数码管显示的数据BEGINIF SE="00" THEN SEDATA<=DATA1;ELSIF SE="01" THEN SEDATA<=DATA2;ELSIF SE="10" THEN SEDATA<=DATA3;ELSE SEDATA<=DATA4;END IF;END PROCESS P1;P2: PROCESS(SE) IS--对选择信号验证,以此产生送到数码管位选的数据BEGINCASE SE ISWHEN "00"=>SECOM<="000";--主道低位WHEN "01"=>SECOM<="001";--主道高位WHEN "10"=>SECOM<="100";--支道低位WHEN "11"=>SECOM<="101";--支道高位WHEN OTHERS =>SECOM<="111";END CASE;END PROCESS P2;END ARCHITECTURE ART;CTRLS的VHDL程序LIBRARY IEEE;--数码管动态扫描,原理:给一个CLK产生2个信号(4钟组合)将这两个信号送给4选1数据选择器,选出要在数码管上显示的数据,CLK要在24HZ以上USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRLS ISPORT(CLK:IN STD_LOGIC;SEL:OUT STD_LOGIC_VECTOR(1 DOWNTO 0));--数据选择器的选择信号END ENTITY CTRLS;ARCHITECTURE ART OF CTRLS ISSIGNAL CNT:STD_LOGIC_VECTOR(1 DOWNTO 0);--数据选择信号的信号变量BEGINPROCESS(CLK) ISBEGINIF CLK'EVENT AND CLK='1'THENIF CNT="11"THEN--选择信号变为11则时信号重新归为00,实现数码动态扫描显示数据CNT<="00";ELSECNT<=CNT+'1';END IF;END IF;END PROCESS;SEL<=CNT;END ARCHITECTURE ART;顶层文件DJTLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DJT ISPORT(SM:IN STD_LOGIC;SB:IN STD_LOGIC;CLK:IN STD_LOGIC;CLK2:IN STD_LOGIC;--此数码管扫描时钟必须在24HZ以上 M_G:OUT STD_LOGIC;M_Y:OUT STD_LOGIC;M_R:OUT STD_LOGIC;B_G:OUT STD_LOGIC;B_Y:OUT STD_LOGIC;B_R:OUT STD_LOGIC;COM:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);DATA:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END ENTITY DJT;ARCHITECTURE ART OF DJT ISCOMPONENT JTDKZ ISPORT(CLK:IN STD_LOGIC;SM:IN STD_LOGIC;SB:IN STD_LOGIC;MG:OUT STD_LOGIC;MY:OUT STD_LOGIC;MR:OUT STD_LOGIC;BG:OUT STD_LOGIC;BY:OUT STD_LOGIC;BR:OUT STD_LOGIC);END COMPONENT JTDKZ;COMPONENT CNT45S ISPORT(SM:IN STD_LOGIC;SB:IN STD_LOGIC;CLK:IN STD_LOGIC;EN45:IN STD_LOGIC;DOUT45M:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);DOUT45B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT CNT45S;COMPONENT CNT05S ISPORT(CLK:IN STD_LOGIC;EN05M:IN STD_LOGIC;EN05B:IN STD_LOGIC;DOUT5:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT CNT05S;COMPONENT CNT25S ISPORT(SM:IN STD_LOGIC;SB:IN STD_LOGIC;CLK:IN STD_LOGIC;EN25:IN STD_LOGIC;DOUT25M,DOUT25B:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END COMPONENT CNT25S;COMPONENT XSKZ ISPORT(EN45:IN STD_LOGIC;AIN45M:IN STD_LOGIC_VECTOR(7 DOWNTO 0);AIN45B:IN STD_LOGIC_VECTOR(7 DOWNTO 0);EN05M:IN STD_LOGIC;EN05B:IN STD_LOGIC;AIN05:IN STD_LOGIC_VECTOR(7 DOWNTO 0);EN25:IN STD_LOGIC;AIN25M:IN STD_LOGIC_VECTOR(7 DOWNTO 0);AIN25B:IN STD_LOGIC_VECTOR(7 DOWNTO 0);DOUTM:OUT STD_LOGIC_VECTOR(7 DOWNTO 0);DOUTB:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END COMPONENT XSKZ;COMPONENT CTRLS ISPORT(CLK:IN STD_LOGIC;SEL:OUT STD_LOGIC_VECTOR(1 DOWNTO 0)); END COMPONENT CTRLS;COMPONENT MUXB41 ISPORT (DATA1:IN STD_LOGIC_VECTOR(7 DOWNTO 0);DATA2:IN STD_LOGIC_VECTOR(7 DOWNTO 0);DATA3:IN STD_LOGIC_VECTOR(7 DOWNTO 0);DATA4:IN STD_LOGIC_VECTOR(7 DOWNTO 0);SE: IN STD_LOGIC_VECTOR(1 DOWNTO 0);SEDATA: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);SECOM: OUT STD_LOGIC_VECTOR( 2 DOWNTO 0)); END COMPONENT MUXB41;COMPONENT YMQ ISPORT(AIN4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);OUT8:OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END COMPONENT YMQ;SIGNAL EN1,EN2,EN3,EN4:STD_LOGIC;SIGNAL S45M:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL S45B:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL S05:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL S25M:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL S25B:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL YM:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL YB:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL D1:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL D2:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL D3:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL D4:STD_LOGIC_VECTOR(7 DOWNTO 0);SIGNAL SEL:STD_LOGIC_VECTOR(1 DOWNTO 0);BEGINU1:JTDKZ PORT MAP(CLK,SM,SB,EN1,EN2,M_R,EN3,EN4,B_R);U2:CNT45S PORT MAP(SM,SB,CLK,EN1,S45M,S45B);U3:CNT05S PORT MAP(CLK,EN2,EN4,S05);U4:CNT25S PORT MAP(SM,SB,CLK,EN3,S25M,S25B);U5:XSKZ PORT MAP(EN1,S45M,S45B,EN2,EN4,S05,EN3,S25M,S25B,YM,YB); U6:YMQ PORT MAP(YM(3 DOWNTO 0),D1);U7:YMQ PORT MAP(YM(7 DOWNTO 4),D2);U8:YMQ PORT MAP(YB(3 DOWNTO 0),D3);U9:YMQ PORT MAP(YB(7 DOWNTO 4),D4);U10:CTRLS PORT MAP(CLK2,SEL);U11:MUXB41 PORT MAP(D1,D2,D3,D4,SEL,DATA,COM);M_G<=EN1;M_y<=EN2;B_G<=EN3;B_Y<=EN4;END ARCHITECTURE ART;5、实验结果及总结(1)系统仿真结果JTDKZJNT05JNT25JNT45CTRLSYMQ(2)硬件验证。