设为首页 加入收藏

Computer Science and Application
Vol.3 No.8(2013), Article ID:12722,4 pages DOI:10.12677/CSA.2013.38056

Design and Implementation of Automatic Tracing Smart Car*

Cong Wang1, Zhansheng Chen1,2# , Jianliang Zhao1

1School of Applied and Technology, Beijing Union University, Beijing

2School of Computer and Information Technology, Beijing Jiaotong University, Beijing

Email: #ldtchenzs@buu.edu.cn, 11112085@bjtu.edu.cn

Received: Oct. 17th, 2013; revised: Nov. 2nd, 2013; accepted: Nov. 11th, 2013

Copyright © 2013 Cong Wang et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

ABSTRACT:

Based on the single-chip micro-controller AT89S52 for central control unit and infrared sensors for detection methods, a control system of automatic tracing intelligent car was designed and developed. This system uses an infrared photoelectric sensor array collection separated from the path information with the fuzzy control method to change electric engine direction and speed, reduce the intelligent vehicle control response time, and ultimately achieve the ability of the smart car to identify routes in the specified path and move fast. Test results show that, in black and white color of the larger track, the system is capable of good performance to meet intelligent vehicle path identification, speed adjustment of faster response time, small steady-state error and good self-searching effectiveness.

Keywords: AT89S52 MCU; Infrared Photoelectric Sensor; Fuzzy Control Methods; Smart Car; Automatic Tracking

自动寻迹智能车的设计与实现*

王  丛1,陈战胜1,2#,赵建良1

1北京联合大学应用科技学院,北京

2北京交通大学计算机与信息技术学院,北京

Email: #ldtchenzs@buu.edu.cn, 11112085@bjtu.edu.cn

摘 要:

基于AT89S52单片机为核心控制单元,红外光电传感器为检测手段,设计开发一种自动寻迹智能车控制系统。本系统利用红外光电传感器阵列采集离散的路径信息,采用模糊控制方法改变电机方向和转速,缩短智能车控制响应时间,最终实现智能车在规定路径上自主识别路线、快速行驶。测试结果表明,在黑白等色差较大的赛道上该系统能够很好地满足智能车对路径识别性能,速度调节响应时间快,稳态误差小,具有良好的自主寻迹效果。

收稿日期:2013年10月17日;修回日期:2013年11月2日;录用日期:2013年11月11日

关键词:AT89S52单片机;红外光电传感器;模糊控制方法;智能车;自主寻迹

1. 引言

近年来,机器人的智能水平不断提高并迅速改变着人们的生活方式。机器人要实现自动导引和避障功能就需要感知导引线和障碍物,相当于机器人的视觉功能。智能小车作为机器人的典型代表,能实现自动识别路线,判断并自动避开障碍,选择正确行进路线,为智能搬运小车,无人驾驶汽车等技术领域的研究提供技术支撑。目前,多数智能小车存在速度较慢、不够灵活、无法及时获知行进速度等缺点。葛广军[1]等人以单片机MC912DG128为核心设计了一种能够自动循迹的智能小车,循迹效果较好。高月华[2]研究了红外反射式光电传感器作为路径采集模块实现自动循迹的智能小车,能够沿着给定黑线平稳行驶。本文以AT89S52单片机为核心控制单元,红外光电传感器为检测手段,设计开发一种能够自动寻迹、实时获知行进速度的智能车控制系统。

2. 系统总体设计方案

自动寻迹智能车系统由传感器检测部分、执行部分和CPU三部分组成。系统工作原理是:通过小车前段的红外对管寻迹板对轨道信号采集并分析,不断分析并校正小车按道路轨迹行驶。其中,由AT89S52单片机控制电机专用驱动芯片驱动小车前后两个电机,前轮作为左右转向轮,后轮作匀速行驶。智能车系统框图如图1所示。

3. 系统硬件设计

系统核心硬件设计主要包含电源驱动模块的设计、主控PCB图的设计和电机驱动模块的设计。

3.1. 电源驱动模块的设计

电源基于LM2576S降压稳压器,此芯片能驱动3A的负载,具有良好的线性和负载调整能力,设计原理图如图2所示。

3.2. 主控模块的电路设计

主控模块的电路设计如图3所示。

主控模块的作用就是将红外传感器采集来的数据交由单片机进行处理,并输出控制步进式电机的信号。

考虑小车底盘结构和无舵机,所以拐弯选择差速法和正反转法,大型弯道可以用差速法,好处是不会明显降低弯道速度,并且矫正时间短;小型弯道需要采用正反转法,正转电机给最高的PWM,反转电机给足够小于正转电机PWM值。

3.3. 电机驱动模块的设计

电机驱动模块电路采用L298N芯片为电机驱动,TLP521-4光电耦合芯片为抗干扰的电路,ULN2003芯片作为驱动芯片。

L298N由ST公司生产的一种高电压、大电流电机驱动芯片,其特点是最高工作电压可达46 V,输出电流瞬间峰值可达3 A,额定功率25 W,可以用来驱动直流电动机和步进电动机、继电器线圈等感性负载。使用L298N芯片可以驱动一台两相步进电机或四相步进电机,也可以驱动两台直流电机。

采用TLP521可控制光电藕合器件,电路之间的信号传输,使之前端与负载完全隔离,目的在于增加安全性,减小电路干扰,减化电路设计。ULN2003是高压大电流达林顿晶体管阵列,具有电流增益高、工作电压高、温度范围宽、带负载能力强等特点,适应于高速大功率驱动电路。

电机控制原理图如图4所示。

在系统硬件设计过程中,将电机驱动板固定至车

Figure 1. Smart car system block diagram

图1. 智能小车系统框图

Figure 2. Power-driven module circuit diagram

图2. 电源驱动模块电路原理图

Figure 3. Control module circuit design diagrams

图3. 主控模块电路设计图

Figure 4. Motor control circuit diagram

图4. 电机控制电路原理图

体内,准备好两块12 V电池,用杜邦线连接前端光电数码管,确保一一对应;将传感器–单片机模块固定至电机驱动板上方,用杜邦线将单片机的数据口与电机驱动的输入口相连接,用电机驱动的5 V电源给单片机供电,确保无短路出现。

3.4. 显示模块的设计

采用液晶显示器显示相应的信息。此显示器模块的工作电压为5 V,支持显示2 × 16字符;每个字符由5 × 7点阵显示;可以通过编程实现多种显示,效果更好。为了减轻小车MCU的负荷,本文采用单独的单片机控制显示模块。

4. 系统理论研究

4.1. 红外线光电传感器原理

本系统设计的智能车在行进过程中,采用红外探测法,通过不断的向地面发射红外光,充分利用红外线在不同颜色的物体表面具有不同反射的性质,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果检测到的是黑线则红外光被吸收,接收管接收不到红外光。于是,依据接收管输出电压的变化,从而控制智能车电机确定的行驶方向。

接收管上的电压变化可视作一个可变电阻,接收管的电压和参考电压进行比较后输出相应电平。本设计中采用比较正接法,当红外线管遇到黑线时,反射减少,“+”端输入电压增加,使输出端输出电压为高,经上拉电阻上拉后达到单片机有效接收电平。

在智能车寻迹的过程之中,单片机开始不停地扫描与探测器连接的单片机I/O口,当检测到I/O口有信号的时候,立即进入判断处理程序,先确定哪几个探测器检测到了黑线,如果小车靠左面传感器红灯亮了,说明检测到的黑线在小车的左边,车身向右偏出,如果要让小车寻线行驶,应该让小车稍向左转;如果小车右面传感器红灯亮了,即车身右半部压住黑线,小车向左偏出了轨迹,则应使小车向右转。在经过了简单的方向调整后,小车再继续按照给定的黑线轨迹行走并继续探测,重复上述动作,可以控制方向,达到寻迹的效果。

4.2. 模糊控制算法

模糊控制算法是对手动操作者的手动控制策略、经验的总结。应用最早、最广泛的查表法,可大大提高模糊控制的时效性,节省内存空间。

模糊控制的关键和核心是模糊控制规则,其来源是根据操作者对被控制对象的动态性的认识、表达和对被控对象的控制经验,从中抽象出输入–输出关系,即建立被控对象的数学模型。通过对人工控制操纵的经验和策略进行归纳和总结,可以建立一系列模糊控制规则并加以处理便产生相应的模糊控制算法,然后利用计算机语言将迷糊控制算法以模糊语句实现,就构成了一个模糊控制器。其中,模糊控制算法描述了控制器的行为特征。

本系统设计的模糊控制规则建立方法是:智能小车通过经验和测试数据来建立模糊控制规则。其主要控制过程为:寻迹与避障的红外发射装置发送信息,由具备人的感觉器官的收装置接收并将获取信息传给相当于人大脑的单片机,进行存储和处理信息,测试出小车寻迹最佳偏转角度,从而发出指令控制智能小车执行相应的操作,完成智能行驶。

5. 系统软件设计

系统软件设计采用C语言编程,模块化结构进行开发。该程序主要包括主函数、系统初始化、延时子函数、程序控制子函数和寻迹程序模块。其中,系统初始化函数伪代码如下所示:

System Init Function:

Timer initialization;

Counter initialization;

Parameter initialization;

延时子函数伪代码如下所示:

Set Delaytime TempCyc;

While(TempCyc--);

程序控制流程如图5所示。

寻迹程序模块伪代码如下所示:

MCU test feedback signal of Tracking module;

If the car devirate to left Then set left wheel’s speed faster;

Else If the car devirate to right Then set right wheel’s speed faster;

else the car run at fasest speed end;

Figure 5. Main program control flow chart

图5. 主程序控制流程图

6. 系统性能测试

本系统测试赛道为2厘米黑色胶布粘贴制作形成,寻迹板由8个传感器组成。当程序执行到寻迹程序模块时,寻线开始状态。

当黑线处在寻迹板正中间的位置时,中间第4、5两个传感器都能检测到黑线的存,此时小车方向不变。当小车没有达到最大速度时,小车加速到最大速度,否则保持最大速度。当黑线稍偏右时,右面第4、3传感器检测到黑线的存在,此时小车会让左面轮子的转速加快,从而稍微向右转。当黑线偏右严重时,即右面第3、2传感器检测到黑线的存在,此时系统采用反转方法,让右轮停止转动增大摩擦力,使小车微右转行进。当黑线稍偏左、偏左时,采用方法正好相反。

性能测试表明,本文设计实现的小车跑直线小车跑直线正常,速度可调、稳定,可自动调整偏角。弯道角度大于40度时,小车拐弯正常;弯道角度小于40度时,拐弯速度较缓慢,直角弯道容易丢线停车。小车寻迹行进测试示意如图6所示。

与文[1]、文[2]相比,本文设计的智能车不仅能够实现自主寻迹、速度调节响应时间快,而且创新点在于增加了小车寻迹行进时间的显示模块,便于估算小车的行进速度。

7. 结论

本文在分析现有智能小车不足基础上,以AT89S52单片机为核心控制单元,红外光电传感器为检测手段,设计开发一种自动寻迹智能车控制系统。经过测试对比,本文设计实现的智能小车在模糊控制算法下,能够有效缩短小车响应时间,实现自主识别

(a)(b)(c)

Figure 6. Car tracking test results

图6. 小车寻迹行进测试结果图

路线、快速行驶,并且增加的液晶显示模块有助于实验人员便捷的估算小车的寻迹行进速度。

本系统实现的智能车经过反复试验表明该系统具有成本低廉、设计简单且性能较好,调节响应时间快,稳态误差小自主寻迹效果好,具有很高的工程价值。下一步将研究如何优化算法避免小车电机转速过快使得寻迹灵敏度不高的问题。

参考文献 (References)

[1]       葛广军, 杨帆 (2011) 基于单片机的智能小车控制系统设计. 河南城建学院学报, 5, 47-50.

[2]       高月华 (2009) 基于红外光电传感器的智能车自动寻迹系统设计. 半导体光电, 1, 134-137.

NOTES

*资助信息:北京联合大学新起点计划项目资助(zk10201303);北京市职业院校优秀青年骨干教师选拔计划项目资助;北京联合大学“启明星”大学生科技创新项目(No.12222994301)。

#通迅作者。

期刊菜单