智能垃圾箱的设计_第1页
智能垃圾箱的设计_第2页
智能垃圾箱的设计_第3页
智能垃圾箱的设计_第4页
智能垃圾箱的设计_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的智能垃圾箱设计I1绪论1.1研究背景随着现代化进程的日益推进,科技越来越发达,人们的生活水平也提高了,开始追求健康、和谐的生活环境,重视生活周边的环境卫生,因此环保产品与设备也应运而生。在公司、办公室或者是家庭中,垃圾的存放与分类经常是困扰我们的一个问题。无论是在公共场合还是家庭厨房的垃圾大都是没有盖或者有盖但需要人用手打开的,比如夏天的家庭厨房没有及时清理的垃圾放在垃圾桶里就可能会散发出刺鼻的异味。而医院的垃圾更是会滋生病毒,传播疾病。虽然国家早就提出了保护环境不乱丢垃圾以及废物资源回收再利用的倡导,但仍旧屡禁不止其主要原因是由于垃圾桶很不卫生,大多数人都不愿直接接触垃圾桶去扔垃圾,有的人甚至直接将垃圾丢在垃圾桶盖上或者垃圾桶周围,使得垃圾桶内“无垃圾”桶外“垃圾遍地”和资源再回收的现象变得十分困难。而大量堆积在外的垃圾还会发出刺鼻的异味,既污染了环境也增加了人与细菌接触的几率。与此同时垃圾中废弃金属物质的回收价值也很高。但目前对于废旧的金属物质的回收大都采用人工分类。由于废弃金属等物质与众多垃圾混杂在一起使得其回收起来既费时费力又不卫生,所现在很少有人会在这方面花时间,那么实现垃圾桶的自动开启闭合与金属的回收实现物尽其用,变废为宝就显的非常必要。1.2垃圾箱的现状与发展2011年3月23日,国务院总理温家宝主持召开国务院常务会议,把城市垃圾处理作为一个重点问题加以研究讨论。鉴于目前人们环保意识的淡薄以及对垃圾种类区分知识的缺乏,使得如今对垃圾分类处理回收变得十分困难。垃圾桶是人们生活中“藏污纳垢”的容器。垃圾桶是社会文化的一种折射。垃圾桶就使用场合可分为公共垃圾桶和家庭垃圾桶。就盛放垃圾形式可分为独立垃圾桶和分类垃圾桶。据调查,现在使用的垃圾箱主要存在以下问题:

1、垃圾桶对垃圾的密封效果不好,导致垃圾桶附近异味较大,并且极易滋生细菌、寄生虫等,对人们的健康造成较大的危害。

2、现有的垃圾桶不能自动分类处理桶内垃圾,通常有人为手动进行分类,浪费人力资源,危害人们的健康。

目前市场上各种各样的垃圾箱看了让人眼花缭乱,功能无非就是用脚压或者在根本就不用盖子的“露天”式垃圾箱,这些垃圾箱都不可避免的要与垃圾箱接触,不能满足人们高节奏的工作和生活需要。在计算机和各种传感技术高速发展的今天,各种智能仪器仪表,自动化设备也快速进入人们的日常生活中,各种智能机械设备为人类节省了不少的人力、财力资源,然而,以后智能化、自动化也将在各行各业得到更完美的应用,真正实现智能化社会。那么,自动感应分类智能垃圾箱也是发展的一种趋势。除传统垃圾箱外,目前市场中出现了不同种类的智能垃圾箱。现在市场上已经出现了一些技术成熟的智能垃圾箱,使用红外线等传感器件,当人们想仍垃圾时,手挡住传感器发出的电磁波或不可见光等,通过集成芯片检测到并控制垃圾箱的盖打开或关闭,从而实现智能化。如:中国浙江台州市的欧本电子有限公司(OUBEN)制造的智能感应垃圾桶。除感应垃圾箱外,还出现了一种语音提示垃圾桶,当垃圾桶装满时发出语音提醒人们及时清理,确保周边环境卫生。虽然这些产品已不用手自己开盖,也具备了一些语音功能显得更人性化,但离实现真正智能化还有些距离。1.3设计内容本次毕业设计主要是利用单片机设计并制作一套智能垃圾箱。该系统具有自动感应,能够给出可回收垃圾与不可回收垃圾的语音提示并自动开关的功能,能进行金属与非金属垃圾的简单分类。要求以单片机为控制核心,通过热释电传感器检测是否有人扔垃圾,并自动打开垃圾箱盖,扔完垃圾后再自动关闭;利用语音模块实现语音提示功能,利用电涡流传感器实现金属与非金属的简单分类。主要内容包括:热释电红外线传感器检测是否有人扔垃圾语音提示及语音命令的执行金属与非金属的检测电路步进电机驱动电路的设计1.4课题任务分析及实现针对本设计的主要任务,感应部分根据热释电红外线传感器输出的高低电平检测是否有垃圾要投入垃圾箱,当有垃圾投入时模块输出高电平,反之输出低电平。语音部分可以简单的分为语音输出和语音输入,即分别是语音播报和语音执行两部分,语音播报部分通过ISD4004播报事先录好的录音给出语音提示。语音执行部分则由LD3320实现语音接收并给出数字信号输出。分类部分由接近开关对金属与非金属输出的数字信号的不同实现金属与非金属的检测。电机驱动部分选用简单常用的来ULN2003模块,并且选用转角好控制的步进电机作为执行器。即当热释电传感器检测到有垃圾投入时将输出信号传给单片机,并给出语音提示,根据语音提示给出回答,通过LD3320将语音输入信号再次传递给单片机,单片机通过对信号的判断,控制电机1转动将箱盖打开,当垃圾放在平衡板时,通过电涡流传感器检测是否为金属垃圾,并将检测信号送给单片机,控制电机2的转动控制平衡板的倾斜达到分类的目的。实现模块:热释电红外线传感器输出数字信号进行放大后可直接传送给单片机。ISD4004模块可与52单片机连接使用,存储事先录好的语音。LD3320模块对语音回答进行采集,并输出数字信号给单片机。电涡流传感器检测后将输出数字信号传送给单片机。两个驱动模块在不同时刻驱动各自两个电机转动利用C语言软件编程,将数据信息通过单片机处理,通过各模块的配合实现一次智能垃圾箱的智能过程1.5论文内容及其安排本文主要阐述了基于STC89C52单片机的智能垃圾箱系统的硬件设计、软件设计、方案论证以及各类调试等内容。本次设计的内容可以分为三个单元。第一单元是硬件设计,包括方案的设计、元器件的选择等。具体的硬件电路包括热释电检测电路,电机驱动电路,金属检测电路,语音播报电路,语音执行电路,稳压电路,STC89C52单片机的外围电路等。在各个部分调试成功后,联调整个硬件电路,最后做出分析,得出结论。第二单元是软件设计,软件采用C语言编写,其思想是模块化设计,即各子模块独立设计,分别调试,最后联调整个程序,判断是否达到预期的要求,做出相应结论。第三单元在软硬件模块调试都成功的前提下,进行软、硬件联调,这是整个设计的关键,也是设计的难点所在。论文具体内容安排如下:第一部分简要介绍了该设计的研究背景、垃圾箱的现状与发展、主要任务分析及实现、论文内容及其安排;第二部分主要是整个设计的硬件以及软件的总体方案设计;第三部分具体介绍了硬件系统设计,包括单片机最小系统设计、热释电红外测量电路设计、语音电路设计、稳压电路设计、电机驱动设计以及金属检测电路设计;第四部分详细说明了软件设计,包括主程序设计、热释电感应子程序设计、语音识别子程序设计、语音播报子程序设计、电机驱动子程序设计、金属检测子程序设计;第五部分则针对硬件调试、软件调试和整机联调的过程和结果进行具体说明与分析。2系统总体分析与设计2.1总体方案设计本方案包括单片机系统、热释电红外线传感器模块、语音模块、金属检测模块、电机驱动模块、稳压模块。稳压模块是针对不同模块对电源的不同要求所设计的,保证整个系统的能量充足和工作时系统的稳定性。热释电红外线传感器模块、金属检测模块、语音播报模块和语音识别模块均与单片机系统相连,将输出信号传递给单片机。单片机再将控制信号传递给电机驱动模块控制电机转动。其具体工作过程为,通过热释电红外线传感器感应有垃圾投入信息,并将此信息传递给单片机,单片机接收该信息并控制语音模块进行播报工作,语音识别模块将输出信息再次传递给单片机,单片机接收信息后调用电机驱动模块驱动电机转动。结构框图如图2.1所示。电机驱动模块单片机电机驱动模块单片机系统热释电红外传感器语音识别模块语音识别模块语音播报模块语音播报模块金属检测模块金属检测模块图2.1系统框图2.2硬件方案设计(1)感应模块感应部分采用热释电红外传感器HS-SR501。该传感器是基于红外线自动控制模块,采用德国原装进口LHI778探头设计,灵敏度高,可靠性强,超低电压工作模式,广泛用于各类自动感应设备,尤其是干电池供电的自动控制产品。与热释电红外传感器相比红外线传感应模块感应角度小,感应距离较短,而超声波感应模块价格昂贵且感应角度小。所以热释电红外传感器最合适不过。语音模块语音部分分为语音播报和语音执行两部分。语音播报部分采用ISD4004语音模块。ISD4004模块工作电压为3V,单片录放时间为8~16分钟,音质好,适用于移动电话及其它便携式电子产品中。片内信息存于闪烁存贮器中,可在断电情况下保存100年,反复录音10万次。语音执行部分则采用LD3320语音识别模块。LD3320是一颗基于非特定人语音识别技术的语音识别/声控芯片。不需要用户进行录音训练。可动态编辑的识别关键词语列表:只需要把识别的关键词语以字符串的形式传送进芯片,即可以在下次识别中立即生效。内置高精度A/D和D/A通道:不需要外接AD芯片,只需要把麦克风接在芯片的AD引脚上;可以播放声音文件,并提供550mW的内置放大器。高准确度和实用的语音识别效果。(3)金属检测部分通过电涡流式传感器利用导电物体在接近这个能产生电磁场接近开关时,使物体内部产生涡流。根据这个涡流反作用到接近开关,使开关内部电路参数发生的变化,由此识别出有无导电物体移近,进而控制开关的通或段,实现金属与非金属的分类。(4)电机部分及其驱动由于本次设计对电机旋转角度有较高的要求,而直流电机虽然控制容易但是控制直流电机的旋转角度非常困难,而步进电机则可以很容易的达到相应的控制要求。所以电机部分采用步进电机作为本次设计的动力系统。电机驱动部分选择高耐压、大电流复合晶体管阵列,由七个硅NPN复合晶体管组成电机驱动芯片--ULN2003。内部包含四通道逻辑驱动电路。该芯片采用15脚封装。主要特点是:ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003工作电压高,工作电流大,灌电流可达500mA。ULN2003采用DIP—16或SOP—16塑料封装。2.3软件方案设计软件部分程序主要由C语言编写,感应模块感应到有垃圾投入信号时单片机控制垃圾箱盖的自动打开,并语音提示是否为可回收垃圾,若是则进行分类,将金属与非金属分开。若是不可回收垃圾则投入不可回收垃圾内。感应模块感应到信号消失后,垃圾箱盖将自动关闭。程序流程如图2.2所示。开开始系统初始化系统初始化是否有人扔垃圾 否是否有人扔垃圾是否可回收 是是否可回收 否是 是垃圾箱盖打开 垃圾箱盖打开是否是金属垃圾是否是金属垃圾是 否是分类到非金属垃圾分类到金属垃圾分类到非金属垃圾分类到金属垃圾垃圾箱盖关闭垃圾箱盖关闭图2.2软件流程图3硬件设计3.1单片机最小系统设计本系统所用的是由宏晶公司生产的STC89C52RC芯片,它是一种低功耗,高性能CMOS、8位单片机,片内含4KBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,该芯片兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的STC89C52RC可为许多嵌入式控制应用系统提供高性价比的解决方案。此外,STC89C52RC设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。本设计采用双列直插式STC89C52单片机,主要用到的I/O口是P1和P2,下面是这两个管脚的说明。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收,P1口还具有第二功能,可以通过对单片机进行设置,将P1口作为A/D转换口使用。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。当P2口用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。STC89C52的管脚排列图如图3.1所示:图3.1STC89C52单片机单片机最小系统的振荡频率直接影响单片机的处理速度,频率越大处理速度越快;其复位电路的极性电容大小直接影响单片机的复位时间,所用容值越大需要的复位时间越短本次设计所使用的单片机最小系统晶振采用11.0592Hz,复位电路极性电容采用30pF。搭建最小系统如下图:图3.2单片机最小系统3.2热释电红外测量电路设计热释电红外传感器大致可以分为热释电元件以及菲尼尔滤光片两部分。由于人体都有恒定的体温,一般在37度,所以会发出特定波长10μm左右的红外线,人体发射的10μm左右的红外线通过菲尼尔滤光片曾强后聚集到红外感应源上。红外感应源同城采用热释电元件,这种元件在接收到人体红外辐射温度发生变化时就会失去电荷平衡,向外释放电荷,后续电路经检测出来后就将信号转换为电流信号。即热释电红外线传感器当有人接近时,传感器输出高电平,反之输出低电平。传感器外观及参数如图3.3所示。图3.3传感器外观图1.全自动感应:当有人进入其感应范围则输入高电平,人离开感应范围则自动延时关闭高电平。输出低电平。2.光敏控制(可选):模块预留有位置,可设置光敏控制,白天或光线强时不感应。光敏控制为可选功能,出厂时未安装光敏电阻。如果需要,请另行购买光敏电阻自己安装。3.两种触发方式:L不可重复,H可重复。可跳线选择,默认为H。A.不可重复触发方式:即感应输出高电平后,延时时间一结束,输出将自动从高电平变为低电平。B.可重复触发方式:即感应输出高电平后,在延时时间段内,如果有人体在其感应范围内活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。4.具有感应封锁时间(默认设置:0.2秒):感应模块在每一次感应输出后(高电平变为低电平),可以紧跟着设置一个封锁时间,在此时间段内感应器不接收任何感应信号。此功能可以实现(感应输出时间和封锁时间)两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。5.工作电压范围宽:默认工作电压DC5V至20V6.微功耗:静态电流65微安,特别适合干电池供电的电器产品。7.输出高电平信号:可方便与各类电路实现对接。热释电红外传感器外接示意图如图3.4所示1:正电源2:高低电平输出3:电源负极H:可重复触发L:不可重复触发CDS:光敏控制图3.4热释电红外传感器原理图感应部分电路如图3.5所示。图3.5感应部分电路3.3语音电路的设计3.3.1语音播报电路设计语音播报电路部分采用ISD4004语音模块。ISD4004语音模块板载LM386音频放大器和STC15F104E单片机,使得它能够很方便的和其他单片机系统级联,不需要知ISD4004/4003底层命令,只要给板载单片机控制信号就能实现语音的录放。该部分电路设计采用ISD4004语音模块板载一枚STC89C52单片机实现语音播报功能。电源:(VCCA,VCCD)为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上,模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。地线:(VSSA,VSSD)芯片内部的模拟和数字电路也使用不同的地线。同相模拟输入(ANAIN+)这是录音信号的同相输入端。输入放大器可用单端或差分驱动。单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3KΩ电阻输入阻抗决定了芯片频带的低端截止频率。差分驱动时,信号最大幅度为峰峰值16mV,为ISD33000系列相同。反相模拟输入(ANAIN-)差分驱动时,这是录音信号的反相输入端。信号通过耦合电容输入,最大幅度为峰峰值16mV音频输出(AUDOUT)提供音频输出,可驱动5KΩ的负载。片选(SS)此端为低,即向该ISD4004芯片发送指令,两条指令之间为高电平。串行输入(MOSI)此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。串行输出(MISO)ISD的串行输出端。ISD未选中时,本端呈高阻态。串行时钟(SCLK)ISD的时钟输入端,由主控制器产生,用于同步MOSI和MISO的数据传输。数据在SCLK上升沿锁存到ISD,在下降沿移出ISD。中断(/INT)本端为漏极开路输出。ISD在任何操作(包括快进)中检测到EOM或OVF时,本端变低并保持。中断状态在下一个SPI周期开始时清除。中断状态也可用RINT指令读取。OVF标志指示ISD的录、放操作已到达存储器的未尾。EOM标志只在放音中检测到内部的EOM标志时,此状态位才置1。行地址时钟(RAC)漏极开路输出。每个RAC周期表示ISD存储器的操作进行了一行(ISD4004系列中的存贮器共2400行)。该信号175ms保持高电平,低电平为25ms。快进模式下,RAC的218.75μs是高电平,31.25μs为低电平。该端可用于存储管理技术。外部时钟(XCLK)本端内部有下拉元件。芯片内部的采样时钟在出厂前已调校,误差在+1%内。商业级芯片在整个温度和电压范围内,频率变化在+2.25%内。工业级芯片在整个温度和电压范围内,频率变化在-6/+4%内,此时建议使用稳压电源。若要求更高精度,可从本端输入外部时钟(如前表所列)。由于内部的防混淆及平滑滤波器已设定,故上述推荐的时钟频率不应改变。输入时钟的占空比无关紧要,因内部首先进行了分频。在不外接地时钟时,此端必须接地。自动静噪(AMCAP)当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于养活无信号(静音)时的噪声。通常本端对地接1mF的电容,构成内部信号电平峰值检测电路的一部分。检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。大信号时,自动静噪电路不衰减,静音时衰减6dB。1mF的电容也影响自动静噪电路对信号幅度的响应速度。本端接VCCA则禁止自动静噪。图3.6ISD4004引脚图图3.7为语音播报电路图图3.7语音播报电路3.3.2语音执行电路设计LD3320芯片是一款“语音识别”专用芯片,由ICRoute公司设计生产。该芯片集成了语音识别处理器和一些外部电路,包括AD、DA转换器、麦克风接口、声音输出接口等。本芯片在设计上注重节能与高效,不需要外接任何的辅助芯片如Flash、RAM等,直接集成在现有的产品中即可以实现语音识别/声控/人机对话功能。并且,识别的关键词语列表是可以任意动态编辑的。管脚分布图如图3.8所示。图3.8LD3320管脚分布图主要特色功能:非特定人语音识别技术:不需要用户进行录音训练可动态编辑的识别关键词语列表:只需要把识别的关键词语以字符串的形式传送进芯片,即可以在下次识别中立即生效。比如,用户在51等MCU的编程中,简单地通过设置芯片的寄存器,把诸如“你好”这样的识别关键词的内容动态地传入芯片中,芯片就可以识别这样设定的关键词语了。真正单芯片解决方案:不需要任何外接的辅助Flash和RAM,真正降低系统成本。内置高精度A/D和D/A通道:不需要外接AD芯片,只需要把麦克风接在芯片的AD引脚上;可以播放声音文件,并提供550mW的内置放大器。高准确度和实用的语音识别效果支持用户自由编辑50条关键词语在同一时刻,最多在50条关键词语中进行识别,终端用户可以根据场景需要,随时编辑和更新这50条关键词语的内容。语音识别ASR技术,是基于关键词语列表识别的技术。只需要设定好要识别的关键词语列表,并把这些关键词语以字符的形式传送到LD3320内部,就可以对用户说出的关键词语进行识别。不需要用户作任何地录音训练。语音识别ASR现实意义:ASR技术最重要的现实意义就在于提供了一种脱离按键,键盘,鼠标的基于语音的用户界面VUI:VoiceUserInterface。使得用户对于产品的操作更快速,更自然。非特定人语音识别技术ASR,是对几十G的语音数据经语言学家语音模型分析,科学家建立数学模型,并经过反复训练提取基元语音的细节特征,以及提取各基元间的特征差异。可以得到在统计概率最优化意义上的各个基元语音特征。最后才由资深工程师将算法以及语音模型转化为硬件芯片以应用在嵌入式系统中。基于领先的语音识别核心引擎,经过在各大主流手机产品中三年来超过一千万份的量产检验,LD3320提供了可以真正实用的语音识别/声控功能。ASR技术是基于关键词语列表识别的技术。每次识别的过程,就是把用户说出的语音内容,通过频谱转换为语音特征,和这个关键词语列表中的条目进行一一匹配,最优匹配的一条作为识别结果。比如在手机的应用中,这个关键词语列表的内容就是电话本中的人名/手机的菜单命令/T卡中的歌曲名字。不论这个列表的条目内容是什么,只需要用户设置相关的寄存器,就可以把相应的待识别条目内容以字符形式传递给识别引擎。LD3320可以识别列表中的关键词,用户说的语音可以是这个列表中任意的关键词语,而且不需要用户在识别前进行任何训练。识别引擎不关心关键词语列表中的关键词语的内容,可以是命令,人名,歌曲名字,操作指令等等任何的汉字字符串。每条关键词语最大可以支持的字数,从算法角度是限制在30字以内。但是从实际情况来看,用户一口气说超过8个字以上的条目时,几乎肯定会出现说错字/说漏字/说多字/打嗝/停顿等情况,这些情况都会严重影响识别并造成识别错误。因而一般来说,如果要获得理想的识别效果,建议每条关键词语的字数不要过长,避免影响效果。图3.9LD3320电路图3.4稳压电路的设计本次电路设计中由于要驱动两个步进电机转动所需电源为5V,其他模块都需要5V电源供电,即将9V电源转换为5V电源,即可保证各个模块能量的需求。电子产品中,常见的三端稳压集成电路有正电压输出的78

××

系列和负电压输出的79××系列。顾名思义,三端IC是指这种稳压用的集成电路,只有三条引脚输出,分别是输入端、接地端和输出端。用78/79系列三端稳压IC来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便,而且价格便宜,电压转换采用三端稳压集成芯片LM7805LM7805引脚图如图3.10所示图3.10LM7805引脚图9V电压源通过LM7805芯片输出5V电源后,并另引出5V电压为电机等提供动力资源。稳压电路如图3.11所示:图3.11稳压电路电压变压后通过LM7805输入端输入9V电压,从输出端输出5V稳定电压共给单片机使用。3.5电机驱动电路设计电机驱动部分选择高耐压、大电流复合晶体管阵列,由七个硅NPN复合晶体管组成电机驱动芯片--ULN2003。内部包含四通道逻辑驱动电路。该芯片采用15脚封装。主要特点是:ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。ULN2003工作电压高,工作电流大,灌电流可达500mA,并且能够在关态时承受50V的电压,输出还可以在高负载电流并行运行。ULN2003采用DIP—16或SOP—16塑料封装。且ULN2003接触较多,比较了解,而且资料查找方便。引脚1至引脚7:CPU脉冲输入端,引脚8:接地。引脚9:该脚是内部7个续流二极管负极的公共端,各二极管的正极分别接各达林顿管的集电极。用于感性负载时,该脚接负载电源正极,实现续流作用。如果该脚接地,实际上就是达林顿管的集电极对地接通。引脚10至引脚16:脉冲信号输出端。图3.12ULN2003引脚图ULN2003内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器。它是双列16脚封装,NPN晶体管矩阵,最大驱动电压=50V,电流=500mA,输入电压=5V,适用于TTLCOMS,由达林顿管组成驱动电路。ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,它的输出端允许通过电流为200mA,饱和压降VCE约1V左右,耐压BVCEO约为36V。用户输出口的外接负载可根据以上参数估算。采用集电极开路输出,输出电流大,故可直接驱动继电器或固体继电器,也可直接驱动低压灯泡。通常单片机驱动ULN2003时,上拉2K的电阻较为合适,同时,COM引脚应该悬空或接电源。ULN2003电机驱动电路图如下:图3.13ULN2003A电路图单片机通过控制P0.0、P0.1、P0.2、P0.3引脚的高低电平状态,控制电机驱动芯片ULN2003的1C、2C、3C、4C引脚的高低电平状态,进而控制步进电机四相的高低电平状态,来控制电机按预设节拍进行转动。3.6金属检测电路设计该部分利用LJ13a8电涡流传感器进行金属与非金属的检测。它是利用导电物体在接近这个能产生电磁场接近开关时,使物体内部产生涡流。这个涡流反作用到接近开关,使开关内部电路参数发生变化,由此识别出有无导电物体移近,进而控制开关的通或断。这种接近传感器所能检测的物体必须是导电体。根据法拉第电磁感应原理,块状金属导体置于变化的磁场中或在磁场中作切割磁力线运动时(与金属是否块状无关,且切割不变化的磁场时无涡流),导体内将产生呈涡旋状的感应电流,此电流叫电涡流,以上现象称为电涡流效应。而根据电涡流效应制成的传感器称为电涡流式传感器。电涡流传感器原理如图3.14所示图3.14电涡流传感器原理图电涡流传感器的电路如图3.15所示:图3.15电涡流传感器的电路图电涡流传感器的OUT引脚与89C52单片机的P1.3引脚相连,当电涡流传感器检测到金属时,其OUT引脚输出低电平,则与OUT相连的单片机P1.3引脚也为低电平。单片机检测P1.3引脚电平进行金属与非金属的判别。软件设计4.1主程序设计当程序开始执行时,先进行定时器初始化和各传感器与单片机连接引脚初始化,接着热释电红外传感器检测是否有人靠近,如果有人靠近则语音模块播报“可回收垃圾还是不可回收垃圾”,然后使语音识别模块延时等待人的回应,如果人回答是“可回收垃圾”则可回收垃圾指示灯亮,接着关闭语音识别模块,然后电机驱动箱盖打开,接着等待垃圾放入检测处,如果检测处垃圾被电涡流传感器检测为金属垃圾,则语音播报“金属垃圾”并将垃圾倒入金属筐;否则语音播报“非金属垃圾”并将垃圾放入非金属筐。之后电机驱动关闭箱盖,程序回到检测有人靠近时程序处。开始开始电机驱动打开箱盖电机驱动打开箱盖定时器初始化定时器初始化等待垃圾放入检测处延时3秒等待垃圾放入检测处延时3秒端口初始化端口初始化是否金属垃圾(电涡流传感器检测)是否金属垃圾(电涡流传感器检测)是否有人靠近(热释电红外传感器识别)是否有人靠近(热释电红外传感器识别) NN延时2秒语音播报“非金属垃圾”语音播报(金属垃圾)语音播报“可回收垃圾还是不可回收垃圾”延时2秒语音播报“非金属垃圾”语音播报(金属垃圾)语音播报“可回收垃圾还是不可回收垃圾”放入非金属筐放入金属筐关闭语音识别模块放入非金属筐放入金属筐关闭语音识别模块使语音识别模块工作使语音识别模块工作不可回收垃圾灯亮等待人回应延时9秒不可回收垃圾灯亮等待人回应延时9秒电动机关闭箱盖电动机关闭箱盖是否回收垃圾 N是否回收垃圾Y可回收垃圾指示灯亮可回收垃圾指示灯亮关闭语音识别模块关闭语音识别模块图4.1主程序流程图4.2热释电感应子程序设计热释电感应程序首先进行初始化,即将传感器信号输出引脚置低电平。当有人靠近垃圾箱时,热释电传感器信号输出引脚置高电平,否则热释电传感器信号输出引脚置低电平。开始开始初初始化是否有人靠近 N Y点亮指示灯点亮指示灯标志位置标志位置1返返回图4.2热释电感应子程序流程图4.3语音识别模块设计语音识别模块先进行端口的初始化,语音识别初始化,然后开始检测52单片机给语音识别模块的使能信号是1,如果不为1则继续检测使能信号,否则检测是否有人的声音进入模块,有的话进行声音与预设声音的比对,如果是可回收垃圾的声音,则可回收垃圾指示引脚置1,否则不可回收引脚置1。开开始初初始化语音识别使能引脚置1吗 N语音识别使能引脚置1吗是否有人的声音 Y是否有人的声音 N Y比比对声音是否为可回收垃圾的声音是否为可回收垃圾的声音 N不可回收垃圾指示引脚置1可回收垃圾指示引脚置1 Y不可回收垃圾指示引脚置1可回收垃圾指示引脚置1返返回图4.3语音识别模块流程图4.4语音播报子程序设计先向语音模块1X串行方式发送POWERVP(上电)命令Qp0X20,接着延时等待50ms,然后发送放音地址的SETPLAY命令,之后发送PLAY命令即0XE0,这样语音模块开始从放音地址开始播放声音。开开始发POWERVP命令发POWERVP命令等待等待TPVP(上电延时)发放音地址的发放音地址的SETPLAY命令发发PLAY命令返返回图4.4语音播报子程序流程图4.5电机驱动子程序设计首先对定时器初始化并打开定时器,开始计时,然后设定电机的初始状态为设定角度。由于本步进电机采用4拍制模式运行,所以步进电机先转动第一步并延时5秒,然后转动第二步并延时5毫秒,接着转动第三步并延时5毫秒,最后转动第四步并延时5毫秒。如果此时定时器计时时间没有到则返回第一步重新开始执行转动步骤,否则程序返回。图4.5电机驱动子程序流程图4.6金属检测子程序设计首先进行初始化使传感器处于正常工作状态之下,然后判断是金属垃圾吗,如果传感器判断为金属垃圾则送低电平信号给单片机,否则送高电平信号给单片机。开始开始初初始化是否为金属 N是否为金属Y Y电机正转电机反转电机正转电机反转返返回图4.6金属检测子程序流程图软硬件调试调试通常包括硬件、软件调试以及整体联调。但硬件和软件的设计是彼此独立的,因此在硬件完成之前就应进行软件调试,而硬件也是在无完整软件条件下调试的。但仍需对硬件、软件进行独调,解决各类调试的问题。在完成所有硬软件设计后,便要对硬、软件进行联合调试。调试的过程就是检查程序的运行方式和结果是否满足设计要求,在整个调试过程中出现了以下问题,如程序设计的逻辑错误、硬件焊接错误等。以下内容详细地介绍了硬件调试、软件调试以及软硬联调的过程,并阐述了相应的结果分析。5.1软件调试软件调试是在Proteus软件中模拟相应的电路,并且通过Keil软件将程序加载到Proteus软件中进行调试,并修改其逻辑错误。Proteus

提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。对于单片机硬件电路和软件的调试,Proteus

提供了两种方法:一种是系统总体执行效果,一种是对软件的分步调试,看具体的执行情况。对于总体执行效果的调试方法,只需要执行debug菜单下的execute菜单项或F12快捷键启动执行,用debug菜单下的pauseanimation菜单项或pause键暂停系统的运行;或用debug菜单下的stopanimation菜单项或shift-break组合键停止系统的运行。对于软件的分步调试,应先执行debug菜单下的start/restartdebugging菜单项命令,此时可以选择stepover、stepinto和stepout命令执行程序,执行的效果是单句执行、进入子程序执行和跳出子程序执行。在执行了start/restartdebugging命令后,在debug菜单的下面要出现仿真中所涉及到的软件列表和单片机的系统资源等,可供调试时分析和查看。图4.1仿真图5.2硬件调试硬件部分主要有单片机、感应电路、金属检测电路、电机驱动电路、语音电路组成。硬件电路板的焊接是建立在仿真软件成功的基础之上的,尤其是在仿真时选择电容及电阻时,需要不断的调整,以确保元器件能正常工作。其次检查电路板是否有断路、短路虚焊情况。最后当焊接好的电路板接通电源的时候,观察主要元器件是否工作,具体方法是通过万用表测量各个模块输出信号是否正确。5.3联合调试在完成软硬件各自的调试之后,再将软硬件进行联调,在调试过程中,发现问题,解决问题,继续完善此设计系统。5.4测试结果及分析在实际的软硬件联调过程中难免会出现一些故障,这就需要通过不断的调试,查找其中的原因,再一个一个的排除,最后实现软硬件联调成功。完成本次设计题目的要求。(1)感应电路有输出感应信号,与单片机P1.0口相连后,不工作。原因分析:单片机P1.0口有上拉电阻,感应模块输出电流太小不足以驱动P1.0口工作。解决方案:输出模块输出信号与单片机直接加入一个SS8050三极管将输出信号放大即可。(2)同时驱动两个步进电机,电机不动。原因分析:5v电压太小不足以提供足够能量驱动两个电机转动。解决方案:接入稳压电路,即可实现5v电压又同时可以实现9v电压满足不同电路的需求。(3)检测金属时,接近开关时好时坏。原因分析:接近开关检测时,需要物体与接近开关距离非常接近,本次所以接近开关要求检测距离<4mm。解决方案:近距离检测。结论本次设计采用单片机STC89C52作为主控系统,控制各个模块协调配合共同完成可自动感应,给出语音提示并根据提示自动操作分类的智能垃圾箱设计。利用热释电红外线传感器检测是否有垃圾要投入垃圾箱。语音部分可以简单的分为语音输出和语音输入,即分别是语音播报和语音执行两部分,语音播报部分通过ISD4004播报事先录好的录音给出语音提示。语音执行部分则由LD3320实现语音接收并给出数字信号输出。分类部分由电涡流传感器对金属与非金属输出的数字信号的不同实现金属与非金属的检测。电机驱动部分选用简单常用的来ULN2003模块,并且选用转角好控制的步进电机作为执行器。在实际的软硬件联调过程中难免会出现一些故障,这就需要通过不断的调试,查找其中的原因,再一个一个的排除,最后实现软硬件联调成功。由于时间问题,本次设计略显仓促,本设计虽然已不用手动开盖,并且具备了一些语音功能及简单的分类,但离实现真正智能化还有些距离。参考文献李丽宏,谢克明.液位自动检测的现状与发展[J].太原理工大学学报,2001,32(4)王海军.油量表测试系统的设计[J].计测技术,2000,16(17)阎石.数字电子技术基础[M].北京:高等教育出版社,2006,5(4)童诗白,华成英.模拟电子技术基础[M].北京:高等教育出版社,2001,3(12)张毅刚,刘杰.单片机原理及应用[M].哈尔滨:哈尔滨工业大学出版社,2004,2(7)马忠梅,张凯,马岩等.单片机的C语言应用程序设计[M].北京:北京航空航天大学出版社,2007,7(15)陈涛.单片机应用及C51程序设计[M].北京:机械工业大学出版社,2008,1(14)徐爱钧,郭秀华.KeilCx51V7.0单片机高级语言编程与µVision2应用实践[M].北京:电子工业出版社,2004,17(6)颜拥军,刘振宇,刘立,许刚理.基于ISD4004语音芯片的语言学习机的设计.微计算机信息.2004,7(15)殷苏民,王滨,唐通鸣.ISD4004语音芯片的内部存储信息管理.南通工学院学报(自然科学版).2003,1(16)高艳.ISD4004语音芯片在电话远程控制系统中的应用科技创新导报.2011,9(8)张劲.利用AT89S52单片机控制步进电机.常州工程职业技术学院学报.2008,2(18)唐国栋,高云国,基于L297/L298芯片步进电机的单片机控制.微计算机信息.2006,34(3)刘国永,陈杰平.单片机控制步进电机系统设计.安徽技术师范学院学报.2002,4(9)何希才.常用传感器应用电路的设计与实践[M].北京:科学出版社.2007致谢经过了长达四个月的毕业设计,我的感触良多。现表述如下。首先非常感谢我的毕设老师——高云红老师,老师的博学、诲人不倦的教导、耐心以及幽默感都让我时刻享受着做毕业设计的过程。感谢老师对我的精神、技术上的支持和引导。其次,在整个做毕业设计的过程中,我也遇到了前所未有的、突如其来的麻烦与问题。比如,刚开始对硬件电路不感兴趣,学习效率低,对C语言不精通,不够熟练;以及在设计电容传感器时的不解、困惑和迷茫;此外还有临近最后的交报告答辩之类的过程中,处理与工作的冲突,克服工作后的疲惫,整理心情和精神去为毕业而奋斗。同样,我也是很享受着这个过程的。脚下的路因进取而平坦,心中的梦想因拼搏而成真。毕业设计是四年来整个大学的最后一关。四年来我们经历了学习了成长了那么多,而在这最后一搏中,我们又平添了认知、增长了见识、开拓了视野、创新了思维。感谢母校,感谢老师,感谢同学们。附录Ⅰ硬件电路图附录Ⅱ元器件清单序号器件型号数量1单片机89C521个2热释电红外传感器HC-SR-5011个3电涡流传感器LJ13a81个4四相步进电机28BYJ-482个5语音播报模块ISD40041个6语音模块LD33201个7电机驱动模块ULN20032个89v电池1个9三端稳压芯片78051个10电解电容10uf2个11电容104瓷片3个12电阻470R4个13导线若干附录Ⅲ程序清单/////////主程序清单/////////#include"config.h"#include<intrins.h>#include<1602.h>#include<ISD4004.h>//ucharstep1[]={0x90,0x80,0xc0,0x40,0x60,0x20,0x30,0x10}; //8拍金属与非金属电机ucharcodestep1[4]={0x80,0x40,0x20,0x10}; //8拍金属与非金属电机ucharcodestep2[4]={0x10,0x20,0x40,0x80}; ucharcodestep3[4]={0x08,0x04,0x02,0x01}; //8拍金属与非金属电机ucharcodestep4[4]={0x01,0x02,0x04,0x08}; //ucharstep2[]={0x90,0x80,0xc0}; //8拍箱盖电机uintt=0;uchart1=0;uchark;//////////////////////////////////////////////////////voidDelay_50us(uinti){ ucharj; for(;i>0;i--) for(j=19;j>0;j--);}/////////////打开垃圾箱盖/////////////////////////////////voidopen_garbageBin(){ TR0=1;//开启定时器0 while(t<20000) //电机转2s { for(k=0;k<4;k++) //打开箱盖 { P2=step2[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动 Delay_50us(100); } } TR0=0;//关定时器0 t=0;}/////////////关闭垃圾箱盖/////////////////////////////////voidclose_garbageBin(){ TR0=1;//开启定时器0 while(t<20000) //转2s { for(k=0;k<4;k++) //关箱盖 { P2=step1[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动 Delay_50us(100); } } TR0=0;//关定时器0 t=0;}/////////////金属垃圾倒入金属箱/////////////////////////////////voidjinshu_garbageBin(){ TR0=1;//开启定时器0 while(t<850) //电机转2s { for(k=0;k<4;k++) //投入金属箱 正转 { P0=step3[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动 Delay_50us(100);//Delay_50us(100); } } TR0=0;//关定时器0 t=0; Delay_50us(20000);//延时1秒等垃圾落入箱内 TR0=1;//开启定时器0 while(t<850) //电机转2s { for(k=0;k<4;k++) //投入非金属箱 反转 { P0=step4[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动 Delay_50us(100);//Delay_50us(100); } } TR0=0;//关定时器0 t=0;}/////////////非金属垃圾倒入非金属箱/////////////////////////////////voidfeijinshu_garbageBin(){ TR0=1;//开启定时器0 while(t<850) //电机转2s { for(k=0;k<4;k++) //投入非金属箱 反转 { P0=step4[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动 Delay_50us(100);//Delay_50us(100); } } TR0=0;//关定时器0 t=0; Delay_50us(20000);//延时1秒等垃圾落入箱内 TR0=1;//开启定时器0 while(t<850) //电机转2s { for(k=0;k<4;k++) //投入金属箱 正转 { P0=step3[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动 Delay_50us(100);//Delay_50us(100); } } TR0=0;//关定时器0 t=0;}////////////////////////////////////////////////////////voidmain(){ TMOD=0X01;/*设定定时器T0的工作模式为1*/ TH0=(65536-1000)/256;/*装入定时器的初值高8位,计数1000次溢出*/ TL0=(65536-1000)%256;/*装入定时器的初值低8位,计数1000次溢出*/ EA=1;/*开总中断*/ ET0=1;/*定时器0允许中断*/ TR0=0;/*关定时器0*/ end_flag=0; //垃圾箱一次流程结束信号1:结束0:没结束 t=0; en_ldc=0; //语音识别模块使能信号1:使能0:不使能 end_flag=1; //垃圾箱一次流程结束信号1:结束0:没结束 while(1) { Delay_50us(60000); while(R==1) //有人靠近 { Delay_50us(60000);//延时3秒 if(R==1) //再次判断确实有人 { playsound(0); //问:可回收垃圾还是不可回收垃圾? en_ldc=1; //语音识别模块使能信号1:使能0:不使能 end_flag=0; //垃圾箱一次流程结束信号1:结束0:没结束 Delay_50us(60000);//延时3秒等待人的语音回答 Delay_50us(60000);//延时3秒等待人的语音回答 Delay_50us(60000);//延时3秒等待人的语音回答 Delay_50us(60000);//延时3秒等待人的语音回答 if(K==1) //判断从语音识别模块来的可回收垃圾信号K=1:可回收垃圾 { open_garbageBin();//打开垃圾箱盖 Delay_50us(60000);//延时1秒等垃圾放入测试台上 if(DWL==0) //电涡流传感器判断垃圾是金属垃圾还是非金属垃圾 0:金属垃圾 1:非金属垃圾 { playsound(1); //播报金属垃圾 Delay_50us(100); //等垃圾落入垃圾箱 jinshu_garbageBin();//金属垃圾倒入金属箱 Delay_50us(100); //等垃圾落入垃圾箱 close_garbageBin();//关闭垃圾箱盖 en_ldc=0; //语音识别模块使能信号1:使能0:不使能 end_flag=1; //垃圾箱一次流程结束信号1:结束0:没结束 }else { //非金属垃圾 playsound(2); //播报非金属垃圾 Delay_50us(100); //等垃圾落入垃圾箱 feijinshu_garbageBin();//非金属垃圾倒入非金属箱 Delay_50us(100); //等垃圾落入垃圾箱 close_garbageBin();//关闭垃圾箱盖 en_ldc=0; //语音识别模块使能信号1:使能0:不使能 end_flag=1; //垃圾箱一次流程结束信号1:结束0:没结束 } } else{ en_ldc=0; //语音识别模块使能信号1:使能0:不使能 end_flag=1; //垃圾箱一次流程结束信号1:结束0:没结束 if(BK==1);//判断是不可回收垃圾时 执行一次空操作 } } } }}voidtimer0()interrupt1{ TH0=(65536-1000)/256; TL0=(65536-1000)%256; t++;t1++; }// TR0=1;//开启定时器0// while(t<800) //电机转2s// {// for(k=0;k<4;k++) //投入金属箱 正转// {// P0=step3[k];//把电机的转动数组给电机驱动芯片ULN2003使电机转动// Delay_50us(100);//Delay_50us(100);// }// }// TR0=0;//关定时器0// t=0;// while(1);///////////ISD4004语音播放部分/////////////////////////////////当按下key1键时,从指定地址开始录音///当按下key2键时,从指定地址开始放音/// 当按下key3键时,停止当前的操作/// 程序中的录放停部分已做成子函数,可以直接调用,只需要输入录音的地址就行//录音地址的设定与芯片型号有关系,以ISD4004-16为例,ISD40044-16录音时间为16//分钟,即16*60=960S, //根据4004的资料,960秒可分为2400段,1段的时间为960/2400=0.4S,也就是1S的段数为//2.5段,如要要录5秒,5/0.4=12.5段=13段,从00H--0CH,本程序中每段为30S,即30/0.4=4BH,//以ISD4004-8为例,ISD40044-8录音时间为8//分钟,即8*60=480S, 根据4004的资料,480秒可分为2400段,1段的时间为480/2400=0.2S,也就是1S的段数为//5段,如要要录5秒,5/0.2=25段,从00H--19H,//实验使用注意,按录音键,要切换到放音时,可按停止再放音,也可以先按一下放音键,再按一次放音键,那可//原因:本程序在放音前,没有做停止和下电处理,感兴趣的朋友可以直接到停止部分加到放音子函数中。#include<reg51.h>#include<intrins.h>#defineucharunsignedchar#defineuintunsignedint////////定义放音命令,定义常量//////#defineISDPOWERUP0X20//ISD4004上电#defineISDSTOP0X10//ISD4004下电#defineOPERSTOP0X30//ISD4004停止当前操作#definePLAYSET0XE0//ISD4004从指定地址开始放音#definePLAYCUR0XF0//ISD4004从当前地址开始放音#defineRECSET0XA0 //ISD4004从指定地址开始录音#defineRECCUR0XB0 //ISD4004从当前地址开始录音//sbitSS=P2^1;//LOWISACTIVELY//sbitMOSI=P2^0;//sbitMISO=P3^7;//sbitSCLK=P3^6;sbitSS=P2^7;//LOWISACTIVELYsbitMOSI=P2^6;sbitMISO=P2^5;sbitSCLK=P2^4;//sbitK1=P1^0;//sbitK2=P1^1;//sbitK3=P1^2;sbitK1=P3^5;sbitK2=P3^6;sbitK3=P3^7;sbitLED1=P1^5;sbitLED2=P1^6;voiddelayms(ucharms);uintaddr;////全局变量//// 放音地址 uintaddw;////全局变量//// 发音地址 ////////////////放音部分子程序,放音地址由ADDR决定////voidplay(){ uinty; SS=0; MOSI=0;//发送开始 SCLK=0; for(y=0;y<8;y++)//发送0X20给ISD4004即上电 { SCLK=0; if((ISDPOWERUP>>y)&0x01)MOSI=1;////ISD4004上电 elseMOSI=0; _nop_(); _nop_(); _nop_(); SCLK=1; _nop_(); _nop_(); _nop_(); }//发送结束 SS=1;//上电结束 delayms(50); SS=0; MOSI=0;//发送地址 SCLK=0; for(y=0;y<16;y++)//先发送两个字节的放音地址 { SCLK=0; if((addw>>y)&0x01)MOSI=1; elseMOSI=0; _n

温馨提示

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

评论

0/150

提交评论