基于单片机的智能循迹小车设计(支持资料参考_相关定制)

摘    要

随着我国科学技术的进步,智能化作为现代社会的新产物开始越来越普及,各种新技术也广泛应用于智能小车和机器人玩具制造领域,使智能机器人越来越多样化。智能小车是一个多种高新技术的集成体,它融合了机械、电子、传感器、计算机硬件、软件、人工智能等许多学科的知识,可以涉及到当今许多前沿领域的技术。智能小车的研究和开发正成为广泛关注的焦点。本设计是一种基于单片机控制的简易自动循迹小车系统,系统的设计主要分为总体方案设计、硬件和软件设计,其中每一部分均采用模块化设计原则,使得设计易读、易修改、易扩充。

整个小车平台主要以51单片机为控制核心,通过无线遥控实现前进后退和转向行驶,通过红外线以及超声波传感器,实现小车的自适应循迹、避障等功能。设计采用对比选择,模块独立,综合处理的研究方法。通过翻阅大量的相关文献资料,分析整理出有关信息,在此基础上列出不同的解决方案,结合实际情况对比方案优劣选出最优方案进行设计。从最小系统到无线遥控,红外线对黑线的自动循迹再到超声波自动避障,完成各模块设计。通过调试检测各模块,得到正确的信号输出,实现其应有的功能。

关键词智能小车;单片机;无线遥控;循迹;避障

目    录

摘    要

第一章 绪论

1.1 智能循迹小车概述

1.1.1 循迹小车的发展历程

1.1.2 智能循迹分类

1.1.3 智能循迹小车的应用

1.2 课题研究的目的及意义

1.3 课题研究的工作安排

第二章 系统总体方案的确定

2.1 小车循迹原理

2.2 方案的选择与论证

2.2.1 控制器的选择

2.2.2电源模块的选择

2.2.3电动机的选择

2.2.4电动机驱动模块的选择

2.2.5循迹传感器的选择

2.3 系统总体方案确定

第三章 硬件系统设计

3.1 单片机控制模块

3.1.1 STC89C52简介

3.1.2单片机最小系统设计

3.1.3核心控制模块设计

3.2电源模块

3.2.1 稳压芯片简介

3.2.2 电源稳压模块设计

3.3电机驱动模块

3.3.1电动机驱动芯片L293D简介

3.3.2模块设计

3.4循迹模块

3.5避障模块

3.6无线遥控模块

第四章 软件系统设计

4.1PWM调速简介以及实现

4.2主程序设计

4.3 程序的模块化设计

4.3.1循迹模块流程图

4.3.2避障模块流程图

4.2.3无线遥控模块流程图

第五章 系统调试与分析

5.1软件调试平台

5.2程序调试

5.2.1设置和删除断点

5.2.2查看和修改程序

结    论

参考文献

致    谢

第一章 绪论

1.1 智能循迹小车概述

智能循迹小车AGV),英文全称是Automated Guided Vehicle其最初产自于上世纪中叶,作为式的智能搬运机器人执行货物输送等功能。AGV在传统小车的基础上增加了电磁转换的控制结构,或者利用光学原理等实现既定路径的前进与障碍躲避。智能小车使用的驱动方式是电力传动,以蓄电池作为储能设备,比较低碳节能,而且相比于内燃机驱动的汽车,电动小车的噪声明显降低,整体的工作环境清洁有序。其运动功能的实现有两种方式:一、下载程序,在小车的芯片中烧录给定的轨迹行进程序,使小车按照约定好的路线前进;二、电磁轨道约束,在小车的工作地段铺设轨道,通过发射不同频率的电磁信息来给小车运动信号,牵引其走上规定的道路,在没有操作员的情况下将货品在收发地之间进行运输。

AGV在流水线加工中表现出的自动化水平比较高,可以在保证精确度的前提下完成物料的装载、输送、卸货等系列操作。同时,小车的学习能力比较强大,能够自行收集路况数据,可以避开“陷阱”,找到并执行最短路径的规划,大大提高了工作效率。一般来说,AGV有机械手臂托举重物,还有与其他小车和站点相交互的接口,帮助彼此更好地配合工作。

1.1.1 循迹小车的发展历程

随着社会的不断发展,科学技术水平的不断提高,人们日益迫切希望将自己从繁重的劳动中解脱出来,或者寻找一种工具,帮助自己完成精密度以及复杂程度更高的工作,于是就诞生机器人这门学科。在20世纪的中叶,全球首部机器人出世,至今已有50多年的历史,关于机器人的研究,涉及到的知识比较多,因此,机器人专业是一个综合性比较强的学科。该专业主要设置的课程有,机械应用,通信与电子科学,计算机技术,还有信号处理以及计算机网络结构等。由于机器人自身要保持平衡,对于周围世界的感知程度要求比较高,所以要学好机器人系统,必须要掌握传感器原理。从历史来看,智能追踪轨迹小车的发展大致经历了三个阶段

第一阶段,运输车按照城区设计可以按照给定的路径运动,但是不具备学习功能,不能识别路况自行躲避障碍物,而且初代的机器人不含有任何的传感系统,他在运动过程中更像是履带上了发条的木偶,灵活性非常差

第二阶段,发展阶段。第二代小车装配了一定的传感器,因此能够对自己的速度进行记录,能够感知到自己与路径旁边的物体之间的距离,也就是说,能够初步定位自己的位置。他的自动控制是一个闭环的系统,具备一定的自我调节能力。

第三阶段,人工智能。通过传感器性能的提升,还有算法的优化,第三代的运输车已经具备相当高的智能化程度和自动化程度。对于外部界环境,不仅可以收集大量用于评判的数据,甚至还可以对未来做出预测,也就是说,大数据系统的应用,许多智能小车功能和学习能力有大幅度的提升。同时,机器人技术与其他专业的交叉融合,也为人工智能的应用领域拓宽了渠道。

1.1.2 智能循迹分类

AGV从发明至今已经有50多年的历史,而且技术和理论应用水平不断提高,所以使得智能小车自身的结构和功能更加多元。这里按照寻找路径的方式作为划分的依据,可以把小车分为以下几种

(1)电磁感应式

电磁感应式引导一般铺设在路面,需要提前在地下埋设线路和轨迹。具体的来说,如果通入的电流是交变的,而且频率符合一定的要求,那么产生的磁场能够给小车提供符合协议的信息。小车通过传感器或者天线破解信息,然后按照要求寻路。小车内部装了自动控制系统,如果接收到的信息与给定信息质量差别比较大,就证明小车偏离指定路线的程度也比较大,这样就要求系统采取一定的负反馈措施回到既定轨道。目前,电磁感应式的机器小车应用比较广泛,主要在市场上发挥功能的是大中型的运输车,根据电磁波的信息进行导航和路径修正。

(2)激光式

激光的发射器和接收器镶嵌在一个设备上,且都应该安装在小车,以及小车所走过路径的周边物体上。比如说,镶嵌式激光传感器一般都安装在墙壁,以及标志建筑物上面。此外,特定路段,还有路灯以及其他标志物等,都应当安装有激光感应器。具体的原理是,小车每隔一段时间发射激光,周围的建筑物可以反射光束,然后小车在接收激光,判断自己与建筑物之间的距离,还有自己的位置,速度以及偏离正常轨道的方向等,通过这种方式来帮助小车返回到既定的轨迹。实际上,这种原理可以使用的具体载波种类有很多,比如说红外线,或者是超声波等,可以根据机器小车工作现场的环境以及精度要求,具体来确定。

(3)视觉式

视觉一词来源于人类的视觉处理,人的眼睛观察到的是周围的物体及物体运动的具体信息,小车识路能不能这样做呢?机器人视觉感知的专业发展为自动驾驶提供了可能。具体来解释,就是小车内部装设有计算机、摄像头还有相关的传感器。小车的出发地,目的地以及沿线的景观都被预先放置在计算机相关文件系统中,运输车一边行驶,一边要用摄像头扫描周围的图像信息,并且与计算机中的目标信息进行对比,如果发生了偏移,就需要由自动控制系统帮助小车回到设定的轨迹。与前两种方式相比,除了小车内部系统更加复杂以外,外部环境不需要增加其他的设备来辅助小车自动驾驶,而且,小车用于判断的信息更加丰富,所以精度更高,便捷性也更好。自视觉引导系统推出以来,小车的自动驾驶技术也在不断发展和突破。

AGV除了上述已经提到的确定路径的办法以外,还可以采用铁磁陀螺惯性引导的办法,以及利用光学还有其他各种形式完成认路和躲避障碍和回到原来的轨迹的要求。

1.1.3 智能循迹小车的应用

智能循迹小车发展历史及主要应用场所如下:

(1)仓储业

众所周知,货物的储存和运输需要耗费大量的人力和物力,而运输车自动驾驶技术的发展可以帮助节省大量人力资源,并且更有效率的完成货物运输。第一个将智能循迹小车应用于货物仓储的公司是美国的Mercury Motor Freight公司,当时是1954年,美国的自动控制和人工智能技术还不成熟,但是当时的运输车就已经能够实现从出货到入库的功能,长期来看,比雇佣人力可以获得更高的营收。截止到2021年,世界已经有超过2000家企业和工厂引进了两万台左右的中小型智能循迹小车,这些小车工作的地点就是仓库,主要工作是货物进出库的统计和运输。在使用自动驾驶小车用于仓储的领域,我国做的比较好的,就是海尔集团,该家公司在2000年的时候,就已经将九台自动运输车投入到仓库的工作中,根据当年的统计,一台运输车一天可以完成超过十千公斤的货物运输。

(2)制造业

在制造业的的生产线中AGV小车大显身手,智能小车完成任务的速度快,而且这些熟的精度也很高,所以最终能够为企业节省大量的生产成本。此外,随着人工智能技术的发展,小车选择的前进路线根据生产过程及时调整,使一条生产线,生产十几个产品,大大提高运输和产品制备的灵活机动性。一个具体的实例就是沃尔沃的汽车组装厂,当时是20世纪70年代,汽车厂为了提高零件装配的效率,使用AGV小车作为运输车,根据第二年的财报显示,投入智能小车以后,不仅件的装配时间减少了1/5,还将近节约了40%的错误成本,资金流的回收效率变高,而且相应的减少了流水线工人的开销。此后,在主要的汽车制造厂,比如通用系列,以及日本的丰田汽车,还有克拉斯洛以及大众等大中型企业零配件和车载器件的制造,都用到了AGV小车。实际上,现代工厂经理不开自动驾驶的循迹小车,不仅是机械加工制造,还有富士康等电子厂,以及烟草等需要流水线运作的行业,都选择了使用自动技术来代替传统的工人进行作业

(3)邮局、图书馆、港口码头和机场

相比于制造业,在一些其他零散的需要物品运输的场所,比如说邮局还有图书馆将图书分类,还有码头和机场等公共交通需要装卸货物等场景,也出现了智能循迹小车的身影。因为小车最突出的特点不是他能够承载货物的重量,而是精密度和智能程度,应对不同情况的灵活性这样的特点,在上述的场景中小车也能够充分发挥自己的作用,代替人工来完成一系列单一的操作。比如说上世纪80年代,瑞典的大斯德哥尔摩邮局已经使用上自动运输小车,日本也紧随其后,我国也逐渐将运输小车投入到邮局的运输工作中,比如说上海的邮政公司。目前,智能循迹小车用于装载的工作已经越来越普遍,甚至在荷兰的鹿特丹港,原本已经司空见惯的将智能运载车称之为“院子里的拖拉机”,小车每日完成的集装箱运输工作范围半径达到几百米

(4)危险场所和特种行业

如果需要运输的物品是危险化学品,那么人工操作当然的风险就比较大,相应的开支也会增加,但是如果用耐腐蚀和精密度好的智能小车,就可以有效的解决上面的问题。比如说,在核电厂用AGV小车,就可以替代人工,避免人受到辐射而感染。另外,小车对于工作环境的要求并不高,可以在黑暗环境中,准确、可靠进行产品的装卸和运输另外,智能小车用于战争方面也能够发挥自己的优势,这里主要应用的是其传感功能和自动驾驶技术,战场上通过精密的图像扫描还有位置感知,以及侦查他国武器等,能够有效的提高作战的能力。比如说,美国的军队已经研MINDER系统,用于侦查工作,具体的功能有雷达扫描,以及痕迹处理和导航功能。

1.2 课题研究的目的及意义

人工智能是未来发展的趋势,目前来看,自动驾驶功能是最有可能,首先被推广应用的,在这方面,国内外都已经投入了大量的专家学者进行专门研究,研制开发针对特殊条件下的安全监测系统。其中包括研究使用远距离和不需人工操作的方法来进行实现,比如人工智能和远距离的通信测控等。无线传输加快了信息交换的速度,同时也使测量不必受限于具体环境

智能小车可以说是智能机器的代表,AGV只要可以拆解为三大主要结构,第一,传感与检测系统,第二,执行结构,第三,中央处理器。目前对于智能小车的要求,仅限于可以自动在规定的路线上行进,或者说给定目的地,小车能够以最优的路径办法前进。另外,小车需要有效的躲避周围的障碍物,减少损耗。

本课题以智能小车为研究对象,通过查阅文献以及使用单片机进行实践,基于自动控制原理实现小车的自动驾驶和自动避障。在具体实验过程中,需要注意传感器与小车的搭配,以及在仿真软件中设计驱动部件和外部的输出设备刻画,利用学过的微机原理以及传感器和机电知识,用理论结合实际,系统完成智能小车寻迹功能的实现。

1.3 课题研究的工作安排

首先,本文的布局和章节安排如下:

第一章绪论探讨智能循迹小车对仓储业、制造业、运输业、医药、化工、食品等领域具有特殊的意义,对课题进行整体背景的调查,罗列出智能循迹分类,说明课题对设计的目的及意义。

第二章系统方案确定及主要元件的选择,在课题的框架构思期间,通过各种手段对设计进行方案的提出与筛选,计划出论文叙述的整体设计方案等,为电路搭建做好铺垫。

第三章硬件设计。单片机系统设计需要软件调试结合硬件设计,对于智能小车,更需要注重硬件电路的设计,目前,IC的开发和应用渠道不断拓宽,可以实现的功能更加广泛,而且与软件结合的更加紧密,一般来说,仿真软件中有电路模型储存,同时也有硬件连接图直接生成代码的功能,在设计中,要着重用到这些功能。通过上述对智能循迹小车的叙述与理论基础,对红外测温装置进行初步的电路搭建。

第四章软件设计电路搭建成功检查无误后,根据智能循迹小车的功能进行设计软件系统的整体结构、划分功能模块、确定每个模块的实现算法以及编写具体的程序

第五章系统调试与分析。程序在编写过程中,要注意写好注释。调试过程中首先应当让程序跑完全程,记录出现的问题,还有具体出现问题的模块。第二,进行断点调试,分析出现的问题是单行的代码,还是整个模块的设计有欠缺。最后应当使用单步调试的办法,对于程序运行的bug,提出专门的解决问题,最终保障程序正确执行。


第二章 系统总体方案的确定

2.1 小车循迹原理

本文采取的办法是利用光线感应来告知小车路线。具体来说,就是在白板上刻画黑线,让智能小车沿着黑线走。因为白色对于光线的反射能力强,啊,黑色最弱,所以小车就能够根据樊效所得的光线强弱,判断自己是否走到了正确的路上。本文使用的光线感知元件是红外传感器。

首先,小车上的红外发射装置需要发出红外线,根据不同颜色的感官特性,红外光落到白板上能够反射会去,而发射到黑线上则会被吸收,小车的接收器又能将反射得到的红外光转换为电信号,因此能够知道自己走的路线,是否是沿着黑线的。但是红外探测法有个缺陷,就是红外光的频率比较低,能量比较弱,可以发射的距离短,可能会出现接收不到信息的可能。

其次,这里对光线具体经过的路径进行说明。小车供电后,由自身携带的光电二极管发射光束(红外线),当光束打到路面后反射被小车接受到后,利用传感器将光信号转变为电信号,此后再反馈给小车的单片机,让它判断执行哪条指令。前文提到过,白色和黑色返回的光强和数目相差很大,因此,按照设计规则,单片机需要做到避开反射光多的地方,走反射光少的地方。

这里具体对设计黑白二色的路面做出解释:因为实验室中小车的工作环境不仅有铺设的路面,还有墙壁、实验桌以及其他的设备等,如果光线发射到其他地方发生漫反射和全反射,则会给小车路线的判断造成干扰,所以,应当选择光线反射能力差别最大的两种颜色进行实验。当然,AGV实际的工作情况要复杂的多,本文做了大量理想条件的模拟

2.2 方案的选择与论证

2.2.1 控制器的选择

方案一:

使用STC89C52单片机进行实验。51、52系列上世纪就风靡全球,随着科技进步和芯片材料制备的发展,开发板的追求方向越来越向着体积小、质量轻以及容量大的特点前进。而STC89C52开发板的功能比较齐全,工作损耗比较低,控制系统和CPU为8位,还支持在线修改程序代码和调试的功能。但是,在接线时要考虑的管脚接线比较麻烦。其配套使用的软件有KEIL系列和PROTEUS等。

方案二:

使用AVR单片机进行设计。该开发板是 Atmel公司1997年发行的。其体系采用的哈佛体系RISC协议。而RISC的指令使用效率更高,使用的代码也比较简洁,一行程序代码所占的字节宽度是一定的,选取对齐方式以后,可以大大减少运行起来的时间。AVR开发板最大的特点也就是运行速度快。可以达到1Hz执行一百万条执行的能力。

方案三:

选择FPGA开发板作为主芯片。这种方案是考虑到该开发板的技术优势,其上配备了IR接受器,可以方便地发出红外信号。而且,其开发板的RAM功能比较突出,擦除和重新编码的安全性比较高。一般来说,FPGA编程需要的软件范围广,通用编码器和PROM都可以,至于电路连线设计,可以使用QUARTUS系列进行选线和接口配置。而且,FPGA的芯片可移植性比较强,一般换一片 EPROM 就能够解决一次应用的转换。

方案比较与确定:

首先,考虑到成本因素,方案一的单片机历史悠久,性能良好,芯片制造的成本比较低。而FPGA设计比较复杂,支持的功能更多,应用场景多,因此造价几乎是STC89C52的6倍。再加上,本科学习期间对于FPGA和AVR的接触并不多,设计起来花费的时间成本也要考虑,这样看来方案一比较实惠。第二,考虑功能因素,FPGA广泛用于车载和精密计算机的装配,性能优异,AVR芯片比较小,可以使用的场合也很多,比如电磁炉、手机等,而52开发板工作电压低,功能随设计的复杂度而更加广泛,在自动喷泉、车站实时车次显示等方面都可以看到它的身影。此外,52单片机的控制比较简单操作和布线一目了然,可供学习的资源和例程都很多,能够满足本科设计的需求。因此,综合看来,本次设计选择了STC89C52作为实验用的开发板。

对于本次设计的目标——智能小车寻迹,需要考虑到程序的复杂以及硬件电路连接的精确性,所以要注意多开关量的系统设计,利用好51开发板的位操作指令,对于其输入输出端口功能的选择以及实现要多考量。本次编程量适中,使用单片机的8K存储空间也应当适合。在后续的操作里面,需要注意开发板与传感器和伺服、驱动电机的配合,充分发挥51的优势

2.2.2电源模块的选择

方案一:

使用PC端的电脑USB口供电但是由于电脑比较笨重,尽管有较多的接线选择,在智能车的场景变换上,仍然比较吃亏。此外,电脑接口提供的工作电压为+5V为稳定直流但在沿线可能会有损耗。

方案二:

使用外设电源(7.2V),备用可充电电池(双排)还需要经过滤波和稳定设备(7805)进行波形调整,送到51单片机。此外,电机的驱动电压只要不超过上限就好,所以可以用7.2V的输出直接与L293D相连。实际上,这种电池的获得十分容易,而且可以多次利用,经济性好

方案三:

使用常用的一次干电池进行能量供应。这里选择4段5号通用电池,大约电压为6V,所以仍然需要进行电压调整和稳定,选择7805进行调压。然而,干电池的放点能力会随着时间而减弱,所以其电流或许会不稳定,而且电压也会下滑明显,需要实时监控调整,对稳压器的要求也提高了。所以该方案无论是时间复杂度还是操作复杂度都很高,性价比低。

综合来看,选择方案二作为小车电源模块,经济实惠。

2.2.3电动机的选择

方案一:

使用直流电机驱动由于该电机的驱动力矩比较强,还很灵敏,占地面积小,又轻便,可以很好满足小车的要求。其调节运行速度的水平也很高,能实现平稳变速。电机的壳体和齿轮材料可以保证高耐冲击性(低电压水平),并且实现启停以及反时针旋转的功能,对于小汽车多方位的运动提供支持。此外,这种电机的价格也很便宜。

方案二:

使用步进电机驱动所谓步进指的是脉冲驱动,具体解释,就是输入一个电平改变,则电机就进行角位移的旋转,当然,具体的电机要求的脉冲类型和单位旋转角度有所不同。该种类的电机总体来说还是比较精密的,要求的电压等级在5V以上,可靠性比较好,体型也很轻便,几乎可以做到瞬间的启停。但是,它有一个不利于小车平稳运动的缺点,就是电机本身防抖功能做得不太好,输出力矩较低,如果要求小车快速前进的话,电机的减速很快,小车可能会有顿挫感,实际上,小车的平稳要求是基本运输车都会有的规定,所以,按照这方面来看,步进电机不适用与本设计。此外,这类电机的价格还贵,不符合经济性要求。

总之,因为直流电机的市价便宜、控制简单,因此本设计用方案一。

2.2.4电动机驱动模块的选择

方案一:

使用尼拓扑数字信号控制的来改善电机两端的电压,使得小车速度改变得到控制。然而尼拓扑的调速分为若干个阶段等级,不能平滑改变,而数字信号控制的器件价格很高,对于外界信号的干扰不能有效辨识,而且,一般来说,电机的阻尼不高,使用阻尼形式的调节器可能会分去更多的电压,不利于效率的提升。

方案二:

使用开关继电器控制电机的启停和调速。具体来说,就是在电路中按照继电器的控制接线,实现点动或者连动的操作。虽然实现起来很方便,但是继电器会有响应时间久、工作年限少的缺点,而且误触发的可能性也很大。

方案三:

使用专用电机驱动芯片。通过同类型的对比,本文选择L293D作为驱动的芯片其内部具有桥式电路对电机进行接线控制根据要求,L293D提供电能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值