东北石油大学课程设计2013年7月8日课程单片机课程设计题目基于单片机的智能循迹小车控制系统院系电气信息工程学院测控技术与仪器系专业班级学生姓名学生学号指导教师东北石油大学课程设计任务书课程单片机课程设计题目基于单片机的智能循迹小车控制系统专业姓名学号一、任务以AT89C51单片机为控制核心,利用三路红外传感器对路面上的黑色引导线进行检测。二、设计要求[1]当三路传感器其中一路检测到路面上的黑线后,该路红外传感器处理电路输出一个低电平信号。[2]操作过程见以下表格:电机A电机B传感器“左”转动停止传感器“中”转动转动传感器“右”停止转动[3]基本电路包括:单片机最小系统、电机驱动电路等;[4]提交设计报告、电路图及程序源码。三、参考资料[1]张毅刚,单片机原理及应用[J],北京:高等教育出版社,2003.[2]黄贤武,郑莜霞,传感器原理与应用[J],成都:电子科技大学出版社,2004.[3]周润景,蔡雨恬,PROTEUS入门实用教程[M],北京:机械工业出版社,2011.[4]楼然苗,李光飞,单片机课程设计指导[J],北京:北京航空航天大学出版社2007.[5]万光毅.单片机实验与实践教程[M].北京:北京航空航天大学出版社.2005.1.[6]朱清慧,Proteus电子技术虚拟实验室[M],北京:中国水利水电出版社,2010.完成期限2013.7.1-2013.7.10指导教师专业负责人2013年6月29日单片机课程设计目录第1章绪论...............................................................................................................11.1AT89C51单片机的概述.......................................11.2关于路线轨迹检测..........................................11.3本设计任务................................................2第2章总体方案论证与设计..................................................................................32.1电源模块..................................................32.2单片机系统模块............................................32.3自动循迹模块............................................42.4电动机驱动模块............................................42.5总体硬件组成框图..........................................5第3章系统硬件设计.............................................................................................63.1单片机最小系统............................................63.2电机驱动电路..............................................73.3传感器电路设计............................................8第4章系统软件设计.............................................................................................104.1主程序设计...............................................104.2赛道检测程序设计.........................................11第5章系统调试与测试结果分析.........................................................................125.1使用的设备及软件.........................................125.2系统调试.................................................125.3测试结果.................................................13结论.........................................................................................................................14参考文献.....................................................................................................................15附录1程序..............................................................................................................16附录2仿真效果图....................................................................................................19单片机课程设计1第1章绪论智能小车,是一个集环境感知、规划决策、自动行驶和多等级辅助驾驶等功能于一体的综合系统,集中地运用了计算机、传感、信息、通信、导航及白动控制等技术,是典型的高新技术综合体。它具有道路障碍自动识别、自动报警、自动制动、自动保持安全距离、车速和巡航控制等功能。智能车辆的主要特点是在复杂的道路情况下,能自动地操纵和驾驶车辆绕开障碍物并沿着预定的道路(轨迹)行进。1.1AT89C51单片机的概述AT89C51是一种带4K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。1.2关于路线轨迹检测循迹过程由红外传感器完成。红外传感器多对红外收发管组成,通过检测接收到的反射光强,判断黑白线。红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射管发出的光线则检测出黑线继而输出高电平。红外对管输出的模拟电压通过电压比较器转换成数字电平输出到单片机。该智能车采用3组红外传感器对赛道进行道路检测,单片机根据采集到的信单片机课程设计2号的不同状态判断小车当前状态,通过电机驱动芯片L298N发出控制命令,控制电机的工作状态以实现对小车姿态的控制。1.3本设计任务智能作为现代的新发明,是以后的发展方向,它可以按照预先设定的模式在一个环境里自动的运作,不需要人为的管理,可应用于科学勘探等用途。本设计任务要求设计一个小车,以AT89C51单片机为控制核心,通过红外传感器自动识别路面上的黑白线,并把结果转换为电信号传到单片机中,由单片机对电信号进行分析计算,控制电机做出正确的反应,并沿着黑线轨迹行驶。单片机课程设计3第2章总体方案论证与设计本系统采用单片机AT89C51为智能寻迹小车的控制核心,系统主要包括电源模块、单片机系统模块、自动循迹模块、电动机驱动模块等。下面对各模块的设计逐一进行论证比较。2.1电源模块由于本系统需要电池供电,我们考虑了如下几种方案为系统供电。方案一:采用10节1.5V干电池供电,电压达到15V,经7812稳压后给支流电机供电,然后将12V电压再次降压、稳压后给单片机系统和其他芯片供电。但干电池电量有限,使用大量的干电池给系统调试带来很大的不便。方案二:采用3节4.2V可充电式锂电池串联共12.6V给直流电机供电,经过7812的电压变换后给直流电机供电,然后将12V电压再次降压、稳压后给单片机系统和其他芯片供电。锂电池的电量比较足,并且可以充电,重复利用,因此,这种方案比较可行。但锂电池的价格过于昂贵,使用锂电池会大大超出我们的预算。方案三:采用12V蓄电池为直流电机供电,将12V电压降压、稳压后给单片机系统和其他芯片供电。蓄电池具有较强的电流驱动能力以及稳定的电压输出性能。虽然蓄电池的体积过于庞大,在小型电动车上使用极为不方便,但由于我们的车体设计时留出了足够的空间,并且蓄电池的价格比较低。比较以上三种方案,方案三具有更大的有点,因此,我们选择了第三种方案。2.2单片机系统模块方案一:采用可编程逻辑器件CPLD作为控制器。CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、IO资源丰富、易于进行功能扩展。采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高。且从使用及经济的角度考虑我们放弃了此方案。方案二:采用宏晶公司的STC89C52单片机,它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。处理速度高,尤其适用于语音处理和识别等领域。单片机课程设计4本系统主要是进行寻迹运行的检测以及电机的控制。使用STC89C52单片机,完全能够胜任,且价格低廉,使用方便。从经济的角度考虑,我们选择了方案二。2.3自动循迹模块方案一:用光敏电阻组成光敏探测器。光敏电阻的阻值可以跟随周围环境光线的变化而变化。当光线照射到白线上面时,光线发射强烈,光线照射到黑线上面时,光线发射较弱。因此光敏电阻在白线和黑线上方时,阻值会发生明显的变化。将阻值的变化值经过比较器就可以输出高低电平。但是这种方案受光照影响很大,不能够稳定的工作。因此我们考虑其他更加稳定的方案。方案二:红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,用3组光电发射管和接收管自己制作光电对管寻迹传感器。红外发射管发出红外线,当发出的红外线照射到白色的平面后反射,若红外接收管能接收到反射回的光线则检测出白线继而输出低电平,若接收不到发射管发出的光线则检测出黑线继而输出高电平。单片机就是通过接收到的高低电平为依据来确定黑线的位置和小车的行走路线。对于发射和接收红外线的红外探头,可以自己制作或直接采用集成式红外探头。经测试,此种方法简单可靠。经反复对比后,采用方案二。2.4电动机驱动模块方案一:采用传统的功率三极管作为