摘 要
随着科学技术的发展,各种专业技术水平也不断提高,其中包括计算机技术和人工智能科学,它们的快速发展
带动了一大批优秀的新型产业,尤其是智能机器人,它的地位日益重要,并有趋势成为现代机器人研究领域中的重
中之重。而在智能机器人中,服务型机器人又是一大创新,它改变了机器人在人们传统观念中的印象。现在人们的
生活节奏正在逐渐加快,生活水平也不断提高,也使人口老龄化的情况严峻起来,所以家庭的日常清洁工作就容易
被忽视。在这一社会环境下,我们进行了避障吸尘智能小车的研究,它的定位是属于智能家具,家具的智能化是未
来发展的趋势,在这种情况下研究智能避障吸尘小车有着深远的意义。
本次设计通过选用STC89C52单片机实现对避障吸尘智能小车的核心控制,再对其各功能模块进行研究。通过对
模块的比较选择,来决定最适合本次设计的芯片、传感器、驱动等,然后通过购买实物,手动焊接来完成硬件方面
的组装。程序使用C语言进行编写,编译仿真无误之后下载到芯片中。最后再对小车进行调试,检验各部分功能是否
能正常实现。经过以上步骤的操作,本次设计的避障吸尘智能小车符合设计要求,可以完成预设的功能。
1 绪论
1.1 研究背景
现代科学技术处于日益蓬勃的快速发展阶段,机器人技术也随之完善,家庭生活中处处可见“智能机器人”的
影子,科技发展的原因源于对科技的需求,生活水平的提高使得人们在生活中对科技的需求也越来越多,在这一背
景的驱使下,民用机器人设计的侧重点逐渐向智能化、人性化的方向靠近,以满足使用者需求为首要目的。消费者
生活品质的提高,对高智能和更便捷的机器人不断追求,小型化、多功能、智能化的家用电器便应运而生,充满智
能化的家具使得消费者在生活中充满趣味和便捷。发展越来越快。未来生活中家用小型电器的发展会更加快速,更
新换代的周期会缩短,同时会随着市场需求的变化而改变,不断迎合大众市场的需求,小型家用电器的科技含量会
提高,会提供新颖且实用的功能来满足消费者的需求,与此同时,品质保证也会提高,绿色环保是以后科技发展的
必由之路,这样才能更好的立足于市场不被淘汰[1]。
对小型家用电器的设计主体就是对电器的控制部分进行设计。目前小型家用电器的控制电路部分一般分为电源
模块、人机交互模块、控制系统模块和控制抗干扰模块。电源模块主要考虑电源的降压、整流、滤波和添加限流电
阻对电源电路进行保护。人机交互模块考虑的是人机交互的合理性和方便性。控制系统模块目前大多数为单片机或
者PLC控制,用机器语言进行程序的编译,从而达到一定的运行目的。控制系统模块最重要的是控制系统逻辑的清
晰、目的的明确和程序的安全运行。硬件的抗干扰和软件的抗干扰两者组成控制抗干扰模块。硬件抗干扰方面考虑
尽量采用多层印制电路板、印制电路板合理分区、布线合理美观等方法,软件抗干扰方面的主体思想就是发现程序
运行的失常状态并及时将系统引导到初始状态[2]。
本文所研究的避障吸尘智能小车简单的来说是实现避障和吸尘,避障的实现是依靠移动机器人技术,吸尘的实
现是依靠吸尘器技术,将两者技术结合起来,从而实现在一个环境下自动避障进行吸尘工作达到清洁卫生的目的,
代替人来完成地面清洁的繁琐工作[3]。智能吸尘机器人近年来在国内外得到研究的重视,发展十分迅速,目前已经
有多家公司的多款智能吸尘机器人投入市场并且也得到广泛的使用。智能吸尘小车的实现原理体现了现代机器人多
项关键技术的融合,是一个很好的家具机器人案例,而且便民目的明确,大大降低了人们生活中的劳动需求,所以
又具有广阔的市场前景[4]。
1.2 国内外研究现状
吸尘智能机器人顾名思义,是具有吸尘器功能的智能机器人,它可以自动完成一定环境内的地面清洁功能的家
庭服务型智能机器人,它是将多项科学技术集于一体的成果。在20世纪80年代,人们把研究的目光聚焦在吸尘智能
机器人,最早的实验发生在日本,是由日本的三洋电器有限公司的控制系统研究中心研制出来的。该吸尘机器人作
为当时的实验样机,它是使用直流电机驱动来进行移动,安装10个超声波传感器和3个碰撞传感器来智能测量是否有
障碍物从而实现避障功能,它的行进速度非常快,可以达到30cm/s。其缺陷为工作并不是处于无线状态,必须拖着
很长的电线供电运行。在21世纪后,电池问题得以解决,不在需要用电线连接电源,不仅存储技术得以解决,避障
传感器、吸尘装置等机器人模块也得以改良和优化,该设计也变得更为方便,使用也更加便捷[5]。
在国外,有一台瑞典厂商Electrolux生产出的“Trilobite”(吸尘机器人),它拥有自主吸尘的能力,是全世
界第一台具有完全自主能力的吸尘机器人。打开电源,该机器人启动运转,首先,它是沿着墙壁行进,在行进过程
中把途经的地方都清理干净,同时系统通过行进的路程计算出打算所需要花费的时间。在进行清洁时,它采用超声
波传感器进行避障处理。系统通过分析可以检测电量是否支持继续工作,当电源不足时,它会自动回到设定好的充电装置上进行自行充电,电量充满之后,它会回到系统输入的记忆位置处继续进行工作[6]。
日本的松下电器从1985年开始大力研发智能吸尘机器人,并于2002年公布了研究成果试验样机,其中功能如
下:利用红外传感器检测是否具有障碍物从而实现避障、利用超声波波长的反射频率进行测距、压力传感器感受是
否承受压力、方向陀螺仪控制方向、热传感器和防滑传感器等。该机器人在接通电源后开始工作,它顺着墙壁前行
并计算该房间的形状同时各个传感器开始工作,进行测距避障,计算完毕后开始进行重复的清洁工作,整个工作流
程结束,清扫率达到92%-93%,在当时可以说是非常的智能方便了[7]。
在国内方面,最早研究智能吸尘机器人的是哈尔滨工业大学,他们使我国第一批研究此领域的人员,他们把这
项研究的运用场所放在工业方面,实现工业层面上的避障吸尘[8,9]。在这之后,浙江大学也开始致力于智能吸尘机
器人方向的研究,从1998年开始的初步进展,到之后的有所作为,历时两年时间之久,经过研发人员的不懈努力与
开发,设计完成出国内第一个具有初步智能自主吸尘机器人。然后与苏州TEK公司发展合作关系,一同进行研究开
发,在不断地研究到2003年,终于在智能、避障、吸尘这三方面实现了重大突破,避障效果与清洁效率都得到了提
高。其工作方法也是先对周围环境的学习与计算,在打扫房间四周卫生的同时计算出房间的形状与大小,进行路径
规划,其清扫率和覆盖率都很可观,能达到90%以上,也是非常不错的研究[10]。
1.3 本课题研究的意义
现在科技发展迅猛,生活质量提高,避障吸尘小车所需求的市场也会越来越大,为了满足消费者的需求,对该
设计的智能化、人性化、便捷化提升是必不可少的。基于STC89C52单片机的避障吸尘小车,它的设计逻辑越来越合
理,所采用的控制程序也是非常的严谨,增加垃圾清理装置,提升吸尘能力,使避障吸尘小车更加高效安全的进行
吸尘作业。
2 总体方案设计
2.1 总体方案设计
本次设计的红外避障吸尘小车是一种通过电机驱动作为移动方法、能够实现自主行驶并且完成吸尘工作的小
车。红外避障小车如果要实现相应的指令,则需要相应的模块可以正常工作,红外模块可以发出、接收红外信号进
行判断然后避障,并且利用电风扇转动保证吸尘工作的完成。避障系统利用红外传感器可以发射并接受红外信号,
判断距障碍物之间的距离来进行躲避,从而检测出合适的运动方向[11]。
总体结构方案设计如图2-1所示。
图2-1 总体结构方案设计图
图2-2为系统总体框图
图2-2 系统总体框图
2.2 系统各模块设计方案
2.2.1 控制核心模块的选择方案论证
方案一:采用CPLD进行控制
如果本次设计的核心控制模块我们选择的是CPLD,它也可以很好的实现我们本次要设计的功能,具备众多优
势,如:逻辑编程简易、便于我们进行操作、适用性很强、开发周期短等。但是,CPLD和单片机相比下来,在这次
研究中如果使用CPLD作为控制模块会有很大的缺点,那就是大材小用。CPLD具有很快的处理速度,然而本次设计中
的智能小车不需要它的高速度,它会影响小车在行驶时的稳定性。所以为了避免不必要的影响,所以不选择CPLD方
案进行小车设计。
方案二:选用单片机进行控制
如选择使用STC89C52单片机作为所本次设计的中心部分,相比CPLD的优势在于,单片机控制简单、易于操作,
而且具有很高的性价比,而在众多单片机中,拥有经典的MCS-51内核和于对比上一代的低功耗可编程的特点
STC89C52单片机就脱颖而出了。学校开展的单片机课程也易于我们这次的分析研究,所以单片机满足本次研究设计
的小车[12]。
经过上面方案的比较下来,决定选择使用单片机作为本次研究的控制核心模块。
2.2.2 电机驱动电路及驱动方法的选择
想法一:L293D
从原理图上看L293D这种双极性电路有保持电流的优势,低速运行时工作平稳。其可达到最高工作电压为25V,
最大驱动电流1.2A。L293D具有较低的输出电流和较低的输出功率。选择L293D作为系统的驱动电路,可以直接配合
单片机驱动直流电机,实现其正反转功能,使电机在两个象限上运行[13]。
想法二:L298N
L298N是一种双H桥电机驱动芯片,具有驱动很高的电机频率、使用简单的特点,而且其内部存在着4道驱动电
路。与L293D进行比较,不同之处在于输出电流更大,输出功率更强。
综合相比,考虑到智能小车行驶的动力问题,L298N有较好的优势,在本次课题研究中,我选择L298N电路作为
驱动电路。
2.2.3 主电路板的方案论证
在主电路板的选择上有两种方案:第一种是根据我们自行设计的电路原理图(通过元器件选择、系统仿真)之
后生成PCB图,根据PCB图制作成PCB板;第二种是直接按照设计要求在万用板上进行焊接。
方案一:PCB板
利用电气原理图绘制出PCB图,然后将绘制好的PCB图直接印刷成电路板。PCB板的优点在于布线清晰,工作量
小,后期绘制好的PCB板也不容易损坏出现问题,节省了大量的工作时间。下图为PCB板图。
图2-3 PCB板图
方案二:万用电路板
这种万用板上面有很多洞洞,这是用来将元器件插在上面进行安装的,在布局安装好所需要的元器件后,使用
焊锡丝将导线与元器件的引脚连接起来。万用电路板是学校开设的实训中所要求学生使用的板子,对于我们来说有
过操作经验。使用万用板的优势就在于易于后期调试的修改,根据自己的实际情况对万用板进行调整。
因为本次设计是智能小车,两种电路板相比较下来万用板性价比高,PCB板价格略贵,所以采用万用电路板,如
图2-4所示。
图2-4 主板选择图
2.2.4 避障传感器方案论证
方案一:超声波避障
采用超声波回波测距原理,不同端口发送和接收超声波,计算两者的时差,准确无误地计算出本体与检测到的
障碍物之间的距离,从而实现测距功能。智能小车一般在家庭这种场合进行工作,家中杂物居多,对超声波传感器
产生影响较大,会对它内部的计算分析产生误差,不能有效的避开障碍物,从而影响正常工作。不单如此部分的超
声波传感器价格昂贵,电路设计也较为复杂[14]。
方案二:红外传感器避障
红外测距传感器由一对红外线发射管和接收管组成,当发射管发射出一定频率的红外线光波遇到反射面时便会
反射,从而被接收管接收,经过比较处理电路处理能产生信号输出,通过判断输出信号的高低电平来判断实际反射距离,一般需要进行遮光处理来减少由强太阳光等多种含有红外线的外来光源干扰。如上文所说,在家庭这种环境
中,外界光源对于智能小车的影响较小,而且红外传感器的价格便宜,线路设计也较为简单,也更容易进行操作
[15]。
综上所述,采用红外传感器完成避障功能。
2.3 本章小结
本章主要谈及了本次设计的总体方案的选择,首先对智能小车的各个模块总体论证并进行了一个合理的选择,
总体的选择遵循经济、合理、有效的原则,在进行比较选择的时候有很多不懂的地方,也通过查阅资料、询问老师
等方法得到了解决。
3 硬件电路设计
3.1 系统的功能分析及总体系结构设计
避障吸尘智能小车的设计大体上分为:避障模块、吸尘模块和小车的控制运行模块。
目前的避障操作分为传感器避障和循迹避障,循迹是指在设计的路面上有指定的路径,智能小车通过传感器的
检测来判断行走的方向,通过不断循迹来达到按照规定路径航行的目的。比如餐厅中有送餐机器人,快递分拣中心
的分拣机器人等按照规定轨道运行的都属于循迹机器人。循迹一般采用光传感器或者红外传感器,它们的原理是先
发射再接收,从而把发射红外线的光信号转换为可以经过系统处理接收的电信号,从而实现机器人对接下来行进路
线的控制。红外线在不同颜色上的反射回来的光强度是不同的,特别是在黑色和白色上差异会比较大,因为黑色吸
收红外光的能力较强,所以经黑色反射回来的反射光比较弱,即传感器所接受的电信号一般为低电平。白色面吸收
红外光的能力差,所以反射光比较强即接受的电信号较强一般为高电平。通过处理高低电平的变换,来改变驱动电
路电机的驱动电流,从而按照规定的路线循迹。但红外循迹的不足之处在于在室外的情况下,红外接收管在接受红
外信号时,会被自然光中相同波长的红外光干扰从而影响循迹机器人的运行性能[16]。另外红外发射管必须处于常
亮状态,增加了系统的功耗,使整个系统的连续工作时间缩短[17]。传感器避障大多采用超声波传感器模块或者红
外避障模块来探测障碍物。超声波测距传感器,采用超声波回波测距原理,通过不同端口发送和接收超声波,经过
精确带温度补偿的时差测量技术,计算出传感器与检测到的障碍物之间的距离,从而实现超声波测距功能。红外测
距传感器由一对红外线发射管和接收管组成,当发射管发射出一定频率的红外线光波遇到反射面时便会反射,从而
被接收管接收,经过比较处理电路处理能产生信号输出,通过判断输出信号的高低电平来判断实际反射距离,一般
需要进行遮光处理来减少由强太阳光等多种含有红外线的外来光源干扰[18,19]。
吸尘模块是避障吸尘小车的主要功能模块,一般由起尘刷和涡轮风机组成,吸尘机器人开始工作时通过电机驱
动起尘刷将小车路径上的灰尘扬起再通过涡轮风机吸入小车装配的集尘空间内。目前会存在“卡死”现象、自动化
程度不高等问题,吸尘装置的可吸入范围很小,只能吸入灰尘和较小的垃圾,如果遇到体积较大的清扫目标时,可
能会出现“卡死”导致机器无法正常运行,自动化程度不高会需要人工清除吸尘小车内的垃圾,如果这些垃圾未能
及时清理的话,将会导致电机卡滞无法运转、散热效果不佳等问题,有可能会导致火灾的发生,因此应该提高吸尘小
车对吸入垃圾的处理能力,增加垃圾清理装置来解决[20]。
小车的运行可以用STC89C51/C52单片机来进行控制[21],小车以单片机作为控制中枢,MCU的电压范围较大,成
本较低,配置4KB的ROM和256KB的RAM,具有定时和计数功能,芯片编写程序简单,系统兼容性好,功耗低,抗干扰
能力强[22,23]。
3.1.1 系统功能分析
(1)按下万用电路板上的启动开关,电池开始为各个模块和传感器供电。如果小车在行驶过程中,右翼的红外
避障传感器模块检测到前方行进路上有障碍物,则小车通过驱动模块进行左拐来实现避障功能;如果小车在行驶过
程中,左翼的红外避障传感器模块检测到前方行进路上有障碍物,则小车通过驱动模块进行右拐来实现避障功能;
当智能小车接通电源启动时,风扇驱动模块就开始进行吸尘功能,从而达到在自动避障的同时打扫卫生;
(2)再次按下万用电路板上的按键,切断电源与智能小车的连接,各个模块停止工作,小车也停止运行,达到
关机的效果。
3.1.2 系统总体结构
图3-1是本次设计的智能小车的电气原理图。
图3-1 智能小车的电气原理图
3.2 模块电路的设计
3.2.1 STC89C52单片机核心系统电路设计
STC89C52RC单片机在运行过程中,消耗的功率很低,但是在低消耗的同时具有着高性能的特点,容量可以满足
基本需求,是一种使用很普及的可编程的Flash存储器。研发人员对STC89C52做了很多改良,使得它的功能优于传统
的51单片机。首先,在应用方面上,STC89C52的上述优点使得它的使用范围很广,8 位CPU可以让它应用在很多地
方,而且可以自行进行编程,这个特点在调试方案的时候就显得尤为重要。
一、STC89C52的主要特点:
(1)数据保护性强,保密性良好;
(2)适用于大多数的工作要求,适应性强;
(3)使用方便,操作简单,易于调试;
二、STC89C52单片机相关引脚说明:
三、STC89C52单片机最小系统说明:
STC89C52单片机最小系统电路的组成包含:具有复位功能的复位电路,按下可以使单片机重新运行达到复位目
的;而时钟电路可以设置单片机的各种循环;还有电源电路为单片机提供电源支持。图3-3为单片机最小系统原理图
。
图3-3 单片机最小系统原理图
3.2.2 按键电路设计
本次设计采用的是轻触按键,顾名思义,我们只需要轻轻按下按键,就可以接通系统电源,松开按键就断开系
统电源,它是通过外部提供的压力使按键内部的金属弹片受力从而达到接通和关断电源的功能。按键的存在方便了
我们对系统进行操作,它是作为系统的输入,也是本次设计必不可少的一个重要组成部分。按键电路的基本原理里
通过我们外界的手动按下,改变电路内部的电平接收,就是通过这样的过程,我们实现了对系统的手动输入控制。
按键个数是我们根据设计的需求可以改变的。
3.2.3 BD681风扇驱动电路设计
智能小车实现吸尘功能就是通过风扇驱动电路带动小车底部风扇的运转,这里选用大功率三极管BD6081来实现
对风扇的控制,接通电源,BD6081开始工作,风扇转动,模拟实现吸尘功能,把外界灰尘通过扇叶转动吸进内部。
同时该风扇驱动电路可以实现散热功能,散热的原理是利用外部空气流动来降低内部的温度,为了保证该系统的良
好运行,散热功能也必不可少。当单片机相关引脚接高电平时,三极管BD6081导通,风扇开始转动从而实现吸尘散
热功能;若给三极管BD6081接低电平,风扇不工作。图3-5为BD6081风扇驱动电路原理图。
图3-5 5V风扇控制电路原理图
3.2.4 E18-D80NK红外避障传感器模块电路设计
经过上文中关于对避障传感器的选择,经过选择决定使用E18-D80NK-N红外避障传感器,它具有发射和接收的功
能,从而把发射红外线的光信号转换为可以经过系统处理接收的电信号。红外线在不同颜色上的反射回来的光强度
是不同的,尤其是在黑色和白色上差异很大,因为黑色吸收红外光的能力较强,所以经黑色反射回来的反射光比较
弱,即传感器所接受的电信号一般为低电平。白色面吸收红外光的能力差,所以反射光比较强即接受的电信号较强
一般为高电平。在传感器的前端加上了透明镜头,加上这个镜头可以增大检测距离,最远可以检测到八十厘米的距
离。
我们可以根据实际需要来调节需检测的距离,调节旋钮在传感器的尾部。选用E18-D80NK-N红外避障传感器主要
是因为它的检测距离远而且它受外界光源干扰小,再加上经济实惠便于操作安装的优点,它的应用范围也是非常的
广,是工业生产中比较常见的传感器。
下图3-6为E18红外避障传感器模块接口原理图。
3.2.5 L298N电机驱动模块电路设计
本次设计采用L298N驱动模块来实现小车的行进,直流电机在该模块的控制下,可以运行起来。因为本次设计中
要求电机驱动的功率不能过小,所以采用高动力的L298N驱动模块。
一、产品参数:
(1)驱动芯片:L298N双H桥驱动芯片
(2)具有二极管续流保护
(3)直流电机转速可以通过PWM方式来实现调速
(4)驱动部分端子供电范围VMS:+5V~+35V
(5)驱动部分峰值电流Io:2A/桥
(6)逻辑部分端子供电范围Vss:4.5-5.5V
(7)逻辑部分工作电流范围:0~36mA
(8)控制信号输入电压范围:高电平4.5-5.5V 低电平0V
(9)最大功耗:20W
(10)存储温度:-25℃~+130℃
二、电机驱动模块使用注意事项
(1)在按下启动按键前,仔细检查该模块的接线是否正确,是否存在引脚接错的情况。然后按下启动按键,接
通电源后,观察电路板上的L5电源指示灯状态,如果存在错误的地方,则该指示灯不会点亮,那么则应立即停止运
行,切断电源,重新调试。
(2)电机驱动容易发热,在小车行进过程中要保证风扇模块正常工作,风扇模块为其提供散热功能,如果没有
正常工作,应立即断开电源,否则电机容易烧坏,待检查调整好之后再重新运行驱动器。
三、驱动模块接口解析:
电机电源驱动输入接口:GND接负极,VMS接正极。
四、直流电机控制信号真值表
以电机B为例,高电平H:低电平:L
输入信号功能:
IN1=H;IN2=L:电机B正转
IN1=L;IN2=H:电机B反转
ENA=H;IN1=IN2:电机B紧急停车
ENA=L;IN1=X;IN2=X:任意电平电机B自由停车
L298电机驱动模块具有高稳定性的特点,满足本次设计的需求。图3-8为模块接口图。
图3-8 L298N电机驱动模块接口图
下图3-9为L298N模块实物图。
图3-9 L298N电机驱动模块实物图
4 系统软件设计
本次设计由硬件系统和软件系统组成,软件系统的实现需要我们编写程序,然后编译程序,将编译好的程序下
载至单片机中,内部有程序的单片机才能实现预先设置的功能。
4.1 编程语言选择
由于本次设计的避障吸尘智能小车不像普通的电子设计,它的功能繁多,不容易实现,需编写的程序比较复
杂,计算量比较大,所以使用C语言来编写程序比较合适。在大部分的51系列单片机中,使用C语言来编写程序已经
成为主流,它和汇编语言相比有着明显的优处,具体如下:
(1)属于高级语言,容易理解,容易开发。
(2)编程效率高,开发效率高。
(3)语句少,灵活度高。
(4)移植性好。
(5)学习使用C语言已经是现在主流趋势,学会这一语言可以应用在很多场合。
(6)以后的单片机开发都会需要C语言。
4.2 Keil程序开发环境
本设计中单片机开发环境是Keil,它也是在单片机课程上老师教过使用的一个软件,使用C语言进行程序的编
写,在汇编语言方面,C语言具有明显的优势,上述已经列了出来。采用正确的开发环境对我们的程序编写有着事半
功倍的效果,以下是Keil的显著提点:
(1)Keil软件支持的操作系统很多,常见的WINXP和WIN7还有WIN10都可以进行操作,它里面有建立好的库函数
可以直接供我们使用。
(2)Keil具备完整的开发流程,不必再去另外的平台上操作,编辑、编写程序、编译调试都可以完成,对我们
进行51系列单片机的提供很许多便利。
下图4-1为Keil软件界面。
图4-1 Keil开发界面图
4.2.1编制系统主程序
多功能智能小车程序设计:
4.3 STC-ISP程序烧录软件介绍
程序编译调试好之后,开始进行对程序的下载与烧录,将电脑中编写好的程序下载到单片机实体内,这里选用
的是STC-ISP ,这款软件是专门针对STC系列单片机而设计的,操作简单,步骤不繁琐,不仅可以下载烧录程序还可
以在线仿真,如果串口出现问题也是可以检测出来的。在51系列单片机的开发应用中得到广泛的使用,它已经成为
单片机设计中不可或缺的一部分。
在烧录下载前,需要把单片机开发板与电脑接口还有下载器接口相连接,然后打开烧录软件,鼠标点击下拉选
项,选择与你单片机匹配的型号与接线的串口号,设置所需要的波特率,然后在线面的下拉选项中选择已编译好的
程序的“hex”文件所在的地址,然后点击下载按键进行程序的下载烧录,通过下载器(即CH340等串口烧写模块)作为中转站,把电脑编译好的程序通过下载器下载到单片机开发板中,这就是一套该软件完整的使用流程,下图4-2为
具体下载界面。
图4-2 烧录软件对话框
4.4 CH340串口程序烧写模块介绍
本设计选用CH340串口烧写模块进行对单片机程序的下载烧录,该串口模块具有很多优点,它的接口使用的是
USB接口,适用场所普及,操作起来也是非常的简单便捷,只需将它与操作平台的接口相连接,尤其是适合笔记本电
脑。下载程序的时候使用该模块就会变得特别轻松,它还具有以下的优点:价格经济实惠,稳定性好,效率高,是
目前单片机开发的首选工具。
下图4-3为CH340串口烧写模块实物图。
24
图4-3 CH340串口烧写模块
二、CH340串口烧写模块引脚说明
(1)+5V 5V输出,因有USB电源线,故本开发板不接,不需要
(2)VCC 本开发板不接,不需要
(3)3V3 3.3V输出,本开发板不接,不需要
(4)TXD 接单片机的RXD引脚
(5)RXD 接单片机的RXD引脚
(6)GND 接GND。
三、下表4-1为CH340串口烧写模块与单片机的具体接线情况。
1 CH340串口烧写模块与单片机接线
CH340模块 单片机开发板
TXD RXD
RXD TXD
GND GND
4.5 系统程序流程图
软件部分的设计主要是控制系统的设计,系统的软件框图4-4如下:
图4-4 系统程序流程图
当按下开始按钮之后,小车开始正常工作,包括小车前行、吸尘风扇转动、避障传感器进行工作。然后避障传
感器实时检测障碍物是否在设置的距离阈值内,当小于距离阈值时,向小车转动电机相关指令,小车进行转弯,以
便避开对应方向的障碍物。
5 系统焊接与调试
5.1 电路焊接
手工焊接是电气专业开设的一门实训课,掌握手工焊接技术是很重要的,它的用途非常广泛,这种焊接方式不
仅是最普遍的而且是最原始的焊接手段之一。许多工厂除了必要的情况:例如修理元器件以及测试系统是否出现故
障时会借助到手工焊接以外,几乎已经放弃使用该方法了。因为焊接环节一个不留意,将会把整个控制系统直接毁
坏掉,增加了不确定性。换句话说,焊接的会增加这个控制系统的使用风险,直接决定了该系统是否可以正常工
作。为了保证手工焊接的顺利完成,以下四个步骤环环相扣,必不可少:
5.1.1 焊接前的准备工作:
清理焊接处,确保焊接处干净干燥,适合作业,没有灰尘油迹等。接着拿出准备焊接的元器件,用手将它的两
个脚撑开到两个方向,这样做的目的是防止在误操作的情况下损坏元器件,这些小细节的处理会对焊接产生影响。
下一步需要做的就是将加热好的电烙铁头点在需要焊接的元器件脚下,另一只手放上焊锡丝,通过高温将锡丝融化
并将元器件焊在板上,另外,为了防止出现元器件焊接错误,需要将烙铁头远离其他元器件脚,以免进行碰触。
5.1.2 焊接过程中升温:
在准备工作都完成以后,开始加热焊锡丝。电烙铁接通电源后,它的温度会慢慢升高,用温度足够高的电烙铁
于焊锡丝相接,使焊锡丝焊接于所需焊接的元器件引脚处,待其冷却,即完成该引脚的焊接。在焊接的过程中,电
烙铁的温度控制和加热焊锡丝的时间都是非常重要的,需要焊接人员的小心把控,将其控制在合理范围内。一旦超
出该范围,比如加热时间过长,就有可能造成焊坏焊盘的后果。官方建议是在四百摄氏度的温度下加热两秒钟左
右,上下浮动不要过多。当然,面对不同的焊接要求也要做出不同浮动也是很有必要的,毕竟元器件对于焊接的要
求也是不尽相同的,对于需要不一样时可以灵活调整方案。如果焊接出现错误需要拆卸已焊接的元器件,那么可以
同样采取对焊接处加热的方法来进行。第一步需要对焊接处进行处理,增加焊锡丝的用量,将出现焊点不圆润的风
险降到最低。接着用电烙铁在焊接处进行加热,利用烙铁头的温度融化焊盘上的锡丝然后可以直接把元器件拔下。
同样的需要注意电烙铁的加热时间,否则也会出现焊盘损坏的糟糕情况。
5.1.3 清理焊接面:
完成上述步骤以后,再根据焊接面情况查看是否出现了虚焊情况和焊盘被熔毁的情况,为保证后续正常工作要
即时对该处重新焊接调整,对其改正。造成这样的效果有以下几种原因,第一种是在焊接过程中焊锡丝的用量过
少,导致在该处焊接表面不平整、凹凸不平滑,这时需要在焊接处增加焊锡量。但也不能盲目添加,需要控制增加
量。因为焊锡的增加会加大导通的面积,造成本不该连接的引脚连接,与自己的原理图有出入,出现短路的风险增
大。另一种当焊锡用量太大时,这种情况可以通过使用滑动加热电烙铁的方式去除余下过多的焊锡,如果该方法仍
然不能解决,在此基础上可以使用吸锡器来吸走焊锡。
5.1.4 检查焊点情况:
上述步骤都操作完成后,再进行至关重要的最后一步:整体观察全板。在整体观察的过程中,要尤其注意以下
几点:焊接的地方是否存在虚焊、漏焊的现象,是否存在上述凹凸不平的现象,焊锡的光泽度是否良好、紧固,焊
锡是否连接到其他多余的引脚,造成不必要的麻烦。
5.2 系统调试
焊接完毕后先对焊接工作进行仔细的检查,有没有出现存在焊接问题,例如:是否存在焊盘与元器件之间虚
焊、元器件的正确选择、正负极有没有出现接反的情况等等;检查处理完上述问题之后,使用万用表对各个元器件
进行检查,是否存在短路问题,然后对整体线路进行检查。如果万用表蜂鸣器响起,则需要重新对该部分进行焊接
调试,以确保电路系统的焊接不存在问题。
在对电路板的焊接检查完毕后,再对系统的软件程序进行调试检查,软件程序如果出现编译问题还需重新修
改。程序调试好之后,将程序下载入设计实物中,测试是否能实现功能,实现的功能是否满足设计的要求,如果存
在问题,还需再次调试,直到功能完整的实现。
5.2.1 系统程序调试
软件的调试过程中,需要完成以下的步骤:
第一个步骤:打开Keil 软件,在该软件中创建一个工程:新建一个工程名,如本次的《单片机的多功能智能小
车设计》完成后点击“保存”按钮。另外,选择系统自带单片机型号是“STC89C51/C52”。
第二个步骤:新建用户源文件:创建一个空白文本,将编写的程序源代码输入文本(详见4.2.1)中,编码输入
完成后以拓展名为“多功能智能小车程序.c”进行保存。至此,用户源文件就新建完成。
第三个步骤:程序编译以及后续的调试:找到“编译”选项,单击该选项后系统将自动完成运行工作,无需其
他操作。若系统不能正常运行且在输出窗口中提示有错误信息出现,那么就需要操作人员按照错误指示,查找错误
原因并“对症下药”。只有及时进行修正,才能确保系统正常运行。需要满足以下两个条件时才算符合要求:1.经
过修改以后,系统出现没有错误的字样。2.实物功能均满足所规定的要求。(当出现“Warning”字母时,不会对系
统运行造成影响,可以忽略。)下图5-1为程序编译无误提示界面图。
图5-1 程序编译无误提示界面图
5.2.2 硬件测试
在上面的步骤完成以后,最后将会进行硬件整体测试。在整体调试需要会运用万用表查看每个元器件是否是正
常的状态电压电流是否为正常数值;直流电源或示波器进行整体调试。将它们与焊接好的板子分别进行调试检查。
检查过程中需要重点关注器件的工作状态,是否每一个器件都在正常工作,如果出现故障要及时查明故障原因。主
要经过两个环节:动态调试和静态调试。
一、静态调试:
(1)通过直接观察的方式。一看焊接点状态是否饱满,二看电路板中元器件是否存在焊接错误的地方,不应相
连的引脚是否焊接在一起,是否存在短路情况。
(2)通过使用万用表检测整体电路,切勿出现短路,电源正常工作后再用万用表测量管脚连接状态,是否正确
导通,是否无接线错误。
(3)确保以上步骤检查调试完毕后,将智能小车接通电源,仔细检查各个元器件的功能是否正常工作,是否能
实现所要求的功能。
二、动态调试:
通电对整体系统进行检查。确保以上步骤检查调试完毕后,将智能小车接通电源,仔细检查各个元器件的功能
是否正常工作,是否能实现所要求的功能。
5.3 安装演示
5.3.1 安装
最后安装环节,安装的要求要使小车在行驶时候稳定运行,保证系统工作的稳定,实现设计的功能,达到智能
避障吸尘的效果。有以下几点安装要点:
(1)驱动部分:为了使驱动正常工作,采用了六节干电池持续为驱动模块供电,使其动力充足。
(2)电源的安装:六节电池的体积对于智能小车来说是比较大的,所以遵循稳定的安装原则将电源模块安装到
智能小车的上方。
(3)吸尘模块:将风扇驱动安装在小车底部,这样可以实现吸尘功能。
(4)车轮的安装:因为工作环境的特殊性,需要小车在任何情况下都可以进行转弯避障,所以将后轮采用万向
轮,前轮采用两轮式,这样控制模块可以实现功能带动小车进行各种避障转弯。
5.3.2 演示
开启电源,将小车放在房间中工作,在工作环境中设置障碍物,观察小车是否可以通过传感器进行系统计算分
析从而达到避障的功能。再将地上铺设碎纸屑,观察吸尘模块能否正常运行实现功能。
小车行驶过程中左侧遇到障碍物,如图5-4所示。
图5-4 小车左侧遇到障碍物图
小车右转,自行实现避障功能,
小车行驶过程中右侧遇到障碍物,如图5-6所示。
图5-6 小车右侧遇到障碍物图
小车左转,自行实现避障功能,如下图5-7所示。
图5-7 小车进行避障图
小车行驶过程中,吸尘模块一直开启,自行进行吸尘工作。如下图5-8所示。
图5-8 小车检测垃圾图
垃圾被小车吸进模块底部,但是由于本次设计采取的吸尘模块由于考虑经济因素没有采用大功率,所以吸尘效
果不佳。如下图5-9所示。
图5-9 小车吸尘图
6 全文总结与展望
6.1 全文总结
本文研究设计的基于单片机的避障吸尘智能小车,主要是对避障模块和驱动模块进行设计。本次采用单片机型
号是STC89C52,由2路按键控制E18-D80NK-N红外避障模块、BD681风扇驱动以及L298N电机驱动,采用电池盒供电。
从而使智能小车完成设定的功能,达到避障和吸尘的效果。
通过本次设计,加深了我对单片机技术和传感器的应用的理解,学习到了书本上没有的知识,实践是检验真理
的唯一标准,通过自己的动手研究与文献资料相结合,使避障智能小车达到要求的功能。这不仅是一次普通的设计
研究,更是一次提高个人解决问题的机会。
在本次设计中还存在一些不足和可以改进的地方:
(1)小车安装的吸尘模块功率不够强大,不能实现良好的吸尘功能。
(2)小车在行驶过程中遇到障碍物的反应敏感度不高,会出现不能及时躲避的现象。
以上是本次设计的一些不足之处,我会继续对之加以研究,努力改进。
6.2 展望
通过这次毕业设计我发现在未来的世界中,将会有避障吸尘智能小车的一席之地。随着科技的日益发展,在这
个人口老龄化逐渐严重的社会中,肯定会有越来越多的机器人(智能)出现在我们的视线里。而在智能机器人中,
服务型机器人又是一大创新,它改变了机器人在人们传统观念中的印象。现在人们的生活节奏正在逐渐加快,生活
水平不断提高,工作时长也随之而来的增加,日常的清洁工作就容易被忽视。而我相信不假时日之后,随着这些智
能小车的普及,可以不用下班回家时,不会再为还要清洁而感到发愁。
刚看到这次毕业设计的题目时,我是既兴奋又迷茫,迷茫的是自己以前没有独立完成过一个设计,怕出现棘手
的问题,影响到整体的进度,兴奋的是想到自己将要设计一个智能小车,这是以前从没有想过的事情。在进行准备
工作的时候,我先将需要的文献资料准备好,掌握书本上的理论知识,不过仅有书本知识是不够的,然后我去请教
老师、周围有经验的同学,因为只有把实践和理论知识结合起来,才能顺利的完成这次毕业设计。经过这次毕业设
计,我也对自己的能力有了认知,世上无难事,只怕有心人,所有事情都要一步一步来,一步登天的这种想法是不
能够有的,脚踏实地才是真,在今后的工作中也要贯彻这种思想。
致谢
学位论文的完成代表着这三年学习努力的开花结果,我首先要感谢养育自己多年的父母,感谢他们从小到大对
我无微不至的照顾和悉心的培养。还要感谢攻读本科的期间,老师们和同学们对我的帮助和关怀。
一月份中旬,我们在唐老师的论文指导课上了解论文的基本流程和结构。可当我们真正拿到论文题目的时候,
心里还是五味杂陈的。一方面是要自己独立完成一个设计的喜悦感,另一方面则是对未知领域的恐惧。而在完成了
论文之后,回想起来,还是很感谢唐老师的指导与帮助。从选题到后来具体的设计,唐老师都尽心尽力解答我遇到
的问题,在我迷茫的时候给予了我新的方向。
在这短短的几个月里,通过完成这篇论文检验出了我对三年课程的掌握程度。并且让我意识到了单单依靠书本
的知识是不够的,要做成这个需要理论与实践相结合。也希望我们二零年级的同学和老师以后的工作生活可以顺风
顺水。