基于MCS-51单片机智能小车 控制器设计与实现
1.绪 论
1.1 课题研究的背景
随着现代科技的飞速发展,单片机已经在各个领域得到越来越广泛的应用。单片机由于体积小,功耗低两个基本特征,在通讯,家电,工业控制,仪器仪表,汽车等产品中都可以看到单片机的身影。单片机技术也随着集成电路技术的进步在近几年飞速的发展,这种发展可以分为两方面:一方面在硬件上单片机内部集成了越来越多的功能部件,如A/D,D/A,PWM,WATCHDOG,LCD驱动,串行口,大容量FLASH存储器等;另一方面在开发手段上从汇编语言向高级C语言过度,计算机仿真调试,IAP,ISP技术的应用使单片机开发周期大大的缩短,为各类产品更新,软件的升级提供了可靠的技术保障。在设计单片机应用系统时,由于历史的原因,目前在国内仍然以8051系列单片机为主 [1]。
作为电子专业的学生,非常有必要通过对实际产品的设计和制作,了解现代IT产品的开发全流程。全面提高机,电,光,算知识的综合应用能力,掌握从系统级,电路级,到芯片级各个层次的设计和实现手段。基于上述原因,我选择此设计课题,在此设计过程中,将会用到多门学科的理论知识,复习和巩固了以前所学的知识,更重要的是培养了发现问题,分析问题,解决问题的能力,还有锻炼了动手能力,是一次很好的实践,对以后的学习和工作也会有所帮助。
1.2 开发的意义
科技的进步带动了产品的智能化,单片机的应用更是加快了发展的步伐,它的应用范围日益广泛,已远远超出了计算机科学的领域。小到玩具、信用卡,大到航天器、机器人,从实现数据采集、过程控制、模糊控制等智能系统到人类的日常生活,到处都离不开单片机,此设计正是单片机的一个典型应用。此设计通过实现了小车的无人驾驶,通过对路面的检测,由单片机来判断控制其小车的反应情况,使其变得智能化,实现自动的前进,转弯,停止功能.此系统还不断的完善后可以应用到道路检测,安全巡逻中,能满足社会的需要。
1.3 课题研究的方案
本选题是用单片机技术开发智能小车,通过对路面的检测能实现自动的前进,左右转弯,后退等基本功能,能够方便的应用于路面的安全巡检.小车的控制单元主要包括传感器及调理电路,步进电机及驱动电路,控制器三个部分.小车的行动离不开传感器通过两个红外光电传感器,根据路面的情况分别输出高低信号,由于传感器检测到的信号比较微弱,通过比较运放将其信号扩大,调理,使其输出兼容TTL电平,以便与控制器接口.控制系统,这里采用AT89C52,控制器按一定的时钟周期对光电检测器的输入信号采样检测,根据光电检测器的状态,判断小车的动作,给步进电机输出正确的控制信号,实现电机的转动.通过定时器中断用汇编语言编程实现对小车的控制,改变定时器的初值控制小车的速度.电机部分,在这里采用的是四相八拍反应式步进电机,实现上只要按一定的时钟周期(不小于1.25ms),往四个控制端循环输出一组固定的控制字即可,因左右论轮的安装是反向的,要前进两个步进电机的转动必须是反向的,这里的方向可以由通电顺序来改变,如左转,左轮停止右轮转动就可以了;反之,右转时,右轮停止左轮转动便是, 要使步进电机停止转动,只要输出其他的固定的控制字即可.步进电机的运行还要一个驱动电路,这里采用ULN2803驱动芯片.最后,由于系统各部分的驱动电压,电流的不同,在电源的设计上,用7805进行转换,满足各个模块的需要.
在软件设计方面,则分为三个模块,即数据采集模块,信号处理模块,控制器控制电机模块.此设计结构简单,采用传统的单片机汇编语言进行编程,通过编译成机器语言,再由通信软件将机器码文件送入单片机联机经KEIL C51仿真调试.多次验证结果的正确性。
2.系统硬件设计
2.1 系统设计原理及框图