![智能小車系統(tǒng)設(shè)計(jì)循跡超聲波遙控_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/15/0a1ff46f-ac8a-4dad-bf99-cef3baee214a/0a1ff46f-ac8a-4dad-bf99-cef3baee214a1.gif)
![智能小車系統(tǒng)設(shè)計(jì)循跡超聲波遙控_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/15/0a1ff46f-ac8a-4dad-bf99-cef3baee214a/0a1ff46f-ac8a-4dad-bf99-cef3baee214a2.gif)
![智能小車系統(tǒng)設(shè)計(jì)循跡超聲波遙控_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/15/0a1ff46f-ac8a-4dad-bf99-cef3baee214a/0a1ff46f-ac8a-4dad-bf99-cef3baee214a3.gif)
![智能小車系統(tǒng)設(shè)計(jì)循跡超聲波遙控_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/15/0a1ff46f-ac8a-4dad-bf99-cef3baee214a/0a1ff46f-ac8a-4dad-bf99-cef3baee214a4.gif)
![智能小車系統(tǒng)設(shè)計(jì)循跡超聲波遙控_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/15/0a1ff46f-ac8a-4dad-bf99-cef3baee214a/0a1ff46f-ac8a-4dad-bf99-cef3baee214a5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<<計(jì)算機(jī)控制技術(shù)綜合訓(xùn)練>>任務(wù)書 年 季學(xué)期學(xué) 生 姓 名學(xué) 號(hào)專 業(yè) 方 向班 級(jí)題 目 名 稱智能小車系統(tǒng)設(shè)計(jì)2一、設(shè)計(jì)內(nèi)容及技術(shù)要求:(一)、任務(wù)描述利用智能小車系統(tǒng)設(shè)計(jì)2所提供部件(綜合訓(xùn)練目前共有3種智能小車模型),組裝小車模型,編寫檢測(cè)、控制程序,實(shí)現(xiàn)以單片機(jī)為控制系統(tǒng)核心的智能小車系統(tǒng)設(shè)計(jì)。(二)、控制任務(wù)和要求 基本任務(wù):1.完成小車的組裝工作2.小車可完成前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)等動(dòng)作,并且可以正確顯示當(dāng)前的速度及行進(jìn)位移3.小車具有循跡(自己設(shè)計(jì)跑道)及避障功能4.三周設(shè)計(jì)任務(wù)完成后,不必拆分小車,將小車歸還老師并如實(shí)匯報(bào)功能部件運(yùn)轉(zhuǎn)情況,便于老師
2、及時(shí)維護(hù),為下一組同學(xué)的設(shè)計(jì)做好準(zhǔn)備進(jìn)階任務(wù):1.實(shí)現(xiàn)舵機(jī)轉(zhuǎn)動(dòng)下的超聲波壁障功能,并且可以正確顯示前方物體的距離2.與按鍵功能配合,正確有序顯示小車位移、速度及與前方障礙物距離3.小車具有無線遙控功能4.與其它組的小車模型配合可以完成交替領(lǐng)跑任務(wù)二、課程設(shè)計(jì)總結(jié)報(bào)告要求:1.完整的設(shè)計(jì)任務(wù)書:封面(設(shè)計(jì)題目、指導(dǎo)教師、專業(yè)班級(jí)、姓名、學(xué)號(hào)、時(shí)間); 摘要及關(guān)鍵詞(35):設(shè)計(jì)總體概述(采用何種硬件,利用何種方法,設(shè)計(jì)何種東西,實(shí)現(xiàn)了何種功能) 目錄(按目錄格式書寫,頁碼要標(biāo)清) 第一章 緒言 (本設(shè)計(jì)的內(nèi)容與實(shí)現(xiàn)的基本原理,設(shè)計(jì)的特點(diǎn)及可以最終可以實(shí)現(xiàn)的功能,可以達(dá)到的性能指標(biāo)) 第二章 方案
3、論證(對(duì)所提供的硬件理解并畫出系統(tǒng)結(jié)構(gòu)圖,為實(shí)現(xiàn)該任務(wù)所采取軟件設(shè)計(jì)思路及核心算法) 第三章 硬件設(shè)計(jì)(按照結(jié)構(gòu)框圖對(duì)各功能部分進(jìn)行分別介紹,如系統(tǒng)CPU部分、數(shù)據(jù)采集部分、程序控制部分、人機(jī)接口部分等) 第四章 軟件設(shè)計(jì)(整體設(shè)計(jì)思路,各獨(dú)立程序功能、原理介紹包括流程圖,如主程序、各子程序及中斷服務(wù)程序) 第五章 設(shè)計(jì)總結(jié)(對(duì)整個(gè)設(shè)計(jì)過程的總結(jié)、體會(huì),還包括設(shè)計(jì)中遇到的問題及解決的辦法,以及想要實(shí)現(xiàn)卻未能完成的功能) 參考文獻(xiàn):著作格式:作者.書名.版次.出版地:出版者,出版年; 期刊格式:作者.文章名.期刊名,年,卷(期):起止頁 注:字?jǐn)?shù)10000字左右,不得抄襲和雷同,使用學(xué)生作業(yè)紙(
4、16開) 2.手繪硬件連接2圖一張、手繪軟件流程2圖一張。三、設(shè)計(jì)進(jìn)度:第一周:熟悉掌握系統(tǒng)要求,完成硬件設(shè)計(jì)、調(diào)試。第二周:完成軟件設(shè)計(jì),用仿真器完成軟、硬件聯(lián)調(diào),最終實(shí)現(xiàn)單片機(jī)在目標(biāo)系統(tǒng)中的 合理運(yùn)行第三周:完善設(shè)計(jì),完成說明書編寫,答辯。指導(dǎo)教師簽字:附錄:電信學(xué)院課程設(shè)計(jì)報(bào)告要求1、 設(shè)計(jì)題目;2、 目錄;3、 本設(shè)計(jì)的基本原理;4、 簡要說明本設(shè)計(jì)內(nèi)容、用途及特點(diǎn);5、 本設(shè)計(jì)達(dá)到的性能指標(biāo);6、 設(shè)計(jì)方案的選擇;7、 寫出各部分設(shè)計(jì)過程、工作原理、元器件選擇;8、 繪制圖紙(手繪2號(hào)圖紙);9、 設(shè)計(jì)參考文獻(xiàn);10、 附錄;11、 設(shè)計(jì)總結(jié)體會(huì);12、 設(shè)計(jì)說明書不得少于10000
5、字。智能小車運(yùn)行圖顯示速度,距離,超聲波探測(cè)距離經(jīng)過調(diào)試,小車完美實(shí)現(xiàn)了如下功能1小車具有無線遙控功能,小車可完成前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)等動(dòng)作,并且可以正確顯示當(dāng)前的速度及行進(jìn)位移。2.小車具有循跡及避障功能,實(shí)現(xiàn)了舵機(jī)轉(zhuǎn)動(dòng)下的超聲波壁障功能,并且可以正確有序顯示小車位移、速度及與前方障礙物距離。3.與其它組的小車模型配合可以完成交替領(lǐng)跑任務(wù)。4小車所有模式切換均由遙控器控制。流程圖硬件原理圖附件一:智能小車系統(tǒng)程序#include <AT89x51.H> #include <intrins.h>sbit AA=P30; sbit DD=P31;sbit BB=P32;
6、sbit CC=P22;sbit LCM_RW=P24; /定義LCD引腳sbit LCM_RS=P23;#define RX P2_0#define TX P2_1#define LCM_E P2_5#define Sevro_moto_pwm P2_7/接舵機(jī)信號(hào)端輸入PWM信號(hào)調(diào)節(jié)速度#define LCM_Data P0#define Busy 0x80 /用于檢測(cè)LCM狀態(tài)字中的Busy標(biāo)識(shí)#define Left_1_led P3_7 /P3_7接四路尋跡模塊接口第一路輸出信號(hào)即中控板上面標(biāo)記為OUT1#define XUNJI_left_led P3_6 /P3_6接四路尋跡模塊
7、接口第二路輸出信號(hào)即中控板上面標(biāo)記為OUT2#define XUNJI_right_led P3_5 /P3_5接四路尋跡模塊接口第三路輸出信號(hào)即中控板上面標(biāo)記為OUT3#define Right_2_led P3_4 /P3_4接四路尋跡模塊接口第四路輸出信號(hào)即中控板上面標(biāo)記為OUT4#define Left_moto_go P1_4=1,P1_5=0,P1_6=1,P1_7=0; /左邊兩個(gè)電機(jī)向前走#define Left_moto_back P1_4=0,P1_5=1,P1_6=0,P1_7=1; /左邊兩個(gè)電機(jī)向后轉(zhuǎn)#define Left_moto_Stop P1_4=0,P1_5
8、=0,P1_6=0,P1_7=0; /左邊兩個(gè)電機(jī)停轉(zhuǎn) #define Right_moto_go P1_0=1,P1_1=0,P1_2=1,P1_3=0;/右邊兩個(gè)電機(jī)向前走#define Right_moto_back P1_0=0,P1_1=1,P1_2=0,P1_3=1;/右邊兩個(gè)電機(jī)向后走#define Right_moto_Stop P1_0=0,P1_1=0,P1_2=0,P1_3=0;/右邊兩個(gè)電機(jī)停轉(zhuǎn) void LCMInit(void); /LCD初始化函數(shù)void DisplayOneChar(unsigned char X, unsigned char Y, unsig
9、ned char DData); /LCD顯示一個(gè)字符函數(shù)void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData);/LCD顯示一個(gè)字符串函數(shù)void Delay5Ms(void); /延時(shí)5毫秒函數(shù)void Delay400Ms(void); /延時(shí)400毫秒函數(shù)void Decode(unsigned char ScanCode);void WriteDataLCM(unsigned char WDLCM); /LCD1602寫數(shù)據(jù)函數(shù)void WriteCommandLCM(unsi
10、gned char WCLCM,BuysC);/LCD寫命令函數(shù)unsigned char ReadStatusLCM(void);unsigned char code Range ="V= cm/s S= . m" /LCD1602顯示格式unsigned char code welcome ="= Welcome = "unsigned char code key="Press any key."unsigned char code ASCII13 = "0123456789.-M"unsigned char
11、code table="Distance:000.0cm"unsigned char code table1="YAO KONG MO SHI "unsigned char code table2="=XUN JI MO SHI= "unsigned char pwm_val_left = 0;/變量定義unsigned char push_val_left =14;/舵機(jī)歸中,產(chǎn)生約,1.5MS 信號(hào)unsigned int CH0=0; /循跡模式標(biāo)志unsigned int CH1=0; /超聲波模式標(biāo)志unsigned int
12、 t=0; /速度基準(zhǔn)變量unsigned int timer=0;/延時(shí)基準(zhǔn)變量unsigned int time=0;unsigned int pwm=250;unsigned int count1=0; /計(jì)左電機(jī)碼盤脈沖值unsigned char timer1=0; /掃描時(shí)間變量unsigned long S1=0;unsigned long S2=0;unsigned long S3=0;unsigned long S4=0; unsigned long S=0;unsigned long V=0; /定義其速度unsigned long SS=0;unsigned char d
13、isbuff4= 0,0,0,0,;unsigned char disbuff14= 0,0,0,0,;void WriteDataLCM(unsigned char WDLCM) /寫數(shù)據(jù)ReadStatusLCM(); /檢測(cè)忙LCM_Data = WDLCM;LCM_RS = 1;LCM_RW = 0;LCM_E = 0; /若晶振速度太高可以在這后加小的延時(shí)LCM_E = 0; /延時(shí)LCM_E = 1;void WriteCommandLCM(unsigned char WCLCM,BuysC) /寫指令,BuysC為0時(shí)忽略忙檢測(cè)if (BuysC) ReadStatusLCM()
14、; /根據(jù)需要檢測(cè)忙LCM_Data = WCLCM;LCM_RS = 0;LCM_RW = 0;LCM_E = 0;LCM_E = 0;LCM_E = 1;unsigned char ReadStatusLCM(void) /讀狀態(tài)LCM_Data = 0xFF; LCM_RS = 0;LCM_RW = 1;LCM_E = 0;LCM_E = 0;LCM_E = 1;while (LCM_Data & Busy); /檢測(cè)忙信號(hào)return(LCM_Data);void LCMInit(void) /LCM初始化LCM_Data = 0;WriteCommandLCM(0x38,0)
15、; /三次顯示模式設(shè)置,不檢測(cè)忙信號(hào)Delay5Ms(); WriteCommandLCM(0x38,0);Delay5Ms(); WriteCommandLCM(0x38,0);Delay5Ms(); WriteCommandLCM(0x38,1); /顯示模式設(shè)置,開始要求每次檢測(cè)忙信號(hào)WriteCommandLCM(0x08,1); /關(guān)閉顯示W(wǎng)riteCommandLCM(0x01,1); /顯示清屏WriteCommandLCM(0x06,1); / 顯示光標(biāo)移動(dòng)設(shè)置WriteCommandLCM(0x0c,1); / 顯示開及光標(biāo)設(shè)置/按指定位置顯示一個(gè)字符void Display
16、OneChar(unsigned char X, unsigned char Y, unsigned char DData)Y &= 0x1;X &= 0xF; /限制X不能大于15,Y不能大于1if (Y) X |= 0x40; /當(dāng)要顯示第二行時(shí)地址碼+0x40;X |= 0x80; /算出指令碼WriteCommandLCM(X, 1); /發(fā)命令字WriteDataLCM(DData); /發(fā)數(shù)據(jù)/按指定位置顯示一串字符void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *D
17、Data)unsigned char ListLength; ListLength = 0;Y &= 0x1;X &= 0xF; /限制X不能大于15,Y不能大于1while (DDataListLength>0x19) /若到達(dá)字串尾則退出if (X <= 0xF) /X坐標(biāo)應(yīng)小于0xFDisplayOneChar(X, Y, DDataListLength); /顯示單個(gè)字符ListLength+;X+;/5ms延時(shí)void Delay5Ms(void)unsigned int TempCyc = 5552;while(TempCyc-);/400ms延時(shí)voi
18、d Delay400Ms(void)unsigned char TempCycA = 5;unsigned int TempCycB;while(TempCycA-)TempCycB=7269;while(TempCycB-);/*/ void Conut(void) /超聲波距離計(jì)算函數(shù) while(!RX); /當(dāng)RX為零時(shí)等待 TR0=1; /開啟計(jì)數(shù) while(RX); /當(dāng)RX為零時(shí)等待 TR0=0; time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.7)/10+10; disbuff10=V%10; disbuff11=V/10; Display
19、ListChar(0, 0, Range); DisplayOneChar(2, 0, ASCIIdisbuff11); DisplayOneChar(3, 0, ASCIIdisbuff10); disbuff10=SS/10%10; disbuff11=SS/100%10; disbuff12=SS/1000; DisplayOneChar(11, 0, ASCIIdisbuff12); DisplayOneChar(12, 0, ASCIIdisbuff11); DisplayOneChar(13, 1, ASCII10); DisplayOneChar(14, 0, ASCIIdisb
20、uff10); disbuff0=S%10; disbuff1=S/10%10; disbuff2=S/100%10; disbuff3=S/1000; DisplayListChar(0, 1, table); DisplayOneChar(9, 1, ASCIIdisbuff3); DisplayOneChar(10, 1, ASCIIdisbuff2); DisplayOneChar(11, 1, ASCIIdisbuff1); DisplayOneChar(12, 1, ASCII10); DisplayOneChar(13, 1, ASCIIdisbuff0); /*/void Co
21、nut0(void) /循跡模式顯示 disbuff10=V%10; disbuff11=V/10; DisplayListChar(0, 0, Range); DisplayOneChar(2, 0, ASCIIdisbuff11); DisplayOneChar(3, 0, ASCIIdisbuff10); disbuff10=SS/10%10; disbuff11=SS/100%10; disbuff12=SS/1000; DisplayOneChar(11, 0, ASCIIdisbuff12); DisplayOneChar(12, 0, ASCIIdisbuff11); Displ
22、ayOneChar(13, 0, ASCII10); DisplayOneChar(14, 0, ASCIIdisbuff10); DisplayListChar(0, 1, table2); /*/ void StartModule() /啟動(dòng)模塊 TX=1; /啟動(dòng)一次模塊 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_()
23、; _nop_(); _nop_(); _nop_(); TX=0; /*/ /*void delayms(unsigned int ms)unsigned char i=100,j;for(;ms;ms-)while(-i)j=10;while(-j);*/void Timer_Count(void) /超聲波高電平脈沖寬度計(jì)算函數(shù) TR0=1; /開啟計(jì)數(shù) while(RX);/當(dāng)RX為1計(jì)數(shù)并等待 TR0=0;/關(guān)閉計(jì)數(shù) Conut();/計(jì)算/*/前速前進(jìn) void run(void) Left_moto_go ; /左電機(jī)往前走 Right_moto_go ; /右電機(jī)往前走/*/前
24、速后退 void backrun(void) Left_moto_back ; /左電機(jī)往前走 Right_moto_back ; /右電機(jī)往前走/*/左轉(zhuǎn) void leftrun(void) Left_moto_back ; /左電機(jī)往前走 Right_moto_go ; /右電機(jī)往前走/*/右轉(zhuǎn) void rightrun(void) Left_moto_go ; /左電機(jī)往前走 Right_moto_back ; /右電機(jī)往前走/*/STOP void stoprun(void) Left_moto_Stop ; /左電機(jī)停走 Right_moto_Stop ; /右電機(jī)停走/*/ v
25、oid COMM( void ) V=0; push_val_left=5; /舵機(jī)向左轉(zhuǎn)90度 timer=0; while(timer<=4000); /延時(shí)400MS讓舵機(jī)轉(zhuǎn)到其位置 4000 StartModule(); /啟動(dòng)超聲波測(cè)距 Conut(); /計(jì)算距離 S2=S; push_val_left=23; /舵機(jī)向右轉(zhuǎn)90度 timer=0; while(timer<=4000); /延時(shí)400MS讓舵機(jī)轉(zhuǎn)到其位置 StartModule(); /啟動(dòng)超聲波測(cè)距 Conut();/計(jì)算距離 S4=S; push_val_left=14;/舵機(jī)歸中 timer=0;
26、 while(timer<=4000); /延時(shí)400MS讓舵機(jī)轉(zhuǎn)到其位置 StartModule(); /啟動(dòng)超聲波測(cè)距 Conut(); /計(jì)算距離 S1=S; if(S2<300)|(S4<300) /只要左右各有距離小于,30CM小車后退 backrun(); /后退 timer=0; while(timer<=1000); if(S2>S4) rightrun(); /車的左邊比車的右邊距離小右轉(zhuǎn) timer=0; while(timer<=800); else leftrun();/車的左邊比車的右邊距離大左轉(zhuǎn) timer=0; while(ti
27、mer<=800); /*/void pwm_Servomoto(void) if(pwm_val_left<=push_val_left) Sevro_moto_pwm=1; else Sevro_moto_pwm=0;if (pwm_val_left>=100) pwm_val_left=0; /*/*TIMER1中斷服務(wù)子函數(shù)產(chǎn)生PWM信號(hào)*/ void time1()interrupt 3 using 2 TH1=(65536-100)/256; /100US定時(shí) TL1=(65536-100)%256; timer+; /定時(shí)器100US為準(zhǔn)。在這個(gè)基礎(chǔ)上延時(shí) pw
28、m_val_left+; pwm_Servomoto(); t+; timer1+; if(t>=6000) V=count1; count1=0; t=0; if(timer1>=500)timer1=0; /*/ void intersvr1(void) interrupt 2 using 1 SS+;count1+;/*/void timer0()interrupt 1 using 0 /TIMER0計(jì)數(shù) void main(void)Delay400Ms(); /啟動(dòng)等待,等LCM講入工作狀態(tài)LCMInit(); /LCM初始化Delay5Ms(); /延時(shí)片刻Displa
29、yListChar(0, 0, welcome);DisplayListChar(0, 1, key); TMOD=0X11;TH1=(65536-100)/256; /100US定時(shí)TL1=(65536-100)%256;TH0=0;TL0=0; TR1= 1;ET1= 1;ET0= 1;EX1=1; /開啟外部中斷0 IT1=1; /下降沿有效 IE1=0; EA = 1; push_val_left=14; /舵機(jī)歸中while(1) if(AA=1&&BB=1) CH0=1; CH1=0; Conut0(); Delay400Ms(); if(AA=1&&CC=1) CH0=0; CH1=1; stoprun(); Delay400Ms(); if(timer>=800&&CH1=1)/80MS檢測(cè)啟動(dòng)檢測(cè)一次 800 timer=0; StartModule(); /啟動(dòng)檢測(cè) Conut(); /計(jì)算距離 if(S<300) /距離小于30CM stoprun(); /小車停止 COMM(); /方向函數(shù) else if(S>400) /距離大于,4
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 教育培訓(xùn)合作委托居間合同
- 品牌營銷推廣策略指南
- 技術(shù)產(chǎn)品銷售合同
- 華為勞動(dòng)合同管理制度
- 遺傳基因技術(shù)服務(wù)合同
- 外貿(mào)實(shí)務(wù)操作作業(yè)指導(dǎo)書
- 倉儲(chǔ)配送合同
- 智能工廠建設(shè)與運(yùn)營作業(yè)指導(dǎo)書
- 2025年來賓貨運(yùn)從業(yè)資格證模擬考試題庫
- 2025年陜西貨運(yùn)從業(yè)資格考試模擬考試題庫及答案大全
- 小學(xué)校本課程教材《趣味數(shù)學(xué)》
- 干細(xì)胞療法推廣方案
- (2024年)電工安全培訓(xùn)(新編)課件
- mil-std-1916抽樣標(biāo)準(zhǔn)(中文版)
- 城鄉(xiāng)環(huán)衛(wèi)一體化內(nèi)部管理制度
- 廣匯煤炭清潔煉化有限責(zé)任公司1000萬噸年煤炭分級(jí)提質(zhì)綜合利用項(xiàng)目變更環(huán)境影響報(bào)告書
- 小學(xué)數(shù)學(xué)六年級(jí)解方程練習(xí)300題及答案
- 大數(shù)據(jù)在化工行業(yè)中的應(yīng)用與創(chuàng)新
- 光伏十林業(yè)可行性報(bào)告
- 小學(xué)綜合實(shí)踐《我做環(huán)保宣傳員 保護(hù)環(huán)境人人有責(zé)》
- 鋼煤斗內(nèi)襯不銹鋼板施工工法
評(píng)論
0/150
提交評(píng)論