iir与fir滤波器设计与比较_第1页
iir与fir滤波器设计与比较_第2页
iir与fir滤波器设计与比较_第3页
iir与fir滤波器设计与比较_第4页
iir与fir滤波器设计与比较_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

DSP课程设计实验报告FIR与IIR滤波的DSP实现以及二者的比较成绩工程设计50报告20答辩30总分评语指导教师签字日期目录一、设计任务书2二、设计内容2三、设计方案、算法原理说明2四、程序设计、调试与结果分析11五、设计(安装)与调试的体会32六、参考文献34一、设计任务书在信号与信息处理中,提取有用信息就要对信号进行滤波。利用DSP可以实时地对信号进行数字滤波。本设计要求利用DSP的DMA方式进行信号采集和信号输出,同时对外部输入的信号进行数字滤波。在滤波时同时用FIR与IIR滤波器进行滤波,并比较二者的区别。二、设计内容(1)对DMA进行初始化;(2)对A/D、D/A进行初始化;(3)编写DMA中断服务程序,实现信号的实时滤波;(4)利用CCS信号分析工具分析信号的频谱成分,确定滤波器的参数,利用MATLAB设计数字滤波器,提取滤波器参数;(5)设计数字滤波算法,或调用DSPLIB中的滤波函数,实现对信号的FIR滤波。(6)比较加不同窗和阶数时FIR滤波器的滤波效果;(7)设计数字滤波算法,或调用DSPLIB中的滤波函数,实现对信号的IIR滤波。(8)比较FIR数字滤波器与IIR数字滤波器的效果三、设计方案、算法原理说明(一)硬件原理MCBSP是多通道缓冲串行口,他支持全双工通信,双缓冲数据寄存器,允许连续的数据流。支持传输的数据字长可以是8位、12位、16位、20位、24位或32位。并且内置U律和A律压扩硬件。MCBSP在结构上可以分为一个数据通道和一个控制通道。数据通道完成数据的发送和接受。控制通道完成的任务包括内部时钟的产生、帧同步信号产生、对这些信号的控制及多通道的选择等。控制通道还负责产生接口信号送往CPU,产生同步事件通知DMA控制器。在CCS集成开发环境中,与MCBSP相关的头文件有REGS54XXH、MCBSP54H。在这两个头文件中,定义了MCBSP串行口的寄存器资源及使用方法。TLC320AD50C是TI公司生产的SIGMADELTA型的16位A/D、D/A转换电路,他的采样速率最高可达2205KB/S,内涵抗混叠滤波器和重构滤波器,属于模拟接口芯片(AIC),它有一个能与多种昂DSP芯片相连的同步串行通信接口,其采样速率课通过DSP编程来设置。在DAC之前有一个插值滤波器一保证输出信号平滑,在ADC之后有一个抽取滤波器以提高输入信号的信噪比。AD50C片内还包括一个定时器(调整采样率和帧同步延时)和控制器(可编程的增益放大器,锁相环PLL,通信协议等)。AD50有28脚的塑料SOP封装(带DW后缀)和48脚的塑料扁平QFP封装(带PT后缀),体积较小,适用于便携设备。AD50C的工作温度范围是070摄氏度,单一5V电源供电或5V模拟电源和33V数字电源供电,最大功耗为120MW。在CCS集成开发环境中,与TLC320AD50CCODEC相关的头文件是CODECH。在这个头文件中,定义了与AD50CODEC相关的枚举变量和库函数。除了可以调用CODECH中提供的库函数之外,还可以利用这些枚举变量自己重新编写CODEC函数,使用枚举变量相互产生所需要的AD50寄存器的初始化值。CODECH中的库函数位于函数库DSK5402LIB和DRV5402LIB中。(二)滤波器的理论设计分析1直接存储器访问DMA直接存储器访问DIRECTMEMORYACCESS,简称DMA是C54XDSP非常重要的片上外设,DMA控制器可以完成数据传输而不影响CPU,因此数据传输速度快。在要求信号实时采集和处理的系统中常采用DMA方式进行信号采集与传输。本实验利用DMA通道2与MCBSP1通道结合来读取AD转换数据,利用DMA通道3与MCBSP1通道结合来将处理后的数据发送至DA。当一组数据处理完后,将数据存放在存储区OUT_BUFFERFRAME0X100中,选择OUT_BUFFERFRAME0X100为DMA通道3传送数据首地址,并选择源地址工作在不调整模式。2IIR滤波原理IIR数字滤波器差分方程的一般形式为式中AI、BI为滤波系数。当BI全为零时,该滤波器为FIR数字滤波器;当BI不全为零时,则为IIR滤波器。IIR数字滤波器可用直接型、级联型和并联型三种基本结构实现,其基本组成单元如图1所示。对于二阶IIR数字滤波器,其传递函数为N时刻IIR数字滤波器输出和输入关系为其中XN是输入序列,YN是输出序列,AI、BI为滤波器系数。因此滤波器的输出可以用硬件乘法器和加法器实现。在本实验中将IIR滤波器的系统函数H(Z)分解为N个二阶IIR滤波器级联的形式进行运算,这样可以减小量化误差。3IIR滤波函数本实验信号滤波算法是直接从TMS320C54XDSPLIB库中调用IIR函数。IIR函数调用格式IIRCAS4DATAX,DATAH,DATAR,DATAD,USHORTNBIQ,USHORTNXIIRCAS5DATAX,DATAH,DATAR,DATAD,USHORTNBIQ,USHORTNXIIRCAS51DATAX,DATAH,DATAR,DATAD,USHORTNBIQ,USHORTNXIIR32DATAX,LDATAH,DATAR,LDATAD,USHORTNBIQ,USHORTNX其中,IIRCAS32函数用于双精度IIR滤波器;IIRCAS4函数用于二阶级联直接II型滤波器,每项含4个系数;IIRCAS5函数用于二阶级联直接II型滤波器,每项含5个系数;IIRCAS51二阶级联直接I型滤波器,每项含五个系数。调用MATLAB产生滤波器系数时,由于A0始终为1,所以可以产生二阶级联型系数,每项调用A1,A2,B0,B1,B2五个系数。IIRCAS5用于通过各部分的放缩系数使各部分增益小于1的情况同时防止溢出的情况。在IIR数字滤波器的实现中,直接II型相比直接I型节省了一半的延迟单元,因而成为IIR滤波器实现最常用的形式。综上所述,我们采用IRRCAS5函数实现信号的滤波。调用参数说明IIRCAS5DATAX,DATAH,DATAR,DATADBUFFER,USHORTNBIQ,USHORTNXXK为输入数组,HK为HS系数数组,按照A11A21B21B01B11A1IA2IB2IB0IB1I的顺序输入,其中I为BIQUAD的个数RNX为输出数组,DBUFFER为延迟数据区,NBIQ为H(S)分成二阶滤波器的个数NX为输入长度相比较与其他几种调用函数,4FIR滤波原理假设FIR滤波器的单位脉冲响应为H0、H1、HN1,XK为待滤波的输入信号,则滤波器输出为YKHKXK进行信号滤波实际上师计算序列的线性卷积。在实验中滤波器单位脉冲响应HK是有限长N,而XK一般是外部输入的长序列,因而采用重叠像假发计算卷积。重叠相加法是求解段序列与长序列卷积的一种方法。首先将输入长序列分解为短序列,这些短序列分别于HK卷积,将每段计算结果中后N1个数据保留在一个缓冲区中,以便于下一段卷积结果进行重叠相加。5FIR滤波函数本实验信号滤波算法是直接从TMS320C54XDSPLIB库中调用FIR函数。FIR函数调用格式OFLAGSHORTFIRDATAX,DATAH,DATAR,DATADBUFFER,USHORTNH,USHORTNX功能用FIR滤波器对信号滤波调用参数说明XNX表示含有NX个实数的实输入信号向量;HNH表示含有NH个实数的系数向量,按自然顺序排列,即滤波器的单位脉冲响应。RNX表示含有NX个实数的输出向量;允许原位运算,即RX。DBUFFERNH延迟缓冲区;对存储器的要求同HNH。NX向量X中实数的个数;NH向量H中系数的个数;OFLAG1有溢出OFLAG0无溢出(三)设计流程图A/D、D/A初始化DMA通道的初始化DMA方式接收A/D数据,将数据存储等待DMA接收中断MATLAB中FDATOOL设计滤波器IIRFIRIIR系数的量化、调整与变换信号的滤波函数调用波形的产生经DMA输出分配各数据段,并且给个数据段赋值利用硬件实现滤波器的信号滤波,就是将MATLAB所产生的系数,与被取样的实时信号进行运算。将滤波器系数导入程序当中一般有两种方式一、是将MATLAB产生的系数,生成头文件,在程序中进行调用。二、将MATLAB产生的系数写入数据段中,在程序中调用,此过程涉及到IIR滤波器的系数被截取,量化,调整和量化误差的产生。信号与滤波器系数的运算也有两种方法一、调用DSPLIB中的IIR、FIR调用函数。二、利用C语言,编辑一段程序进行运算。(四)系数的导入与量化1头文件方式导入在MATLAB中利用FDATOOL产生所需滤波器,选择菜单TARGETS一EXPORTTOCODECOMPOSERSTUDIOIDE打开EXPORTTOCHEADERFILE对话框,选择CHEADERFILE,指定变量名滤波器阶数和系数向量,输出数据类型可选浮点型或32B、16B整型等。根据自己安装选择目标板板号和处理器号。单击OK。保存该头文件,需指定文件名和路径,打开IIR工程文件夹,该滤波器系数头文件已含在工程中。该头文件用到MATLAB中的TMWPYTESH,需把该文件也包含在工程中还要在原文件中声明包含滤波器参数头文件即INCLUDE头文件名称INCLUDETMWPYTESH然后编译、链接工程添加的头文件自动在工程目录中显示目标DSP自动为滤波器系数分配相应的存储空间。打开系数文件查看生成的滤波器系数,可看到系数是对称的,这由所选滤波器类型而定。由于本次的设计的拓展部分主要以设计IIR滤波器为主要目标,IIR滤波器系数存在着格式转换和量化的问题,不能够直接导入到CCS中直接去进行硬件实现,这样会导致滤波器系数的信息被截断,信息丢失,导致滤波器无法实现。所以我采用第二种方法。2直接写入存储器滤波器的系数可以用FDATOOL进行计算出来,也可以导出到MATLAB的WORKSPACE中去计算量化。我们所使用的DSK5402实验板是16位定点运算,而MATLAB所产生的系数,并不是定点数而是浮点数。所以需要将MATLAB所产生的浮点数进行转化,使其转换为浮点数,浮点数格式的导出一般在FIR滤波器中这种定点的转化都是使用MATLAB中FDATOOL的EXPORTTOCHEADERFILE方式来进行转化。但是与FIR不同的是IIR不一定是稳定的系统,即使稳定,也未必能够达到硬件实现。MATLAB提供的转化方法并没有对于越界的系数进行量化。例如SOS1,2,1,1,119,045本是一个稳定的高阶IIR滤波器的系数矩阵中的一维向量,表示直接II型级联形式的一部分。经过MATLAB的16位定点量化后成为了SOS32767,32767,32767,32767,32768,14715成为了一个不稳定的系统,从而硬件实现就不可能了。A系数的转化MATLAB的带符号定点16位转化是,将所有大于1,小于1的数值全部归一化,造成了巨大的量化误差,众所周知,IIR滤波器的实现过程中存在着反馈,于是累进量化误差越来越大造成了系统的不稳定。量化问题中不得不提的还有一个标准格式问题。由于MATLAB所产生的浮点系数并没有依照CCS中DSPLIB的IIR能够调用的数据格式。经过查阅资料以及多次的失败尝试积累出的经验,了解到我所要设计的IIR滤波器所需使用的IIRCAS5调用命令使用的是Q15数据格式,而MATLAB所产生的浮点值是Q14数据格式,而在进行定点转换时,MATLAB没有将Q14的数据格式量化,进行大误差归一化直接转化为Q15的定点形式所以造成硬件实现的失败。MATLAB产生的系数一般已经是满足CCS调用函数的SECONDORDER形式了。一次滤波器为例,产生的系数为SECTION1NUMERATOR121DENOMINATOR11195433962890738069059892324149696GAIN012379124008768973SECTION2NUMERATOR121DENOMINATOR1094280904158206336033333333333333343GAIN009763107293781749SECTION3NUMERATOR121DENOMINATOR1084028692165132679018834516088404471GAIN0087014559808179473OUTPUTGAIN1其中NUMERATOR就是分子部分,也就是B,其中DENEMINATOR就是分母部分也就是A,GAIN就是增益,一般计算系数,只需将分子部分乘以各部分增益,在转化为定点数。分母部分只需将其转化为定点部分就可以了。但是,这个系数中,存在着一项A11的情况,我才用了如下的公式来进行量化和数据格式转换ABAA/232767GBB/232767其中,A为分母,B为分子;G为各项增益这个公式所形成的矩阵就可以应用到IIRCAS5的数据格式要求中,减小了溢出的可能性。C误差分析1对IIR数字滤波器的系数,采用定点Q0格式进行数据的处理,将引入系数量化误差;2对输入的测试信号,采用定点Q0格式进行数据的处理,将引入输入信号的量化误差;3由于使用的AD,DA转换器件为有限字长,如DA转换器的字长仅10B或12B。在软件程序中事先要把数据化为相同的字长位数,再送到DA转换器,也将引入量化误差。4对数字滤波的运算过程编制相应的程序,其中滤波器选用直接型、级联型还是并联型,将产生不同的运算量化误差。四、程序设计、调试与结果分析本次试验使用的FIR与IIR滤波器程序主体大致相同,所以只是对FIR_DMAC中的与IIR与FIR两种不同的滤波器的相关系数进行了修改,下面列出的是IIR滤波器的设计程序。(一)准备工作需要将头文件等库函数都装入到指定位置1、DRV5402LIB是软件仿真所用的仿真器所必需的库文件;2、DSK5402LIB是驱动DSK板所必需的库文件;3、RTSLIB,这个库提供目标DSP运行时间支持RUNTIMESUPPORT。由于程序没有INCLUDE,因此本程序不需要头文件。上图是编译成功的结果显示无错误和警告这是最终调试成功的结果,首次运行时有11个错误,主要是_COSX和_COSX的混淆,分号的误写等。因此,本程序所使用的配置文件有(1)、C,即源程序文件;(2)、O,IFR_DMAOUT即输出文件(默认在DEBUG目录);(3)、LRTSLIB等库文件。(二)程序清单通过理解IIR的基本原理,也可以通过C语言或是汇编语言进行编写,同样可以达到滤波的效果。因为有调用函数,使用起来比此程序方便,所以只是用了函数来实现。1主程序/声明头文件/INCLUDEINCLUDEINCLUDEINCLUDEINCLUDEINCLUDE/FUNCTIONPROTOTYPES/VOIDDELAYS16PERIODEXTERNVOIDDMAC2ISR/声明DMAC2ISR为外部函数/全局变量的定义/HANDLEHHANDSETUNSIGNEDINTDMSEFC,DMMCR,DMCTR,SRC_ADDR,DST_ADDRUNSIGNEDINTDMPRE,DMSRCP,DMDSTP,DMIDX0,DMIDX1,DMFRI0,DMFRI1,DMGSA,DMGDA,DMGCR,DMGFR/给输入缓冲区建立字段/PRAGMADATA_SECTIONINP_BUFFER,“AUDIO_BUFFER“INTINP_BUFFER0X200/给输出缓冲区建立字段/PRAGMADATA_SECTIONOUT_BUFFER,“OUTT_BUFFER“INTOUT_BUFFER0X200/为系数建立字段/PRAGMADATA_SECTIONCOEFFS,“COEFFICIENTS“/IIR,BUTTERWORTH低通滤波器FS16000FC2000HZ/INTCOEFFS1513765,3085,1425,1425,2851,19585,11314,1756,1756,3513,15446,5461,1846,1846,3693/FIRHANN低通FS16000,FC2000/INTCOEFF1643,178,407,353,671,2968,5860,7903,7903,5860,2968,671,353,407,178,43PRAGMADATA_SECTIONDELAYBUFF,“DELAYB“INTDELAYBUFF60/INTDELAYBUFF160/给中断服务寄存器定义变量/INTFRAME0INTFLAG0INTTEMPINTCURRBUFF0/DELAYPTR指针变量指向延迟缓冲区的首地址/INTDELAYPTR1INTERRUPTVOIDDMAC2ISR/主程序/VOIDMAINS16CNT2/需要用到的BOIS的部分定义/BSCR0X8806XPC0PMST0XA0BRD_SET_CPU_FREQ100TIMER_HALT0BRD_SET_WAIT_STATES7,7,9TIMER_RESET0IMR0/禁止所有中断IFBRD_INIT_BIOSRETURNWHILECNTBRD_LED_TOGGLEBRD_LED0/切换LED指示灯0的显示状态DELAY1000BRD_LED_TOGGLEBRD_LED1/切换LED指示灯1的显示状态DELAY1000BRD_LED_TOGGLEBRD_LED2/切换LED指示灯2的显示状态DELAY1000/初始化CODEC/HHANDSETCODEC_OPENHANDSET_CODEC/给一个句柄/设置CODEC变量/CODEC_DAC_MODEHHANDSET,CODEC_DAC_15BIT/DAC15位模式/CODEC_ADC_MODEHHANDSET,CODEC_ADC_15BIT/ADC15位模式/CODEC_AIN_GAINHHANDSET,CODEC_AIN_6DB/6DB的输入增益ADC/CODEC_AOUT_GAINHHANDSET,CODEC_AOUT_MINUS_6DB/6DB的输出衰减DAC/CODEC_SAMPLE_RATEHHANDSET,SR_16000/设置抽样频率为16000HZ/清除DMAC2的中断标志/INTR_CLR_FLAGDMAC2/重置DMA通道/DMA_RESET_ALL/初始化DMA通道2/DMSEFCDSYNC_REVT1INCLUDEEXTERNVOIDDELAYS16PERIODEXTERNUNSIGNEDINTCHANNEL/DMA通道数/EXTERNUNSIGNEDINTDMSEFC/设置同步时间和帧计数寄存器值/EXTERNUNSIGNEDINTDMMCR/设置模式控制寄存器值/EXTERNUNSIGNEDINTDMCTR/设置单元计数寄存器值/EXTERNUNSIGNEDINTSRC_PAGE/设置源页寄存器值/EXTERNUNSIGNEDINTSRC_ADDR/设置源地址寄存器值/EXTERNUNSIGNEDINTDST_PAGE/设置目的页寄存器值/EXTERNUNSIGNEDINTDST_ADDR/设置目的地址寄存器值/EXTERNINTINP_BUFFER0X200EXTERNINTOUT_BUFFER0X200EXTERNINTCOEFFS16/若是IIR滤波器,需要改为COEFFS15/EXTERNINTDELAYBUFF16/若是IIR滤波器,需要改为DELAYBUFF6/EXTERNINTFRAMEEXTERNINTFLAGEXTERNINTCURRBUFFEXTERNINTDELAYPTR1INTL0VOIDINIT_DMA3VOIDWHILEDMPREC/DMA3的传送是否结束/初始化通道3/DMSEFCDSYNC_REVT1GRAPH功能观察输入输出信号FIR的输入信号,输出信号和频谱。时域波形频域滤出前后对比IIR的输入信号,输出信号和频谱。可见现实中,FIR与IIR的滤波效果都可以非常的接近理想中的情况。只是在IIR的滤波器的量化是还是存在的增益的改变,无法满足理想的情况,尝试增大音量来调整增益情况,就会发生如下的情况系统的输出出现了溢出,是DSP无法实现IIR滤波器,并且发现,由于使用的是GOLDWAVE产生的信号,所以,计算机的声道设置必须是一端输出。关于音量多次试验以及失败的经验,由于板子的存储位数的原因,音量不能太大。音量过大导致了系统的不稳定,导致DSP的无法实现。(四)滤波器的性能对比FIR6阶输入SIN2000PITSIN16000PITHAMMING窗系数CONSTINT16_TB7278,2286,8029,11582,8029,2286,278HAN窗系数CONSTINT16_TB70,1954,8291,12278,8291,1954,0BLACHMAN窗系数CONSTINT16_TB70,1179,8081,14247,8081,1179,0IIR6阶同样的输入信号INTCOEFFS1513767,3086,1425,1425,2851,19585,11314,1756,1756,3513,15446,5461,1846,1846,3693这些对比可见在较低阶数的时候IIR的滤波器的性能明显强于FIR的效果,但是再设计过程中唯一的缺陷就在系数的量化时存在很大的误差,并且增益不是很好控制,并且有可能存在着溢出现象。对于高阶数的比较,由之前的16阶FIR滤波器已经很明显的看出来,FIR滤波器的滤波效果非常的完美。在进行较高阶数的比较的时候,阶数过高导致IIR的滤波器变得不稳定,已经不能够在DSP进行硬件实现,就并没有进行截图比较。(五)IIR的采样率对于自身滤波效果的影响分析IIR8000采样率0,566,8333,8333,16665,0,19293,1272,1272,22544,0,5623,11082,11082,22164,IIR3阶7500采样率IIR4阶12000采样率滤波效果明显不如之前取样率为16000的时候,并且观察其幅度相应,其衰减的增加趋势已经放缓了许多,其他两幅是在不同阶数和在不同采样率时的幅度相应,可见,采样频率对于IIR的影响是非常大的。可以知道,IIR比较适合在采样率较高,且阶数较小的时候使用。(六)实验结论一、IIR数字滤波器是针对采样率固定的系统设计的,更改系统或系统采样率改变时应重新设计。二、用到的数据存储单元,程序开始时应对这些单元进行初始化。如果要进行连续滤波,应保存上一次滤波的结果。三、IIR数字滤波器的滤波结果会引起相位的延迟,故对相位严格要求的场合,需加全通网络进行较正,或选用FIR滤波器实现滤波功能。四、对于IIR系数的溢出问题,可以采取一下几种措施A、采用级联型,对增益进行调整。B、对系数进行量化。C、对CCS库函数的源程序进行修改,使其满足FDATOOL中产生的系数,就可直接调用。五、设计IIR的时候,不能够使IIR得取样频率过低,否则硬件无法实现,一般要保证FC/FS001,并且在这个比值比较靠近1的时候,DSP也是无法实现的。六、在IIR滤波器的设计思路中,与FIR的不同一点是,一定要在量化过后通过MATLAB来观察其是否稳定。七、由于IIR得误差问题,一般不采用较高的阶数来实现,一是不稳定的可能性增加,二是误差会不断的积累和扩大,已造成不稳定。八、对于FIR,IIR,较小阶数时候滤波器的效果来说,IIR要好于FIR,且运算速度是非常快的,对于较大阶数还是要使用FIR滤波器,稳定且效果是非常好的。九、对于频率较为接近的两个信号,一般采用FIR的高阶滤波器,这样过渡带会变得很窄并且阻带的衰减会非常大。把两个信号区分出来。五、设计(安装)与调试的体会邵辰雪通过此次实验设计,我们基本了解了DSP的内部资源以及各部件的作用。通过应用DSP算法实现通过FIR及IIR两种不同的滤波器对信号进行滤波的实验过程,使我们熟悉了使用DSP工程的建设以及应用于DSP系统的C语言的编写,学会了通过MATLAB进行滤波器设计并导出我们所需要的相关系数以及头文件,并对CCS5000对程序的完整调试过程有了进一步的理解。在实验初期,即进行FIR滤波器设计的时候,由于在教材上有相关的参考程序,所以实验进行得很顺利,之后我们也进行了一系列的加窗后的滤波现象的分析比较。直到我们开始着手进行IIR滤波器设计时,问题出现了。由MATLAB产生的IIR滤波器的系数无法想FIR的一样直接导入程序中。在经过了漫长繁复的资料查找过程之后我们终于解决了系数导入的相关问题,即系数归一化以及有限字长效应等,终于成功的完胜的IIR滤波器的设计。这次实验应该说是我所经历的小学期课程中难度系数最高,实验过程最为复杂的一次,虽然没有焊接电路那种细致并需要绝对的耐心的手工制作,但是实验里所需要的是对于几种不同的语言的熟练运用以及程序编辑时的缜密的逻辑能力以及分析能力。讨论在这次实验中很有帮助,它可以纠正错误的想法,启发新的方法。而每次上机实验都会出现各种各样的不同情况。有时进入就会出错,板子没插好,但是再运行时就能正常进入。有时添加不进去头文件,有时是无法导入XOUT文件,却发现忘记了重新编译。到了操作后期这种小毛病终于不再出现。为了查询所需要的资料,我们充分

温馨提示

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

评论

0/150

提交评论