基于单片机的智能路灯系统设计

摘 要

近年来,随着人们生活水平不断提高和社会经济不断发展,路灯已经越来越成为一个城市重要的基础设施,在
许多地区,路灯也展示着一个城市的精神风貌,成为城市中一道亮丽的风景线,在社会的可持续发展中发挥着重要
的作用。目前,我国大部分地区的路灯仍是通过定时或者人工控制的方式开启,这样的控制方式存在着很多的弊
端。一方面,由于每天日出和日落的时间都不尽相同,往往光照很强的时候路灯还处于开启的状态,在黑夜路灯还
未点亮,这极大地影响了人们的日常出行,而且路灯以恒定功率工作,始终维持同一个亮度,也会造成资源浪费。
鉴于以上问题,设计一款智能路灯就很有必要,从而有助于构建节能、绿色、环保型城市。随着单片机技术的发
展,单片机在智慧城市、智能照明系统中的应用也越来越广泛。
  本次设计基于单片机的智能路灯控制系统,以STC89C52RC为主控芯片,集合定时开关,智能调光为一体,不仅
可以手动、定时控制路灯的开启,还可以通过传感器检测外界光照环境智能控制路灯的启停以及调节路灯的亮度,
基本电路组成包括电源电路、光敏电阻检测模块、红外传感电路、按键电路以及LCD1602显示电路等。本设计符合相
关标准,达到功能要求,很大程度上实现了路灯的智能化,不仅方便了人们的日常出行,同时对构建资源节约型和
环境友好型城市也有重要意义。
关键词: STC89C52RC 光敏电阻 智能路灯 红外传感

第一章绪论

1.1课题研究的背景
  进入二十一世纪以来,随着经济水平的发展和道路交通状况的提升,我国的道路照明设备的需求量也是逐日增
加,路灯使用数量越来越多,目前大多数地区仍是通过依靠电能驱动路灯工作,由此对电量的需求随之变大。鉴于
电能资源有限以及响应国家环保口号的号召,研制节能电器设备已成为了二十一世纪的关键词[1]。近年来,很多城
市出现了电荒问题,政府越来越重视这一问题,降低照明设备能耗、提高路灯使用寿命已经成为推动城市发展的重
要因素。
  经济社会的高速发展,各行各业对能源的需求量逐渐增加,电能是人们日常生活、工业生产制造不可缺少的能
源,一旦出现电能短缺,整个城市的正常运转都将会受到很大影响。路灯作为点亮一座城市的照明设施,对电能的
需求量十分巨大。传统的路灯控制方式比较单一,很多地区的路灯都是通过定时开关,由于四季交替,每天日出日落的时间不同,这种控制方式不能做到路灯开启和黑夜同步,也会造成资源浪费,而且有时白天光线很暗的情况下
也需要路灯照明。也有一部分地区还是依靠人工的方式控制路灯开启和关闭,占用着一定的人力资源[2]。除此之
外,传统的路灯功率恒定,路灯功率不能随着外界光线强度进行变化,有时也会损耗不必要的电能。智能路灯不仅
可以定时开关路灯,还可以自动检测外界光照环境调整路灯亮度,大大节约了能源,同时还可以实现远程开关路
灯。
由此可见,以智能化照明设备代替传统的路灯,对于构建新型智慧化、绿色化城市意义十分重大。
1.2 课题研究的意义
  随着我国城镇化水平不断提高,道路照明设施也取得了很大的发展,近年来,我国城镇面积发展的越来越大,
路灯的使用量也随之增加。近年来通过有关数据调查显示,2021年我国的用电总量约为83128亿千瓦时,同比增长
10.3%。2021年我国的路灯照明设备用电量约占全部照明用电量的28%,约占同年总体用电量的10%,而每年的道路路
灯用电量的费用高达近千亿元[3]。因此,基于基础照明设施的重要性和出于对节省电能资源消耗等方面考虑,推动
智能化路灯设备的发展,能够实现对路灯智能化的控制,一直是照明设施领域有待解决的重要课题。
  城市智慧型和环保型不断取得发展的同时,对能源的需求量也是越来越大,能源的供给和利用之间的矛盾日益
突出,由于能源有限,因此,我们要把重心转移在研制出新型节能照明设备上,最近几年,照明设备也是取得了日
新月异的变化,有了很大的提升。通过发明智能化路灯设备,一方面可以节约电能,另一方面又可以解决一些城市
发展中产生的新问题。
  目前最广泛使用的路灯是高压钠灯,正常使用时长正常可达一万多个小时,一般来说可以使用三至五年,但是
由于在实际使用的过程中,电压往往会比较大,会对路灯造成一定的损坏,导致路灯的实际使用寿命相比标准使用
寿命大幅度减少,从而导致材料的浪费和能源使用的增加,定期就要更换新的路灯,能源浪费严重,造成许多不必
要的开支[4]。
  现如今,我国很多城镇都是定时开关路灯。由于春夏秋冬四季交替,每一天日出和日落的时间都不一样,在马
路两旁,经常会看到路灯在白天还未熄灭,有时在夜里路灯还未开启,这样的控制方式有很多弊端,造成能源的浪
费也不利于人们的出行[5]。而且有时白天的光线也很弱,也需要开启路灯照明。如果采用人工控制的方式,将会占
用着人力资源。
  本次设计课题在克服与改善上述有关问题的基础上,以实现智能化控制、节能环保为初心,旨在设计开发出一
款价格低廉、操作简单、节约能源,并能够实现根据外界光照自动调光的智能路灯控制系统,并且创造性地把蓝牙
模块也加入到系统中,通过连接手机APP实现对路灯开关的控制,实现了远程就可以控制路灯的构想,大大增加了该
路灯系统的智能化程度。相信本课题设计的基于单片机的智能路灯控制系统,将能够很好地丰富当前道路照明市场
的产品内容,以多学科和多领域相关知识,改善路灯前进方向单一化的问题,并发展和实现智能路灯的多元化应
用。
1.3 国内外发展状况
  近年来,随着科技发展水平的不断提高,在照明设施领域,各种各样的照明路灯层出不穷。而且,随着万物互
联社会的到来,智能路灯控制系统的技术也十分先进,通过调研市场上现有的照明设备,大体可以分为以下两种类
型:一种是通过时钟进行控制状态的,这种路灯根据提前设定好的时间,定时开启和关闭;还有一种是使用光敏电
阻作为传感器,通过检测外界光照强度,当光照强度小于一定值时路灯开启,光照强度大于一定值时路灯关闭。目
前在市面上存在着很多样式的路灯,比如多模式LED路灯、基于ZigBee技术的智能路灯、基于WSN技术的智能路灯等
[6]。
  为了进一步丰富智能路灯控制系统的内涵,利用自动调节功率的技术,解决现有路灯功能单一性和耗费电能等
问题,满足新时代城市发展的需要。因此本课题基于自动调光技术,设计能够大大节省电能资源,还可以实现定时
开关和人工手动开关等功能,除此之外通过手机APP控制路灯的开启和关闭。相信本设计将大力推动照明系统的智能
化、环保化,也并将智慧城市的发展开辟新的应用领域。
1.4 设计的主要研究内容
  本课题的主要研究内容是以STC89C52RC为主控芯片,设计出一款可以实现智能控制的路灯系统,该系统集智能
调光、时间设定、定时开关为一体,可以智能地控制路灯等照明设施的定时自动开关,并根据外界光照环境的变化
实现照明开关以及照明功率的调整,同时,还可以通过蓝牙,连接手机APP,使用手机控制智能路灯的开启和关闭状
态。
  本课题的设计具有一定的创新性,不仅方便了人们的出行,同时,也可以减少不必要的电能损耗,实现路灯照明设备技术上的升级。此次智慧路灯项目通过智能化、专业化的科学设计光源模组、光照管理模式以及智慧路灯控
制系统,实现蓝牙控制、亮度自动调节和定时开关等功能,保障路灯全天候高效稳定运行,提升公共照明设施能效
水平和管理水平的同时,还能够有效降低政府公共照明设施成本,提升社会效益,赋能智慧城市建设。智能路灯项
目也是助力国家早日实现“碳达峰、碳中和”的重要举措,在能源供应日趋紧张的总体环境下,对于构建智慧型、
环境友好型城市有着积极意义,该设计具有很好的发展前景。

第二章智能路灯总体设计方案

2.1 设计原理
  智能路灯系统以STC89C52RC单片机为主控芯片,主要包括单片机核心最小系统、照明系统、人体红外传感系
统、光敏电阻感光系统、蓝牙控制系统、显示系统、模数转换模块等,集合了数据采集(电压、电流)、开关控制
硬件模块。光敏电阻感光系统工作原理基于光导效应现象,人体红外系统工作原理基于热释电效应。硬件电路以单
片机为核心,实现了智能调光、定时开关、远程控制等多种功能,形成了同时具备多种功能的智能路灯系统。
2.2 工作简介
  相比于传统的路灯,智能路灯控制系统的优势在于其控制的智慧化、节能化。本设计中主要包括时间控制、蓝
牙控制和检测外界光照强度自动控制。由于本设计是面向实际应用的,不同场景需要满足的功能不同,考虑到后续
还可以再扩展一些功能、丰富智能路灯系统,因此,本次设计并未使用印刷版,而是选用了价格比较低廉、可以拓
展更多功能的洞洞板。在系统控制原理方面,采用光敏电阻作为传感器,采集外界光信号,通过ADC0804数模转换
器,把光信号转换成数字信号传递到单片机,单片机将光线的数字信号处理后输出脉冲对恒流源进行PWM调制,从而
实现对路灯光照亮度的调整,蓝牙模块用于某些特殊情况下实现对路灯开关状态的控制。
  路灯通过三种方式进行控制:手动控制、定时控制、检测外界光照强度自动控制。路灯正常工作在定时控制和
自动控制状态下,首先,检测当前时间是否在定时设定的时间之内,在定时时间内路灯处于开启状态,如果时间处
于非定时开启时间,光敏电阻检测光照强度,如果光照强度低于一定的数值,并且红外模块检测到有行人通过时,
路灯开启10S,并且此时还可以根据外界光照强度自动调整路灯的亮度。
2.3 设计结构框图
  本次课题设计的基于单片机的智能路灯控制系统,采用了STC89C52RC单片机作为主控芯片,单片机、晶振电
路、复位电路构成最小系统,驱动整体电路工作。光线传感器部分以光敏电阻为核心,和主控芯片相连接.按键电路
主要包括两大部分,第一是设定时间,第二是设置定时时间,第三则是切换模式及手动操作。默认情况下LCD1602显
示当前时间以及外界光照强度的等级,通过按键按钮可以调至手动开关模式,编辑状态下还可以设置当前屏幕显示
的时间和定时开关的时间。人体红外模块可以在白天光照较弱的情况下检测到有行人通过,并把信号传递给单片
机,单片机在接收到这一信号后,根据外界光照强度值控制路灯以不同的亮度开启。而蓝牙模块则可以连接到手
机,通过手机APP向单片机发送指令,控制路灯的启停状态。
如图2.1所示,为基于单片机的智能路灯控制系统设计结构框图。
图2.1 智能路灯控制系统设计框图
2.4 主控模块的比较与选择
  本次课题设计的基于单片机的智能路灯控制系统,单片机、晶振电路、复位电路构成单片机的最小系统,驱动
整体电路工作,主控芯片有很多种方案可供选择。
方案一:STC89C52单片机
  STC89C52单片机硬件设计比较方便,功能丰富,不仅可以单片机片内的寄存器进行位处理,还能进行位的逻辑
运算,外围电路、I/O接口、指令比较简单,足以满足一般的设计[6]。在烧写程序时十分方便,只需要使用串口就
可以将程序写入单片机,其成本相对来说也比较便宜。
方案二:Arduino
  Arduino具有大量的库,Arduino的硬件平台使用起来也很方便,而且其开发环境比较完整,可以实现多平台的
开发,开发软件所用的时间也比较短。但是Arduino核心板的主频比较低,以及I/O也不够充足,因此实现不了本系
统的所有要求,所以Arduino使用起来相对来说有局限性。
方案三:STM32单片机
  STM32单片机拥有广泛使用的内核,其接口非常丰富,可以拓展很多通信功能,其支持中断嵌套、功耗比较小、
实时性也比较强,该单片机应用十分广泛,但是STM32单片机成本比较高,编写程序相对比较复杂,使用起来稍微有
点难度。
通过以上对三种主控芯片的对比,考虑到各方面的优缺点,本次设计选用方案一作为主控芯片。

第三章控制系统硬件电路设计

3.1 主控模块
3.1.1 STC89C52RC单片机介绍
  STC89C52RC系列单片机是STC公司生产的一种8K字节、低功耗的微处理器,片上集成了512字节RAM,拥有T0、
T1、T2三个定时器和四路外部中断,相比于51单片机来说,STC89C52RC单片机做了很多改进和升级,拥有很有51单
片机所不具备的功能[7]。
STC89C52RC的实物封装如图3.1所示。在这里插入图片描述

图3.1 STC89C52RC实物封装图
3.1.2 STC89C52RC单片机最小系统电路
  一般来说,单片机最小系统,有的时候也被叫做单片机最小应用系统,指的是可以用最少的电路元件,驱动单
片机工作的系统。通常情况下,对于51系列单片机来讲,单片机最小系统由三部分组成,即晶振电路、复位电路和
电源电路。在本设计中,晶振电路选用12MHz的晶振和30pF的电容,最小系统通过USB接口进行供电。
STC89C52RC单片机的最小系统电路如图3.2所示。在这里插入图片描述

图3.2 STC89C52RC单片机最小系统电路图
  单片机的复位电路可以说是重启电路,如果说在单片机运行过程中出现什么故障,可按下复位按钮,使得单片
机从头开始执行程序。通过按下按钮可控制单片机电路的复位状态。、
排阻是液晶屏的上拉电阻,没接的话呈高阻态,无法得到高电平,液晶屏显示出现异常。
  单片机的晶振电路由两个电容和一个电阻构成,晶振用于为单片机工作提供脉冲信号,这个脉冲就是单片机工
作的速度。晶振电路和单片机的XTAL0和XTAL1相连,另一端接地。
3.2 按键模块
  按键电路,按键按下接地,单片机通过判断端口为低电平来知道按键被按下。将按键电路与单片机的接口相
连,通过对接口进行编程实现对按键电路的控制,满足按键电路需要实现的功能。
如图3.5所示为按键电路原理图:在这里插入图片描述

图3.5 控制模块按键电路原理图
3.3 计时模块
  U2为时钟芯片DS1302,通过5、7、6引脚与单片机相连,通过程序读取时钟芯片发过来的时间再显示。J1为纽扣
电池,即备用电池,因为时间一直需要走,当外界电源没有关闭时,这里的纽扣电池直接向时钟芯片供电,防止时
间停止或异常。R3、R4、R5为上拉电阻,这里上拉电阻的主要作用是提高抗干扰能力。Y1是晶振,和单片机的晶原理一样,都是给芯片提供振荡信号,芯片才能正常运行,这里芯片规定的晶振大小为32768Hz。

相比较DS1202有了很大的升级,主要具备以下特性:增加7字节储存器,可以实时地显示年月日和当前时刻无论
是控制字节输出还是数据的读取,都是从低位向高位开始。
3.4 光线强弱转换模块
3.4.1 ADC0804综合概述
  在集成电路中,A/D数模转换器的种类有很多,目前市面上比较常见的A/D转换器主要有ADC0804、ADC0832、
XPT2046等。通常情况下我们使用逐次比较式转换器,,ADC0804就是这样的A / D转换器。ADC0804拥有单通道,成
本也比较低廉。模拟-数字转换时间大约是100us,有利于TTL或CMOS标准接口。ADC0804A/D转换器接口分别和单片机
的P2.0~P2.7接口相连。
  ADC0804模数转换芯片的19脚、4脚以及R1和C1共同决定了转换芯片的转换频率,ADC0804转换器的分辨率为8
位,由于28=256,所以其转换值在0和255之间,也就是说该A/D转换器的分辨率为1/256。ADC0804模数转换器的分辨
率和电压最小值如表3.1所示:
表3.1 A/D转换器的分辨率和最小电压值
  
位数目 分辨率 最小电压转换值
8 1/256 0.01953V
10 1/1024 0.00488V
10
  从时序图可知首先要选定片选,即置CS=0,程序中一直让CS为0,这样一直选定其工作,对转换没有影响。再看
WR的时序图WR先由高变低再变高,RD的时序也是由高变低再变高,RD为低后延时tass后就有数据了,于是再把WR拉
高,这样就把数据读走了。因为INTR是自动变化的,所以不需要人为设定。
3.4.2 光敏电阻
  光敏电阻也叫光导管,制造材料主要为硫化镁、硒、硫化铝、铅和硫化物等。在特定波长的光照射下,这些材
料的电阻会急速下降。这是因为涉及导电性的载波在外部电场的作用下和漂移。当电子流向电源的正极时,空穴会
流向电源的负极,因此光传感器的电阻值会急剧下降[8]。
  本设计采用光敏电阻作为传感器,检测环境中的光线强度,这是利用的光敏电阻的阻值会随着外界光照强度的
变化而变化。
  本设计中,把光敏电阻和ADC0804A/D转换器相连接,检测外界光线的明亮程度。当外界光照强度发生变化时,
会导致光敏电阻的阻值发生变化,进而导致ADC0804的通道电压值也发生变化[9],模数转换器将模拟信号转化为数
字信号,传递给单片机,单片机接收到该信号,并且根据该信号做出判断,进而控制路灯的亮度,实现路灯亮度的
调整。

3.5 液晶显示
3.5.1 LCD1602介绍
本次设计显示屏采用LCD1602液晶显示器,该显示屏在市面上的应用非常广泛,可以同时显示32个字符。
如表3.2所示为LCD1602液晶显示器各个引脚的符号及功能:
表3.2 LCD1602各个引脚的符号及功能[10]
  
编号 符号 引脚功能 编号 符号 引脚功能
1 VSS 电源地 9 DB2 双向数据端口
2 VCC 电源正极 10 DB3 双向数据端口
3 V0 对比度调整端 11 DB4 双向数据端口
4 RS 寄存器选择 12 DB5 双向数据端口
5 R/W 读写信号线 13 DB6 双向数据端口
6 E 使能控制 14 DB7 双向数据端口
7 DB0 双向数据端口 15 A 背光源正极
8 DB1 双向数据端口 16 K 背光源负极
3.5.2 LCD1602工作时序
  想要单片机驱动LCD1602正常工作,就必须先了解LCD1602的读写时序图,依据读写时序图编写单片机程序,实
现显示器的显示功能。单片机通过RS、RE、E端口实现对LCD1602的控制。
如图3.9为显示屏显示电路,LCD1为液晶屏LCD1602,R2可以调节液晶屏的对比度。

3.6 人体红外检测模块
3.6.1 HC-SR50芯片介绍
  HC-SR50广泛应用于安防产品、人体感应玩具以及各类自动感应设备。HC-SR50以红外线技术为基础,是一种可
以实现人体红外自动感应的电子元器件。该元件拥有较高的灵敏度和较低的功耗,并且其可靠性也很高[11]。在本
次设计中HC-SR50用于光照环境较弱的情况下识别行人,当检测到有行人通过时,传递信息给单片机,单片机控制路
灯点亮10秒。

表3.3 HC-SR50功能特点[12]
  
产品型号 HC-SR50 人体感应模块
工作电压范围 直流电压4.5-20V
静态电流 <50uA
电平输出 高3.3V/低0V
触发方式 L 不可重复触发/H 重复触发
延时时间 5-200S(可调)可制作范围零点几秒-几十分钟
封锁时间 2.5S(默认)可制作范围零点几秒-几十秒
电路板外形尺寸 32mm*24mm
感应角度 <100 度锥角
工作温度 -15-+70度
感应透镜尺寸 直径:23mm(默认)
3.6.2 HC-SR50芯片工作原理
HC-SR50芯片是基于红外线技术实现的,下面是其工作原理和工作流程:
  HC-SR50处于开启状态,如果在其感知范围内有行人通过的话,该芯片自动输出高电平,当行人从检测范围中离
开后,芯片又自动关闭高电平,输出低电平。还可以通过设置实现光敏控制功能,在光照很充足的情况下芯片不工
作,只有当光照强度低于一定范围时,芯片才处于正常工作模式[13]。在本设计中,就是使用了HC-SR50的光敏控制
功能。
  原理图如图3.16所示,三极管和HC-SR501相连,如果有行人进入检测范围时,三极管Q1处于导通状态,集电极
接地,此时发射极为低电平,单片机通过判断为低电平判断有人通过。无行人通过时,三极管Q1截至,发射极为高
电平[14]。

3.7 电源模块
  如图3.12所示,为电源电路连接图,图中C6和C7进行滤波,其中C6滤除高频,C7滤除低频,LED3作为电源指示
灯,开关处于开启状态时LED3会点亮。
图3.12智能路灯系统电源模块原理图在这里插入图片描述

第四章软件程序设计

4.1 软件开发环境
  要想使得智能路灯达到预期的功能,除了设计好硬件电路,软件设计也很关键。首先,软件设计要从我们预期
的功能出发,确定好整体需要实现的功能,然后将总体的功能划分为每一小部分的功能。绘制每一个小模块的程序
流程图,根据流程图编写代码。
  因此,如果选择使用一个强大的软件开发环境软件,就可以大大节省工作的时间,提高程序设计的效率。但
是,其执行速度不是很高,如果对速度没有特殊要求的话,Keil是一款非常好的软件开发平台。基于以上分析,根
据软件部分的开发要求和使用起来的实际情况,本次设计选择使用广泛的Keil μVision5作为软件开发平台[15]。
  KeilμVision5是美国Keil Software公司出品的兼容单片机的软件开发系统,Keil μVision5生成的目标代码
效率非常之高,支持很多种语言,比如C语言和汇编语言,平台操作起来也比较方便,可以生成hex文件,通过
STC_ISP串口下载软件,将hex下载导入单片机中[16]。之前在很多次的课程设计中都使用了Keil μVision5进行软
件部分的设计,因此使用起来也相对来说比较熟悉。Keil μVision5操作平台整洁大方,其具体操作主界面如图4.1
所示。
12

图4.1 Keil uVision5平台操作主界面
4.2 系统程序设计
4.2.1 系统主程序流程
  由于本设计整体功能相对来说比较复杂,因此从实际出发,把整体功能划分为若干个小功能进行实现,确定和
编写每一小部分的程序。因此,将整个软件功能系统划分为人体红外识别部分、蓝牙部分、ADC0804操作程序部分、
独立按键的扫描、检测外界环境光照强度、根据外界光照环境进行PWM调光以及LCD1602液晶显示屏的数值显示等几
个部分[17],并分别对各功能板块进行算法与程序的实现。
  首先,需要对程序进行初始化操作。初始化完成后,液晶显示屏上会显示出当前的年、月、日、时、分、秒,
还会显示出当前外界的光照强度。“之后软件系统便开始启动独立按键的扫描流程,若系统扫描和检测到独立按键
被按下,则根据按键进入对应的功能中。
  如果单片机没有检测到有按键被按下,则智能路灯系统进入定时工作模式,当时间达到设定的开始时间后,路
灯开启,此时两盏路灯全开,超出设定时间,路灯熄灭。路灯的定时开启时间范围可以在编辑状态下通过加减按键
进行操作。按下模式切换按键,此时系统进入手动控制模式,通过按键控制路灯的开启和熄灭状态[18]。在定时范
围之外,如果光敏电阻传感器检测到外界光线亮度等级低于6,同时人体红外模块识别有行人通过,那么会向单片机
发送指令,此时是节能模式,只点亮一盏路灯,路灯开启10S,并且随着外界光照强度不断发生变化,路灯的亮度随
之进行调整。如果没有再次识别到有行人,路灯熄灭。当外界光线强度等级高于等级6时,即使有行人通过,路灯也
不会点亮[19]。添加蓝牙模块,大大丰富了智能路灯系统的内容,连接手机APP,通过手机APP向单片机发送指令,
可控制路灯的开启和熄灭状态。
如图4.2所示,为软件系统主程序流程图。
13

图4.2 系统主程序流程图
4.2.2 LCD1602驱动程序
  根据LCD1602液晶显示屏的结构和功能,以及实际操作和需要满足的功能,按照如图4.3所示程序流程图进行驱
动操作。
14

图4.3 LCD1602液晶显示流程图
4.2.3 独立按键扫描
   当有按键被按下或者松开的时候,都会产生键抖动,键抖动是一种很正常的现象,而且每次键抖动的时间长度
也不一样。但是由键抖动的存在,会对功能有一定的影响,因此我们要想办法去除键抖动现象,通常采用的方法就
是软件去抖[20]。
如图4.4所示,为独立按键扫描的程序流程图。
15

图4.4 独立按键扫描程序流程图
4.2.4 自动感光开启流程
  如果当前时刻处于定时开启时刻之外,随着外界光照强度发生变化,光敏电阻阻值也随之改变,单片机对接收
到的光照信号进行处理,当前光照强度等级会显示LCD1602上,如果光照强度小于6的话,单片机会判断是否有行人
通过,如果有行人通过单片机会控制路灯开启10S,否则的话路灯不开启[21]。系统完成一次该过程后,会再次重复
该过程。如图4.5所示,自动感光开启路灯程序流程图。
16

图4.5 自动感光开启路灯程序流程图
  对于控制路灯有暗到亮或由亮到暗,采用的是PWM法。它是把每一脉冲宽度均相等的脉冲列作PWM波形,通过改
变脉冲列的周期可以调频,改变脉冲的宽度或占空比可以调压,采用适当控制方法即可使电压与频率协调变化。可
以通过调整PWM的周期、PWM的占空比而达到控制充电电流的目的[22]。
  这次设计利用STC89C52RC单片机产生占空比可变的矩形波,当产生此矩形波的I/O口通过滤波电路再与路灯相接
后,由于输出矩形波占空比不断变化,那么一个周期内有一部分时间路灯导通,一部分时间截止,从整体来看有一
个平均电压,PWM信号频率很高的,我们无法通过肉眼来观察到每一个周期路灯灯亮灭的变化过程,所以只好通过平
均电压这样一种方式来决定这个路灯的亮的程度了[23]。 随着波形占空比不断变化,路灯灯也会有暗到亮再从亮到
暗不断变化。
4.3 蓝牙程序设计
  首先,通过编写程序使单片机可以实现串口通信,利用蓝牙建立起手机和单片机之间的联系,使用手机APP向单
片机发出操作指令,可以实现手机对智能路灯系统开关的控制,丰富了路灯系统的功能。如图4.6所示为蓝牙工作模
式下程序流程图:
在这里插入图片描述

图4.6 蓝牙工作模式下程序流程图
*

第五章验证测试与非技术因素分析

5.1 测试实验与讨论验证
5.1.1 仿真测试
  测试是电路设计过程中非常重要的步骤,通过测试可以分析出电路设计和软件设计中的不足之处,并根据测试
反馈的问题进行调整,多次进行可以实现预期的功能。本次设计测试的主要是LCD1602液晶显示器能否正常显示以及
路灯亮度能够随着外界光强的变化而调整。
首先测试LCD1602液晶显示器能否正常显示,测试结果如图5.1所示,当写入单片机程序后,显示屏工作正常。在这里插入图片描述

图5.1 LCD1602正常工作仿真图
  随后进行了路灯的测试,由于在实际仿真过程中速度太慢,因此只能通过观察LED灯的闪烁判断测试结果,闪烁
越快表示越暗,调节光敏电阻阻值,可以明显观察到路灯闪烁频率的变化,符合预期的功能。如图5.2所示为整体仿
真电路图。
在这里插入图片描述

图5.2 整体仿真电路图图
5.1.2 实物测试
  经过对设计方案的不断改进和反复修改,对该设计涉及到的基本知识进行了系统的学习,通过使用Proteus仿真
以及多次调试,确定了最终的设计方案。
  考虑到本设计对光照环境有特殊要求,因此实际测试环境在黑暗室内进行,使用手机手电筒作为照明设备,通
过调节手机手电筒亮度等级,实现外界光照亮度的调节。首先,实验选在晚上九点进行,营造室内黑暗环境,设定
路灯开启时间在晚上九点十分到晚上九点十五,在该时间段范围内,路灯开启,超过九点十五之后,打开手机手电
筒,当检测到有行人通过时,路灯开启,调节不同亮度等级,可以观察到路灯亮度也发生变化,打开室内光源,此
时室内亮度充足,路灯熄灭。如图5.2所示为实际测试图。在这里插入图片描述

图5.3 实际测试结果图
最后,将所有测试到的路灯两端电压值以及相对应的光敏电阻阻值记录在实验数据纸上,以方便后续进行讨论和分
析。
5.1.3 验证结果
在完成智能路灯控制系统的焊接之后,对系统进行了多次的调试和实验,已实现预期的功能。
5.2非技术因素分析
5.2.1 环境与可持续发展
  本次设计基于单片机的智能路灯控制系统,坚持把实用性和环保型相结合,以绿色发展的理念进行设计[24],
无论是设计的目的还是选材方面都坚持可持续发展,有助于为环境和资源的保护做出贡献。实物制作完成之后,对
实物进行了多次测试和分析,路灯在功能上表现出很好的效果,相关指标也都合格,达到预期的要求。
  相比于传统的路灯,本次设计的智能控制路灯的环保性是最大的亮点。从功能方面来说,路灯的发光功率可以
随着光照强度进行调整,减少不必要的电能损耗,很大程度上节约了能源的损耗,有助于构建资源节约型社会。从
选材方面来说,选用锂电池为本系统进行供电,相比于传统的电池有助于环境的保护。在洞洞板选取方面,选用干
净无毒的板子,以免后续造成环境污染,响应了国家“绿水青山就是金山银山”的环保理念,有助于构建资源节约
型和环境友好型社会[25]。
5.2.2 展望

从伦敦街头第一盏路灯的诞生,到通过人工手动控制开关的经典路灯,再到今天蓬勃发展的智能控制路灯,在
科技飞跃的各个时期,路灯经历了多次升级。来自全世界各个国家和地区的科学家和工程师们,经历了长期的努力
和探索,才使得今天路灯市场的百花齐放。智能路灯控制系统的出现,改变了以往路灯能源浪费过度严重的问题,
为进一步构建资源节约社会做出了贡献。
  随着5G时代的到来,智能路灯也将会大放光彩,一方面可以把太阳能供电和智能控制结合起来,减少对电能的
依赖,多余的电能还可用于其他用电设备[26]。另外一方面,还可以在路灯系统中加入WIFI模块,这样就可以把智
能路灯加入到网络中,在万物互联社会将实现对路灯的进一步控制[27]。随着无人车技术的发展,当智能路灯和无
人车在同一网络环境下,在一些车流量不大的路面,车辆靠近路灯时就会给路灯发送指令,控制路灯开启,智能控
制路灯开关,减少资源使用[28]。当有行人通过时,手机也可以和路灯之间实现通讯[29]。各行各业技术的发展,
新产品层出不穷,未来路灯与其他领域产品的联系将越来越紧密。
  随着电子信息技术的迅速发展,相信在不久的将来,智能路灯控制系统新技术将不断出现,能够很好地适应社
会发展的需要,极大地推动行业的进步。

第六章总结

6.1 设计总结
  本次毕业设计在老师的指导和帮助下,阅读了大量的相关文献,查阅了很多的资料,对智能路灯控制系统的发
展现状和发展前景有了初步的了解,在前辈研究的基础上,结合自己大学四年的学习成果,设计出了几种方案,通
过对几种方案进行分析、对比,最终确定了最可行的方案,随后完成了硬件电路的设计和软件程序的编程,焊接实
物,最终完成了测试和分析,达到了预期的效果。
  本课题设计的是一款基于单片机的智能路灯控制系统,以STC89C52RC单片机为主控芯片,集定时开关、时间设
定和智能调光为一体,可以智能地控制路灯等照明设施地定时自动开关,并能根据外界光照环境的变化实现照明开
关及照明功率的调整,并通过LCD1602液晶显示器显示当前的时间、日期和外界光照强度等级。
  在论文的绪论部分,我查阅了大量的资料,了解到了设计出一款节约型路灯对社会发展的重要意义,在不断学
习和参考资料的过程中,我对智能路灯的概念越来越清晰,对路灯的设计也有了初步计划。
  在硬件电路设计部分,选用STC89C52RC作为主控芯片,在原来学习的基础上,我对该单片机进行了深入的学
习,学习了各个模块的独立电路。
在软件设计部分,结合各模块需要实现的功能,先绘制了各个部分的流程框图,然后依照流程框图编写程序。
  完成了硬件电路的设计和软件编程之后,便使用Proteus进行了仿真电路的设计,仿真的效果与实际要求实现的
效果吻合,然后依据仿真图焊接实物。
在测试过程中,我选择在了黑暗室内进行,这样才能减少不必要的误差,通过手机手电筒当作外界光照源。
  由于自己的基础理论不够扎实,导致在做设计过程中走了很多的弯路,我也从中吸取了教训,一定要认认真真
做好很一件事,才会把工作完成的更好。
6.2 实践总结
  完成本次大学生毕业设计项目也就意味着完成了大学的最后一门课程,毕业设计是对我们过去大学四年学习成
果的一个检验,也是对我们专业素养的一个考核,毕业设计设计知识点较多,从基础课高等数学到专业课模数电以
及单片机等,综合运用到毕业设计项目中,很好地检验和巩固了大学四年的学习成果,同时也对我们动手实践有着
重要意义。此次毕业设计的重要性不言而喻,我秉持着认真完成、不懂就查的态度,高效地完成了毕业设计项目。
  大学的四年中,我们做过很多次的课程设计,包括模数电、高频、单片机等设计,但是课程设计的题目相对比
较简单,而且老师会对题目和要求做出详细的说明。毕业设计的综合性强,难度也比较高。它更考验我们个人解决
问题的能力,从前期的方案选择,到中期的硬件电路和软件程序的设计,以及最后的毕业论文撰写,每一步都是对
我们分析问题和解决问题能力的考验。由于题目创新型比较强,因此我从晚上查阅了很多的资料,参考了很多的文
献,在这个过程中也提升了自己查阅文献和读懂文献的能力,而且很多参考文献都是英文,在读论文的过程中也无
形提升了英语阅读的能力。这也是第一次设计这么复杂的电路和程序,也因此提升了自己的设计电路的能力和编写
代码的能力。
  毕业设计对我们了解社会发展现状和未来发展前景也很有意义,是我们清晰地了解到电子信息行业未来的发展
方向。主要还是智能路灯控制系统的发展现状和应用前景,而且随着万物互联社会的到来,智能路灯又能进行怎样
的改造,更好地应用于未来社会。而且,除了从环保的角度出发研发节能路灯,还可以对智能路灯进行功能上的升
级,比如将智能路灯联网,加入到城市的网络中,那么就可以进一步实现对系统的控制。在未来万物互联社会,如
果路灯、手机和车辆都接入网络,那么是不是可以实现通过WIFI实现路灯的自动开启,代替人体红外感光模块
[30]。
  总之,本次毕业设计项目对我个人有很大的提升,我们学习知识和技能的目的就是服务于社会,满足国家的发
展需求,只有将理论和实际相结合起来,才能将理论运用的更加完善,才能推动社会的发展。 此次设计是对我过去
学习的知识和技能的综合运用和总结,对我以后进入社会更好地完成各种复杂的项目具有指导意义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值