多功能智能小车控制系统设计

前言:寻找写作灵感?中文期刊网用心挑选的多功能智能小车控制系统设计,希望能为您的阅读和创作带来灵感,欢迎大家阅读并分享。

多功能智能小车控制系统设计

摘要:针对小车在前进过程中可能遇到的复杂环境,采用STC89C52RC单片机作为核心控制器件,以模块化的设计思想实现智能小车的多功能性。循迹模块能够使小车沿着黑色轨迹线自动行驶;避障模块能够使小车自动躲避障碍物;趋光模块能够使小车自动向光源方向行驶;并且加入了指示灯来指示小车的运行状态。该设计使得智能小车的各个模块很好地结合在一起,体现了其多功能性,并具有很强的实用性。

关键词:智能小车;循迹;避障;趋光

0引言

随着时代的跨越式发展,汽车工业也迎来了一次大规模的革新,各种关于智能汽车的研究也就备受关注。智能小车自从问世以来便一时风评如潮,是以后发展的必然方向,智能意味着小车可以收集信息并分析信息所对应的预先设定程序,然后驱动执行机构使小车做出相应的动作。于是,可以做到在设定的环境里不需要人为的干预就能自主的运行。基于小车的这种特性,它的主要应用范围在于科学勘探、无人驾驶等等。

1系统总体方案设计

多功能智能小车要求具有自动循迹功能,以完成特殊任务;具有自动避障功能,避免小车撞毁;具有趋光的功能,能实时反应光源方向并趋光前进。根据设计要求,多功能智能小车控制系统的总体方案如图1所示。本次系统设计以STC89C52RC单片机最小系统为核心,由循迹模块、避障模块、趋光模块、电机驱动模块、LED指示等模块组成。基于小车的移动性,整个系统的供电必须由电池提供,系统所需的7.2V电压由两节3.6V充电电池提供,然后通过7805稳压模块为单片机及其他电路提供5V电源。

2系统硬件设计

2.1红外循迹模块

为了使小车能够精确循着白色地面上的黑色轨迹线行驶,需要同时安装4路红外探测头RPR-220,分别放置在小车前方车底的左2、左1、右1、右2四个位置。其中左1、右1两个探测头应临近黑色轨迹线,如果是这两个红外探测头检测到黑色轨迹线,小车的行驶方向进行稍微调整即可;左2、右2两个探测头位于小车的更外侧一点,如果这两个红外探测头检测到黑色轨迹线,说明小车偏转的比较多,要加速调整小车的行驶方向。红外循迹模块连接到单片机的P2口,其中一路和单片机的连接关系如图2所示[2]。小车行驶时,RPR-220中的红外发光二极管不断向外发出红外线,红外线发射到白色地面时会反射回红外接收三极管,这时光电三极管导通,输出低电平到LM339的同相端,比较器输出低电平给单片机。LM339为四路电压比较器刚好匹配四路红外探测头。红外线发射到黑色轨迹线时被吸收,不能反射回接收管,这时光电三极管截止,输出高电平到LM339的同相端,比较器输出高电平给单片机。单片机将信息处理后控制电机驱动模块使车轮进行相应的动作,从而实现小车的自动循迹功能。

2.2红外避障模块

智能小车采用了HJ-IR2不怕光的红外避障模块,在小车的左前方和右前方各安装一个这样的集成模块,其中左前方的红外避障模块与单片机的电路连接如图3所示。如果小车左前方检测到有障碍物,左前方红外避障模块HJ-IR2的OUT引脚将对单片机的P1.4引脚输出一个低电平(与红外循迹的工作原理类似,只不过接收管是光电二极管),单片机控制小车右转,避开左前方的障碍物。同理,如果小车右前方检测到有障碍物,右前方红外避障模块HJ-IR2的OUT引脚将对单片机的P1.4引脚输出一个低电平,单片机控制小车左转,避开右前方的障碍物。如果左右两个红外避障模块均检测到了障碍物,说明障碍物在小车的正前方,此时由程序规定小车默认右转。

2.3超声波避障模块

本设计采用红外侧面避障和超声波正面避障结合的混合避障技术来优化智能小车的避障问题。采用超声波避障需要在车头正前方安装一个HC-SR04测距模块,其与单片机的连接如图4所示。单片机控制器通过P1.2引脚给到HC-SR04的Trig端一个高电平信号,使模块自动发送超声波,同时Echo端会变成高电平,如果前方有障碍物,则超声波会返回到接收端,这时Echo端会变成低电平,Echo端高电平的持续时间通过P1.3引脚由单片机定时器所记录,这个时间即为超声波由发射到返回被接收到的总时间t,由公式S=Ct/2即可求出小车到障碍物之间的距离。把检测到的距离和程序中预先设定好的最小距离进行对比,如果小于最小距离由单片机控制电机转向和调速。

2.4趋光模块

在小车的左右前方各有一个趋光模块,其中左边的趋光电路如图5所示。有光照时,光敏电阻RL1的阻值减小,电压比较器LM393的V+<V-,输出低电平到单片机的P1.0引脚,同时LED灯点亮;无光照时,光敏电阻RL1的阻值增大,电压比较器LM393的V+>V-,则比较器输出高电平给单片机,LED灯不亮。可调电阻RV5可以调节反相端的参考电压,用于光照灵敏度的调节。当只有左边检测到有光源时,左边的指示灯点亮,小车进行左转弯;右边亦是如此;当左右两边都能检测到光源时,小车继续直行。

2.5电机驱动模块

智能小车采用四个车轮驱动及支撑,其中前面两个车轮作为驱动轮(后面两个车轮为万向轮),用两个直流减速电机进行驱动。鉴于所使用的直流减速电机功率较小,电机部分采用L293D芯片进行驱动,其中一组引脚之间的逻辑关系如表1所示[3]。L293D可直接对电机进行控制,不需要隔离电路,其与单片机之间的连接电路如图6所示。根据表1的逻辑关系,要使电机正转,只需要单片机的P0.0、P0.2引脚送出高电平,P0.1引脚送出低电平即可;要使电机反转,P0.2引脚控制的使能端也需高电平有效,而P0.0、P0.1的取值和正转时相反。电机正反转和小车运行状态之间的关系如表2所示,右转向时右转指示灯闪烁,左转向时左转指示灯闪烁。

3系统软件设计

3.1主程序

基于模块化思想,智能小车控制系统软件设计和硬件系统相对应,主要分为循迹子程序模块、避障子程序模块、趋光子程序模块,主程序按照逻辑顺序对这些子程序模块进行调用。单片机收集各个模块传感器采集的信号,经过处理,再通过电机驱动程序来控制小车的动作,完成预定目标[4]。主程序流程图如图7所示,当检测到黑线时,调用循迹子程序去调整小车的方向;当检测到有障碍物时,调用避障子程序使小车自动避开障碍物;当检测到有光源时,调用趋光子程序使小车向光源方向行进。

3.2循迹子程序

智能小车底盘装有左2、左1、右1、右2四个红外传感器模块,其中左1、右1两个探测头临近黑色轨迹线,左2、右2在小车外侧。根据程序:当左1红外探测头检测到黑色轨迹线时,小车自动稍微向左行驶;当左2探测头也检测到黑色轨迹线时,说明小车右偏的有点多,则小车加速向左行驶;同理,当右1检测到黑色轨迹线时,小车稍微向右行驶;当右2也检测到黑色轨迹线时,说明小车左偏的有点多,小车加速向右行驶。4组传感器持续检测轨迹,进行两级修正行驶方向,使小车始终能够循着黑色轨迹线行驶。

3.3避障子程序

智能小车的左前方、右前方各安装了一个红外避障模块,在小车的正前方还安装了一个超声波避障模块,实行混合避障技术。当左前方检测到有障碍物时,单片机通过电机驱动模块子程序控制小车右转;当右前方检测到有障碍物时,单片机通过程序控制小车左转;当正前方检测到有障碍物时,根据程序使小车默认右转。3.4趋光子程序智能小车的左右前方各有一个光敏电阻,当左前方检测到光源时小车根据程序向左行驶;当右前方检测到光源时小车根据程序向右行驶;两个光敏电阻都检测到光源时小车根据程序继续向前行驶。

4结论

本设计以STC89C52RC单片机为控制核心,结合电机驱动模块L293D实现小车的向前、向后、左右转向等;采用RPR-220实现红外循迹功能;采用不怕光的红外避障模块HJ-IR2和超声波避障模块HC-SR04实现混合避障功能;采用简单的光敏电阻实现趋光功能。通过Keil、Proteus、STC-ISP等软件进行软硬件联调,达到了预期的功能设计,实现了智能小车功能的多样性。另外,软硬件的模块化设计也有利于小车的调试、维修及进一步的功能扩展。

参考文献

[1]谷明信,焦志勇,王伟,等.多功能导航智能小车设计[J].微型机与应用,2017,36(12):33-35.

[2]史洪宇.基于单片机的多功能智能小车的设计[J].仪表技术,2010(12):16-18.

[3]王瑞琦.基于STC89C51单片机的多功能智能小车设计[J].国外电子测量技术,2017,36(7):103-106.

[4]祝松柏.基于STC89C52的循迹避障智能小车的设计[J].轻工科技,2018,34(3):65-66.

作者:张延丽 赵前 金琦淳 单位:无锡城市职业技术学院机电工程学院 上海无线电设备研究所