资源描述
循迹小车
介绍:AT89C52单片机为循迹小车检测和控制中心,实习小车自动检测路径,正确循迹.系统经过I0口控制小车前进及转向.循迹是小车在黑色地板上沿着白色线行驶,采取光电二极管进行信号采集,若光敏二极管检测到黑线时输出低电平,当有光时产生高电平,信号传送给单片机,来控制小车转向,从而达成自动循迹功效.
一 设计要求:
(1) 循迹:按预先设定轨迹自动行驶.
(2) 完成单片机最小系统设计.
(3) 完成外围应用电路设计和实现.
(4) 完成软件对硬件检测和调试.
小车行驶路线图:
发车区
二 循迹原理:
循迹是小车在黑色地板上演着白线行走,采取光电探测器,系统电路发光二极管发出可见光照射到黑带时,光线被吸收,展现高阻态,输出为低电平.当照射到白线时,光线被反射回来被光敏二极管检测到,其阻抗会减小,输出高电平.
三 系统模块方案确实定:
1 光电传感器进行循迹
2 采取AT89C52单片机作为主控制器
3 L293D作为电机驱动芯片
4 LED作动态显示
四 硬件系统设计
1单片机最小系统设计:
2 检测电路设计:
检测电路用红外发光管和高敏光电二极管将光信号转换成电信号.
3 LED显示电路设计:
LED显示电路
4 电机驱动电路设计:
采取L293D芯片, L293D经过内部逻辑生成使能信号,H桥电路输入量能够用来设置马达转向,使能信号能够用于脉宽调整(pwm)
电机驱动电路
5 电源模块设计:
LM7805开关电压调整器是降压型电源管理单片机集成电路,能够输出3A驱动电流同时含有良好线性和负载调整特征.
四 软件系统设计:
1 系统程序步骤图:
初始化
改变行驶方向
小车是否偏离黑线
正常行驶
自动循迹
N
Y
小车是否偏离黑线
N Y
图3.1系统程序步骤图
2 光电检测子程序:
保护现场
开始
右转
是否左偏
左转
返回
是否右偏
图3.2检测子程序步骤图
自动循迹
是否检测到光源
正常行驶
开始
3 驱动电机子程序:
N
Y
秒清零,分加一
返回
是否大于60s
定时中止个,十位显示
分秒缓存区
开始
4 LED显示子程序:
六 系统程序清单:
ORG 0H
ENY EQU P1.3
ENZ EQU P1.6
YQ EQU P1.7
ZH EQU P1.5
ZQ EQU P1.4
YH EQU P1.2
SL EQU 30H
SH EQU 31H
ML EQU 32H
KEY EQU 33H
SED EQU P2.7
AJMP MAIN
ORG 03H
AJMP INTT0
ORG 0BH
AJMP TT0
ORG 13H
AJMP INTT1
MAIN:MOV SP,#67H
JNB P0.4,DD1
AJMP YAO
DD1:AJMP DD
YAO:MOV KEY,00H
MOV P1,00H
SETB ENZ
SETB ENY
MOV P0,00H
CLR P2.0
INT:JB SED,$
LCALL DELAY
JB SED,INT
MOV R5,#05H
TT3:DJNZ R5,TT5
AJMP EXIT1
TT5:MOV DPL,#00H
MOV DPH,#00H
JNB SED,$
TT6:NOP
NOP
NOP
NOP
INC DPTR
JB SED,TT6
MOV A,DPH
CLR C
SUBB A,KEY
CLR C
RRC A
MOV KEY,A
AJMP TT3
TT7:MOV A,KEY
SETB C
RRC A
MOV KEY,A
AJMP TT3
EXIT1: MOV A,KEY
SWAP A
ANL A,#0FH
CJNE A,#02H,DD2
SETB ZQ
LACALL DELAY
CLRZQ
AJMP INT
DD4: CJNE A,#04H,INT
SETB ZH
SETB YH
LACALL DELAY
CLR ZH
CLR YH
AJMP INT
DELAY:MOV R7,#70
LL:MOV R6,#50
DJNZ R6,$
DJNZ R7,LL
RET
DD: CLR A
MOV SL,A
MOV SH,A
MOV ML,A
MOV P1,#00H
MOV TMOD,#01H
MOV TL0,#0AFH
MOV TH0,#03CH
MOV R7,#20
SETB ET0
SETB EX0
CLR EX1
SETB IT0
SETB IT1
SETB EA
SETB ENZ
SETB ENY
SETB ZQ
SETB YQ
SETB TR0
PP:LCALL DIS
AJMP PP
INTT0:PUSH ACC
PUSH PSW
JNB P3.1,LL1
JNB P3.0,LL2
AJMP EXIT
LL1:CLR ZQ
KK1:JNB P3.0,HOU
JNB P3.0,LL2
AJMP EXIT
LL2:CLR YQ
JNB P3.1,HOU
KK2:JNB P3.0,KK2
SETB YQ
AJMP EXIT
HOU:MOV P1,#00H
SETB ZH
SETB YH
CLR EX0
SETB EX1
AJMP EXIT
INTT1:PUSH ACC
PUSH PSW
JNB P3.4,LL8
JNB P3.5,LL9
AJMP EXIT
LL8:CLR ZH
KK3:JNB P3.4,$
SETB ZH
AJMP EXIT
LL9:CLR YH
KK4:JNB,P3.5,$
SETB YH
AJMP EXIT
EXIT:POP PSW
POP ACC
RETI
DEL:MOV R2,#5
LL5:MOV R3,#80
DJNZ R3,$
DJNZ R2,LL5
RET
DEL1:MOV R4,#10
KK:MOV R5,#100
LCALL DEL
DJNZ R5,$
DJNZ R4,KK
RET
TT0:PUSH ACC
PUSH PSW
DJNZ R7,EXT
MOV R7,#20
INC SL
MOV A,SL
CJNE A,#10,EXT
MOV SL,#00H
INC SH
MOV A,SH
CJNE A,#6,EXT
MOV SH,#00H
INC SH
MOV A,SH
CJNE A,#6,EXT
MOV SH,#00H
INC ML
MOV A,ML
CJNE A,#10,EXT
MOV ML,#00H
EXT:MOV TL0,#0AFH
MOV TH0,#3CH
POP PSW
POP ACC
RETI
DIS:MOV DPTR,#TAB
MOV A,SL
MOVC A,@A+DPTR
MOV P2,A
CLR P0.2
MOV A,SH
MOVC A,@A+DPTR
MOV P2,A
CLR P0.1
LCALL DEL
SETB P0.1
MOV A,ML
MOVC A,@A+DPTR
MOV P2,A
CLR P0.0
LCALL DEL
SETB P0.0
RET
TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
五 参考文件:
1 郭文川.MCS-51单片机原理.接口及应用.电子工业出版社,
2 宋文年.自动检测技术.北京:高等教育出版社,
3 杨素行.模拟电子技术简明教程.北京:高等教育出版社,
4 余孟尝.数字电子技术基础简明教程.北京:高等叫出版社
5 211TC中国电子网
6 万方数据资源统一服务系统
展开阅读全文