智能循迹小车.docx
《智能循迹小车.docx》由会员分享,可在线阅读,更多相关《智能循迹小车.docx(25页珍藏版)》请在冰豆网上搜索。
![智能循迹小车.docx](https://file1.bdocx.com/fileroot1/2023-4/16/683354d0-2ea1-4148-aab9-0cf6311618c1/683354d0-2ea1-4148-aab9-0cf6311618c11.gif)
智能循迹小车
摘要:
本课题组设计制作了一款具有智能判断功能的小车,功能强大。
小车具有以下几个功能:
寻迹功能(按路面的黑色轨道行驶);计算并显示行走的时间,并可掉头返回出发点。
作品以两电动机为主驱动,通过各类传感器件来采集各类信息,送入主控单元AVR单片机(ATmega8),处理数据后完成相应动作,以达到自身控制。
电机驱动电路采用四通道驱动集成芯片L293N,采用PWM脉冲调制驱动电动机。
黑带检测采用反射式光电对管完成;并通过IO口传送给操作系统,由控制单元处理数据后完成相应动作,实现了无人控制即可完成一系列动作,相当于简易机器人。
关键字:
智能判断寻迹行驶自动入库PWM简易机器人
Abstract:
Thistopicgroupdesignedmanufacturessectiontohavetheintelligentjudgementfunctionthecar,thefunctionisformidable.Thecarhasfollowingseveralfunctions:
Seeksthemarkfunction(accordingtoroadsurfaceblacktracktravel);Examinesthewarehouseironsheettheposition(automaticallytogointostorageparks);Thecomputationandthedemonstrationwalksthetime,andmayturnaroundreturnstothestartingpoint.Theworkprimarilyactuatesbytwoelectricmotors,gatherseachkindofinformationthrougheachkindofSensingcomponent,sendsinthehosttocontroltheunitAtmega8monolithicintegratedcircuit,afterprocessesthedatatocompletethecorrespondingmovement,achievesowncontrol。
Themotor-drivenelectriccircuitusesfourchannelstoactuateintegratedchipL298N,usesthePWMimpulsemodulationdrivemotor.TheironsheetexaminationpartiallyusestheinductancetypetoapproachtheswitchLJ12A3-4Z/BYexamination;Theblankingbarexaminationusesthereflectiontypephotoelectricitytocompletetothetube;AndtransmitsorallythroughIOgivestheoperatingsystem,completesthecorrespondingmovementafterthecontrolunitprocessingdata,realizednobodycontrolthentocompleteaseriesofmovements,wasequaltothesimplerobot.
Keyword:
SmartjudgmentMotiontravelingAutomaticstoragePWMSimplerobots
目录
1.引言3
2.系统设计3
2.1设计要求3
2.2总体方案论证与比较3
3.模块设计与比较3
3.3.2驱动电路选择5
3.4显示模块6
3.5电源模块6
3.7硬件抗干扰的实现7
4.系统原理及理论分析7
4.1单片机最小系统组成7
4.2各功能模块的实现7
4.2.1寻迹实现7
4.3自动寻迹实现8
4.4PWM控制实现9
6.测试与分析9
6.1测试设备:
9
6.2调试及性能分析10
6.2.1模块测试11
6.3误差分析12
7.结论12
8.附录12
9.参考文献15
1.引言
课程设计的目的是提高我们大学生的专业技能,增强我们的动手能力。
更重要的是让我们掌握更扎实的专业基础知识,学习更多的现代的最新科研技术,与当代社会飞快发展的科技共同前进。
我们选择这个题目的原因是因为现在自动控制领域越来越向机器人、智能方向发展。
更接近大家生活的就可以看出这一点,小朋友喜欢的玩具也偏向于高科技含量的电子玩具。
而且根据美国玩具协会的调查统计,近年来全球玩具销量增幅与全球平均GDP增幅大致相当。
而全球玩具市场的内在结构比重却发生了重大变化:
传统玩具的市场比重在逐步缩水,高科技含量的电子玩具则蒸蒸日上。
美国玩具市场的高科技电子玩具的年销售额2004年较2003年增长52%,而传统玩具的年销售额仅增长3%。
英国玩具零售商协会选出的2001年圣诞最受欢迎的十大玩具中,在七款玩具配有电子元件。
从这些数字可以看出,高科技含量的电子互动式玩具已经成为玩具行业发展的主流。
本文设计一个具有寻迹功能的简易智能小车。
该小车在传统的手动遥控小车的基础上做了改进,使之可以寻迹行驶到指定地点停止,并且能够自动返回。
小车实现了任意角度转向和以任意速度前进,而不象一般的小车那样只能以固定角度转向和以固定速度前进,因此更加接近真实的车辆,相当于一个简易机器人。
该技术可以应用于无人驾驶机动车、无人工厂、仓库、服务机器人等领域,具有非常广泛的发展空间。
2.系统设计
2.1设计要求
(1)设计任务
设计自动寻迹小车系统,车体在以白色为背景的黑色实线上行驶。
(2)设计要求
小车检测到黑线时,能沿着黑线前进。
小车能实时记录行驶时间。
小车遇到障碍物时,做出蔽障动作掉头返回。
2.2总体方案论证与比较
根据题目的要求,系统可以划分为控制部分和信号检测部分。
其中信号检测
图1-1小车的基本模块方框图
部分包括:
路面检测模块。
控制部分包括:
电机驱动模块,显示模块,控制器模块,计时模块。
模块框图如图1-1所示。
为实现各个模块的功能,分别做了几种不同的设计方案并进行了论证。
。
3.模块设计与比较
控制器模块
根基题目的要求,控制器主要用于各个传感器信号的接受和辨认、控制小车的电机的动作、控制显示小车运动的时间及路程。
对于控制器的选择有以下两种方案。
方案一:
采用51系列单片机。
51单片机是最常用也是最基本的单片机。
由于其易于控制价格低廉而较为流行,但它也有以下缺点:
1)不稳定,程序较容易跑飞。
2)扩展资源有限。
3)仿真时需专门仿真机,调试麻烦。
4)封装较大,使版图面积增大,影响整机外观。
方案二:
采用ATMEL公司的AVR系列ATmega8单片机作控制器。
AVR系列单片机是采用低功率、非挥发CMOS工艺制造的Harvard结构的新型单片机,具有1MIP/MHz的高速处理能力。
ATmega系列单片机是AVR中高档产品具有丰富的片内资源,而且价格低廉性能稳定。
并具有在线编程(ISP)的特点。
给调试带来了极大的方便。
在本设计中基于多种比较我们使用ATmega8单片机。
(2)寻迹模块
黑带检测方案选择:
方案一:
使用简易光电传感器结合外围电路探测。
由于所采用光电传感器实际效果并不理想,对行驶过程中的稳定性要求很高,且误测几率较大、易受光线环境和路面介质影响。
在使用过程极易出现问题,而且容易因为该部件造成整个系统的不稳定。
故最终未采用该方案。
方案二:
由于黑白物体对光的反射和吸收程度不同,因此本系电路采用的是反射式光电管TCRT5000,通过调整合适的分压阻值使输出信号可以达到在白纸上小于0.7V、在黑纸上大于4.5V的高低电平。
用四对TCRT5000组成检测黑线的光电传感电路,分别控制4个方向,可以预测轨迹,使物体能够沿线行走,本方案也易于实现,比较可靠,因此采用方案二。
输入信号进入LM339比较器,稳定性能得到提升。
当小车低部的某边反射式光电对管遇到黑带时输入电平为高电平,反之为低电平。
结合中断查询方式,通过程序控制小车往哪个方向行走。
电路中的可调电阻可调节灵敏度,以满足小车在不同光度的环境光中能够寻迹。
黑带检测电路图如图2所示。
图2黑带检测电路图
参考电压:
UREF=R2/(R2+R1)
这里我们取R1为1K,则UREF为2.5V。
当光电对管输出电压大于2.5V,输出端口2为高电平1,否则为低电平0。
(3)直流电机及其驱动模块
电机选择
方案一:
采用步进电机控制,步进电机是数字控制电机,即给电机加一个脉冲信号,电机则转过一个步距,角度非常精确;而且步进电机必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用,使用起来较麻烦。
因此我们放弃此方案。
方案二:
采用直流电机控制,直流电机可在常规下使用,并且我们的小车要求60秒跑完全程,速度要求较快,此外直流电机控制的方法简单,安装方便,且直流电机耗电比步进电机少。
故而我们选择了第二种方案。
3.3.2驱动电路选择
方案一:
采用分立元件组成的平衡式驱动电路,这种电路可以由单片机直接对其进行操作,但由于分立元件占用的空间比较大,还要配上两个继电器,考虑到小车的空间问题,此方案不够理想。
方案二:
采用电机驱动芯片L293D,市场上不容易买到,且驱动能力不大。
故而放弃。
方案三:
采用市面易购的电机驱动芯片L298N,该芯片是利用TTL电平进行控制,对电机的操作方便,通过改变芯片控制端的输入电平,即可以对电机进行正反转操作,很方便单片机的操作,亦能满足直流减速电机的要求。
我们采用两个电机分别对左轮和右轮驱动,这样有利于小车的转弯。
智能车驱动电路实现如图5所示。
AH桥原理图
B智能车驱动电路
图5
图5采用L293D电机驱动芯片对电机的开和关进行控制,L293D电机驱动芯片允许电压范围在4.5~36V,内有四重推挽(双重H桥集成功放电路)驱动电路,该芯片内部集成了双极型H-桥电路,所有的开关量都做成n型。
这种双极型脉冲调宽方式具有很多优点,如电流连续;电机可在四象限运行;电机停止时有微振电流,起到了“动力润滑”作用,消除正反向时的静摩擦死区;低速平稳性好等。
H-桥电路的输入量可以用来设置马达的转动方向,使能信号可以用于脉宽调整(PWM),通过调整PWM的占空比来调整电机的转速。
每一组PWM波用来控制一个电机的速度,而另外两个I/O口可以控制电机的正反转,控制比较简单,电路也很简单,一个芯片内包含有8个功率管,这样简化了电路的复杂性。
电路图如图1-5所示。
该芯片过热后能自动关断,两个通道可以向各自的电机提供1A的驱动电流。
其最大的优点是其内部还集成续流二极管。
该芯片的功耗比较小,有四个推挽电路组成,它们成对使用,每对推挽电路的输出共享一个使能端,用以控制直流电机,比较适合直流电机或步进电机的驱动。
鉴于方案二的以上优点,综合比较,本方案采用方案二。
3.4显示模块
采用LCD显示,用单片机可实现显示数据,并且可以实现单片机I/O口的并用,显示效果直观,明亮,调试不难,还省电。
故采用LCD液晶屏显示。
显示亮度和字体大小在演示时更具灵活,十分美观,令人赏心悦目。
显示电路如图6所示。
图6显示电路
3.5电源模块
由于电机在正常工作时对电源的干扰很大,如果只用一组电源时会影响单片机的正常工作,所以我们选用双电源供电。
一组5V给单片机和控制电路供电,另外一组9V给电机供电。
以免影响控制部分电源的品质。
考虑到如果9V电源直接驱动,那么使小车的速度太快,转弯不灵敏,造成小车来不及转弯就冲出跑道,则在电源处加了一个稳压管(7805),使电机在稳定的5V电压下工作。
电路框图如图7所示,
图7电路框图
3.6硬件抗干扰的实现
为了使系统硬件稳定可靠,我们采用了一系列的措施来减少干扰:
1、采用单片机与电机分离供电的方案;
2、采用地线、电源线加粗,做成PCB板的形式;
3、给电机加滤波电路;对于单片机和其它IC的闲置端在不改变系统逻辑的情况下接地或接电源;
4、印制板图布线时尽量减少回路环的面积,降低感应噪。
4.系统原理及理论分析
4.1单片机最小系统组成
单片机系统是整个智能系统的核心部分,它对各路传感信号的采集、处理、分析及对各部分整体调整。
主要是组成是:
单片机Atmega8、小车驱动系统芯片L298N、液晶屏、比较器芯片LM339、及各路的传感器件。
4.2各功能模块的实现
4.2.1寻迹实现
(1)黑带检测原理
利用光的反射原理,当光线照射在白纸上,反射量比较大,反之,照在黑色物体上,由于黑色对光的吸收,反射回去的量比较少,这样就可以判断黑带轨道的走向。
由于各路传感器会对单片机产生一定的干扰,使信号发生错误。
因此,采用一级射极输出方式对信号进行隔离,这样系统对信号的判断就比较准确。
x/mm
4
图9对管发射接收原理图10光强度相应曲线
反射式光电对管的反射光强度的输出信号电压Vout是反射面与传感器之间距离x的函数,设反射面物质为同种物质时,x与Vout的响应曲线是非线性的,如图10所示。
设定输出电压达到某一阈值时作为目标,不同的目标距离阈值电压是不同的。
距离X与遇到黑白实线反射回来的电压关系的测试结果如表2。
表2
X(mm)
30
20
17
15
12
10
6
黑色(V)
4.97
3.16
1.38
1.04
0.28
0.07
0.07
白色(V)
4.97
4.97
4.97
4.97
4.97
4.97
4.97
由表2及小车的实际高度综合考虑,我们选择距离X为8mm,这样有利于我们的板子的安装。
(2)寻迹实现
通过读取PC0--PC3口所接传感器的状态来判断轨迹所在方向,并通过推理,预测下一步应该走的位置,继续判断,直至走完线路。
传感器的使用数量应该尽量少以减少单片机的信号处理量,寻迹小车底部一共安装有4对反射式光电对管传感器,选用运算放大器LM339,光电传感器检测到的信号经放大器放大整形送微处理器判断、运算、控制。
由于黑色实线的宽度是2厘米,我们选择传感器之间的距离为2厘米,这样不仅可以使小车行驶时检测到的范围加宽,保证小车的寻迹行驶,还可保证小车行驶的稳定性,控制的准确性,行驶路线平滑。
寻迹用接近传感器安装位置如图11所示,1、3传感器骑在黑线两测用于检测是否跑偏,2、4传感器在黑线范围内用于主要检测,以确保小车一直在黑线上运行,传感器5放在3的旁边,距它2cm,与1、2、3并排,用于检测小车在返回时停在出发点。
传感器状态决定下一步的运行方式,具体可参见表3。
u2u5u3
2cm2cm
2cm
u4
图11寻迹传感器安装位置示意图
4.3自动寻迹实现
具体可参见表3。
表3小车寻迹进库控制表
控制状态
u2
u5
u4
u3
行驶状态
1
1
1
1
1
前进,寻找黑线
2
1
1
1
0
左轮加速,右轮减速,向右大转弯
3
1
1
0
1
左轮和右轮中速前进
4
1
1
0
0
左轮加速,右轮减速,向右小转弯
5
1
0
1
1
左轮和右轮中速前进
6
1
0
1
0
左轮加速,右轮减速,向右小转弯
7
1
0
0
1
左轮和右轮中速前进
8
1
0
0
0
左轮加速,右轮减速,向右小转弯
9
0
1
1
1
左轮减速,右轮加速,向左大转弯
10
0
1
1
0
左轮和右轮中速前进
11
0
1
0
1
左轮减速,右轮加速,向左小转弯
12
0
1
0
0
左轮和右轮中速前进
13
0
0
1
1
左轮减速,右轮加速,向左小转弯
14
0
0
1
0
左轮和右轮中速前进
15
0
0
0
1
左轮减速,右轮加速,向左小转弯
16
0
0
0
0
左轮和右轮中速前进
注:
u4u2u3u5对管输出端(低电平为探测到)
4.4PWM控制实现
PWM(脉冲宽度调制)控制,通常配合桥式驱动电路实现直流电机调速,非常简单,且调速范围大,它的原理就是直流斩波原理。
如图1所示,若S3、S4关断,S1、S2受PWM控制,假设高电平导通,忽略开关管损耗,则在一个周期内的导通时间为t,周期为T,波形如图12,则电机两端的平均电压为:
U=Vcct/T=αVcc,其中,α=t/T称为占空比,Vcc为电源电压(电源电压减去两个开关管的饱和压降)。
电机的转速与电机两端的电压成比例,而电机两端的电压与控制波形的占空比成正比,因此电机的速度与占空比成比例,占空比越大,电机转得越快,当占空比α=1时,电机转速最大。
u
t
Tt
图12PWM控制波形
PWM控制波形的实现可以通过模拟电路或数字电路实现,例如用555搭成的触发电路。
但是,这种电路的占空比不能自动调节,不能用于自动控制小车的调速。
而目前使用的大多数单片机都可以直接输出这种PWM波形,或通过时序模拟输出,最适合小车的调速。
我们使用的是单片机Atmega8,内部具有PWM相位可调功能,用以控制电机调速。
PWM控制原理:
每一组PWM波用来控制一个电机的速度,而另外两个I/O口可以控制电机的正反转,控制比较简单,电路也很简单,一个L298N芯片含有8个功率管,这样简化了电路的复杂性,如图所示IO口PB0、PB5控制第一个电机的方向,IO口OC1A控制右边电机的速度;IO口PB3、PB4控制左边电机的方向,IO口OC1B控制第二个电机的速度。
5.系统程序设计
用单片机定时器T1产生1KHz的方波,通过产生PWM脉宽调制信号对左车轮的速度进行控制;同样用定时器T1产生1KHz的方波,通过可调PWM脉宽调制信号对右车轮的速度进行控制。
由于每个电机控制一个车轮所以对电机的正转和反转就可以使小车掉头。
为了提高小车灵敏度,对红外线接收信号及黑带检测信号都采用中断法来处理。
用定时方法对铁片检测、计量路程、拐弯及数码管动态扫描进行处理。
主程序流程图见图9,各子程序图见图10、图11。
6.测试与分析
6.1测试设备:
秒表:
精度0.1s
直尺:
精度0.001m
直流电源:
+5V/3A+12V/0.5A
双踪四迹示波器:
显示方波
数字万用表:
电阻、电压、电流
6.2调试及性能分析
整机焊接完毕,首先对硬件进行检查联线有无错误,再逐步对各模块进行调试。
开始
I/O口
初始化
定时中断
初始化
否
是否有避障
信号
寻线前进
是
避障处理
界面显示
结束
图9 主程序流程图
T0定时中断
6.2.1模块测试
首先写入电机控制程序,控制其正反转,停机均正常。
加入显示时间子程序,显示正常。
铁片检测依靠接近开关,对检测信号进行处理,无异常状况。
接着对黑带检测模块调试,发现有时小车会跑出黑带,经判断是因为红外线收发对管灵敏度不高,调整灵敏度后达到满意效果,寻迹问题问题解决,然后又对进库进行测试。
各模块的测试结果如下列表所示。
表4电机驱动测试结果
正转
反转
快速
慢速
停止
左轮
正常
正常
正常
正常
正常
右轮
正常
正常
正常
正常
正常
表5寻线测试
测试次数
起始点
越界次数
寻线状态
若越界
返回否
1
未越界
0
自始至终
可自动返回
是
2
未越界
0
自始至终
可自动返回
是
3
未越界
0
自始至终
可自动返回
是
4
未越界
0
自始至终
可自动返回
是
表6LCD显示精度测试数据
测试次数
液晶显示时间
秒表记录时间
显示误差
1
49s
49.4s
0.80%
2
36s
36.3s
0.82%
3
40s
40.3s
0.74%
4
47s
47.4s
0.84%
6.3误差分析
经测试我们两个位置偏差均控制在1厘米以内,偏差产生的主要原因是由于小车在经过长时间弯路上行驶,到指定位置时方向已有点歪斜,偏差大小还与小车的起始放置位置的方向、靠左还是靠右有关。
7.结论
通过各种方案的讨论及尝试,再经过多次的整体软硬件结合调试,不断地对系统进行优化,智能小车能够完成各项功能到达车库。
小车总长13cm,宽8cm。
在系统设计过程中,力求硬件线路简单,充分发挥软件编程方便灵活的特点,来满足系统设计要求。
从最终综合测试结果来看,本系统能够很好的完成题目的设计要求,并能展开发挥的空间。
在本次课程设计过程中,我们学到了很多的东西,掌握了各种相关元件的基本原理,并学会了他们的使用方法,注意事项等等。
也对其他一些别的相关元件有了一定的了解,极大的丰富了我们的课外知识,拓宽了我们的知识面。
在本次课程设计过程中,还遇到了许多突发事件和各种困难,设计制作曾一度难以进行,但通过仔细分析、讨论和我们自己的状态调整最后解决了问题,提高了分析问题解决问题的能力。
这又近一步提高了我们的动手能力,让我们学到了以前在课堂里远远学不到的东西。
这将使我们终身受益。
8.附录
附录1元器件清单
器件
数量
器件
数量
Atmega8
1
二极管
8
直流电动机
2
L298N
1
LCD
1
电容
若干
7805
1
LM339
1
电阻
若干
电池组
2
附录2系统原理图
附录4源程序
/***********************************主函数开始*******************************************/
intmain(void)
{
OSCCAL=0xB2;//1M时钟源
DDRB=0xff;
DDRC=0x0f;
DDRD=