基于单片机的超声波测距系统设计_第1页
基于单片机的超声波测距系统设计_第2页
基于单片机的超声波测距系统设计_第3页
基于单片机的超声波测距系统设计_第4页
基于单片机的超声波测距系统设计_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的超声波测距系统设计摘要随着科学技术的快速发展超声波将在测距仪中的应用越来越广。它将朝着更加高定位高精度的方向发展,以满足日益发展的社会需求。无庸置疑未来的超声波测距仪将与自动化智能化接轨与其他的测距仪集成和融合,形成多测距仪。随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能最终发展到具有创造力。本课题详细介绍了超声波传感器的原理和特性,以及STC公司的STC89C52单片机的性能和特点,并在分析了超声波测距的原理的基础上,指出了设计测距系统的思路和所需考虑的问题,给出了以STC89C52单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。该系统电路设计合理、工作稳定、性能良好、检测速度快、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求。关键词:超声波单片机测距STC89C52UltrasonicrangingsystembasedonSCMAbstractWiththerapiddevelopmentofscienceandtechnology,ultrasoundwillbemorewidelyappliedintherangefinder.ItwillbetowardmorehighsetPrecisionofdirection,inordertomeetthegrowingneedsofthecommunity.Undoubtedly,thefutureofultrasonicdistancemeasurementinstrumentstandardsandautomationofintelligentwillbeintegratedwithotherrangefinderandfusiontoformamulti-rangefinder.Withthemeasuredawayfromtheinstrument'stechnicalprogress,therangefinderwilldevelopfromsimpletojudgethefunctionaldevelopmenttohavealearningfunction,andeventuallydeveloptohasthecreativity.Thissubjecthasintroducedtheprincipleandcharacteristicoftheultrasonicsensorindetail,andtheperformanceandcharacteristicofone-chipcomputerSTC89C52ofSTCCompany,andonthebasisofanalyzingprinciplethatultrasonicwavefindsrange,thesystematicthinkingandquestionsneededtoconsiderthathavepointedoutthatdesignsandfindsrange,providelowcost,thehardwarecircuitofhighaccuracy,ultrasonicrangefinderofminiaturedigitaldisplayandsoftwaredesignIVmethodtakingSTC89C52asthecore,thiscircuitofsystemisreasonableindesign,workingstability,performancegoodmeasuringspeedingsoon,calculatingsimple,apttoaccomplishreal-timecontrol,andcanreachindustry'spracticaldemandinmeasuringtheprecision.Keywords:Ultrasonicwave;One-chipcomputer;Rangefinding;STC89C52中北大学2012届毕业设计说明书第PAGEII页共II页目录1绪论 11.1超声波检测简介 11.2超声波检测的发展 21.3超声测距现状 32超声波测距仪的设计 62.1超声波测距原理 62.2常见测距法 62.3超声波传感器 72.3.1超声波传感器的原理及结构 72.4系统主要参数的确定 82.4.1测距仪的工作频率 82.4.2声速 82.4.3发射脉冲宽度 92.4.4测量盲区 92.5系统设计方案: 103超声波测距仪的硬件设计 113.1硬件模块选型 113.1.1处理器选型(STC89C52) 113.1.2超声波模块选型(HC-SR04) 123.1.3显示模块选型 133.1.4时钟模块选型 143.1.5E2PROM模块选型 153.1.6语音模块选型(蜂鸣器) 153.2系统电路设计 163.2.1超声波模块电路设计 163.2.2时钟模块电路设计 163.2.3显示模块电路设计 173.2.4语音模块电路设计 183.2.5电源电路设计 183.2.6系统电路设计总图 184超声波测距仪的软件设计 204.1超声波测距器的算法设计 204.2程序结构图 204.3主程序 214.4外部中断子程序 214.5模式0子程序 224.5.1测距子程序 224.5.2显示子程序 224.5.3语音模块子程序 234.5.4存储子程序 234.6模式1子程序 24结束语 25附录 26参考文献: 40致谢 41第43页共42页1绪论超声波是指超过人的听觉范围以上(16KHZ)的声波[1]。由于电子技术及压电陶瓷材料的发展,使超声检测技术得到了迅速的发展。超声技术是一门以物理、电子、机械、及材料学为基础的通用技术之一。超声技术是通过超声波产生、传播及接收的物理过程而完成的。超声波具有聚束、定向及反射、透射等特性。超声检测技术是利用超声波在媒质中的传播特性(声速、衰减、反射、声阻抗等)来实现对非声学量(如密度、浓度、强度、弹性、硬度、粘度、温度、流速、流量、液位、厚度、缺陷等)的测定。它的基本原理是基于超声波在介质中传播时遇到不同的界面,将产生反射,折射,绕射,衰减等现象,从而使传播的声时、振幅、波形、频率等发生相应变化,测定这些规律的变化,便可得到材料的某些性质与内部构造情况[2]。与传统超声技术完全不同,新的超声技术具有以下特点:在不破坏媒质特性的情况下实现非接触性测量[3],环境适应能力强,可实现在线测量。1.1超声波检测简介超声波测量在国防、航空航天、电力、石化、机械、材料等众多领域具有广泛的作用,它不但可以保证产品质量、保障安全,还可起到节约能源、降低成本的作用[4]。超声波与光波、电磁波、射线等检测相比,其最大特点是穿透力强。超声波是一种频率超过20kHz的机械波。超声波作为一种特殊的声波,同样具有声波传输的基本物理特性--反射、折射、干涉、衍射、散射。超声波具有方向性集中、振幅小、加速度大等特点,可产生较大力量,并且在不同的媒质介面传播,超声波的大部分能量会反射。利用超声波检测往往比较迅速,方便,易于做到实时控制,并且在测量精度方面能达到工业实用的要求,主要应用于倒车雷达、建筑施工工地以及一些工业现场,例如:液位、井深、管道长度等场合。超声波在介质(固体、液体、气体)中传播时,利用不同介质的不同声学特性对超声波传播的影响来探查物体和进行测量的技术称为超声检测。当超声波以脉冲形式在介质中传播时,利用反射这一性质,在多种介质中均有广泛的用途。例如在金属、非金属中用来探测缺陷的位置和性质,从而对钢板、锻件、焊缝、混凝土、人造石磨等进行探伤检验;在水中,根据反射波可以探测潜水艇和鱼群,测量海底深度以及探查海底底层等;在人体中则可以协助临床诊断疾病(如肝脓肿、肿瘤、胆结石等)和探测胎儿等[5]。利用超声连续波的共振性质,可以测量高压容器、锅炉、轮船甲板等的厚度或腐蚀程度,也可制成机械滤波器。利用超声波的哀减特性,可以研究或测量材料的物理性质[6]。当超声波射到运动体时,利用多普勒效应,可以测量流速流量,探测心脏血管搏动等。若将超声波作为载波传送某些信号,则可制成水中电话、水中遥测仪等,以进行水中通信。利用超声波在固体,液体中传播的速度远小于电磁波这一特性,可制成超声延迟线和存储装置以及进行电视制式的转换。还可利用超声波检漏、测量液位、粘度、硬度和温度等。除此之外,声发射、声成像技术(包括声全息成像技术)的发展更大大丰富了超声检测的内容。超声波可在任何物体中传播,了解被测物体内部情况。超声检测设备还具有结构简单,成本低廉的优点,有利于工程实际使用。近十几年来由于微机技术、现代电子技术、信号处理技术以及超声波产生和接收新技术的发展,突破了常规超声检测的限制,进一步开拓了其适用范围。1.2超声波检测的发展我国无损检测技术是从无到有,从低级阶段逐渐发展到应用普及的现阶段水平。超声波检测仪器的研制生产,也大致按此规律发展变化。五十年代,我国开始从国外引进超声波仪器[7],多是笨重的电子管式仪器。如英国的UCT-2超声波检测仪,重达24Kg,各单位积极开展试验研究工作,在一些工程检测中取得了较好的效果。五十年代末六十年代初,国内科研单位进口了波兰产超声仪,并进行仿制生产。随后,上海同济大学研制出CTS-10型非金属超声检测仪,也是电子管式,仪器重约20Kg。该仪器性能稳定,波形清晰。但当时这种仪器只有个别科研单位使用,建工部门使用不多。至七十年代中期,因无损检测技术仍处于试验阶段,未推广普及,所以仪器没有多大发展,仍使用电子管式的UCT-2,CTS-10型仪器。976年,国家建委科技公司主持召开全国建筑工程检测技术交流会后,国家建委将混凝土无损检测技术列为重点攻关项目,组织全国6个单位协作攻关。从此,无损检测技术开始进入有计划,有目的的研究阶段。随着电子工业的飞速发展,半导体元件逐渐代替了电子管器件,更有利于无损检测技术的推广普及。如罗马尼亚N2701型超声波测试仪,是由晶体管分立元件组成,具有波形和数码显示,仪器重量1OKg。七十年代,英国C.N.S公司推出仅有3.5Kg重的PUNDIT便携式超声仪。1978年10月,中国建筑科学院研制出JC-2型便携式超声波检测仪。该仪器采用TTL线路,数码显示,仪器重量为5Kg。同期研制出的超声检测仪器还有SC-2型,CTS-25型,SYC-2型超声波检测仪。从此,我国有了自己生产的超声波仪器,为推广应用无损检测技术奠定了良好的基础。随着检测技术研究的不断深入,对超声检测仪器的功能要求越来越高,单数码显示的超声检测仪测读会带来较大的测试误差,进一步要求以后生产的超声仪能够具有双显及内带有单片机的微处理功能。随后具有检测,记录,存储,数据处理与分析等多项功能的智能化检测分析仪相继研制成功。超声仪研制呈现一派繁荣景象。其中,煤炭科学研究院研制的2000A型超声分析检测仪,是一种内带微处理器的智能化测量仪器,全部操作都处于微处理器的控制管理之下,所有测量值,处理结果,状态信息都在显像管上显示出来,并可接微型打印机打印。其数字和波形都比较清晰稳定,操作简单,可靠性高,具有断电存储功能,其串口可以方便用户对仪器的测试数据进行后处理及有关程序的开发。与国内同类产品相比,设计新颖合理,功能齐全,在仪器设计上有重大突破和创新,达到了国际先进水平。目前,计算机市场价格大幅度下降,采用非一体化超声波检测仪器,计算机可以发挥它一机多用的各种功能,实际上是最大的节约。过去那种全功能的仪器设置,还不如单独的超声仪,计算机可以充分发挥各自特点。高智能化检测仪器只能满足检测条件,使用环境,重复性测试内容等基本情况一样,才可充分发挥其特有功能。仪器设计也应从实际情况出发,才能满足用户的要求。综上所述,我国超声波仪器的研制与生产,有较大发展,有的型号己超过国外同类仪器水平。1.3超声测距现状目前,国内学者对超声波回波信号处理算法的研究已经日渐成熟,但其作为超声波探测定位的关键技术,仍将是一个重要的研究方向。随着超声波回波信号处理方法的不断完善,如何研发新型、高性能超声波换能器以进一步拓宽超声波测距的应用空间,作为解决超声波测距系统不足的根本手段,越来越受到国内学者关注。通过对以Vmos场效应管为开关元件的超声波发射电路进行分析,马庆云等[8]发现激励脉冲宽度对超声波换能器的发射功率影响极大,换能器取得最大发射功率所对应的激励脉冲宽度为其谐振周期的一半。该分析结果对新型超声波换能器的发射电路的设计具有一定的指导作用。针对传统连续调频超声波系统需要使用宽带超声传感器的不足,李希胜等[9]提出了一种连续窄带调频超声波测距方法。该方法可以利用较低的瞬时超声波功率实现较高的平均发射功率,从而利用普通超声传感器来组成超声发射接收传感器对,避免了使用价格昂贵的宽带超声传感器。目前国产低功率超声波探头,一般不能用于探测15m以外的物体,美国AIRMAR公司生产的AirducerAR30超声波传感器的作用距离可达30m,但价格较高。潘仲明等[10]对大作用距离超声波传感技术进行研究,研制了谐振频率为24.5kHz的新型超声波传感器,其作用距离超过了32m,测量误差小于2%。廖一等[11]提出利用弯曲振动换能器改善声匹配,将气介超声波换能器的最大探测距离提高到35m。现阶段,国内一些科研人员在超声波发射电路的简化、发射功率和频率的控制、最大探测距离的提高等方面对新型超声波换能器进行研究并取得了一定成果,但对新型超声换能器制作材料、超声波发生机理创新等方面的研究尚有不足。目前市场上普通的超声波测距系统,一般采用发射单超声脉冲的方法,这种方法在测距精度和可靠性等方面的研究已较成熟。但是当它采用较高频率超声波时,会因空气吸收而较快衰减,导致有效测量距离降低;在通过降低频率以增大测距范围时,测距的绝对误差又会增大[12]。因而该方法存在测量分辨力和有效作用距离的矛盾,极大制约了超声波传感器应用领域的拓宽。现阶段常见问题的分析及解决:(1)超声波传播波速不恒定超声波在介质中的传播速度随周围环境(温度、压力等)的变化而变化,其中温度的影响最为明显。常温下,超声波的传播速度为340m/s,温度每升高1℃,声速增加约为0.6m/s,因此超声波测距中一般采用温度补偿的方法,即在数据处理中对超声波传播速度进行实时温度补偿。(2)存在盲区发射超声波时,超声波换能器在驱动脉冲结束后,会由于惯性继续振动,产生余振。余振期间,由于无法区分回波信号与余振信号,因此必须等余振停止或衰减到足够小后,才能允许接收传感器接受信号。这段时间由于无法检测超声波传播距离,从而出现盲区。为了减小盲区,即尽快让余振衰减到零或足够小,马志敏[13]提出自动根据测量距离远近调控发射功率的方法,即自动根据距离的远近来调整发射拖尾波覆盖信号的宽度,从而消除拖尾波的干扰。QiangLi,Zhang[14]提出增大余振衰减系数的方法,来加速余振的衰减。郗晓田提出通过减小电容上电压最大值U的初值来加速余振衰减的方法,也可在一定程度上减小盲区。(3)超声波探测器测量分辨力和探测角度范围的矛盾超声波测距选用大波束角探测器,可以满足探测范围要求,但分辨能力较差,难于准确地提供目标的边界信息。然而如果采用小波束角探测器,可以满足分辨能力的需要,但探测范围很难满足要求。针对这一矛盾,金元郁等[15]提出步进电机驱动单套小波束角传感器做扇形扫描的方法,即步进电机每转过一个步距角,测距系统便在当前的角度上测取一个距离信息,结合当前的扫描角度,就得到了一个较为精确,而且兼有距离、方向的位置信息。该方法有效弥补了大波束角探测器分辨能力差,小波束角探测器探测范围不足的缺点。2超声波测距仪的设计2.1超声波测距原理单片机发出超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距离S=vt/2,式中的v为超声波波速[16]。限制该系统的最大可测距离存在4个因素:超声波的幅度、反射的质地、反射和入射声波之间的夹角以及接收换能器的灵敏度。接收换能器对声波脉冲的直接接收能力将决定最小的可测距离。为了增加所测量的覆盖范围、减小测量误差,可采用多个超声波换能器分别作为多路超声波发射/接收的设计方法。表2.1超声波波速与温度的关系表温度(℃)-30-20-100102030100声速(m/s)313319325323338344349386由于超声波属于声波范围,其波速v与温度有关[17]。所以列出了几种不同温度下的波速,请看表2.1所示。在测距时由于温度变化,可通过温度传感器自动探测环境温度确定计算距离时的波速v,较精确地得出该环境下超声波经过的路程,提高了测量精确度。波速确定后,只要测得超声波往返的时间,即可求得距离。单片机发出短暂的40kHz信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,得出时间,再由系统软件对其进行计算、判别后,相应的计算结果被送至LCD显示电路进行显示。同时判断如果测得的距离小于1m时,通知报警器报警,并把测距记录存入E2PROM存储,供随时查看测距记录2.2常见测距法目前最常用测距法有两种:(1)超声波测距法:超声波是频率20kHz以上的机械振动波,利用发射脉冲和接收脉冲的时间间隔推算出距离。超声波测距法的缺点是波束较宽,其分辨力受到严重的限制,因此,主要用于导航和回避障碍物。(2)激光测距法[18]:激光测距法也可以利用回波法,或者利用激光测距仪,其工作原理如下:氦氖激光器固定在基线上,在基线的一端由反射镜将激光点射向被测物体,反射镜固定在电动机轴上,电动机连续旋转,使激光点稳定地对被测目标扫描。由CCD(电荷耦合器件)摄像机接受反射光,采用图像处理的方法检测出激光点图像,并根据位置坐标及摄像机光学特点计算出激光反射角。利用三角测距原理即可算出反射点的位置。我们选用超声波测距法,这样会使成本降低。2.3超声波传感器2.3.1超声波传感器的原理及结构超声传感器是一种将其他形式的能转变为所需频率的超声能或是把超声能转变为同频率的其他形式的能的器件[19]。目前常用的超声传感器有两大类,即电声型与流体动力型。电声型主要有:1.压电传感器;2.磁致伸缩传感器;3.静电传感器。流体动力型中包括有气体与液体两种类型的哨笛。由于工作频率与应用目的不同,超声传感器的结构形式是多种多样的,并且名称也有不同,例如在超声检测和诊断中习惯上都把超声传感器称作探头,而工业中采用的流体动力型传感器称为“哨”或“笛”。压电传感器属于超声传感器中电声型的一种。探头由压电晶片、楔块、接头等组成,是超声检测中最常用的实现电能和声能相互转换的一种传感器件,是超声波检测装置的重要组成部分。压电材料分为晶体和压电陶瓷两类。属于晶体的如石英、铌酸锂等,属于压电陶瓷的有锆钛酸铅、钛酸钡等。其具有下列的特性:把这种材料置于电场之中,它就产生一定的应变;相反,对这种材料施以外力,则由于产生了应变就会在其内部产生一定方向的电场。所以,只要对这种材料加以交变电场,它就会产生交变的应变,从而产生超声振动。因此,用这种材料可以制成超声传感器。传感器的主要组成部分是压电晶片。当压电晶片受发射电脉冲激励后产生振动,即可发射声脉冲,是逆压电效应。当超声波作用于晶片时,晶片受迫振动引起的形变可转换成相应的电信号,是正压电效应。前者用于超声波的发射,后者即为超声波的接收。超声波传感器一般采用双压电陶瓷晶片制成。这种超声传感器需要的压电材料较少,价格低廉,且非常适用于气体和液体介质中。在压电陶瓷上加有大小和方向不断变化的交流电压时,根据压电效应,就会使压电陶瓷晶片产生机械变形,这种机械变形的大小和方向在一定范围内是与外加电压的大小和方向成正比的。也就是说,在压电陶瓷晶片上加有频率为f的交流电压,它就会产生同频率的机械振动,这种机械振动推动空气等媒介,便会发出超声波。如果在压电陶瓷晶片上有超声机械波作用,这将会使其产生机械变形,这种机械变形是与超声机械波一致的,机械变形使压电陶瓷晶片产生频率与超声机械波相同的电信号。双压电晶片由A、B两部分构成。当在AB间施加交流电压时,若A片的电场方向与极化方向相同,则下面的方向相反,因此,上下一伸一缩,形成超声波振动。压电陶瓷晶片有一个固定的谐振频率,即中心频率f。发射超声波时,加在其上面的交变电压的频率要与它的固有谐振频率一致。这样,超声传感器才有较高的灵敏度。当所用压电材料不变时,改变压电陶瓷晶片的几何尺寸,就可非常方便的改变其固有谐振频率。利用这一特性可制成各种频率的超声传感器。超声波传感器的内部结构由压电陶瓷晶片、锥形辐射喇叭、底座、引线、金属壳及金属网构成,其中,压电陶瓷晶片是传感器的核心,锥形辐射喇叭使发射和接收超声波能量集中,并使传感器有一定的指向角,金属壳可防止外界力量对压电陶瓷晶片及锥形辐射喇叭的损坏。金属网也是起保护作用的,但不影响发射与接收超声波。2.4系统主要参数的确定2.4.1测距仪的工作频率传感器的工作频率是测距系统的主要技术参数,它直接影响超声波的扩散和吸收损失、障碍物反射损失、背景噪声,并直接决定传感器的尺寸。工作频率的确定主要基于以下几点考虑:(1)如果测距的能力要求很大,声波传播损失就相对增加,由于介质对声波的吸收与声波频率的平方成正比,为减小声波的传播损失,就必须降低工作频率。(2)工作频率越高,对相同尺寸的换能器来说,传感器的方向性越尖锐,测量障碍物复杂表面越准,而且波长短,尺寸分辨率高,“细节”容易辨识清楚,因此从测量复杂障碍物表面和测量精度来看,工作频率要求提高。(3)从传感器设计角度看,工作频率越低,传感器尺寸就越大,制造和安装就越困难。综上所述,由于本测距仪最大测量量程不大,因而选择测距仪工作频率在40KHz。这样传感器方向性尖锐,且避开了噪声,提高了信噪比;虽然传播损失相对低频有所增加,但不会给发射和接收带来困难。2.4.2声速声速的精确程度线性的决定了测距系统的测量精度。传播介质中声波的传播速度随温度、杂质含量和介质压力的变化而变化。声速随温度变化公式为V=331.4+0.607T(mm/ms)式中[20],T是温度。由于该测距系统用于室内测量,且量程也不大,温度可以看作定值。在常温下,声音在空气中的传播速度可依据上式计算出为340m/s。2.4.3发射脉冲宽度发射脉冲宽度决定了测距仪的测量盲区,也影响测量精度,同时与信号的发射能量有关。根据资料,减小发射脉冲宽度,可以提高测量精度,减小测量盲区,但同时也减小了发射能量,对接收回波不利。但是根据实际的经验,过宽的脉冲宽度会增加测量盲区,对接收回波及比较电路都造成一定困难。在具体设计中,比较了24μs(1个40KHz脉冲方波),48μs(2个40KHz脉冲方波),240μs(10个40KHz脉冲方波),作为发射信号后的接收信号,最终选用48μs(2个40KHz脉冲方波)的发射脉冲宽度。此时,从接收回波信号幅度和测量盲区两个方面来衡量比较适中。2.4.4测量盲区在以传感器脉冲反射方式工作的情况下,电压很高的发射电脉冲在激励传感器的同时也进入接收部分。此时,在短时间内放大器的放大倍数会降低,甚至没有放大作用,这种现象称为阻塞。不同的检测仪阻塞程度不一样。根据阻塞区内的缺陷回波高度对缺陷进行定量评价会使结果偏低,有时甚至不能发现障碍物,这是需要注意的。由于发射声脉冲自身有一定的宽度,加上放大器有阻塞问题,在靠近发射脉冲一段时间范围内,所要求发现的缺陷往往不能被发现,这段距离,称为盲区。具体分析如下:当发射超声波时,发射信号虽然只维持一个极短时间,但停止施加发射信号后,探头上还存在一定余振(由于机械惯性作用)。因此,在一段较长时间内,加在接收放大器输入端的发射信号幅值仍具一定幅值高度,可以达到限幅电路的限幅电平VM;另一方面,接收探头上接收到的各种反射信号却远比发射信号小,即使是离探头较近的表面反射回来的信号,也达不到限幅电路的限幅电平。当反射面离探头愈来愈远,接收和发射信号相隔时间愈来愈长,其幅值也愈来愈小。在超声波检测中,接收信号的衰减总是比发射信号余振衰减慢的多。为保证一定的信噪比,接收信号幅值需达到规定的阈值VM,亦即接收信号的幅值必须大于这一阈值才能使接受放大器有输入信号。2.5系统设计方案:系统设计要求:(1)能够连续测量,保存测量数据,并用液晶屏1602显示距离值;(2)测量范围在0.1—5m;(3)能根据距离长短发出不同频率的声音,具有语音播报功能。根据系统设计要求,确定系统设计方案如下:图2.1超声波测距仪原理框图系统设置有两个工作模式,通过一个外部中断开关选择工作模式模式0:正常的测距工作模式模式1:遍历显示E2PROM中存储的测距记录信息3超声波测距仪的硬件设计3.1硬件模块选型3.1.1处理器选型(STC89C52)在这里,我才用的深圳宏晶科技生产的STC89C52RC单片机[21]。STC89C52单片机简介:STC89C52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外STC89X52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。由于本系统是一个小的嵌入式系统,对处理器性能方面要求不是很高;因此就得考虑系统的节能、设计简单、性能稳定等方面因素来选择适合的SCM;在做嵌入式控制方面的处理器主要是单片机和ARM系列处理器,但对比两个系列,ARM处理器虽然指令更多,资源更丰富,功能更强;但是更耗能,操作更复杂,设计难度更大,在此系统中单片机就能满足性能要求,且节能,设计简单;故选择单片机。在诸多的单片机中,我们由选择哪款呢?这还的根据节能、设计简单、性能满足要求、可扩展性强等原则进行选型。在诸多单片机中,51单片机资源比较少,因此我们选择资源更丰富的52单片机;STC89C52和atmel89c52对比:STC89C52RC单片机:8K字节程序存储空间;512字节数据存储空间;内带4K字节EEPROM存储空间;可直接使用串口下载。AT89S52单片机:8K字节程序存储空间;256字节数据存储空间;没有内带EEPROM存储空间;不能直接使用串口下载。可见STC89C52资源更丰富,可宽展性更强,成本更低;故选择STC89C52。3.1.2超声波模块选型(HC-SR04)现在市场上各种各样的超声波模块很多,有专门的发射、接收模块,有既能发射又能接收的,本设计是测距系统,应采用反射波的模块,由于市场上已经很便宜了,故没有自己搭超声模块的必要。根据设计要求,在市场上采购能符合要求的模块就行。这里采用的HC-SR04,本模块价格便宜,性能稳定,测度距离精确。能和国外的SRF05,SRF02等超声波测距模块相媲美。模块高精度,盲区(2cm)近,能稳定的测距[22]。1、产品特点:HC-SR04超声波测距模块可提供2cm-400cm的非接触式距离感测功能,测距精度可达高到3mm;模块包括超声波发射器、接收器与控制电路。(1)采用IO触发测距,给至少10us的高电平信号;(2)模块自动发送8个40khz的方波,自动检测是否有信号返回;(3)有信号返回,通过IO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间;测试距离=(高电平时间*声速(340M/S))/2;(1)2、实物图:图3.1HC-SR04实物图上图接线:VCC供5v电源,GND为地线,TRIG触发控制信号输入,ECHO回响信号输出线。3、电气参数:表3.1HR-SR04电气参数表电气参数HCSR04超声波模块工作电压DC5V工作电流15mA工作频率40Hz最远射程4m最近射程2m测量角度15度输入触发信号10uS的TTL脉冲输出回响信号输出TTL电平信号,与射程成比例4、超声波时序图:图3.2超声波时序以上时序图表明你只需要提供一个10uS以脉冲触发信号,该模块内部将发出8个40kHz周期电平并检测回波一旦检测到有回波信号则输出回响信号的脉冲宽度与所测的距离成正比由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:us/58厘米或者us/148英寸;或是:距离高电平时间*声(340M/S/2建议测量期为60ms以上以防止发射信号对回响信号的影响。注此模块不宜带连接若要带电连先让模块的ND端先接否则会响模块的正常工作。测距时被测体的面积不少于05平方米且平面尽量要求整否则影响测量的结果。3.1.3显示模块选型显示模块可选择性比较大,可以是最原始的led灯组合指示显示,可以是点阵,可以用简单的LCD1602,12864等,在这里选择微雪公司生产的LCD1602,因为它相比led显示,显示更加细腻,相比12864或更高级的LCD,更节能,操作更简单。1602特性:1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字),+5V电压,对比度可调,内含复位电路提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能,有80字节显示数据存储器DDRAM,内建有192个5X7点阵的字型的字符发生器CGROM,8个可由用户自定义的5X7的字符发生器CGRAM。3.1.4时钟模块选型此模块的作用是在存储距离记录时,要同时记录发生的时间,当查看测距记录时才能知道其发生的时间,这个时间只能从时钟模块获得实时系统时钟;采用DALLAS公司推出DS1302时钟芯片,它使用很简单,且能满足要求,且有备用电池,主电源掉电后依然能正常工作。确保系统时间的正确性。DS1302的结构及工作原理:DS1302是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后备电源双电源引脚,同时提供了对后备电源进行涓细电流充电的能力。(1)引脚功能及结构DS1302的引脚排列,其中Vcc1为后备电源,VCC2为主电源。在主电源关闭的情况下,也能保持时钟的连续运行。DS1302由Vcc1或Vcc2两者中的较大者供电。当Vcc2大于Vcc1+0.2V时,Vcc2给DS1302供电。当Vcc2小于Vcc1时,DS1302由Vcc1供电。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc>2.0V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),后面有详细说明。SCLK为时钟输入端。下图为DS1302的引脚功能图:图3.3DS1302管脚图(2)数据输入输出(i/O)在控制指令字输入后的下一个SCLK时钟的上升沿时,数据被写入DS1302,数据输入从低位即位0开始。同样,在紧跟8位的控制指令字后的下一个SCLK脉冲的下降沿读出DS1302的数据,读出数据时从低位0位到高位7。3.1.5E2PROM模块选型由于该系统一般只存储最近一段时间的测距记录,数据量不是很大,所有,利用STC89C52RC自带的4KE2PROM[14]就行了,相比外接的E2PROM,STC89C52RC自带的E2PROM操作跟简单,访问更快,对于性能本身不是很高的STC89C52RC来说,访问速度显得很重要。而且简化了设计。3.1.6语音模块选型(蜂鸣器)这里采用启盛电子生产的QSI-3610蜂鸣器,用蜂鸣器作为语音模块,能完成语音提示报警功能,而且对资源占用少,这样的话SCM的工作效率就会更高。蜂鸣器驱动方式:由于自激蜂鸣器是直流电压驱动的,不需要利用交流信号进行驱动,只需对驱动口输出驱动电平并通过三极管放大驱动电流就能使蜂鸣器发出声音,很简单;单片机驱动他激蜂鸣器的方式有两种:一种是PWM输出口直接驱动,另一种是利用I/O定时翻转电平产生驱动波形对蜂鸣器进行驱动。PWM输出口直接驱动是利用PWM输出口本身可以输出一定的方波来直接驱动蜂鸣器。在单片机的软件设置中有几个系统寄存器是用来设置PWM口的输出的,可以设置占空比、周期等等,通过设置这些寄存器产生符合蜂鸣器要求的频率的波形之后,只要打开PWM输出,PWM输出口就能输出该频率的方波,这个时候利用这个波形就可以驱动蜂鸣器了。比如频率为2000Hz的蜂鸣器的驱动,可以知道周期为500μs,这样只需要把PWM的周期设置为500μs,占空比电平设置为250μs,就能产生一个频率为2000Hz的方波,通过这个方波再利用三极管就可以去驱动这个蜂鸣器了。而利用I/O定时翻转电平来产生驱动波形的方式会比较麻烦一点,必须利用定时器来做定时,通过定时翻转电平产生符合蜂鸣器要求的频率的波形,这个波形就可以用来驱动蜂鸣器了。比如为2500Hz的蜂鸣器的驱动,可以知道周期为400μs,这样只需要驱动蜂鸣器的I/O口每200μs翻转一次电平就可以产生一个频率为2500Hz,占空比为1/2duty的方波,再通过三极管放大就可以驱动这个蜂鸣器了。3.2系统电路设计单片机采用STC89C52RC。采用12MHz高精度的晶振,以获得较稳定的时钟频率,减少测量误差。单片机用P2.2端口输出超声波换能器所需的40KHz方波信号,用P2.1端口监听返回的回波信号。P0口用来作为显示器的数据输出端口;P2.0端口用来连接蜂鸣器;P1.0,P1.1,P1.2分别为实时时钟芯片DS1302的SCLK、I/O、RST管脚接口。3.2.1超声波模块电路设计图3.4超声模块电路图Trig为模块的信号发射端,Echo为回波信号端;当Trig收到一个持续1us的高电平时,模块自动发射超声波信号;当模块接收到回波信号时,Echo被置高电平,且持续时间就是从超声波发射到接收到回波的时间,处理器可根据高电平时间直接获得测距用的时间。3.2.2时钟模块电路设计图3.5DS1302模块电路图Y2是DS1302[24]的时钟振荡器,Battery是备用电源,当VCC电压低于Battery电压时,DS1302将自动转换成由备用电源供电,RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc>2.0V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向),SCLK为时钟输入端。3.2.3显示模块电路设计图3.6显示模块电路图V0为液晶显示器LCD1602[25]对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。E(或EN)端为使能(enable)端。D0~D7为8位双向数据端。3.2.4语音模块电路设计图3.7语音模块电路图NPN三极管8050的基极连接在单片机的P2.0脚上,当P2.0为高电平时,三极管导通,Beep蜂鸣器通电,发出报警声音,当P2.0置低电平时,三极管关断,蜂鸣器不响。三极管在这里起到放大作用。3.2.5电源电路设计图3.8电源电路图单片机电源(220v转5v)设计电源电路采用LM7805集成稳压器作为稳压器件,用典型接法,220V电源整流滤波后送入LM7805稳压,在输出端接一个470U和0.1U电容进一步滤除纹波,得到5V稳压电源。3.2.6系统电路设计总图图3.9系统电路总原理图P3.0为外部中断,外接开关S3,当S3切换时,能完成工作模式的切换;当系统上电正常工作时,LED灯会指示工作状态,P0口外接排阻。4超声波测距仪的软件设计超声波测距器的软件设计主程序由模式0和模式1两部分组成。模式0部分由超声波发射子程序、定时器子程序、计算距离子程序、显示子程序、报警子程序、实时时钟子程序和存储测距记录等子程序组成;模式1部分循环显示最近一段时间的测距记录。下面对超声波测距器的算法及本系统的各个部分程序逐一作介绍。4.1超声波测距器的算法设计dd图4.1超声测距示意图图示意了超声波测距的原理,即超声波发生器在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反射回来,就被超声波接收器所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。距离的计算公式为:d=(v*t)/2;(2)其中d为被测物与测距器的距离,v为声速。在使用时,如果温度变化不大,则可以认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测得超声波往返的时间t,即可求得距离。4.2程序结构图系统的程序结构图如下:图4.2程序结构图4.3主程序主程序首先是对系统环境初始化,包括设置定时器T0工作模式为16位定时器模式,开启外部中断0,初始化好时钟芯片DS1302和LCD1602,然后进入循环体。主程序流程图如下图4.3主程序流程图4.4外部中断子程序当模式切换开关按下时,外部中断0发生时,系统会发生工作的切换,外部中断子程序流程图如下:图4.4外部中断流程图4.5模式0子程序模式0负责正常的测距和相应的功能,当系统工作在模式0时,程序是一个小的死循环程序,先调用测距子程序->调用显示子程序->调用报警子程序->调用存储子程序–>返回循环首部。4.5.1测距子程序测距子程序是工作在模式0下面的,先开启超声波模块,把P2.2端口置高电平,让其自动发送40KHz的超声波信号,延时,关闭发射,等待从P2.1返回的回波信号,当回波信号到达时,开启定时器0,待返回信号结束,关闭定时器0,结束计时,根据定时器0里记录的时间和测距原理的公式,计算出距离S。其流程图如下:图4.5测距流程图4.5.2显示子程序1602的数据端口并行连接的是SCM的P0口,先设置好LCD的环境参数和准备好要写入的数据数组,因为一次只能写入一个字符;循环把数组里准备好的数据写入1602显示子程序的流程图如下:图4.6显示子程序流程图4.5.3语音模块子程序蜂鸣器的正端连接到SCM的P2.0端口,当SCM给P2.0端口以不同的频率置高低电平时,蜂鸣器会以不同的频率发出不同的声音报警报警子程序流程图如下:图4.7语音子程序流程图4.5.4存储子程序E2PROM用的是STC89C52RC自带的E2PROM,STC89C52RC已经给E2PROM分配好寄存器,可通过访问寄存器直接对E2PROM进行读写操作存储子程序流程图如下:图4.8存储子程序流程图4.6模式1子程序模式1的工作相对比较简单,只负责遍历显示存储在E2PROM里面的测距记录,完了以后回到模式0。模式1子程序流程图如下:图4.9模式1程序流程图结束语目前超声波测距已得到广泛应用,国内一般使用专用集成电路根据超声波测距原理设计各种测距仪器,但是专用集成电路的成本较高、功能单一。而以单片机为核心的测距仪器可以实现预置、多端口检测、显示、报警等多种功能,并且成本低、精度高、操作简单、工作稳定可靠。本文简要介绍了利用51系列单片机实现超声波测距的原理以及实现的方法。单片机其卓越的性能,本设计中得到了很好的体现,尤其在检测,控制领域中,具有以下特点:(1)小巧灵活,成本低,易于产品化,它能方便地组装成各种智能测试,控制设备及各种智能仪器表。(2)可靠性好,适应范围广,单片机芯片本身是按工业测控环境要求设计的,能适应各种恶劣的环境,这是其它原件无法比拟的。(3)易扩展,很容易构成各种规模的应用系统,控制功能强。单片机的逻辑控制功能很强,指令系统有各种控制功能所用的指令。(4)可以很方便地实现多机制分布式控制。在一个学期的设计和学习当中,我逐步了解了整个设计内容和过程,并且学到了很多新的东西。通过对实际工程的了解、设计不但使我加深了对理论知识的理解,对专业知识的全面认识,更重要的是将理论知识应用到了实践中,应用到了实际工程中,真正做到了学以致用、理论与实践相结合。同时,通过对设计中困难的克服,也锻炼了我的思考问题、解决问题的能力以及自学能力,在这次设计中我也对本专业前沿的一些知识和发展方向有了了解,开阔了我的眼界、扩大了我的知识面,这些都将为我以后的工作奠定良好的基础。在这次论文设计过程中,我学会了怎样去根据课题的要求去设计电路和调试电路。动手能力得到很大的提高。从中我发现自己并不能很好的熟练去使用我所学到的知识。在以后工作和学习中我要加强对使用电路的设计和选用能力。附录程序清单:/*************************头文件header.h************************/#ifndefHEADER_H#defineHEADER_H#include"REG52.h" #include<intrins.h>#defineucharunsignedchar#defineuintunsignedint//管脚定义#defineSPKP2^0;#defineTXP2^1#defineRXP2^2 #defineLCM_EP2^3 //定义LCD引脚#defineLCM_RWP2^4#defineLCM_RSP2.5#defineLCM_DataP0#defineBusy0x80//用于检测LCM状态字中的Busy标识#defineT_CLK P1^0 /*实时时钟时钟线引脚*/#defineT_IO P1^1 /*实时时钟数据线引脚*/#defineT_RST P1^2 /*实时时钟复位线引脚*///全局变量定义uintBlockSize=512; //flash每个扇区的大小uintADDR=0x2000; //flash扇区起始地址uintBlockOffset=0;ucharBlockFlag=0; //扇区标示,指定对那个扇区(1、2、3、4)进行操作,默认为第0扇区uintaddr=0;//ADDR+BlockFlag*BlockSize; uinttime=0;uintdistance=0;bit flag=0;bitmodel=1;unsignedcharRange[]="==RangeFinder==";//LCD1602显示格式unsignedcharASCII[13]="0123475689.-M";unsignedchartable[]="Distance:000.0cm";unsignedchartable1[]="!!!Outofrange";unsignedcharErr[]="Error!!";unsignedchardisbuff[4]={0,0,0,0}; //用于装距离的个十百千位(mm)unsignedcharinitTimeBuf[8]={00,00,13,28,05,02,12};//初始化时钟芯片的初始时间//flashDS1302.cvoidflashClear(unsignedintaddr);voidflashWrite(unsignedintaddr,unsignedchardat);unsignedcharflashRead(unsignedintaddr);voidflashClose();voidwriteByte_DS1302(unsignedchard);unsignedcharreadByte_DS1302(void);unsignedcharReadData_DS1302(unsignedcharucAddr);voidWriteData_DS1302(unsignedcharucAddr,unsignedcharucDa);voidsetTime_DS1302(unsignedchar*pClock);voidWriteTime_DS1302(unsignedchar*pSecDa);voidReadTime_DS1302(unsignedchar*pSecDa);voidStart_DS1302(void);voidwitedata_flash(unsignedchardistance);voidLCDdisplay(void);//chaoshen1602.cvoidDisplayOneChar(unsignedcharX,unsignedcharY,unsignedcharDData);voidDisplayListChar(unsignedcharX,unsignedcharY,unsignedchar*DData);unsignedintCount_display(void);voidbeep(unsignedintdistance);voidtimerInit(void);voidTimer_Count(void);voidLCMInit(void);voidDelay_Ms(unsignedintms);voidStartModule(void);#endif/***********************chaosheng1602.c******************/#include"header.h"/********************//写数据***************************/voidWriteDataLCM(unsignedcharWDLCM){ LCM_Data=WDLCM; LCM_RS=1; LCM_RW=0; LCM_E=0;//若晶振速度太高可以在这后加小的延时 LCM_E=0;//延时 LCM_E=1;}/*******************//写指令****************************/voidWriteCommandLCM(unsignedcharWCLCM){ LCM_Data=WCLCM; LCM_RS=0; LCM_RW=0; LCM_E=0; LCM_E=0; LCM_E=1; }/*********************//LCM初始化**************************/voidLCMInit(void){ LCM_Data=0; WriteCommandLCM(0x38,0);//三次显示模式设置,不检测忙信号 Delay_Ms(1); WriteCommandLCM(0x38,0); Delay_Ms(1); WriteCommandLCM(0x38,0); Delay_Ms(1); WriteCommandLCM(0x38,1);//显示模式设置,开始要求每次检测忙信号 WriteCommandLCM(0x08,1);//关闭显示 WriteCommandLCM(0x01,1);//显示清屏 WriteCommandLCM(0x06,1);//显示光标移动设置 WriteCommandLCM(0x0c,1);//显示开及光标设置}/******************//按指定位置显示一个字符*******************/voidDisplayOneChar(unsignedcharX,unsignedcharY,unsignedcharDData){ Y&=0x1; X&=0xF; //限制X不能大于15,Y不能大于1 if(Y){ X|=0x40;//当要显示第二行时地址码+0x40; } X|=0x80; //算出指令码 WriteCommandLCM(X,1);//发命令字 WriteDataLCM(DData);//发数据}/*****************//指定位置显示一串字符**********************/voidDisplayListChar(unsignedcharX,unsignedcharY,unsignedchar*DData){ unsignedcharListLength; ListLength=0; Y&=0x1; X&=0xF;//限制X不能大于15,Y不能大于1 while(DData[ListLength]>0x19)//若到达字串尾则退出 { if(X<=0xF)//X坐标应小于0xF { DisplayOneChar(X,Y,DData[ListLength]);//显示单个字符 ListLength++; X++; } }}/*********************/5ms延时***********************/voidDelay_Ms(unsignedintms){ unsignedintTempCyc=ms*1000; while(TempCyc--);}/*******************//计算距离并显示*********************/unsignedintCount_display(void){ unsignedlongS=0; StartModle(); //启动超声波模块,延时,关闭发射 while(RX==0); //等待返回信号 Timer_Count(); //计时 if(flag==1) //定时器T0溢出中断时,出错返回 { TH0=0; TL0=0; flag=0; DisplayListChar(0,0,Err); return-1; } time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.7)/10+10;//算出来是MM//声音的传播速度是340米每秒超声波发送到返回这个过程相当于走了两趟,//所以要除于2即340/2=1701us所走的路程是0.00017米51单片机采用12M晶振的时//定时器每加1个数用的时间是1us距离=(time*0.00017)单位是M化成毫米之后就是//(time*1.7)/10 if((S>=5000)||flag==1)//超出测量范围 { flag=0; DisplayListChar(0,1,table1); } else { disbuff[0]=S%10; disbuff[1]=S/10%10; disbuff[2]=S/100%10; disbuff[3]=S/1000; DisplayListChar(0,1,table); DisplayOneChar(9,1,ASCII[disbuff[3]]); DisplayOneChar(10,1,ASCII[disbuff[2]]); DisplayOneChar(11,1,ASCII[disbuff[1]]); DisplayOneChar(12,1,ASCII[10]); DisplayOneChar(13,1,ASCII[disbuff[0]]); } returnS/10; //转化成cm}/********************//启动超声模块**********************/voidStartModle() { TX=1; //启动模块 _nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_(); TX=0;}/*******************//距离小于100cm时报警*******************/voidbeep(unsignedintdistance) //单位为cm{ unsignedinttimes;//报警响铃次数根据times值不同确保每次响铃的总时间相同 unsignedintrate; //蜂鸣器频率单位ms if(distance>=100)//cm return; if(distance>50&&distance<100){ rate=50; //ms times=10; //响10次 } elseif(distance<50){ rate=10; //ms times=50; //响50次 } while(times--){ SPK=!SPK; Delay_Ms(rate); //距离不同延时不同 } SPK=0; //关闭蜂鸣器}/*********************//定时器初始化*************************/voidtimerInit(void){ TMOD=0x01; //设T0为方式1,GATE=1;工作在定时器模式EA=1; //开启总中断 ET0=1; //允许T0中断 EX0=1; //开启外部中断0 TR0=0; //计数器关闭TH0

温馨提示

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

评论

0/150

提交评论