课程设计任务书14/15学年第一学期学院:计算机及控制工程学院专业:电气工程及其自动化学生姓名:学号:课程设计题目:智能路灯控制系统的设计起迄日期:1月5 日 ~ 1月 16 日课程设计地点:专业教室指导教师:余红英李静学科部副主任:刘天野下达任务书日期: 2015 年 1月 5日课程设计任务书课程设计任务书目录1 绪论 (1)1.1 AT89C52简介11.2 Proteus软件介绍11.3 Keil C51软件介绍22 总体设计32.1 设计要求32.2 设计思路32.3 声检测模块32.4 光检测模块43 硬件接线图53.1 最小系统53.2 路灯设计电路63.3 行人检测电路63.4 光控制电路73.5 手动控制电路73.6 智能路灯电路设计原理图及说明 (8)4 流程图94.1 主流程图94.2 紧急情况流程图105 软件仿真115.1 软件仿真截图115.2 软件仿真结果分析136 总结14附录 A 程序清单 (15)附录 B 软件仿真图17参考文献181 绪论1.1 AT89C52简介AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元.图1.1 AT89C52引脚图1.2 Proteus软件介绍:英国Labcenter公司推出的Proteus软件是一款极好的单片机应用开发平台,它以其特有的虚拟仿真技术很好地解决了单片机及其外围电路的设计和协同仿真问题,可以在没有单片机实际硬件的条件下,利用PC以虚拟仿真方式实现单片机系统的软、硬件同步仿真调试。
Proteus软件涵盖了PIC、AVR、MCS8051、68HC11、ARM等微处理器模型,以及多种常用电子元器件,包括74系列、CMOS 4000系列集成电路、A/D和D/A转换器、键盘、LCD显示器、LED显示器,还提供示波器、逻辑分析仪、通信终端、电压/电流表等各种虚拟仪表,这些都可以直接用于仿真设计,极大地提高了设计效率和设计水平。
Proteus软件已有20多年的历史,在国外应用较为普遍,尤其在教育界的口碑极佳。
近年来Proteus软件被引入国内,在多所高等工科院校中得到成功应用。
在单片机教学中采用Proteus软件,使单片机的学习过程变得直观形象,可以直接在基于原理图的虚拟模型上进行编程,并实现源码级的程序仿真调试,如有显示及输出,还能看到程序运行后的输出效果,配合各种虚拟仪表来展现整个单片机系统的运行过程,很好地解决了长期以来困扰单片机教学过程中软件和硬件无法很好结合的难题。
在Proteus软件平台上学习单片机知识,比以往单纯学习书本知识更易于接受,以原理图虚拟模型进行程序仿真调试,更易于提高单片机编程能力,还可以通过绘制和修改原理电路图增加很多实践经验。
1.3 Keil C51软件介绍:Keil C51是美国Keil Software公司出品的51系列兼容单片机C 语言软件开发系统,及汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。
Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。
运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。
Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。
另外Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。
在开发大型软件时更能体现高级语言的优势。
C51工具包的整体结构,其中uVision及Ishell 分别是C51 for Windows和for Dos的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。
开发人员可用IDE本身或其它编辑器编辑C或汇编源文件。
然后分别由C51及A51编译器编译生成目标文件(.OBJ)。
目标文件可由LIB51创建生成库文件,也可以及库文件一起经L51连接定位生成绝对目标文件(.ABS)。
ABS文件由OH51转换成标准的Hex文件,以供调试器dScope51或tScope51使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM中。
2 总体设计2.1 设计要求设计一个由计算机控制的智能路灯控制器,可以对室内外的光强度进行检测,如果外界灯光过低或是声音低到某一分贝时、智能路灯自行进行调节。
要做到“随需而控”,天黑时只有路上有人或车辆通过时路灯才点亮,且可根据行人和车辆通过的声音智能地打开前方一定数量的路灯,同时熄灭经过路段的路灯。
2.2 设计思路本次设计的题目是智能路灯控制系统的设计。
要求实现以路灯为控制对象,完成软件和硬件的设计,利用按键模拟声敏传感器,以手动和行人控制两种方式实现路灯的亮灭功能。
其中硬件电路部分主要包括以下部分:单片机最小系统、路灯控制电路部分、行人检测电路部分、光检测电路部分、声检测电路部分。
图2.1工作原理图图2.2系统总框图2.3声音检测模块声音传感器的作用相当于一个话筒(麦克风)。
它用来接收声波,显示声音的振动图象。
该传感器内置一个对声音敏感的电容式驻极体话筒。
声波使话筒内的驻极体薄膜振动,导致电容的变化,而产生及之对应变化的微小电压。
这一电压随后被转化成0-5V的电压,输入单片机。
声音传感器使用的是及人类耳朵相似具有频率反应的电麦克风。
电路把信号放大并把信号传送给电讯接口。
实际上,信号通过2条不同的线送达数据采集器。
一个信号通过低电压输入线,在 2.5V 左右,另一信号通过电压输入线,在0V左右。
声音传感器的应用:一般说有二种,一种是根据设定声音信号阀值判定声音的有无。
第二种难一点的就是根据多个声音传感器来判定声音的方位。
本设计利用按键模拟声音模块,声音模块对外界环境声音强度最为敏感,模块在环境声音强度达不到阈值时,输出高电平,当外界声音强度超过设定阈值时,输出低电平。
2.4 光检测模块图2.3光敏电阻工作原理图光敏传感器是最常见的传感器之一,它的种类繁多,主要有:光电管、光电倍增管、光敏电阻、光敏三极管、太阳能电池、红外线传感器、紫外线传感器、光纤式光电传感器、色彩传感器、CCD和CMOS 图像传感器等。
它的敏感波长在可见光波长附近,包括红外线波长和紫外线波长。
本设计采用光敏电阻。
光敏电阻传感器对外界光线最敏感,用来检测外界周围环境光线的亮度,触发单片机,模块在光线不足时输出低电平,光线亮度超过设定值时输出高电平。
利用光敏电阻传感器输出信号干净,波形好,驱动能力强。
本设计中利用光敏电阻及一普通电阻串联,当白天有光照时,电阻很小,输出高电平,夜晚无光照时,电阻增大,输出低电平。
3 硬件接线图3.1最小系统图3.1 系统硬件接线图晶振电路:单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。
其中XYAL1接外部晶体的一个引脚,在单片机内部,它是一个反向放大器的输入端。
若采用外部振荡器,该引脚接收振荡器的信号,即八次信号直接接到内部时钟发生器的输入端;XTAL2节外部晶体的另一端,在单片机内部接到反向放大器的输入端,当采用外接晶体振荡器时,此引脚可以不接。
复位电路:复位操作有两种基本形式:一种是上电复位,另一种是按键复位。
按键复位具有上电复位功能外,若要复位,只要按图中的RESET键,电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。
上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。
上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。
RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。
3.2路灯电路设计图3.2路灯控制电路接线图此部分由单片机、LED显示灯、电阻(470)组成。
连接LED显示灯时,注意其极性及连接方式,连接方式包括共阳极连接和共阴极连接两种方法,而在本电路中要采用共阳极连接的方法。
连接单片机时,要注意将LED显示灯及P2口的连接方式,即按照顺序依次从P2.0~P2.7一一对应连接。
在进行路灯控制程序设计的时候,主要考虑传感器的获取信号,在设计初期,采用高电平控制LED灯,结果,灯的亮度很低,发现,单片机高电平带负载能力很弱,于是,采用低电平控制LED路灯。
3.3行人检测电路图3.3 行人检测电路硬件接线图此部分由单片机、按键、电阻(2K)组成。
在设计的时候,主要是用高电平来模拟声音传感器的检测信号,当有人通过为低电平,无人通过为高电平。
在开始时单片机就初始状态P1口即为高电平,模拟情况下接了8个单刀开关。
在实际的电路中根本没有电源给传感器供电,为了提高电源给传感器,此处提供了上拉电源。
3.4光线控制电路图3.4光线控制原理图光敏电阻传感器对外界光线最敏感,用来检测外界周围环境光线的亮度,触发单片机,模块在光线不足时输出低电平,光线亮度超过设定值时输出高电平。
利用光敏电阻传感器输出信号干净,波形好,驱动能力强。
本设计中利用光敏电阻及一普通电阻串联,当白天有光照时,电阻很小,输出高电平,夜晚无光照时,电阻增大,输出低电平。
3.5 手动控制图3.5 手动控制部分白天如果有突发黑暗的时候,或者有需要路灯全部亮的紧急情况,通过手动部分可以处理紧急情况,按下SWON让所有灯全亮,按下SWOFF可以熄灭所有路灯。
将紧急开关接在P3^2,P3^3口,以实现紧急情况中断。
只有当SWON及SWOFF都处于断开状态,即输入高电平时,系统恢复正常状态。
3.6智能路灯电路设计原理图及说明图3.6智能路灯电路功能的实现:当程序启动后,单片机处于设置的原始状态;所以灯全关,所以打开手动控制开关处于关灯状态。
此时系统开始正常工作。
如果有行人进入智能路灯面前,声音传感器检测到信号,并以电压的形式把信号送给单片机,单片机根据传感器送来的信号传感器的布置,点亮相应的传感器所处的位置LED路灯,当行人通过这个路灯后,达到下一个路灯时,上一个路灯熄灭。
所处位置处和所处位置下一个灯亮。
从而实现自动控制,达到节能的效果。
当人通过最后一个路灯后,最后一个灯熄灭。
在紧急的情况下,所有的路灯都要打开,此时通过手动开关打开路灯,紧急情况过后,关闭所有路灯。
系统恢复正常。
4 流程图4.1主流程图图4.1 主流程图功能的实现:当程序启动后,给单片机设置初值,使所有灯全关。