己口l 7年7月 第]5卷第7期 应用天地 基于STC89C5 1单片机的多功能智能小车设计* 王瑞琦 (西安航空学院西安710077) 摘要:设计一种以STC89C51单片机为控制核心,具备避障、循迹和遥控功能的智能小车。使用光电开关检测障碍,通过控 制电机转向来进行壁障;使用红外传感器寻找线路,控制智能小车自行循迹;使用红外遥控器实现前进、后退、向右、向左、停 止和发动功能。小车由底盘、传感器和车载电路组成,车载电路包括电源、单片机最小系统和驱动。系统采用了模块化设计 方法,结构简单,可靠性高。 关键词:STC89C51;智能小车;红外传感器 中图分类号:TN79 文献标识码:A 国家标准学科分类代码:510.10 Design of multifunctional smart car based on STC89C5 1 MCU Wang Ruiqi (Xi’an Aeronautical University,Xi an 710077,China) Abstract:This paper presents the design of a smart car based on STC89C51 MCU,which can avoid obstruction,track and be remotely controlled.The photoelectric switch can detect barriers,and carry out it by driving the motor steering. The infrared sensors can find the line and let the car ran from it.Using infrared signal,the car can also be remotely con— trolled to forward,back,turn right,turn left,stop and start.The car includes the chassis,the sensors and the vehicle electric circuits.The electric circuits includes the batteries,the MCU and the driving part.The overal1 system ulilizes modularization designing。which is simple,but reliable. Keywords:STC89C5 1;smart car;infrared sensor 1 引 言 智能小车是一个集传感探测技术、智能控制技术和电 机拖动技术为一体的机器人,是目前电子设计的一个热门 话题 ]。智能小车可用于探测、搜救和科研等领域,甚至 2硬件设计及电路 设计的智能小车由STC89C51控制部分、避障部分、 循迹部分、电源部分、驱动部分和显示部分组成,系统框图 如图1所示。 有一定的军用价值,能代替人类去“危险地带”或“不可接 触的地方”执行任务。前人研究设计的智能小车有避障小 车、红外控制小车和自动循迹小车,本文设计的小车集合 以上多种功能,并通过多次测试,提高了小车的工作稳定 性和适用范围。 该智能小车系统的设计以STC89C51为核心 ]。遥 控器向小车上的接收器发送信号,通过LM393比较放大 后到达STC89C51单片机,单片机通过L293D产生PWM 信号驱动两个减速电机 ],使小车具备前进、后退、向右、 向左、停止和发动功能。 收稿日期:2017-03 *基金项目:国家自然科学基金(61640006)资助项目 中国科技核心期刊 国外电子测量技术一103— 应用天地 在行驶过程中不断地向地面发射红外光,当红外光遇到白 色纸质地板时产生漫反射,反射光被小车上的红外传感器 接收;如果遇到黑线则红外光被吸收,小车上的传感器接 收不到红外光,单片机以是否接收到反射回来的红外光为 依据来确定黑线的位置和小车的行走路线。循迹部分用 来完成智能小车在场地黑色椭圆形轨道向前驶行和方位 校正,采取2个RPR220型光电对管来完成。运放LM423 做比较器处理传感器采集到的路面信息,并传递给单片 机。可调电阻R可以调节比较器的门限电压,使输出波形 可以直接被单片机查询使用_6],电路如图2所示。 图2循迹电路 2.2避障电路 用光电开关来达到小车的避障目的。作为传感器,光 电开关把介于发射端和接收端之间光的强弱差异转变成 电流改变。光接近开关被称为光电开关,它是以检测物在 接收到光时所产生的光束遮挡从同步回路中选通电路,从 而探测出物体有没有阻碍小车的前进,通过PWM信号控 制电动机的转向 ],电路如图3所示。小车在不同的障碍 物类型下,安全距离也是不同的,为了避开障碍物,小车必 须朝着远离障碍物的方向运动。 图3避障电路 2.3 STC89C51控制电路 单片机最小系统电路如图4所示 ,复位信号是由 RST引脚进入到芯片的特有触发器。假如RST的引脚产 生高电平,并且在2个机器周期以内,那么CPU就可以响 应,将系统进行复位。可以有两种复位方式。 1)上电复位:上电的瞬间情况下,由于电容的充电电 流非常大,因此电容接近短路,RST端就产生了高电平, 自动开始复位;当电容上的电压达到电源的额定电压值 ~104一国外电子测量技术 己口I 7年7月 第]6卷第7期 时,电容的充电电流就会变为0,电容就会接近开路,这时 RST端变成低电平,程序开始正常稳定运行。 2)手动复位:通过上电复位,当按下复位按键时,RST 直接和Vcc相连接,高电平形成复位,并且电容会短路放 电;当复位按键松开时,V 。开始对电容进行充电,其电流 作用在电阻上,RST保持在高电平,依旧复位。充电完成 后,电容接近开路,RST产生低电平,系统正常稳定工作。 图4单片机最小系统电路 2.4显示模块 采用八段数码管显示,LED显示具有电路布局简洁、 测试方便、软件实现容易等优势,用它来显示小车运行的 实时速度 ]。 2.5电源模块 本系统所有芯片都需要+5 V的工作电压,而干电池 只能提供1.5 V倍数的电压,并且随着使用时间的延长, 其电压会逐渐下降。对此,采用12 V电源作为外部电源, 通过集成降压芯片IM2576和AMS1117—3.3来降压到5和 3.3 V,给小车的各个部分供电 ,电路如图5所示。 I" 220 p.F 图5电源模块 2.6电机驱动模块 系统采用PWM来调节直流电机的速度 。在 PWM驱动控制的调整系统中,通过改变直流电机电枢上 电压的“占空比”来改变平均电压的大小,从而控制电动机 的转速。 中国科技核心期刊 己口l 7年7月 第]6卷第7期 该设备采用两个直流电机,直流电机的正反转控制可 通过改变电机两端电压的极性来实现,直流电机驱动采用 的是H桥电路 。此系统中使用的电机是专用驱动芯片 L293D。L293D拥有许多功能比如四通道驱动、集成电路 等。用以接收DTL或TTL电平,电机驱动的继电器、开 应用天地 起,则小车向左驶行,右边信号灯亮起,则小车向右驶行。 两侧的传感器不间断修正轨迹,让小车自始至终按照顺黑 线行驶,模块逻辑如图7所示。小车探测黑线的同时,也 在探测一些障碍物,假设其前端有障碍物,则低电平由光 电开关往单片机输出,与此同时小车按照相应的程序向右 关、电源与晶体管等,内部包含4通道逻辑驱动电路。它 的额定电流是1 A,最高不超过1.5 A,Vss电压的最小值 驶行,以躲避此障碍,否则小车就会向前驶行,模块逻辑如 图8所示。 是4.5 V,最高不超过36 V。引脚说明如表1所示。 表1引脚说明 L293D可直接控制电机正常工作,不需要单独把电路 隔离开来。改变芯片控制端的电平是通过使用单片机的 I/O输入来实现的,一方面可以使电机正常地正反转和停 止(表1是其使能端、输入引脚和输出引脚的逻辑关系), 同时能达到直流减速电机产生大电流的要求。测试的时 候再依照上表,用程序语言输入相对应的码值进行编程, 就可以轻松实现其相应的操作。其驱动电路原理如图6 所示。 图6驱动电路原理 3软件设计 软件设计时,红外探测器首先扫描(即运行红外探测 程序),检测到障碍物,则进人数据处理,最后显示结 果 。为达到目标,设计程序要将全部过程分为若干小 部分,一个部分被视为一个系统模块。所谓“模块”,实际 上是要达到基本的设计要求,拥有的、部分的程序段, 这种程序的设计方法被称为模块程序设计法n 。 在软件设计中采取了模糊控制算法 ,因此,小车寻 迹测试结果比较理想,能精确按照设计路线行驶。 打开电源后小车开始运行,若探测到黑线,则高电平 由红外传感器输出,小车顺着黑线驶行。两个红外传感器 装载至其两侧,用以探寻黑线信号。假设左边信号灯亮 中国科技核心期刊 l尘圭墨堡I ◇ 由 幽 豳 图7循迹模块流程 图8避障模块流程 4设计结果 设计最终检测了智能小车的各项功能,基本达到了设 计要求。能使用遥控进行基本的运行控制,实现小车的后 退、向前、向右、向左、停止和发动。能通过安装于小车前 段两侧的红外传感器正确地循迹和避障。测试中,分析了 产生的错误和误差,其原因是场所环境以及各种实际条件 的,比如自然光线、轨道弯曲度、小车变阻器调节不灵 敏等,这些都有待进一步的提高。 4.1测试方案 按照模块进行调试,先使子模块完成各自功能,然后 调用子模块完成综合功能。 1)将小车电池装好平稳地放在地上,按下遥控按键使 小车按照遥控的控制前进、后退、左转和右转。 2)按下循迹按键进行循迹。按照正向和反向两个方 向进行测试,看看小车是否能沿规定线路循迹;然后再按 国外电子测量技术一105— 应用天地 _ 下避障按键,看看是否能正确避开障碍物。 3)按照上面步骤反复测试4次。测试结果如表2 所示。 4.2问题与解决方案 1)遥控小车前进和后退有问题,并且不能正常避障 解决方案:经过排查,发现有元件虚焊情况,重新焊接 后避障正常、遥控正常。 2)小车循迹指示灯不亮,并且遥控前行有问题 解决方案:改变循迹环境并且调节变阻器使得循迹和 遥控前行正常。 3)遥控的后退功能不正常 解决方案:在多次测试后电压有损耗,电机动力不足。 给电池充电后再进行测试,功能全部正常。 表2测试结果 第1次 o o 1 1 1 0 第2次0 1 1 1 0 1 第3次 l 0 1 1 1 1 第4次 1 1 1 1 1 1 注:“O”代表不能正常工作,“l”代表可以正常工作 智能小车的遥控、循迹和避障功能使其在实际生产中 应用广泛,图9所示为智能小车在烟草行业中的应用(循 迹运送)。智能小车还可用于科学探测中,能在恶劣条件 下进行检测和救援,既保障了安全,又提高了效率。 图9 烟草行业循迹运送小车 5 结 论 设计一款高精度、高稳定性的多功能智能小车,详细 介绍了小车在循迹、避障和遥控中的硬件电路和软件实 现。介绍了硬件实现中红外传感器和STC89C51单片机 的作用,以及控制驱动电机转速的PWM技术。 此设计硬件结构简单,模块化程度高,测试及调整小 车参数方便,系统反应速度快。由最后的测试结果可以看 1O6一国外电子测量技术 己口I 7年7月 第]6卷第7期 出,智能小车设计方案无误,各项指标稳定,达到了预期的 设计目的。 参考文献 [1] 章隆彬,邱恒,马国荣.基于Android操作系统的XK~I 教育机器人平台设计[J].国外电子测量技术,2013, 32(8):50—53. [2] 帅盼,张海宁,白福等.基于超声波测距的汽车倒车避 障系统设计[J].国外电子测量技术,2O16,35(10): 54—57. [3] 汪洋,王少宏,李鑫.一种基于STC89C52单片机的简 易智能小车的实现__J].电脑知识与技术,2016,12(17): 177—178. [4] 蓝厚荣.单片机的PWM控制技术[J].工业控制计算 机,2010,23(3):97 98. Is] 兰羽.基于红外传感器ST188的自动循迹小车设计_J]. 电子设计工程,2O13,21(3):64—66. I-6] 尹杰,杨宗帅,聂海等.基于红外反射式智能循迹遥控小 车系统设计_J].电子设计工程,2013,21(23):178—180. [7] 张清鹏,万健如.PWM整流器无电压传感器预测电 流控制[J].电子测量与仪器学报,2016,30(5): 817~823。 1-8] 张岩,裴晓敏,付韶彬.基于单片机的智能循迹小车设 计EJ].国外电子测量技术,2014,33(3):51 54. [9] 黄博军.C语言控制八段数码管计数的方法与技 巧[J]。襄樊职业技术学院学报,2009,8(1):1 3 15。 [1o] 蒋纬洋,邓迟,肖晓萍.两轮自平衡小车系统制作研 究口].国外电子测量技术,2012,31(6):76 79. [11] 张洁,刘苹,卢慧.基于单片机AT89C52的多功能探 测小车设计[J].电子测量技术,2014,37(8):85—88. [12] 邓喜兵,许建明,陈炯明.基于单片机的智能小车设 计[J].电子世界,2016,32(9):47. [133 兰羽,万可顺.基于SPCE061A单片机的小车避障系 统设计rJ].国外电子测量技术,2014,33(2):58—60. [14] 何光锋,王凌云,徐加鹏.基于模块化控制的多功能智 能小车设计[J].现代电子技术,2013,36(16):137 139. [15] 董早鹏,刘涛,万磊,等.基于Takagi—Sugeno模糊神 经网络的欠驱动无人艇直线航迹跟踪控制[J].仪器 仪表学报,2015,36(4):863—870. 作者简介 王瑞琦,1989年出生,工学硕士,助教,主要研究方向 为电路与系统、单片机技术。 E-mail:wangruiqi029@163.corn 中国科技核心期刊