基于PLC的供料控制系統(tǒng)設(shè)計_第1頁
基于PLC的供料控制系統(tǒng)設(shè)計_第2頁
基于PLC的供料控制系統(tǒng)設(shè)計_第3頁
基于PLC的供料控制系統(tǒng)設(shè)計_第4頁
基于PLC的供料控制系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 緒論 皮帶運(yùn)輸是一種長距離、大批量、告訴運(yùn)輸貨物原料的運(yùn)輸體系。皮帶傳輸系統(tǒng)因其結(jié)構(gòu)簡單,使用方便,造價低廉,被廣泛應(yīng)用于工業(yè)生產(chǎn)中,如冶金、煤炭、港口、建筑、食品加工等。隨著冶煉廠規(guī)模的逐漸擴(kuò)大,礦石需求量逐漸提高,對冶煉廠供料系統(tǒng)的高效運(yùn)輸能力要求越來越高。1.1課題的提出傳統(tǒng)的冶煉廠礦石供料控制系統(tǒng)是一種基于繼電接觸器人工手動方式的半自動化系統(tǒng)?,F(xiàn)場環(huán)境十分惡劣,對設(shè)備損傷較大,使得設(shè)備會經(jīng)常出現(xiàn)一些故障,例如有皮帶跑偏、打滑及撕裂等等。供料系統(tǒng)由于處在一個電網(wǎng)中,設(shè)備不能同時啟動,必須有次序的啟動和停止。如果供料系統(tǒng)在運(yùn)行過程中某單體設(shè)備出現(xiàn)故障,則該設(shè)備及應(yīng)按照順序停止的設(shè)備同時停

2、止,并給出故障指示信號供工人們能夠準(zhǔn)確的找出故障位置并排除故障,以減少供料系統(tǒng)設(shè)備維修時間。隨著冶煉廠規(guī)模的迅速擴(kuò)大,供料控制系統(tǒng)的作用日益突出,而傳統(tǒng)的控制系統(tǒng)已無法滿足冶煉廠的需要,因此需要對傳統(tǒng)的冶煉廠供料系統(tǒng)進(jìn)行改造。同時當(dāng)今世界是一個信息技術(shù)高度發(fā)展的世界,信息貫穿社會的每個角落,現(xiàn)代化的工廠。建立全自動化的供料系統(tǒng),不僅可以讓工人從惡劣的環(huán)境中、繁重的勞動中解放出來。而且可以通過建立控制網(wǎng)絡(luò)將相距較遠(yuǎn)的各輸煤機(jī)架控制器相連,實現(xiàn)信息的相互傳遞,不僅保證了控制的時實性,可靠性,同時便于未來廠級或車間級的管理。因此,冶煉生產(chǎn)應(yīng)用自動化已經(jīng)成為必然要求,其投入產(chǎn)出比顯著,且逐漸成為冶煉工

3、業(yè)現(xiàn)代化的標(biāo)志。1.2礦石供料系統(tǒng)技術(shù)發(fā)展前景礦石供料系統(tǒng)是冶煉廠重要的礦石傳輸部分。其后工序是冶煉廠冶煉爐,這些工序的控制都涉及過程控制技術(shù)。隨著科技的不斷進(jìn)步,電子技術(shù)的不斷發(fā)展,過程控制技術(shù)經(jīng)歷了三四十年代單參數(shù)儀表控制、四五十年代的單元組合儀表綜合參數(shù)儀表控制以及60年代興起的計算機(jī)過程控制等幾個階段。尤其是近一二十年來,隨著微處理器、計算機(jī)技術(shù)和過程自動化控制理論的飛速發(fā)展,可編程控制器(PLC)性價比大幅提高,并得到了很快的普及和提高。可編程控制器具有信息存儲、邏輯判斷、精確、快速和自動化程度高等特點。將計算機(jī)技術(shù)應(yīng)用于工業(yè)控制系統(tǒng),既可大幅度地提高勞動效率,改善勞動條件,提高熱效

4、率,節(jié)約能源,降低成本,又具有結(jié)構(gòu)簡單、性價比高、使用方便的優(yōu)點。所以,PLC已成為工業(yè)自動化控制的有力工具,是工業(yè)自動化的發(fā)展方向。2 系統(tǒng)總體方案設(shè)計2.1礦石供料系統(tǒng)的工藝應(yīng)用及特點礦石供料系統(tǒng)是冶煉廠的重要組成部分,其作用就是從礦石倉輸送到冶煉爐。由于將礦石輸送到冶煉爐之間環(huán)節(jié)較多,人們從不同的工藝角度出發(fā)設(shè)計可以自行設(shè)計與實際需要相符合的供料系統(tǒng)。PLC供料系統(tǒng)是在由繼電器控制的基礎(chǔ)上發(fā)展起來的。由于供料系統(tǒng)的設(shè)備分散且與控制室相距較遠(yuǎn),且整個礦石供料過程中,不可避免的礦石粉末飛揚(yáng),使得整個系統(tǒng)所處環(huán)境非常惡劣,這些都決定了必須提高礦石供料系統(tǒng)的自動化水平。又因為它具有可靠性好、成本

5、較低、運(yùn)行周期長、更改方案靈活、節(jié)能和便于自動化管理等特點。因此70年代已在歐洲大陸廣泛使用。90年代以來,我國新建的大、中型冶煉廠差不多都采用了PLC控制礦石供料工藝。供料系統(tǒng)是冶煉廠冶煉工藝中的重要環(huán)節(jié),而供料系統(tǒng)運(yùn)行的穩(wěn)定、可靠,是保證冶煉廠高效運(yùn)行的關(guān)鍵。若通過合理的設(shè)計,使供料系統(tǒng)經(jīng)常處于最優(yōu)條件下工作,既可以延長工作周期,提高工業(yè)生產(chǎn)量,也可以節(jié)能和減少勞動力等。而采用PLC為核心控制系統(tǒng)的出現(xiàn),從以下幾方面改善了供料系統(tǒng)的輸料性能: (1)增加了供料系統(tǒng)調(diào)整的靈活性。(2)增加了供料系統(tǒng)的可靠性。(3)減少了供料系統(tǒng)的經(jīng)濟(jì)開支。2.2 礦石供料系統(tǒng)的組成供料控制系統(tǒng)一般由PLC、

6、電氣執(zhí)行機(jī)構(gòu)和上位機(jī)組成。電氣執(zhí)行機(jī)構(gòu)負(fù)責(zé)控制的具體實施,它從PLC接收控制命令,然后相關(guān)的接觸器接點閉合或斷開,電路導(dǎo)通,設(shè)備獲得動力繼而進(jìn)行動作。如果單體設(shè)備故障,操作人員可以通過控制面板來進(jìn)行緊急停車,也可對設(shè)備進(jìn)行手動停車操作。PLC是實現(xiàn)自動控制的核心,所有自動控制內(nèi)容都通過對它的編程實現(xiàn)。礦石供料系統(tǒng)的控制與其它車間略有不同,它的設(shè)備較多且重復(fù),通過對PLC的編程來實現(xiàn)諸多設(shè)備的控制使得電氣接線簡單許多,這是供料控制系統(tǒng)發(fā)展的一種趨勢。本設(shè)計冶煉廠供料系統(tǒng)部分由4臺皮帶機(jī)、1臺給料器、1臺粉碎機(jī)、1臺篩選機(jī)等,來完成給料、粉碎、篩選、冶煉爐的工藝流程。礦石供料系統(tǒng)的作用就是將礦石經(jīng)

7、給料器給料、粉碎、篩選后送到冶煉爐。由于其中的環(huán)節(jié)較多,所以不可能由一條皮帶實現(xiàn)直接輸送,應(yīng)由多條皮帶將各設(shè)備連接而成;同時供料系統(tǒng)是冶煉廠眾多環(huán)節(jié)中的一個重要環(huán)節(jié),礦石不經(jīng)供料系統(tǒng)的運(yùn)輸,就不能到達(dá)冶煉爐的爐膛,就不能進(jìn)行冶煉生產(chǎn)。可見,冶煉廠礦石的供料是十分重要的,因此供料系統(tǒng)必須穩(wěn)定、可靠。為了提高系統(tǒng)的安全運(yùn)行,采用傳感技術(shù)及其它檢測元件與PLC結(jié)合使用。該供料系統(tǒng)由四條供料皮帶機(jī)和粉碎機(jī)、篩選機(jī)連接組成的。這四條機(jī)架的輸料原理是完全一樣的,都是機(jī)架上的皮帶運(yùn)輸機(jī)。其中的篩選機(jī)包含一臺可以正反轉(zhuǎn)轉(zhuǎn)動的電動機(jī),它與稱重傳感器及三皮帶共同完成礦石篩選,并將不符合要求的礦料重新送回粉碎機(jī)粉碎

8、。國內(nèi)礦石供料系統(tǒng)普遍采用皮帶運(yùn)輸?shù)姆绞?,該方式結(jié)構(gòu)簡單、運(yùn)輸?shù)拈L短便于調(diào)整、負(fù)荷便于分擔(dān)、便于添加中間環(huán)節(jié)。供料生產(chǎn)線基本工藝可分為給料、粉碎、篩選等環(huán)節(jié)組成等幾個相關(guān)過程。其中篩選過程又由稱重傳感器及可以正反轉(zhuǎn)轉(zhuǎn)動的電動機(jī)組成。為了保證供料系統(tǒng)的可靠性,即不能間斷輸料,實際的供料系統(tǒng)采用每一機(jī)架兩條皮帶運(yùn)輸?shù)V石(見圖2-2-1),當(dāng)其中一條皮帶運(yùn)輸機(jī)出現(xiàn)問題時,另一臺運(yùn)輸機(jī)接替運(yùn)行工作;或者由于運(yùn)行時間條件或電動機(jī)過熱條件,兩運(yùn)輸機(jī)輪流運(yùn)行工作,但在這里只研究其簡單運(yùn)行方式暫不考慮復(fù)雜方式。圖2-2-1 礦石供料系統(tǒng)工藝過程簡圖2.3 供料系統(tǒng)工藝流程當(dāng)檢查好各設(shè)備正常情況后,按下啟動按鈕

9、。供料器開始向皮帶一供料,皮帶一把礦石輸送到粉碎機(jī),粉碎機(jī)把礦石料粉碎后經(jīng)二皮帶輸送到篩選機(jī),之后篩選機(jī)開始工作(篩選機(jī)內(nèi)含有稱重傳感器),當(dāng)?shù)V石重量比設(shè)定值大時,其控制翻板的電動機(jī)正轉(zhuǎn),將大塊的礦石通過三皮帶送回粉碎機(jī)重新加工粉碎,然后控制翻板的電動機(jī)反轉(zhuǎn)復(fù)位,規(guī)格符合要求的礦料直接通過四皮帶輸送到冶煉爐。其工藝流程圖如圖2-3-1所示。圖2-3-1 工藝流程圖系統(tǒng)處于正常狀態(tài)下,當(dāng)接收到啟動及停止信號時,其動作如圖2-3-2所示。其停止過程則反之。 圖2-3-2 啟動過程當(dāng)某設(shè)備需要臨時檢修時按下手動停止按鈕,該設(shè)備之前的設(shè)備按順序停止后該設(shè)備停止。又當(dāng)某設(shè)備出現(xiàn)意外緊急停車時,按下手動緊

10、急停止按鈕,此單體設(shè)備及其之前的設(shè)備同時緊急停止,并發(fā)出報警信號。3 系統(tǒng)硬件設(shè)計3.1 系統(tǒng)主要設(shè)備選型根據(jù)對礦石供料控制系統(tǒng)的分析,畫出系統(tǒng)電氣控制總框圖,如圖3-1-1所示:圖3-1-1 系統(tǒng)的電氣控制總框圖根據(jù)對該供料系統(tǒng)工藝分析,確定該系統(tǒng)的主要硬件設(shè)備包括以下幾部分:PLC及其擴(kuò)展模塊、皮帶機(jī)、電動機(jī)、電機(jī)過流檢測元件、稱重傳感器、皮帶跑偏檢測元件、皮帶機(jī)打滑檢測裝置、皮帶機(jī)撕裂檢測元件。主要設(shè)備選型如表3-1-1。表3-1-1 主要設(shè)備選型表3.1.1 PLC簡介可編程控制器,簡稱PLC(Programmable logic Controller),是指以計算機(jī)技術(shù)為基礎(chǔ)的新型工

11、業(yè)控制裝置。在1987年國際電工委員會(International Electrical Committee)頒布的PLC標(biāo)準(zhǔn)草案中對PLC做了如下定義:“PLC是一種專門為在工業(yè)環(huán)境下應(yīng)用而設(shè)計的數(shù)字運(yùn)算操作的電子裝置。它采用可以編制程序的存儲器,用來在其內(nèi)部存儲執(zhí)行邏輯運(yùn)算、順序運(yùn)算、計時、計數(shù)和算術(shù)運(yùn)算等操作的指令,并能通過數(shù)字式或模擬式的輸入和輸出控制各種類型的機(jī)械或生產(chǎn)過程。PLC及其有關(guān)的外圍設(shè)備都應(yīng)該按易于與工業(yè)控制系統(tǒng)形成一個整體,易于擴(kuò)展其功能的原則而設(shè)計?!盤LC的基本組成可歸為四大部件:中央處理單元(CPU板)控制器的核心;輸入部件(1/0部件)連接現(xiàn)場設(shè)備與CPU之間;

12、輸出部件連接驅(qū)動或受控元件的接口電路;電源部件為PLC內(nèi)部電路提供能源;整體結(jié)構(gòu)的PLC四部分裝在同一機(jī)殼內(nèi);模塊式結(jié)構(gòu)的PLC各部件獨立封裝,稱為模塊,通過機(jī)架和總線連接而成。I/O的能力可按用戶需要進(jìn)行擴(kuò)展和組合,另外,還必須有編程器將用戶程序?qū)戇M(jìn)規(guī)定的存儲器內(nèi)。用PLC設(shè)計的控制系統(tǒng)具有如下的優(yōu)點:(1)能適應(yīng)工業(yè)現(xiàn)場的惡劣環(huán)境,能抗電磁干擾與電壓沖擊。(2)簡單,易于使用,不必要求微機(jī)軟硬件方面的知識,編程不需要高級語言。(3)可靠性高,平均故障間隔時間(MTBF)超過20000小時,羅克韋爾公司的產(chǎn)品MTBF達(dá)到50000小時。(4)編程或修改程序容易,程序可以保存和固化。(5)體積

13、小,價格低。(6)可直接將數(shù)據(jù)送入處理器中,可直接連接到現(xiàn)場。(7)可在基本系統(tǒng)上擴(kuò)展,系統(tǒng)容易配置,與負(fù)載最遠(yuǎn)距離可達(dá)10000英尺,內(nèi)存可以擴(kuò)展。(8)有很強(qiáng)的通訊功能,可與多種支持設(shè)備連接。(9)系統(tǒng)化,有標(biāo)準(zhǔn)外圍接口模塊。(10)系統(tǒng)在一種現(xiàn)場不需要時,仍可改在另一現(xiàn)場使用等一系列優(yōu)點。本設(shè)計系統(tǒng)PLC采用的是梯形圖編程語言。梯形圖在形式上類似于繼電器控制電路圖,它簡單,直觀,易讀,好懂,是PLC中普遍采用的一種編程方式。梯形圖中沿用了繼電器線路的一些圖形符號,這些圖形符號被稱為編程元件,每一個編程元件對應(yīng)有一個編號。不同廠家的PLC,其編程元件的多少及編號方法不盡相同,但是基本的元件

14、及功能很相近。PLC的工作過程基本上是用戶的梯形圖程序的執(zhí)行過程,是在系統(tǒng)軟件的控制下順次掃描各輸入點的狀態(tài),按用戶程序解算控制邏輯,然后順序向各個輸出點發(fā)出相應(yīng)的控制信號。除此之外,為提高工作的可靠性和及時的接收外來的控制命令,每個掃描周期還要進(jìn)行故障自診斷和處理與編程器、計算機(jī)的通信請求。因此,PLC工作過程分為以下五步:(1)自診斷自診斷功能可使PLC系統(tǒng)防患于未然,而在發(fā)生故障時能盡快的修復(fù),為此PLC每次掃描用戶程序以前都對CPU、存儲器、輸入輸出模塊等進(jìn)行故障診斷,若自診斷正常便繼續(xù)進(jìn)行掃描,而一旦發(fā)現(xiàn)故障或異?,F(xiàn)象則轉(zhuǎn)入處理程序,保留現(xiàn)行工作狀態(tài),關(guān)閉全部輸出,然后停機(jī)并顯示出錯

15、的信息。(2)與外設(shè)通信自診斷正常后PLC即掃描編程器、上位機(jī)等通信接口,如有通信請求便響應(yīng)處理。在與編程器通信過程中,編程器把指令和修改參數(shù)發(fā)送給主機(jī),主機(jī)把要顯示的狀態(tài)、數(shù)據(jù)、錯誤碼進(jìn)行相應(yīng)指示,編程器還可以向主機(jī)發(fā)送運(yùn)行、停止、清內(nèi)存等監(jiān)控命令。在與上位機(jī)通信過程中PLC將接收上位機(jī)發(fā)出的指令進(jìn)行相應(yīng)的操作,把現(xiàn)場工作狀態(tài)、PLC的內(nèi)部工作狀態(tài)、各種數(shù)值參數(shù)發(fā)送給上位機(jī)以及執(zhí)行啟動、停機(jī)、修改參數(shù)等命令。(3)輸入現(xiàn)場狀態(tài)完成前兩步工作后PLC便掃描各個輸入點,讀入各點的狀態(tài)和數(shù)據(jù),如開關(guān)的通斷狀態(tài)、形成現(xiàn)場的內(nèi)存映象。這一過程也稱為輸入采樣或輸出刷新,在一個掃描周期內(nèi)內(nèi)存映象的內(nèi)容不變

16、,即使外部實際開關(guān)狀態(tài)己經(jīng)發(fā)生了變化也只能在下一個掃描過程中的輸入采樣時刷新,解算用戶邏輯所用的輸入值是該輸入值的內(nèi)存映象值而不是當(dāng)時現(xiàn)場的實際值。(4)解算用戶邏輯即執(zhí)行用戶程序。一般是從用戶出現(xiàn)存儲器的最低地址存放的第一條程序開始,在無跳轉(zhuǎn)的情況下按存儲器地址的遞增方向順序的掃描用戶程序,按用戶程序進(jìn)行邏輯判斷和算術(shù)運(yùn)算,因此稱之為解算用戶邏輯。解算過程中所用的計數(shù)器、定時器,內(nèi)部繼電器等編程元件為相應(yīng)存儲單元的即時值,而輸入繼電器,輸出繼電器則用的是內(nèi)存映象值。在一個掃描周期內(nèi),某個輸入信號的狀態(tài)不管外部實際情況是否己經(jīng)變化,對整個用戶程序是一致的,不會造成結(jié)果混亂。(5)輸出結(jié)果將本次

17、的掃描過程中解算最新結(jié)果送到輸出模塊取代前一次掃描解算的結(jié)果,也稱為輸出刷新。解算用戶邏輯到用戶程序為止,每一步所得到的輸出信號被存入輸出信號寄存表并未發(fā)送到輸出模塊,相當(dāng)于輸出信號被輸出門阻隔,待全部解算完成后打開輸出門一并輸出,所用輸出信號由輸出狀態(tài)表送到輸出模塊,其相應(yīng)開關(guān)動作。驅(qū)動用戶輸出設(shè)備即PLC的實際輸出。在依次完成上述五個步驟操作后PLC又開始進(jìn)行下一次掃描。如此不斷的反復(fù)循環(huán)掃描,實現(xiàn)對全過程及設(shè)備的連續(xù)控制,直至接收到停止命令、停電、或出現(xiàn)故障。3.1.2 PLC及其擴(kuò)展模塊的選型PLC是整個供料控制系統(tǒng)的核心,它要完成對系統(tǒng)中所有輸入信號的采集、所有輸出單元的控制以及對外

18、的數(shù)據(jù)交換。因此我們在選擇PLC時,要考慮PLC的指令執(zhí)行速度、指令豐富程度、內(nèi)存空間、通訊接口及協(xié)議、帶擴(kuò)展模塊的能力和編程軟件的方便與否等多方面因素。由于本設(shè)計礦石供料自動控制系統(tǒng)控制設(shè)備相對較少,因此選用德國SIEMENS公司的S7-200型PLC。S7-200型PLC的結(jié)構(gòu)緊湊,價格低廉,具有較高的性價比,廣泛適用于一些小型控制系統(tǒng)。SIEMENS公司的PLC具有可靠性高,可擴(kuò)展性好,又有較豐富的通信指令,且通信協(xié)議簡單等優(yōu)點;PLC可以上接工控計算機(jī),對自動控制系統(tǒng)進(jìn)行監(jiān)測控制。PLC和上位機(jī)的通信采用PC/PPI電纜,支持點對點接口(PPI)協(xié)議,PC/PPI電纜可以方便實現(xiàn)PLC

19、的通信接口RS485到PC機(jī)的通信接口RS232的轉(zhuǎn)換,用戶程序有三級口令保護(hù),可以對程序?qū)嵤┌踩Wo(hù)。根據(jù)控制系統(tǒng)實際所需端子數(shù)目,及考慮PLC端子數(shù)目要有一定的預(yù)留量,因此選用S7-200型PLC的主模塊為CPU226,其開關(guān)量輸出為16點,輸出形式為AC220V繼電器輸出;開關(guān)量輸入CPU226為16點,輸入形式為+24V直流輸入。由于實際中需要模擬量輸入點1個,模擬量輸出點1個,所以需要擴(kuò)展,擴(kuò)展模塊選擇的是EM235,該模塊有4個模擬輸入(AIW),1個模擬輸出(AQW)信號通道。輸入輸出信號接入端口時能夠自動完成A/D的轉(zhuǎn)換,標(biāo)準(zhǔn)輸入信號能夠轉(zhuǎn)換成一個字長(16bit)的數(shù)字信號;

20、輸出信號接出端口時能夠自動完成D/A的轉(zhuǎn)換,一個字長(16bit)的數(shù)字信號能夠轉(zhuǎn)換成標(biāo)準(zhǔn)輸出信號。EM235模塊可以針對不同的標(biāo)準(zhǔn)輸入信號,通過DIP開關(guān)進(jìn)行設(shè)置。3.1.3 皮帶機(jī)的選型皮帶機(jī)型號選擇正確與否是供料系統(tǒng)中相當(dāng)重要的一個環(huán)節(jié),如果選擇的型號過小則會因負(fù)荷過大而將電機(jī)燒毀或造成皮帶的斷裂,而如果選擇的型號過大,不能完全發(fā)揮其負(fù)荷能力,造成電能和設(shè)備的經(jīng)費(fèi)浪費(fèi)。皮帶機(jī)的選型基本原則:根據(jù)該冶煉廠年消耗礦石量及其輸送距離遠(yuǎn)近進(jìn)行大體的選型及考慮每小時皮帶機(jī)需要輸送多少噸礦料,根據(jù)各滾筒相互之間受力比例關(guān)系算出皮帶所承受的張力,據(jù)此選出皮帶機(jī)的型號。本設(shè)計中選用DSJ1200/335

21、5型皮帶機(jī)。3.1.4 電動機(jī)的選型電動機(jī)選型基本原則,一是要確保平穩(wěn)運(yùn)行;二是要確保其負(fù)載能力能滿足現(xiàn)場需要,以達(dá)到較好的節(jié)能效果。所選用的電動機(jī)必須與系統(tǒng)輸料量的變化幅度相匹配。則首先要了解工業(yè)現(xiàn)場輸料量,然后根據(jù)輸料量來確定電動機(jī)的機(jī)械負(fù)載能力,根據(jù)機(jī)械負(fù)載能力額定容量、額定轉(zhuǎn)速、額定電壓等來選擇電動機(jī)的型號。要為某一生產(chǎn)機(jī)械選配一臺電動機(jī),首先要合理選擇電動機(jī)的功率。通常根據(jù)生產(chǎn)機(jī)械負(fù)載的需要來選擇電動機(jī)的功率,同時,還要考慮負(fù)載的工作制問題,也就是說,所選的電動機(jī)應(yīng)適應(yīng)機(jī)械負(fù)載的連續(xù)、短時或間斷周期工作性質(zhì)。功率選用時不能太大,也不能太小。選小了,保證不了電動機(jī)和生產(chǎn)機(jī)械的正常工作;

22、選大了,雖然能保證正常運(yùn)行,但是不經(jīng)濟(jì),電動機(jī)容量不能被充分利用,而且電動機(jī)經(jīng)常不能滿載運(yùn)行,使得效率和功率因數(shù)不高。其次,根據(jù)電源電壓條件,要求所選用的電動機(jī)的額定電壓與頻率同供電電源電壓與頻率相符合。電動機(jī)的轉(zhuǎn)速一定要按生產(chǎn)機(jī)械銘牌上的要求選擇,否則可能改變生產(chǎn)機(jī)械的性能。此外,電動機(jī)的結(jié)構(gòu)、防護(hù)、冷卻和安裝形式,應(yīng)適應(yīng)使用環(huán)境條件的要求,并且要力求安裝、調(diào)試、檢修方便,以保證電機(jī)能安全可靠的運(yùn)行。由于設(shè)備處于眾多礦料環(huán)境中,應(yīng)選用防爆電動機(jī),因此本設(shè)計中篩選機(jī)中用于帶動翻板的電機(jī)選用功率為75KW的北京高壓電機(jī)廠生產(chǎn)的YB2防爆電動機(jī)。3.1.5 電機(jī)過流檢測元件的選型開始考慮的是電流互

23、感器。電流互感器的工作原理,在測量交變電流大電流時,為了能夠安全測量,在火線(或接地線)上串聯(lián)一個變壓器(接在變壓器的輸入端),這個變壓器的輸出端接入電流表,由于輸入線圈的匝數(shù)小于輸出線圈的匝數(shù),因此輸出電流小于輸入電流(這時的輸出電壓大于輸入電壓,但是由于變壓器是串聯(lián)在電路中,所以輸入電壓很小,輸出電壓也不大),電流互感器就是升壓(降流)變壓器。其輸出的信號為模擬電信號。SMD系列數(shù)字型電流傳感器(電流互感器),能在電隔離的條件下測量電流,并在達(dá)到額定電流時輸出開關(guān)量的驅(qū)動信號??芍苯舆B接PLC等控制部件,特別適合于功率器件和電路系統(tǒng)的過流、短路保護(hù)、電流檢測等,響應(yīng)速度極快,性能卓越。經(jīng)過

24、比較發(fā)現(xiàn)電流互感器輸出的信號為模擬量,不能直接驅(qū)動PLC,不免有些麻煩,因此本設(shè)計中選用可以直接驅(qū)動PLC的SMD系列數(shù)字開關(guān)型電流傳感器(電流互感器)。3.1.6 稱重傳感器的選型稱重傳感器實際上是一種將質(zhì)量信號轉(zhuǎn)變?yōu)榭蓽y量的電信號輸出的裝置。稱重傳感器按轉(zhuǎn)換方法分為光電式、液壓式、電磁力式、電容式、磁極變形式、振動式、陀螺儀式、電阻應(yīng)變式等8類。 其中,電磁力式傳感器準(zhǔn)確度高,可達(dá)1/20001/60000,但稱量范圍僅在幾十毫克至10千克之間。 磁極變形式傳感器的準(zhǔn)確度不高,一般為1/100,適用于大噸位稱量工作,稱量范圍為幾十至幾萬千克。振動式傳感器有振弦式和音叉式兩種。 稱量范圍為1

25、00克至幾百千克,但結(jié)構(gòu)復(fù)雜,加工難度大,造價高。電阻應(yīng)變式傳感器的稱量范圍為300g至數(shù)千kg,計量準(zhǔn)確度達(dá)1/10001/10000,結(jié)構(gòu)較簡單,可靠性較好,大部分電子衡器均使用此傳感器。電阻應(yīng)變式傳感器利用電阻應(yīng)變片變形時其電阻也隨之改變的原理工作。主要由彈性元件、電阻應(yīng)變片、測量電路和傳輸電纜4部分組成。電阻應(yīng)變片貼在彈性元件上,彈性元件受力變形時,其上的應(yīng)變片隨之變形,并導(dǎo)致電阻改變。測量電路測出應(yīng)變片電阻的變化并變換為與外力大小成比例的電信號輸出。電信號經(jīng)處理后以數(shù)字形式顯示出被測物的質(zhì)量。根據(jù)實際現(xiàn)場要求及經(jīng)濟(jì)方面綜合分析,這里選用電阻應(yīng)變式傳感器。 3.1.7 皮帶跑偏檢測元件

26、的選型皮帶運(yùn)輸機(jī)運(yùn)行時皮帶跑偏是最常見的故障,皮帶跑偏輕則造成撤料、皮帶磨損,重則由于皮帶與機(jī)架劇烈摩擦引起皮帶軟化、燒焦甚至引起火災(zāi),造成整個生產(chǎn)線停產(chǎn),因而,正確地處理好皮帶跑偏關(guān)系到整個生產(chǎn)系統(tǒng)的正常運(yùn)轉(zhuǎn)。這里考慮選用光電式傳感器,光電式傳感器在受到可見光照射后即產(chǎn)生光電效應(yīng),將光信號轉(zhuǎn)換成電信號輸出。它除能測量光強(qiáng)之外,還能利用光線的透射、遮擋、反射、干涉等測量多種物理量,如尺寸、位移、速度、溫度等,因而是一種應(yīng)用極廣泛的重要敏感器件。它是光照射到某些物質(zhì)上,使該物質(zhì)的電特性發(fā)生變化的一種物理現(xiàn)象。其基于外光電效應(yīng)的光電敏感器件有 HYPERLINK /view/495717.htm

27、t _blank 光電管和 HYPERLINK /view/485210.htm t _blank 光電倍增管?;诠怆妼?dǎo)效應(yīng)的有光敏電阻?;趧輭拘?yīng)的有光電二極管和光電三極管(見半導(dǎo)體光敏元件)?;趥?cè)向光電效應(yīng)的有反轉(zhuǎn)光敏二極管。光電式傳感器還可按信號形式分為模擬式 HYPERLINK /view/479137.htm t _blank 光電傳感器(見 HYPERLINK /view/405647.htm t _blank 位移傳感器)和數(shù)字式光電傳感器(見 HYPERLINK /view/485254.htm t _blank 轉(zhuǎn)速傳感器、光柵式傳感器、 HYPERLINK /view

28、/485234.htm t _blank 數(shù)字式傳感器)。光電式傳感器還有光纖傳感器、 HYPERLINK /view/485216.htm t _blank 固體圖像傳感器等。因為礦石供料系統(tǒng)工作現(xiàn)場條件惡劣,環(huán)境不適合高精度元件工作,所以本設(shè)計選用常見的光電二極管。光電二極管是將光信號變成電信號的半導(dǎo)體器件。它的核心部分也是一個PN結(jié),和普通二極管相比,在結(jié)構(gòu)上不同的是,為了便于接受入射光照,PN結(jié)面積盡量做的大一些,電極面積盡量小些,而且PN結(jié)的結(jié)深很淺,一般小于1微米。光電二極管是在反向電壓作用之下工作的。沒有光照時,反向電流很?。ㄒ话阈∮?.1微安),稱為暗電流。當(dāng)有光照時,攜帶能量

29、的光子進(jìn)入PN結(jié)后,把能量傳給共價鍵上的束縛電子,使部分電子掙脫共價鍵,從而產(chǎn)生電子空穴對,稱為光生載流子。 它們在反向電壓作用下參加漂移運(yùn)動,使反向電流明顯變大,光的強(qiáng)度越大,反向電流也越大。這種特性稱為“光電導(dǎo)”。光電二極管在一般照度的光線照射下,所產(chǎn)生的電流叫光電流。如果在外電路上接上負(fù)載,負(fù)載上就獲得了電信號,而且這個電信號隨著光的變化而相應(yīng)變化。3.1.8 皮帶機(jī)打滑檢測元件的選型皮帶打滑是由于皮帶在與主動滾筒相遇點上的實際張力大于皮帶兩端張力的極限值而產(chǎn)生的。此時皮帶運(yùn)輸機(jī)電機(jī)輸出轉(zhuǎn)矩降低。皮帶過負(fù)荷故障是由于皮帶裝載礦石量過大對托滾的正壓力N增加,托滾軸上的磨擦阻力T=fN(f為

30、磨擦系數(shù))增加,使得皮帶牽引力F小于摩擦阻力T,電機(jī)輸出轉(zhuǎn)矩增加。因此,為時刻檢測皮帶機(jī)是否發(fā)生打滑情況,現(xiàn)想出兩種方法:一、用兩個速度傳感器分別檢測電機(jī)和皮帶的速度,經(jīng)比較如果不一致則可認(rèn)為皮帶打滑,但這為軟件編程帶來一定的難度,且不方便。二、直接用轉(zhuǎn)矩傳感器檢測皮帶是否打滑,其原理是利用扭軸把轉(zhuǎn)矩轉(zhuǎn)換成扭應(yīng)力或扭轉(zhuǎn)角,再轉(zhuǎn)換成與轉(zhuǎn)矩成一定關(guān)系的電信號的傳感器。扭軸的形式有實心軸、空心軸、矩形軸等。按照作用原理不同,扭應(yīng)力式轉(zhuǎn)矩傳感器可分為電阻應(yīng)變式和壓磁式兩種;扭轉(zhuǎn)角式轉(zhuǎn)矩傳感器可分為振弦式、光電式和相位差式三種。本設(shè)計選用GSC200智能型速度傳感器,其主要用于對煤礦井下膠帶運(yùn)輸機(jī)因堆煤

31、而引起的皮帶打滑對皮帶機(jī)的從動輪進(jìn)行監(jiān)控,轉(zhuǎn)速分別分為1、2、3轉(zhuǎn)/秒三個檔,供現(xiàn)場整定用, 正常時,速度傳感器輸出端“速度”輸出高電平,當(dāng)從動輪的速度低于整定值25%時,經(jīng)過1015秒延時,GSC200型速度傳感器輸出端“速度”輸出低電平,通過主機(jī)自動切斷皮帶機(jī)電源,實現(xiàn)低速保護(hù)。GSC200型速度傳感器為全封閉結(jié)構(gòu),有三個接線端子供與主機(jī)配接用。3.1.9 皮帶機(jī)撕裂元件的選型在運(yùn)輸線上,物料從溜槽落下,其鋒利部分往往扎透皮帶,當(dāng)運(yùn)輸線繼續(xù)運(yùn)行時,皮帶從扎透處沿縱向依次被撕裂,成為引起大事故的原因。等到皮帶損傷到不能修理的程度,就得換皮帶,使運(yùn)輸線不得不停運(yùn),造成很大損失。那么如何來檢測皮

32、帶縱向撕裂事故,避免更大事故以及停產(chǎn)的發(fā)生呢?目前主要使采用縱向撕裂探測器來檢測。縱向撕裂檢測器采用攔索式方法,攔索通過滑板與開關(guān)連接,使開關(guān)隨著攔索的牽移而輸出停機(jī)信號。本設(shè)計選用成都市地坤機(jī)械設(shè)計研究所生產(chǎn)的2501系列縱向撕裂檢測器。它主要用于檢測各種規(guī)格型號的帶式輸送機(jī)膠帶縱向撕裂(惡性事故),當(dāng)膠帶發(fā)生縱向撕裂時能及時發(fā)出停機(jī)信號以防止撕裂事故擴(kuò)大化,給用戶造成嚴(yán)重?fù)p失。2501-L-Y型:(無控制箱)由n個傳感器組成,(n=m-1;m為緩沖托輥數(shù)),每個受料段設(shè)一組;從傳感器內(nèi)直接輸出停機(jī)信號。撕裂傳感器應(yīng)安裝在受料段膠帶下緩沖托輥之間,控制箱應(yīng)就近安裝在附近機(jī)架上;調(diào)整滑板和索桿

33、使攔索距膠帶下表面20-30mm,再調(diào)整調(diào)線器使攔索張緊,且開關(guān)也處于動作狀態(tài)即可。新安裝的撕裂傳感器應(yīng)每隔5日按上述方法重新調(diào)整24次以消除因攔索伸縮而引起誤差。3.2 系統(tǒng)主電路設(shè)計基于PLC的礦石供料系統(tǒng)的主電路圖如圖3-2-1所示:八臺電機(jī)分別為M1、M2、M3M8,它們分別帶動給料器、皮帶一、粉碎機(jī)、二皮帶、篩選機(jī)、三皮帶、四皮帶、冶煉爐。接觸器KM1、KM2、KM3KM8分別控制M1、M2、M3M8的得電運(yùn)行; FR1、FR2、FR3FR8分別為八臺電機(jī)過載保護(hù)用的熱繼電器;QS為八臺電機(jī)主電路的隔離開關(guān);FU為主電路的熔斷器。接通三相電源后,三相電經(jīng)低壓熔斷器FU、隔離開關(guān)QS。

34、當(dāng)供料系統(tǒng)按下啟動按鈕后,KM1得電,電機(jī)M1開始運(yùn)行,經(jīng)PLC的定時器延時一段時間后,KM2得電,電機(jī)M2運(yùn)行,其后類推。這里的KM1、KM2、KM3KM8絕對不能同時動作,相互之間必須設(shè)計可靠的互鎖,此互鎖在軟件中實現(xiàn)。為監(jiān)控電機(jī)負(fù)載運(yùn)行情況,主回路的電流大小可以通過電流互感器將數(shù)字開關(guān)量信號送至PLC來處理。同時可以通過轉(zhuǎn)換開關(guān)接電壓表顯示線電壓。并通過轉(zhuǎn)換開關(guān)利用同一個電壓表顯示不同相之間的線電壓。初始運(yùn)行時,必須觀察電動機(jī)的轉(zhuǎn)向,使之符合要求。如果轉(zhuǎn)向相反,則可以改變電源的相序來獲得正確的轉(zhuǎn)向。系統(tǒng)啟動、運(yùn)行和停止的操作不能直接斷開主電路(如直接使熔斷器或隔離開關(guān)斷開),必須采用自耦

35、變壓器降壓啟動或軟啟動的方式以降低電流。 圖3-2-1 礦石供料系統(tǒng)主電路圖3.3 系統(tǒng)硬件配置及I/O接線圖根據(jù)以上硬件的選型我們可以知道,上位機(jī)通過PLC自帶的RS-232串口與之通信,并可以對PLC的工作狀況進(jìn)行監(jiān)控。PLC的CPU模塊負(fù)責(zé)PLC的數(shù)據(jù)處理和通信,用于實現(xiàn)對礦石供料系統(tǒng)的自動控制,要完成以下功能:可自動控制給料器、粉碎機(jī)、篩選機(jī)、皮帶機(jī)及冶煉爐的順序啟停;對各單體設(shè)備的操作要有手動/自動控制功能,手動只在應(yīng)急或檢修時臨時使用;系統(tǒng)要有完善的報警功能并能顯示運(yùn)行狀況。其硬件配置如圖3-3-1所示。圖3-3-1 PLC及擴(kuò)展模塊外圍接線圖EM235模擬量擴(kuò)展模塊實現(xiàn)了4路模擬

36、量輸入和1路模擬量輸出功能。EM235模擬量擴(kuò)展模塊的接線方法如圖3-3-2所示,對于電壓信號,按正、負(fù)極直接接入X和X;對于電流信號,將RX和X短接后接入電流輸入信號的“”端;未連接傳感器的通道要將X和X短接。圖3-3-2 EM235端子連接圖控制系統(tǒng)的輸入信號的名稱、代碼及地址編號如表3-3-1所示。表3-3-1 輸入點代碼及地址編號名稱代碼地址代碼輸入信號自動順序啟動按鈕SB1I0.0自動順序停止按鈕SB2I0.1手動停止按鈕SB3I2.0給料機(jī)緊急停止按鈕SB4I1.0給料機(jī)手動停止按鈕SB5I2.1一皮帶緊急停止按鈕SB6I1.1一皮帶手動停止按鈕SB7I2.2粉碎機(jī)緊急停止按鈕SB

37、8I1.2粉碎機(jī)手動停止按鈕SB9I2.3二皮帶緊急停止按鈕SB10I1.3二皮帶手動停止按鈕SB11I2.4三皮帶緊急停止按鈕SB12I1.4三皮帶手動停止按鈕SB13I2.5篩選機(jī)緊急停止按鈕SB14I1.5篩選機(jī)手動停止按鈕SB15I2.6四皮帶緊急停止按鈕SB16I1.6四皮帶手動停止按鈕SB17I2.7冶制爐手動停止按鈕SB18I3.0稱重模塊輸入信號UPA1W0電動機(jī)正傳限位開關(guān)UP1I3.2電動機(jī)反轉(zhuǎn)限位開關(guān)UP2I3.3控制系統(tǒng)的輸出信號的名稱、代碼及地址編號如表3-3-2所示。表3-3-2 輸出點代碼及地址編號名稱代碼代碼地址輸出信號給料機(jī)運(yùn)行接觸器KM1Q0.0一皮帶運(yùn)行接

38、觸器KM2Q0.1粉碎機(jī)運(yùn)行接觸器KM3Q0.2二皮帶運(yùn)行接觸器KM4Q0.3篩選機(jī)運(yùn)行接觸器KM5Q0.4三皮帶運(yùn)行接觸器KM6Q0.5四皮帶運(yùn)行接觸器KM7Q0.6冶煉爐運(yùn)行接觸器KM8Q0.7給料機(jī)運(yùn)行指示燈HL1Q1.1一皮帶運(yùn)行指示燈HL2Q1.2粉碎機(jī)運(yùn)行指示燈HL3Q1.3二皮帶運(yùn)行指示燈HL4Q1.4篩選機(jī)運(yùn)行指示燈HL5Q1.5三皮帶運(yùn)行指示燈HL6Q1.6四皮帶運(yùn)行指示燈HL7Q1.7電動機(jī)正傳接觸器KM9Q2.0電動機(jī)反轉(zhuǎn)接觸器KM10Q2.14 心得體會回顧整個設(shè)計及論文完成過程,首先我要衷心的感謝我的指導(dǎo)。在我做畢業(yè)設(shè)計的過程中雖然陳老師教學(xué)工作繁忙但她仍時刻指導(dǎo)我們

39、,督促我們,為我們解決疑難問題,給予我們無私的幫助。在整個設(shè)計過程中我們遇到過很多問題,但都在陳老師的指導(dǎo)下得以解決,處處凝結(jié)著陳老師的心血。陳老師淵博的學(xué)識,嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,務(wù)實的工作作風(fēng)都深深地影響著我,并將成為我以后人生中學(xué)習(xí)和工作的向?qū)?。在此?jǐn)向陳老師表示最衷心的感謝。在這半年畢業(yè)設(shè)計的過程中,我還得到了本組同學(xué)、本班同學(xué)的大力幫助,我們一起學(xué)習(xí),一起探討問題、解決問題。當(dāng)我遇到困難時,他們給了我許多好的建議和無私的幫助。在此感謝他們對我的幫助,感謝他們仔細(xì)的為我尋找設(shè)計中的缺陷,感謝他們耐心的為我解答難題。參 考 文 獻(xiàn)1李建興,黃靖,陳煒等.電氣控制技術(shù)M.北京:機(jī)械工業(yè)出版社,2

40、006.52張靖,劉少強(qiáng).檢測技術(shù)與系統(tǒng)設(shè)計M.北京:中國電力出版社,20013張洪潤,張亞凡.傳感技術(shù)與應(yīng)用教程M.北京:清華大學(xué)出版社,2005.14廖常初.PLC編程及應(yīng)用第3版M.北京:機(jī)械工業(yè)出版社,2008.15于修,陳維健,李功熹.礦石大型固定設(shè)備技術(shù)測試M.江蘇:中國礦業(yè)大學(xué)出版社,1995.46陳杰,黃鴻.傳感器與檢測技術(shù)M.北京:高等教育出版社,2002.87黃波.基于S7-200的碼頭皮帶機(jī)的設(shè)計J,內(nèi)蒙古科技與經(jīng)濟(jì)報,2008.3:5-1599林伍恒,郭三明.膠帶運(yùn)輸機(jī)打滑保護(hù)傳感器的研究J,焦作礦業(yè)學(xué)院學(xué)報,1991:1-22附錄資料:不需要的可以自行刪除C語言編譯器

41、的設(shè)計與實現(xiàn) 我們設(shè)計的編譯程序涉及到編譯五個階段中的三個,即詞法分析器、語法分析器和中間代碼生成器。編譯程序的輸出結(jié)果包括詞法分析后的二元式序列、變量名表、狀態(tài)棧分析過程顯示及四元式序列程序,整個編譯程序分為三部分:(1) 詞法分析部分(2) 語法分析處理及四元式生成部分 (3) 輸出顯示部分一詞法分析器設(shè)計 由于我們規(guī)定的程序語句中涉及單詞較少,故在詞法分析階段忽略了單詞輸入錯誤的檢查,而將編譯程序的重點放在中間代碼生成階段。詞法分析器的功能是輸入源程序,輸出單詞符號。我們規(guī)定輸出的單詞符號格式為如下的二元式: (單詞種別,單詞自身的值)#define ACC -2#define syl_

42、if 0#define syl_else 1#define syl_while 2#define syl_begin 3#define syl_end 4#define a 5#define semicolon 6#define e 7#define jinghao 8#define s 9#define L 10#define tempsy 11#define EA 12#define EO 13#define plus 14#define times 15#define becomes 16#define op_and 17#define op_or 18#define op_not 19

43、#define rop 20#define lparent 21#define rparent 22#define ident 23#define intconst 24函數(shù)說明 讀取函數(shù) readline( )、readch( )詞法分析包含從源文件讀取字符的操作,但頻繁的讀文件操作會影響程序執(zhí)行效率,故實際上是從源程序文件” source.dat ”中讀取一行到輸入緩沖區(qū),而詞法分析過程中每次讀取一個字符時則是通過執(zhí)行 readch( )從輸入緩沖區(qū)獲得的;若緩沖區(qū)已被讀空,則再執(zhí)行readline( )從 source.dat 中讀取下一行至輸入緩沖區(qū)。掃描函數(shù) scan( ) 掃描函數(shù)

44、 scan( )的功能是濾除多余空格并對主要單詞進(jìn)行分析處理,將分析得到的二元式存入二元式結(jié)果緩沖區(qū)。變量處理 find( )變量處理中首先把以字母開頭的字母數(shù)字串存到 spelling 數(shù)組中,然后進(jìn)行識別。識別過程是先讓它與保留關(guān)鍵字表中的所有關(guān)鍵字進(jìn)行匹配,若獲得成功則說明它為保留關(guān)鍵字,即將其內(nèi)碼值寫入二元式結(jié)果緩沖區(qū);否則說明其為變量,這時讓它與變量名表中的變量進(jìn)行匹配( 變量匹配函數(shù) find( ) ),如果成功,則說明該變量已存在并在二元式結(jié)果緩沖區(qū)中標(biāo)記為此變量( 值填為該變量在變量名表中的位置),否則將該變量登記到變量名表中,再將這個新變量存入二元式緩存數(shù)組中。數(shù)字識別 nu

45、mber( ) 數(shù)字識別將識別出的數(shù)字填入二元式結(jié)果緩存數(shù)組。顯示函數(shù) 顯示函數(shù)的功能在屏幕上輸出詞法分析的結(jié)果( 即二元式序列程序),同時給出二元式個數(shù)及源程序行數(shù)統(tǒng)計。二語法分析器設(shè)計 語法分析器的核心是三張 SLR 分析表以及針對這三張 SLR 分析表進(jìn)行語義加工的語義動作。編譯程序中語法分析處理及四元式生成部分主要是以二元式作為輸入,并通過 SLR 分析表對語法分析處理過程進(jìn)行控制,使四元式翻譯的工作有條不紊的進(jìn)行,同時識別語法分析中的語法錯誤。在處理 if 和 while 語句時,需要進(jìn)行真值或假值的拉鏈和返填工作,以便轉(zhuǎn)移目標(biāo)的正確填入。1. 控制語句的 SLR 分析表1 設(shè)計過程

46、如下: 將擴(kuò)展文法GS S1)S if e S else S2)S while e S3)S L 4)S a;5)L S6)L SL用_CLOSURE方法構(gòu)造LR(0)項目規(guī)范簇為:I0: S SS if e S else SS while e S S L S a ;I1: S SI2: S ife S else SI3: S while e SI4: S L L S L SL S if e S else SS while e S S L S a ; I5: S a; I6: S if e S else S S if e S else SS while e S S L S a ; I7: S

47、while e S S if e S else SS while e S S L S a ; I8: S L I9: L S L SL L SL L S S if e S else SS while e S S L S a ; I10: S a ; I11: S if e S else SI12: S while e S I13: S L I14: S SL I15: S if e S else S S if e S else SS while e S S L S a ; I16: S if e S else S 構(gòu)造文法G中非終結(jié)符的FOLLOW集如下:FOLLOW(S) = # S if

48、e S else S得FOLLOW(S) = else S L 得FOLLOW(L) = 3) S S 得FOLLOW(S) = else , # L S 因為FIRST(S) = ,所以FOLLOW(S) = else , #, 在()項目規(guī)范簇中,只有9有“移進(jìn)歸約”沖突,L SL SL因為FOLLOW(L) FIRST(L) = 所以可以用方法解決以上沖突,最后我們得到的分析表如下:ACTIONGOTO ifElsewhilea;e#SL0S2S3S4S511ACC2S63S74S2S3S4S5985S106S2S3S4S5117S2S3S4S5128S139S2S3S4R5S59141

49、0R4R4R4111512R2R2R213R3R3R314R615S2S3S4S51616R1R1R1static int action2011=/* 0 */ 2, -1, 3, 4, -1, 5, -1, -1, -1, 1, -1,/* 1 */ -1, -1, -1, -1, -1, -1, -1, -1,ACC, -1, -1,/* 2 */ -1, -1, -1, -1, -1, -1, -1, 6, -1, -1, -1,/* 3 */ -1, -1, -1, -1, -1, -1, -1, 7, -1, -1, -1,/* 4 */ 2, -1, 3, 4, -1, 5, -1

50、, -1, -1, 9, 8,/* 5 */ -1, -1, -1, -1, -1, -1, 10, -1, -1, -1, -1,/* 6 */ 2, -1, 3, 4, -1, 5, -1, -1, -1, 11, -1,/* 7 */ 2, -1, 3, 4, -1, 5, -1, -1, -1, 12, -1,/* 8 */ -1, -1, -1, -1, 13, -1, -1, -1, -1, -1, -1,/* 9 */ 2, -1, 3, 4,105, 5, -1, -1, -1, 9, 14,/* 10*/ -1,104, -1, -1,104, -1, -1, -1,104,

51、 -1, -1,/* 11*/ -1, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1,/* 12*/ -1,102, -1, -1,102, -1, -1, -1,102, -1, -1,/* 13*/ -1,103, -1, -1,103, -1, -1, -1,103, -1, -1,/* 14*/ -1, -1, -1, -1,106, -1, -1, -1, -1, -1, -1,/* 15*/ 2, -1, 3, 4, -1, 5, -1, -1, -1, 16, -1,/* 16*/ -1,101, -1, -1,101, -1, -1, -1,10

52、1, -1, -1;其中,前 9 列為 action 值,后 2 列為 goto 值;016 表示 17 個移進(jìn)狀態(tài)( 即 Si);-1表示出錯;ACC 表示分析成功;而 100106 對應(yīng) 7 個歸約產(chǎn)生式:S SS if e S else SS while e SS L S a;L SL SL2. 算術(shù)表達(dá)式的 LR 分析表 2 設(shè)計如下:S EE E+EE E*EE (E)E i (過程略)ACTIONGOTOI+*()#E0S3S211S4S5ACC2S3S263R4R4R4R44S3S275S3S286S4S5S97R1R5R1R18R2R2R2R29R3R3R3R3static i

53、nt action1107=/* 0 */ 3, -1, -1, 2, -1, -1, 1,/* 1 */ -1, 4, 5, -1, -1,ACC, -1,/* 2 */ 3, -1, -1, 2, -1, -1, 6,/* 3 */ -1,104,104, -1,104,104, -1,/* 4 */ 3, -1, -1, 2, -1, -1, 7,/* 5 */ 3, -1, -1, 2, -1, -1, 8,/* 6 */ -1, 4, 5, -1, 9, -1, -1,/* 7 */ -1,101, 5, -1,101,101, -1,/* 8 */ -1,102,102, -1,1

54、02,102, -1,/* 9 */ -1,103,103, -1,103,103, -1;3.布爾表達(dá)式的 SLR 分析表3 設(shè)計如下:(過程略)S BB iB i rop iB ( B )B ! BA B &B ABO B |B OBACTIONGOTOiRop()!&|#BAO0S1S4S513781S2R1R1R1R12S33R2R2R2R24S1S4S511785S1S4S56786R4S9S10R47S1S4S514788S1S4S515789R5R5R510R7R7R711S12S9S1012R3R3R3R313S9S10ACC14R6S9S10R615R8S9S10R8stat

55、ic int action21611=/* 0 */ 1, -1, 4, -1, 5, -1, -1, -1, 13, 7, 8,/* 1 */ 1, 2, -1,101, -1,101,101,101, -1, -1, -1,/* 2 */ 3, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,/* 3 */ -1, -1, -1,102, -1,102,102,102, -1, -1, -1,/* 4 */ 1, -1, 4, -1, 5, -1, -1, -1, 11, 7, 8,/* 5 */ 1, -1, 4, -1, 5, -1, -1, -1, 6,

56、 7, 8,/* 6 */ -1, -1, -1,104, -1, 9, 10,104, -1, -1, -1,/* 7 */ 1, -1, 4, -1, 5, -1, -1, -1, 14, 7, 8,/* 8 */ 1, -1, 4, -1, 5, -1, -1, -1, 15, 7, 8,/* 9 */ 105, -1,105, -1,105, -1, -1, -1, -1, -1, -1,/*10 */ 107, -1,107, -1,107, -1, -1, -1, -1, -1, -1,/*11 */ -1, -1, -1, 12, -1, 9, 10, -1, -1, -1, -

57、1,/*12 */ -1, -1, -1,103, -1,103,103,103, -1, -1, -1,/*13 */ -1, -1, -1, -1, -1, 9, 10,ACC, -1, -1, -1,/*14 */ -1, -1, -1,106, -1, 9, 10,106, -1, -1, -1,/*15 */ -1, -1, -1,108, -1, 9, 10,108, -1, -1, -1;LR 分析表控制語義加工的實現(xiàn):當(dāng)掃描 LR 分析表的當(dāng)前狀態(tài)為歸約狀態(tài)時,則在調(diào)用與該狀態(tài)對應(yīng)的產(chǎn)生式進(jìn)行歸約的同時,調(diào)用相應(yīng)的語義子程序進(jìn)行有關(guān)的翻譯工作?,F(xiàn)在對 LR 分析器的分析棧加以擴(kuò)

58、充,使得每個文法符號之后都跟著它的語義值。為了清晰起見,我們把這個棧的每一項看成由三部分組成:狀態(tài) state ,文法符號 syl 和語義值 val。編譯程序?qū)崿F(xiàn)算術(shù)表達(dá)式、布爾表達(dá)式及程序語句的語義加工時,都是按這種狀態(tài)棧加工方式進(jìn)行的。例如:( 5 + 3 ) * 6的分析過程序號STATEValsylinput10-#( 5 + 3 ) * 6 #202-#(5 + 3 ) * 6 #3023#(5+ 3 ) * 6 #4026-5#(E+ 3 ) * 6 #50264-5-#(E+3 ) * 6 #602643-5-#(E+3 ) * 6 #702647-5-3#(E+E) * 6 #

59、8026-8#(E) * 6 #90269-8-#(E)* 6 #1001-8#E* 6 #11015-8-#E* 6 #120153-8-#E*6#130158-8-6#E*E#1401-48#E#15ACC在分析過程中,第(3)步操作后的狀態(tài)棧為 023,根據(jù)棧頂狀態(tài)“ 3”和現(xiàn)行輸入符號“ +”( input 欄字符串的第一個字符)查分析表 ACTION3,+=R4,即按第(4)個產(chǎn)生式 En 來進(jìn)行歸約;由于產(chǎn)生式右部僅含一項,故去掉狀態(tài)棧棧頂“3”;此時 2 變?yōu)樾碌臈m敔顟B(tài),再查( 2,E)的下一狀態(tài) s:GOTO2,E=6,即將狀態(tài) 6 和文法符號 E 壓棧,最后得到第( 4)步

60、的狀態(tài)。第( 7)步操作后也是如此,當(dāng)前狀態(tài)棧為 02647,根據(jù)棧頂狀態(tài) 7 和現(xiàn)行輸入符號“ )”查分析表 ACTION7,)=R1,即按第(1)個產(chǎn)生式 EE1+E2進(jìn)行歸約;由于產(chǎn)生式右部有三項,故去掉狀態(tài)棧棧頂?shù)?647 三項;此時 2 變?yōu)樾碌臈m敔顟B(tài),再查( 2,E)的下一狀態(tài) s:GOTO2,E=6,即將狀態(tài) 6 和文法符號 E 壓棧,最后得到第(8)步的狀態(tài)。三中間代碼生成器設(shè)計:布爾表達(dá)式 布爾表達(dá)式在程序語言中有兩個基本作用:一是用作控制語句( 如 if -else 或 while語句)的條件式;二是用于邏輯演算,計算邏輯值。布爾表達(dá)式是由布爾算符( &、| 、!)作用于

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論