基于单片机的智能清洁小车设计_第1页
基于单片机的智能清洁小车设计_第2页
基于单片机的智能清洁小车设计_第3页
基于单片机的智能清洁小车设计_第4页
基于单片机的智能清洁小车设计_第5页
已阅读5页,还剩102页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要直到2020年,中国的城镇化进度已经超过60%,环境治理与保护一直是一座城市绕不开的话题。那么,如何让居民拥有一个干净整洁的街道?十年前的中国给出的答案是招聘大量道路清洁工。于是,在每天早上5点钟,路上就会响起“刷刷刷”的扫地声,完整地扫完一条街道,往往需要花费10-15名清洁人员一早上的时间。同时,使用人力清扫,会出现大量扬尘的问题,这对环境又将造成二次污染,这些污染会使清洁人员出现尘肺病,露天作业也更容易导致清洁人员在一些季节中出现中暑和冻伤,并且随着人力成本的不断上升,招聘大量清洁工也将给市镇环卫企业带来不小的经济负担。如何让道路清洁更加高效,清洁效果更好,清洁成本更低,安全性更好,清洁更加环保,各大新能源汽车企业给出的答案是电动道路清洁车,这种最高时速平均在20-30km/h的小车完美地解决了以上的大部分问题。 本论文将介绍如何设计一款拥有市面上新能源清洁扫地机大部分功能的智能小车,论文一共分为三部分,是以单片机为开发基础,详细描述了我进行硬件电路设计、软件程序编写及小车关键功能部分结构设计的过程及结果。关键词:智能小车;单片机;电机控制;扫地机;红外遥控

Intelligentcleaningcardesignbasedonsinglechipmicrocomputer--controlsystemdesignAbstractBy2020,China'surbanizationprogresshasexceeded60%,andenvironmentalgovernanceandprotectionhasbeenaninseparabletopicinacity.So,howtomaketheresidentshaveacleanandtidystreet?AdecadeagoChina'sanswerwastohirelotsofroadcleaners.Asaresult,at5o'clockeverymorning,theroadwillring"brushbrushbrush"sweepingsound,acompletesweepofastreet,oftenneedtospend10-15cleaningstaffamorningtime.Atthesametime,theuseofhumancleaning,therewillbealotofdust,itwillcausesecondarypollutiontotheenvironment,thepollutioncancauseapneumoconiosiscleaner,open-airoperationswerealsomorelikelytoresultincleanerappearinsomeseasonsheatstrokeandfrostbite,andwiththerisingoflaborcosts,torecruitalargenumberofcleaneralsobringconsiderableeconomicburdentownsanitationenterprise.Howtomaketheroadcleaningmoreefficient,bettercleaningeffect,lowercleaningcost,bettersafety,andcleanerenvironment,theanswergivenbythemajornewenergyautomobileenterprisesiselectricroadcleaningcar,whichhasamaximumspeedof20-30km/honaverageandsolvesmostoftheaboveproblemsperfectly.Thispaperwillintroducehowtodesignanewenergycleansweeperonthemarketwithmostofthefunctionsoftheintelligentcar,thepaperisdividedintothreeparts,isbasedonthedevelopmentofsingle-chipmicrocomputer,detaileddescriptionofmyhardwarecircuitdesign,softwareprogrammingandcarkeyfunctionpartofthestructuraldesignprocessandresults.Keyword:Smartcar;Singlechipmicrocomputer;Motorcontrol;Sweepthefloormachine;Infraredremotecontrol目录1绪论 61.1研究背景及意义 61.1.1研究背景 61.1.2本设计的目的、意义 61.2国内外研究现状 71.3智能清扫车的发展趋势 71.4研究的主要内容和目标 81.5本章小结 82总体方案设计 92.1智能清洁小车的硬件系统组成 92.2智能清洁小车的硬件结构图 92.3智能清洁小车的电机选型 102.4本章小结 113硬件电路设计 123.1单片机最小系统板设计 123.2锂电池平衡充电电路 163.3过放保护电路 213.4线性稳压电路 243.5行走电机、扫刷电机、水泵电机驱动电路 283.6吸尘风机驱动电路 323.7垃圾箱举升舵机驱动电路 353.8红外接收电路 403.9红外发送遥控电路 423.10本章总结 474.软件编程设计 484.1基本思路 484.2红外发射程序设计 484.3红外接收驱动程序设计 484.4本章总结 495.小车结构设计 505.1基本布局和功能分析 505.2小车二维及三维图 515.3本章小结 526.结束语 536.1结论 536.11设计总结和难点 536.1.2设计创新点 546.13设计的不足点 54参考文献 55致谢 55附录A:系统原理图 56附录B:程序代码 57红外发射代码 57红外接收驱动代码 66

1绪论1.1研究背景及意义1.1.1研究背景道路清洁一直都是一些发达地区十分重视的问题,而随着经济发展和城镇化进程的推进,我国对道路清洁问题也愈发重视。据调查,我国2006年道路清扫保洁面积约为32.48亿平方米,而2015年道路清扫保洁面积约为73.03亿平方米,每年复合增长率接近百分之10,从2020年后未来五年清扫保洁面积将保持在5%左右的增长率,面对如此旺盛的环卫需求,必然会使得道路清扫成本大幅提高,而人力成本作为道路清扫保洁最主要的支出,占据了其直接成本的60%。同时,近几年环卫工人的平均年龄越来越大,而环卫工这个岗位因为其劳动量大,工资低,工作环境恶劣等特点,导致愿意从事此岗位的年轻人越来越少,结构老龄化带来的低效率,高风险等问题也成为我国市容环卫的大麻烦。那么,如何更加高效,更加便宜地完成道路清洁工作,扫地车就是这些问题最好的解决方案。相较于传统的人力清扫,使用纯机械清扫可能会损失一部分灵活性和适应性,所以,我们也不应该盲目追求机械化,应当使机械和人工结合,在出现扫地车无法清扫垃圾的情况时使用人工清洁。未来的市容环卫行业,需要的应该是懂得如何操作和管理设备的从业人员,而智能化,清洁化,也应该是扫地车未来的发展方向。1.1.2本设计的目的、意义 随着中国城镇化进程的不断提升,道路清扫保洁的需求一定会稳步增长,而环卫行业如今仍然是劳动密集型行业,为了提高效率,降低成本,清扫工作机械化,智能化将会是一个必然趋势。而我国的新能源清洁车企业大部分由于技术不稳定,工艺不完善,在很多方面相较于国外企业还是有很大的发展空间,所以我希望通过这个设计,以小见大,发现一些行业中存在的问题,并通过自己所学知识给出一些解决办法,技术,不是一蹴而就的,只有通过慢慢的积累,发现并改变问题,才能让中国的智能清洁车行业越来越好。1.2国内外研究现状 2018年7月3日,国务院公开发布了《打赢蓝天保卫战三年行动计划》,对于道路清扫保洁工作往机械化,智能化方向发展表示大力支持,据了解,我国计划在2020年底前,地级市以上的城市机械化清扫率达70%以上,县城达60%以上,加快推进新能源设备的投入使用,由此可见,我国新能源环卫扫地车的市场前景十分广阔。目前,国内新能源扫地车做的比较好的企业有中联,宇通,海德,国外做的比较好的企业是哈高,哈高的城市管家600多功能清洁车可实现主干道、自行车道,人行道及商业广场,公园绿地的清洁,甚至可以通过更换不同的配置,来实现扫地,扫雪,铲雪,扬雪,剪草等功能,整车携带水循环控尘系统,可以通过雾化喷水来实现控尘效果。 由于近几年国家大力扶持新能源汽车企业,新能源扫地车企业也如雨后春笋般出现了,相较于国外更加成熟的汽车制造技术,我国企业自主研发的新能源扫地车在智能化,操控性和可靠性上还是有一定的进步空间。1.3智能清扫车的发展趋势 世界上第一台扫地车诞生于1849年,当时的扫地车只是圆盘上覆盖了一圈钢丝毛刷,而后这种扫地车被广泛的应用于大街上,直到1911年,美国塔罐公司一名叫约翰.M.墨菲的人有了研发电机驱动扫地车的想法,于是塔罐公司招募了合伙人丹尼尔·托德,和墨菲一起研发电机驱动扫地车,后来经过不断的研究实验,1913年,诞生了世界上第一台真正的电机驱动扫地车。 经过了这么多年,扫地车行业也在不断发展和进步,扫地,吸尘,洗地等功能层出不穷,近几年还发展了新能源扫地车和无人驾驶扫地车等,但是,虽然科技在不断进步,但是扫地车行业还是有着一些比较棘手的问题,比如:(1)由于扫刷和地面摩擦的原因,导致扫地车在作业时噪声非常大,因为扫地车工作的时间有一部分是在居民休息的时候,所以在城市中这种噪声污染很容易影响到居民的日常生活,所以我想,未来是否有可能发现一种材料,在扫地时既能提供足够的摩擦力,又能减少摩擦时产生的噪声。(2)目前带有抑尘系统的扫地车都需要全程喷水来压尘除尘,而在缺水地区和北方的冬天这种扫地车将无法工作,特别是北方冬天,就算水箱不结冰,水雾喷出也会结成冰晶,就无法起到抑尘效果了。(3)现在市面上的扫地车很少同时集成多种功能的,而功能单一也导致了工作流程无法简化,尽管像哈高这样的企业,也只能做到将功能模块化,在需要的时候切换模块来实现多功能使用,集成多功能的扫地车肯定会是未来的趋势(4)国内研发制造的智能扫地车可靠性普遍不如国外产品,主要原因是国产的基础零配件质量参差不齐,齐次是制造工艺达不到要求,还有技术不完善也是其中一个原因。因此,我认为智能扫地车行业想要发展进步,以上的问题必然需要得到解决,这也将会是智能扫地车行业的发展趋势,更加环保化,智能化,多功能化,同时具备更成熟的工艺和技术,以及更强的可靠性。1.4研究的主要内容和目标 本文研究的主要内容是设计一款可以通过遥控器操控的拥有扫地吸尘洒水功能的清洁小车,我采用STC89C52芯片作整车控制的主控芯片,RZ7899作为驱动电机的驱动芯片,通过设计,小车可以做到红外遥控,控制扫刷清扫地面,控制水泵洒水并雾化控尘,控制风机高速旋转吸尘,控制舵机进行垃圾箱举升。 设计过程大致为:(1)电机选型,估算电机需要带多少负载以及合适的电机转速,根据电机型号选择合适的驱动芯片。(2)电路硬件设计,根据所需要的功能选择合适的芯片,然后从网上下载该芯片的芯片手册,根据芯片手册的提示和典型应用电路设计电路图并进行元器件选型并在Altiumdesigner软件中绘制出电路原理图和PCB图。(3)软件设计,通过KEIL软件编写程序实现对所需要功能的控制(4)结构设计,使用Catia三维建模软件对小车底盘,扫刷,垃圾箱等关键部位进行设计。设计目标是通过所学知识设计出一台拥有市面上出现的智能扫地车大部分功能的智能清洁小车。 1.5本章小结 本章节主要是分析了国内道路清扫保洁的机械化需求和发展趋势,以及对智能清洁车的发展现状和出现的问题进行了一定的讨论,同时列出了我完成设计所需要进行的工作及其过程。

2总体方案设计2.1智能清洁小车的硬件系统组成 本文设计的智能清洁小车硬件电路部分主要由以下几个部分构成:(1)基于STC89C52的单片机最小系统(2)行走电机驱动模块(3)扫刷电机驱动模块(4)水泵电机驱动模块(5)吸尘风机驱动模块(6)垃圾箱举升舵机驱动模块(7)红外接收模块(8)红外遥控发射模块。这8个部分构成了小车的硬件电路,我可以通过遥控器上的按键控制小车的工作模式,来完成清扫,吸尘,倒垃圾等任务。2.2智能清洁小车的硬件结构图表2-2-SEQ表2-2\*ARABIC1清洁小车硬件结构图

2.3智能清洁小车的电机选型行走电机: 行走电机主要负责小车的移动,那么在选择电机上,我主要考虑以下几个因素:(1)电机的转速,如果选择转速过快的电机,那么可能会造成扫刷还没有将垃圾清理完,小车就已经开走了的情况,同时也为了避免漏掉垃圾,我没有给小车赋予PWM调速的功能。(2)电机的扭矩,因为小车在加上水箱、电池和之后可能会很重,同时扫刷如果开始工作摩擦力会很大,所以电机的带负载能力非常重要。 一个成年人的走路速度大约为1M/S,我觉得小车的行走速度大约为成年人走路速度的十分之一比较合适,即0.1M/S,经过测量,小车轮子的周长为22CM,那么,电机要每秒旋转约4.5圈,才能满足行进速度,换算一下,为270转/分钟,所以这里我选择的电机为空载转速300转/分钟的N20直流减速电机,减速比为1/50,负载转速为240转/分钟,堵转力矩为1.6KG/CM,堵转电流为100MA,经过估算,小车的负载肯定是远不到6.4KG的,所以这款电机符合要求。扫刷电机: 扫刷电机主要负责将车前的垃圾清扫到吸尘器前方,扫刷电机主要承受的力为电机转动时和地面的摩擦力,小车前进时给扫刷的向后的摩擦力,还有扫到的垃圾的与地面的摩擦力,而扫刷需要的转速大约为行走电机转速的2倍,这样才不会使垃圾漏过去,所以我选择了空载转速500转/分钟的N20直流减速电机,减速比为1/30,堵转力矩为1.2KG/CM,堵转电流为100MA。水泵电机: 小车的洒水系统主要是由水泵电机的一根硅胶管将水从水箱里抽出,然后另一根硅胶管连接两个雾化喷头后回到水箱,原理和草地上的喷灌器差不多,这个水泵我选择的是365隔膜微型直流抽水机,该电机工作电压4-6V,工作电流为1A,功率5-8W,流量为1.2-1.4升/分钟,极限扬程为3米,我设计的水箱储水量大概为0.5L左右,扬程大概为0.4米,相较于本设计来说该水泵性能略微过剩。吸尘风机: 吸尘风机是通过旋转带动风扇转动,形成气压差,从而吸走垃圾,这种真空吸尘器对电机转速要求很高,同时也会非常耗电,所以我单独接了两节锂电池供电。电机我选择的是N30微型直流电机,这款电机在5V电压下的转速为31000转/分钟,堵转电流为4.2A,带两个散热孔,加宽碳刷,高速大扭矩,加风扇降速非常小,非常适合做吸尘用的风机。举升舵机: 举升舵机的作用是举起垃圾箱倾倒垃圾,因为垃圾箱装载垃圾之后会很重,所以舵机的扭矩需要大一点,我选择的舵机是MG995,这款舵机工作电压为3-7.2V,工作电流为100MA,工作扭矩为13KG/CM,最大转动角度为180°,非常适合需要大扭矩的场合。2.4本章小结 本章主要对小车的硬件电路组成和结构做了简单的概述,同时完成了小车的电机选型。

3硬件电路设计3.1单片机最小系统板设计为了防止干扰,我在最小系统板上加了一个电源模块,所以最小系统板由两部分组成,一个是由ME6212稳压芯片组成的电源部分,一部分是由STC89C52组成的单片机最小系统。电路设计:稳压芯片我选择的是ME6212C50M5G,这个芯片的最大输入电压为6V,所以我选择用一个稳压供电板来提供5V的电源输入,输出电压为5V,输出电流为350MA。通过芯片手册我得知了ME6212的引脚功能:VIN(1)电压输入端VSS(2)接地引脚CE(3)使能端,高电平ON,低电平OFFNC(4)空VOUT(5)电压输出端表3-1-SEQ表3-1\*ARABIC1ME6212引脚功能表VIN引脚连接一个拨码开关接正极排针引脚,VVS接地端排针引脚,VOUT引出3.3V电源,CE端因为要接高电平,将它与VIN引脚连接,靠近芯片处再并联两个去耦电容,稳压电源电路就设计完成了。我还接了一个电源指示灯判断电路是否导通。单片机我选择的是STC89C52DIP—40,将P0-P3口接出排针,P0口接10K的上拉电阻,根据芯片手册上说,P1口尽量不要接到5V系统,所以在使用接口时,我不使用P1口输出,EA管脚接电源上拉,从内部执行程序。晶振电路使用11.0592MHZ的晶振,该芯片在XTAL1管脚不建议接电容,因为不利于起振,所以我在XTAL1管脚接了一个140Ω的电阻,这样就可以在该管脚接电容了。复位电路因为单片机RESET管脚内部没有下拉电阻,所有接了一个10K的电阻下拉。电路原理图:图3-1-SEQ图3-1\*ARABIC1最小系统电路原理图硬件选型: 参考ME6212给出的典型应用电路,C1、C2的取值为1uF,参考STC89C52的典型电路,C3取10uF,晶振在11.0592MHZ下,推荐电容值为47PF,所以C4和C5选47PF的电容,滤波电容选择一个0.1uF的贴片电容和一个10uF的电解电容。硬件BOM表:名称规格数量LEDLED_RED1电阻10K(0603封装)10电阻140Ω(0603封装)1电容1uF(0603封装)2电容10uF(0603封装)2电容47uF(0603封装)2电容104(0603封装)1拨码开关SK12D07VG51按键SW1稳压芯片ME6212C50M5G1单片机STC89C52(DIP-40)1晶振11.0592MHZ/7PF1排针2P1排针16P2表3-1-SEQ表3-1\*ARABIC2最小系统板硬件BOM表PCB设计:PCB板的线宽与铜厚会影响到整个板子的过电流能力,经过咨询,我了解到大部分的PCB制板厂家设计的铜厚为35um,而我的的板子有的电流达到了5A,所以为了确保电流不受影响,我将所有板子的铜箔宽度设置为了2.5mm。图3-1-SEQ图3-1\*ARABIC2最小系统板PCB二维图图3-1SEQ图3-1\*ARABIC3最小系统板PCB三维图3.2锂电池平衡充电电路 本设计采用两节锂离子电池供电,受限于材料性质,锂电池单节电压不得超过4.2V,给没有充电电路的锂电池充电,如果单节电池电压达到4.2V还未中断充电,电池就会膨胀或燃烧放毒气,这在日常使用中是非常危险的。同时,因为是两节锂电池,如果只设计普通的过充保护电路,可能会出现虽然总体电压是8.4V,但内部一节电池是4.4V,一节是4V的情况,所以,我设计了一个平衡充电电路,来保证电池在充电时,每一节锂电池的电压均不超过4.2V。电路设计: 平衡充电模块由两部分组成,第一部分是TP5100芯片组成的充电电路,他的作用是输出8.4V提供给锂电池充电,第二个电路是HY2213芯片组成的电压平衡电路,他负责连接电池并控制单节电池电压不超过4.2V。 TP5100是一款可以给8.4V或4.2V锂电池充电的充电管理芯片,其内置了输入过流、欠压保护、芯片过温保护、短路保护、电池温度监控、电池反接保护等功能,输入最小电压为4.5V,最大为18V,充电截止电压最大为8.484V,非常适合作为本电路的主控芯片。通过芯片手册我得知了TP5100芯片的引脚功能:VIN(1、4、5、16)输入电压正输入端LX(2、3)内置PMOSFET功率管漏极连接点PWE_ON(6)电源切换控制引脚GND(7)电源地VS(8)输出电流检测的正极输入端BAT(9)电池电压检测端VREG(10)内部电源TS(11)电池温度检测输入端RTRICK(12)涓流预充电流设置端CS(13)锂离子状态片选输入端STDBY(14)绿灯电池充电完成指示端CHRG(15)红灯充电中状态指示端表3-2-SEQ表3-2\*ARABIC1TP5100引脚功能VIN是电源的输入引脚,将芯片的1、4、5、16引脚接入电源输入端,同时并联一个10uF和一个0.1uF的旁路电容用来去除高频噪声。LX是电流输出引脚,将芯片的2、3引脚连接一个电感和一个限流电阻RS,这个电阻的作用主要是用于外部电流检测,通过调节该电阻的阻值,就可以设定我需要的充电电流大小,该电路在恒流状态下RS两端的电压是0.1V,而我需要的充电电流大小为1.5A,通过公式RS=VS/IBAT,得出RS=0.067Ω,但由于淘宝上并没有0.067Ω的电阻出售,所以我选择了一个0.068Ω的电阻代替。PWE_ON这个引脚的作用是在充电的同时使用电源放电,考虑到我的设计并不需要一边充电一边放电,所以它对应的6号引脚悬空。GND对应的7号引脚接地。VS的作用是检测输出电流,对应的8号引脚接电流输出端。BAT对应的9号引脚接电源正极。VREG是一个内部电源,它对应的10号引脚接一个0.1uF旁路电容到地TS的作用是检测电池温度,如果它接一个热敏电阻传感器,就可以通过判断电池温度是否过高或过低来暂停充电,这里我不需要这个功能,所以我将它对应的11号引脚接地,取消温度检测功能。RTRICK的功能是涓流预充,当锂电池电压低于5.8V时,芯片会进行涓流预充电,如果该引脚直接接地,它会把预充电电流输出调整为设置好的电流的10%,如果悬空,则预充电电流等于恒流电流,所以对应的12号引脚接地。CS引脚接VREG是8.4V锂电池充电,悬空是4.2V锂电池充电,所以我将它对应的13引脚和VREG对应的10引脚相连。STDBY是充电完成指示绿灯,CHRG是充电中指示红灯,接一个10K限流电阻然后接电源。HY2213是一个用于锂电池充电平衡控制的电平监视芯片,内置了防静电保护电路,一个芯片对应一节锂电池进行充电平衡控制,所以本电路选用了两节HY2213芯片控制单节电池电压不超过4.2V。通过芯片手册我得知该芯片引脚功能:NC(1)无连接VDD(2)电源端,正电源输入端子VSS(3)接地端,负电源输入端子NC(4)无连接NC(5)无连接OUT(6)充电平衡,控制MOSFET门极连接端子表3-2-SEQ表3-2\*ARABIC2HY2213引脚功能 该芯片电路比较简单,NC对应的1、4、5引脚悬空,VDD对应的3号引脚串联一个电阻限流,并联一个电容滤波,然后OUT对应的6号引脚连接一个控制充电平衡的MOS管,再连接一个电阻作为负载泄流,当VDD引脚检测到电池电压达到4.2V时,OUT引脚就会导通MOS管,这个电阻就需要起到耗电的功能。电路原理图:图3-2-SEQ图3-2\*ARABIC1平衡充电电路原理图硬件选型: R1电阻根据上面电路设计时的计算选择了0.068Ω,根据公式P=I2R,得出此电阻功率应大于0.153W,所以我选择了1206封装的电阻,因为1206封装的功率是0.25W。电阻R2我选择了10K,,这个限流电阻的大小只决定LED灯的亮度,所以无关紧要。电阻R5和R6官方给出的取值范围为100Ω-200Ω,这里我选择典型值100Ω。电阻R3和R4是负载电阻,该电路的放电电流为68MA,根据公式R=U/I,所以这里R3和R4的阻值为62Ω,根据公式P=I2R,该电阻的最小功率为0.28W,所以我选择了功率为1W的2512封装电阻。 电感L1的选值范围为4.7uH-22uH,这里我选择典型值22uF。 用于防倒灌的肖基特二极管D1我选择的是SMAF封装。 电容C8、C9的选值范围为0.01uF-1.0uF,我选择的是典型值0.1uF。 MOS管Q1、Q2我选择的是20/2.8A的SI2302N-MOS,因为该电路电压4.2A,电流68MA,所以选择该MOS管。硬件BOM表: 名称规格数量电容0.1uF,50V(0603封装)6电容10uF,50V(0603封装)2电阻0.068Ω,0.25W(1206封装)1电阻10K(0603封装)1电阻62Ω(2512封装)2电阻100R(0603封装)2电解电容10uF(4*5.4封装)1发光二极管LED_RED1发光二极管LED_GREEN1肖基特二极管SL34F(SMAF封装)1MOS管SI2302(SOT23封装)1电源管理芯片TP51001电压检测芯片HY22132DC电源座DC-005-20A,14.2*9mm1XH连接器2501RB-3P1接线端子WJ301V-5V2P1接线端子WJ300V-5V3P1表3-2SEQ表3-2\*ARABIC3平衡充电电路硬件BOM表PCB设计:图3-2-SEQ图3-2\*ARABIC2平衡充电电路PCB二维图图3-2-SEQ图3-2\*ARABIC3平衡充电电路PCB三维图

3.3过放保护电路我选用两节18650锂电池共7.4V给小车行走电机和单片机供电,假如使用未携带过放保护电路的锂电池,那么电池放电至截止电压5.6V后,将继续放电,造成电池不可逆的损坏,再次使用,可能会产生危险。所以,我设计了一个过放保护电路来防止电池过度放电。电路设计:电路保护芯片选用市面上比较常见的双节锂电池保护芯片HY2120-CB,通过查看其芯片手册我得知该芯片的引脚功能如下:图3-3-SEQ图3-3\*ARABIC1HY2120引脚功能OD:用于放电控制的MOSFET栅极连接引脚OC:用于充电控制的MOSFET栅极连接管脚CS:电流检测输入引脚,充电器检测引脚VC:两个单元之间的中心电压输入引脚再通过阅读芯片手册,我得知电池第一次连接时,不能放电。若要恢复正常状态,必须短接CS和VSS引脚或接通充电。图3-3-SEQ图3-3\*ARABIC2芯片手册注意事项但因为这个设计并不是用来充电的,所以第二个方法不可行,于是我在CS引脚接了一个按键开关接地,来激活电路板。 为了观察到电路板是否输出电流,我还在输出端接了一个红色的LED灯。最后,根据手册中给出的典型应用电路加以改进,我绘制出了过放保护电路的原理图。图3-3-SEQ图3-3\*ARABIC3过放保护电路电路原理图硬件选型:根据手册中给出的器件选型表,电阻R1和R2的选取范围为100Ω—470Ω,我选择了其典型值330Ω,电阻R3给出的选取范围为1KΩ-4KΩ,我选择其典型值2KΩ,C1和C2电容选择范围为0.01uF-1.0uF,我选择其典型值0.1uF。 N-MOS是以自由电子作为多数载流子,而P-MOS是以空穴作为多数载流子,自由电子的迁移率是空穴的三倍,所以N-MOS管的通过电流能力要比P-MOS强许多,同时,N-MOS是正电压启动,P-MOS是负电压启动,从控制角度来说,选N-MOS也是更加方便的。而本电路中通过MOS管的最大电压和最大电流远到不了20V/6A,同时该MOS管的最大功耗只有2W,散热问题也不用担心,所以我选择了使用6A/20VSC8205S这个N-MOS管用于充放电控制。硬件BOM表:名称规格数量电容0.1微法、50V贴片电容(0603封装)2电阻330欧姆、1W、1%精度贴片电阻(2512封装)2电阻2K欧姆、1W、1%精度贴片电阻(2512封装)1电阻10K欧姆、1W、1%精度贴片电阻(2512封装)1XH连接器2501R-3P1XH连接器2501R-2P1按键开关4*4*1.7铜贴片按键1发光二极管3MM红发红LED灯1MOS管6A/20VN-MOS(SC8205S)2接线端子WJ301V-5V-2P1表3-3-SEQ表3-3\*ARABIC1过放保护电路硬件BOM表PCB设计:图3-3SEQ图3-3\*ARABIC4过放保护电路PCB二维图图3-3SEQ图3-3\*ARABIC5过放保护电路PCB三维图3.4线性稳压电路我设计了一个线性稳压电路来提供两路稳定电压电流输出,因为考虑到舵机和电机在启动时会拉低电源电压,同时还会产生很大的噪声,会影响到主控芯片,所以我分成了两路供电,一路给驱动电路供电,一路给主控电路供电,同时我还引出了很多的排针用以拓展使用。电路设计: 线性稳压电路由三部分组成,第一部分是由三种类型的接口和一个防反接电路组成,第二部分是由四个稳压器组成的稳压供电部分,第三部分是由一堆排针组成的输出接口和拓展接口。 第一种接口是XH连接器,这个接口可以接一个7.4V锂电池,第二种接口是一个DC电源连接器,这个接口可以连接一个充电器,第三个接口是一个两路接线端子,可以连接任意剖开绝缘胶皮的电源。 因为考虑到如果一不小心将电源接反,会烧坏带有极性的元器件和芯片,所以我设计了一个防反接电路。一般普通的防反接电路会使用一个二极管,但考虑到二极管会产生0.7V的压降,所以我选用了MOS管来防反接。为了防止接入电源电压过大击穿MOS管,所以我串接了两个10K的电阻来分压,再并一个104电容起缓冲作用,同时并联一个指示灯和一个限流电阻来判断电路是否导通。图3-4-SEQ图3-4\*ARABIC1防反接模块原理图 第二部分是一个稳压供电电路,我选择了4个低压差稳压器来分别提供5V_5A、3.3V_5A、5V_1A、3.3V_1A的输出,5A电流输出为一路,给电机和舵机供电,1A电流输出为一路,给单片机供电。图3-4SEQ图3-4\*ARABIC2稳压供电模块原理图第三部分是一个输出接口,我连接了一个2*16排针提供两路电源输出,一个2*6排针直接提供电源电压,一个4*3排针提供接口拓展,一个接线端子做测试用。图3-4SEQ图3-4\*ARABIC3输出接口模块原理图硬件选型: MOS管选择KIA50N03AD这款N-MOS管,它的Vds为30V,Vgs为20V,id为50A。 U1稳压芯片选择AMS1084CM-5.0,他的输出电压为5V,输出电流为5A,最大输入电压为15V。U2稳压芯片选择BL1084-33CS1,他的输出电压为3.3V,输出电流为5A,最大输入电压为8V。U3稳压芯片选择BL1117-50CX,他的输出电压为5V,输出电流为1A,最大输入电压为12V。U4稳压芯片选择BL1117-33CX,他的输出电压为3.3V,输出电流为1A,最大输入电压为12V。硬件BOM表:名称规格数量电容104(0603封装)9XH连接器2501R-2P1接线端子WJ301-500-2P3开关拨动开关1LED灯RED_LED1电解电容470uF1电解电容220uF4稳压芯片BL1084-33CS11稳压芯片AMS1084CM-5.01稳压芯片BL1117-33CX1稳压芯片BL1117-50CX1电阻10K3MOS管KIA50N03A-N1DC插座DC-005-20A1排针2*161排针2*61排针4*31表3-4SEQ表3-4\*ARABIC1线性稳压电路硬件BOM表PCB设计:图3-4SEQ图3-4\*ARABIC4线性稳压电路PCB二维图3-4SEQ图3-4\*ARABIC5线性稳压电路PCB三维

3.5行走电机、扫刷电机、水泵电机驱动电路电机驱动电路实际上就是一个H桥电路,通过控制三极管的导通就可以控制电机正反转,当控制Q1和Q4导通时,电机正转,当控制Q3和Q2导通时,电机反转,一般在控制大电流工作的电机时,会设计一个H桥电路,而我的电机只有几百毫安,所以直接使用集成芯片即可,集成芯片内部也是由MOS管组成的H桥电路。 图3-5SEQ图3-5\*ARABIC1H桥电路电路设计:RZ7899是一款DC双向马达驱动芯片,具有小于2uA的待机电流,3V-25V的工作电压范围宽,还有紧急停止功能,过热保护功能,还有过流嵌流和短路保护功能,同时还内置了二极管能释放感性负载的反向冲击电流,输出电流为6A,完全可以满足电机需求,相较于L298N,RZ7899更加简单,功能更加强大,更适合本电路。阅读芯片手册可以得知它的引脚功能:BI(1)后退输入FI(2)前进输入GND(3)地VCC(4)电源F0(5、6)前进输出B0(7、8)后退输出表3-5SEQ表3-5\*ARABIC1RZ7899引脚功能F0的两个引脚(5脚和6脚)并起来接到电机的一端,B0的两个引脚(7脚和8脚)并起来接到电机的另一端,BI和FI分别接单片机的两个I/O口。电源和地之间接滤波电容,单片机引脚FI、BI引脚接限流电阻,同时还接了两个10K的下拉电阻,作用是使FI、BI引脚在没有单片机信号输入时输入低电平,让F0、B0引脚处于浮空状态,这样可以防止信号干扰。在电机两端还接了一个0.1uF的电容,因为直流电机在启动时会打火花,这个电容可以消除火花。最后我还接了一个红色LED灯来判断电路是否导通。当单片机向BI引脚输入高电平,FI引脚输入低电平时,B0也会输出高电平,FO输出低电平,这时电机会正转,当单片机向BI引脚输入低电平,FI引脚输入高电平时,B0也会输出低电平,FO输出高电平,这时电机会反转,当BI和FI都输入高电平时,F0和B0也会输出高电平,这时电机两端没有压差,也就没有电流流过,所以电机就会制动,当BI和FI都输入低电平时,F0和B0也会输出低电平,这时电机就会浮空。RZ7899一个芯片可以控制一个电机,我选择将两个驱动电路焊在一个板子上,这样驱动四个行走电机需要两个电路板,驱动两个扫刷电机需要一个电路板。电路原理图:图3-5SEQ图3-5\*ARABIC2RZ7899电路原理图硬件选型: 滤波电容我选择的是一个0.1uF的贴片电容和一个470uF的电解电容,限流电阻选择的是300Ω,这些都是参考芯片手册的典型应用电路。硬件BOM表:名称规格数量电容104(0603封装)4电解电容470uF1电阻10K(0603封装)5电阻330K(0603封装)4驱动芯片RZ7899(SOP8封装)2接线端子2P2发光二极管LED_RED1排针1*6P1表3-5SEQ表3-5\*ARABIC2电机驱动电路硬件BOM表PCB图:图3-5SEQ图3-5\*ARABIC3电机驱动电路PCB二维图3-5SEQ图3-5\*ARABIC4电机驱动电路PCB三维

3.6吸尘风机驱动电路 吸尘部分的方案有两种,一种是空气过滤器,一种是真空吸尘器,空气过滤器是一个封闭的系统,将外部空气吸入,然后经过无纺布,金属丝,玻璃丝,尼龙网等材料的过滤,再将空气送出,其原理是由柯恩达效应形成低压旋涡气体,涡流腔沉积物被困在除尘器里,简单来说就像我们平时带的呼吸保护器或是防毒面具。而真空吸尘器则是通过电动抽风机高速运转,使吸尘器内部形成真空,内部气压小于外部气压,于是在气压差的推动下,灰尘和废物就会随着气流被吸进垃圾箱内,再通过集尘装置过滤,然后将干净的空气排出,它的原理和吸管是一样的,我们把吸管里的气体吸走时,吸管内的气压小于外面的气压,于是大气压就会推动另一端的饮料进入吸管来填补气压差。空气过滤器过滤效果很好,但效率不高,真空吸尘器虽然效率高但过滤效果会差一点,而且对电机转速要求很高,功率也很大。考虑到清洁车一般是在室外作业,并不需要非常好的过滤效果,所以我选择了真空吸尘器的方案,同时因为电机功率很大,所以我选择了单独使用两节锂电池给吸尘风机供电。电路设计: 使用独立电源给吸尘风机供电的话,控制端和驱动端不共地,于是我加了两个光耦来传递控制信号,光耦我选择的型号是PC817,它输入的正向电流最大值为50MA,反向电压为6V,工作电流为20MA时的压降为1.2V,在输入端接了两个限流电阻。电机驱动芯片还是RZ7899,电路也和之前的电机驱动电路一样。电路原理图:图3-6SEQ图3-6\*ARABIC1吸尘风机驱动电路原理图硬件设计: 这个电路唯一要注意的地方就是限流电阻的阻值选取,根据PC817工作在额定电流20MA时的压降为1.2V,可以得出限流电阻大小为:(5V-1.2V)/20MA=0.19KΩ,所以我选择了两个190Ω的电阻作为光耦输入端的限流电阻。硬件BOM表:名称规格数量排针1*3P1排针1*2P1电阻190Ω(0603封装)2电阻10K(0603封装)2电阻300Ω(0603封装)2接线端子2P1光耦PC8171驱动芯片RZ78991电容0.1uF(0603封装)1表3-6SEQ表3-6\*ARABIC1吸尘风机驱动电路硬件BOM表PCB设计:图3-6SEQ图3-6\*ARABIC2吸尘风机驱动电路PCB二维图3-6SEQ图3-6\*ARABIC3吸尘风机驱动电路PCB三维

3.7垃圾箱举升舵机驱动电路舵机是一种可以控制转动角度的伺服电机,一般用于需要不断控制角度变化的控制系统。舵机主要由以下几个部分组成:

舵盘、位置反馈电位计、减速齿轮组、控制电路板、直流电机,其控制信号为周期是20ms的脉宽调制信号,脉冲宽度0.5ms-2.5ms,对应舵盘的位置为0-180度,呈线性变化。所以,当我们想要调整舵机的转动角度时,就需要控制单片机给舵机输出相应脉冲宽度的信号,在本设计中,我选用的是180度角度伺服的舵机,其对应的控制关系为:0.5ms脉冲波舵机转0°,1ms脉冲波舵机转45°,1.5ms脉冲波舵机转90°,2ms脉冲波舵机转135°,2.5ms脉冲波舵机转180°。本电路中,我采用的是LM2596开关电压调节器来驱动MG995舵机,LM2596开关调节器是一款降压型电源管理单片集成电路,选择它的主要原因是它的外围电路设计非常简单,并且带过热保护和限流保护功能,他可以输出3.3V、5V、12V的固定电压,还可以输出最高3A的电流,最大输入电压为40V,完全满足舵机的工作需求。LM2596的引脚功能如下:VIN直流电压输入端OUTPUT直流电压输出端GND输入输出公共端FEEDBACK稳压取样电压输入端ON/OFF使能控制端表3-7SEQ表3-7\*ARABIC1LM2596引脚功能因为我设计的是不可调电压固定输出调节器,所以外围电路只需要四个元件即可,一个电感,一个输入电容,一个输出电容,一个吸纳二极管。再在舵机电源端接入一个电阻分流。电路原理图:图3-7SEQ图3-7\*ARABIC1舵机驱动电路原理图硬件选型:因为该电路最大输入电压为5V,负载电流最大为3A,由图可见,当电压为5V,电流为3A时,应该选择15uH的电感,但因为手册中给出的硬件选型表中不推荐选择15uF的电感,所以我选择了22uF的电感。图3-7SEQ图3-7\*ARABIC2LM2596电感选型图 首先,考虑到输出电压为5V,那么电容的耐压值必须为输出电压的1.5倍以上,也就是7.5V或更大,但是220Uf/10V的铝电解电容会产生大约225Ω的等效阻抗,等效电阻过大时会在输出端产生较高的输出纹波电压,所以应该选择一个耐压值更高或容值更大的电阻,这样才能把纹波电压降低,根据官方给出的快速选择器件表,我选择了470uF/25V的直插式电解电容。图3-7SEQ图3-7\*ARABIC3LM2596快速选型表选择吸纳二极管时应该注意吸纳二极管最大承受电流应该为最大负载电流的1.3倍,而反向电压应该为最大输入电压的1.25倍以上,本电路中,因为需要快速开关,较低压降的二极管,所以我选择了肖特基二极管,而本电路中选择的肖基特二极管是5A/20V的SR502。选择输入电容主要参考的是输入耐压值和电流均方根,负载电流为3A,那么输入均方根大约为1.5A,铝电解电容,耐压值必须为最大输入电压的1.5倍,最大输入电压为5V,所以输入耐压值最小为7.5V,根据下表给出的耐压值、电容值和均方根电流的关系图可以得出,在电流为1.5A时,应选择的电容值为680uF,耐压值为30V,但快速选型表中没有30V的电容,所以我选择的输入电容为680uF/35V。图3-7SEQ图3-7\*ARABIC4LM2596电容选型图硬件BOM表:名称规格数量排针1*3P1稳压芯片LM25961电解电容680uF/35V(PL系列)1电解电容470uF/25V(HFQ系列)1电感22uF(L41系列)1肖基特二极管5V/20A(SR502)1电阻1K(0603封装)1表3-7SEQ表3-7\*ARABIC2舵机驱动电路硬件BOM表

PCB设计:图3-7SEQ图3-7\*ARABIC5舵机驱动电路PCB二维图3-7SEQ图3-7\*ARABIC6舵机驱动电路PCB三维

3.8红外接收电路电路设计: 我选择的红外接收器为IRM_3638T,IRM-3638T是适用于红外控制系统的小型化芯片。接收器集成了管脚二极管和前置放大器,环氧基树脂的封装提高红外滤波性能。解调输出的信号可以由微控制器译码,它的工作电压为2.7-5.5V,接收距离0度时为15m,45度时为8m,接收的载波波长为940nm,频率为38KHZ。当IRM_3638T没有接收到红外载波信号的时候,OUT管脚会输出高电平,当IRM_3638T接收到红外载波信号的时候,OUT管脚会输出低电平。 因为IRM_3638T内部自带调制电路,所以在经过调制后接收器只接收38KHZ的光信号。OUT引脚弱上拉,所以接一个10K的上拉电阻,然后连接单片机引脚,再在电源和地之间接一个滤波电容,外部电路就设计完了。电路原理图:图3-8SEQ图3-8\*ARABIC1红外接收电路原理图

PCB图:图3-8SEQ图3-8\*ARABIC2红外接收电路PCB二维图图3-8SEQ图3-8\*ARABIC3红外接收电路PCB三维3.9红外发送遥控电路 在太阳散发出的光线中,波长为0.4um-0.75um的光线被称为可见光,而波长为0.75-1000um的光线被称为红外光,红外光又被分为三种:近红外光:0.75-1.5um之间;中红外光:1.5-4um之间;远红外光:4-1000um之间,而我选择的红外发射器IR333C发射的则是0.94um的中红外光。 如果想让红外收发系统能够正常收发信号,需满足两个条件:红外发射器的红外发射波长必须和红外接收器的接收波长一致或相近。为了在信号传输过程中免受其他红外信号的干扰,通常是发射方调制信号,接收方解调信号。调制的意思就是通过微控制器控制红外发射器发射特定频率的红外光,发射的红外光会以一个特定频率的载波形式存在于空间中,其中,红外发射器发射的载波频率一定要与红外接收器的接收载波频率一致。而解调的意思是红外接收器会过滤掉别的频率的杂波,只接收红外发射器发射的特定频率载波,然后再将光信号还原成电信号,然后通过这些脉冲信号来控制小车。电路设计: 红外收发遥控模块一共由三部分组成,第一部分是由ME6212芯片组成的电源电路,第二部分是由STC89C52芯片和一大堆按键组成的控制电路,第三部分是由IR333C发光二极管组成红外光发射电路。 IR333C是一款峰值电流为1A,最大反向电压为5V的5mm红外二级管。参考典型电路我设计了一个红外发射电路。图3-9SEQ图3-9\*ARABIC1红外发送电路原理图 当IE接受到高电平信号时,红外二极管就会发射红外光;当IE接收到低电平信号时,红外二极管就不发射红外光。这里三极管的作用是作为一个开关,当它接受到高电平时就会导通,R3和R5都是限流电阻,用来限制电流保护元件不被烧坏,R4是一个下拉电阻,当IE没有接收到信号时,确保三极管不导通。 电源电路以及控制部分和之前的单片机最小系统电路中的一样,这里我使用了九个按键来分别控制智能清洁小车实现功能,功能表如下:STOP小车停止UP小车前进DOWN小车后退LEFT小车左转RIGHT小车右转DUSTBINUP垃圾箱升起DUSTBINDOWN垃圾箱降下AON/OFF扫刷电机开启/关闭BON/OFF水泵电机开启/关闭CON/OFF风机开启/关闭表3-9SEQ表3-9\*ARABIC1按键功能表电路原理图:图3-9SEQ图3-9\*ARABIC2红外发射电路原理图硬件选型: 三极管我选择的是S8050,该三极管允许通过的最大电流为500MA,而IR333C的最大允许通过电流为100MA,所以三极管不会因为电流过大烧坏,这是我选择该三极管的原因。R5这个基级限流电阻的阻值我选择的是10KΩ,三极管有三个工作区,饱和区,放大区,截止区,当处于截止区时,这时三极管就不导通,相当于断路,当处于饱和区时,三极管相当于一条导线,是通路,这是三极管作为开关使用的原理。首先,查看一下IR333C的芯片手册可得该二极管正常工作电流是20MA-100MA,所以通过三极管Ice的电流范围为20MA-100MA,然后通过观察SS8050的输出特性曲线,如下图:图3-9SEQ图3-9\*ARABIC3S8050输出特性曲线可以得知,当ICE处于20-100MA时,所需的基级电流临界值大约为120-480uA,所以根据公式R=U/I,(5V-0.7V)/0.00012=35K,(5V-0.7V)/0.00048=8K,这个限流电阻的大小就应选取8-35KΩ之间,这是我选择使用10K电阻当限流电阻的原因。 R3这个限流电阻的阻值我选择的是60Ω,通过查看IR333C元件手册我得知,当它处于最大允许通过电流100MA时,压降为1.4V,那么限流电阻最小阻值就为(5V-1.4V)/0.1A=36Ω,而考虑到如果限流电阻阻值过大,红外发光二极管发出的光会十分微弱,所以,综合考虑,我选择了60Ω的电阻作为红外二极管的限流电阻。

硬件BOM表: 名称规格数量单片机AT89C52(DIP40封装)1电源芯片ME6212C50M5G(SOT23封装)1XH连接器2501R-2P1开关拨码开关1开关按键开关11电容1uF(0603封装)2电容0.1uF(0603封装)4电容47PF(0603封装)2晶振11.0592MHZ/7PF1电阻10K(0603封装)5电阻60Ω(0603封装)1电阻140Ω(0603封装)1发光二极管LED_GREEN1红外二极管IR333(LED_5)1三极管S8050(SOT23)1表3-9SEQ表3-9\*ARABIC2红外发射电路硬件BOM表

PCB设计:图3-9SEQ图3-9\*ARABIC4红外发射电路PCB二维图3-9SEQ图3-9\*ARABIC5红外发射电路PCB三维

3.11本章总结 本章主要介绍了智能清洁小车所有电路的设计思路和各个芯片的引脚功能,还通过元件手册和芯片手册完成了电路的元器件选型。

4.软件编程设计 4.1基本思路本文的软件设计主要由两部分组成,一部分是红外发射程序,一部分是红外接收驱动程序。红外发射程序是通过NEC协议将按键的键值以载波的形式发送出去,红外接收驱动程序是通过NEC协议解码收到的信号,然后将键值通过串行通讯发送到单片机上,来实现控制小车运行。4.2红外发射程序设计 红外发射需要通过控制单片机来发送一连串NEC编码来传输数据,NEC编码主要是由引导码、低八位用户码、高八位用户码、八位数据码、八位数据码的反码、结束码组成。而这些编码是由二进制数0和1组成,在红外发射中,0和1是由无数个周期载波组成,而载波是高低电平来控制的。所以说,我们只要通过单片机对红外发光二极管发出高电平(发射红外光)和低电平(不发射红外光)指令,就可以实现红外遥控了。 首先要先判断红外发射的载波周期,通过红外接收器IRM-3638T的元件手册得知,该元件的接收载波频率为38KHZ,那么应该发射38KHZ的载波,而载波周期=频率的倒数,所以本设计里一个载波周期为26.3us(1/38KHZ),根据NEC协议,一个载波周期的占空比为大约为30%,由此得知想要得到一个载波周期需要8.77us的高电平和17.53us的低电平。 得到了载波周期的数值,接下来是判断如何发送0和1,还是通过NEC协议得知,发送协议数据0需要发送载波0.56ms和不发送载波0.56ms,发送协议数据1需要发送载波0.56ms和不发送载波1.68ms,这里0.56ms一共是21个载波周期,1.68ms一共是64个载波周期。 引导码是发送载波9ms加上不发送载波4.5ms,结束码就是发送一个0,即发送载波0.56ms加上不发送载波0.56ms。 4.3红外接收驱动程序设计在红外接收中,先判断是否是引导码,即接收到的信号是否为9ms低电平和4.5ms高电平,然后再判断一位数据里的载波不发射时间,若为0.56ms,则为数据0,若为1.68ms,则为1,再通过移位指令,将数据保存在数组上,解调完成之后,在通过串行通讯将数据发送到单片机引脚。 控制垃圾箱升降的舵机我采用的是定时中断的方式,因为舵机旋转的速度比较快,为了避免过快的速度会将垃圾甩飞,我设定舵机每转过45°就延时0.5秒。4.4本章总结本章主要介绍了红外发射和接收原理以及我是如何通过这些原理来编写代码的。由于红外遥控无法仿真,所以我没有在proteus里仿真,程序见附录。

5.小车结构设计5.1基本布局和功能分析本车结构是根据循迹小车的结构改进而来,小车最前头的扫刷是通过一个轴套和两个正反牙的连接轴组成,顺时针拧动轴套可以将扫刷升起,逆时针拧动可以将扫刷放下。电池被放置在扫刷两侧,左边那一块电池组主要供应控制模块和行走、水泵、扫刷电机驱动模块。右边那一块主要供应吸尘风机。中间则放置电源电路板,最小系统板,各模块驱动板。小车中后部是水箱和垃圾箱,水箱前放置的是水泵电机,通过水泵电机将水箱内的水抽出流经扫刷上方的雾化喷头,再流回水箱,水箱上方的是垃圾箱,垃圾箱和水箱中间放置舵机,舵机通过一个连杆机构将垃圾箱升起,倒出垃圾,这里也可以将舵机放置在垃圾箱另一侧,直接带动垃圾箱旋转180度倾倒垃圾,风机和滤尘装置放置在垃圾箱内侧后方,通过将垃圾箱内部空气抽出,造成气压差,从而吸尘。而吸尘管从垃圾箱延伸出来后,经过小车底盘连接吸盘,考虑到道路可能出现不平整的情况,这里吸盘底部可以增加两个轮子防止吸盘和道路碰撞摩擦而造成磨损。

5.2小车二维及三维图小车二维图:图5-2SEQ图5-2\*ARABIC1清洁小车结构二维图小车三维图:图5-2SEQ图5-2\*ARABIC2清洁小车结构三维图5.3本章小结本章主要介绍了智能清洁小车的结构设计思路和二维三维图,因为时间问题,小车的外壳和细节部分我没有再深入设计。

6.结束语 随着时代发展,市容清洁这种重体力、重复性强的工作必然会被机器所取代,而环卫清洁车也会朝着更加智能化,清洁化、多功能化的方向发展,为了迎接产业的升级与改变,不断学习,不断进步,也是我辈年轻人的职责所在。我很荣幸有机会在珠海亿华电动车辆有限公司进行了为期半年的实习,使我对汽车行业有了简单的认识,也使我有机会去深入了解一辆新能源环卫清洁车的制造,研发,测试,我明白任何一个新产业的发展都是充满机遇并且困难重重的,祝愿新能源清洁车能蓬勃旺盛地发展,出现在祖国城市的各个角落。 6.1结论6.11设计总结和难点 第一个难点在于电机选型上,由于一开始设计整车的结构还没有确定,我无法判断需要多少扭矩及多少转速的电机,于是我在淘宝上买了一个智能小车模型,用卷尺量出模型的大致尺寸并加以修改,然后在三维软件里画出模型并赋予材料估算重量,再根据我实习时的经验,参考公司的新能源清洁车绘制了一个大概的小车结构,再结合网上的智能小车实验案例,进而估算出本设计需要的电机扭矩、转速和电压。 第二个难点是芯片选型和元器件选型,市面上主流的电机驱动芯片是L298N和ULN2003A,考虑到ULN2003A不适合驱动直流电机,而L298N外部电路相对复杂,所以我选择了更为简单的RZ7899作为电机驱动芯片。元器件选型应该算是我在设计过程中最难解决的问题了,一些描述详细的芯片手册还好,会给出典型应用电路和元件选型参考,但还是会遇到一些元器件需要自己来计算和判断参数,我的解决办法是去淘宝和立创商城里,搜索自己需要的元器件,再根据卖家或商城中给出的参数和元器件手册来选择。 第三个难点是PCB绘制,一开始我是根据元件手册给出的尺寸自己绘制元件库,工作量非常巨大,但因为疫情无法制作实物,我就改成去淘宝上买现成的二维三维封装库了,这导致本设计的部分元器件并不是按照电路设计中BOM表给出的封装来画的,如果要制作出实物,还是要按照元件尺寸重新绘制。 第四个难点是编程,本设计的程序并不复杂,但是研究红外编码和解码还是花费了我一些精力。6.1.2设计创新点 本设计是一个智能清洁车模型,如果非说创新点的话,相较于国内传统的环卫清扫车,本车带有水雾化抑尘系统,可以有效防止清扫产生的扬尘二次污染。6.13设计的不足点 由于疫情和时间的影响,本设计存在很多细节问题没有解决,如PCB元件并未按照电路设计的封装来绘制;因为proteus无法仿真红外遥控,所以没有进行仿真验证程序可行性;结构设计部分只是为了估测电机负载和大致判断小车形状而绘制的三维模型,结构问题和应力问题并没有进行解决。

参考文献[1]马翔,朱世强,吴海彬.智能吸尘器的开发及设计[J].电子应用技术.2000.26(8):6-8.[2]李彪,李孜,曹新凯.新型仿人迈步式楼梯智能清洁车的设计[J].农业装备与车辆工程.2019.57(5):84-86[3]黄名彭征科罗词国.一种市政道路智能清洁车[P].中国专利:CN201910673301.3,2019-07-24[4]王仁鹏李温锋郭佳鹏雷波马莹.新型环保吸尘车的研制[P].汽车实用技术.2019,(23):91-93,96[5]毛宇阳王晓利赵宸.基于单片机系统及传感器的智能清洁小车设计[J].数码世界.2018,(5):251-252[6]郑崇林.新型多功能清洁车研究与设计[J].中外交流.2019,26(34):66-67[7]于向楠李飞扬符耿雪冯海艳熊丰.北京市道路尘中重金属时空分布特征及污染程度评价[J].现代地质.2019,33(1):169-175[8]陈以国.环卫清洁机械装备行业市场分析[J].环境卫生工程.2012,20(1):56-57[9]董莎莎.小型环卫清洁车创新设计方案[J].工业设计.2018,(3):50-51[10]吴学龙周继强.团结奋进创佳绩迎难而上展雄风——深圳市环卫行业改革开放30年回眸[J].开放导报.2010,(5):后插6-后插8致谢这次毕业设计使我认识到,自己平时的知识积累存在着很多的不足,从毫无头绪到完成设计,从重新学习模数电、C语言到能独立完成电路和程序设计,这其中的过程让我收获良多,感谢老师对我的耐心指导,也感谢众多开源交流群里的朋友们对我所有疑问的耐心解答 大学四年真的很快,我收获了很多,也错过了很多,感谢老师和同学们这四年的照顾,悟已往之不谏,知来者之可追,在今后的工作中,我也会坚持学习,将所学所得运用到工作中,不辜负老师的悉心栽培。附录A:系统原理图附录ASEQ附录A\*ARABIC1系统原理图

附录B:程序代码红外发射代码#include"reg52.h"#include"intrins.h"#defineucharunsignedchar#defineuintunsignedintsbitIRM_E=P3^4; //TO口作为红外发射口sbitKey_UP=P2^0; //键码0x09sbitKey_DOWN=P2^1; //键码0x16sbitKey_LEFT=P2^2; //键码0x19sbitKey_RIGHT=P2^3; //键码0x0dsbitKey_STOP=P2^4; //键码0x0csbitKey_DUSTBIN_UP=P2^5; //启动键码0x45sbitKey_DUSTBIN_DOWN=P2^6; //启动键码0x46sbitKey_A_ONOFF=P2^7; //启动键码0x47,停止键码0x44sbitKey_B_ONOFF=P0^0; //启动键码0x40,停止键码0x43sbitKey_C_ONOFF=P0^1; //启动键码0x07,停止键码0x15bitflag0=0;bitflag1=0;bitflag2=0;bitflag3=0;bitflag4=0;bitflag5=0;bitflag6=0;bitflag7=0;bitflag8=0;bitflag9=0;//延时8.77us,即1/3周期voidDelay8_77us() //@11.0592MHz{ uchari; i=19; while(--i);}//载波发射周期,26.3us=8.77us(发射红外光)+8.77us*2(不发射红外光)voidSend_IRM(uinti){ while(i--) //循环65535次 { IRM_E=1; //红外发射启动 Delay8_77us(); //延时8.77us IRM_E=0; //红外发射停止 Delay8_77us(); //延时8.77us Delay8_77us(); //延时8.77us } }//载波不发射周期,26.3us=8.77us*3,(不发射红外光)voidNO_Send_IRM(uinti){ while(i--) //循环65535次 { IRM_E=0; //红外不发射 Delay8_77us(); //延时8.77us Delay8_77us(); //延时8.77us, Delay8_77us(); //延时8.77us }}//发射数据0(NEC协议载波发射0.56ms+载波不发射0.56ms)voidSend_NEC_0(){ Send_IRM(21); //0.56ms=26.3us*21 NO_Send_IRM(21); //0.56ms=26.3us*21}//发射数据1(NEC协议载波发射0.56ms+载波不发射1.68ms)voidSend_NEC_1(){ Send_IRM(21); //0.56ms=26.3us*21 NO_Send_IRM(64); //1.68ms=26.3us*64}//按NEC编码顺序发送一帧完整数据(引导码,用户码低八位,用户码高八位,八位数据码,八位数据反码,结束码)voidSend_NEC_Message(ucharCode_Date){ uintCode_User; uchari; //定义无符号字符型i uintCode_User_2; //定义无符号整形Code_User_2 Code_User_2=Code_User; //使用临时变量,防止修改形参//发送引导码(载波发射9ms,载波不发射4.5ms) Send_IRM(342); //9ms=26.3*342 NO_Send_IRM(171); //9ms=26.3*171//发送十六位用户码 for(i=0;i<16;i++) //发送十六位用户码 { if(Code_User_2&0X0001)//判断用户码是否为1 Send_NEC_1(); //发射1 else //否则 Send_NEC_0(); //发射0 Code_User_2>>=1; //执行完后用户码右移一位 }//发送八位数据码 Code_User_2=Code_Date; //Code_Date的值赋给Code_User2 for(i=0;i<8;i++) //发送八位数据码 { if(Code_User_2&0x01)//判断数据码是否为1 Send_NEC_1(); //发射1 else //否则 Send_NEC_0(); //发射0 Code_User_2>>=1; //执行完后数据码右移一位 }//发送八位数据反码 Code_User_2=(~Code_Date); for(i=0;i<8;i++) //发送八位数据反码 { if(Code_User_2&0x01)//判断数据码是否为1 Send_NEC_1(); //发射1 else //否则 Send_NEC_0(); //发射0 Code_User_2>>=1; //执行完后数据码右移一位 } //发送结束码 Send_NEC_0(); //发送结束码}//DUSTBIN_UP按键函数(按键抬手启动消抖,按一次执行启动程序,再按一次执行停止程序)voidKeyDUSTBINUP(){ if(Key_DUSTBIN_UP==0&&flag0==0) //如果按键按下并且标志位flag0为0 { flag0=1; //则标志位flag0置1 } if(flag0==1&&Key_DUSTBIN_UP==1) //如果标志位flag0为1并且按键松开 { flag1=~flag1; //则标志位flag1取反 } if(flag1==1) //当flag1为1时 { Send_NEC_Message(0x45); //红外发送键码0x45 } flag0=0; //标志位flag0清零} //DUSTBIN_DOWN按键函数voidKeyDUSTBINDOWN() { if(Key_DUSTBIN_DOWN==0&&flag2==0) //如果按键按下并且标志位flag2为0 { flag2=1; //则标志位flag2置1 } if(flag2==1&&Key_DUSTBIN_DOWN==1) //如果标志位flag2为1并且按键松开 { flag3=~flag3; //则标志位flag3取反 } if(flag3==1) //当flag3为1时 { Send_NEC_Message(0x46); //红外发送键码0x47 } flag2=0; //标志位flag2清零} //Key_A_ONOFF按键voidKeyAONOFF() { if(Key_A_ONOFF==0&&flag4==0) //如果按键按下并且标志位flag4为0 { flag4=1; //则标志位flag4置1 } if(flag4==1&&Key_A_ONOFF==1) //如果标志位flag4为1并且按键松开 { flag5=~flag5; //则标志位flag5取反 } if(flag5==1) //当flag5为1时 { Send_NEC_Message(0x47); //红外发送键码0x40 } else //否则 { Send_NEC_Message(0x44); //红外发

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论