湖北汽車工業(yè)學(xué)院光電二號三代技術(shù)報告_第1頁
湖北汽車工業(yè)學(xué)院光電二號三代技術(shù)報告_第2頁
湖北汽車工業(yè)學(xué)院光電二號三代技術(shù)報告_第3頁
湖北汽車工業(yè)學(xué)院光電二號三代技術(shù)報告_第4頁
湖北汽車工業(yè)學(xué)院光電二號三代技術(shù)報告_第5頁
已閱讀5頁,還剩85頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

委會和飛思卡爾半導(dǎo)體公司可以在相關(guān)主頁上收錄并公開參賽作品的設(shè)計委會和飛思卡爾半導(dǎo)體公司可以在相關(guān)主頁上收錄并公開參賽作品的設(shè)計 日期 目錄第1章引 1.1智能車總體設(shè)計概 1.2智能車基本模塊描 第2章目錄第1章引 1.1智能車總體設(shè)計概 1.2智能車基本模塊描 第2章智能車機械結(jié)構(gòu)調(diào)整與優(yōu) 第3章智能車硬件設(shè)計方 3.1電 中央控制電路、激光傳感器、紅外傳感器、速度傳感器5V電 舵機6V電 電機7.2V電 電機驅(qū) 人機界 I第4章軟件設(shè)計方 第4章軟件設(shè)計方 坡道處 控制策 5調(diào)試說 6小車模型改造后的主要技術(shù)參 7結(jié)束 7.1不足與改 7.2感 參考文 A源程 1第11第1CodeWarrior和在線調(diào)試工具的基礎(chǔ)上制作一個能夠自主識別路線的智1.1智能車總體設(shè)計概智能車系統(tǒng)采用飛思卡爾的16位微控制器MC9S12XS128單片機作為后,賽車的位置信號由車體前方的光電傳感器采集,經(jīng)XS128MCU的器,采集離合器輸出的脈沖信號,經(jīng)MCU捕獲后進行PID31.2智能車基本模塊描控制核1.2智能車基本模塊描控制核心模塊:智能車系統(tǒng)以FreeScale的16位單片機MC9S12XS1284115第2序,因此,機械結(jié)構(gòu)調(diào)整,優(yōu)化自然成為了我們制作智能車的一大重點。12.1第2序,因此,機械結(jié)構(gòu)調(diào)整,優(yōu)化自然成為了我們制作智能車的一大重點。12.1智能車前輪及后輪定位的調(diào)2.1.16227332.1.282B2B9黃色藍(lán)色線2.2智能車2.2智能車轉(zhuǎn)向機構(gòu)調(diào)整優(yōu)2.2.1222.2.222不對稱。使用這種機構(gòu),我們首次將車速提升到了2m/s。不對稱。使用這種機構(gòu),我們首次將車速提升到了2m/s。2222222.4智能車減速齒輪機構(gòu)調(diào)紫色線綠色B型車模的差速器,主要是保養(yǎng),因為塑料齒輪在高速調(diào)前后差速器的方法是:固定輸入萬向節(jié)B型車模的差速器,主要是保養(yǎng),因為塑料齒輪在高速調(diào)前后差速器的方法是:固定輸入萬向節(jié)紫色線22.5搖頭舵機的22.5搖頭舵機的安22傳感器,主控電路板,以及驅(qū)動電路板,電池等的2我們的第二代激光車(搖頭2我們的第二代激光車(搖頭2第三代激光車(決賽前的候選車2第三代激光車(決賽前的候選車22第3章智能車硬件設(shè)計第3章智能車硬件設(shè)計方3.1電能車采用大電流低壓差三端穩(wěn)壓芯片LM1084IS-5.0將電源電壓穩(wěn)壓到5V后,給以上各部分供電。LM1084是一款典型的低壓差線性穩(wěn)壓集成電路,5V、12V,同時也提供輸出可調(diào)穩(wěn)壓器LM1084-ADJ,也可通過引腳外圍電阻設(shè)置調(diào)整輸出,輸出調(diào)整范圍為1.2~15V,圖33.1.26V由于比賽指定的舵機可以承受7.2V的電池電壓,之前我們采用過電池直LM1084-ADJ33.1.26V由于比賽指定的舵機可以承受7.2V的電池電壓,之前我們采用過電池直LM1084-ADJ圖3.1.37.2V3.2中央控制圖表I/OPAD0-PP0、PP2、PS2、PS3、PJ6、PJ7、PT2、圖表I/OPAD0-PP0、PP2、PS2、PS3、PJ6、PJ7、PT2、33.333.3激光傳感20-30%的調(diào)制波。的驅(qū)動方式,這種驅(qū)動方式所需單片機IO口較少,但使用元件較多,PCB驅(qū)動和調(diào)制激光管,ULN2003A電路是美TexasInstruments公司和Sprague公司開發(fā)的高壓大電流達林頓晶體管陣列電路,具有電流增益高、工作電壓高、溫度范圍寬、帶負(fù)載能力強等特點。由于ULN2003A集成度較高,用它驅(qū)動激光管電路比較簡單,缺點是所IO口較多,可以用多個光管同時發(fā)射的方法來解決為獲得較多的賽道信息需要用到足夠多15個激光管外加搖頭舵機控制傳感器,這樣既獲得了較多的賽道信息,又盡量使傳感器小而輕。同時規(guī)則規(guī)定傳感器最多不能超過16個,故15個激光管外加搖頭舵機控制傳感器,這樣既獲得了較多的賽道信息,又盡量使傳感器小而輕。同時規(guī)則規(guī)定傳感器最多不能超過16個,故圖3圖行A/D轉(zhuǎn)換,因為電壓值是連續(xù)變化的,提高了檢測精度。原理圖如圖所3圖行A/D轉(zhuǎn)換,因為電壓值是連續(xù)變化的,提高了檢測精度。原理圖如圖所3.6電機驅(qū)3.6電機驅(qū)BTS7960B芯片驅(qū)動電機。它的一個封裝中集成了一個PN43A3圖圖3圖圖3.7人機界圖圖3圖3.8激3圖3.8激光傳感器的安PCB板上。12.5mm10mm33PCB第4章軟件設(shè)計方案4.1傳感器第4章軟件設(shè)計方案4.1傳感器的驅(qū)動以及信號采只需要讀取相應(yīng)IO口狀態(tài)即可。我們所采用的激光接收管只對180KHz的調(diào)制光信號有很好的響應(yīng),因此發(fā)射180KHzULN2003驅(qū)動,沒有相應(yīng)的使能端,因此就需要將IOPWM來選通達林頓管。發(fā)射管中依次編號,三個同時發(fā)射的管子兩兩相隔7個,最開始采用從左到照編號依次是1-4-7-3-6-2-5,這樣可以有效避免相鄰發(fā)射管之間產(chǎn)生的干擾。通過實驗,發(fā)射管發(fā)射100us以上即有較好的接收效果,最終的發(fā)射時間確定為200us。4.2賽道信息的識2120mm,這里說一4460cm,最終使用的前瞻(按前輪軸算起)大概在45-50cm,看的寬度達到了35-40cm,這樣即使不搖頭也可以達到很好的尋跡效每次發(fā)射管驅(qū)動完畢采集接收管的信號,當(dāng)照在黑線上為1,白色區(qū)域時為0,集中存儲到數(shù)組Sensor1[21]中,然后進行賽道的識別。available_num00(即出現(xiàn)白數(shù)不能超過3個,同時需要黑線起始點左邊以及右邊出現(xiàn)多個白點這樣才確定然后在搜索范圍內(nèi)只出現(xiàn)一條黑線段,同時該黑線段的最右端必須是第0個或18個白點intOffset1_Actor[]={-180,-162,-144,-126,-108,-90,-72,-54,-36,-m++){offset_sum+=Offset1_Actor[sensor_num];}多段黑線即為出錯,SenErrFlag1=16cm4.3速度采集以及路程線編碼器來進行測速,通過中PT72.5ms070個左右的脈沖,通過計算傳動比以及實際的測量,得到小車每行駛6cm,將有530個左右的脈沖,因此通過勻,換成5ms后電機的聲音更加柔和,最終采用2.5ms達到了很好的控制效4.4坡道處44只需對數(shù)組的信號進行黑線搜索,有一條黑線即可按照加權(quán)求平均值的方法得set2。6cm后將重新進行初始坡道后就將下排傳感器對應(yīng)的偏移量反映到PID公式中進行尋跡。4.5起跑線識2cm14cm寬,通過反復(fù)的打印數(shù)據(jù)觀察發(fā)現(xiàn),有兩種情況可以1Sensor2_State[8]這個數(shù)11個及以下的黑點,退出傳感器狀態(tài)的Sensor2_State[8]數(shù)組,若有三段黑線或4.64.6控制策4.6.110ms10ms給一次值,給給定一個舵機能夠在10ms內(nèi)達到的最大轉(zhuǎn)角,若實際給定已經(jīng)達到-80,那么10){Real_DeltaOffset1+=(Delta_Offset1-Real_DeltaOffset1)*(Delta_Offset1-10){Real_DeltaOffset1-=(DeltaOffset1-RealDeltaOffset1)*(DeltaOffset1-Real4}4}4.6.2PWMDTY01和Offset1,根據(jù)幾何計算,搖頭舵機的轉(zhuǎn)角對應(yīng)了傳感器本身的一個偏移量,比如搖頭舵機轉(zhuǎn)了15.3度,傳15.75cm,當(dāng)然這個也和前瞻有關(guān),我們測算時大概在45-50cmPWM對應(yīng)的傳感器的偏移量的公式。Delta_X=值再來帶到PID公式中進行舵機的控制。PWM=OFFSET1*OFFSET1/k1+OFFSET1*k2+(OFFSET1-PWM10ms5ms20ms,能夠在較快的速度穩(wěn)定的工作。4.6.310KHz1K-30K,通過試車和聽電機的聲音,最終確定10KHz的頻率能夠比較及時的控制并且聲音柔和。整個速度控制是由兩部分組成的:首先通過PIDPrespeedPrespeed=Standard_Speed-實際給定的PWMek=Prespeed-Speed;if(ek>=-3){PWMDTY23=900+300*ek;PWMDTY67=0;}elsePWMDTY23=0;}于等于3來區(qū)別,這個數(shù)據(jù)最終通過多次試車觀察效果得到,取決于你的測速5第55第5章調(diào)試說使用了無線串口傳輸模塊JZ881以及TF卡作為調(diào)試過程的主要輔助工具。反復(fù)調(diào)節(jié)控制舵機的PID參數(shù),對比測試結(jié)果,從而找出最佳參數(shù)。智能車在所以有時也通過TF卡進行數(shù)據(jù)采集,將小車整圈的數(shù)據(jù),偏移量,速度等存儲TF卡中,然后一次性打印出來,可以更好的分析小車行駛過程中的狀態(tài)第6m:質(zhì)N第6m:質(zhì)N2Cs:電容總?cè)輘:賽道信息檢測精T:代碼運行期第77.1不足與第77.1不足與改工作功率,但電池電壓降到7.6V左右就開始有些不穩(wěn)定,需要進一步提升激芯片,雖然LM1084可以提供5A的電流,但是還是會出現(xiàn)較大的紋波,影響PID7.2感邵貝貝 邵貝貝 北京:清華大學(xué)出版社陳宋李立國黃開勝 智能模型車底盤淺析電子產(chǎn)品世界,康華光北京高等教育出版社IA源程#include<hidef.h>#include<stdlib.h>#include"printp.h"#include"queue.h"http://轉(zhuǎn)向舵機commonA源程#include<hidef.h>#include<stdlib.h>#include"printp.h"#include"queue.h"http://轉(zhuǎn)向舵機commondefinesandmacros/*derivative-specificdefinitions//搖頭舵機#defineSHAKE_PWM_MID#defineSHAKE_PWM_MAX#defineESpeed(int*)(0x0800)#defineSlowdown(int*)(0x0802)#defineSpeed_Bit0PTS_PTS2#defineSpeed_Bit1PTS_PTS3#defineSlopeSlowPTJ_PTJ6#defineANNIU5PTT_PTT2#defineANNIU6structlinkqueuecharbyteEmit_Code[]={0x01,0x08,0x40,0x04,0x20,0x02,0x10};intOffset1_Actor[]={-180,-162,-144,-126,-108,-90,-72,-54,-36,-intOffset2_Actor[]={-67,-47,-27,-voidintF_Abs(int);voidErase_Flash(void);voidLoop_Count(int);voidControl_Actuator(void);voidDisplay_Slowdown(void);voidDisplay_Sensor(void);voidvoidmain(void)//initvoidmain(void)//initPWMDTY01=PWMDTY45=PORTA=Emit_Code[0];PT1AD0=Sensor_Step=for(;;)if(Print_Flag==1&&Start_Flag2){printp("\n\n//printp("\n\nSenOver_Flag=%d=%d%d//printp("\n\nspeed=%d",Speed);Print_Flag=0;}if(Print_Flag==printp("\n\nStart_Flag=printp("\n\nStart_Flag=%d,Prespeed=%d,Speed=Print_Flag=0;}printp("Center_Number=}}{intif(Initial_Flag{number++;if(available_number=={start_number1=}Vend_number1=end_number1=}start_number2=start_number2=start_number1-}if(end_number1+10>end_number2=end_number2=}}}&&start_number1>=2&&end_number1<=18){left_number=start_number1;}available_number=}}if(segment==Initial_Flag=if(segment==Initial_Flag=Center_Number=}Slope_Flag=1;}}if(SenOver_Flag1==start_number1=end_number1=}elseif(SenOver_Flag1==-1){start_number1=0;end_number1=if(Center_Number-4<start_number1=}if(Center_Number+4>end_number1=end_number1=}}{number++;if(available_number==1){start_number2{number++;if(available_number==1){start_number2=}end_number2=}if((available_number>0)&&(Sensor1[sensor_num1]==0||Center_Number)<=min_distance){left_number=min_distance=F_Abs((start_number2+end_number2)/2-}available_number=}}if(segment==0&&(Offset1>126||Offset1<-if(Offset1>Offset1=Center_Number=Center_Number=SenOver_Flag1=if(Offset1<{Offset1=-198;Center_Number=0;SenOver_Flag1=-}}}}elseif(segment==1&&min_distance<3){if(SenOver_Flag1==1&&SenOver_Flag1=}if(SenOver_Flag1==-1&&segment==1){SenOver_Flag1=0;0){foroffset_sum+=Offset1_Actor[sensor_num1];}Center_Number=(left_number+right_number)/2;SenErr_Flag1=}}elseif(SenOver_Flag1==SenErr_Flag1=1;Initial_Flag=}}//Print_Flag=Initial_Flag=}}//Print_Flag=}voidDownSen_Calculate()intavailable_number=start_number=end_number=offset_sum=if(Sensor2[sensor_number]==1){if(available_number1){start_number=}end_number=}if(available_number==0){if(Offset2>=SenOver_Flag2=Offset2=XSenErr_Flag2=SenErr_Flag2=}elseif(Offset2<=57){SenOver_Flag2=-Offset2=-SenErr_Flag2=SenErr_Flag2=}}elseif(available_number==end_number-start_number+1){if((SenOver_Flag2==1)&&(start_number>=6)){SenOver_Flag2=}if((SenOver_Flag2==-1)&&(end_number<=1)){SenOver_Flag2=0;}0){foroffset_sum+=Offset2_Actor[sensor_number];}Offset2=}SenErr_Flag2=}voidLoop_Count(intavailable_number)intif(available_number>=3&&intif(available_number>=3&&Start_Flag>1&&Sen2_Black_Flag==0){Sen2_Black_Flag=1;}if(available_number<=1&&Sen2_Black_Flag==1){Sen2_Black_Flag=0;if(Sensor2_State[Sensor_Num]==1){}if(Sensor2_State[Sensor_Num]==0||Sensor_Num==7){if(Black_Counter>0){Long_Flag=}}Black_Counter=}}if((Segment>=3||(Segment>=2&&Long_Flag==1))&&Loop_Delay_Counter<=0&&Slope_Flag==0){if(Loop==2){Start_Flag=PWMDTY23=PWMDTY67=Print_Flag=Print_Flag=Loop_Delay_Counter}}}if(Sen2_Black_Flag=={{if(Sensor2[Sensor_Num]=={Sensor2_State[Sensor_Num]=}}}Control_Actuator(void){intDelta_PWM=0;if(Slope_Flag==0&&Emergency_Mode==RealOffset=Offset1+10*((int)(SHAKE_PWM_MID-pwmdty01=-pwmdty01=if((PWM_MID-pwmdty01)>PWMDTY01=}elseif((PWM_MID-pwmdty01)<PWM_MIN){PWMDTY01=}elseif((PWM_MID-pwmdty01)<PWM_MIN){PWMDTY01=PWM_MIN;PWMDTY01=PWM_MID-}}else{)pwmdty01=-Offset2*Offset2/5+3*Offset2; pwmdty01=if((PWM_MID-PWM_MAX){PWMDTY01=}elseif((PWM_MID-pwmdty01)<PWM_MIN){PWMDTY01=PWM_MIN;PWMDTY01=PWM_MID-}}}void{if(Emergency_Mode==1)Prespeed=Standard_SpeedPrespeed=30-Prespeed=30-Prespeed=if(Slope_Flag==1&&SlopeSlow=={Prespeed=}}voidintDelta_PWM0;//if(Slope_Flag==0)Delta_Offset1=-Delta_PWM=10*Real_DeltaOffset1;PWMDTY45=}elseif(SHAKE_PWM_MID+Delta_PWM<SHAKE_PWM_MIN){PWMDTY45=SHAKE_PWM_MIN;PWMDTY45=}}else{//Slope_Flag==PWMDTY45=}}ifif(Brake_Flag1){PWMDTY23=if(SpeedMin_Speed+10){Brake_Flag=PWMDTY67//PWMDTY67=PWMDTY67=}if(SpeedMin_Speed){Min_Speed=}}elseif(Start_Flag==2){ek=Prespeed-Speed;if(ek>=-3){PWMDTY23=900+300*ek;PWMDTY67=0;}elsePWMDTY23=0;#pragmaCODE_SEGNEAR_SEG{362514//PITTF_PTF0=_asm(MOVB362514362514//PITTF_PTF0=_asm(MOVB362514e0:Sensor1[20]=Sensor1[6]=!PORTE_PE4;Sensor2[0]=caseSensor1[17]=Sensor1[3]=!PORTE_PE5;Sensor2[4]=caseSensor1[7]=!PORTE_PE4;Sensor1[0]=Sensor2[1]=caseSensor1[18]=caseSensor1[18]=Sensor1[4]=!PORTE_PE5;Sensor2[5]=caseSensor1[8]=!PORTE_PE4;Sensor1[1]=Sensor2[2]=caseSensor1[19]=Sensor1[12]=!PORTE_PE2;Sensor1[5]=!PORTE_PE5;Sensor2[6]=caseSensor1[16]=Sensor1[2]=Sensor2[3]=defaultdefault;}if(Sensor_Step==7){PORTA=0x00;PT1AD0=0x00;Sensor_Step=0;//Print_Flag=}if(Sensor2_0==1||Sensor2_1==1){Start_Delay0=600;}if(Sensor2_2==1||Sensor2_3==1){Start_Delay1=600;}if(Start_Delay0>0&&Start_Delay1>0){Loop++;if(Loop==Line_Count){Start_Flag=PWMDTY23=PWMDTY67=}}//PITTF_PTF1}//PITTF_PTF1=_asm(MOVBSpeed=//PWMDTY23=if(Speed}Error_Flag_Count=if(Error_Flag_Count>=Error_Flag=PWMDTY23=PWMDTY67=Start_Flag=Start_Ready=0;}}if(SensorWhite_Flag1){SensorWhite_Counterif(SensorWhite_Flag1){SensorWhite_Counter+=10){Real_DeltaOffset1+=(Delta_Offset1-Real_DeltaOffset1)*(Delta_Offset1-10){Real_DeltaOffset1-=(Delta_Offset1-Real_DeltaOffset1)*(Delta_Offset1-}if(Key_Delay_Counter>if(Key_Delay_Counter0){TFLG1_C4F=TFLG1_C5F=TIE_C4I=TIE_C5I=}}if(Start_Flag==if(ANNIU5==1&&ANNIU6==if(ANNIU5==0&& ==}Offset1_Delay_Counter+=Speed;if(Offset1_Delay_Counter>=}Offset1_Delay_Counter+=Speed;if(Offset1_Delay_Counter>=else}if(Straightaway_Flag_Counter>if(SenErr_Flag11){SenErr_Counter1+=SenErr_Counter1=if(SenErr_Flag1==0&&+=}Slope_DelayCounter=}if}Slope_DelayCounter=}if(Start_Delay!=0&&Start_Ready==1){Start_Delay--;PORTB=}elseif(Start_Delay<=0&&Start_Ready=={Start_Flag=Loop=Time=Start_Ready=Distance=}}//Print_Flag=}while(PITCNT2>=_asm(MOVB}TIE_C4I=0){Start_FlagTIE_C4I=0){Start_Flag=Start_Delay=Start_Ready=if((Speed_Bit0==1)&&(Speed_Bit1==值Standard_Speed=}if((Speed_Bit0==0)&&(Speed_Bit1==1)){Standard_Speed=60+*ESpeed;}if((Speed_Bit0==1)&&(Speed_Bit1==0)){Standard_Speed=70+*ESpeed;}if((Speed_Bit0==0)&&(Speed_Bit1==0)){Standard_Speed=80+*ESpeed;}Prespeed=}Key_Delay_Counter=}intTIE_C5I=if(ANNIU5TIE_C5I=if(ANNIU5==1&&ANNIU6==if(espeed10){espeed=}slowdown=*Slowdown;}if(ANNIU5==0&&ANNIU6==if(slowdown25){slowdown=}espeed=*ESpeed;}Key_Delay_Counter=}voidinterrupt20{SCI0receiveINTSCI0receiveINTSCIRreceive=SCI0DRL;Start_Flag=0;PWMDTY23=PWMDTY67=Start_Ready=0;Brake_Flag=1;Error_Flag=SCI0receiveINT}#include<stdio.h>#include#includevoidINIQUEUE(structlinkqueue{inttemp;{(*(p+temp))->data=-1;if(temp==(*(p+temp))-(*(p+temp))->next=*(p+temp-}}}intempty(structlinkqueue{return1;return}intgethead(structlinkqueue{return0;returns.front->next-}voidpush(structlinkqueue*s,int{structlink p->next=NULL;}voidpop(structlinkqueue{structp=(*s).front->next;}voidpop(structlinkqueue{structp=(*s).front->next;{}{(*s).front->next=p-}free}voidtraversing(linkqueue{inttemp=0;p=s->front;{*(s->data+temp)=p-p=p-}}p#include/*commondefinesandmacros#include/*commondefinesandmacrosvoid{SYNR=0xc0|0x04;REFDV=0x80|//disengagePLLto//turnon//BUSCLKSEL_PLLSEL//whenpllissteady,thenuse//engagePLLto}PWM_Init(void){ME=0x00;PWMPOL_PPOL1=PWMCLK_PCLK1=PWMDTY01=PWMPER01=PWME_PWME1=//clock//clockAPWMCTL_CON45=PWMPOL_PPOL5=PWMCTL_CON45=PWMPOL_PPOL5=PWMCLK_PCLK5=PWMDTY45=PWMPER45=PWME_PWME5=//clockPWMCTL_CON23=PWMCLK_PCLK3=PWMDTY23=PWMPER23=PWME_PWME3=PWMCTL_CON67=PWMCLK_PCLK7=PWMDTY67=PWMPER67=PWME_PWME7=DDRP_DDRP0=DDRP_DDRP2=DDRP_DDRP4=}PortT_Init(void){PERT_PERT4=1;TIOS=0x00;TCTL3=0x0a;TIE=0x30;TSCR1_TEN=}void{}AD_Init(void){ATD0DIENL=0x00;DDR1AD0=//asoutput}AD_Init(void){ATD0DIENL=0x00;DDR1AD0=//asoutputforvoidPITMTLD0=20-//PITPITLD0=400-PITC

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論