手控行车红绿灯指示器设计报告
- 格式:doc
- 大小:262.55 KB
- 文档页数:5
一、实训目的本次实训旨在通过仿真设计,掌握红绿灯控制系统的工作原理和设计方法,熟悉基于单片机的交通信号灯控制系统的软硬件设计流程,提高实际工程应用能力。
二、实训内容1. 系统需求分析根据交通信号灯控制系统的实际需求,设计一套基于单片机的交通信号灯控制系统,实现对十字路口交通灯的智能控制。
系统需具备以下功能:(1)自动控制:根据实时交通流量自动调整红绿灯的切换时间。
(2)手动控制:允许在紧急情况下手动控制交通灯。
(3)倒计时功能:显示每个灯亮的时间。
(4)夜间模式:根据环境光线自动切换到夜间模式。
2. 系统设计(1)硬件设计系统硬件主要由单片机、交通灯模块、传感器模块、显示模块、按键模块和电源模块组成。
(2)软件设计系统软件主要包括主程序、初始化程序、交通流量检测程序、数据处理与决策程序、交通灯控制程序、倒计时程序、紧急控制程序、异常处理程序、手动/自动/特殊情况选择程序、特殊情况下的全红灯控制程序以及夜间模式程序。
3. 仿真设计采用Altium Designer19进行原理图设计,使用Keil5进行程序设计,并利用protues8.7软件进行仿真设计。
三、实训步骤1. 环境准备(1)安装Altium Designer19、Keil5和protues8.7软件。
(2)准备STM32开发板、LED灯、电阻等硬件。
2. 系统设计(1)根据系统需求分析,绘制系统框图。
(2)根据系统框图,进行硬件设计和软件设计。
3. 程序编写(1)使用Keil5编写程序。
(2)将程序下载到STM32开发板。
4. 仿真测试(1)使用protues8.7进行仿真测试。
(2)根据仿真结果,调整程序和硬件设计。
5. 总结与改进根据仿真结果,总结实训过程,对系统进行改进。
四、实训结果与分析1. 系统功能实现通过仿真测试,验证了系统具备以下功能:(1)自动控制:系统能够根据实时交通流量自动调整红绿灯的切换时间。
(2)手动控制:允许在紧急情况下手动控制交通灯。
一、实训背景随着我国经济的快速发展,城市交通问题日益突出。
为提高城市交通效率和安全性,红绿灯控制系统在交通管理中发挥着至关重要的作用。
为了让学生深入了解红绿灯控制系统的工作原理和实际应用,提高学生的实践能力,我们开展了红绿灯控制实训。
二、实训目的1. 掌握红绿灯控制系统的工作原理和设计方法。
2. 学会使用单片机、PLC等常用电子元器件和编程软件。
3. 培养学生的实际操作能力和团队协作精神。
4. 提高学生的创新意识和解决实际问题的能力。
三、实训内容1. 红绿灯控制系统基本原理(1)系统组成:包括控制器、交通灯模块、传感器模块、显示模块等。
(2)工作原理:控制器根据传感器采集的交通流量数据,自动调整红绿灯的切换时间,实现交通信号灯的智能控制。
2. 单片机编程与仿真(1)学习Keil uVision、Proteus等编程软件。
(2)编写单片机控制程序,实现红绿灯的基本控制功能。
3. PLC编程与仿真(1)学习PLC编程软件,如Step 7、EPLAN等。
(2)编写PLC控制程序,实现红绿灯的自动控制。
4. 虚拟仪器仿真(1)学习虚拟仪器技术,如LabVIEW等。
(2)利用虚拟仪器搭建红绿灯控制系统,进行仿真实验。
5. 红绿灯控制系统设计(1)设计系统硬件电路图。
(2)编写系统控制程序。
(3)调试系统,确保其正常运行。
四、实训过程1. 理论学习:学习红绿灯控制系统的工作原理、硬件设计、软件编程等相关知识。
2. 实践操作:在实验室进行单片机、PLC、虚拟仪器等设备的实际操作。
3. 团队合作:分组进行红绿灯控制系统的设计、编程、调试等工作。
4. 交流讨论:分享实训过程中的心得体会,共同解决遇到的问题。
五、实训成果1. 成功搭建红绿灯控制系统,实现交通信号灯的自动控制。
2. 掌握单片机、PLC等编程软件的使用方法。
3. 提高团队协作能力和解决问题的能力。
4. 培养创新意识和实际操作能力。
六、实训总结1. 通过本次实训,我们对红绿灯控制系统有了更深入的了解,掌握了其工作原理和设计方法。
交通信号灯控制器课程设计报交通信号灯控制器课程报告一.设计要求1、设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行, 绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。
2、主、支干道交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25 秒计时、显示电路。
3、在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。
提示:选择1HZ时钟脉冲作为系统时钟。
45秒、25秒、5秒定时信号用倒计时,计控制。
根据交通灯的亮的规则,在初始状态下四个方向的都为红灯亮启,进入正常工作状态后,当主干道上绿灯亮时,支干道上红灯亮,持续45S后,主干道和支干道上的黄灯都亮启,持续5S后,主干道上红灯亮启,支干道上绿灯亮启持续25S,之后主干道和支干道上的黄灯都亮启5s, 一个循环完成。
循环往复的执行这个过程。
设计中用两组红黄绿LED模拟两个方向上的交通灯,用4个7段数码管分别显示两个方向上的交通灯剩余时间,控制时钟由试验箱上频率信号1、2、时起始信号由主控电路给出,每当计满所需时间,计数器清零,由主控电路启、闭三色信号灯或启动另一计时电路。
二.设计思路本设计针对一条主干道和一条支干道汇合成的十字路口,进行南北和东西直行情况下交通灯提供。
根据状态机的设计规范,本次设计了四个状态之间的循环转化,其真值表及状态转化图如下所示三.程序说明1 •各输入输出变量说明:elk:计数时钟qclk:扫描显示时钟rst:复位信号,当rst为1时,控制器和计数器回到初始状态en:使能信号,当en为1时控制器开始工作,en为0时hold:特殊情况控制信号,hold为1时,主、支干道方向无条件显示为红灯seg:用于数码管的译码输出dig:用于选择显示的数码管(片选)numl:用于主干道方向灯的时间显示num2:用于支干道方向灯的时间显示light 1:控制主干道方向四盏灯的亮灭,其中,lightl[O卜lightl[2]分别控制主干道方向的绿灯、黄灯和红灯Hght2;控制支干道方向四盏灯的亮灭,其中,Hght2[0]-light2[2]分别控制支干道方向的绿灯、黄灯和红灯2 •输入输出及中间变量设置:module traffic(en,clk9qclk,rst,hold,numl,num2Jightl Jig ht2,seg,dig;input en,clk,qclk,rst9hold;output [5:0]dig;output[7:0] numl9num2;output[6:0]seg;output[2:0]lightl,light2;reg timl,tim2;reg [3:0]disp_dat;reg[6:0]seg;reg[7:0]numl,num2;reg [7:0] red 1 ,red2,green 1 ,green2,y ello wl ,y ello w2 reg[5:0]dig;reg [l:0]count;reg [ 1: OJstate 1 ,state2;reg [2: OJlight 1 Jight2;always @(en)if(!en) begingreenl<=8*b01000101;redl<=8fb00100101; yellow 1 <=8' bOOOOO 101; green2<=8*b00100101; red2<=8f b01000101; yellow2<=8,b00000101; end4 •主干道方向点亮顺序:always @ (posedge elk) //主干道 begin if(rst) beginlightl<=3f b001; numl<=greenl; end else if(hold) begin3 •初始状态设flightl<=3fbl00; numl<=greenl; end else if(en)begin if(!timl) begin case(statel)2fb00:begin numl<=greenl; statel<=2f b01; end2f b01: begin num 1 <=yellowl; statel<=2f bll; end 2'bll:b£gin numl<=redl; statel<=2f bl0; end2' b 10: begin num 1 <=yellow 1;statel<=2f b00; end default:lightl<=3,bl00; endcase endelse 〃主干道倒数计时 begin if(numl>0)if(numl[3:0]==0) begin numl[3:0]<=4,bl001; numl[7:4]<=numl[7:4]-l;lightl<=3,b001; lightlv=3'b010; lightl<=3f bl00;lightl<=3f b0X0;endelse numl[3:0]<=numl[3:0]-l;if(numl==l)timl<=0;endendelsebegin lightl<=3,b010; numl=2T b00; timl<=0; endend5 •支干道方向点亮顺序:always @ (posedge elk) //支干道beginif(rst)beginlight2v=3'bl00;num2<=red2;endelse if(hold)beginlight2v=3'bl00; num2<=red2; endelse if(en)beginif(!tim2)begintim2<=l;case(statel)2!b00:begin num2<=red2; state2<=2 f b01; end 2f b01: beginnum2<=yellow2; state2<=2f bll; end 2f bll: begin num2<=green2;state2<=2 *blO; end2' b 10: begin num2<=yellow2; state2<=2' bOO; end light2<=3f bl00; light2<=3,b010; light2<=3f b001; light2<=3f b010;default:light2<=3,bl00;endcaseendelse 〃支干道倒数计时beginif(num2>0)if(num2 [3:0]==0)beginnum2[3:0]<=4,bl001;num2 [7:4] <=num2 [7:4]-l; end else num2[3:0]<=num2[3:0] -1; if(num2==l)tim2<=0;end endelsebeginlight2<=3f b010; state2v=2'b00; tim2<=0;endend6 •数码管译码及显示:always @(posedge qclk) 〃定义上升沿触发进程begincount <= count +l T bl;end always @ (count) begincase(count)〃选择扫描显示数据2'dO : disp_dat <= numl[3:0]; 〃第一个数码管2'dl : disp_dat <= numl[7:4]; 〃第二个数码管2'd2 : disp_dat <= num2[3:0]; 〃第三个数码管2'd3 : disp_dat <= num2[7:4]; 〃第四default: disp_dat <= 0; endcaseendalways @ (count) begin case(count)数码管显示位2f d0 : dig<= 6P011111;//选择第一个数码 管显示 2f dl : dig<= 6P101111;//选择第二个数码 管显示 2P2 : dig <= 6P110111;//选择第三个数码 管显示2P3 : dig<= 6P111011;//选择第四个数码管显示default: dig<= 6^111111;endcase endalw 町s @ (disp_dat) begincase (disp_dat)〃七段译码个数码管〃选择4f b0000 : seg<= 7^0111111;〃显示” (T4'b0001 : seg <= 7^0000110; //显示T”4'b0010 : seg<= 7^1011011;〃显示”2”4f b0011 : seg<= 7^1001111;〃显示'3'4'b0100 : seg <=7^1100110; 〃显示”4”4^0101 : seg<= 7^1101101;〃显示”5”4^0110 : seg<= 7^1111101;〃显示”6”4'b0111 : seg<= 7^0000111;〃显示”7”4'bl000 : seg <= 7^1111111;4'bl001 seg <=g 曲*CW ulaion Kg LeC«l Hoti<Sxwiai Jlc XU*Sirrdat^rSatlioxiO Situldli (Brer w 釘| ◎ Ccrrc45boftRew!•... | 色 Ek.w* >•・ V«vef«r»sS>«ol*l i ・e ・od« TiaincI E *:.w7^1101111; // 显示”9”default:7P0111111;//不显示endcaseend endmodule三.仿真波形图IT - D;/t fic2/traffic - traffic 一 (Siaiolat ion Report - Sivulst ion曹 Z>Lo RdiQ vier "ojce, £s5i«rr-an« I«ol5 J>r 如生”seg<=1041kYiooiLin 1】10】1】 1】IO 】LomulOllll J10H1COO(01ICC010D 」I1UI0JumocjijuuvwuuuumifinwiRnjuinmfuuuiiifinnwuuuinjinmnjuu ififimuuuuuinnnjvuuuiJiG BOil Mil=3to 订“co 贩no»3 nca2 QClk r»t rst]38 <j>?TMoslcs Trr^Bar271邛 StatIcteivd 1205 m272MQ licl.il Q ltxhiz9:fl四.实物图。
东南大学电工电子实验中心实验报告课程名称:数字逻辑设计实践第四次实验实验名称:小型数字系统设计(红绿灯)院(系):吴健雄学院专业:电班姓名:李博文学号:61010116实验室: 实验组别:同组人员:实验时间:2011 年11 月28 日评定成绩:审阅教师:一、实验目的①综合前面所学的各项内容②掌握数字系统设计的流程和方法③培养复杂电路连接和调试技能二、实验原理(简要写出这个综合设计用到哪些实验原理)本实验使用74LS161级联实现模60的计数,并用74LS161进行状态计数,用74LS138进行状态译码,并使用一些门电路从而达到控制电路的效果。
本实验需要掌握74LS161、74LS138的具体使用方法和各端口在不同状态下对应的功能,以及通过表达式的化简从而使用尽量简单的门电路(尽量使用与非门和反相器)。
具体过程在实验内容中将进行详细的阐述。
三、实验内容实验要求(分基本要求和提高要求):基础要求:设计一个十字路口交通信号灯控制器,在每个入口处设置红,绿,黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,在绿灯转红灯之间,黄灯亮每次放行60秒,其中绿灯55秒,黄灯5秒,红灯60秒用4个数码管显示时间,其中2个显示东西方向时间,另2个显示南北方向时间,显示采用加计数模式用6个LED显示两个方向的红灯、绿灯和黄灯提高要求:分主次干道,主干道绿灯55秒,黄灯5秒,红灯30秒;次干道绿灯25秒,黄灯5秒,红灯60秒4个数码管显示,其中2个显示主干道方向的时间,另2个显示次干道时间原理框图为:2011/12/4东南大学电工电子实验中心12流程图(基础部分)可表示为:思路:若将两个方向看成一个整体,用一个状态机控制,则本电路应该有四个状态(此处仅讨论基础部分),状态表如下:状态南北东西S2 S1 R Y G 计数R Y G 计数0 0 0 1 0 060 0 0 1 551 0 1 1 0 0 0 1 0 52 1 0 0 0 1 55 1 0 060 3 1 1 0 1 0 5 1 0 0变思路,采用两个状态机。
数字电路课程设计总结报告题目:红绿灯控制器目录一. 设计任务书二. 设计框图及整机概述三. 各单元电路的设计方案及原理说明四. 调试过程及结果分析五. 设计、安装及调试中的体会六. 对本次课程设计的意见及建议七. 附录(包括: 整机逻辑电路图和元器件清单)一.设计任务书1.题目: 红绿灯控制器2.设计要求设计一个红绿灯控制器设计应具有以下功能基本设计要求: 设计一个红绿灯控制器控制器设计应具有以下功能(1)东西方向绿灯亮, 南北方向红灯亮。
.(2)东西方向黄灯亮, 南北方向红灯亮。
(3)东西方向红灯亮, 南北方向绿灯亮。
(4 ) 东西方向红灯亮, 南北方向黄灯亮。
要求有时间显示(顺数、逆数皆可), 时间自定。
(大于15秒以上), 可添加其他功能。
3.给定条件(1)、只能采用实验室提供的中小规模电路进行设计。
(不一定是实验用过的)十字路口交通示意图二. 设计框图及整机概述1、设计框图2、 整机概述该电路旨在模拟交通灯基本工作原理。
在预置数电路信号灯显示电路中设定南北方向红灯(47秒)、绿灯(38秒)、黄灯(9秒), 电路按照设计要求的状态工作。
三. 各单元电路的设计方案及原理说明1、 减法计数器本电路采用两片同步十进制加/减法计数器74LS190, 用串行进位方式构成一个百进制减法计数器, 再采用预置数的方法, 构成47进制的减法计数器。
如下图所示:2、 状态控制器交通灯工作流程如图所示主、支道上红、绿、黄信号灯的状态主要取决状态控制器的输出状态。
他们之间的关系见真值表所示。
对于信号灯的状态, “1”表示灯亮, “0”表示灯灭。
主道红灯亮,支道黄灯亮支道红灯亮,主道绿灯亮 0秒末 主道红灯亮,支道绿灯亮 支道红灯亮,主道绿灯亮 47秒支道红灯亮,主道黄灯亮 9秒主道红灯亮,支道绿灯亮 0秒末47秒 9秒信号灯信号真值表根据真值表, 可求出各信号灯的逻辑函数表达式为: R=Q2‘G=Q2Q1‘Y=Q2Q1R1=Q2G1=Q2‘Q1’Y1=Q2‘Q1所以交通灯的显示电路如图所示:3、数码管显示数码管从左到右依次接入计数器高位、低位4、减法计数器——状态控制器减法计数器0秒或者9秒的时候给状态控制器一个脉冲信号, 电路图如下:四.调试过程及结果分析调试过程由电路仿真软件实现。
交通信号灯控制系统设计实验报告设计目的:本设计旨在创建一个交通信号灯控制系统,该系统可以掌控红、绿、黄三种交通信号灯的工作,使其形成一种规律的交替、循环、节奏,使车辆和行人得以安全通行。
设计原理:在实际的交通灯系统中,通过交通灯控制器控制交通灯的工作。
一般采用计时器或微电脑控制器来完成,其中微电脑控制器可以方便地集成多种控制模式,并且灵活易于升级。
在本设计中,我们采用了基于Atmega16微控制器的交通信号灯控制系统。
该系统通过定时器中断、串口通信等技术来实现。
由于控制的是三个信号灯的交替,流程如下:绿灯亮:红灯和黄灯熄灭绿灯由亮到灭的时间为10秒黄灯亮:红灯和绿灯熄灭黄灯由亮到灭的时间为3秒红灯亮:绿灯和黄灯熄灭红灯由亮到灭的时间为7秒重复以上过程硬件设计:整个系统硬件设计包含ATmega16控制器、射频芯片、电源模块和4个灯组件。
ATmega16控制器采用DIP封装,作为主要的控制模块。
由于需要串口通信和遥控器控制,因此添加了RF24L01射频芯片。
该射频芯片可以很方便地实现无线通信和小型无线网络。
4个灯组件采用红、绿、黄三色LED灯与对应300Ω电阻并连。
电源模块采用5V稳压电源芯片和电容滤波,确保整个系统稳定可靠。
软件设计:通过ATmega16控制器来实现交通信号灯控制系统的功能。
控制器开始执行时进行初始化,然后进入主循环。
在主循环中,首先进行红灯亮的操作,接着在计时时间到达后执行黄灯亮的过程,然后执行绿灯亮的过程,再到计时时间到的时候执行红灯亮的过程。
每个灯持续时间的计时采用了定时器的方式实现,在亮灯过程中,每秒钟进行一次计数,到达相应的计数值后,切换到下一步灯的操作。
在RF24L01射频芯片的支持下,可以使用无线遥控器来对交通信号灯的控制进行远程控制。
在系统初始化完成后,通过串口通信对RF24L01进行初始化,然后进入控制循环。
在这个控制循环中,接收到遥控器的指令后,进行相应的控制操作,如开、关灯等。
51单片机红绿灯设计报告一、引言红绿灯是城市道路交通管理中非常重要的设备,它能够有效地控制车辆和行人的通行,维护交通秩序,提高交通效率。
本报告将介绍一种基于51单片机的红绿灯设计,利用单片机的强大功能,实现了智能化、自动化的红绿灯控制系统。
二、设计原理1.硬件设计本设计使用了51单片机,通过其IO口控制LED灯的亮灭。
红绿灯的控制通过三个IO口分别连接到红、黄、绿三个LED灯,通过控制这三个IO口的电平,实现红绿灯的切换。
2.软件设计设计中使用了C语言进行程序开发。
程序通过设置IO口的状态和延时函数,控制红绿灯的切换和延时时间。
三、电路设计1.电路图电路图给出了51单片机、LED灯和电流限制电阻之间的连接关系。
单片机的P1口连接到红、黄、绿三个LED灯上,通过改变P1口的电平,控制LED的亮灭。
2.电路元件说明-51单片机:中央处理器,负责控制整个系统的运行和信号的处理。
-LED灯:用于显示红、黄、绿三种不同的状态。
-电流限制电阻:用于限制电流大小,保护51单片机和LED灯。
四、程序设计程序设计中,通过无限循环实现红绿灯系统的连续运行,程序中设置了红绿灯切换的时间间隔和黄灯亮灭的时间间隔。
五、实验结果经过测试,本设计能够正常地实现红绿灯的切换,各种状态都能够正确显示。
红灯亮10秒,黄灯亮3秒,绿灯亮15秒,然后循环重复。
六、总结本设计利用51单片机的强大功能,实现了红绿灯的自动切换。
通过控制IO口的电平和延时函数,能够实现红绿灯的各种状态的切换。
该设计简单、实用、可靠,适用于城市交通管理中的红绿灯设备。
一、实验目的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)根据实际情况调整程序参数,确保系统稳定运行。
一、实验背景随着我国城市化进程的加快,交通问题日益突出,十字路口作为城市交通的重要组成部分,其红绿灯的设计与运行对交通秩序和效率具有重要影响。
为了提高学生的实际操作能力和创新能力,本次实验实训旨在让学生掌握红绿灯设计的基本原理和方法,并通过实际操作,设计并实现一个简易的红绿灯控制系统。
二、实验目的1. 理解红绿灯控制系统的基本原理和组成。
2. 掌握数字电路设计的基本方法和技巧。
3. 培养学生的实际操作能力和创新能力。
4. 提高学生的团队合作意识和沟通能力。
三、实验原理红绿灯控制系统主要由以下几个部分组成:1. 控制电路:负责产生控制信号,控制红绿灯的亮灭。
2. 显示电路:用于显示红绿灯的状态。
3. 时序电路:负责控制红绿灯的亮灭时间。
本次实验采用以下原理:1. 控制电路:利用74LS161级联实现模60的计数,并用74LS138进行状态译码,通过组合逻辑门电路实现控制信号的产生。
2. 显示电路:使用4个数码管显示时间,其中2个显示东西方向时间,另2个显示南北方向时间。
3. 时序电路:利用555定时器产生定时信号,控制红绿灯的亮灭时间。
四、实验内容1. 设计红绿灯控制电路:根据实验原理,设计控制电路,实现红绿灯的亮灭控制。
2. 设计显示电路:设计显示电路,实现红绿灯状态的实时显示。
3. 设计时序电路:设计时序电路,控制红绿灯的亮灭时间。
4. 硬件搭建:根据电路设计,搭建实验电路。
5. 调试与测试:对实验电路进行调试与测试,确保红绿灯控制系统正常运行。
五、实验步骤1. 分析实验原理,确定电路设计思路。
2. 设计控制电路,选择合适的集成电路和元件。
3. 设计显示电路,确定数码管和驱动电路。
4. 设计时序电路,选择合适的定时器和元件。
5. 根据电路设计,绘制电路图。
6. 搭建实验电路,连接各个元件。
7. 调试电路,确保红绿灯控制系统正常运行。
8. 测试电路,验证红绿灯控制系统的功能。
六、实验结果与分析1. 控制电路:通过设计,实现了红绿灯的亮灭控制,满足了实验要求。
一、实训背景随着城市化进程的加快,交通流量日益增大,交通信号灯作为交通管理的重要手段,对提高道路通行效率、保障交通安全具有重要意义。
为了提高学生对交通信号灯控制系统的理解,培养实际操作能力,本次实训选取了红黄绿灯控制系统作为研究对象。
二、实训目的1. 理解交通信号灯控制系统的基本原理和组成。
2. 掌握PLC编程方法,实现红黄绿灯的自动控制。
3. 培养学生动手实践能力和团队协作精神。
三、实训内容1. 交通信号灯控制系统原理及组成2. PLC编程软件及编程方法3. 红黄绿灯控制程序设计4. 系统调试与优化四、实训步骤1. 理论学习(1)了解交通信号灯控制系统的基本原理和组成,包括信号灯、控制器、传感器等。
(2)学习PLC编程软件的使用方法,掌握基本编程指令。
2. 系统搭建(1)根据实训要求,搭建红黄绿灯控制系统硬件平台。
(2)连接PLC与信号灯、传感器等设备,确保通信正常。
3. 程序设计(1)根据交通信号灯控制要求,设计控制程序。
(2)采用PLC编程软件编写程序,实现红黄绿灯的自动控制。
4. 系统调试(1)将编写好的程序下载到PLC中,进行系统调试。
(2)观察信号灯工作状态,确保红黄绿灯按照预设时间顺序点亮。
5. 系统优化(1)针对调试过程中出现的问题,对程序进行优化。
(2)提高系统响应速度,确保交通信号灯控制效果。
五、实训结果与分析1. 实训结果通过本次实训,我们成功搭建了红黄绿灯控制系统,实现了红黄绿灯的自动控制。
在实训过程中,我们掌握了PLC编程方法,提高了动手实践能力。
2. 实训分析(1)交通信号灯控制系统原理:交通信号灯控制系统主要由信号灯、控制器、传感器等组成。
信号灯负责显示交通信号,控制器负责控制信号灯的点亮顺序,传感器负责检测交通状况。
(2)PLC编程方法:PLC编程采用梯形图、指令列表、结构化文本等编程语言。
本次实训采用梯形图编程,通过编写程序实现红黄绿灯的自动控制。
(3)程序设计:根据交通信号灯控制要求,我们设计了控制程序。
一、实验目的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. 认识到交通信号灯控制系统在实际应用中的重要性,为以后从事相关领域的工作积累了经验。
设计红绿灯的实验报告1. 引言红绿灯是城市交通中非常重要的交通信号控制设备之一。
它通过红、黄、绿三种颜色灯光的不同组合,指挥车辆和行人在道路上的行进。
本实验旨在设计一个基本的红绿灯系统,并通过控制设备和电路来实现红绿灯的交替显示。
2. 实验方法2.1 材料准备- Arduino控制板- 红绿灯模块- 面包板及杜邦线- 电源线- 电阻、电容等元器件2.2 硬件连接首先,将Arduino控制板通过杜邦线与电脑连接,然后将红绿灯模块连接到控制板上的数字输出引脚。
具体的硬件连接方式如下:- 红灯接口:连接到Arduino控制板的数字输出引脚13- 黄灯接口:连接到Arduino控制板的数字输出引脚12- 绿灯接口:连接到Arduino控制板的数字输出引脚112.3 软件编程使用Arduino开发环境进行编程,编写代码实现红绿灯的交替显示。
代码应包括以下步骤:1. 设置引脚模式:将数字引脚13、12、11设置为输出模式。
2. 控制红灯亮起:将数字引脚13输出高电平,使红灯点亮。
3. 控制黄灯熄灭:将数字引脚12输出低电平,使黄灯熄灭。
4. 控制绿灯熄灭:将数字引脚11输出低电平,使绿灯熄灭。
5. 控制红灯熄灭:将数字引脚13输出低电平,使红灯熄灭。
6. 控制黄灯亮起:将数字引脚12输出高电平,使黄灯点亮。
7. 控制绿灯熄灭:将数字引脚11输出低电平,使绿灯熄灭。
8. 控制红灯熄灭:将数字引脚13输出低电平,使红灯熄灭。
9. 控制黄灯熄灭:将数字引脚12输出低电平,使黄灯熄灭。
10. 控制绿灯亮起:将数字引脚11输出高电平,使绿灯点亮。
3. 实验结果与分析在完成硬件连接和编写代码后,将程序上传到Arduino控制板上。
经过实验,观察到在运行程序的过程中,红、黄、绿三种颜色的灯光按照交通信号灯的规律进行交替显示,实现了红绿灯的基本功能。
4. 实验总结通过本次实验,我们成功设计出了一个基本的红绿灯系统,并通过控制设备和电路实现了红绿灯的交替显示。
一.任务设计设计一个基于单片机的交通灯信号控制器。
已知东、西、南、北四个方向各有红黄绿色三个灯,在东西方向有两个数码管,在南北方向也有两个数码管。
要求交通灯按照表1进行显示和定时切换,并要求在数码管上分别倒计时显示东西、南北方向各状态的剩余时间。
表1 交通灯的状态切换表二.系统设计(1)任务分析与整体设计思路任务要求实现的功能主要包括计时功能、动态扫描以及状态的切换等几部分。
计时功能:要实现计时功能则需要使用定时器来计时,通过设置定时器的初始值来控制溢出中断的时间间隔,再利用一个变量记录定时器溢出的次数,达到定时 1 秒中的功能。
当计时每到1 秒钟后,东西、南北信号灯各状态的暂存剩余时间的变量减1。
当暂存剩余时间的变量减到0 时,切换到下一个状态,同时将下一个状态的初始的倒计时值装载到计时变量中。
开始下一个状态,如此循环重复执行。
动态扫描:需要使用4 个数码管分别显示东西、南北的倒计时数字,将暂存各状态剩余时间的数字从变量中提取出“十位”和“个位”,用动态扫描的方式在数码管中显示。
整个程序依据定时器的溢出数来计时,每计时1S则相应状态的剩余时间减1,一直减到0时触发下一个状态的开始。
选用MCS51 系列AT89S52 单片机作为微控制器,选择两个四联的共阴极数码管组成8位显示模块,由于AT89S52 单片机驱动能力有限,采用两片74HC244 实现总线的驱动,一个74HC244完成共阴极数码管位控线的控制和驱动,另一个74HC244完成数码管的7 段码输出,在7段码输出口上各串联一个100 欧姆的电阻对7 段数码管限流。
用P3 口的P3.0-P3.5 完成发光二极管的控制,实现交通灯信号的显示,每个发光二极管串联500欧姆电阻起限流作用。
硬件电路原理图如图3-5 所示。
图3-5(3)程序设计思路,单片机资源分配以及程序流程①单片机资源分配单片机P3 口的P3.0-P3.1 引脚用作输出,控制发光二极管的显示。
目录一、设计背景 (2)二、任务和要求 (2)三、总体设计方案 (3)1.状态设置 (3)2.系统框图 (3)a.系统总框图 (3)b.系统状态转换框图 (4)四、单元电路设计 (4)1.倒计时电路(定时电路) (4)2.状态控制器(主控电路) (5)3.交通灯显示电路、 (5)4.数码管显示 (6)5.置数变换电路 (6)6.流量控制电路 (7)五、总电路原理图 (8)六、总电路图 (9)七、原件清单 (10)八、电路连接与调试 (10)九、设计总结 (10)十、参考文献 (11)一、 设计背景在现代城市中,人口和汽车日益增长,市区交通也日益拥挤,人们的安全问题也日益重要。
因此,红绿交通信号灯成为交管部门管理交通的重要工具之一。
交通信号灯常用与交叉路口,用来控制车的流量,提高交叉口车辆的通行能力,减少交通事故。
有了交通灯人们的安全出行有了很大的保障。
二、任务和要求红绿灯交通信号系统外观示意图如图1所示。
1.在十字路口的两个方向上各设一组红黄绿灯,显示顺序为其中一方向是绿灯、黄灯、红灯;另一方向是红灯、绿灯、黄灯。
2.设置一组数码管,以倒计时的方式显示允许通行或禁止通行时间,其中一个方向上(主干道)绿灯亮的时间是45s ,另一个方向上(支干到)绿灯亮的时间是25s ,黄灯亮的的时间都是5s 。
3.要求加装一流量控制电路,使电路拥有流量控制功能,既:当一条路上无车,另一条路上有车时,这条路上的绿灯长亮,另一条路上红灯长亮。
三、总体设计方案1.状态设置状态1(00):主车道的绿灯亮,车道,人行道通行;南北方向车道的红灯亮,车道,人行道禁止通行。
状态2(01):主车道的黄灯亮,车道,人行道缓行;南北方向车道的红灯亮,车道,人行道禁止通行;状态3(10):支车道的红灯亮,车道,人行道禁止通行;南北方向车道的绿灯亮,车道,人行道通行;状态4(11):支车道的红灯亮,车道,人行道禁止通行;南北方向车的黄灯亮,车道,人行道缓行;2.系统框图a.系统总框图流量控制电路b.系统状态转换框图图2 工作流程图四、单元电路设计1.倒计时电路(定时电路)倒计时器由两位4位十进制可逆同步计数器(双时钟)74LS192、一个非门和一或门构成。
一、实训背景随着我国经济的快速发展,城市交通拥堵问题日益严重。
为提高城市交通效率,保障人民出行安全,红绿灯控制系统在交通管理中发挥着至关重要的作用。
本实训旨在通过学习红绿灯控制器的设计与调试,掌握交通信号灯系统的基本原理和应用技术。
二、实训目的1. 理解红绿灯控制系统的基本组成和原理;2. 掌握红绿灯控制器的设计方法;3. 熟悉红绿灯控制器的调试与维护;4. 培养实际操作能力,提高团队合作意识。
三、实训内容1. 红绿灯控制系统概述红绿灯控制系统主要由以下几个部分组成:(1)信号灯:包括红灯、黄灯、绿灯,用于指示交通参与者通行状态;(2)控制器:负责信号灯的控制,包括定时、计数、逻辑判断等功能;(3)传感器:用于检测交通流量,如车辆检测器、行人检测器等;(4)执行器:将控制信号转换为实际动作,如信号灯、道闸等。
2. 红绿灯控制器设计(1)硬件设计:选用合适的单片机作为控制器核心,设计信号灯、传感器、执行器等外围电路。
本实训采用STC89C52单片机作为控制器核心,设计信号灯、车辆检测器、行人检测器等外围电路。
(2)软件设计:编写控制器程序,实现信号灯控制、传感器数据采集、逻辑判断等功能。
程序采用C语言编写,主要包括主函数、中断服务程序、传感器数据处理、信号灯控制等模块。
3. 红绿灯控制器调试(1)硬件调试:检查电路连接是否正确,排除硬件故障;(2)软件调试:检查程序运行是否正常,调整参数,优化程序;(3)系统联调:将控制器与信号灯、传感器、执行器等联调,验证系统功能。
4. 红绿灯控制器维护(1)定期检查电路连接,确保信号灯、传感器、执行器等设备正常工作;(2)检查程序运行情况,及时修复故障;(3)记录系统运行数据,分析交通流量,调整信号灯控制策略。
四、实训过程1. 学习红绿灯控制系统基本原理,了解系统组成和功能;2. 设计红绿灯控制器硬件电路,绘制原理图,焊接电路板;3. 编写控制器程序,实现信号灯控制、传感器数据采集、逻辑判断等功能;4. 进行硬件调试,排除硬件故障;5. 进行软件调试,优化程序;6. 进行系统联调,验证系统功能;7. 进行系统维护,记录运行数据,分析交通流量。
《数字逻辑电路设计》课程设计总 结 报 告题目:红绿灯控制器指导教师:设计人员(学号):班级:日期:一、 设计任务书1、题目:红绿灯控制器2、设计要求:设计一个红绿灯控制器设计应具有以下功能:(1)东西方向绿灯亮,南北方向红灯亮。
.(2)东西方向黄灯亮,南北方向红灯亮。
(3)东西方向红灯亮,南北方向绿灯亮。
(4 ) 东西方向红灯亮,南北方向黄灯亮。
要求有时间显示(顺数、逆数皆可),红灯时间为学号后两位,红灯时间=绿灯时间+黄灯时间(≤10s )3、给定条件:只能采用实验室提供的中小规模电路进行设计。
十字路口交通示意图二、设计框图及整机概述三、各单元电路的设计方案和原理说明1、加法计数器此电路实现的红灯显示22秒(即从0~21s),绿灯=17秒(即从0~16s),黄灯=5秒(即从17s~21s)。
用两片的74LS160设计成22进制的加法计数器。
给十位的计数器使其计数加1。
当计数计成0010 0001状态时,需产生一个脉冲与Q B相与并取反后连接至两片74LS160使计数的两片74LS160置零。
将Q B2的置零端,即可实现。
2、信号灯转换器(1)当数码管显示为0s~16s时,东西方向绿灯亮,南北方向红灯亮;(2)当数码管显示为17s~21s时,东西方向黄灯亮,南北方向红灯亮。
(3)接着数码管再显示为0s~16s时,东西方向红灯亮,南北方向绿灯亮。
(4)数码管再显示为17s~21s时,东西方向红灯亮,南北方向黄灯亮。
故,当计数计到0001 0110(16s)和0010 0001(21s)时分别需要产生一个脉冲给控制指示灯的74LS160芯片使其计数加1。
R2=B , Y2=B’A , G2=B’A’四、调试过程及结果分析1、计数器部分计数器为22进制,从0至21,调试结果与原理相同。
2、信号灯控制部分当数码管显示为0s~16s时,R1,G2亮;当数码管显示为17s~21s时,R1,Y2亮。
接着数码管再显示为0s~16s时,R2,G1亮;数码管再显示为17s~21s时,R2,Y1亮。
交通信号灯控制器课程设计报告交通信号灯控制器课程报告一.设计要求1、设计一个交通信号灯控制器,由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外。
2、主、支干道交替允许通行,主干道每次放行45秒,支干道每次放行25秒,设立45秒、25秒计时、显示电路。
3、在每次由绿灯亮到红灯亮的转换过程中,要亮5秒黄灯作为过渡。
提示:1、选择1HZ时钟脉冲作为系统时钟。
2、45秒、25秒、5秒定时信号用倒计时,计时起始信号由主控电路给出,每当计满所需时间,计数器清零,由主控电路启、闭三色信号灯或启动另一计时电路。
二.设计思路本设计针对一条主干道和一条支干道汇合成的十字路口,进行南北和东西直行情况下交通灯控制。
根据交通灯的亮的规则,在初始状态下四个方向的都为红灯亮启,进入正常工作状态后,当主干道上绿灯亮时,支干道上红灯亮,持续45S后,主干道和支干道上的黄灯都亮启,持续5S后,主干道上红灯亮启,支干道上绿灯亮启持续25S,之后主干道和支干道上的黄灯都亮启5s,一个循环完成。
循环往复的执行这个过程。
设计中用两组红黄绿LED模拟两个方向上的交通灯,用4个7段数码管分别显示两个方向上的交通灯剩余时间,控制时钟由试验箱上频率信号提供。
根据状态机的设计规范,本次设计了四个状态之间的循环转化,其真值表及状态转化图如下所示目前状态下一状态输出Light1 Light2S0=00 S1=01 001 100 S1=01 S2=10 010 010 S2=10 S3=11 100 001 S3=11 S0=00 010 010S0S3 S1S2三.程序说明1.各输入输出变量说明:clk:计数时钟qclk:扫描显示时钟rst:复位信号,当rst为1时,控制器和计数器回到初始状态en:使能信号,当en为1时控制器开始工作,en为0时hold:特殊情况控制信号,hold为1时,主、支干道方向无条件显示为红灯seg:用于数码管的译码输出dig:用于选择显示的数码管(片选)num1:用于主干道方向灯的时间显示num2:用于支干道方向灯的时间显示light1:控制主干道方向四盏灯的亮灭,其中,light1[0]~light1[2]分别控制主干道方向的绿灯、黄灯和红灯light2:控制支干道方向四盏灯的亮灭,其中,light2[0]~light2[2]分别控制支干道方向的绿灯、黄灯和红灯2.输入输出及中间变量设置:moduletraffic(en,clk,qclk,rst,hold,num1,num2,light1,lig ht2,seg,dig;input en,clk,qclk,rst,hold;output [5:0]dig;output[7:0] num1,num2;output[6:0]seg;output[2:0]light1,light2;reg tim1,tim2;reg[3:0]disp_dat;reg[6:0]seg;reg[7:0]num1,num2;reg[7:0]red1,red2,green1,green2,yellow1,yellow2 ;reg[5:0]dig;reg [1:0]count;reg[1:0]state1,state2;reg[2:0]light1,light2;3.初始状态设置:always @(en)if(!en)begingreen1<=8'b01000101;red1<=8'b00100101;yellow1<=8'b00000101; green2<=8'b00100101;red2<=8'b01000101;yellow2<=8'b00000101;end4.主干道方向点亮顺序:always@(posedge clk) //主干道beginif(rst)beginlight1<=3'b001;num1<=green1;endelse if(hold)beginlight1<=3'b100;num1<=green1;endelse if(en)beginif(!tim1)begintim1<=1;case(state1)2'b00:begin num1<=green1; light1<=3'b001; state1<=2'b01; end2'b01:begin num1<=yellow1; light1<=3'b010; state1<=2'b11; end2'b11:begin num1<=red1; light1<=3'b100; state1<=2'b10; end2'b10:begin num1<=yellow1; light1<=3'b010; state1<=2'b00; enddefault:light1<=3'b100;endcaseendelse //主干道倒数计时beginif(num1>0)if(num1[3:0]==0)beginnum1[3:0]<=4'b1001;num1[7:4]<=num1[7:4]-1;endelse num1[3:0]<=num1[3:0]-1;if(num1==1)tim1<=0;endendelsebeginlight1<=3'b010;num1=2'b00;tim1<=0;endend5.支干道方向点亮顺序:always@(posedge clk) //支干道beginif(rst)beginlight2<=3'b100;num2<=red2;endelse if(hold)beginlight2<=3'b100;num2<=red2;endelse if(en)beginif(!tim2)begintim2<=1;case(state1)2'b00:begin num2<=red2; light2<=3'b100; state2<=2'b01; end2'b01:begin num2<=yellow2; light2<=3'b010; state2<=2'b11; end2'b11:begin num2<=green2; light2<=3'b001; state2<=2'b10;end2'b10:begin num2<=yellow2; light2<=3'b010; state2<=2'b00;enddefault:light2<=3'b100;endcaseendelse //支干道倒数计时beginif(num2>0)if(num2[3:0]==0)beginnum2[3:0]<=4'b1001;num2[7:4]<=num2[7:4]-1;endelse num2[3:0]<=num2[3:0]-1;if(num2==1)tim2<=0;endendelsebeginlight2<=3'b010;state2<=2'b00;tim2<=0;endend6.数码管译码及显示:always @(posedge qclk) //定义上升沿触发进程begincount <= count +1'b1;endalways @( count)begincase(count) //选择扫描显示数据2'd0 : disp_dat <= num1[3:0]; //第一个数码管2'd1 : disp_dat <= num1[7:4]; //第二个数码管2'd2 : disp_dat <= num2[3:0]; //第三个数码管2'd3 : disp_dat <= num2[7:4]; //第四个数码管default : disp_dat <= 0;endcaseendalways @(count)begin case(count) //选择数码管显示位2'd0 : dig<= 6'b011111;//选择第一个数码管显示2'd1 : dig<= 6'b101111;//选择第二个数码管显示2'd2 : dig <= 6'b110111;//选择第三个数码管显示2'd3 : dig<= 6'b111011;//选择第四个数码管显示default : dig<= 6'b111111;endcaseendalways @(disp_dat)begincase (disp_dat) //七段译码4'b0000 : seg<= 7'b0111111; //显示"0"4'b0001 : seg <= 7'b0000110; //显示"1"4'b0010 : seg<= 7'b1011011; //显示"2"4'b0011 : seg<= 7'b1001111; //显示"3"4'b0100 : seg <= 7'b1100110; //显示"4"4'b0101 : seg<= 7'b1101101; //显示"5"4'b0110 : seg<= 7'b1111101; //显示"6"4'b0111 : seg<= 7'b0000111; //显示"7"4'b1000 : seg <= 7'b1111111; //显示"8"4'b1001 : seg <=7'b1101111; //显示"9"default: seg<= 7'b0111111;//不显示endcaseendendmodule三.仿真波形图四.实物图。
红绿灯单片机设计报告1.引言红绿灯是道路交通管理中非常重要的一个部分,在城市交通中起到了引导车辆和行人安全过马路的作用。
本报告将描述我们设计并实现的基于单片机的红绿灯控制系统。
2.设计目标我们的设计目标是通过单片机控制红绿灯的亮灭,以实现道路交通的规范和安全。
具体来说,我们希望达到以下几点目标:1. 实现灯光状态的自动切换,模拟真实红绿灯的工作原理;2. 设计可调节的时间参数,以便根据交通流量的不同调整红绿灯的切换时间;3. 添加手动控制功能,以便交警在需要时手动控制红绿灯。
3.设计思路我们采用了基于单片机的设计方案,通过控制单片机的输入输出口使得灯光的状态切换符合规定的时间间隔。
具体的设计思路如下:1. 硬件设计:使用单片机作为控制中心,与红绿灯的LED灯和传感器进行连接。
利用传感器检测车辆和行人的情况,通过单片机控制灯光的亮灭。
2. 软件设计:使用C语言编程,通过单片机的输入输出口与红绿灯的LED灯进行控制。
设置计时器和中断来实现灯光状态的自动切换,同时通过检测传感器状态实现手动控制功能。
4.实施与测试4.1 硬件实施我们采用了Arduino Uno单片机作为控制中心,连接了红绿灯的LED 灯和传感器。
通过面包板和杜邦线进行连接。
将红绿灯的LED灯连接到单片机的输出口,传感器连接到单片机的输入口。
4.2 软件实施我们使用Arduino开发环境进行程序编写和烧录。
设计了以下几个关键模块的程序:1. 初始化模块:设置输入输出口和计时器的初始化参数;2. 灯光控制模块:根据设定的时间参数控制红绿灯的亮灭;3. 传感器检测模块:检测输入口传感器的状态,根据情况进行手动控制或自动切换;4. 主循环模块:通过轮询的方式检测传感器状态和计时器中断,根据情况调用相应的模块。
4.3 测试与效果我们进行了一系列的测试,包括自动切换时间的调节、传感器检测功能的测试和手动控制功能的测试。
经过测试,我们的系统能够根据设定的时间参数自动切换红绿灯的状态,并能够根据传感器检测到的情况进行手动控制。
红绿灯设计实验报告阶段1. 实验目的本实验旨在设计一套可靠的红绿灯系统,通过合理的时间间隔安排和状态切换策略,达到最佳的交通流量控制效果。
2. 设计内容根据实验要求,本次设计的红绿灯系统应包含以下几个要素:- 红绿灯状态(红灯、黄灯、绿灯)- 状态切换时间间隔(红灯倒计时、黄灯倒计时、绿灯倒计时)- 切换策略(如何根据当前交通情况或算法来调整状态切换时间)3. 实验方法3.1 硬件设置本次实验中,我们使用了以下硬件设备:- 一台计算机- LED 灯(代表红、黄、绿灯)3.2 软件设计我们使用Python 语言来设计红绿灯系统。
具体步骤如下:3.2.1 导入必要的库pythonimport timeimport random3.2.2 定义红绿灯状态和时间间隔pythonRED = 0YELLOW = 1GREEN = 2RED_TIME = 10YELLOW_TIME = 3GREEN_TIME = 153.2.3 实现状态切换逻辑pythondef switch_light():light = GREENwhile True:if light == GREEN:print("绿灯亮起")time.sleep(GREEN_TIME)light = YELLOWelif light == YELLOW:print("黄灯亮起")time.sleep(YELLOW_TIME)light = REDelse:print("红灯亮起")time.sleep(RED_TIME)light = GREEN3.2.4 实现模拟交通情况判断在实际交通情况中,红绿灯的切换不仅仅是定时的,还需考虑实际情况,如交通流量、行人过马路等。
为了模拟这种情况,我们引入一个随机数,根据随机数的大小来调整绿灯时间。
pythondef adjust_time():if random.randint(1, 10) <= 6:return GREEN_TIME + random.randint(-3, 3)else:return GREEN_TIME + random.randint(1, 5)3.2.5 主程序入口pythonif __name__ == "__main__":switch_light()4. 实验结果通过实验设计的红绿灯系统,我们成功实现了红灯、黄灯和绿灯的状态切换,并且能够根据交通情况调整绿灯时间。
“数字电路”课程设计报告授课学期2012 学年至2013 学年第二学期学院职业技术师范学院专业电子信息工程学号201113201038姓名冯巧华任课教师交稿日期成绩阅读教师签名日期广西师范大学学工部(处)制手控行车红绿灯指示器设计报告一、课程设计要求图5-45是它的电路图,先做一个红绿灯灯架,将红绿发光二极管固定在灯架上,按图连接后,只要向下按动按键,则红灯变为绿灯,手一离开便又成为红灯。
图5-45二、课程设计与方案首先根据电路图使用仿真软件进行功能仿真后,再进行PCB的设计和制作。
搜索到555芯片的内部结构图如图所示内部C1和C2为两个电压比较器,当U+ > U-时,输出高电平,否则输出低电平。
两个与非门组成RS触发器,R端口为外部进行置零的复位端。
三个阻止均为5千欧的电阻构成分压器。
晶体管TD构成开关,接在Q非端的反相器为输出缓冲器,其作用是提高定时器的带负载能力和隔离负载对定时器的影响。
555定时器的基本功能如下表所示方案设计(1)硬件:NE555一片,两个10K电阻,一个330Ω电阻,一个四角开关,红绿灯各一个,排针以及引线。
(2)电源:使用3V或者5V的直流稳压电源。
(3)实验结果:开关闭合断开变化红灯变绿灯红灯(4)元器件清单序号规格清单单位数量1 NE555 1 12 红绿LED 各一个 23 33 电阻10K两个 333Ω一个4 四角开关 1 15 排针及引线 2 2NE555的特点:1.只需简单的电阻器、电容器,即可完成特定的振荡延时作用。
其延时范围极广,可由几微秒至几小时之久。
2.它的操作电源范围极大,可与TTL,CMOS等逻辑电路配合,也就是它的输出电平及输入触发电平,均能与这些系列逻辑电路的高、低电平匹配。
3.其输出端的供给电流大,可直接推动多种自动控制的负载。
4.它的计时精确度高、温度稳定度佳,且价格便宜。
焊接和调试1、用热转印纸和单面覆铜板制作好电路板并检查印刷电路板有无短路、断路等问题。
“数字电路”课程设计
报告
授课学期2012 学年至2013 学年
第二学期
学院职业技术师范学院
专业电子信息工程
学号201113201038
姓名冯巧华
任课教师
交稿日期
成绩
阅读教师签名
日期
广西师范大学学工部(处)制
手控行车红绿灯指示器设计报告
一、课程设计要求
图5-45是它的电路图,先做一个红绿灯灯架,将红绿发光二极管固定在灯架上,按图连接后,只要向下按动按键,则红灯变为绿灯,手一离开便又成为红灯。
图5-45
二、课程设计与方案
首先根据电路图使用仿真软件进行功能仿真后,再进行PCB的设计和制作。
搜索到555芯片的内部结构图如图所示
内部C1和C2为两个电压比较器,当U+ > U-时,输出高电平,否则输出低电平。
两个与非门组成RS触发器,R端口为外部进行置零的复位端。
三个阻止均为5千欧的电阻构成分压器。
晶体管TD构成开关,接在Q非端的反相器为输出缓冲器,其作用是提高定时器的带负载能力和隔离负载对定时器的影响。
555定时器的基本功能如下表所示
方案设计
(1)硬件:NE555一片,两个10K电阻,一个330Ω电阻,一个四角开关,红绿灯各一个,排针以及引线。
(2)电源:使用3V或者5V的直流稳压电源。
(3)实验结果:
开关闭合断开
变化红灯变绿灯红灯
(4)元器件清单
序号规格清单单位数量
1 NE555 1 1
2 红绿LED 各一个 2
3 3
3 电阻10K两个 333
Ω一个
4 四角开关 1 1
5 排针及引线 2 2
NE555的特点:
1.只需简单的电阻器、电容器,即可完成特定的振荡延时作用。
其延时范围极广,可由几微秒至几小时之久。
2.它的操作电源范围极大,可与TTL,CMOS等逻辑电路配合,也就是它的输出电平及输入触发电平,均能与这些系列逻辑电路的高、低电平匹配。
3.其输出端的供给电流大,可直接推动多种自动控制的负载。
4.它的计时精确度高、温度稳定度佳,且价格便宜。
焊接和调试
1、用热转印纸和单面覆铜板制作好电路板并检查印刷电路板有无短路、断路等问题。
2.元件的安装和焊接:由于以前做过了一些元件的焊接,有了前面的经验,对这次焊接没有什么大的问题,在焊接时先要把电烙铁焊接处的金属表面打磨光洁(千万不要用小刀去刮),不然会影响其导电性,而且它对锡分子的吸附能力也不强。
还有就是在焊接电阻时注意将色环方向保持一致,有极性的元器件一定要小心,极性不能错。
在焊接时应该将电烙铁放在所焊的电路板上的管脚去先预热,然后将焊锡从下面(贴着电路板)放到管脚去融化,动作要快,焊锡不要太多。
我在焊接时,刚开始还是没有把握的很好,无法做到全部焊料适量,有些不足,有些过多,从而导致焊接的质量有点勉强。
但后来经老师指导后,焊的就很不错,速度也提升了很多。
焊完了之后要将引过长的元器件的引脚剪去。
最后焊接完后对元件进行检查和整理。
看看有没有元件插错,或者漏焊的,元器件的极性是否正确。
调试过程遇到的问题
1、完成后接上+3V直流电源发现LED亮度不够,经过仔细检查后发现电阻太大。
2、更换电轴,通过减小阻值,亮度加强。
三、心得与体会
这次课程设计在电路板焊接是遇到了点困难,不过学到了点知识。
使用烙铁时,烙铁的温度最好控制在200~300℃之间,因此焊接一般的电子元器件常用20W 的内热式电烙铁(对初学者)。
新买的电烙铁,使用之前要“上锡”,方法是:用磨砂或锉刀事先把烙铁头打磨干净,接上电源,待烙铁头温度一旦高过焊锡熔点时,再用它去蘸带松香的焊锡丝,烙铁头表面就会附上一层光亮的锡,烙铁就能使用了。
没有上过锡的烙铁,焊接时不会吃锡,难以进行焊接。
烙铁使用时间长了或烙铁头温度过高,烙铁头会氧化,造成烙铁“烧死”而蘸不上锡,也难于焊接元件到电路板上。
烙铁头应保持清洁,不清洁的局部区域也蘸不上锡,还会很快氧化,日久之后常造成烙铁头长时间处于待焊状态,温升过高,也会造成烙铁头“烧死”。
所以焊接时一定要作充分准备,尽量缩短铁的工作(通电)的时间,一旦不焊接应立刻拔去烙铁电源。
在这次的实习中虽然遇到很多困难,但在老师的耐心讲解和同学的热心帮助下,问题也就得到解决了,非常感谢老师和同学们的帮助。
这次虽然做的不是非常好,但是看到自己亲手做出来的东西还是很高兴的。
这次实习收获非常大!感触很深!。