智能路灯控制系统.docx
- 文档编号:26240642
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:27
- 大小:669.79KB
智能路灯控制系统.docx
《智能路灯控制系统.docx》由会员分享,可在线阅读,更多相关《智能路灯控制系统.docx(27页珍藏版)》请在冰豆网上搜索。
智能路灯控制系统
.设计的任务和要求
设计并制作一套智能路灯控制系统。
控制系统结构如图1所示
LED灯1LED灯2
图1路灯控制系统示意图
基本要求
(1)支路控制器有时钟功能,能设定、显示开关灯时间,并控制整条支路按时开灯和关灯。
(2)支路控制器应能根据环境明暗变化,自动开灯和关灯。
(4)支路控制器能分别独立控制每只路灯的开灯和关灯时间。
(5)当路灯出现故障时(灯不亮),支路控制器应发出声光报警信号,并显示有故障路灯的地址编号。
二.路灯控制系统基本原理
本设计是基于STC单片机的智能路灯控制系统,由电源电路、单片机控制模块、光控电路、红外遥控与检测、液晶显示六个模块组成。
单片机通过光控电路来检测环境亮度控制总的路灯开关,在设定灯开的时间段内,如果没有人或车通过时,电路的分开关元件处于断开状态,路灯不亮;当通过红外检测系统检测到有人或车通过时,电路的分开关元件闭合,路灯形成通路,路灯亮。
同时通过A/D转换芯片把灯的亮度的模拟信号转变成数字信号传送给单片机,单片机输出控制信号又通过D/A转换芯片来调节路灯的明暗。
光敏电阻监控路灯的好坏,当路灯坏了光敏电阻就会返回一个信号给单片机,让单片机驱动蜂鸣器报警,并由显示屏显示哪个灯坏了。
整个设计应用单片机和硬件组合来对系统进行控制,设计简单,成本低,稳定性好。
根据题目基本要求,设计任务主要完成单片机AT89C51对光学传感器传输的信号进行处理,从而控制路灯的亮与灭,同时对行程中的有关数据进行处理并显示,并在此过程中如果出现故障(灯不亮)时则发出声光报警。
为完成相应功能,系统可以划分为以下几个基本部分:
单片机、光敏监测电路、信息显示、声光报警电路、A/D转换、时钟控制电路。
(如图1所示)
四、硬件设计
1、AT89C51最小系统板
AT89C51最小系统板电路图
图3最小系统电路图
2、光控制电路用光敏电阻作光电开关电路,其灵敏度相当高。
由单片机处理光信号,照度较低时,单片机控制电路导通;当有一定照度的光照射时,光敏电阻阻值变小,单片机控制电路断开,实现功能.
图4光控制电路图
3、电源电路根据整机要求,电源电路应为信号产生电路提供5V电压,其中±5V电压需要稳压输出,为此选用了7815,7915两种三端集成稳压器,这种三端固定电压输出式集成稳压器,使用简单,价格较低,且由于内部具有过压过流保护,使整机的电源电路稳定,性能可靠。
外接9V交流电输入,经绝对值电路,然后滤波通过7805,7905产生±5V的直流电压。
电源部分V电路图如图
5所示。
图5电源电路
4、显示电路
多位LED显示时,常将所有位的段选线并联在一起,由一个8位I/O口控制,而共阴极点或共阳极点分别由另一个8位I/O口控制;也可采用并行扩展口构成显示电路。
(如图6所示)
图6数码管显示电路图
5、路灯故障检测
采用光敏二极管检测路灯的开灯与关灯,然后将信号传送到单片机,由单片机程序控制蜂鸣器发出报警声。
在实验板上装一个蜂鸣器,利用单片机控制声光。
6、LED恒流源
采用W7805提供5V的直流稳压电源。
如图八所示五、软件设计
本软件设计的程序设计包括判断各个按钮按下之后能够实现什么功能,判断开灯关灯的时间。
其中,动态显示是在中断子程序中进行的,每一次中断的时间为1MS,每中断一次扫描一次,实现动态显示。
正常走时的动态显示是在T0中
断中进行动态扫描的,设置开灯关灯的时间是在T1中断中进行动态扫描的。
主程序流程图为:
系统软件设计采用模块化思想,主要由单片机完成,实现LED显示、数据转换和存储。
系统软件设计主要由故障检测程序、路灯执行时间、环境光控制路灯亮灭等子程序组成。
其中,路灯执行开关时间和环境决定路灯亮灭流程图下图所示。
主程序清单:
ORG
0000H
AJMP
MAIN
ORG
0003H
AJMP
YIDONG
ORG
000BH
AJMP
INTT0
ORG0030H
MAIN:
NOP
;系统赋初值
SDISP1:
CLRP2.0
CLR
C
JB
P3.1,SDISP1
NOP
ACALL
KEYSCAN
MOV
A,40H
CJNE
A,#06H,SDISP1N
SDISP1N:
JNCSDISP1
MOV
30H,40H
SETB
P3.1
SDISP2:
MOVP2,#0FFH
CLR
P2.1
CLR
C
JB
P3.1,SDISP2
NOP
ACALL
KEYSCAN
MOV
A,40H
CJNE
A,#0AH,SDISP2N
SDISP2N:
JNCSDISP2
MOV
31H,40H
SETB
P3.1
SDISP3:
MOVP2,#0FFH
CLR
P2.2
CLR
C
JB
P3.1,SDISP3
NOP
ACALL
KEYSCAN
MOV
A,40H
CJNE
A,#06H,SDISP3N
SDISP3N:
JNCSDISP3
MOV32H,40H
SETBP3.1
SDISP4:
MOVP2,#0FFH
CLRP2.3
CLR
JB
NOP
ACALL
MOV
CJNESDISP4N:
JNC
MOV
SETBSDISP5:
MOV
CLR
CLR
JB
NOP
ACALL
MOV
CJNESDISP5N:
JNC
MOV
SETBSDISP6:
MOV
CLR
CLR
JB
NOP
ACALL
MOV
CJNESDISP6N:
JNC
MOV
SETBSDISP7:
MOV
CLR
SETB
CLR
JB
NOP
ACALL
MOV
CJNESDISP7N:
JNC
MOV
SETBSDISP8:
MOV
C
P3.1,SDISP4
KEYSCAN
A,40H
A,#0AH,SDISP4N
SDISP4
33H,40H
P3.1
P2,#0FFH
P2.0
C
P3.1,SDISP5
KEYSCAN
A,40H
A,#06H,SDISP5N
SDISP5
35H,40H
P3.1
P2,#0FFH
P2.1
C
P3.1,SDISP6
KEYSCAN
A,40H
A,#0AH,SDISP6N
SDISP6
36H,40H
P3.1
P2,#0FFH
P2.2
P2.1
C
P3.1,SDISP7
KEYSCAN
A,40H
A,#06H,SDISP7N
SDISP7
37H,40H
P3.1
P2,#0FFH
CLR
SETB
CLRJBNOPACALLMOVCJNESDISP8N:
JNC
MOV
SETBSDISP9:
MOV
CLR
CLRJBNOPACALLMOVCJNESDISP9N:
JNC
MOV
SETBSDISPA:
MOV
CLR
CLRJBNOPACALLMOVCJNESDISPAN:
JNC
MOV
SETBSDISPB:
MOV
CLR
CLR
JB
NOP
ACALL
MOVCJNESDISPBN:
JNC
MOV
SETB
P2.3
P2.2
C
P3.1,SDISP8
KEYSCAN
A,40H
A,#0AH,SDISP8N
SDISP8
38H,40H
P3.1
P2,#0FFH
P2.0
C
P3.1,SDISP9
KEYSCAN
A,40H
A,#06H,SDISP9N
SDISP9
3AH,40H
P3.1
P2,#0FFH
P2.1
C
P3.1,SDISPA
KEYSCAN
A,40H
A,#0AH,SDISPAN
SDISPA
3BH,40H
P3.1
P2,#0FFH
P2.2
C
P3.1,SDISPB
KEYSCAN
A,40H
A,#06H,SDISPBN
SDISPB
3CH,40H
P3.1
SDISPC:
MOV
P2,#0FFH
CLR
P2.3
CLR
C
JB
P3.1,SDISPC
NOP
ACALL
KEYSCAN
MOV
A,40H
CJNE
A,#0AH,SDISPCN
SDISPCN:
JNC
SDISPC
MOV
3DH,40H
SETB
P3.1
MOV
TMOD,#01H
MOV
TH0,#3CH
MOV
TL0,#0B0H
SETB
EA
SETB
ET0
SETB
EX0
SETB
IT0
MOV
R5,#14H
MOV
P2,#0FFH
MOV
34H,#00H
MOV
39H,#00H
MOV
3EH,#00H
LOOP1:
JNBP3.5,LOOP2
ACALL
JUDGE3
LOOP2:
MOV
R4,#3AH
SETB
TR0
ACALL
DISPLAY
AJMP
LOOP1
;键盘扫描程序
KEYSCAN:
MOVP1,#0FFH
CLR
P1.4
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JZNOKEY1
LCALL
DELY10MS
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JZNOKEY1
MOV
A,P1
ANL
A,#0FH
CJNE
A,#0EH,NK1
MOV
LJMP
40H,#1
DK1
NK1:
CJNE
A,#0DH,NK2
MOV
40H,#4
LJMP
DK1
NK2:
CJNE
A,#0BH,NK3
MOV
40H,#7
LJMP
DK1
NK3:
CJNE
A,#07H,NK4
MOV
40H,#14
LJMP
DK1
NK4:
NOP
DK1:
MOV
A,40H
MOV
DPTR,#TABLE
MOVC
A,@A+DPTR
MOV
P0,A
DK1A:
MOV
A,P1
ANLA,#0FH
XRLA,#0FH
JNZDK1A
RETNOKEY1:
MOVP1,#0FFH
CLRP1.5
MOVA,P1
ANLA,#0FH
XRLA,#0FH
JZNOKEY2
LCALLDELY10MS
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JZNOKEY2
MOV
A,P1
ANL
A,#0FH
CJNE
A,#0EH,NK5
MOV
40H,#2
LJMP
DK2
NK5:
CJNE
A,#0DH,NK6
MOV
40H,#5
LJMP
DK2
NK6:
CJNE
A,#0BH,NK7
MOV
40H,#8
LJMP
DK2
NK7:
CJNE
A,#07H,NK8
MOV
LJMP
40H,#0
DK2
NK8:
NOP
DK2:
MOV
A,40H
MOV
DPTR,#TABLE
MOVC
A,@A+DPTR
MOV
P0,A
DK2A:
MOV
A,P1
ANLA,#0FH
XRLA,#0FH
JNZDK2A
RETNOKEY2:
MOVP1,#0FFH
CLRP1.6
MOVA,P1
ANLA,#0FH
XRLA,#0FH
JZNOKEY3
LCALLDELY10MS
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JZNOKEY3
MOV
A,P1
ANL
A,#0FH
CJNE
A,#0EH,NK9
MOV
40H,#3
LJMP
DK3
NK9:
CJNE
A,#0DH,NK10
MOV
40H,#6
LJMP
DK3
NK10:
CJNE
A,#0BH,NK11
MOV
40H,#9
LJMP
DK3
NK11:
CJNE
A,#07H,NK12
MOV
40H,#15
LJMP
DK3
NK12:
NOP
DK3:
MOV
A,40H
MOV
DPTR,#TABLE
MOVC
A,@A+DPTR
MOV
P0,A
DK3A:
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JNZ
DK3A
RET
NOKEY3:
MOV
P1,#0FFH
CLR
P1.7
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JZNOKEY4
LCALL
DELY10MS
MOV
A,P1
ANL
A,#0FH
XRL
A,#0FH
JZNOKEY4
MOV
A,P1
ANL
A,#0FH
CJNE
A,#0EH,NK13
MOV
40H,#10
LJMP
DK4
NK13:
CJNEA,#0DH,NK14
MOV
40H,#11
LJMP
DK4
NK14:
CJNEA,#0BH,NK15
MOV
40H,#12
LJMP
DK4
NK15:
CJNEA,#07H,NK16
MOV
40H,#13
LJMP
DK4
NK16:
NOP
DK4:
MOV
A,40H
MOV
DPTR,#TABLE
MOVC
A,@A+DPTR
MOV
P0,A
DK4A:
MOVA,P3
ANL
A,#0FH
XRL
A,#0FH
JNZ
DK4A
RET
NOKEY4:
LJMPKEYSCAN
;时钟功能
INTT0:
PUSH
ACC
PUSH
PSW
CLR
ET0
CLR
TR0
MOVADDMOVMOVADDCMOVSETBDJNZADDSS:
MOV
MOV
ACALL
MOV
CLR
CJNEADDMM:
JC
ACALL
MOV
ACALL
MOV
CLR
CJNEADDOUT:
JC
ACALL
OUTT0:
POP
POP
SETB
RETI
;加1子程ADD1:
MOVINCSWAPORLADDDAMOVANLMOVMOVDECSWAPANLMOVACALLACALL
A,#0B7H
A,TL0
TL0,A
A,#3CH
A,TH0
TH0,A
TR0
R5,OUTT0
R5,#14H
R0,#3CH
ADD1
A,R3
C
A,#60H,ADDMM
OUTT0
CLR0
R0,#3AH
ADD1
A,R3
C
A,#60H,ADDOUT
OUTT0
CLR0
PSW
ACC
ET0
序
A,@R0R0
AA,@R0A,#01HAR3,AA,#0FH@R0,AA,R3R0AA,#0FH@R0,A
JUDGE1
JUDGE2
RET
;判断亮灯及灭灯
JUDGE1:
MOV
A,3DH
CJNE
A,33H,EXIT1
MOV
A,3CH
CJNE
A,32H,EXIT1
MOV
A,3BH
CJNE
A,31H,EXIT1
MOV
A,3AH
CJNE
A,30H,EXIT1
JBP3.5,EXIT1
ACALLACTION1
EXIT1:
NOP
RET
ACTION1:
CLR
P3.7
CLR
P3.6
RET
JUDGE2:
MOV
A,3DH
CJNE
A,38H,EXIT2
MOV
A,3CH
CJNE
A,37H,EXIT2
MOV
A,3BH
CJNE
A,36H,EXIT2
MOV
A,3AH
CJNE
A,35H,EXIT2
JBP3.5,EXIT2
ACALLACTION2
EXIT2:
NOP
RET
ACTION2:
SETB
P3.7
SETB
P3.6
RET
JUDGE3:
CLR
P3.7
CLR
P3.6
JNB
P3.5,EXIT12
SETB
P3.7
SETB
P3.6
EXIT12:
RET
;对计时单元清零
CLR0:
CLRA
MOV@R0,AINCR0
MOV@R0,A
RET
DELY10MS:
MOVR6,#10
D1:
MOV
R7,#248
DJNZ
R7,$
DJNZ
R6,D1
RET
TABLE:
DB
3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H
;数码管显示
DISPLAY:
MOV
R2,#0FEH
PLAY:
MOV
A,R4
MOVR1,A
MOV
A,R2
MOV
P2,A
MOV
A,@R1
ANL
A,#0FH
MOV
DPTR,#TABLE
MOVC
A,@A+DPTR
MOV
P0,A
LCALL
DL1MS
INC
R4
MOV
A,R2
JNB
ACC.4,ENDOUT
RLA
MOV
R2,A
AJMP
PLAY
ENDOUT:
SETBP2.0
SETB
P2.1
SETB
P2.2
SETB
P2.3
RET
;1毫秒延时程序,
DL1MS:
MOVR6,#08H
DL1:
MOVR7,#10H
DL2:
DJNZR7,DL2
DJNZR6,DL1
RET
DELAY:
MOVR0,#0FFH
END
六、结论
本文设计了一个智能路灯控制系统,该控制系统包括1个支路控制器和2个单元控制器。
本系统支路控制器和单元控制器均采用AT89C51单片机。
该系统具体完成的功能包括:
支路控制器有时钟功能、能根据环境明暗变化自动开灯和关灯、能根据交通情况自动调节亮灯状态、能分别独立控制路灯的开灯时间和关灯时间、能进行路灯故障的报警、自制了单元控制器中的LED灯恒流
单元控同时单元步拓展为
驱动电源。
支路控制器根据环境的亮暗程度来决定是否将路将灯开或关;制器会将实时检测路灯的故障情况及时反馈至支路控制器,启动报警;控制器还可以控制LED恒流源的输出功率以调节路灯的亮暗程度,进一根据环境的亮暗程度调节路灯亮暗,以节省电源功率。
七、参考资料
(1)电子设计竞赛优秀论文选集大赛组委会
(2)全国大学生电子设计竞赛硬件电路设计精解
(3)单片机在电子电路设计中的应用清华大学出版社
(4)电子生产工艺实践教程人民邮电出版社
(5)51系列单片机设计实例北京航空航天大学出版社
(6)单片机原理与接口技术大连理工大学出版社
设计总结:
这次的课程设计可谓一波三折,从刚拿到课程设计课题,刚开始的题目是《单片机控制短信的收发》,我查找一些相关的书籍及资料,没有一点思路,然后又换的这个题目,不管怎样,最终还是做了出来。
做这个题目之前也是照了相关的资料和书籍,并根据实际情况拟定设计方案,从而达到优化方案。
同时,通过这次课程设计,在各个方面都有了很大的提高。
在本次课程设计中深深认识到自己的各个方面的不足之处,奔着提高动手能力以及检测大学所学知识的目的,我严格要求自己,每一环节都认真对待,定期向知道老师报告进展情况和请教不懂的地方,得以完成任务。
在以后的工作中,我必须进一步深化在实践中去丰富理论,完善知识结构。
由于环境条件的影响,理论与实践还是有一定的差距,这也要求我们在实践中注意检验的积累。
指导教师评语:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 路灯 控制系统