版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 電氣工程學(xué)院課 程 設(shè) 計(jì) 說 明 書 設(shè)計(jì)題目: 全自動洗衣機(jī)PLC控制系統(tǒng)設(shè)計(jì) 系 別: 電氣工程學(xué)院 年級專業(yè): 學(xué) 號: 學(xué)生姓名: 指導(dǎo)教師:郭忠南、闞志忠、魏艷君、王德玉 電氣工程學(xué)院課程設(shè)計(jì)任務(wù)書課程名稱: 電氣控制與PLC課程設(shè)計(jì) 基層教學(xué)單位:電氣工程及自動化系 指導(dǎo)教師: 郭忠南等學(xué)號 學(xué)生姓名 (專業(yè))班級11應(yīng)電 1班設(shè)計(jì)題目全自動洗衣機(jī)PLC控制系統(tǒng)設(shè)計(jì)設(shè)計(jì)技術(shù)參數(shù)采用PLC構(gòu)成全自動洗衣機(jī)PLC電氣控制系統(tǒng)??刂埔蟛殚喯嚓P(guān)文獻(xiàn)。設(shè)計(jì)要求1) 根據(jù)控制要求,進(jìn)行電氣控制系統(tǒng)硬件電路設(shè)計(jì),包括PLC硬件配置電路。2) 根據(jù)控制要求,編制PLC控制程序3) 按要求編寫
2、設(shè)計(jì)說明書并繪制A1幅面圖紙一張。參考資料1、PLC電氣控制技術(shù) 漆漢宏主編 機(jī)械工業(yè)出版社 20082、圖書館各類期刊文獻(xiàn)相關(guān)數(shù)據(jù)庫3、相關(guān)電氣設(shè)計(jì)手冊周次第一周第二周應(yīng)完成內(nèi)容完成全部方案設(shè)計(jì):周一、二:查、閱相關(guān)參考資料周二至周五:方案設(shè)計(jì)周六、日:設(shè)計(jì)方案完善周一、二:完成設(shè)計(jì)說明書周三、四:繪制A1設(shè)計(jì)圖紙周五:答辯考核指導(dǎo)教師簽字基層教學(xué)單位主任簽字說明:1、此表一式三份,系、學(xué)生各一份,報(bào)送院教務(wù)科一份。 2、學(xué)生那份任務(wù)書要求裝訂到課程設(shè)計(jì)報(bào)告前面。電氣工程學(xué)院 教務(wù)科 燕山大學(xué)課程設(shè)計(jì)說明書 第 頁 摘要可編程序控制器(PLC)是綜合了計(jì)算機(jī)技術(shù)、自動控制技術(shù)和通信技術(shù)的一門
3、新興技術(shù),是實(shí)現(xiàn)工業(yè)生產(chǎn)、科學(xué)研究以及其他各個領(lǐng)域自動化的重要手段之一,應(yīng)用十分廣泛,是現(xiàn)代工業(yè)控制的三大支柱之一。可編程序控制器源于繼電器-接觸器控制,是電氣控制技術(shù)的最新發(fā)展階段,它們在理論和應(yīng)用上一脈相承。早期采用模擬電路、數(shù)字電路或模數(shù)混合電路實(shí)現(xiàn)全自動洗衣機(jī)的控制系統(tǒng)。近年來隨著科技的飛速發(fā)展,單片機(jī)、PLC的應(yīng)用不斷地走向深入,同時帶動了傳統(tǒng)控制檢測技術(shù)的不斷更新。本文采用日本三菱公司生產(chǎn)的FX2N-32MR型PLC作為可編程控制器進(jìn)行全自動洗衣機(jī)控制系統(tǒng)的設(shè)計(jì),并且設(shè)計(jì)。本文采用日本三菱公司生產(chǎn)的FX2N-32MR型PLC作為可編程控制器進(jìn)行全自動洗衣機(jī)控制系統(tǒng)的設(shè)計(jì),并且設(shè)計(jì)了
4、系統(tǒng)結(jié)構(gòu)圖、工作流程圖、電路原理圖、程序梯形圖、輸入輸出接口功能表以及元器件目錄表等,同時對程序進(jìn)行了模擬調(diào)試,驗(yàn)證了本設(shè)計(jì)的可行性。關(guān)鍵詞PLC PLC程序設(shè)計(jì) 可編程控制器 全自動洗衣機(jī)目 錄 TOC o 1-3 h z u HYPERLINK l _Toc328723447 摘要1 HYPERLINK l _Toc328723448 目 錄2 HYPERLINK l _Toc328723449 第1章 緒論3 HYPERLINK l _Toc328723450 1.1 設(shè)計(jì)背景3 HYPERLINK l _Toc328723451 1.2 PLC簡介3 HYPERLINK l _Toc3
5、28723452 1.2.1 PLC的定義3 HYPERLINK l _Toc328723453 1.2.2 PLC的特點(diǎn)3 HYPERLINK l _Toc328723454 第2章 全自動洗衣機(jī)PLC控制系統(tǒng)設(shè)計(jì)4 HYPERLINK l _Toc328723455 2.1 全自動洗衣機(jī)的結(jié)構(gòu)和工作原理4 HYPERLINK l _Toc328723456 2.2 全自動洗衣機(jī)的控制要求和工作流程5 HYPERLINK l _Toc328723457 2.3 全自動洗衣機(jī)的硬件設(shè)計(jì)8 HYPERLINK l _Toc328723458 2.3.1 元器件的選擇8 HYPERLINK l _
6、Toc328723459 2.3.2 電路設(shè)計(jì)10 HYPERLINK l _Toc328723460 2.4 全自動洗衣機(jī)的軟件設(shè)計(jì)12 HYPERLINK l _Toc328723461 2.4.1 輸入輸出接口的分配12 HYPERLINK l _Toc328723462 2.4.2 梯形圖設(shè)計(jì) PAGEREF _Toc328723462 h 13 2.4.3程序設(shè)計(jì)20 HYPERLINK l _Toc328723463 第3章 總結(jié)致謝22 HYPERLINK l _Toc328723464 參考文獻(xiàn)23燕山大學(xué)本科生畢業(yè)設(shè)計(jì)(論文)PAGE 3第 頁第1章 緒論1.1 設(shè)計(jì)背景王維
7、詩山居秋暝中云,竹喧歸浣女,蓮動下漁舟。道出了恬淡富雅的生活品行,然曾幾何時,本是清新的唯美畫面竟成為了一項(xiàng)負(fù)擔(dān),禁錮了古代婦人的雙手,時至今日,無論男女都無法避免的這項(xiàng)家務(wù)勞動。慶幸的是,社會在發(fā)展,人類在進(jìn)步,科學(xué)在創(chuàng)新,當(dāng)年的手搖洗衣機(jī)、蒸汽洗衣機(jī)、內(nèi)燃機(jī)洗衣機(jī)早已被拍死在沙灘上,今天全自動洗衣機(jī)應(yīng)運(yùn)而生,承擔(dān)了無數(shù)宅男宅女的辛勤期望,全自動洗衣機(jī)已由洗衣衍生出各種功能,更加的智能。今天我所介紹的便是基于PLC控制的全自動洗衣機(jī)。全自動洗衣機(jī)的特點(diǎn)是能自動完成洗滌,漂洗和脫水的轉(zhuǎn)換,整個過程不需要人工操作。這類洗衣機(jī)均采用套筒式結(jié)構(gòu),其進(jìn)水,排水都采用電磁閥,由程序控制器按人們預(yù)先設(shè)計(jì)好
8、的程序不斷發(fā)出指令,驅(qū)動各執(zhí)行器件動作,整個洗衣過程自動完成。1.2 PLC簡介1.2.1 PLC的定義可編程控制器(PLC)是一種數(shù)字運(yùn)算操作的電子系統(tǒng),專為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)。它采用了可編程序的存儲器,用來在其內(nèi)部存儲執(zhí)行邏輯運(yùn)算、順序控制、定時、計(jì)數(shù)和算術(shù)運(yùn)算等操作的指令,并通過數(shù)字式和模擬式的輸入和輸出,控制各種類型機(jī)械的生產(chǎn)過程??删幊炭刂破骷捌溆嘘P(guān)外部設(shè)備,都應(yīng)按易于與工業(yè)控制系統(tǒng)連成一個整體,易于擴(kuò)充其功能的原則設(shè)計(jì)。總之,可編程控制器是一臺專為工業(yè)環(huán)境而設(shè)計(jì)的計(jì)算機(jī),它是將傳統(tǒng)的計(jì)算機(jī)技術(shù)、繼電器技術(shù)和通信技術(shù)相融合而發(fā)展起來的一種新型的控制裝置。在具體的國內(nèi)工業(yè)應(yīng)用中,由
9、于它不是針對某一具體的工業(yè)應(yīng)用,因此它的硬件應(yīng)根據(jù)實(shí)際需要來進(jìn)行配置,其軟件則根據(jù)控制要求進(jìn)行編寫。1.2.2 PLC的特點(diǎn)(1)可靠性高。PLC作為一種通用的工業(yè)控制器,對工作的環(huán)境要求較低,抗外部干擾能力強(qiáng),平均無故障時間長。(2)使用方便靈活。PLC采用了基本單元擴(kuò)展或者是模塊化的結(jié)構(gòu)形式,因此,輸入/輸出信號的數(shù)量、形式、驅(qū)動能力等都可以根據(jù)實(shí)際控制要求進(jìn)行選擇與確定,而且在需要時可以隨時更換。近年來,PLC的特殊模塊增多,這些可以滿足不同的控制要求,使PLC的使用更加靈活與多變。(3)編程簡單。PLC的優(yōu)越性主要體現(xiàn)在它采用了獨(dú)特的、多種面向廣大工程設(shè)計(jì)人員的編程語言,如指令表、梯形
10、圖、邏輯功能圖、順序功能圖等,程序簡潔明了,適合各類技術(shù)人員的傳統(tǒng)習(xí)慣,即使是沒有計(jì)算機(jī)知識的人員也很容易掌握。第2章 全自動洗衣機(jī)PLC控制系統(tǒng)設(shè)計(jì)2.1 全自動洗衣機(jī)的結(jié)構(gòu)和工作原理本全自動洗衣機(jī)為波輪式套筒洗衣機(jī),由洗滌、脫水系統(tǒng),進(jìn)、排水系統(tǒng),電動機(jī)傳動系統(tǒng),PLC控制系統(tǒng)等部分組成。其結(jié)構(gòu)如下圖所示:圖1 波輪式套筒洗衣機(jī)內(nèi)部結(jié)構(gòu)圖波輪式套筒洗衣機(jī)的工作原理:洗衣機(jī)的盛水桶和脫水桶是以同一軸心安放的。盛水桶外桶固定,作盛水用;內(nèi)桶可以旋轉(zhuǎn),作脫水用。內(nèi)桶上有很多小孔,使內(nèi)外桶的水流相通。該洗衣機(jī)的進(jìn)水和排水分別由進(jìn)水電磁閥和排水電磁閥來控制。進(jìn)水時,通過控制系統(tǒng)進(jìn)水閥打開,經(jīng)進(jìn)水管將
11、水注入到桶內(nèi)。排水時,通過控制系統(tǒng)使排水閥打開,將水由外桶排出。洗滌正轉(zhuǎn)、反轉(zhuǎn)由洗滌電動機(jī)驅(qū)動波輪正、反轉(zhuǎn)來實(shí)現(xiàn),此時脫水桶并不旋轉(zhuǎn)。脫水時,通過控制系統(tǒng)將離合器合上,由電動機(jī)帶動內(nèi)桶正轉(zhuǎn)進(jìn)行甩干。洗滌水位浮球開關(guān)用來檢測是否到達(dá)洗滌水位,水排空浮球開關(guān)用來檢測水是否全部排出。啟動按鈕(開始洗滌按鈕)啟動洗衣機(jī)進(jìn)行洗衣,手動脫水按鈕用來直接選擇脫水模式,手動停止按鈕用來實(shí)現(xiàn)洗衣機(jī)的暫停和停止。2.2 全自動洗衣機(jī)的控制要求和工作流程本全自動洗衣機(jī)要求能實(shí)現(xiàn)“自動運(yùn)行”和“手動運(yùn)行”兩種控制方式。1.自動運(yùn)行具體控制要求如下:(1)按下“開始洗滌”按扭,開始進(jìn)水,達(dá)到洗滌水位后,停止進(jìn)水;(2)
12、進(jìn)水停止3s后開始洗衣;(3)洗衣時,正轉(zhuǎn)7s,停3s,然后反轉(zhuǎn)7s,停3s,依此循環(huán);(4)洗衣15min后開始排水,水排空后脫水5min;(5)然后再進(jìn)水,重復(fù)(1)(4)步,循環(huán)2次;(6)洗衣完成后蜂鳴器報(bào)警10s并自動停機(jī)。2.手動運(yùn)行具體控制要求如下:(1)當(dāng)進(jìn)水或洗衣時按下“手動停止”按扭,洗衣過程中止,即電機(jī)停轉(zhuǎn),進(jìn)水電磁閥和排水電磁閥全部閉合;此時若按下“開始洗滌”按鈕,將繼續(xù)洗衣;若按下“手動脫水”按鈕,則進(jìn)水電磁閥閉合,排水電磁閥打開,開始進(jìn)行排水、脫水,最后停機(jī)。(2)當(dāng)脫水時按下“手動停止”按扭,脫水過程中止,即電機(jī)停轉(zhuǎn);此時若按下“開始洗滌”按鈕,將重新洗衣;若按下
13、“手動脫水”按鈕,則進(jìn)水電磁閥閉合,排水電磁閥打開,開始進(jìn)行排水、脫水,最后停機(jī)。(3)當(dāng)脫水時,若安全蓋打開,則洗衣機(jī)暫停脫水,直到安全蓋閉合再繼續(xù)脫水,或者按“手動停止”按鈕,使之停機(jī)。自動運(yùn)行過程如下圖: 圖2 自動工作流程圖手動運(yùn)行過程如下圖:圖3 手動工作流程圖2.3 全自動洗衣機(jī)的硬件設(shè)計(jì)2.3.1 元器件的選擇(1)PLC的選擇本設(shè)計(jì)所用PLC采用日本三菱公司生產(chǎn)的FX2N系列機(jī)型中的FX2N-32MR型,此PLC有16個輸入接口和16個輸出接口,輸出接口為繼電器型。FX2N系列是FX系列PLC家族中最先進(jìn)的系列,由于FX2N系列具備如下特點(diǎn):最大范圍的包容了標(biāo)準(zhǔn)特點(diǎn),程式執(zhí)行更
14、快,全面補(bǔ)充了通信功能,適合世界各國不同的電源以及滿足單個需要的大量特殊功能模塊,擁有強(qiáng)大的靈活性和控制能力。(2)電動機(jī)的選擇本洗衣機(jī)的電動機(jī)選用了家用電器常用的單相電容運(yùn)轉(zhuǎn)式異步電動機(jī)。洗衣機(jī)設(shè)計(jì)容量為3.6公斤,故電機(jī)額定功率選為180W;洗衣轉(zhuǎn)速175r/min,脫水轉(zhuǎn)速1200r/min。綜上,選擇YY104-180型單相電容運(yùn)轉(zhuǎn)式異步電動機(jī),額定功率180W,額定電壓220V,額定轉(zhuǎn)速1350r/min,額定電流1.7A。(3)其他元器件參數(shù)見下表:文字符號名稱數(shù)量規(guī)格型號備注M電動機(jī)1YY104-180單相電容運(yùn)轉(zhuǎn)式異步電動機(jī)SB1SB3手動按鈕3LAY37洗滌-綠色,停止-紅色
15、,脫水-藍(lán)色G1安全蓋開關(guān)1開蓋-打開,盒蓋-閉合F1洗滌水位浮球開關(guān)1常開F2水排空浮球開關(guān)1常閉KM1KM4交流接觸器4DJX-9線圈電壓:AC220VL1、L2指示燈2AD16-22LED顯示,AC220VYA1進(jìn)水電磁閥1線圈電壓:AC220V,常開YA2排水電磁閥1線圈電壓:AC220V,常開FR熱繼電器1JR16B-20/3FU熔斷器1RT16-32X熔體2ATC隔離變壓器1BK-100電壓比1:1,AC220VLH電磁離合器1常開HA 報(bào)警電鈴1AC220VPLC可編程序控制器1FX2N-32MR繼電器輸出VD1VD4二極管41N4001耐壓值50VC穩(wěn)壓電容14007680uf
16、表1 元器件目錄表2.3.2 電路設(shè)計(jì)主電路圖設(shè)計(jì)如上:圖中FU為熔斷器,用于主電路的短路保護(hù),F(xiàn)R為熱繼電器,用于電動機(jī)的過載保護(hù)。通過FM3和FM4的開閉使電位器串聯(lián)到電動機(jī)繞組上,從而得到兩種轉(zhuǎn)速。當(dāng)FM1和FM3閉合時,電機(jī)低速正轉(zhuǎn)洗衣,當(dāng)FM2和FM3閉合時,電機(jī)低速反轉(zhuǎn)洗衣,當(dāng)FM1和FM4閉合時,電機(jī)高速正轉(zhuǎn)脫水。PLC控制電路如下圖: 圖5 PLC控制電路圖 PLC供電回路采用隔離變壓器TC1,以防止電源干擾。 4個二極管構(gòu)成整流電路,由變壓器TC2經(jīng)變壓得到24V交流電壓,經(jīng)過整流得到24V直流電,然后經(jīng)過電容C穩(wěn)壓,最終給COM2口供電。2.4 全自動洗衣機(jī)的軟件設(shè)計(jì)2.4
17、.1 輸入輸出接口的分配PLC輸入輸出接口的分配使用情況如下表:輸入輸出輸入端口文字符號工位名稱輸出端口文字符號工位名稱X000SB1開始洗滌按鈕Y000KM1電機(jī)正轉(zhuǎn)接觸器X001SB2手動停止按鈕Y001KM2電機(jī)反轉(zhuǎn)接觸器X002SB3手動脫水按鈕Y002KM3電機(jī)高速接觸器X003F1洗滌水位浮球開關(guān)Y003KM4電機(jī)低速接觸器X004F2水排空浮球開關(guān)Y004L1洗滌狀態(tài)指示燈X005G1安全蓋開關(guān)Y005L2脫水狀態(tài)指示燈X006FR電動機(jī)熱保護(hù)開關(guān)Y006HA報(bào)警電鈴Y010YA1進(jìn)水電磁閥繼電器Y011YA2排水電磁閥繼電器Y012LH離合器繼電器表2 輸入輸出接口功能表2.4
18、.2 梯形圖設(shè)計(jì)(1)初始狀態(tài) (2)加水狀態(tài) (3)正轉(zhuǎn)洗滌狀態(tài) (4)反轉(zhuǎn)洗滌狀態(tài) (5)排水狀態(tài) (6)脫水狀態(tài) (7)安全蓋保護(hù)狀態(tài) (8)洗滌次數(shù)計(jì)數(shù)狀態(tài) (9)電鈴報(bào)警狀態(tài)2.4.3 程序設(shè)計(jì)0 LD M8002 1 SET S03 STLS04 LD X0005 SETS207 RSTT2519 RST C111 LD X00212 ANDX00513 SET S2315 OUT C1K118 STLS2019 LDI X00320 OUT Y01021 LD X00322 SETS2124 LD X00125 SETS2127 STLS2128 OUT Y00429 OUTT0
19、 K3032 OUTT1K10035 OUTT250 K900038 LDI Y00239 OUTY00340 LD T041 ANIY00142 OUTY00043 LD T144 SETS2246 LD T25047 OUT S2349 LD X00150 ORX00651 SETS2353 STS2254 OUTY00455 OUTT2K3058 OUTT3K10061 OUTT250K900064 LDIY00265 OUTY00366 LDT267 ANIY00068 OUTY00169 LDT370 SET S2172 LDT25073 SETS2375 LDX00176 OR Y
20、00677 SETS079 STL S2380 RSTT25082 OUTY01183 ANDX00484 SETS2486 STL S2487 OUT Y01288 OUTY01189 OUT Y00590 OUT T4 K3093 OUT T251 K300096 LDT497 MPS98 ANIY00399 OUTY002100 MPP101 ANI Y001102 OUTY000103 LD T251104 SETS26106 LDX001107 ORX006108 SETS0110 LDX005111 SET S25113 STL S25114 LD X005115 SET S241
21、17 LD X001118 SET S0120 RST 251122 STL S26123 OUTC0 K2126 RSTT251128 SET S27130 STL S27131 LDIC0132 MPS133 ANI C1134 SET S20136 MPP137 ANDC1138 SETS28140 LD C0141 SETS28143 STL S28144 OUTT5K100147 RSTC0149 RSTC1151 LDI T7152 OUT T6 K5155 LDT6156 OUTT7K5159 OUTY006160 LDT5161 SETS0163 RET164 END 第3章
22、總結(jié)致謝至此,課程設(shè)計(jì)已全部完成。實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)。通過這次課程設(shè)計(jì),讓我深刻的懂得了道理。紙上談兵終究僅僅停留在理論方面,它是脫離實(shí)際的。這次的實(shí)戰(zhàn)演習(xí),讓我發(fā)現(xiàn)了更多平時學(xué)習(xí)中的不足,也發(fā)現(xiàn)了各種問題,通過這些問題的討論與解決,提高了自己分析問題和解決問題的能力。這次的課程設(shè)計(jì)中通過GX Developer和Viso2003兩個軟件為載體,分別完成了PLC課程設(shè)計(jì)的仿真和硬件的設(shè)計(jì),同時也加深了我對三菱FX2N系列PLC工作原理和使用方法的理解。通過PLC實(shí)驗(yàn)箱的模擬,鍛煉了我動手操作的原理。在整個設(shè)計(jì)過程中,我不僅對課本上學(xué)到的知識有了更深的理解,也樹立起了對待設(shè)計(jì)產(chǎn)品要精益求精
23、的態(tài)度。畫電氣原理圖時,其中用到的符號一定要找到標(biāo)準(zhǔn)格式,相互電氣連線有交叉時,一定按照規(guī)范制圖,不能理所當(dāng)然。在遇到PLC端口不知該如何接線時,不僅要從書本上尋求例子,還要學(xué)會去三菱公司官網(wǎng)上查看PLC手冊,因?yàn)樗械膮⒖紩皇菍κ謨缘闹v解。同時,這次PLC課程設(shè)計(jì)也加深了我和老師與同學(xué)們之間的交流,尤其是和我課題相同的XX同學(xué)的相互討論讓我受益匪淺。最后還要感謝課程設(shè)計(jì)郭忠南、闞志忠、魏艷君和王德玉老師的細(xì)心指導(dǎo)。在我最迷茫的時候,給我適時的指導(dǎo),讓我避免了不少的彎路,從而使這次課程設(shè)計(jì)圓滿成功。我深信,本次的課程設(shè)計(jì)將成為我未來職業(yè)崗位一塊堅(jiān)實(shí)的基石。 參 考 文 獻(xiàn)1 PLC電氣控制
24、技術(shù)漆漢宏主編 機(jī)械工業(yè)出版社 2012.42 張桂香 電氣MR控制與PLC應(yīng)用 化學(xué)工業(yè)出版社 20033 呂景泉 可編程控制器技術(shù)教程 高等教育出版社 20004 三菱FX2N系列微型可編程控制器使用手冊5 QBT 4136-2010 家用和類似用途電動洗衣機(jī)用電動機(jī)技術(shù)要求 附錄資料:不需要的可以自行刪除 C語言圖形模式速成第一節(jié) 圖形模式的初始化Turbo C 提供了非常豐富的圖形函數(shù),所有圖形函數(shù)的原型均在graphics. h 中,本節(jié)主要介紹圖形模式的初始化、獨(dú)立圖形程序的建立、基本圖形功能、圖形窗口以及圖形模式下的文本輸出等函數(shù)。另外,使用圖形函數(shù)時要確保有顯示器圖形驅(qū)動程序*
25、.BGI,同時將集成開發(fā)環(huán)境options/Linker中的Graphics lib選為on,只有這樣才能保證正確使用圖形函數(shù)。 不同的顯示器適配器有不同的圖形分辨率。即是同一顯示器適配器,在不同模式下也有不同分辨率。因此,在屏幕作圖之前,必須根據(jù)顯示器適配器種類將顯示器設(shè)置成為某種圖形模式,在未設(shè)置圖形模式之前,微機(jī)系統(tǒng)默認(rèn)屏幕為文本模式(80列,25行字符模式),此時所有圖形函數(shù)均不能工作。設(shè)置屏幕為圖形模式,可用下列圖形初始化函數(shù):void far initgraph(int far *gdriver, int far *gmode,char *path);其中g(shù)driver和gmode
26、分別表示圖形驅(qū)動器和模式,path是指圖形驅(qū)動程序所在的目錄路徑。有關(guān)圖形驅(qū)動器、圖形模式的符號常數(shù)及對應(yīng)的分辨率見graphics. h。圖形驅(qū)動程序由Turbo C出版商提供,文件擴(kuò)展名為.BGI。 根據(jù)不同的圖形適配器有不同的圖形驅(qū)動程序。例如對于EGA、 VGA 圖形適配器就調(diào)用驅(qū)動程序EGAVGA.BGI。#include stdio.h#include graphics.hint main()int gdriver, gmode;gdriver=VGA;gmode=VGAHI;initgraph(&gdriver, &gmode, C:TC2.0BGI);bar3d(100, 10
27、0, 300, 250, 50, 1); /*畫一長方體*/getch();closegraph();return 0;有時編程者并不知道所用的圖形顯示器適配器種類,或者需要將編寫的程序用于不同圖形驅(qū)動器,Turbo C 提供了一個自動檢測顯示器硬件的函數(shù),其調(diào)用格式為:void far detectgraph(int *gdriver, *gmode);其中g(shù)driver和gmode的意義與上面相同。 自動進(jìn)行硬件測試后進(jìn)行圖形初始化:#include stdio.h#include graphics.hint main()int gdriver, gmode;detectgraph(&gd
28、river, &gmode); /*自動測試硬件*/printf(the graphics driver is %d, mode is %dn,gdriver,gmode); /*輸出測試結(jié)果*/getch();initgraph(&gdriver, &gmode, C:TC2.0BGI);/* 根據(jù)測試結(jié)果初始化圖形*/bar3d(100, 100, 300, 250, 50, 1); /*畫一長方體*/getch();closegraph();return 0;上例程序中先對圖形顯示器自動檢測,然后再用圖形初始化函數(shù)進(jìn)行初始化設(shè)置,但Turbo C提供了一種更簡單的方法, 即用gdrive
29、r=DETECT 語句后再跟initgraph()函數(shù)就行了。采用這種方法后,上例可改為:#include stdio.h#include graphics.hint main()int gdriver=DETECT, gmode;initgraph(&gdriver, &gmode, C:TC2.0BGI);bar3d(50, 50, 150, 30, 50, 1);getch();closegraph();return 0;另外,Turbo C 提供了退出圖形狀態(tài)的函數(shù)closegraph(),其調(diào)用格式為:void far closegraph(void);第二節(jié) 屏幕顏色的設(shè)置和清屏函
30、數(shù)對于圖形模式的屏幕顏色設(shè)置,同樣分為背景色的設(shè)置和前景色的設(shè)置。在Turbo C中分別用下面兩個函數(shù): 設(shè)置背景色: void far setbkcolor(int color);設(shè)置作圖色: void far setcolor(int color);其中color 為圖形方式下顏色的規(guī)定數(shù)值,對EGA,VGA顯示器適配器,有關(guān)顏色的符號常數(shù)及數(shù)值見graphics.h。清除圖形屏幕內(nèi)容但不清除圖形背景使用清屏函數(shù),其調(diào)用格式如下: voide far cleardevice(void);#include stdio.h#include graphics.hint main()int gdr
31、iver, gmode, i,aa;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI); /*圖形初始化*/setbkcolor(0); /*設(shè)置圖形背景*/cleardevice();for(i=0; i=15; i+)setcolor(i); /*設(shè)置不同作圖色*/circle(320, 240, 20+i*10); /*畫半徑不同的圓*/getch();for(i=0; i=15; i+)setbkcolor(i); /*設(shè)置不同背景色*/cleardevice();circle(320, 240, 20+i*10);getch(
32、);aa=getmaxcolor();printf(maxcolor=%d,aa);getch();closegraph();return 0;另外,TURBO C也提供了幾個獲得現(xiàn)行顏色設(shè)置情況的函數(shù)。 int far getbkcolor(void); 返回現(xiàn)行背景顏色值。int far getcolor(void); 返回現(xiàn)行作圖顏色值。int far getmaxcolor(void); 返回最高可用的顏色值。第三節(jié) 基本畫圖函數(shù)基本圖形函數(shù)包括畫點(diǎn),線以及其它一些基本圖形的函數(shù)。本節(jié)對這些函數(shù)作一全面的介紹。 、畫點(diǎn). 畫點(diǎn)函數(shù) void far putpixel(int x, in
33、t y, int color); 該函數(shù)表示有指定的象元畫一個按color 所確定顏色的點(diǎn)。對于顏色color的值可從表3中獲得而對x, y是指圖形象元的坐標(biāo)。在圖形模式下,是按象元來定義坐標(biāo)的。對VGA適配器,它的最高分辨率為640 x480,其中640為整個屏幕從左到右所有象元的個數(shù),480為整個屏幕從上到下所有象元的個數(shù)。屏幕的左上角坐標(biāo)為(0,0),右下角坐標(biāo)為(639, 479),水平方向從左到右為x 軸正向,垂直方向從上到下為y軸正向。TURBO C的圖形函數(shù)都是相對于圖形屏幕坐標(biāo),即象元來說的。關(guān)于點(diǎn)的另外一個函數(shù)是: int far getpixel(int x, int y)
34、; 它獲得當(dāng)前點(diǎn)(x, y)的顏色值。 II、有關(guān)坐標(biāo)位置的函數(shù) int far getmaxx(void);返回x軸的最大值。int far getmaxy(void);返回y軸的最大值。int far getx(void); 返回游標(biāo)在x軸的位置。void far gety(void); 返回游標(biāo)有y軸的位置。void far moveto(int x, int y); 移動游標(biāo)到(x, y)點(diǎn),不是畫點(diǎn),在移動過程中亦畫點(diǎn)。void far moverel(int dx, int dy); 移動游標(biāo)從現(xiàn)行位置(x, y)移動到(x+dx, y+dy)的位置,移動過程中不畫點(diǎn)。、畫線I.
35、畫線函數(shù)TURBO C提供了一系列畫線函數(shù): void far line(int x0, int y0, int x1, int y1); 畫一條從點(diǎn)(x0, y0)到(x1, y1)的直線。void far lineto(int x, int y); 畫一作從現(xiàn)行游標(biāo)到點(diǎn)(x, y)的直線。void far linerel(int dx, int dy); 畫一條從現(xiàn)行游標(biāo)(x,y)到按相對增量確定的點(diǎn)(x+dx, y+dy)的直線。void far circle(int x, int y, int radius); 以(x, y)為圓心,radius為半徑,畫一個圓。void far ar
36、c(int x, int y, int stangle, int endangle,int radius); 以(x,y)為圓心,radius為半徑,從stangle開始到endangle結(jié)束(用度表示)畫一段圓弧線。在TURBO C中規(guī)定x軸正向?yàn)? 度,逆時針方向旋轉(zhuǎn)一周, 依次為90,180, 270和360度(其它有關(guān)函數(shù)也按此規(guī)定,不再重述)。 void ellipse(int x, int y, int stangle, int endangle,int xradius,int yradius);以(x, y)為中心,xradius,yradius為x軸和y軸半徑,從角stangl
37、e 開始到endangle結(jié)束畫一段橢圓線,當(dāng)stangle=0,endangle=360時, 畫出一個完整的橢圓。void far rectangle(int x1, int y1, int x2, inty2); 以(x1, y1)為左上角,(x2, y2)為右下角畫一個矩形框。 void far drawpoly(int numpoints, int far *polypoints); 畫一個頂點(diǎn)數(shù)為numpoints,各頂點(diǎn)坐標(biāo)由polypoints給出的多邊形。polypoints整型數(shù)組必須至少有2 倍頂點(diǎn)數(shù)個無素。每一個頂點(diǎn)的坐標(biāo)都定義為x,y,并且x在前。值得注意的是當(dāng)畫一個封
38、閉的多邊形時,numpoints 的值取實(shí)際多邊形的頂點(diǎn)數(shù)加一,并且數(shù)組polypoints中第一個和最后一個點(diǎn)的坐標(biāo)相同。下面舉一個用drawpoly()函數(shù)畫箭頭的例子。#include stdio.h#include graphics.hint main()int gdriver, gmode, i;int arw16=200,102,300,102,300,107,330,100,300,93,300,98,200,98,200,102;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI);setbkcolor(BLUE);cle
39、ardevice();setcolor(12); /*設(shè)置作圖顏色*/drawpoly(8, arw); /*畫一箭頭*/getch();closegraph();return 0;II、設(shè)定線型函數(shù)在沒有對線的特性進(jìn)行設(shè)定之前,TURBO C 用其默認(rèn)值,即一點(diǎn)寬的實(shí)線,但TURBO C 也提供了可以改變線型的函數(shù)。線型包括:寬度和形狀。其中寬度只有兩種選擇:一點(diǎn)寬和三點(diǎn)寬。而線的形狀則有五種。下面介紹有關(guān)線型的設(shè)置函數(shù)。void far setlinestyle(int linestyle,unsigned upattern,int thickness);該函數(shù)用來設(shè)置線的有關(guān)信息,其中l(wèi)
40、inestyle是線形狀的規(guī)定,見graphics.h。對于upattern,只有l(wèi)inestyle選USERBIT_LINE 時才有意義 (選其它線型,uppattern取0即可)。此時uppattern的16位二進(jìn)制數(shù)的每一位代表一個象元,如果那位為1,則該象元打開,否則該象元關(guān)閉。 void far getlinesettings(struct linesettingstypefar *lineinfo);該函數(shù)將有關(guān)線的信息存放到由lineinfo 指向的結(jié)構(gòu)中,表中l(wèi)inesettingstype的結(jié)構(gòu)如下:struct linesettingstypeint linestyle;u
41、nsigned upattern;int thickness;例如下面兩句程序可以讀出當(dāng)前線的特性 struct linesettingstype *info;getlinesettings(info);void far setwritemode(int mode);該函數(shù)規(guī)定畫線的方式。如果mode=0,則表示畫線時將所畫位置的原來信息覆蓋了(這是TURBO C的默認(rèn)方式)。如果mode=1, 則表示畫線時用現(xiàn)在特性的線與所畫之處原有的線進(jìn)行異或(XOR)操作,實(shí)際上畫出的線是原有線與現(xiàn)在規(guī)定的線進(jìn)行異或后的結(jié)果。因此,當(dāng)線的特性不變,進(jìn)行兩次畫線操作相當(dāng)于沒有畫線。有關(guān)線型設(shè)定和畫線函數(shù)的
42、例子如下所示。#include stdio.h#include graphics.hint main()int gdriver, gmode, i;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI);setbkcolor(BLUE);cleardevice();setcolor(GREEN);circle(320, 240, 98);setlinestyle(0, 0, 3); /*設(shè)置三點(diǎn)寬實(shí)線*/setcolor(2);rectangle(220, 140, 420, 340);setcolor(WHITE);setlinestyl
43、e(4, 0 xaaaa, 1);/*設(shè)置一點(diǎn)寬用戶定義線*/line(220, 240, 420, 240);line(320, 140, 320, 340);getch();closegraph();return 0;第四節(jié) 基本圖形的填充填充就是用規(guī)定的顏色和圖模填滿一個封閉圖形。 一般是先畫輪廓再填充。TURBO C提供了一些先畫出基本圖形輪廓, 再按規(guī)定圖模和顏色填充整個封閉圖形的函數(shù)。在沒有改變填充方式時,TURBO C 以默認(rèn)方式填充。 void far bar(int x1, int y1, int x2, int y2);確定一個以(x1,y1)為左上角,(x2,y2)為右下
44、角的矩形窗口,再按規(guī)定圖模和顏色填充。說明:此函數(shù)不畫出邊框,所以填充色為邊框。void far bar3d(int x1, int y1, int x2, int y2,int depth,int topflag);當(dāng)topflag為非0時, 畫出一個三維的長方體。當(dāng)topflag為0時,三維圖形不封頂,實(shí)際上很少這樣使用。說明: bar3d()函數(shù)中,長方體第三維的方向不隨任何參數(shù)而變,即始終為45度的方向。void far pieslice(int x,int y,int stangle,int endangle,int radius);畫一個以(x, y)為圓心,radius為半徑,s
45、tangle為起始角度,endangle 為終止角度的扇形,再按規(guī)定方式填充。當(dāng)stangle=0,endangle=360 時變成一個實(shí)心圓,并在圓內(nèi)從圓點(diǎn)沿X軸正向畫一條半徑。void far sector(int x, int y,int stanle,intendangle,int xradius, int yradius);畫一個以(x, y)為圓心分別以xradius, yradius為x軸和y軸半徑,stangle 為起始角,endangle為終止角的橢圓扇形,再按規(guī)定方式填充。第五節(jié) 設(shè)定填充方式TURBO C有四個與填充方式有關(guān)的函數(shù)。下面分別介紹: void far set
46、fillstyle(int pattern, int color); color的值是當(dāng)前屏幕圖形模式時顏色的有效值。pattern的值及與其等價的符號常數(shù)見graphics.h。除USER_FILL(用戶定義填充式樣)以外,其它填充式樣均可由setfillstyle() 函數(shù)設(shè)置。當(dāng)選用USER_FILL時,該函數(shù)對填充圖模和顏色不作任何改變。 之所以定義USER_FILL主要因?yàn)樵讷@得有關(guān)填充信息時用到此項(xiàng)。void far setfillpattern(char * upattern,int color); 設(shè)置用戶定義的填充圖模的顏色以供對封閉圖形填充。其中upattern是一個指向8
47、個字節(jié)的指針。這8個字節(jié)定義了8x8點(diǎn)陣的圖形。每個字節(jié)的8位二進(jìn)制數(shù)表示水平8點(diǎn),8個字節(jié)表示8行,然后以此為模型向個封閉區(qū)域填充。void far getfillpattern(char * upattern); 該函數(shù)將用戶定義的填充圖模存入upattern指針指向的內(nèi)存區(qū)域。void far getfillsetings(struct fillsettingstypefar * fillinfo); 獲得現(xiàn)行圖模的顏色并將存入結(jié)構(gòu)指針變量fillinfo中。其中fillsettingstype結(jié)構(gòu)定義如下:struct fillsettingstypeint pattern; /* 現(xiàn)
48、行填充模式 * /int color; /* 現(xiàn)行填充模式 * /; 有關(guān)圖形填充圖模的顏色的選擇,請看下面例程。#include stdio.h#include graphics.hmain()char str8=10,20,30,40,50,60,70,80; /*用戶定義圖模*/int gdriver,gmode,i;struct fillsettingstype save;/*定義一個用來存儲填充信息的結(jié)構(gòu)變量*/gdriver=DETECT;initgraph(&gdriver,&gmode,C:TC2.0BGI);setbkcolor(BLUE);cleardevice();for
49、(i=0;i13;i+)setcolor(i+3);setfillstyle(i,2+i); /* 設(shè)置填充類型 */bar(100,150,200,50); /*畫矩形并填充*/bar3d(300,100,500,200,70,1); /* 畫長方體并填充*/pieslice(200, 300, 90, 180, 90);/*畫扇形并填充*/sector(500,300,180,270,200,100);/*畫橢圓扇形并填充*/getch();cleardevice();setcolor(14);setfillpattern(str, RED);bar(100,150,200,50);bar
50、3d(300,100,500,200,70,0);pieslice(200,300,0,360,90);sector(500,300,0,360,100,50);getch();getfillsettings(&save);/*獲得用戶定義的填充模式信息*/closegraph();clrscr();printf(The pattern is %d, The color of filling is %d,save.pattern, save.color);/*輸出目前填充圖模和顏色值*/getch();第六節(jié) 任意封閉圖形的填充截止目前為止,我們只能對一些特定形狀的封閉圖形進(jìn)行填充,但還不能對
51、任意封閉圖形進(jìn)行填充。為此,TURBO C 提供了一個可對任意封閉圖形填充的函數(shù),其調(diào)用格式如下: void far floodfill(int x, int y, int border); 其中:x, y為封閉圖形內(nèi)的任意一點(diǎn),border為邊界的顏色,也就是封閉圖形輪廓的顏色。調(diào)用了該函數(shù)后,將用由函數(shù)setfillstyle()規(guī)定的顏色和模式填滿整個封閉圖形。注意:a. 如果x或y取在邊界上,則不進(jìn)行填充。b. 如果不是封閉圖形則填充會從沒有封閉的地方溢出去,填滿其它地方。c. 如果x或y在圖形外面,則填充封閉圖形外的屏幕區(qū)域。d. 由border指定的顏色值必須與圖形輪廓的顏色值相同
52、, 但填充色可選任意顏色。下例是有關(guān)floodfill()函數(shù)的用法,該程序填充了bar3d()所畫長方體中其它兩個未填充的面。#include stdio.h#include graphics.hmain()int gdriver, gmode;struct fillsettingstype save;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI);setbkcolor(BLUE);cleardevice();setcolor(LIGHTRED);setlinestyle(0,0,3);setfillstyle(1,14); /*
53、設(shè)置填充方式*/bar3d(100,200,400,350,200,1); /*畫長方體并填充*/floodfill(450,300,LIGHTRED);/*填充長方體另外兩個面*/floodfill(250,150, LIGHTRED);rectangle(450,400,500,450); /*畫一矩形*/floodfill(470,420, LIGHTRED); /*填充矩形*/getch();closegraph();第七節(jié)屏幕操作函數(shù)除了清屏函數(shù)以外,關(guān)于屏幕操作還有以下函數(shù): void far setactivepage(int pagenum); void far setvisu
54、alpage(int pagenum);這兩個函數(shù)只用于EGA,VGA 以及HERCULES圖形適配器。setctivepage()函數(shù)是為圖形輸出選擇激活頁。所謂激活頁是指后續(xù)圖形的輸出被寫到函數(shù)選定的pagenum頁面,該頁面并不一定可見。setvisualpage()函數(shù)才使pagenum所指定的頁面變成可見頁。頁面從0開始(Turbo C默認(rèn)頁)。如果先用setactivepage() 函數(shù)在不同頁面上畫出一幅幅圖像,再用setvisualpage() 函數(shù)交替顯示,就可以實(shí)現(xiàn)一些動畫的效果。void far getimage(int xl,int yl, int x2,int y2,
55、void far *mapbuf); void far putimge(int x,int,y,void * mapbuf, int op); unsined far imagesize(int xl,int yl,int x2,int y2);這三個函數(shù)用于將屏幕上的圖像復(fù)制到內(nèi)存,然后再將內(nèi)存中的圖像送回到屏幕上。首先通過函數(shù)imagesize() 測試要保存左上角為(xl,yl),右上角為(x2,y2)的圖形屏幕區(qū)域內(nèi)的全部內(nèi)容需多少個字節(jié),然后再給mapbuf分配一個所測數(shù)字節(jié)內(nèi)存空間的指針。通過調(diào)用getimage()函數(shù)就可將該區(qū)域內(nèi)的圖像保存在內(nèi)存中,需要時可用putimage(
56、)函數(shù)將該圖像輸出到左上角為點(diǎn)(x, y)的位置上,其中g(shù)etimage()函數(shù)中的參數(shù)op規(guī)定如何釋放內(nèi)存中圖像。 關(guān)于這個參數(shù)的定義參見下表。對于imagesize()函數(shù),只能返回字節(jié)數(shù)小于64K字節(jié)的圖像區(qū)域,否則將會出錯,出錯時返回-1。本節(jié)介紹的函數(shù)在圖像動畫處理、菜單設(shè)計(jì)技巧中非常有用。下面程序模擬兩個小球動態(tài)碰撞過程。#include stdio.h#include graphics.h#include malloc.hint main()int i, gdriver, gmode, size;void *buf;gdriver=DETECT;initgraph(&gdrive
57、r, &gmode, C:TC2.0BGI);setbkcolor(BLUE);cleardevice();setcolor(LIGHTRED);setlinestyle(0,0,1);setfillstyle(1, 10);circle(100, 200, 30);floodfill(100, 200, 12);size=imagesize(69, 169, 131, 231);buf=malloc(size);if(!buf) return -1;getimage(69, 169, 131, 231,buf);putimage(500, 269, buf, COPY_PUT);for(i=
58、0; i185; i+)putimage(70+i, 170, buf, COPY_PUT);putimage(500-i, 170, buf, COPY_PUT);for(i=0;i185; i+)putimage(255-i, 170, buf, COPY_PUT);putimage(315+i, 170, buf, COPY_PUT);getch();closegraph();第八節(jié)用戶對文本字符大小的設(shè)置前面介紹的settextstyle()函數(shù),可以設(shè)定圖形方式下輸出文本字符這字體和大小但對于筆劃型字體(除8*8點(diǎn)陣字以個的字體),只能在水平和垂直方向以相同的放大倍數(shù)放大。 為此Tu
59、rbo C2.0又提供了另外一個setusercharsize() 函數(shù),對筆劃字體可以分別設(shè)置水平和垂直方向的放大倍數(shù)。該函數(shù)的調(diào)用格式為: void far setusercharsize(int mulx, intdivx, int muly, int divy); 該函數(shù)用來設(shè)置筆劃型字和放大系數(shù),它只有在settextstyle()函數(shù)中的charsize為0(或USER_CHAR_SIZE)時才起作用,并且字體為函數(shù)settextstyle()規(guī)定的字體。 調(diào)用函數(shù)setusercharsize()后,每個顯示在屏幕上的字符都以其缺省大小乘以mulx/divx為輸出字符寬,乘以mu
60、ly/divy為輸出字符高。 #include stdio.h#include graphics.hint main()int gdriver, gmode;gdriver=DETECT;initgraph(&gdriver, &gmode, C:TC2.0BGI);setbkcolor(BLUE);cleardevice();setfillstyle(1, 2); /*設(shè)置填充方式*/setcolor(WHITE); /*設(shè)置白色作圖*/rectangle(100, 100, 330, 380);floodfill(50, 50, 14); /*填充方框以外的區(qū)域*/setcolor(12)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 自動機(jī)械課程設(shè)計(jì)
- 速寫線性課程設(shè)計(jì)教案
- 飛機(jī)大戰(zhàn)系統(tǒng)課程設(shè)計(jì)
- 趙志舟航道整治課程設(shè)計(jì)
- 高中物理在線課程設(shè)計(jì)
- 飼養(yǎng)金魚實(shí)踐活動課程設(shè)計(jì)
- 風(fēng)險評估的課程設(shè)計(jì)
- 智能臺燈課程設(shè)計(jì)
- 餐飲盈利系統(tǒng)課程設(shè)計(jì)
- GB 45187-2024墜落防護(hù)動力升降防墜落裝置
- 2023年保安公司副總經(jīng)理年終總結(jié) 保安公司分公司經(jīng)理年終總結(jié)(5篇)
- 中國華能集團(tuán)公司風(fēng)力發(fā)電場運(yùn)行導(dǎo)則(馬晉輝20231.1.13)
- 中考語文非連續(xù)性文本閱讀10篇專項(xiàng)練習(xí)及答案
- 2022-2023學(xué)年度六年級數(shù)學(xué)(上冊)寒假作業(yè)【每日一練】
- 法人不承擔(dān)責(zé)任協(xié)議書(3篇)
- 電工工具報(bào)價單
- 反歧視程序文件
- 油氣藏類型、典型的相圖特征和識別實(shí)例
- 流體靜力學(xué)課件
- 顧客忠誠度論文
- 實(shí)驗(yàn)室安全檢查自查表
評論
0/150
提交評論