公路两旁路灯控制系统项目设计方案.doc_第1页
公路两旁路灯控制系统项目设计方案.doc_第2页
公路两旁路灯控制系统项目设计方案.doc_第3页
公路两旁路灯控制系统项目设计方案.doc_第4页
公路两旁路灯控制系统项目设计方案.doc_第5页
已阅读5页,还剩52页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

公路两旁路灯控制系统项目设计方案1.1 课题的背景及意义路灯照明对人们的日常生活有着很重要的作用,路灯照明系统的好坏直接影响到人们夜晚出行的安全。过去的几十年里,中国的经济发生了天翻地覆的变化,中国的路灯数量逐年上升,数量庞大,但是国内路灯的控制系统老旧落后,国家应该高度重视这种现状。由于中国人口基数和人口密度大,辽远的公路总长度,中国已经是路灯总数量全球最多的国家之一。2012年路灯总数量已经达到3000多万盏,随着国家对公路安全的重视不断加强,每年的增长速度很快,到2016年,路灯的数量之多可想而知。就路灯照明而言,耗电量就几乎占全国照明总用电量的三分之一1。良好的交通道路照明可以给国民生活提供安全的环境,但是,由此产生的问题也很严峻,首先,路灯数量多导致能源的使用逐年增加,而且使道路路灯的维护更加困难,维护人员和维护费用增加,政府的财政支出花销增多,光源污染现象严重,问题的出现给社会带来了不利影响,亟待政府出台政策解决问题2。中国的路灯控制系统老旧,电能使用效率低,浪费能源过多。中国路灯系统的控制方式落后,无法远程控制路灯点亮和熄灭的时间,而且缺乏设备故障检测和报警系统,急需升级改善。单片机拥有卓越的控制能力,已经广泛应用在很多领域。基于单片机的智能路灯控制系统可以改变中国路灯现状,使得路灯的管理变得简单、可靠,能节约更多的电能,能使人们更加安全的出行。因此,设计一款智能路灯控制系统具有非常重要的意义1。相比国内的路灯控制系统,国外的路灯控制系统有着很大的优势,国外的科技很新颖独特。国外将RFID、互联网、物联网等技术用于路灯控制系统。有些发达国家,将RFID技术运用到路灯控制系统中,在公路旁边安装RFID读卡器,在汽车上安装RDID电子标签,设计了一款智能路灯自动控制系统,可以对路灯进行智能控制,不仅能够节约能源,而且管理路灯系统更加有效率。2015年,美国洛杉矶与荷兰PHILIPS公司达成合作协议,计划将洛杉矶10万盏以上的路灯全新升级,将它们统一添加到一个无线网络中。如果发现路灯出现问题,管理者想要控制它们的开关状态,只须在电脑前打开浏览器就可以成功控制路灯,在飞利浦的无线网络系统中,用户通过地图能查看到全城路灯的详细状况,包括每一盏路灯的型号和使用状态。管理者使用鼠标对路灯操作,就可以实现打开或关闭城市路灯并且可以控制路灯的亮暗。PHILIPS公司设计的系统使用非常方便,可以给人们的夜行提供良好的环境。从国内外的路灯系统的发展比较,国外的科技真的很先进,中国应该努力的学习国外的科技和设计思路,提高中国自身的科技力量,从而提升中国的国民生活质量。 以MCU为控制核心的智能路灯控制系统可以显著改善中国道路路灯控制系统,不但可以达到智能化控制,使路灯控制系统的管理更加有效率,而且还能降低了运行成本,除此之外,智能的路灯控制系统可以很好的节约能源,减少对环境的影响,提高人们的日常生活质量,减少因路灯系统不完善而发生的事故4,5。因此,智能路灯控制系统的全面使用,使路灯控制系统的管理更简便可靠,提高服务效率,使城市的市容市貌更美丽,道路交通环境更安全。 1.2 设计的主要工作模拟路灯控制系统的设计的特点是,能显示实时时间,能定时点亮和熄灭路灯,能根据环境明暗自动点亮和熄灭路灯,能根据交通情况自动点亮和熄灭路灯,并且能检查故障。设计的系统可控制性很好,比较智能化,操作简单,容易上手。要想设计好模拟路灯控制系统,系统最关键的就是设计控制模块和检测模块。首先,设计系统的核心就是要挑选一个合适,控制能力又强的控制模块,需要查询相关的资料,确定用那种芯片作为系统的主控模块。然后设计检测模块,包括环境检测和交通情况检测,根据设计的要求,确定所有的检测元器件,设计好完整的检测电路。系统还需要能够显示实时时间,设定路灯点亮和熄灭的时间,因此,要设计实时时钟电路,显示电路和按键输入电路。系统还要求,当路灯出现故障时,系统能过自动的发出声光报警,所以需要设计者设计声光报警电路。当设计好了硬件电路图后,设计的主要工作就是要设计各个模块的软件程序。软件系统包括系统监控程序模块、液晶显示程序模块、独立键盘程序模块、DS1302时钟程序模块,环境检测程序模块、声光报警程序模块、交通检测程序模块、设定路灯开关时间程序模块等。当两者都设计完成之后,就需要可以进行仿真或者实物制作,期间,需要不断的调试软件和硬件电路,最后实现课题规定的功能和性能指标要求。以上就是整个设计的主要的工作。2 设计思想与方案2.1 设计思想首先根据课题的设计要求,查找翻阅相关资料,确定系统的各个模块,确定模块后,再去选择各个模块需要的电子元器件,可以在Proteus仿真软件中先设计好原理图,再完成系统的软件设计。在Proteus中仿真,当所有的功能都能实现时,然后就可以设计硬件原理图,可以根据硬件原理图做出实物,再通过反复的调试,实现设计要求的功能,最后整理设计的相关材料,编写课题说明书。设计的思路主要硬件电路系统与软件系统设计。硬件系统包括主控模块电路、电源电路、晶振电路、复位电路、下载电路、独立按键电路、路灯电路、液晶显示电路、DS1302时钟电路、交通监测电路、明暗环境监测电路、声光报警电路、故障监测电路等;软件系统是针对设计的各个模块编写相应的模块程序。其中包含系统监控程序、液晶显示程序、独立键盘程序、DS302时钟程序,环境检测程序、声光报警程序、交通检测程序,设定路灯开关时间程序等模块。2.2 设计方案 设计模拟路灯控制系统有很多种方法,可以用高度集成的FPGA控制芯片来设计,也可以采用单片机技术实现模拟路灯控制系统的设计,两者都有各自的优势和特点,首先来介绍基于FPGA控制芯片设计的系统方案。 方案一:FPGA控制芯片是一种集成度非常高的芯片,使用FPGA设计系统,非常的灵活,它可以支持在线修改的功能,随时修改软件系统设计,但是不用修改任何硬件电路,它能解决定制电路的缺陷,可以肯定的是,FPGA可以设计任何数字电路。基于FPGA的模拟路灯控制系统需要设计一些外围的电路,其中包括环境检测电路、故障检测电路、交通检测电路、声光报警电路、按键电路、显示电路和路灯电路等。基于FPGA芯片设计的系统框图如图1所示。 方案二:单片机技术使用的范围非常广,已经应用与很多领域,单片机最突出的特点就是控制能力非常强悍,芯片响应速度快,同时也是高度集成的一种芯片,集成了模数转换器、串口、定时器、中断、看门狗等外设,使得设计系统很方便,能达到很好的效果。系统可以使用AT89S52单片机为主控芯片,由实时时钟芯片DS1302产生实时系统时间,由LCD1602液晶显示屏显示菜单、提示和实时时间等信息,使用独立式键盘调整切换功能菜单、设置开关灯时间等,采用光敏电阻检测环境的明暗情况,使用反射型红外光电传感器检测交通情况,配合蜂鸣器和LED灯实现故障报警6。所以硬件电路设计包括AT89S52主控芯片、电源电路、晶振电路、复位电路、下载电路、独立按键电路、路灯电路、显示电路、时钟电路、交通监测电路、明暗环境监测电路、声光报警电路、故障监测电路等。基于单片机设计的系统框图如图2所示。 图1 基于FPGA芯片设计的系统框图图2 基于单片机设计的系统框图 根据上述两个方案的介绍,各有优点,但是考虑到设计系统的成本和适用性,单片机有着天然的优势,单片机价格便宜,功耗低,易于控制,可靠性高,开发更加容易,而FPGA价格昂贵,不适合模拟路灯控制系统的设计,所以选用方案二。3 硬件系统的设计3.1 主要元器件介绍3.1.1 AT89S52单片机模拟路灯控制系统的设计是以AT89S52为主控芯片。AT89S52是一款高度集成、低功耗、控制能力非常强的8位控制芯片,是由Atmel公司生产,使用可编程的Flash存储器,容量高达8KB,拥有256字节数据存储器,与80C51单片机完全兼容。除此之外,文章采用的AT89S52是PDIP40封装,具有4 0个引脚,多达32个可用的双向I/O口,而且内部资源丰富,具有系统异常可以复位的看门狗定时器,6个中断源(2个外部中断源,一个串口中断源,3个定时/计数中断源),3个可以定时计数的16 位定时器/计数器,其中一个定时器T2可以捕捉外部信息,1个全双工异步串行通信口,内部还有自带的晶振和时钟电路7,8。另外,AT89S52兼容汇编和C语言编程,C语言程序具有高度移植性,使得开发工作更简便。AT89S52芯片的管脚分布图如图3所示。图3 AT89S52芯片的管脚分布图3.1.2 DS1302芯片由于Ds1302具有高性能、低功耗、稳定的实时时间计时能力等特点,所以文章选用DS1302产生系统所需的实时时钟。DS1302由美国DALLAS公司研发生产,它可以对时间和日期进行准确的计时,识别年份是否为闰年,工作电压为2.5伏特5.5伏特9。DS1302内部有31字节数据寄存器,可以临时存放接收的数据。DS1302只有8个引脚,采用三根线信号线(SCLK、IO、RST)与CPU进行同步通信,Vcc1接外部后备电源,可以使用3.6V的电池,VCC2外接主电源,电压2.5V以上,当主电源切断的情况下,在后备电源的供电下,芯片同样可以保持时钟正常的运行,不会丢失数据,具有掉电保护的作用,安全性能好。1脚和2脚是时钟源接口,需要外接32.768kHz晶振,在内部电路作用下进行32768分频,可以产出精确的1秒时基。RST是复位/片选线,当RST为高电平使能所有的数据传送,使能单片机对DS1302进行读写操作。在数据传送过程中,一旦RST突变为低电平,整个数据传送将被停止,除此之外,当且仅当SCLK是低电平的时候,RST才能变成高电平,I/O引脚为传送数据口,双向传输数据(双向),SCLK引脚作为芯片的同步时钟输入口,通过这个引脚,DS1302能与其他芯片进行同步通信,只有当SCLK是上升沿的时候,I/O口才能接受的到外部传送过来的数据10。 DS1302的引脚功能图如图4所示。 图4 DS1302的引脚功能图3.1.3 LCD1602液晶显示屏LCD1602液晶显示屏具有良好的显示字符功能,所以文章选用它来作为显示时间、提示等信息,相比数码管显示器,它更容易控制,更加稳定。LCD1602液晶显示屏是一种广泛应用于工业生产的字符型液晶,总共可以显示32个字符,是一块由若干个5X7或者5X11等点阵字符位组成点阵型液晶屏,可以用来显示符号、数字、字母等。1602代表16X2,也就是可以显示32个字符,每行显示16个字符,总共两行11。只需要控制LCD1602的3根引脚的时序就能使LCD正常显示数据,RS=0,RW=0,可以往LCD写入指令或者显示地址,RS=1,RW=0可以可以往LCD写入显示的数据,当E脚出现下降沿,数据和命令就能被接收或发送,从而显示数据。 LCD1602基本技术参数为: 显示容量:2行,每行16个字符 芯片正常工作电压:4.55.5伏特 工作电流:2毫安 液晶显示最佳时工作电压:5伏特 LCD1602液晶显示屏各个引脚解释如表1所示:表1 LCD1602液晶显示屏各个引脚解释编号符号引脚解释编号符号引脚解释1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极 下面介绍各个引脚的功能。 第1脚:VSS为电源地。 第2脚:VDD接5V电源正级。第3脚:VL是用来对屏幕亮度对比度进行调整的接口,当置高电平时对比 度最差,接低电平时,对比度最好,如果对比度太高,会产生重影, 可以通过电位器调整对比度,一般采用10K。 第4脚:RS是功能选择口,被置高电平,代表传输数据,被置低电平,传 输控制命令字。 第5脚:R/W是用来传送读写信号的接口,被置高电平代表可以进行读操作, 被置低电平代表可以进行写操作。 第6脚:E端是使能端,当E为下降沿的时,LCD才能读取单片机发送过来 的数据和命令。 第714脚:用来同单片机相接线,传输双向数据的信号接口。 第15脚:背光源正极。 第16脚:背光源负极。 LCD1602实物图如图4所示。 图4 LCD1602实物图3.1.4 光敏电阻 光敏电阻的特点是当光照强度变大,其电阻会减小,光照强度变小,电阻会增大,光照强度小的时候,暗电阻会高达15M欧姆,光照强度大的时候,亮电阻才50K欧姆左右,这说明光敏电阻的灵敏度很好,可以比较准确的检测出环境的变化。所以文章采用GL3547光敏电阻检测环境明暗情况。GL3547的亮电阻为50K100K,暗电阻高达5M欧姆。光敏电阻与200K欧姆电阻串联分压接入LM324,当光线变弱时,光敏电阻变小,使得LM324的输出为低电平,单片机可以读取低电平,执行相应的操作,整个原理就是光敏电阻将光信号转化成了电信号,从而得到环境的变化情况。如果设计的项目有光控功能需求,可以使用光线强度较亮的白炽灯模拟,缩短开发的时间12。光敏电阻的实物图如图5所示。图5 光敏电阻的实物图3.1.5 红外光电传感器文章设计的模拟路灯控制系统采用红外光电传感器ST178检测交通环境情况。它的特点有三个,采用灵敏度高的光电晶体管和发射功率高的红外光电二极管组成,检测距离为4-10mm ,采用非接触检测方式13。ST178的工作原理是,当有物体靠近ST178时,它的输出为低电平,没有物体遮挡时,它的输出为高电平,单片机可以观察ST178的输出,从而得出交通的变化。ST178的实物图如图6所示。图6 ST178的实物图3.1.6 LM324电压比较器LM324是带差分输入的标准运算放大器,可以减少共模干扰,与其他的运算放大器对比,占有一定的上风。LM324的工作电压为3V到32伏,静态电流为普通运放的静态电流的20%14。当去掉LM324内部的反馈电阻时,LM324可以用作电压比较器,电压比较器的输出是一种高低电平组成的矩形波,相当于数字信号,而输入确实模拟信号,所以LM324广泛用于数字电子技术中,它的原理是当同相输入端信号大于反相输入端信号时,其输出为低电平,当小于反相输入端时,其输出为高电平15。LM324的实物图如图7所示,LM324的电路图形符号如图8所示。 图7 LM324的实物图 图8 LM324的电路图形符号3.2 硬件单元电路的设计3.2.1 AT89S52单片机最小系统单片机最小系统是由单片机芯片、复位、晶振、电源、下载等电路组成。单独一个单片机芯片是不能完成控制任务的,需要电源电路给芯片供电,除此之外,还需要晶振电路给单片机提供时钟源,单片机才能工作,当单片机芯片死机的时候,需要复位电路复位单片机。因而对于系统的设计,首先要设计单片机的最小系统。(1) AT89S52控制芯片电路部分:AT89S52控制芯片电路如图9所示。 图9 AT89S52控制芯片电路(2)电源电路部分:模拟路灯控制系统的各个模块正常工作必须引入稳定的供电电压,才能使各个模块能过驱动其他外围电路,文章设计的模拟路灯控制系统需要+5V的供电电压,所以需要设计直流稳压电源,文章设计的直流稳压电源是由变压器、整流、滤波、稳压等四部分电路组成。首先,通过电源变压器(12V输出 20w )将交流电压220V降压成12V左右交流电压,然后通过整流桥(2W10 2A/1000V)整流变成波动的直流电压,因为波动的直流电流还存在很大的文波,所以需要用滤波电路除去它,文章使用电容滤波(470F和0.1F)消除波动的直流成分,可以得到比较平整的直流电压,但是平整的直流电压还会随着电网电压的波动、负载和温度的变化而波动16。为了解决问题,文章通过稳压芯片(LM7805)输出稳定的+5V直流电压,为了知道电源是否接通,在电源输出端接了一个发光二极管,串联470电阻防止烧坏发光二极管。电源电路如图10所示。图10 电源电路(3)晶振电路部分:晶振相当于单片机的心脏,在单片机系统里的作用非常大,它结合自己内部的电路,可以产生单片机必需的时钟驱动,单片机执行的所有指令都是建立在时钟基础上的,晶振谐振的时钟频率越高,那单片机的运行速度也就越快17。通常单片机系统共用同一个晶振,可以保证单片机系统各个模块同步。文章设计的晶振电路是通过在AT89S52的XT1、XT2引脚上接入12MHz的石英晶振,外加两个电容(33PF)组成的电路,为单片机提供时钟信号。晶振电路如图11所示。图11 晶振电路(4)复位电路部分:所有的单片机系统设计,都要设计系统的复位电路,当系统出现死机时,复位电路可以使系统初始化。一个良好的复位电路可以提高系统的稳定性和可靠性,单片机上电后就会自动复位,复位系统的设置和初始化所有参数18。单片机复位分为按键复位和上电复位,当出现死机和运行错误时,一般采用按键方式对系统进行复位操作,使单片机内部清零和置位。C51单片机的复位电平为高电平,按键复位需要手动在复位输入端RST上输入高电平。文章采用的办法是在RST端和电源Vcc之间接一个按键,然后串联一个200欧姆和1000欧姆的电阻,再接到电源地。当人为按下按钮时,则200欧姆的电阻与1000欧姆电阻分压,高电平接入到单片机的RST引脚19。上电复位是通过电容(22F)充电实现复位的。当系统上电时,电容处于充电状态,电压几乎为0V,那么RST引脚为+5V,为高电平,系统就会复位,当电容充满电后,RST就会为低电平,系统停止复位。复位电路如图12所示。图12 复位电路 (5)下载电路部分:设计好系统电路后,需要在编程软件中编写好各个模块的程序,然后经过编译、链接产生可执行文件,然后在将可执行文件烧录到单片机中。如何烧录程序呢,那就需要通过下载电路将可执行文件写入单片机。文章设计的下载电路是ISP下载电路,单片机的P15引脚(MOSI),P16引脚(MISO),P17引脚(SCK),RST引脚与ISP下载线插座相连,再接上电源。在软件下载工具progisp的帮助下,就可以将生成的可执行文件烧录到AT89S52单片机中。下载电路如图13所示。图13 下载电路3.2.2 独立键盘模块电路模拟路灯控制系统要求能切换菜单、设置路灯亮灭的时间和独立的控制每个路灯,那么就需要键盘来实现以上功能。独立键盘是模拟路灯控制系统的输入设备,能对系统的功能进行操作和设置,总共需要8个独立式键盘完成所有的操作。独立式键盘相互独立,每个按键之间互不影响,按键一端统一接地,另一端连接到单片机的P1口,当有按键按下,对应的引脚会被拉低20。在通过10ms时间的消抖,按键还没有松开,就认为那个按键确实被按下,然后根据按下键的功能做出相应的执行动作。菜单键(P10)用来选择菜单模式,以便知道是选择了那个模式;确定键(P11)的作用是当选择好菜单模式后,按下确定键进入相应的模式;退出键(P12)的作用是退出相应的菜单模式;选择设定LED1开关灯时间键(P13)的作用是当按下此键就进入选择设定LED1开关灯时间模式;选择设定LED2开关灯时间键(P14)的作用是当按下此键就进入选择设定LED2开关灯时间模式;选择调整时间键(P15)的作用是选择调整LED开关灯时间的小时或者分钟;加键或者LED1灯的开关键(P16)的作用是调整时间加和开关LED1;减键或者LED2灯的开关键(P16)的作用是调整时间键和开关LED2;系统的独立键盘电路如图8所示。图14 独立式键盘电路3.2.3 LCD1602液晶显示电路模拟路灯控制系统需要显示实时时间和故障编号,就需要显示电路。数码管显示电路控制复杂,不能显示清楚的字符,所以就选用了LCD1602液晶屏来显示时间,LCD1602液晶显示屏比较容易控制,文章设计的显示电路时采用并行数据传输控制,单片机P2口与LCD1602液晶显示屏的数据口相连,LCD1602的控制引脚RS、RW、EN引脚分别与单片机的P05、P06、P07引脚相连,单片机只要控制好LCD1602液晶显示屏的时序,就能正确显示所要的内容。液晶电路如图15所示。 图15 LCD1602液晶显示电路3.2.4 DS1302时钟电路模拟路灯控制系统要求能显示实时时间,可以利用单片机内部的定时计数器产生秒时基,用定时器计时很浪费的资源,所以采用DS1302时钟芯片来计时,DS1302能精准的对时间计时,当主电源被切断后,3.6V的备用电池会给DS1302供电,保证数据不会丢失。文章设计的DS1302时钟电路,需要DS1302芯片在其X1、X2管脚上接入一个32.768KHz的石英晶振来作为芯片的时钟振荡信号,芯片的I/O数据口与单片机的P3.4引脚相连接,SCLK时钟信号引脚连接着单片机P3.3,RST复位引脚连接着单片机P3.5引脚,在接上电源,单片机正确对DS1302的时序描述,就能读取DS1302的实时时间。DS1302时钟电路如图15所示。图15 DS1302时钟电路3.2.5 交通环境检测电路模拟路灯控制系统需要根据交通环境自动的亮灭路灯,所以设计相应的电路。电路用到的是单光束反射取样式红外光电传感器ST178检测交通环境情况,ST178接一个510电阻是为了限流,防止ST178烧坏,接一个20K的下拉电阻,但是ST178的输出为模拟电压,单片机接收的是数字信号,所以在ST178的输出接上一个电压比较器LM324,它能将模拟信号转化成数字信号,输出的电平只能是+5V或者0V,然后被单片机读取,单片机根据电平执行相应的操作。交通环境检测电路如图16所示3.2.6 环境明暗检测电路模拟路灯控制系统要求能过根据环境的明暗情况自动亮灭路灯,所以要设计检测环境明暗的电路。系统是使用光敏电阻(GL3547)和电压比较器组成的电路检测环境,光敏电阻与200K电阻串联分压到LM324的反相输入端,4.7K的电阻与470的电阻串联分压接到LM324的正向输入端,电压恒定为0.45V。当有光照强度时,光敏电阻的阻值为5M,反相端的电压为0.2V,没有光照时,电阻约为50K,反相端的电压为4V。所以当有光强时,反相输入端大于正向输入端,LM324输出为低电平,当没有光强时,反相输入端小于正向输入端,LM324输出为高电平,单片机可以根据电平执行相应的操作。环境明暗检测电路如图17所示。图16 交通环境检测电路图17 环境明暗检测电路3.2.7 故障检测检测电路模拟路灯控制系统要求当路灯出现故障时,路灯应该亮时,却是熄灭状态,单片机能发出声光报警信号,同时显示出现故障路灯的地址编号。故障检测电路的原理与环境明暗检测电路一致,路灯正常情况的状态是点亮的,出现异常就会发出通知单片机,发出报警信号。故障检测检测电路如图18所示。图18 故障检测检测电路3.2.8 声光报警电路当路灯出现故障时,路灯正常情况应该为亮灯状态,却变成熄灭状态,此时应该发出声光报警。声光报警电路是由有源蜂鸣器(HYT-1205)、三极管(S9012)、1K电阻、发光二极管(BT101)等组成。电路中的三极管相当一个开关,当P07为高电平时,三极管为截止状态,LS1为低电平,蜂鸣器不响,当P07为低电平时,三极管为导通状态,LS1为高电平,蜂鸣器响,发光二极管LED4的原理与蜂鸣器相同。1K电阻的作用是限流,防止器件损坏。声光报警电路如图19所示。3.2.9 路灯电路 路灯电路是用两个LED发光二极管来模拟,470欧姆的电阻的作用是限流,防止路灯烧坏。路灯电路如图20所示。 图19 声光报警电路 图20 路灯电路4 软件系统的设计4.1 软件设计的描述 根据设计的要求,模拟路灯控制系统的软件设计包括系统监控程序模块、液晶显示程序模块、独立键盘程序模块、DS1302时钟程序模块,环境检测程序模块、声光报警程序模块、交通检测程序模块,设定路灯开关时间程序模块等。4.2 系统软件的程序设计模拟路灯控制系统的程序设计是分模块设计的,根据设计的电路图,设计相应的程序模块,在调试程序的时候,能容易的查找到对应的程序,对程序修改。接下来将分模块对系统的程序进行介绍。4.2.1 系统监控模块程序设计模拟路灯控制系统的系统监控程序又叫主函数程序,在主程序中,需要对LCD1602初始化,DS1302初始化,然后显示提示字符,接下来进入死循环,在循环体内,等待按键扫描,当按下某个功能键,就会去执行相应的功能键子程序。流程图如图22所示。4.2.2 独立键盘模块程序设计模拟路灯控制系统采用独立式键盘,采用查询法进行按键扫描。系统的键盘扫描程序流程图如图21所示。图21 键盘扫描程序流程图图22 系统监控程序流程图4.2.3 液晶显示模块程序设计系统需要显示实时时间和报警信息,系统用LCD1602液晶显示器显示,LCD1602可以分为并行数据传输和串行数据传输显示,系统采用的是并行接口传输数据。接下来介绍液晶显示的软件核心设计步骤,首先,LCD显示屏初始化,包括设置功能设置;显示与不显示设置;输入模式设置等21。接着清屏,清除屏上的内容,写入显示字符的地址命令,写入显示的数据,最后在显示器上显示数据。液晶显示模块程序设计的流程图如图23所示。 图23 液晶显示程序流程图4.2.4 DS1302时钟模块程序设计模拟路灯控制系统要求显示实时时间,采用DS1302来对时间计时,现在介绍DS1302的程序编写思路。首先开启DS1302的写保护,允许单片机向DS1302写入数据,然后写入初始时间,在关闭写保护,禁止写数据,当单片机需要显示时间的时候,向DS1302读取时间,最后在LCD1602上显示时间。DS1302时钟程序设计的流程图如图24所示。图24 DS1302时钟程序流程图4.2.5 设定路灯开关时间模块设计模拟路灯控制系统要求能调整路灯亮灭的时间,需要一个调整时间的程序,文章是用按键来实现的,当选中设定时间菜单,按下确定键后,当按选择设定LED1或LED2开关灯时间键,将进入相应的调整模式,通过选择调整时间键,调整想要的时间,最后按下确定键,时间就设定成功了,当时间到了之后,路灯会自动的亮灭。时间设定程序模块设计的流程图下如图25所示图25 时间设定程序模块设计的流程图4.2.6 环境检测模块程序设计模拟路灯控制系统要求根据环境明暗自动亮灭路灯,所以要设计相应的程序。当天黑时,光敏电阻电阻很大,使LM324得输出为低电平,P0.0为低电平,此时要驱动路灯亮,当白天时,光敏电阻电阻很小,使LM324得输出为高电平,P0.0为高电平,路灯熄灭。环境检测模块程序设计的流程图如图26所示。图26 环境检测模块程序设计的流程图4.2.7 交通检测模块程序设计模拟路灯控制系统要求能根据交通情况自动的亮灭灯,系统设计了交通检测模块程序,当车辆到达第一个位置S处(第一个ST178能感应的位置),第一个路灯亮(P36=0),然后等待车辆到达B处,当车辆到达第二个位置B处(第二个ST178能感应的位置),第二个路灯亮(P37=0),第一个灯灭(P37=1),等待车辆到达S处,当车辆到达第三个位置S处(第三个ST178能感应的位置),两个路灯都熄灭(P36=1,P37=1),当车辆反相通过时,原理是相同的。交通检测模块程序设计流程图如图27所示。4.2.8 声光报警模块程序设计 当模拟路灯控制系统出现故障时,路灯应该亮时,却是熄灭状态,系统会发出声光报警。当单片机通过两个光敏电阻检测到路灯出现故障时会给P0.7低电平,驱动蜂鸣器响,使LED灯亮。声光报警模块程序设计的流程图如图28所示。图27 交通检测模块程序设计流程图 图28 声光报警模块程序设计的流程图 5 系统调试运行及结果分析5.1 系统使用说明文章设计的模拟路灯控制系统是通过Proteus仿真得到的结果,首先把各个硬件模块按照设计的思路连接在一起,组成一个完整的系统,通过Proteus仿真软件把在Keil uVision4中编译好的程序下载到设计的系统中。在Proteus中按下开始按钮,首先显示的是“Entering System Please Waiting”等字样,准备就绪后进入模拟路灯控制系统,系统会提示“Select Menu”,当第一次按下S4按键(菜单键)时,显示“Realtime”,当第二次按下S4按键时,显示“Environment”,当第三次按下S4按键时,显示“Traffic”,当第四次按下S4按键时,显示“Set time”,通过按S5键(确定键)进入相应的菜单模式,当需要调整路灯亮灭时间时,按下S7键选择调整LED1,通过S9键选择时间调整的位置,设置完后,按下S5键,设置成功。LED2的设置操作相同,在菜单选择中,按下S10,S11可以分别亮灭LED1,LED2。系统中的ST178红外光电传感器是由按键来模拟的,当有车辆经过时,ST178的输出为低电平,按键可以模拟这种效果,光敏电阻指示灯的值为0代表没有光强,1000代表光照强度最大。5.2 系统运行结果5.2.1 进入系统提示在Proteus中点击开始运行,系统首先会在LCD1602上显示进入系统的提示“Entering System Please Waiting”。仿真的结果如图29所示。图29 进入系统提示5.2.2 选择菜单显示结果正常进入系统后,液晶会显示“Select Menu”仿真的结果如图30所示。图30 选择菜单显示5.2.3 实时时间显示结果当选择了“Realtime”模式时,按下S5键(确定键)就会显示实时时间。“Realtime”模式显示如图31所示,实时时间显示如图32所示。 图31 Realtime模式显示图32 实时时间显示5.2.4 环境明暗变化仿真结果当选择了“Environment”模式时,按下S5键(确定键)就会进入环境模式。当光敏电阻LDR3检测到天黑时,P0.0会为低电平,路灯就会点亮,LCD0602会显示“LED1 OK”“ LED2 OK”,“Environment”模式显示如图33所示,光敏电阻电路图如图34所示,路灯显示情况如图35所示,路灯正常LCD的显示如图36所示。 图33 Environment模式显示图34 光敏电阻电路图图35 路灯显示情况图36 路灯正常LCD的显示5.2.5 声光报警仿真结果在上一节的后面,当故障检测电路中的两个光敏电阻没有光照照射时,P0.1和P0.2变成低电平,系统会驱动声光报警电路发出声光报警,光敏电阻没有光照时的电路状态与路灯状态如图37所示,声光报警电路的状态如图38所示,LCD1602显示报警的状态如图39所示。图37 光敏电阻没有光照时的电路状态与路灯状态图38 声光报警电路的状态图39 LCD1602显示报警的状态5.2.6 交通环境仿真结果 当有物体经过ST178(开关闭合),对应的路灯会点亮,下面演示从左至右,Traffic模式显示如图40所示,到达S点的路灯状态如图41所示,到达B点的路灯状态如图42所示,到达S点的路灯状态如图43所示。图40 Traffic模式显示图41 到达S点的路灯状态图42 到达B点的路灯状态如图43 到达S点的路灯状态5.2.7 设定路灯开关时间仿真结果系统上电的时间是2016年5月12日02时00分,仿真设置LED1亮灯时间为02时02分,灭灯时间为02时03分,设置LED2亮灯时间为02时03分,灭灯时间为02时04分。LED1时间设定如图44所示,LED2时间设定如图45所示,02时02分路灯的状态如图46所示,02时03分路灯的状态如图47所示,02时04分路灯的状态如图48所示。图44 LED1时间设定图45 LED2时间设定图46 02时02分路灯的状态图47 02时03分路灯的状态图48 02时04分路灯的状态5.2.8 独立控制路灯仿真结果当系统提示选择菜单时,可以通过操作S10控制LED1的亮灭,可以通过操作S11控制LED2的亮灭,按键奇数次,路灯亮,按键偶数次,路灯灭。按下S10奇数次路灯的状态如图49所示,按下S10偶数数次路灯的状态如图50所示,按下S11奇数次路灯的状态如图51所示,按下S11偶数数次路灯的状态如图52所示。 图49 按下S10奇数次路灯的状态图50 按下S10偶数次路灯的状态图51 按下S11奇数次路灯的状态图52 按下S12偶数次路灯的状态5.3 结果分析与结论 通过上一节的仿真结果显示,模拟路灯控制系统上电后,能显示正在进入系统界面,能准确的显示实时时间,而且能通过S4键精确的调整菜单。按S4键第一次能选择实时时间显示,按S4键第二次能选择环境模式,按S4键第三次能选择交通显示,按S4键第四次能选择设定时间显示,当按下S5按键时,可以进入相应的模式,系统能根据周围环境明暗自动点亮和熄灭路灯,当路灯出现故障,路灯熄灭,能发出声光报警,能根据交通环境自动点亮和熄灭路灯,能设定路灯点亮和熄灭的时间,能独立控制两个路灯的点亮和熄灭时间。从以上仿真结果可以得出结论,设计的系统符合设计要求。5.4 设计体会 从开始设计模拟路灯控制系统的时候,从网上搜集了很多资料,比如LCD1602、DS1302、ST178、光敏电阻、LM324电压比较器等器件的工作原理,通过学习以上的内容,根据器件的原理,用C语言把上述器件的软件设计出来,最后完成了课程要求的任务。通过完成整个系统的设计,有很多的心得体会。面对一个陌生的课题,首先要了解课题的设计要求,通过研究设计要求,确定好系统的各个模块,考虑系统设计的可行性,最后确定设计总体方案。 在完成设计系统的过程中,出现了一些不应该出现的错误,都是因为没有注意细节,一个微小的细节导致系统调试结果错误,查找很久都不能找到答案,所以得出一个结论,设计系统要注重细节,比如在编写DS1302和LCD1602程序时,要严格的按照芯片的时序编写程序,只要把时序描述清楚才能使芯片正常工作,稍有一个细节被忽略,就会失败。系统程序复杂,在为系统编写程序的过程中,发现把程序模块化,使编程更加容易,可以便于查找系统的错误,修改程序。结束语文章设计的系统能根据环境明暗自动亮灭路灯,当路灯出现故障,能发出声光报警,能根据交通环境自动亮灭路灯,能设定路灯亮灭的时间。设计的系统符合设计要求。完成系统的设计,有很多的感受。从选择课题开始,不断的通过互联网和图书馆查找相关资料,了解了课题的背景意义。通过老师的指导,首先完成开题报告,通过自己所学知识和查询相关资料文献,确定了模拟路灯控制系统的设计方案。设计出硬件电路后,接着软件程序的设计,在Proteus中模拟仿真,不断的进行电路和软件的调试,最终使系统达到了设计的要求,编写了课题设计说明书。整个设计过程,更加深入的了解和研究单片机知识,增强了硬件电路和软件程序设计能力,同时加强了自学能力。在设计期间,通过不断努力学习和分析,不断咨询指导老师,在指导老师辛苦的指导下,终于完成了整个设计,实现了预想的功能。但是有些方面还是需要改进的,比如可以用矩阵键盘对时间进行修改。文章设计的系统还可以升级,可以利用Zigbee、GSM、RFID、物联网等高新技术控制路灯,利用它们可以使路灯系统更加智能便利,希望未来的学者能够开拓创新,设计更好的系统22。参考文献1 李波.中山市南朗镇路灯监控系统的设计与实现D.四川:电子科技大学, 20122 穆伟力.适应场景变化的景观灯模糊控制系统D.重庆: 重庆大学,20113 张军朝.路灯、景观灯照明控制系统节能技术研究D.山西:太原理工大学 20124 Samir A. Elsagheer Mohamed.Smart Street Lighting Control and Monitoring System for Electrical Power Saving by Using VANETJ. Intl J. of Communications, Network and System Sciences (IJCNS),2013,Vol.15,No.08:3513595 Warlito M. Galita.Development of a Smart Solar-Powered LED Street Lighting System for Greener CommunityJ.Open Access Library Journal (OALib Journal),2015,Vol.9,No.07:2502576 陈元莉.基于单片机的智能模拟路灯控制系统研究J.四川文理学院学报, 2012,22(5):33357 陶喜林,昌彦君,李永涛,徐慧,等.低功耗智能地温测定仪的研制J.工矿自动化,2010,39(7):1251298 Fahmi Fardiyan Arief,Muchlas,Tole Sutikno.AT89S52 Microcontroller Based Digital Compass With Voice OutputJ.TELKOMNIKA,2008:169 李伟跃.基于时钟芯片DS1302的万年历的设计J.科技创新导报,2012, 9(15):202210 姜姗.基于Lonworks的智能小区安防节点的设计D.黑龙江:哈尔滨理工 大学,200811 彭强.嵌入式物联网智能终端设计与实现D.河南:合肥工业大学,201312 胡恩伟,周建林.基于LPC1114的智能节能LED台灯控制器设计J.电子产 品世界,2013:899313 程立艳.五自由度机械手的抓取设计D.四川:西华大

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论