单片机控制的模拟路灯控制系统设计大学毕设论文.docx
《单片机控制的模拟路灯控制系统设计大学毕设论文.docx》由会员分享,可在线阅读,更多相关《单片机控制的模拟路灯控制系统设计大学毕设论文.docx(19页珍藏版)》请在冰豆网上搜索。
单片机控制的模拟路灯控制系统设计大学毕设论文
2010年全国大学生电子竞赛
论文设计
题目:
模拟路灯控制系统
学生姓名:
指导教师:
模拟路灯控制系统
摘要:
本系统采用凌阳SPCE061A单片机,构成系统的支路控制器和单元控制器。
自己制作的LED数码管显示模块、键盘输入控制模块、光敏传感器、光电传感器、声光报警模块等作为系统的辅助电路。
分别实现了开关灯时间的显示和控制,不同环境明暗和交通情况下的路灯智能控制,故障报警等题目中的基本要求。
系统的单元控制器利用自制恒流驱动电源,可以使驱动电源输出功率在规定的时间自动减少,完成题目要求的发挥部分。
此外,系统采用双核控制,在若干车辆双向行驶的复杂交通情况下,依然可以实现对路灯的智能控制;自己加工辅助模块,大大提高了系统的性价比,部分模块(如LCD显示模块)的选材还体现了低功耗的新兴理念。
关键词:
路灯控制凌阳SPCE061A恒流驱动电源
Abstract:
ThissystemusesSunplusSPCE061ASCM,constituteasystemoftributariescontrollerandaunitcontroller.Theirledleddisplaymodule,keyboardinputcontrolmodule,photosensitivesensors,acousto-opticphotoelectricsensors,alarmmodule,andsoonasasystemofauxiliarycircuits.Switchlampsrespectivelyimplementationtimeisdisplayedandcontrol,differentenvironmentsanddarksandtrafficsituationsStreetlightalarmingintelligentcontrol,andsothebasicrequirementsinthetopic.
Systemunitcontrollerself-madeconstant-currentdrivepower,canmakedrivingpoweroutputpowerwithintheprescribedtimeautomatically,completetherequirementsoftheplayapartofthetopic.Additionally,thesystemwithdual-corecontrol,incertainvehiclestwo-waycarriagewayofcomplextrafficsituations,stillcanimplementsmartcontrolonthestreet;itsownprocessingsubsidiarymodules,greatlyimprovedprice,somemodules(suchasLCDdisplaymodules)selectionalsoembodiestheemergingconceptoflowpowerconsumption.
Keywords:
StreetlightcontrolSunplusSPCE061Aconstantcurrentdrivingpower
1方案比较与论证
1.1最小系统开发板比较论证:
方案一:
采用MCS-51系列单片机。
传统的51单片机具有价格低廉,使用简单等特点,但其运算速度低,功能单一,RAM、ROM空间小。
方案二:
采用SPCE061A单片机作为控制模块。
SPCE061A具有丰富的资源:
RAM,ROM空间大、指令周期短、低功耗、低电压、体积小,易扩展,可编程音频处理,易于编写和调试,且独具语音播报功能等优点。
这些特点极大地提高了开发效率。
综上分析,选择方案二。
1.2显示模块比较论证:
方案一:
采用SPLC501液晶显示模块。
内建128*64点阵,有丰富的文字和图形显示功能,轻薄便携,视觉舒适,但液晶显示不够鲜明,欠稳定,寿命短。
方案二:
采用LED数码管显示。
LED数码管具有颜色鲜艳,亮度高、功耗低、可视角度大和刷新速率快等优点;并且通过查阅相关资料得知,LCD与LED的功耗比大约为10:
1,相比较而言,LED功耗更低。
鉴于本系统只显示有限的数字和符号,选择方案二。
1.3键盘输入控制模块比较论证:
方案一:
采用触摸屏液晶显示按键输入控制。
采用触摸屏液晶,精度可调,美观大方,时尚前卫。
但同时价格昂贵,易损坏,维护量工作大。
方案二:
采用自制的4*4矩阵式键盘输入控制,4*4矩阵式键盘充分利用单片机的I/O端口,节省硬件的同时,扩增了按键数。
同时,自己制作的矩阵式键盘,方便耐用,原理简单,检修容易。
基于减少开支和方便控制的考虑,选择方案二。
1.4环境明暗-路灯控制模块比较论证:
方案一:
在电子城购买光敏传感器。
采购光敏传感器,使用方便,节省时间。
但市面上的传感器质量参差不齐,质量好的传感器又价格高昂,价格低的传感器测量准确度又没有保证。
方案二:
采用自己制作的光敏传感器。
该传感器以光敏电阻为主要元件,利用其在环境明暗不同情况下的分压不同,给单片机以不同反馈,实现开关灯控制,本方案对路灯实时控制,控制灵活,体现人性化设计。
综上分析,我们选用方案二。
1.5交通情况-路灯控制模块比较论证:
方案一:
采用碰撞开关。
碰撞开关结构简单,但是移动物体必须碰到碰撞开关才能工作。
有一定破坏性。
方案二:
采用超声波测距模组。
超声波测距模组通过超声波的渡越时间法,通过不断发射超声波,不断感知超声波,可以比较准确的感知移动物体的位置,实现车来灯亮,车走灯灭。
但超声波测距模组价格不菲,用于本系统有些大材小用。
方案三:
采用自己制作的光电传感器。
自己制作的光电传感器采用一体化结构,对经过的物体感知灵敏,高低电平变化明显,体积小,结构紧凑,安装方便。
为减少开支提高性价比,选择方案三。
1.6声光报警模块比较论证:
方案一:
选择专门的语音存储芯片1420,通过单片机控制放音。
放音时间只有20秒,只能进行简单的放音,不能满足报警的要求。
方案二:
凌阳SPCE061A本身自带DAC语音播放功能,具有大量语音处理函数库供用户调用,功能过于强大,自带大部分语音处理函数库大部分都被浪费,报警的方式过于单一,不够灵活。
方案三:
自己焊接外围声光报警模块,自己焊接报警模组,声光报警方式灵活,且仅利用单片机的一个或两个端口,就可实现报警动作。
综上分析,我们选择方案三。
1.7恒流源模块比较论证:
方案一:
购买现成的恒流源,电流稳定;但价格昂贵。
方案二:
用LM2575ADJ制作可调恒流源。
直流电压输入,经LM2575ADJ和LM393构成反馈回路,输出恒定电流,通过对回路中的可调电阻调节输出电流的大小。
方案理论上可行,但实际试验测试,输出线性度不够高,在5V电压下工作性能不够稳定。
方案三:
用LM358制作PWM恒流驱动。
方案将两片LM358和单片机构成有机整体,利用凌阳开发板的PWM输出,并且利用开发板自带的AD采集对外部电压采集,自动建立电压与输出电流的关系,从而精确调节电流输出。
方案电路连接简单,控制灵活,合理充分地利用了开发板资源。
鉴于以上分析,我们选择方案三。
系统需要的各个模块,我们尽量选用自己制作,而避免购买市场现成的模组。
一方面我们更熟悉各模块原理,另一方面,自己制作的模块可以更好为系统服务。
经过仔细的方案论证和分析,我们确定的最终方案如下:
支路控制及单元控制器:
SPCE061A单片机
显示模块:
自制LED数码管显示
键盘输入控制模块:
自制4*4矩阵式键盘
环境明暗路灯控制模块:
自制光敏传感器
交通情况路灯控制模块:
自制光电传感器
驱动电源模块:
自制恒流驱动电源
声光报警模块:
自制声光报警模块
2理论分析与设计
2.1系统整体设计:
系统结构框图如图1所示。
为了使本模拟路灯控制系统更好应对更复杂的情况(譬如:
当多辆汽车穿梭于我们的公路上,并且双向行驶等复杂情况),我们使用了两片SPCE061A单片机分别作为系统的支路控制器和单元控制器。
图1系统结构框图
2.2单元硬件设计:
2.2.1键盘输入控制电路设计
对于键盘输入设计,我们采用矩阵式,这样对于同样的端口,矩阵键盘多了一倍的按键,易于通过多余的按键实现扩展功能的实现。
值得一提的是,我们拆卸废旧电脑键盘的按键,自己组装成4*4符合题目要求的矩阵键盘,不但变废为宝,而且节省了开支,提高了系统的性价比。
根据设计需求,我们设计的矩阵键盘原理图如图2所示,矩阵键盘功能图如图3所示。
图2键盘原理图
图3键盘功能图
A:
设定路灯②的关灯时间
B:
设定路灯②的开灯时间
C:
设定路灯①的关灯时间
D:
设定路灯①的开灯时间
E:
确定
F:
开始调节时间
G:
分钟加1
H:
小时加1
2.2.2数码管显示电路设计
根据题目要求,本系统能够显示开关灯时间,我们自制的数码管显示电路可以同时显示开关灯时间,同时显示路灯此时此刻的状态。
主要原理图如图4所示,
图4数码管显示原理图
2.2.3光敏传感器电路设计
自制光敏传感器原理图如图5所示,LDR是暗阻≥47K的光敏电阻,VCC接3.3V或5V。
当有光照时,LDR光阻近似为零,Signal输出为低电平。
而当无光时,Signal=VCC*(LDR/(LDR+(R1//R2))).由于LDR和R1//R1近似相等,Signal也约等于VCC/2。
若VCC/2不能给单片机以高电平,则可通过调节R2改小R1//R2的阻值,提高Signal的电压值。
图5光敏传感器原理图
2.2.4光电传感器电路设计
图6光电传感器原理图
图7光电传感器的位置
自制光电传感器如图6所示,光电开关导通后,Signal输出电平近似为零,LED不亮,此时对应公路上有车辆经过;若光电开关没有导通,Signal输出电平为高电平,LED点亮,此时对应公路没有车辆经过。
系统中的光电传感器安装位置如图7所示,安装点距“亮灯状态变换点”垂线间的距离≤1cm.
2.2.5声光报警电路设计
自制声光报警电路原理图如图8所示,声光报警电路由择价格便宜、驱动电压较小的红色发二极管和普通蜂鸣器构成。
经测试得知,LED1的正常工作电压约为2V,额定电流约为50mA,则串联电阻阻值R=(U-2)/(50/1000)=60Ω。
图8发光报警装置
2.2.6恒流驱动电源电路设计
图10稳压部分
图11恒流源部分
恒流源主要由稳压部分和恒流源部分组成,稳压部分主要由三端稳压器件LM317T及整流滤波部分组成,为恒流源及系统其它模块提供稳定电压。
恒流源部分为负载LED提供恒定电流的同时,整体作为反馈回路,为单片机提供电压采集端口,构建“电压-电流-PWM”关系式,使负载始终渡过恒定的电流。
当要求输出功率按规定时间按要求减小时,只要关闭AD采集,直接结合定时器调整PWM,调整恒定电流,达到功率调整的要求。
2.3系统软件设计:
2.3.1主程序设计分析
本路灯控制系统本着以节约成本为主,支路控制器采用一块SPCE061A板控制,单元控制器采用每两个路灯共用一块SPCE061A板,两块CPCE061A板之间通过串行通讯进行数据传输。
由此程序分为两大部分:
支路控制器程序和单元控制器程序。
支路控制器程序总流程图:
图12支路控制器程序总流程图
单元控制器程序总流程图:
图13单元控制器程序总流程图
2.3.2中断程序设计分析
中断程序主要采用的中断6服务程序和中断4服务程序。
中断6服务程序主要提供键盘扫描服务,中断4中断服务程序则主要提供数码管使能及定时变量的累加。
具体程序流程如图14,图15所示。
图14中断6服务程序
图16中断4服务程序
3测试数据与分析
3.1系统测试:
3.1.1基本要求测试:
✓测试对象:
光敏传感器。
✓测试方法:
将连入系统的光敏传感器分别置于傍晚、深夜、清晨三种不同光强度的环境下,观察路灯开启与关闭情况。
✓测试数据:
详见表1
表1
9月3日傍晚
9月4日深夜
9月4日清晨
天气
多云
多云转晴
晴
时段
18:
30
19:
00
19:
30
21:
00
0:
00
2:
00
5:
00
5:
30
6:
00
路灯状况
灭
亮
亮
亮
亮
亮
亮
灭
灭
✓测试对象:
光电传感器。
✓测试方法:
在自制仿真地形上,架设好调好的光电传感器,使自制的车辆M往返于公路的指定路线上,观察并记录路灯开启与关闭状况。
✓测试数据:
设M上定位点与“亮灯状态变换点”垂线间距离为d。
LED1灯编号Ⅰ,LED2灯编号Ⅱ。
测试数据详见表2。
表2
位置
S前
S-B
B-S’
S’后
路灯状态
Ⅰ灭Ⅱ灭
Ⅰ亮Ⅱ灭
Ⅰ灭Ⅱ亮
Ⅰ灭Ⅱ灭
距离d
1.5cm
2.0cm
1.5cm
2.0cm
✓测试对象:
声光报警模块
✓测试方法:
在路灯正常照明的情况下,故意使连接路灯的线路断路,观察有没有声光报警信号发出并显示有故障路灯的地址编号。
✓测试数据:
在不同的路灯发生断路故障时,系统都能及时发出声光报警,并准确显示故障路灯编号。
3.1.2发挥部分测试:
✓测试对象:
恒流驱动电源电流输出
✓测试方法:
用万用表测量不同负载下的电流输出。
✓测试数据:
详见表3
表3
负载数
1个LED
2个LED
3个LED
电流值
0.17A
0.16A
0.16A
✓测试对象:
恒流源输出功率在规定时间内按要求自动调整。
✓测试方法:
设定完毕后,每隔一段时间对恒流留出的电压和电流端口进行测量,计算输出功率。
✓测试数据:
详见表4
表4
9月5日
14:
00
15:
00
16:
00
U/V
3.700
3.503
3.347
I/A
0.148
0.150
0.152
P/W
0.518
0.525
0.507844
误差
1.30%
0.0813%
0.135%
✓测后讨论:
自己制作的各个模块基本都能能较为准确的达到预期目标,虽然自制模块做工不及市场买卖的模块那样细腻,虽然自制模块外形不及市场买卖的模块那样精致。
但自己制作的模块却能像市场买卖的模块那样不逊色的完成使命,而且为本系统节省了一笔较大开支,性价比得到明显提升。
3.2结果分析:
经测试,本系统能够实现:
a)支路控制器能够设定、显示开关灯时间,并控制整条支路按时开灯和关灯。
b)支路控制器可以根据环境明暗变化,自动开灯和关灯。
c)支路控制器可以根据交通情况自动调节亮灯状态。
d)支路控制器能够分别独立控制每只路灯的开灯和关灯时间。
e)当路灯出现故障时(灯不亮),支路控制器可以发出声光报警信号,并显示有故障路灯的地址编号。
f)单元控制器具有调光功能,路灯驱动电源输出功率能在规定时间按设定要求自动减小。
本系统能够完成题目要求的基本要求和发挥部分。
在赛前调试过程中,系统性能较为稳定。
4总结
经过四天三夜的不懈努力,我们圆满完成了任务。
通过不断的硬件试验和程序调试,模拟路灯系统总算可以较好的完成题目的要求,无论在环境明暗感知,还是交通情况判断,路灯智能效果都很明显。
而且我们也本着人性化的考虑,实现了多车双向的路灯控制;本着建设性节约型社会的思路,几乎所有模块都是自己焊接制作,大大提高系统的性价比。
但好的结果总是经历不平凡的坎坷,我们曾不断试验光敏传感器的分压电阻,直到取值合适,输出单片机明显区分的高低电平;程序调试上也曾一度僵持仅仅是调试两单片机串行通信程序,程序员反复调IO口,不停对程序改写,最终才实现另人满意的串行控制。
如此这些努力和尝试,激发我们团结协作精神,培养我们解决问题的创新意识。
5参考文献
◆康华光电子技术基础[数字部分]高等教育出版社
◆康华光电子技术基础[模拟部分]高等教育出版社
◆刘洪涛电子制作实用教程电子科技大学出版社
◆张延伟ProtelDXP电子电路设计技法范例清华大学出版社
◆谭浩强C语言程序设计清华大学出版社
◆凌阳大学计划论坛