隨著微處理器、計(jì)算機(jī)和數(shù)字通信技術(shù)的飛速發(fā)展,計(jì)算機(jī)控制技術(shù)已擴(kuò)展到了幾乎所有的工業(yè)領(lǐng)域?,F(xiàn)代社會(huì)要求制造業(yè)對(duì)市場(chǎng)需求作出迅速的反應(yīng),生產(chǎn)出小批量、多品種、多規(guī)格、低成本和高質(zhì)量的產(chǎn)品,為了滿足這一要求,生產(chǎn)設(shè)備和自動(dòng)生產(chǎn)線的控制系統(tǒng)必須具有極高的可靠性和靈活性,PLC(Programmable Logic Controller,可編程序控制器)正是順應(yīng)這一要求出現(xiàn)的,它是以微處理器為基礎(chǔ)的通用工業(yè)控制裝置。
PLC的應(yīng)用面廣、功能強(qiáng)大、使用方便,已經(jīng)成為當(dāng)代工業(yè)自動(dòng)化的主要裝置之一,在工業(yè)生產(chǎn)的所有領(lǐng)域得到了廣泛的使用,在其他領(lǐng)域(例如民用和家庭自動(dòng)化)的應(yīng)用也得到了迅速的發(fā)展。
國(guó)際電工委員會(huì)(IEC)在1985年的PLC標(biāo)準(zhǔn)草案第3稿中,對(duì)PLC作了如下定義:“可編程序控制器是一種數(shù)字運(yùn)算操作的電子系統(tǒng),專為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)。它采用可編程序的存儲(chǔ)器,用來(lái)在其內(nèi)部存儲(chǔ)執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)和算術(shù)運(yùn)算等操作的指令,并通過(guò)數(shù)字式、模擬式的輸入和輸出,控制各種類型的機(jī)械或生產(chǎn)過(guò)程??删幊绦蚩刂破骷捌溆嘘P(guān)設(shè)備,都應(yīng)按易于使工業(yè)控制系統(tǒng)形成一個(gè)整體,易于擴(kuò)充其功能的原則設(shè)計(jì)?!睆纳鲜龆x可以看出,PLC是一種用程序來(lái)改變控制功能的工業(yè)控制計(jì)算機(jī),除了能完成各種各樣的控制功能外,還有與其他計(jì)算機(jī)通信聯(lián)網(wǎng)的功能。
PLC的推廣應(yīng)用在我國(guó)得到了迅猛的發(fā)展,它已經(jīng)大量地應(yīng)用在各種機(jī)械設(shè)備和生產(chǎn)過(guò)程的電氣控制裝置中,各行各業(yè)也涌現(xiàn)出了大批應(yīng)用PLC改造設(shè)備的成果。了解PLC的工作原理,具備設(shè)計(jì)、調(diào)試和維護(hù)PLC控制系統(tǒng)的能力,已經(jīng)成為現(xiàn)代工業(yè)對(duì)電氣技術(shù)人員和工科學(xué)生的基本要求。
PLC是采用“順序掃描,不斷循環(huán)”的方式進(jìn)行工作的。即在PLC運(yùn)行時(shí),CPU根據(jù)用戶按控制要求編制好并存于用戶存儲(chǔ)器中的程序,按指令步序號(hào)(或地址號(hào))作周期性循環(huán)掃描,如無(wú)跳轉(zhuǎn)指令,則從第一條指令開始逐條順序執(zhí)行用戶程序,直至程序結(jié)束。然后重新返回第一條指令,開始下一輪新的掃描。在每次掃描過(guò)程中,還要完成對(duì)輸入信號(hào)的采樣和對(duì)輸出狀態(tài)的刷新等工作。
PLC的一個(gè)掃描周期必經(jīng)輸入采樣、程序執(zhí)行和輸出刷新三個(gè)階段。
PLC在輸入采樣階段:首先以掃描方式按順序?qū)⑺袝捍嬖谳斎腈i存器中的輸入端子的通斷狀態(tài)或輸入數(shù)據(jù)讀入,并將其寫入各對(duì)應(yīng)的輸入狀態(tài)寄存器中,即刷新輸入。隨即關(guān)閉輸入端口,進(jìn)入程序執(zhí)行階段。
PLC在程序執(zhí)行階段:按用戶程序指令存放的先后順序掃描執(zhí)行每條指令,經(jīng)相應(yīng)的運(yùn)算和處理后,其結(jié)果再寫入輸出狀態(tài)寄存器中,輸出狀態(tài)寄存器中所有的內(nèi)容隨著程序的執(zhí)行而改變。
輸出刷新階段:當(dāng)所有指令執(zhí)行完畢,輸出狀態(tài)寄存器的通斷狀態(tài)在輸出刷新階段送至輸出鎖存器中,并通過(guò)一定的方式(繼電器、晶體管或晶閘管)輸出,驅(qū)動(dòng)相應(yīng)輸出設(shè)備工作。
下面用一個(gè)簡(jiǎn)單的例子來(lái)進(jìn)一步說(shuō)明PLC的掃描工作過(guò)程。圖1-6給出了PLC的外部接線圖和梯形圖,起動(dòng)按鈕SB1停止按鈕SB2和熱繼電器FR的常開觸點(diǎn)分別接在編號(hào)為X0~X2的PLC的輸入端,交流接觸器KM的線圈接在編號(hào)為Y0的PLC的輸出端。圖1-6b是這4個(gè)輸入/輸出變量對(duì)應(yīng)的I/O映像寄存器,圖l-6c是PLC的梯形圖,它與圖1-3所示的繼電器電路的功能相同。但是應(yīng)注意,梯形圖是一種軟件,是PLC圖形化的程序。圖中的X0等是梯形圖中的編程元件,X0~-X2是輸入繼電器,Y0是輸出繼電器。梯形圖中的編程元件X0與接在輸入端子X0的SBl的常開觸點(diǎn)和輸入映像寄存器X0相對(duì)應(yīng),編程元件Y0與輸出映像寄存器Y0和接在輸出端子Y0的PLC內(nèi)部的輸出電路相對(duì)應(yīng)。
梯形圖以指令的形式儲(chǔ)存在PLC的用戶程序存儲(chǔ)器中,圖l-6中的梯形圖與下面的5條指令相對(duì)應(yīng),“;”之后是該指令的注釋。
LD X0 :接在左側(cè)母線上的X0的常開觸點(diǎn)
OR Y0 ;與X0的常開觸點(diǎn)并聯(lián)的Y0的常開觸點(diǎn)
ANI X1 ;與并聯(lián)電路串聯(lián)的X1的常閉觸點(diǎn)
ANI X2 ;串聯(lián)的X2的常閉觸點(diǎn)
OUT Y0 ;Y0的線圈梯形圖完成的邏輯運(yùn)算為
Y0=(X0+Y0)·X1·X2
在輸入處理階段,CPU將SBl,SB2和FR的常開觸點(diǎn)的狀態(tài)讀入相應(yīng)的輸入映像寄存器,外部觸點(diǎn)接通時(shí)存入寄存器的是二進(jìn)制數(shù)l,反之存入0。
執(zhí)行第l條指令時(shí),從X0對(duì)應(yīng)的輸入映像寄存器中取出二進(jìn)制數(shù)并保存起來(lái)。執(zhí)行第2條指令時(shí),取出Y0對(duì)應(yīng)的輸出映像寄存器中的二進(jìn)制數(shù),與X0對(duì)應(yīng)的二進(jìn)制數(shù)相“或”(電路的并聯(lián)對(duì)應(yīng)“或”運(yùn)算)。
執(zhí)行第3條或第4條指令時(shí),分別取出xl或X2對(duì)應(yīng)的輸入映像寄存器中的二進(jìn)制數(shù),因?yàn)槭浅i]觸點(diǎn),取反后與前面的運(yùn)算結(jié)果相“與”(電路的串聯(lián)對(duì)應(yīng)“與”運(yùn)算),然后存入運(yùn)算結(jié)果寄存器。
執(zhí)行第5條指令時(shí),將運(yùn)算結(jié)果寄存器中的二進(jìn)制數(shù)送入Y0對(duì)應(yīng)的輸出映像寄存器。 在輸出處理階段,CPU將各輸出映像寄存器中的二進(jìn)制數(shù)傳送給輸出模塊并鎖存起來(lái),如果Y0對(duì)應(yīng)的輸出映像寄存器存放的是二進(jìn)制數(shù)1,外接的KM的線圈將通電,反之將斷電。
如果讀入輸入映像寄存器X0~X2的均為二進(jìn)制數(shù)0,在程序執(zhí)行階段,經(jīng)過(guò)上述邏輯運(yùn)算過(guò)程之后,運(yùn)算結(jié)果仍為Y0=0,所以KM的線圈處于斷電狀態(tài)。按下起動(dòng)按鈕SBl,X0變?yōu)閘狀態(tài),經(jīng)邏輯運(yùn)算后Y0變?yōu)?狀態(tài),在輸出處理階段,將Y0對(duì)應(yīng)的輸出映像寄存器中的1送到輸出模塊,PLC內(nèi)Y0對(duì)應(yīng)的物理繼電器的常開觸點(diǎn)接通,接觸器KM的線圈通電。