智能小车.docx
《智能小车.docx》由会员分享,可在线阅读,更多相关《智能小车.docx(18页珍藏版)》请在冰豆网上搜索。
智能小车
智能小车(C题)
摘要
本系统采用TK-20传感器及反射式发射-接收器对跑道进行实时检测,采集路面信息,分别传递给甲、乙两车的控制核心STC89C52RC单片机系统,产生相应的电机驱动信号,控制小车按照跑道规定线路正常行进;在超车区采用PT2262/PT2272无线发送和接收控制模块,实现两车之间的实时通信协同,组成了一套完整的智能小车控制系统。
同时通过控制脉冲占空比算法,完成了甲、乙两车在规定范围内的交替超车及运行的智能控制。
关键词:
传感器;单片机;无线通信;脉冲占空比算法;智能控制
Abstract
ThesystemusesTK-20sensorsandreflectivetransmitters-receiverstorealizereal-timedetectionofthetracktocollectinformationofthetrack.ThentheinformationisrespectivelypassedtoSTC89C52RCSCM(single-chipmicrocomputer)systemswhicharethecontrolcoreofthetwocarstoproducecorrespondingmotordrivesignaltocontroltwocars’normalroadlineswhicharealreadyregulated.InovertakingareaPT2262/PT2272wirelesstransceivercontrolmoduleisusedtoachievereal-timecommunicationbetweenthetwocars.Soacompletesetofcontrolsystemoftheintelligentcarisconstituted.Atthesametimebycontrollingtheradioofoccupationandemptyofthepulse,thesystemhasaccomplishedtheintelligentcontrolofalternatingovertakingwithinthelimitedareaandoperation.
Keywords:
sensor;SCM;wirelesscommunication;intelligentcontrol
目录
一、系统方案1
1.主控系统1
2.电机和电机驱动模块2
3.路面循迹模块2
4.小车之间通信模块3
5.电源选择模块3
6.系统方案确定3
二、理论分析与计算4
1、系统实现原理4
2、信号检测4
3.信号控制5
4.两车之间的通信方法6
5.电源匹配及节能7
三、电路与程序设计8
1.电路设计8
2.程序设计8
四、测试方法与测试结果11
1.测试条件11
2.测试方案11
3.测试结果完整性12
4.测试结果分析13
五、结论14
参考文献14
智能小车(C题)
一、系统方案
根据赛题要求,甲、乙两辆小车同时起动,先后通过起点标志线,在行车道同向而行,实现两车交替超车领跑功能。
本系统通过实时采集跑道信息,反馈于单片机,从而产生相应的电机驱动信号,实现智能控制甲、乙两辆小车的运行。
系统划分为路面检测、电源、无线通信、主控等六个子系统,总体模块如图1-1所示。
图1-1系统总体模块
对各模块的实现,分别有以下一些不同的设计方案:
1.主控系统
方案一:
采用可编程逻辑器件CPLD作为控制器。
CPLD可以实现各种复杂的逻辑功能、规模大、密度高、体积小、稳定性高、I/O资源丰富、易于进行功能扩展。
采用并行的输入输出方式,提高了系统的处理速度,适合作为大规模控制系统的控制核心。
但本系统不需要复杂的逻辑功能,对数据的处理速度的要求也不是非常高,且价格昂贵。
方案二:
采用凌阳公司的16位单片机。
它是16位控制器,具有体积小、驱动能力高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强、处理速度高等特点。
但凌阳单片机多应用于语音处理和辨识,在本系统中不实用。
方案三:
采用STC89C52单片机作为主控制器。
STC89C52是一种带8K字节闪烁可编程可擦除只读存储器的低电压,低功耗,高性能CMOS8的微处理器,有内部EEPROM,在不改变硬件的前提下,根据系统需求动态修改源程序,可以通过串口多次下载程序。
且其价格便宜,操作相对比较简单。
基于上述理论分析,从方便实用不浪费资源的角度考虑,选择方案三。
2.电机和电机驱动模块
方案一:
采用步进电机作为该系统的驱动电机。
由于其转过的角度可以精确的定位,可以实现小车前进路程和位置的精确定位。
虽然采用步进电机有诸多优点,但步进电机的输出力矩较低,随转速的升高而下降,且在较高转速时会急剧下降,其转速较低,不适用于小车等有一定速度要求的系统。
方案二:
采用功率三极管作为功率放大器的输出控制直流电机。
线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的H型桥式电路。
用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。
这种电路由于工作在管子的饱和截止模式下,电路复杂,并且难于控制。
方案三:
采用普通直流电机,直流电机转动力矩大,体积小,重量轻,装配简单,使用方便。
由于其内部由高速电动机提供原始动力,带动变速(减速)齿轮组,可以产生较大扭力。
基于上述分析,选择方案三。
3.路面循迹模块
方案一:
用光敏电阻组成光敏探测器。
光敏电阻的阻值可以跟随周围环境光线的变化而变化。
当光线照射到白线上面时,光线反射强烈,光线照射到黑线上面时,光线反射较弱。
因此光敏电阻在白线和黑线上方时,阻值会发生明显的变化,将阻值的变化经过比较器就可以输出高、低电平。
但是这种方案受光照影响很大,不能够稳定的工作。
方案二:
采用CCD传感器。
此种方法虽然能对路面信息进行准确完备的反应,但它存在信息处理慢,实时性差等缺点。
因此若采用CCD传感器,无疑会加重单片机的处理负担,不利于实现更好的控制策略。
方案三:
采用TK-20黑白线检测传感器。
其有效探测距离达5cm,通过调节电位器,可调节其探测距离。
这款黑白线传感器受可见光干扰小,输出信号为开关量,信号处理简单,使用非常方便外,还增加了探测距离调节器、改进了探测距离、加强了探测精度,专用于小车的循迹。
同时,不调制的反射式红外发射—接收器采用红外管代替普通可见光管,降低了环境光源干扰,
综合考虑本系统两辆小车同时进行路面循迹,使用不同的传感器,降低相互之间的干扰,系统拟采用方案三。
4.小车之间通信模块
方案一:
利用超声波传感器进行通信。
超声波传感器由压电陶瓷超声波传感器发出后,遇到障碍物便反射回来,再被超声波传感器接收,然后将这信号放大后送入单片机。
但是超声波传感器对工作频率要求较高,工作时要40Hz的方波信号,同时做方波发射器比较难以实现,且单片机来做方波发射器未免有些浪费资源。
方案二:
采用DF无线数据收发模块进行通信。
DF无线发射模块通讯方式为调频AM,工作频率为315MHz,为ISM频段,发射频率小于500mW。
DF超再生接收模块通讯方式为调频AM,接收灵敏度高,用示波器观察输出波形干净。
基于系统小车之间通信协同的可靠性及安全性考虑,本系统拟采用DF无线数据收发模块PT2262及PT2272芯片实现通信功能,同时采用红外避障方法来判断障碍物的远近,进一步增强系统的抗干扰能力。
5.电源选择模块
方案一:
采用12V蓄电池为直流电机供电,将12V电压降压、稳压后给单片机和其它芯片供电。
蓄电池具有较强的电流驱动能力以及稳定的电压输出性能。
但是蓄电池的体积过于庞大,由于本系统中受车体大小的限制,使用其极不方便。
方案二:
采用4支1.5V电池单电源供电。
但6V的电压太小不能同时给单片机与直流电机供电,且电池容易耗尽电,需高频率的更换电池。
方案三:
采用6节1.2V的镍氢充电电池。
经过5V2A大功率稳压开关电源DC-DC降压电源模块降压。
经测试在此种供电方式下,单片机、传感器和PT2262/PT2272模块都能工作稳定,直流电机工作良好,且电池体积较小,可多次充电,可循环利用,更绿色环保。
基于以上多种因素的考虑,本设计采用方案三。
6.系统方案确定
经过反复论证,最终确定了如下方案:
主控部分采用STC89C52RC单片机作为控制器。
路面检测模块使用传感器TK-20及反射式发射-接收器。
两小车之间的通信采用PT2262/PT2272。
电机和电机驱动采用继电器控制直流电机。
电源采用6节1.2V的镍氢充电电池供电。
二、理论分析与计算
1、系统实现原理
本系统通过使用TK-20传感器及反射式发射-接收器实现对路面的实时检测,采集路面信息,分别传递给甲、乙两车的控制核心STC89C52RC单片机系统,产生相应的电机驱动信号,控制小车按照跑道规定线路正常行进;同时在超车区,采用PT2262/PT2272无线发送和接收控制模块,实现两车之间的实时通信协同,从而完成甲、乙两车之间的交替超车及运行控制。
其实现原理结构图如图2-1所示:
图2-1系统实现原理结构图
2、信号检测
根据红外线在不同颜色的物体表面具有不同的反射性质的特点,本文选用反射式红外传感器完成对路面信息的检测。
当发射管发射的红外线遇到白线时,会发生大量漫反射,被反射回来的红外线被接收管接收,输出一定的电压值;当发射管发射的红外线遇到黑线时,则红外线被大量吸收,输出电压很小。
通过单片机的A/D转换器采样传感器输出的电压值能检测出引导线白线的位置,从而判断出小车的位置,其循迹电路图如图2-2所示。
图2-2循迹电路图
甲车的循迹采用TK-20黑白线检测传感器,其循迹原理与反射式红外发射—接收器基本一样,将六个TK-20以倒T字形置于小车头部的合适位置。
传感器检测到地面黑线时,输出给单片机高电平;白线时,输出给单片机低电平。
当倒T的左边检测到黑线时,向右转弯;当倒T的右边检测到黑线时,向左转弯。
如表2.1所示。
表2.1传感器状态表
左传感器电平
右传感器电平
相应动作
0
0
直行
1
0
右转
0
1
左转
为了获得小车的准确位置,需将传感器的输入作为模拟量进行处理,这样才能获得足够的精度。
由于赛道的引导线为黑白线,当小车处于直道或弯道时,只是说明小车中心线当前位置相对于白线的中轴线偏移距离发生了变化,因此根据传感器的布局,将传感器如图2-3进行排布。
车体中心对应的坐标为0,因此偏移距离即为白线位置的坐标值,移动单位为厘米。
通过单片机的P2.0-P2.5口输入路面实时信息。
图2-3传感器连接图
3.信号控制
系统电机本身是一个位置随动系统,通过内部的位置反馈,使它的输出转角正比于给定的控制信号,进而控制小车的转向。
具体过程为:
单片机首先通过A/D转换器将传感器采集到的路面信息进行处理,然后利用满足一定占空比的PWM波对小车的电机进行实时控制以改变小车的方向。
本系统选取HS-425BB型电机作为转向控制元件,以单片机的P1.6和P1.7口作为信号输出端,其功能图如2.4所示,采用PWM信号开环控制可以满足PWM信号与角度相对应的要求,控制电路简单且能满足控制要求。
该电机拉力可达4.2kg/cm,能够满足系统负载,同时响应速度非常快,电机输出60°转角仅需0.16s,极大地提高了智能车转向的灵敏度。
图2-4继电器驱动电机原理图
4.两车之间的通信方法
为了保证甲、乙两车在超车区准确实现超车,需要在每辆小车上安装DF无线收发模块结合编解码芯片PT2262/2272模块。
PT2262/2272是一对带地址、数据编码功能的无线遥控发射/接收芯片。
其中发射芯片PT2262将载波振荡器、编码器和发射单元集成于一身,使发射电路变得非常简洁。
PT2262具有6位地址编码,地址线用单片机的B口控制,接收芯片PT2272是非锁存型4位数据输出,有8位地址编码,能够很方便的设置通信地址,防止其它无线模块之间的干扰,保证了系统的可靠性,其功能结构图分别如图2.5、2.6所示。
图2.5PT2262功能结构图
图2.6PT2272功能结构图
当甲车行驶于超车标志区时,检测路面转弯标志线,直线行走20cm后左转,直线行走120cm停止;同时乙车在超车标志区左转进入超车区,直行120cm后右转驶离超车区,完成超车功能,其主控系统通过PT2262向甲车发送直行信号,甲车通过PT2272接收信号后驱动主控系统产生前行指令,继续行驶。
从而实现了甲、乙两车在超车区的通信功能。
其后几次超车过程中,甲、乙两车利用DF无线收发模块结合编解码芯片PT2262/2272实现通信协调,交替实现超车功能。
5.电源匹配及节能
电源管理单元为系统其他各个单元提供所需要的电源。
系统小车全部硬件电路的电源由7.2V、2000mA镍氢充电电池提供。
系统使用LM2940作为5V电压的稳压芯片,将电压供给单片机、电机、路面循迹、无线通信单元。
其管理单元图如图2.7所示。
图2.7电源管理单元图
三、电路与程序设计
1.电路设计
基于以上原理及理论分析,将各模块按照图3.1所示电路图连接,组装智能小车控制系统。
图3.1系统总体电路设计图
2.程序设计
本系统控制软件是在WindowsXP环境下利用KeiluVision7.03系统软件包C语言编写。
其中KeilC51软件能够提供丰富的库函数和功能强大的集成开发调试工具,可以完成编辑、编译、连接、调试、仿真等整个开发流程。
整个系统的详细软件流程图如图3.2所示。
图3.2系统软件设计流程图
四、测试方法与测试结果
1.测试条件
测试跑道如图4.1所示,甲、乙小车的长度为35cm,宽度为25cm,高度为15cm。
测试过程需要卷尺2把:
精度0.001m;秒表4块:
精度0.01s。
图4.1测试跑道
2.测试方案
根据系统实现功能要求,按照以下三种方案进行测试,并且记录小车每次运行时间。
方案一:
分别将甲、乙两车放于起点标志线,间隔20s开启电源开关,分别用两块秒表记录甲、乙两车按照系统规定,沿跑道前行到终点标志线时的行驶时间,重复测试5次。
方案二:
将甲、乙两车按图4.1所示放置,同时开启电源开关,第一、二块秒表同时开始计时,乙车通过超车标志线后在超车区内实现超越甲车功能,并先于甲车到达终点标志线时,第一块秒表停止计时,记录乙车第一圈行驶时间,同时第三块秒表开始计时;待甲车到达终点标志线时,第二块秒表停止计时,记录甲车第一圈行驶时间,同时第四块秒表开始计时;待甲车通过超车标志线后在超车区内实现超越乙车功能,并先于乙车到达终点标志线时,第四块秒表停止计时,记录甲车第二圈行驶时间,同时第一块秒表开始计时;待乙车到达终点标志线时,第三块秒表停止计时,记录乙车第二圈行驶时间,同时第二块秒表开始计时;此时甲、乙两车继续行驶第三圈和第四圈,并交替实现领跑,重复上述过程。
即第一块和第三块秒表分别记录甲车第三圈和第四圈的运行时间,第二块和第四块秒表分别记录乙车第三圈和第四圈的运行时间。
重复测试上述过程3次。
方案三:
重新设定甲车起始位置,分别放置于离起点标志线前进方向20cm、30cm、40cm处,乙车放置与甲车之后,重复测试方案⑵,记录两车运行时间。
3.测试结果完整性
按照以上测试方案进行测试,记录测试结果如下所示。
⑴、测试方案一测试结果如表4.1所示。
表4.1测试方案一测试结果
次数
1
2
3
4
5
甲车运行时间(s)
77.56
79.38
60.56
46.34
37.71
乙车运行时间(s)
70.45
76.32
62.45
47.48
36.75
⑵、测试方案二测试结果如表4.2所示。
表4.2测试方案二测试结果
次数
位置及时间
1
2
3
4
5
甲车
第一圈/s
54.67
52.34
53.66
52.62
54.54
第二圈/s
39.48
40.36
41.45
42.67
41.34
第三圈/s
56.48
53.35
55.38
55.48
55.38
第四圈/s
40.46
42.53
44.32
42.23
43.56
乙车
第一圈/s
45.54
47.78
48.78
48.57
47.67
第二圈/s
52.46
54.25
50.32
51.22
51.35
第三圈/s
48.87
49.14
50.65
49.86
47.54
第四圈/s
53.25
55.32
54.15
52.65
54.23
⑶、测试方案三测试结果如表4.3所示。
表4.3测试方案三测试结果
离起点距离
位置及时间
20cm
30cm
40cm
甲车
第一圈/s
50.38
46.45
42.23
第二圈/s
38.54
36.26
35.35
第三圈/s
49.39
46.44
44.12
第四圈/s
40.64
38.45
37.58
乙车
第一圈/s
45.75
43.44
39.57
第二圈/s
49.26
47.37
40.14
第三圈/s
46.34
43.38
38.57
第四圈/s
51.12
48.72
44.65
按照测试方案的要求,很好的完成了系统的测试任务,并且详实的记录了甲乙两车每次的测试结果。
4.测试结果分析
在测试过程中,多次调整传感器的位置,改装小车车体,确保小车能够准确检测跑道信息,实现较好的车间通信,产生合理的电机控制信号,确保小车能够按照规定的线路行驶,实现甲乙两车交替领跑。
但从测试结果来看,有时会造成误动作和误差,其主要原因分析如下:
(1)跑道不平整及黑白线不分明带来的误差。
小车跑道上有脚印、白纸等杂物对小车上传感器循迹造成影响,使其不能正确的检测黑白线。
为了减小此误差,应及时清理跑道上的杂物。
(2)小车自身掉线带来的误差。
在多次测试的情况下杜邦线出现松动、脱落,以至于(部分功能无法实现)信号检测系统不能很好的与主控系统即时通信,从而对小车运行造成扰动。
由于条件限制,本误差不可避免,只能及时检测以减少误差。
(3)电源电量不够带来的误差。
电池电量不足,无法给系统提供所需的电量,为减少此误差,应在小车行进前对电池电压进行测试以及时更换。
(4)秒表计时误差。
由于在开始和停止记录时手工操作,难免出现计时误差,只能尽量克服人为因素,减少计时误差。
经过反复测试和调整,甲、乙两辆小车的速度、平稳性、可靠性有了极大的提高,很好的完成了系统的基本要求及发挥部分,实现了甲、乙两车在跑道上的平稳运行及交替领跑功能。
五、结论
本系统在硬件上,采用TK-20传感器实时检测跑道路面信息,无线传感模块PT2262/PT2272实现小车之间的通信,采用红外避障传感器防止两车相撞,在软件方面,利用STC89C52的强大功能及控制脉冲占空比算法,充分实现了小车的路面检测,无线通信,交替超速等功能,从而增强了系统的抗干扰能力。
从最终的测试结果来看,本系统对不同环境具有很强的适应能力,很好的完成了题目的各项要求。
同时在系统的设计过程中,力求硬件线路简单,充分发挥软件编程方便灵活的特点,并最大限度挖掘单片机片内资源,来满足系统设计的要求。
但是由于比赛时间有限,该系统还有一些地方值得进一步改进和完善。
参考文献
[1]郭惠,吴迅.单片机C语言程序设计完全自学手册[M].电子工业出版社,2008.10:
1-200.[2]王东锋,王会良,董冠强.单片机C语言应用100例[M].电子工业出版社,2009.3:
145-300.[3]韩毅,杨天.基于HCS12单片机的智能寻迹模型车的设计与实现[J].学术期刊,2008,29(18):
1535-1955.[4]王晓明.电动机的单片机控制[J].学术期刊,2002,13(15):
1322-1755.[5]韩毅,杨天.基于红外传感器的智能寻迹赛车的设计与实现[J].计算机工程与设计,2009,30(11):
2687-2690.[6]吴怀宇,程磊,章政.大学生智能汽车设计基础与实践[M].北京:
电子工业出版社,2008.[7]吴斌华,黄卫华,程磊等.基于路径识别的智能车系统设计[J].电子技术应用,2007,21(3):
80-83.